Skip to content

Harden npm install defaults - #1026

Merged
eifinger merged 4 commits into
astral-sh:mainfrom
zaniebot:agent/npm-install-policy
Aug 20, 2026
Merged

Harden npm install defaults#1026
eifinger merged 4 commits into
astral-sh:mainfrom
zaniebot:agent/npm-install-policy

Conversation

@zaniebot

@zaniebot zaniebot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

CI already disables npm lifecycle scripts, but ordinary installs from the repository still run them. Set ignore-scripts = true in .npmrc so developer and maintenance installs use the same default. Keep the existing seven-day min-release-age policy for new resolutions. Require npm>=11.10.0 through engines.npm and engine-strict, while retaining devEngines for newer clients; older installers can otherwise ignore devEngines and the age setting. Pin the build and checksum workflows to Node.js 24.19.0 so their bundled npm supports the policy. Explicit project commands such as npm run package remain available.

Related: astral-sh/ruff-action#401 applies the matching npm defaults, and astral-sh/ruff-action#411 adds the same legacy-aware version floor. astral-sh/ruff#27837 applies the install-script default to Ruff's JavaScript projects. #1027 separately adds registry-signature and provenance verification.

zanieb pushed a commit to astral-sh/ruff that referenced this pull request Aug 19, 2026
Older `npm` releases silently ignore the seven-day dependency cooldown
added in #27796. Require `npm` 11.10.0 or newer in the playground,
playground API, and ty benchmark projects, and enable `engine-strict` so
unsupported clients fail during `npm install` or `npm ci`. The lockfile
changes only record that requirement; dependency versions and the
existing cooldown are unchanged.

Pin Node.js to `24.19.0` for the playground CI and publishing jobs,
which provides a compatible bundled `npm`. The separate script-default
changes are in #27837, and the locked playground deployment tool is in
#27838.

Related: #27855 pins the remaining WebAssembly test and
publication runtimes. astral-sh/setup-uv#1026 and
astral-sh/ruff-action#411 enforce the same legacy-aware `npm` version
floor. astral-sh/uv#21193 applies it to uv's locked formatter toolchain.

---------

Co-authored-by: zaniebot <242828183+zaniebot@users.noreply.github.com>
Comment thread .github/workflows/test.yml Outdated
eifinger pushed a commit to astral-sh/ruff-action that referenced this pull request Aug 20, 2026
`devEngines` is ignored by npm releases such as `10.8.2`, so those
clients can install dependencies without applying the seven-day
`min-release-age` setting added in #401. Declare the same minimum in
`engines.npm` and enable `engine-strict` to make that legacy installer
requirement fatal. Keep `devEngines` for its earlier checks on newer npm
versions, and pin the build and checksum workflows to Node.js `24.19.0`
so their bundled `npm` supports the policy.

Related: astral-sh/setup-uv#1026 and astral-sh/ruff#27844 enforce the
same legacy-aware `npm` version floor. #400 covers
Dependabot's update cooldown, and #402 separately
verifies registry signatures and available provenance.

---------

