diff --git a/artifacts/npm-audit.json b/artifacts/npm-audit.json index dead780f..61b513b8 100644 --- a/artifacts/npm-audit.json +++ b/artifacts/npm-audit.json @@ -11,12 +11,12 @@ "total": 0 }, "dependencies": { - "prod": 50, - "dev": 291, + "prod": 121, + "dev": 220, "optional": 27, "peer": 0, "peerOptional": 0, - "total": 340 + "total": 341 } } } diff --git a/artifacts/npm-outdated.json b/artifacts/npm-outdated.json index 4b3da80f..e7b476cb 100644 --- a/artifacts/npm-outdated.json +++ b/artifacts/npm-outdated.json @@ -1,10 +1,17 @@ { - "cross-env": { - "current": "7.0.3", - "wanted": "7.0.3", - "latest": "10.1.0", + "@playwright/test": { + "current": "1.58.0", + "wanted": "1.58.1", + "latest": "1.58.1", "dependent": "app", - "location": "/app/node_modules/cross-env" + "location": "/app/node_modules/@playwright/test" + }, + "autoprefixer": { + "current": "10.4.23", + "wanted": "10.4.24", + "latest": "10.4.24", + "dependent": "app", + "location": "/app/node_modules/autoprefixer" }, "esbuild": { "current": "0.25.12", @@ -15,8 +22,8 @@ }, "nostr-tools": { "current": "2.20.0", - "wanted": "2.21.0", - "latest": "2.21.0", + "wanted": "2.22.1", + "latest": "2.22.1", "dependent": "app", "location": "/app/node_modules/nostr-tools" }, @@ -27,6 +34,13 @@ "dependent": "app", "location": "/app/node_modules/pixelmatch" }, + "playwright": { + "current": "1.58.0", + "wanted": "1.58.1", + "latest": "1.58.1", + "dependent": "app", + "location": "/app/node_modules/playwright" + }, "prettier-plugin-tailwindcss": { "current": "0.6.14", "wanted": "0.6.14", @@ -37,7 +51,7 @@ "stylelint": { "current": "16.26.1", "wanted": "16.26.1", - "latest": "17.0.0", + "latest": "17.1.0", "dependent": "app", "location": "/app/node_modules/stylelint" }, diff --git a/issues/upgrade-major-deps.md b/issues/upgrade-major-deps.md new file mode 100644 index 00000000..18a26240 --- /dev/null +++ b/issues/upgrade-major-deps.md @@ -0,0 +1,35 @@ +# Major Dependency Upgrades Needed + +The following dependencies have major version upgrades available. These require manual review and potentially migration guides. + +## Packages + +### tailwindcss +- **Current:** `3.4.19` +- **Latest:** `4.1.18` +- **Notes:** Tailwind v4 is a significant rewrite. Breaking changes expected in configuration and build process. + +### stylelint +- **Current:** `16.26.1` +- **Latest:** `17.1.0` +- **Notes:** Check for deprecated rules and config format changes. + +### pixelmatch +- **Current:** `5.3.0` +- **Latest:** `7.1.0` +- **Notes:** Used in visual tests. Verify image comparison logic remains compatible. + +### esbuild +- **Current:** `0.25.12` +- **Latest:** `0.27.2` +- **Notes:** Check build scripts (`scripts/build-beacon.mjs`) for compatibility. + +### prettier-plugin-tailwindcss +- **Current:** `0.6.14` +- **Latest:** `0.7.2` +- **Notes:** Minor version bump but 0.x semantic. + +## Action Items +- [ ] Create individual tasks for each major upgrade. +- [ ] Review migration guides for each package. +- [ ] Create branches for each upgrade to isolate regressions. diff --git a/issues/upgrade-nostr-tools.md b/issues/upgrade-nostr-tools.md index d57dccbe..726e2f71 100644 --- a/issues/upgrade-nostr-tools.md +++ b/issues/upgrade-nostr-tools.md @@ -1,21 +1,15 @@ # Upgrade nostr-tools -## Status -- **Current (Package):** `^2.19.4` -- **Current (Vendor):** `2.17.0` (found in `vendor/nostr-tools.bundle.min.js`) -- **Latest:** `2.21.0` +**Package:** `nostr-tools` +**Current Version:** `2.20.0` +**Wanted Version:** `2.22.1` +**Latest Version:** `2.22.1` ## Details -`nostr-tools` is a core protocol library. -There is a discrepancy between `package.json` (2.19.4) and the vendored bundle (2.17.0). -The latest version 2.21.0 is available. +This package was identified as a critical dependency (cryptographic/protocol library). Automatic upgrade was skipped. -## Plan -1. Review changelogs for breaking changes between 2.17.0/2.19.4 and 2.21.0. -2. Update `package.json` to `2.21.0`. -3. Update `vendor/nostr-tools.bundle.min.js` to match the new version. -4. Verify `js/nostr/client.js` and other consumers work correctly. -5. Run full E2E and Unit tests. - -## Guardrails -- Protocol library: Requires manual review. +## Action Items +- [ ] Review changelog for `nostr-tools` between 2.20.0 and 2.22.1. +- [ ] Verify no breaking changes in NIP implementations. +- [ ] Test cryptographic functions manually or via specific test suite. +- [ ] Apply upgrade manually. diff --git a/package-lock.json b/package-lock.json index 41d9b1ed..9af5cb8d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -931,13 +931,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.58.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.58.0.tgz", - "integrity": "sha512-fWza+Lpbj6SkQKCrU6si4iu+fD2dD3gxNHFhUPxsfXBPhnv3rRSQVd0NtBUT9Z/RhF/boCBcuUaMUSTRTopjZg==", + "version": "1.58.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.58.1.tgz", + "integrity": "sha512-6LdVIUERWxQMmUSSQi0I53GgCBYgM2RpGngCPY7hSeju+VrKjq3lvs7HpJoPbDiY5QM5EYRtRX5fvrinnMAz3w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.58.0" + "playwright": "1.58.1" }, "bin": { "playwright": "cli.js" @@ -1244,9 +1244,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.23", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz", - "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==", + "version": "10.4.24", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz", + "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==", "dev": true, "funding": [ { @@ -1265,7 +1265,7 @@ "license": "MIT", "dependencies": { "browserslist": "^4.28.1", - "caniuse-lite": "^1.0.30001760", + "caniuse-lite": "^1.0.30001766", "fraction.js": "^5.3.4", "picocolors": "^1.1.1", "postcss-value-parser": "^4.2.0" @@ -3142,13 +3142,13 @@ } }, "node_modules/playwright": { - "version": "1.58.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.0.tgz", - "integrity": "sha512-2SVA0sbPktiIY/MCOPX8e86ehA/e+tDNq+e5Y8qjKYti2Z/JG7xnronT/TXTIkKbYGWlCbuucZ6dziEgkoEjQQ==", + "version": "1.58.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.1.tgz", + "integrity": "sha512-+2uTZHxSCcxjvGc5C891LrS1/NlxglGxzrC4seZiVjcYVQfUa87wBL6rTDqzGjuoWNjnBzRqKmF6zRYGMvQUaQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.58.0" + "playwright-core": "1.58.1" }, "bin": { "playwright": "cli.js" @@ -3161,9 +3161,9 @@ } }, "node_modules/playwright-core": { - "version": "1.58.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.0.tgz", - "integrity": "sha512-aaoB1RWrdNi3//rOeKuMiS65UCcgOVljU46At6eFcOFPFHWtd2weHRRow6z/n+Lec0Lvu0k9ZPKJSjPugikirw==", + "version": "1.58.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.1.tgz", + "integrity": "sha512-bcWzOaTxcW+VOOGBCQgnaKToLJ65d6AqfLVKEWvexyS3AS6rbXl+xdpYRMGSRBClPvyj44njOWoxjNdL/H9UNg==", "dev": true, "license": "Apache-2.0", "bin": {