Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024-12-19, Version 23.5.0 (Current) #56310

Open
wants to merge 88 commits into
base: v23.x
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
d48b522
doc: fix module.md headings
legendecas Dec 6, 2024
f1c2d2f
doc: update blog release-post link
ruyadorno Dec 6, 2024
a4a8361
stream: commit pull-into descriptors after filling from queue
MattiasBuelens Nov 27, 2024
041a490
test: update streams wpt
MattiasBuelens Nov 28, 2024
5aec513
lib: disable default memory leak warning for AbortSignal
phryneas Dec 7, 2024
c2fb38c
crypto: graduate WebCryptoAPI Ed25519 and X25519 algorithms as stable
panva Dec 5, 2024
a6f0cfa
sea: only assert snapshot main function for main threads
joyeecheung Dec 7, 2024
889094f
lib: handle Float16Array in node:v8 serdes
bartlomieju Dec 7, 2024
08e5309
Revert "build: avoid compiling with VS v17.12"
Flarna Dec 7, 2024
84f98e0
v8,tools: expose experimental wasm revectorize feature
yolanda15 Dec 7, 2024
fd55d3c
lib: clean up persisted signals when they are settled
geeksilva97 Dec 8, 2024
5620b2b
tools: improve release proposal PR opening
aduh95 Dec 8, 2024
cfbdff7
assert: make partialDeepStrictEqual work with ArrayBuffers
puskin94 Dec 8, 2024
fcaa2c8
build: fix GN build on macOS
joyeecheung Dec 9, 2024
efcc829
tools: bump the eslint group in /tools/eslint with 4 updates
dependabot[bot] Dec 9, 2024
e20eef6
tools: update gyp-next to 0.19.0
nodejs-github-bot Dec 9, 2024
a0e3926
test: remove `hasOpenSSL3x` utils
aduh95 Dec 9, 2024
28a4b6f
tools: use commit title as PR title when creating release proposal
aduh95 Dec 9, 2024
114a3e5
doc: fix c++ addon hello world sample
geeksilva97 Dec 9, 2024
65b541e
tools: enable linter for `tools/icu/**`
LiviaMedeiros Dec 9, 2024
e5bb6c2
module: implement module.registerHooks()
joyeecheung Oct 29, 2024
8e780bc
module: use synchronous hooks for preparsing in import(cjs)
joyeecheung Nov 2, 2024
a0c4a5f
test: update WPT for url to 6fa3fe8a92
nodejs-github-bot Dec 10, 2024
54308c5
deps: update sqlite to 3.47.2
nodejs-github-bot Dec 10, 2024
fa667d6
tools: remove has_absl_stringify from gyp file
targos Dec 10, 2024
f10239f
lib: remove redundant global regexps
gurgunday Dec 10, 2024
595851b
fs,win: fix readdir for named pipe
huseyinacacak-janea Dec 10, 2024
e4922ab
doc: fix incorrect link to style guide
technic960183 Dec 10, 2024
a9e6728
doc: add ambassador message - benefits of Node.js
mhdawson Nov 29, 2024
683cc15
test: move localizationd data from `test-icu-env` to external file
LiviaMedeiros Dec 10, 2024
5665e86
module: prevent main thread exiting before esm worker ends
islandryu Dec 10, 2024
f3b3ff8
doc: call out import.meta is only supported in ES modules
antonk52 Dec 11, 2024
77397c5
util: do not rely on mutable `Object` and `Function`' `constructor` prop
aduh95 Dec 11, 2024
b0ebd23
http2: support ALPNCallback option
ZYSzys Dec 11, 2024
8325fa5
worker: fix crash when a worker joins after exit
Qard Dec 11, 2024
9863d27
module: only emit require(esm) warning under --trace-require-module
joyeecheung Dec 9, 2024
2314e49
assert: make Maps be partially compared in partialDeepStrictEqual
puskin94 Dec 11, 2024
6f49c80
build: use variable for simdutf path
codebytere Dec 11, 2024
53cc0cc
sqlite: support `db.loadExtension`
himself65 Dec 3, 2024
3968599
src: fix outdated js2c.cc references
legendecas Dec 11, 2024
2974667
doc: update blog link to /vulnerability
RafaelGSS Dec 11, 2024
8092dcf
doc: update announce documentation for releases
RafaelGSS Dec 11, 2024
a5aaf31
tools: fix release proposal linter to support more than 1 folk preparing
aduh95 Dec 12, 2024
7b2a6ee
doc: `sea.getRawAsset(key)` always returns an ArrayBuffer
ShenHongFei Dec 12, 2024
efcc5d9
src,lib: stabilize permission model
RafaelGSS Dec 12, 2024
febd969
http2: remove duplicate codeblock
AVVS Dec 12, 2024
075b36b
http: add setDefaultHeaders option to http.request
pimterry Dec 12, 2024
4745798
sqlite: add support for custom functions
cjihrig Dec 12, 2024
b395e0c
tools: update gyp-next to 0.19.1
addaleax Dec 10, 2024
f4faedf
build: fix C string encoding for `PRODUCT_DIR_ABS`
addaleax Dec 2, 2024
8288f57
test: fix test-abortsignal-drop-settled-signals flakiness
geeksilva97 Dec 12, 2024
8d485f1
fs: make mutating `options` in Promises `readdir()` not affect results
LiviaMedeiros Nov 28, 2024
4cc0493
fs: make mutating `options` in Callback `readdir()` not affect results
LiviaMedeiros Dec 7, 2024
394fffb
doc: add esm examples to node:perf_hooks
mfdebian Dec 12, 2024
5d252b7
test: remove exludes for sea tests on PPC
mhdawson Dec 12, 2024
d25d16e
Revert "tools: disable automated libuv updates"
lpinca Dec 13, 2024
65bc8e8
report: fix typos in report keys and bump the version
technic960183 Dec 13, 2024
f883bed
node-api: allow napi_delete_reference in finalizers
legendecas Dec 13, 2024
71c38a2
doc: add esm examples to node:tls
mfdebian Dec 13, 2024
002ee71
tools: use `github.actor` instead of bot username for release proposals
aduh95 Dec 13, 2024
c5b0862
doc: fix winget config path
himself65 Dec 13, 2024
b5a2c07
module: add prefix-only modules to `module.builtinModules`
ljharb Dec 14, 2024
cc7a7c3
doc: fix 'which' to 'that' and add commas
selveter Dec 14, 2024
1d8cc61
test: use --permission over --experimental-permission
RafaelGSS Dec 14, 2024
1381541
util: fix Latin1 decoding to return string output
mertcanaltin Dec 14, 2024
7a10ef8
doc: add esm examples to node:readline
mfdebian Dec 14, 2024
f94f210
doc: add esm examples to node:repl
mfdebian Dec 14, 2024
59cae91
dgram: support blocklist in udp
theanarkh Dec 15, 2024
f264dd6
buffer: document concat zero-fill
duncpro Dec 15, 2024
0d08756
doc: clarify util.aborted resource usage
KunalKumar-1 Dec 15, 2024
25bb462
deps: define V8_PRESERVE_MOST as no-op on Windows
StefanStojanovic Dec 16, 2024
3e17a8e
util: harden more built-in classes against prototype pollution
aduh95 Dec 16, 2024
445c8c7
build: add major release action
RafaelGSS Dec 16, 2024
db6aba1
deps: update c-ares to v1.34.4
nodejs-github-bot Dec 17, 2024
78743b1
tools: add REPLACEME check to workflow
mertcanaltin Dec 17, 2024
ea9a675
test_runner: exclude test files from coverage by default
pmarchini Dec 17, 2024
3298ef4
test: remove test-sqlite-statement-sync flaky designation
lpinca Dec 17, 2024
4e9113e
deps: update libuv to 1.49.2
lpinca Dec 17, 2024
7c941d4
deps: update simdutf to 5.6.4
nodejs-github-bot Dec 17, 2024
8658833
deps: update nghttp3 to 1.6.0
nodejs-github-bot Dec 17, 2024
c4c56da
tools: update github_reporter to 1.7.2
nodejs-github-bot Dec 17, 2024
118cd99
tools: fix `node:` enforcement for docs
aduh95 Dec 17, 2024
0ab36e1
sqlite: aggregate constants in a single property
geeksilva97 Dec 17, 2024
72f79b4
doc: stabilize util.styleText
RafaelGSS Dec 17, 2024
1497bb4
build: fix missing fp16 dependency in d8 builds
joyeecheung Dec 17, 2024
4831b87
build: set DESTCPU correctly for 'make binary' on loongarch64
wojiushixiaobai Dec 18, 2024
52c18e6
doc: fix color contrast issue in light mode
Trott Dec 18, 2024
d8c3089
2024-12-19, Version 23.5.0 (Current)
aduh95 Dec 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .github/label-pr-config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,8 @@ exlusiveLabels:
/^test\/es-module\//: test, esm
/^test\/fixtures\/wpt\/streams\//: test, web streams
/^test\/fixtures\/typescript/: test, strip-types
/^test\/module-hooks\//: test, module, loaders
/^test\/fixtures/module-hooks\//: test, module, loaders

/^test\//: test

Expand Down
9 changes: 3 additions & 6 deletions .github/workflows/create-release-proposal.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
# This action requires the following secrets to be set on the repository:
# GH_USER_NAME: GitHub user whose Jenkins and GitHub token are defined below
# GH_USER_TOKEN: GitHub user token, to be used by ncu and to push changes

name: Create Release Proposal
Expand Down Expand Up @@ -52,20 +51,18 @@ jobs:
run: |
ncu-config set branch "${RELEASE_BRANCH}"
ncu-config set upstream origin
ncu-config set username "$USERNAME"
ncu-config set username "$GITHUB_ACTOR"
ncu-config set token "$GH_TOKEN"
ncu-config set repo "$(echo "$GITHUB_REPOSITORY" | cut -d/ -f2)"
ncu-config set owner "${GITHUB_REPOSITORY_OWNER}"
env:
USERNAME: ${{ secrets.JENKINS_USER }}
GH_TOKEN: ${{ github.token }}

- name: Set up ghauth config (Ubuntu)
run: |
mkdir -p "${XDG_CONFIG_HOME:-~/.config}/changelog-maker"
echo '{}' | jq '{user: env.USERNAME, token: env.TOKEN}' > "${XDG_CONFIG_HOME:-~/.config}/changelog-maker/config.json"
echo '{}' | jq '{user: env.GITHUB_ACTOR, token: env.TOKEN}' > "${XDG_CONFIG_HOME:-~/.config}/changelog-maker/config.json"
env:
USERNAME: ${{ secrets.JENKINS_USER }}
TOKEN: ${{ github.token }}