Co-authored-by: zaniebot <242828183+zaniebot@users.noreply.github.com>
@eifinger eifinger added the dependencies Pull requests that update a dependency file label Aug 20, 2026
@eifinger
eifinger merged commit 19b4d1e into astral-sh:main Aug 20, 2026
92 checks passed
Doridian pushed a commit to FoxDenHome/core that referenced this pull request Sep 12, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [https://github.com/astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | action | minor | `v10.0.1` → `v10.1.0` |

---

### Release Notes

<details>
<summary>astral-sh/setup-uv (https://github.com/astral-sh/setup-uv)</summary>

### [`v10.1.0`](https://github.com/astral-sh/setup-uv/releases/tag/v10.1.0): 🌈  New output `python-runtime-id`and respect NO_PROXY

[Compare Source](astral-sh/setup-uv@v10.0.1...v10.1.0)

#### Changes

This release adds more bheind the scene security improvements and also 2 small improvements.

##### NO\_PROXY

This action now respects `no_proxy/NO_PROXY` environment variables which were previously ignored.

##### New output `python-runtime-id`

The new output `python-runtime-id` can be used to know which python version exactly was installed if you use `activate-environment`. See [pyca/cryptography#15572 (comment)](pyca/cryptography#15572 (comment)) for details on why this can be useful.

#### 🐛 Bug fixes

- fix: respect no proxy directive [@&#8203;mj0nez](https://github.com/mj0nez) ([#&#8203;1037](astral-sh/setup-uv#1037))
- Use JSON + a typed wrapper instead of TS codegen [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1025](astral-sh/setup-uv#1025))

#### 🚀 Enhancements

- Expose a Python "identity" output [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1036](astral-sh/setup-uv#1036))
- Verify downloads with astral-sh/versions checksums [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1033](astral-sh/setup-uv#1033))

#### 🧰 Maintenance

- chore: update known checksums for 0.12.12 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1041](astral-sh/setup-uv#1041))
- chore: update known checksums for 0.12.10/0.12.11 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1038](astral-sh/setup-uv#1038))
- chore: update known checksums for 0.12.9 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1035](astral-sh/setup-uv#1035))
- chore: update known checksums for 0.12.7/0.12.8 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1031](astral-sh/setup-uv#1031))
- chore: update known checksums for 0.12.6 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1030](astral-sh/setup-uv#1030))
- chore: update known checksums for 0.12.5 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1020](astral-sh/setup-uv#1020))
- Use self-repo syntax for all in-repo actions/reusable workflows [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1024](astral-sh/setup-uv#1024))
- Pin one-shot tools [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1022](astral-sh/setup-uv#1022))
- ci: remove obsolete direct push attempts [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1019](astral-sh/setup-uv#1019))

#### 📚 Documentation

- docs: update version references to v10.0.1 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1018](astral-sh/setup-uv#1018))

#### ⬆️ Dependency updates

- chore(deps-dev): roll up Dependabot updates [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1043](astral-sh/setup-uv#1043))
- Harden npm install defaults [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1026](astral-sh/setup-uv#1026))
- Add dependency cooldowns [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1021](astral-sh/setup-uv#1021))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC43NC4wIiwidXBkYXRlZEluVmVyIjoiNDQuNzQuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Reviewed-on: https://git.foxden.network/FoxDen/core/pulls/150
phbaer pushed a commit to phbaer/waterrower-local-ble that referenced this pull request Sep 13, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | action | minor | `v10.0.1` → `v10.1.0` |

---

### Release Notes

<details>
<summary>astral-sh/setup-uv (astral-sh/setup-uv)</summary>

### [`v10.1.0`](https://github.com/astral-sh/setup-uv/releases/tag/v10.1.0): 🌈  New output `python-runtime-id`and respect NO_PROXY

[Compare Source](astral-sh/setup-uv@v10.0.1...v10.1.0)

##### Changes

This release adds more bheind the scene security improvements and also 2 small improvements.

##### NO\_PROXY

This action now respects `no_proxy/NO_PROXY` environment variables which were previously ignored.

##### New output `python-runtime-id`

The new output `python-runtime-id` can be used to know which python version exactly was installed if you use `activate-environment`. See [pyca/cryptography#15572 (comment)](pyca/cryptography#15572 (comment)) for details on why this can be useful.

##### 🐛 Bug fixes

- fix: respect no proxy directive [@&#8203;mj0nez](https://github.com/mj0nez) ([#&#8203;1037](astral-sh/setup-uv#1037))
- Use JSON + a typed wrapper instead of TS codegen [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1025](astral-sh/setup-uv#1025))

##### 🚀 Enhancements

- Expose a Python "identity" output [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1036](astral-sh/setup-uv#1036))
- Verify downloads with astral-sh/versions checksums [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1033](astral-sh/setup-uv#1033))

##### 🧰 Maintenance

- chore: update known checksums for 0.12.12 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1041](astral-sh/setup-uv#1041))
- chore: update known checksums for 0.12.10/0.12.11 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1038](astral-sh/setup-uv#1038))
- chore: update known checksums for 0.12.9 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1035](astral-sh/setup-uv#1035))
- chore: update known checksums for 0.12.7/0.12.8 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1031](astral-sh/setup-uv#1031))
- chore: update known checksums for 0.12.6 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1030](astral-sh/setup-uv#1030))
- chore: update known checksums for 0.12.5 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1020](astral-sh/setup-uv#1020))
- Use self-repo syntax for all in-repo actions/reusable workflows [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1024](astral-sh/setup-uv#1024))
- Pin one-shot tools [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1022](astral-sh/setup-uv#1022))
- ci: remove obsolete direct push attempts [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1019](astral-sh/setup-uv#1019))

##### 📚 Documentation

- docs: update version references to v10.0.1 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1018](astral-sh/setup-uv#1018))

##### ⬆️ Dependency updates

- chore(deps-dev): roll up Dependabot updates [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1043](astral-sh/setup-uv#1043))
- Harden npm install defaults [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1026](astral-sh/setup-uv#1026))
- Add dependency cooldowns [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1021](astral-sh/setup-uv#1021))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC40OC4zIiwidXBkYXRlZEluVmVyIjoiNDQuNDguMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Reviewed-on: https://git.baer.one/phbaer/waterrower-local-ble/pulls/7
phbaer pushed a commit to phbaer/ha-birthday-calendar that referenced this pull request Sep 13, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | action | minor | `v10.0.1` → `v10.1.0` |

---

> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the warning logs for more information.

---

### Release Notes

<details>
<summary>astral-sh/setup-uv (astral-sh/setup-uv)</summary>

### [`v10.1.0`](https://github.com/astral-sh/setup-uv/releases/tag/v10.1.0): 🌈  New output `python-runtime-id`and respect NO_PROXY

[Compare Source](astral-sh/setup-uv@v10.0.1...v10.1.0)

##### Changes

This release adds more bheind the scene security improvements and also 2 small improvements.

##### NO\_PROXY

This action now respects `no_proxy/NO_PROXY` environment variables which were previously ignored.

##### New output `python-runtime-id`

The new output `python-runtime-id` can be used to know which python version exactly was installed if you use `activate-environment`. See [pyca/cryptography#15572 (comment)](pyca/cryptography#15572 (comment)) for details on why this can be useful.

##### 🐛 Bug fixes

- fix: respect no proxy directive [@&#8203;mj0nez](https://github.com/mj0nez) ([#&#8203;1037](astral-sh/setup-uv#1037))
- Use JSON + a typed wrapper instead of TS codegen [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1025](astral-sh/setup-uv#1025))

##### 🚀 Enhancements

- Expose a Python "identity" output [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1036](astral-sh/setup-uv#1036))
- Verify downloads with astral-sh/versions checksums [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1033](astral-sh/setup-uv#1033))

##### 🧰 Maintenance

- chore: update known checksums for 0.12.12 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1041](astral-sh/setup-uv#1041))
- chore: update known checksums for 0.12.10/0.12.11 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1038](astral-sh/setup-uv#1038))
- chore: update known checksums for 0.12.9 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1035](astral-sh/setup-uv#1035))
- chore: update known checksums for 0.12.7/0.12.8 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1031](astral-sh/setup-uv#1031))
- chore: update known checksums for 0.12.6 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1030](astral-sh/setup-uv#1030))
- chore: update known checksums for 0.12.5 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1020](astral-sh/setup-uv#1020))
- Use self-repo syntax for all in-repo actions/reusable workflows [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1024](astral-sh/setup-uv#1024))
- Pin one-shot tools [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1022](astral-sh/setup-uv#1022))
- ci: remove obsolete direct push attempts [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1019](astral-sh/setup-uv#1019))

##### 📚 Documentation

- docs: update version references to v10.0.1 @&#8203;[github-actions\[bot\]](https://github.com/apps/github-actions) ([#&#8203;1018](astral-sh/setup-uv#1018))

##### ⬆️ Dependency updates

- chore(deps-dev): roll up Dependabot updates [@&#8203;eifinger](https://github.com/eifinger) ([#&#8203;1043](astral-sh/setup-uv#1043))
- Harden npm install defaults [@&#8203;zaniebot](https://github.com/zaniebot) ([#&#8203;1026](astral-sh/setup-uv#1026))
- Add dependency cooldowns [@&#8203;woodruffw](https://github.com/woodruffw) ([#&#8203;1021](astral-sh/setup-uv#1021))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC40OC4zIiwidXBkYXRlZEluVmVyIjoiNDQuNDguMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Reviewed-on: https://git.baer.one/phbaer/ha-birthday-calendar/pulls/18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants