@mano8/astro-media-m8 2.3.1 → 2.3.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.
Files changed (3) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +2 -2
  3. package/package.json +17 -15
package/CHANGELOG.md CHANGED
@@ -11,6 +11,48 @@ service line, so the contract can move without moving the major.
11
11
 
12
12
  ## [Unreleased]
13
13
 
14
+ ## [2.3.2] - 2026-09-27 · tracks media-service 3.0.2
15
+
16
+ **Patch.** Admits `@astrojs/react` 7 and Starlight 0.42 as peers, tracks
17
+ the published `@mano8/astro-ui-m8` `1.5.3` and `@mano8/astro-auth-m8`
18
+ `2.7.2`, and adds the fleet's dependency compatibility gate. Peer ranges only
19
+ widen, with both old lines still accepted, and the floors that rise are to
20
+ published releases. The contract stays `media-service-m8@1.1`, range
21
+ `>=2.0.0 <4.0.0`, and the tested service version stays `3.0.2`.
22
+
23
+ ### Added
24
+
25
+ - **A tree that breaks a declared range fails the build.**
26
+ `scripts/verify-dependency-compat.mjs` (`npm run verify:dependency-compat`)
27
+ and `tests/dependency-compat.test.ts`, byte-identical across the fleet's
28
+ six npm repositories and first shipped in `@mano8/astro-ui-m8` `1.5.3`.
29
+ The gate reads `npm ls --all --json --long` with peer edges forced on. It
30
+ names every installed package outside a range declared on it, and every
31
+ missing required dependency or peer that a required edge reaches. CI runs
32
+ it after `npm ci`.
33
+ - **`.npmrc` with `legacy-peer-deps=true`**, byte-identical fleet-wide. The
34
+ four `npm ci --legacy-peer-deps` steps in `CI.yaml` and `npm-publish.yml`
35
+ become plain `npm ci`: the setting now lives in one place, local installs
36
+ and Dependabot included, and the gate above enforces the ranges it no
37
+ longer checks.
38
+
39
+ ### Changed
40
+
41
+ - **Peers `@astrojs/react` `^6.0.1` → `^6.0.1 || ^7.0.0` and
42
+ `@astrojs/starlight` `^0.41.3` → `^0.41.3 || ^0.42.0`**, matching
43
+ `@mano8/astro-auth-m8` `2.7.2`. `src/` imports neither package. Starlight
44
+ 0.42 is the line built for `astro` 7.3, whose optional
45
+ `@astrojs/markdown-remark` `^7.3.0` peer Starlight 0.41 cannot meet.
46
+ - `@mano8/astro-ui-m8` floor `^1.5.2` → `^1.5.3` (`dependencies`) and
47
+ `@mano8/astro-auth-m8` `^2.7.1` → `^2.7.2` (`peerDependencies` and
48
+ `devDependencies`, still equal), the newest published releases, each read
49
+ back as npm `latest`. The README states the new floors.
50
+ - Dev dependencies test the new lines, matching `fa-ui-m8`: `@astrojs/react`
51
+ `^7.0.0`, `@astrojs/starlight` `^0.42.4`, `astro` `^7.3.4`, `react` /
52
+ `react-dom` / `@types/react` `^19.3.0`, `@typescript-eslint/*` `^8.70.1`,
53
+ `globals` `^17.12.0`. `@types/react-dom` `^19.3.0` is now declared: it is
54
+ a required peer of `@astrojs/react` that npm no longer installs on its own.
55
+
14
56
  ## [2.3.1] - 2026-09-26 · tracks media-service 3.0.2
15
57
 
16
58
  **Patch.** Tracks the published `@mano8/astro-ui-m8` `1.5.2` and
package/README.md CHANGED
@@ -65,12 +65,12 @@ elsewhere.
65
65
  npm i @mano8/astro-media-m8 @mano8/astro-auth-m8 zod
66
66
  ```
67
67
 
68
- `@mano8/astro-auth-m8` is a required peer at **`^2.7.1` or newer**:
68
+ `@mano8/astro-auth-m8` is a required peer at **`^2.7.2` or newer**:
69
69
  `media-service-m8` only accepts `fa-auth-m8`-issued tokens, so the plugin's auth
70
70
  adapter must be backed by `fa-auth-m8` (the official plugin, or a custom adapter
71
71
  that obtains those tokens). A 1.x auth is not supported — upgrade auth first, or
72
72
  the install resolves nothing that satisfies the peer.
73
- `@mano8/astro-ui-m8` (`^1.5.2`) is a normal dependency because the media registry
73
+ `@mano8/astro-ui-m8` (`^1.5.3`) is a normal dependency because the media registry
74
74
  skins compose the canonical shared table from its packaged registry output.
75
75
  `react`/`react-dom` are optional — only `./react`, `./hooks` and the starter
76
76
  views need them; `@tanstack/react-query` is a required peer once you use
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mano8/astro-media-m8",
3
- "version": "2.3.1",
3
+ "version": "2.3.2",
4
4
  "description": "Astro integration and headless client for media-service-m8.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -56,6 +56,7 @@
56
56
  "build:registry": "node scripts/build-registry.mjs",
57
57
  "preview:dev": "vite --config fixtures/preview/vite.config.ts",
58
58
  "preview:build": "tsc -p fixtures/preview/tsconfig.json --noEmit && vite build --config fixtures/preview/vite.config.ts",
59
+ "verify:dependency-compat": "node scripts/verify-dependency-compat.mjs",
59
60
  "verify:fleet-gates": "node scripts/verify-fleet-gates.mjs",
60
61
  "verify:lock-integrity": "node scripts/verify-lock-integrity.mjs",
61
62
  "verify:registry-consumer": "node scripts/verify-registry-consumer.mjs",
@@ -68,12 +69,12 @@
68
69
  "test:unit": "vitest run"
69
70
  },
70
71
  "dependencies": {
71
- "@mano8/astro-ui-m8": "^1.5.2"
72
+ "@mano8/astro-ui-m8": "^1.5.3"
72
73
  },
73
74
  "peerDependencies": {
74
- "@astrojs/react": "^6.0.1",
75
- "@astrojs/starlight": "^0.41.3",
76
- "@mano8/astro-auth-m8": "^2.7.1",
75
+ "@astrojs/react": "^6.0.1 || ^7.0.0",
76
+ "@astrojs/starlight": "^0.41.3 || ^0.42.0",
77
+ "@mano8/astro-auth-m8": "^2.7.2",
77
78
  "@tanstack/react-query": "^5.102.8",
78
79
  "astro": "^7.0.9",
79
80
  "react": "^18.0.0 || ^19.0.0",
@@ -89,25 +90,26 @@
89
90
  }
90
91
  },
91
92
  "devDependencies": {
92
- "@astrojs/react": "^6.0.4",
93
- "@astrojs/starlight": "^0.41.10",
93
+ "@astrojs/react": "^7.0.0",
94
+ "@astrojs/starlight": "^0.42.4",
94
95
  "@eslint-react/eslint-plugin": "^5.18.6",
95
96
  "@eslint/js": "^10.0.1",
96
- "@mano8/astro-auth-m8": "^2.7.1",
97
+ "@mano8/astro-auth-m8": "^2.7.2",
97
98
  "@tanstack/react-query": "^5.102.8",
98
99
  "@tanstack/react-table": "^8.21.3",
99
100
  "@types/node": "^26.4.0",
100
- "@types/react": "^19.2.18",
101
- "@typescript-eslint/eslint-plugin": "^8.68.0",
102
- "@typescript-eslint/parser": "^8.68.0",
101
+ "@types/react": "^19.3.0",
102
+ "@types/react-dom": "^19.3.0",
103
+ "@typescript-eslint/eslint-plugin": "^8.70.1",
104
+ "@typescript-eslint/parser": "^8.70.1",
103
105
  "@vitest/coverage-v8": "^4.1.11",
104
- "astro": "^7.2.9",
106
+ "astro": "^7.3.4",
105
107
  "eslint": "^10.9.1",
106
108
  "eslint-plugin-security": "^4.0.1",
107
- "globals": "^17.11.0",
109
+ "globals": "^17.12.0",
108
110
  "jsdom": "^30.0.1",
109
- "react": "^19.2.8",
110
- "react-dom": "^19.2.8",
111
+ "react": "^19.3.0",
112
+ "react-dom": "^19.3.0",
111
113
  "typescript": "^5.9.3",
112
114
  "vitest": "^4.1.11",
113
115
  "zod": "^4.5.4"