@pnpm/pnpr 0.1.0-alpha.5 → 0.1.0-alpha.7

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.
Files changed (2) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # @pnpm/pnpr
2
2
 
3
+ ## 0.1.0-alpha.7
4
+
5
+ ### Minor Changes
6
+
7
+ - Packument responses now carry a `Last-Modified` header derived from the document's `time.modified`, so a client's release-age check can learn the package-level last-publish bound from a cheap `HEAD` probe instead of downloading the metadata body.
8
+
9
+ - A pnpr resolve request now carries the client's registries the way the `registries` setting declares them — keyed by URL, with the scopes routed to each, the bare-specifier prefix each answers to, and each one's `serverType` — in place of the prefix map it used to send.
10
+
11
+ The server routes them through the same inversion the config reader runs, so a pnpr-served install resolves a scoped dependency from the registry that scope is routed to, which it previously could not: only the default registry and the prefix-addressed ones reached the server. A declared `serverType` reaches it too, so the tarball URLs pnpr omits from the lockfile match the ones the client reconstructs.
12
+
13
+ Built-in scope routes the project has not pointed elsewhere are not declared, so a pnpr server's allowlist is not asked about `npm.jsr.io` on requests that resolve no JSR package.
14
+
15
+ A registry a request only declares is no longer refused up front for being off the server's allowlist — a client describes its whole configuration, including scopes a given resolve never reaches, so a stray `@scope:registry` in a developer's `~/.npmrc` no longer fails every install against a pnpr server that does not serve it. The boundary moves to the fetch itself: an origin the resolve does reach is refused before the request leaves the server, with the same message.
16
+
17
+ This changes the resolve and verify-lockfile request bodies. A pnpr server and its clients have to be on matching versions; the protocol is still experimental and unversioned.
18
+
19
+ - A resolve request now carries the client's `resolutionMode`, so an install delegated to a pnpr server picks versions the way the client would. `time-based` and `lowest-direct` reached the server as nothing at all, leaving it on its `highest` default: the returned lockfile pinned the highest satisfying version of every dependency, and the setting appeared to be ignored.
20
+
21
+ This adds a field to the resolve request body. A server older than its client ignores it and keeps resolving `highest`; the protocol is still experimental and unversioned.
22
+
23
+ ### Patch Changes
24
+
25
+ - Fixed `pnpm` installs using pnpr to honor the client's `autoInstallPeers`, `dedupePeers`, and `excludeLinksFromLockfile` settings [pnpm/pnpm#13389](https://github.com/pnpm/pnpm/issues/13389).
26
+
27
+ ## 0.1.0-alpha.6
28
+
29
+ ### Patch Changes
30
+
31
+ - Validated forwarded catalog targets and kept catalog-specific resolutions isolated in the server cache.
32
+
3
33
  ## 0.1.0-alpha.5
4
34
 
5
35
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnpm/pnpr",
3
- "version": "0.1.0-alpha.5",
3
+ "version": "0.1.0-alpha.7",
4
4
  "description": "pnpm-compatible npm registry server, written in Rust",
5
5
  "keywords": [
6
6
  "pnpm",
@@ -28,14 +28,14 @@
28
28
  "LICENSE.md"
29
29
  ],
30
30
  "optionalDependencies": {
31
- "@pnpm/pnpr.win32-x64": "0.1.0-alpha.5",
32
- "@pnpm/pnpr.win32-arm64": "0.1.0-alpha.5",
33
- "@pnpm/pnpr.darwin-x64": "0.1.0-alpha.5",
34
- "@pnpm/pnpr.darwin-arm64": "0.1.0-alpha.5",
35
- "@pnpm/pnpr.linux-x64": "0.1.0-alpha.5",
36
- "@pnpm/pnpr.linux-arm64": "0.1.0-alpha.5",
37
- "@pnpm/pnpr.linux-x64-musl": "0.1.0-alpha.5",
38
- "@pnpm/pnpr.linux-arm64-musl": "0.1.0-alpha.5"
31
+ "@pnpm/pnpr.win32-x64": "0.1.0-alpha.7",
32
+ "@pnpm/pnpr.win32-arm64": "0.1.0-alpha.7",
33
+ "@pnpm/pnpr.darwin-x64": "0.1.0-alpha.7",
34
+ "@pnpm/pnpr.darwin-arm64": "0.1.0-alpha.7",
35
+ "@pnpm/pnpr.linux-x64": "0.1.0-alpha.7",
36
+ "@pnpm/pnpr.linux-arm64": "0.1.0-alpha.7",
37
+ "@pnpm/pnpr.linux-x64-musl": "0.1.0-alpha.7",
38
+ "@pnpm/pnpr.linux-arm64-musl": "0.1.0-alpha.7"
39
39
  },
40
40
  "scripts": {
41
41
  "preinstall": "node install.js"