@lenne.tech/nest-server 11.43.1 → 11.43.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -169,7 +169,13 @@ Two ordering rules, both enforced by the contract test:
|
|
|
169
169
|
Package overrides live in the `overrides:` section of **`pnpm-workspace.yaml`** (they moved out of `package.json`'s `pnpm.overrides` in the pnpm 11 upgrade). They force transitive dependencies to a security-patched version.
|
|
170
170
|
|
|
171
171
|
**Keep the set minimal.** On the pnpm 11 upgrade the list was pruned from 36 to the 9 then still
|
|
172
|
-
load-bearing (it has since grown back to
|
|
172
|
+
load-bearing (it has since grown back to 20, mostly as new advisories landed) — an override is only necessary if removing it lets the package resolve back INTO its vulnerable range (verify with a with/without lockfile diff; `pnpm audit` is the arbiter). Each surviving entry carries its CVE rationale as a comment. Remove an entry once its parent dependency ships a fixed version.
|
|
173
|
+
|
|
174
|
+
**The one exception is a peer conflict nobody downstream can fix.** `'@nestjs/cli>webpack'` (added
|
|
175
|
+
2026-10-20) carries no advisory: @nestjs/cli exact-pins a webpack that a newer transitive
|
|
176
|
+
`schema-utils` refuses as a peer, so every fresh resolve fails `pnpm peers check`. Such an entry
|
|
177
|
+
is parent-scoped (`parent>child`), so only the stale pin moves, and it states the release that
|
|
178
|
+
lets it go. For such an entry `pnpm peers check` is the arbiter, not `pnpm audit`.
|
|
173
179
|
|
|
174
180
|
### Rule: Override Targets MUST Be Fixed Versions
|
|
175
181
|
|
package/FRAMEWORK-API.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @lenne.tech/nest-server — Framework API Reference
|
|
2
2
|
|
|
3
|
-
> Auto-generated from source code as of 2026-10-20 (v11.43.
|
|
3
|
+
> Auto-generated from source code as of 2026-10-20 (v11.43.2)
|
|
4
4
|
> File: `FRAMEWORK-API.md` — compact, machine-readable API surface for Claude Code
|
|
5
5
|
|
|
6
6
|
## CoreModule.forRoot()
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Migration Guide: 11.43.1 → 11.43.2
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
| Category | Details |
|
|
6
|
+
| -------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
7
|
+
| **Bugfixes** | A fresh dependency resolve passes `pnpm peers check` again — two upstream releases from 2026-10-18/19 made it report unmet peers for `webpack` and `browserslist` (§1) |
|
|
8
|
+
| **New Features** | None |
|
|
9
|
+
| **Framework API** | Unchanged |
|
|
10
|
+
| **Dependencies** | Runtime dependencies unchanged. Build-time only: the `browserslist` override target is raised to `4.29.4`, and `'@nestjs/cli>webpack': '5.112.0'` is new — both in this repository's `pnpm-workspace.yaml`, which your project does not inherit (§1) |
|
|
11
|
+
| **Internal** | `pnpm run build` in this repository no longer rewrites `FRAMEWORK-API.md` when only the date in its header would change. No effect on consumers |
|
|
12
|
+
| **Breaking Changes** | None |
|
|
13
|
+
| **Migration Effort** | None for most projects. A project whose `pnpm peers check` reports one of the two peers below adds or raises one override entry each (§1) |
|
|
14
|
+
|
|
15
|
+
## Quick Migration
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
pnpm update @lenne.tech/nest-server
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Vendor-mode projects pick it up with the core update. No code or configuration change is required.
|
|
22
|
+
|
|
23
|
+
## 1. `pnpm peers check` fails after a fresh resolve
|
|
24
|
+
|
|
25
|
+
Two upstream releases broke the peer check for every project that resolves its dependencies anew — a fresh
|
|
26
|
+
`lt fullstack init`, a `pnpm update`, a `pnpm run update`, or an install without a lockfile. A lockfile resolved
|
|
27
|
+
before 2026-10-18 hides both, so an existing project usually sees them at its next refresh.
|
|
28
|
+
|
|
29
|
+
**`webpack`, required by `schema-utils`.** `schema-utils` 4.8.0 (published 2026-10-18) declares
|
|
30
|
+
`peerDependencies.webpack: ^5.112.0`. It is reached through webpack's own plugins, while `@nestjs/cli` 11.0.24 — the
|
|
31
|
+
newest 11.x — pins webpack to exactly `5.106.2`. The pin cannot satisfy the peer.
|
|
32
|
+
|
|
33
|
+
**`browserslist`, required by `update-browserslist-db`.** A project that carries the starter's
|
|
34
|
+
`'browserslist@<4.28.7': '4.29.3'` override (a security entry, see [security-overrides](../docs/security-overrides.md))
|
|
35
|
+
also has pnpm rewrite `update-browserslist-db`'s peer range to that target. Consumers the key does not reach — in a
|
|
36
|
+
fullstack workspace the app's CSS tooling, for example — resolve the newer `4.29.4` (published 2026-10-19), so the
|
|
37
|
+
rewritten peer is unmet.
|
|
38
|
+
|
|
39
|
+
Both are build-time only: `nest build` uses tsc unless `nest-cli.json` selects the webpack builder, and nothing at
|
|
40
|
+
runtime imports either package.
|
|
41
|
+
|
|
42
|
+
**What to do:** pnpm overrides apply only to the root of an install, so the entries in this repository do not reach
|
|
43
|
+
your project. If `pnpm peers check` (or `pnpm run check`) reports either peer, add the entries to the `overrides:`
|
|
44
|
+
section of your project's `pnpm-workspace.yaml` (the workspace root in a monorepo):
|
|
45
|
+
|
|
46
|
+
```yaml
|
|
47
|
+
overrides:
|
|
48
|
+
# existing entry from the starter: raise the target only
|
|
49
|
+
'browserslist@<4.28.7': '4.29.4'
|
|
50
|
+
# new: lifts only @nestjs/cli's exact webpack pin, nothing else
|
|
51
|
+
'@nestjs/cli>webpack': '5.112.0'
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Then run `pnpm install` and `pnpm peers check` again. The webpack entry is parent-scoped on purpose: it moves only the
|
|
55
|
+
CLI's stale pin, so no other consumer is held back. It can go once `@nestjs/cli` requests `webpack >=5.112` itself, or
|
|
56
|
+
with `@nestjs/cli` 12, where webpack is a peer.
|
|
57
|
+
|
|
58
|
+
`nest-server-starter` 11.43.2 carries both entries, so a project created after this release has them already.
|
|
59
|
+
|
|
60
|
+
## Compatibility Notes
|
|
61
|
+
|
|
62
|
+
| Pattern | Status |
|
|
63
|
+
| ------- | ------ |
|
|
64
|
+
| Existing lockfile, no refresh | Unchanged — the peer check stays green until the next resolve |
|
|
65
|
+
| Fresh resolve without the entries | `pnpm peers check` reports `webpack` and/or `browserslist` — add the entries (§1) |
|
|
66
|
+
| `nest-cli.json` with the webpack builder (`nest build --webpack`) | Builds with webpack 5.112.0 once the entry is in place |
|
|
67
|
+
| Runtime behaviour | Unchanged — no runtime dependency moved |
|
|
68
|
+
|
|
69
|
+
## Troubleshooting
|
|
70
|
+
|
|
71
|
+
**`pnpm peers check` still reports `webpack` after adding the entry**
|
|
72
|
+
Check that the key is exactly `'@nestjs/cli>webpack'` and that the entry sits in the `pnpm-workspace.yaml` of the
|
|
73
|
+
install root. pnpm 11 reads overrides only from there, not from `package.json`.
|
|
74
|
+
|
|
75
|
+
**pnpm refuses `4.29.4` or `5.112.0` with `ERR_PNPM_NO_MATURE_MATCHING_VERSION`**
|
|
76
|
+
Your project enforces a `minimumReleaseAge` window that these versions have not cleared yet. Wait until they have
|
|
77
|
+
rather than adding an exclusion.
|
|
78
|
+
|
|
79
|
+
## Module Documentation
|
|
80
|
+
|
|
81
|
+
- [Security overrides — why yours are not inherited](../docs/security-overrides.md)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lenne.tech/nest-server",
|
|
3
|
-
"version": "11.43.
|
|
3
|
+
"version": "11.43.2",
|
|
4
4
|
"description": "Modern, fast, powerful Node.js web framework in TypeScript based on Nest with a GraphQL API and a connection to MongoDB (or other databases).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"node",
|