Skip to content

Commit 1a17da7

Browse files
authored
Merge branch 'main' into npm_--msvs-version__and_--python
2 parents f847da5 + 46d7576 commit 1a17da7

File tree

16 files changed

+86
-62
lines changed

16 files changed

+86
-62
lines changed

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "12.1.0"
2+
".": "12.2.0"
33
}

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,39 @@
11
# Changelog
22

3+
## [12.2.0](https://github.com/nodejs/node-gyp/compare/v12.1.0...v12.2.0) (2026-01-26)
4+
5+
6+
### Features
7+
8+
* include built package version in error logs ([#3254](https://github.com/nodejs/node-gyp/issues/3254)) ([ee9cbdd](https://github.com/nodejs/node-gyp/commit/ee9cbdd6e1d40dc7c1cdc5ed6a75432c716eaf3f))
9+
* update gyp-next to v0.21.1 ([#3273](https://github.com/nodejs/node-gyp/issues/3273)) ([888ff2c](https://github.com/nodejs/node-gyp/commit/888ff2c48a4cf5602013b96b52c6670906976f63))
10+
11+
12+
### Bug Fixes
13+
14+
* cpu concurrency detection on some platforms ([#3255](https://github.com/nodejs/node-gyp/issues/3255)) ([f15b79a](https://github.com/nodejs/node-gyp/commit/f15b79a03c54cea0f66d940a0d6d839df867a319)), closes [#3191](https://github.com/nodejs/node-gyp/issues/3191)
15+
* python is no longer a valid npm config setting ([#3258](https://github.com/nodejs/node-gyp/issues/3258)) ([c7c678f](https://github.com/nodejs/node-gyp/commit/c7c678f89837d956194f326b01c5a8eb1d745db3))
16+
* Switch to URL instead of url.parse ([#3256](https://github.com/nodejs/node-gyp/issues/3256)) ([3f81949](https://github.com/nodejs/node-gyp/commit/3f819499d8ce6d46c646466de7b9492bf7bde663))
17+
* Test Windows on Python 3.14, not 3.13 ([#3262](https://github.com/nodejs/node-gyp/issues/3262)) ([7b4f315](https://github.com/nodejs/node-gyp/commit/7b4f315e4dad880c841d21df641d6dd9b68bf36b))
18+
19+
20+
### Core
21+
22+
* **deps:** bump actions/checkout from 5 to 6 ([#3248](https://github.com/nodejs/node-gyp/issues/3248)) ([db5385c](https://github.com/nodejs/node-gyp/commit/db5385c5467e5bfb914b9954f0313c46f1f4e10d))
23+
24+
25+
### Doc
26+
27+
* add a note about changes in gyp folder ([#3259](https://github.com/nodejs/node-gyp/issues/3259)) ([a52bc81](https://github.com/nodejs/node-gyp/commit/a52bc819f44b881854ff798865ad416430e3dce2))
28+
* correct typos ([#3269](https://github.com/nodejs/node-gyp/issues/3269)) ([0f2bc7d](https://github.com/nodejs/node-gyp/commit/0f2bc7d2e0665b1c7bb03e1cd8653ea330277a70))
29+
* remove obsolete Microsoft Node.js Guidelines link ([#3268](https://github.com/nodejs/node-gyp/issues/3268)) ([30cda26](https://github.com/nodejs/node-gyp/commit/30cda268730798dc0f67182c8c568d8b8069964e))
30+
* update Python manual install instructions for Windows ([#3265](https://github.com/nodejs/node-gyp/issues/3265)) ([0407877](https://github.com/nodejs/node-gyp/commit/0407877e3e26d3201f74cf1a9deabbbfc40bdbb7))
31+
32+
33+
### Miscellaneous
34+
35+
* **deps:** upgrade tar to 7.5.4 to address CVE-2026-23950 ([#3271](https://github.com/nodejs/node-gyp/issues/3271)) ([7bf371c](https://github.com/nodejs/node-gyp/commit/7bf371c4dd7c694232ab3169d02fe8197e1ecc6d))
36+
337
## [12.1.0](https://github.com/nodejs/node-gyp/compare/v12.0.0...v12.1.0) (2025-11-12)
438

539

README.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,19 +55,17 @@ choco install python visualstudio2022-workload-vctools -y
5555

5656
Or install and configure Python and Visual Studio tools manually:
5757

58-
* Install the current [version of Python](https://devguide.python.org/versions/) from the
59-
[Microsoft Store](https://apps.microsoft.com/store/search?publisher=Python+Software+Foundation).
58+
* Follow the instructions in [Using Python on Windows](https://docs.python.org/3/using/windows.html) to install
59+
the current [version of Python](https://www.python.org/downloads/).
6060

6161
* Install Visual C++ Build Environment: For Visual Studio 2019 or later, use the `Desktop development with C++` workload from [Visual Studio Community](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community). For a version older than Visual Studio 2019, install [Visual Studio Build Tools](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools) with the `Visual C++ build tools` option.
6262

63-
If the above steps didn't work for you, please visit [Microsoft's Node.js Guidelines for Windows](https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules) for additional tips.
64-
6563
To target native ARM64 Node.js on Windows on ARM, add the components "Visual C++ compilers and libraries for ARM64" and "Visual C++ ATL for ARM64".
6664

6765
To use the native ARM64 C++ compiler on Windows on ARM, ensure that you have Visual Studio 2022 [17.4 or later](https://devblogs.microsoft.com/visualstudio/arm64-visual-studio-is-officially-here/) installed.
6866

69-
It's advised to install following Powershell module: [VSSetup](https://github.com/microsoft/vssetup.powershell) using `Install-Module VSSetup -Scope CurrentUser`.
70-
This will make Visual Studio detection logic to use more flexible and accessible method, avoiding Powershell's `ConstrainedLanguage` mode.
67+
It's advised to install the following PowerShell module: [VSSetup](https://github.com/microsoft/vssetup.powershell) using `Install-Module VSSetup -Scope CurrentUser`.
68+
This will make Visual Studio detection logic use a more flexible and accessible method, avoiding PowerShell's `ConstrainedLanguage` mode.
7169

7270
### Configuring Python Dependency
7371

@@ -270,8 +268,8 @@ set npm_package_config_node_gyp_devdir=c:\temp\.gyp
270268
```
271269

272270
Note that in versions of npm before v11 it was possible to use the prefix `npm_config_` for
273-
environement variables. This was deprecated in npm@11 and will be removed in npm@12 so it
274-
is recommened to convert your environment variables to the above format.
271+
environment variables. This was deprecated in npm@11 and will be removed in npm@12 so it
272+
is recommended to convert your environment variables to the above format.
275273

276274
### `npm` configuration for npm versions before v9
277275

gyp/.github/workflows/node-gyp.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,7 @@ jobs:
1111
matrix:
1212
os: [macos-latest, ubuntu-latest, windows-latest]
1313
python-version: ["3.10", "3.12", "3.14"]
14-
#exclude:
15-
# # Windows on Python 3.14 is blocked by nodejs/node#59983
16-
# - os: windows-latest
17-
# python-version: "3.14"
1814
include:
19-
- os: windows-latest
20-
python-version: "3.14"
2115
- os: macos-15-intel # macOS on Intel
2216
python-version: "3.14"
2317
- os: ubuntu-24.04-arm # Ubuntu on ARM

gyp/.github/workflows/nodejs.yml

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,22 @@ jobs:
1111
matrix:
1212
os: [macos-latest, ubuntu-latest, windows-latest]
1313
python-version: ["3.10", "3.12", "3.14"]
14-
exclude:
15-
# Windows on Python 3.14 is blocked by nodejs/node#59983
16-
- os: windows-latest
17-
python-version: "3.14"
1814
include:
19-
- os: windows-latest # Windows on Python 3.13 instead of 3.14
20-
python-version: "3.13"
2115
- os: macos-15-intel # macOS on Intel
2216
python-version: "3.14"
2317
- os: ubuntu-24.04-arm # Ubuntu on ARM
2418
python-version: "3.14"
2519
- os: windows-11-arm # Windows on ARM
26-
python-version: "3.13" # Windows on Python 3.13 instead of 3.14
20+
python-version: "3.14"
2721

2822
runs-on: ${{ matrix.os }}
2923
steps:
3024
- name: Clone gyp-next
31-
uses: actions/checkout@v5
25+
uses: actions/checkout@v6
3226
with:
3327
path: gyp-next
3428
- name: Clone nodejs/node
35-
uses: actions/checkout@v5
29+
uses: actions/checkout@v6
3630
with:
3731
repository: nodejs/node
3832
path: node

gyp/.github/workflows/python_tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
- os: macos-26
2121
python-version: 3.x
2222
steps:
23-
- uses: actions/checkout@v5
23+
- uses: actions/checkout@v6
2424
- name: Set up Python ${{ matrix.python-version }}
2525
uses: actions/setup-python@v6
2626
with:

gyp/.github/workflows/release-please.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ jobs:
2424
if: ${{ needs.release-please.outputs.release_created }} # only publish on release
2525
runs-on: ubuntu-latest
2626
steps:
27-
- uses: actions/checkout@v5
27+
- uses: actions/checkout@v6
2828
- name: Build a binary wheel and a source tarball
2929
run: pipx run build
3030
- name: Store the distribution packages
31-
uses: actions/upload-artifact@v5
31+
uses: actions/upload-artifact@v6
3232
with:
3333
name: python-package-distributions
3434
path: dist/
@@ -48,7 +48,7 @@ jobs:
4848
id-token: write # IMPORTANT: mandatory for trusted publishing
4949
steps:
5050
- name: Download all the dists
51-
uses: actions/download-artifact@v6
51+
uses: actions/download-artifact@v7
5252
with:
5353
name: python-package-distributions
5454
path: dist/
@@ -68,12 +68,12 @@ jobs:
6868
id-token: write # IMPORTANT: mandatory for sigstore
6969
steps:
7070
- name: Download all the dists
71-
uses: actions/download-artifact@v6
71+
uses: actions/download-artifact@v7
7272
with:
7373
name: python-package-distributions
7474
path: dist/
7575
- name: Sign the dists with Sigstore
76-
uses: sigstore/gh-action-sigstore-python@v3.1.0
76+
uses: sigstore/gh-action-sigstore-python@v3.2.0
7777
with:
7878
inputs: >-
7979
./dist/*.tar.gz

gyp/.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.21.0"
2+
".": "0.21.1"
33
}

gyp/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## [0.21.1](https://github.com/nodejs/gyp-next/compare/v0.21.0...v0.21.1) (2026-01-24)
4+
5+
6+
### Bug Fixes
7+
8+
* replace weak hash functions with SHA-256 ([#329](https://github.com/nodejs/gyp-next/issues/329)) ([958029e](https://github.com/nodejs/gyp-next/commit/958029e6e4969a871d15e78cd083bb102bebb381))
9+
310
## [0.21.0](https://github.com/nodejs/gyp-next/compare/v0.20.5...v0.21.0) (2025-11-04)
411

512

gyp/pylib/gyp/MSVSNew.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ def MakeGuid(name, seed="msvs_new"):
3434
3535
Args:
3636
name: Target name.
37-
seed: Seed for MD5 hash.
37+
seed: Seed for SHA-256 hash.
3838
Returns:
3939
A GUID-line string calculated from the name and seed.
4040
@@ -44,8 +44,8 @@ def MakeGuid(name, seed="msvs_new"):
4444
determine the GUID to refer to explicitly. It also means that the GUID will
4545
not change when the project for a target is rebuilt.
4646
"""
47-
# Calculate a MD5 signature for the seed and name.
48-
d = hashlib.md5((str(seed) + str(name)).encode("utf-8")).hexdigest().upper()
47+
# Calculate a SHA-256 signature for the seed and name.
48+
d = hashlib.sha256((str(seed) + str(name)).encode("utf-8")).hexdigest().upper()
4949
# Convert most of the signature to GUID form (discard the rest)
5050
guid = (
5151
"{"

0 commit comments

Comments
 (0)