- name: Setup git author
Expand All @@ -78,7 +75,7 @@ jobs:
run: |
git update-index --assume-unchanged tools/actions/create-release.sh
curl -fsSLo tools/actions/create-release.sh https://github.com/${GITHUB_REPOSITORY}/raw/${GITHUB_SHA}/tools/actions/create-release.sh
./tools/actions/create-release.sh "${RELEASE_DATE}" "${RELEASE_LINE}"
./tools/actions/create-release.sh "${RELEASE_DATE}" "${RELEASE_LINE}" "${GITHUB_ACTOR}"
env:
GH_TOKEN: ${{ github.token }}
# We want the bot to push the push the release commit so CI runs on it.
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/lint-release-proposal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
PR_HEAD="$(gh pr view "$PR_URL" --json headRefOid -q .headRefOid)"
echo "Head of $PR_URL: $PR_HEAD"
echo "Current commit: $GITHUB_SHA"
[[ "$PR_HEAD" == "$GITHUB_SHA" ]]
[ "$PR_HEAD" = "$GITHUB_SHA" ]
env:
GH_TOKEN: ${{ github.token }}
- name: Validate CHANGELOG
Expand All @@ -53,7 +53,10 @@ jobs:
echo "Expected CHANGELOG section title: $EXPECTED_CHANGELOG_TITLE_INTRO"
CHANGELOG_TITLE="$(grep "$EXPECTED_CHANGELOG_TITLE_INTRO" "doc/changelogs/CHANGELOG_V${COMMIT_SUBJECT:20:2}.md")"
echo "Actual: $CHANGELOG_TITLE"
[[ "${CHANGELOG_TITLE%@*}@" == "$EXPECTED_CHANGELOG_TITLE_INTRO" ]]
[ "${CHANGELOG_TITLE%%@*}@" = "$EXPECTED_CHANGELOG_TITLE_INTRO" ]
- name: Verify NODE_VERSION_IS_RELEASE bit is correctly set
run: |
grep -q '^#define NODE_VERSION_IS_RELEASE 1$' src/node_version.h
- name: Check for placeholders in documentation
run: |
! grep "REPLACEME" doc/api/*.md
48 changes: 48 additions & 0 deletions .github/workflows/major-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Major Release

on:
schedule:
- cron: 0 0 15 2,8 * # runs at midnight UTC every 15 February and 15 August

permissions:
contents: read

jobs:
create-issue:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Check for release schedule
id: check-date
run: |
# Get the current month and day
MONTH=$(date +'%m')
DAY=$(date +'%d')
# We'll create the reminder issue two months prior the release
if [[ "$MONTH" == "02" || "$MONTH" == "08" ]] && [[ "$DAY" == "15" ]]; then
echo "create_issue=true" >> "$GITHUB_ENV"
fi
- name: Retrieve next major release info from nodejs/Release
if: env.create_issue == 'true'
run: |
curl -L https://github.com/nodejs/Release/raw/HEAD/schedule.json | \
jq -r 'to_entries | map(select(.value.start | strptime("%Y-%m-%d") | mktime > now)) | first | "VERSION=" + .key + "\nRELEASE_DATE=" + .value.start' >> "$GITHUB_ENV"
- name: Compute max date for landing semver-major PRs
if: env.create_issue == 'true'
run: |
echo "PR_MAX_DATE=$(date -d "$RELEASE_DATE -1 month" +%Y-%m-%d)" >> "$GITHUB_ENV"
- name: Create release announcement issue
if: env.create_issue == 'true'
run: |
gh issue create --repo "${GITHUB_REPOSITORY}" \
--title "Upcoming Node.js Major Release ($VERSION)" \
--body-file -<<EOF
A reminder that the next Node.js **SemVer Major release** is scheduled for **${RELEASE_DATE}**.
All commits that were landed until **${PR_MAX_DATE}** (one month prior to the release) will be included in the next semver major release. Please ensure that any necessary preparations are made in advance.
For more details on the release process, consult the [Node.js Release Working Group repository](https://github.com/nodejs/release).
cc: @nodejs/collaborators
EOF
env:
GH_TOKEN: ${{ github.token }}
21 changes: 9 additions & 12 deletions .github/workflows/tools.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ on:
- gyp-next
- histogram
- icu
# - libuv
- libuv
- llhttp
- minimatch
- nbytes
Expand Down Expand Up @@ -175,17 +175,14 @@ jobs:
cat temp-output
tail -n1 temp-output | grep "NEW_VERSION=" >> "$GITHUB_ENV" || true
rm temp-output
# libuv update was disabled because of Feb 14, 2024 security release
# modified the bundled version of libuv, we cannot automatically update
# libuv without potentially undoing those changes.
# - id: libuv
# subsystem: deps
# label: dependencies
# run: |
# ./tools/dep_updaters/update-libuv.sh > temp-output
# cat temp-output
# tail -n1 temp-output | grep "NEW_VERSION=" >> "$GITHUB_ENV" || true
# rm temp-output
- id: libuv
subsystem: deps
label: dependencies
run: |
./tools/dep_updaters/update-libuv.sh > temp-output
cat temp-output
tail -n1 temp-output | grep "NEW_VERSION=" >> "$GITHUB_ENV" || true
rm temp-output
- id: llhttp
subsystem: deps
label: dependencies
Expand Down
2 changes: 1 addition & 1 deletion BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,7 @@ easily. These files will install the following
To install Node.js prerequisites from Powershell Terminal:

```powershell
winget configure .\configuration.dsc.yaml
winget configure .\configurations\configuration.dsc.yaml
```

Alternatively, you can use [Dev Home](https://learn.microsoft.com/en-us/windows/dev-home/)
Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V23.md#23.4.0">23.4.0</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V23.md#23.5.0">23.5.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V23.md#23.4.0">23.4.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V23.md#23.3.0">23.3.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V23.md#23.2.0">23.2.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V23.md#23.1.0">23.1.0</a><br/>
Expand Down
11 changes: 11 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,7 @@ coverage-report-js: ## Report JavaScript coverage results.
cctest: all ## Run the C++ tests using the built `cctest` executable.
@out/$(BUILDTYPE)/$@ --gtest_filter=$(GTEST_FILTER)
$(NODE) ./test/embedding/test-embedding.js
$(NODE) ./test/sqlite/test-sqlite-extensions.mjs

.PHONY: list-gtests
list-gtests: ## List all available C++ gtests.
Expand Down Expand Up @@ -574,6 +575,7 @@ test-ci: | clear-stalled bench-addons-build build-addons build-js-native-api-tes
--mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \
$(TEST_CI_ARGS) $(CI_JS_SUITES) $(CI_NATIVE_SUITES) $(CI_DOC)
$(NODE) ./test/embedding/test-embedding.js
$(NODE) ./test/sqlite/test-sqlite-extensions.mjs
$(info Clean up any leftover processes, error if found.)
ps awwx | grep Release/node | grep -v grep | cat
@PS_OUT=`ps awwx | grep Release/node | grep -v grep | awk '{print $$1}'`; \
Expand Down Expand Up @@ -932,6 +934,9 @@ else
ifeq ($(findstring riscv64,$(UNAME_M)),riscv64)
DESTCPU ?= riscv64
else
ifeq ($(findstring loongarch64,$(UNAME_M)),loongarch64)
DESTCPU ?= loong64
else
DESTCPU ?= x86
endif
endif
Expand All @@ -945,6 +950,7 @@ endif
endif
endif
endif
endif
ifeq ($(DESTCPU),x64)
ARCH=x64
else
Expand All @@ -969,6 +975,9 @@ else
ifeq ($(DESTCPU),riscv64)
ARCH=riscv64
else
ifeq ($(DESTCPU),loong64)
ARCH=loong64
else
ARCH=x86
endif
endif
Expand All @@ -978,6 +987,7 @@ endif
endif
endif
endif
endif

# node and v8 use different arch names (e.g. node 'x86' vs v8 'ia32').
# pass the proper v8 arch name to $V8_ARCH based on user-specified $DESTCPU.
Expand Down Expand Up @@ -1432,6 +1442,7 @@ LINT_CPP_FILES = $(filter-out $(LINT_CPP_EXCLUDE), $(wildcard \
test/cctest/*.h \
test/embedding/*.cc \
test/embedding/*.h \
test/sqlite/*.c \
test/fixtures/*.c \
test/js-native-api/*/*.cc \
test/node-api/*/*.cc \
Expand Down
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ as any other stable feature.
Security notifications will be distributed via the following methods.

* <https://groups.google.com/group/nodejs-sec>
* <https://nodejs.org/en/blog/>
* <https://nodejs.org/en/blog/vulnerability>

## Comments on this policy

Expand Down
2 changes: 1 addition & 1 deletion benchmark/fs/readfile-permission-enabled.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const bench = common.createBenchmark(main, {
concurrent: [1, 10],
}, {
flags: [
'--experimental-permission',
'--permission',
'--allow-fs-read=*',
'--allow-fs-write=*',
'--allow-child-process',
Expand Down
2 changes: 1 addition & 1 deletion benchmark/permission/permission-processhas-fs-read.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ const rootPath = path.resolve(__dirname, '../../..');

const options = {
flags: [
'--experimental-permission',
'--permission',
`--allow-fs-read=${rootPath}`,
'--allow-child-process',
'--no-warnings',
Expand Down
2 changes: 1 addition & 1 deletion benchmark/permission/permission-startup.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ function spawnProcess(script, bench, state) {
function main({ count, script, nFiles, prefixPath }) {
script = path.resolve(__dirname, '../../', `${script}.js`);
const optionsWithScript = [
'--experimental-permission',
'--permission',
`--allow-fs-read=${script}`,
...mockFiles(nFiles, prefixPath).map((file) => '--allow-fs-read=' + file),
script,
Expand Down
2 changes: 1 addition & 1 deletion common.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@

# Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8.
'v8_embedder_string': '-node.11',
'v8_embedder_string': '-node.12',

##### V8 defaults for Node.js #####

Expand Down
3 changes: 3 additions & 0 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -1685,6 +1685,9 @@ def configure_v8(o, configs):
raise Exception(
'Only one of the --v8-enable-object-print or --v8-disable-object-print options '
'can be specified at a time.')
if sys.platform != 'darwin':
if o['variables']['v8_enable_webassembly'] and o['variables']['target_arch'] == 'x64':
o['variables']['v8_enable_wasm_simd256_revec'] = 1

def configure_openssl(o):
variables = o['variables']
Expand Down
9 changes: 6 additions & 3 deletions deps/cares/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Copyright (C) The c-ares project and its contributors
# SPDX-License-Identifier: MIT
CMAKE_MINIMUM_REQUIRED (VERSION 3.5.0)
CMAKE_MINIMUM_REQUIRED (VERSION 3.5.0...3.10.0)

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")

Expand All @@ -12,7 +12,7 @@ INCLUDE (CheckCSourceCompiles)
INCLUDE (CheckStructHasMember)
INCLUDE (CheckLibraryExists)

PROJECT (c-ares LANGUAGES C VERSION "1.34.3" )
PROJECT (c-ares LANGUAGES C VERSION "1.34.4" )

# Set this version before release
SET (CARES_VERSION "${PROJECT_VERSION}")
Expand All @@ -30,7 +30,7 @@ INCLUDE (GNUInstallDirs) # include this *AFTER* PROJECT(), otherwise paths are w
# For example, a version of 4:0:2 would generate output such as:
# libname.so -> libname.so.2
# libname.so.2 -> libname.so.2.2.0
SET (CARES_LIB_VERSIONINFO "21:2:19")
SET (CARES_LIB_VERSIONINFO "21:3:19")


OPTION (CARES_STATIC "Build as a static library" OFF)
Expand Down Expand Up @@ -271,6 +271,8 @@ ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "AIX")
LIST (APPEND SYSFLAGS -D_ALL_SOURCE -D_XOPEN_SOURCE=700 -D_USE_IRS)
ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
# Don't define _XOPEN_SOURCE on FreeBSD, it actually reduces visibility instead of increasing it
ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "QNX")
LIST (APPEND SYSFLAGS -D_QNX_SOURCE)
ELSEIF (WIN32)
LIST (APPEND SYSFLAGS -DWIN32_LEAN_AND_MEAN -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_WIN32_WINNT=0x0602)
ENDIF ()
Expand Down Expand Up @@ -406,6 +408,7 @@ ENDIF ()

CHECK_STRUCT_HAS_MEMBER("struct sockaddr_in6" sin6_scope_id "${CMAKE_EXTRA_INCLUDE_FILES}" HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID LANGUAGE C)

CHECK_SYMBOL_EXISTS (strnlen "${CMAKE_EXTRA_INCLUDE_FILES}" HAVE_STRNLEN)
CHECK_SYMBOL_EXISTS (memmem "${CMAKE_EXTRA_INCLUDE_FILES}" HAVE_MEMMEM)
CHECK_SYMBOL_EXISTS (closesocket "${CMAKE_EXTRA_INCLUDE_FILES}" HAVE_CLOSESOCKET)
CHECK_SYMBOL_EXISTS (CloseSocket "${CMAKE_EXTRA_INCLUDE_FILES}" HAVE_CLOSESOCKET_CAMEL)
Expand Down
29 changes: 18 additions & 11 deletions deps/cares/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,24 @@
# Copyright (C) the Massachusetts Institute of Technology.
# Copyright (C) Daniel Stenberg
#
# Permission to use, copy, modify, and distribute this
# software and its documentation for any purpose and without
# fee is hereby granted, provided that the above copyright
# notice appear in all copies and that both that copyright
# notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in
# advertising or publicity pertaining to distribution of the
# software without specific, written prior permission.
# M.I.T. makes no representations about the suitability of
# this software for any purpose. It is provided "as is"
# without express or implied warranty.
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# SPDX-License-Identifier: MIT
#
Expand Down
Loading
Loading