Bump zod dependency to v4 for packages using configSchema

These packages use `configSchema` with `zod/v4` imports and require the
full Zod v4 package for JSON Schema support. The dependency range is
narrowed from `^3.25.76 || ^4.0.0` to `^4.0.0`.

Also adds a `.patches` entry for the patch release.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
This commit is contained in:
Patrik Oldsberg
2026-04-16 18:44:51 +02:00
parent 72a552f0db
commit 085133fde0
13 changed files with 33 additions and 20 deletions
+1 -1
View File
@@ -2,4 +2,4 @@
'@backstage/frontend-plugin-api': patch
---
Updated error messages and deprecation warnings to clarify that the `zod/v4` subpath export from the Zod v3 package is not supported by `configSchema`, since it does not include JSON Schema conversion. A full migration to the `zod` v4 package (`zod@^4.0.0`) is required.
Updated error messages and deprecation warnings to clarify that the `zod/v4` subpath export from the Zod v3 package is not supported by `configSchema`, since it does not include JSON Schema conversion. The `zod` dependency has been bumped to `^4.0.0`.
+12
View File
@@ -0,0 +1,12 @@
---
'@backstage/plugin-app': patch
'@backstage/plugin-catalog': patch
'@backstage/plugin-catalog-react': patch
'@backstage/plugin-catalog-graph': patch
'@backstage/plugin-techdocs': patch
'@backstage/plugin-search': patch
'@backstage/plugin-search-react': patch
'@backstage/plugin-org': patch
---
The `zod` dependency has been bumped from `^3.25.76 || ^4.0.0` to `^4.0.0`, since `configSchema` requires the full Zod v4 package for JSON Schema support.
+1
View File
@@ -0,0 +1 @@
Bump zod dependency to v4 for packages using configSchema and clarify that zod/v4 subpath from v3 is not supported
+1 -1
View File
@@ -49,7 +49,7 @@
"@backstage/types": "workspace:^",
"@backstage/version-bridge": "workspace:^",
"@standard-schema/spec": "^1.1.0",
"zod": "^3.25.76 || ^4.0.0",
"zod": "^4.0.0",
"zod-to-json-schema": "^3.25.1"
},
"devDependencies": {
+1 -1
View File
@@ -72,7 +72,7 @@
"react-stately": "^3.46.0",
"react-use": "^17.2.4",
"zen-observable": "^0.10.0",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -65,7 +65,7 @@
"lodash": "^4.17.15",
"qs": "^6.9.4",
"react-use": "^17.2.4",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -87,7 +87,7 @@
"react-use": "^17.2.4",
"yaml": "^2.0.0",
"zen-observable": "^0.10.0",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -88,7 +88,7 @@
"react-helmet": "6.1.0",
"react-use": "^17.2.4",
"zen-observable": "^0.10.0",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -67,7 +67,7 @@
"pluralize": "^8.0.0",
"qs": "^6.10.1",
"react-use": "^17.2.4",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/catalog-client": "workspace:^",
+1 -1
View File
@@ -70,7 +70,7 @@
"qs": "^6.9.4",
"react-use": "^17.3.2",
"uuid": "^11.0.2",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -72,7 +72,7 @@
"@material-ui/icons": "^4.9.1",
"qs": "^6.9.4",
"react-use": "^17.2.4",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+1 -1
View File
@@ -87,7 +87,7 @@
"lodash": "^4.17.21",
"react-helmet": "6.1.0",
"react-use": "^17.2.4",
"zod": "^3.25.76 || ^4.0.0"
"zod": "^4.0.0"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
+10 -10
View File
@@ -3826,7 +3826,7 @@ __metadata:
react: "npm:^18.0.2"
react-dom: "npm:^18.0.2"
react-router-dom: "npm:^6.30.2"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
zod-to-json-schema: "npm:^3.25.1"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
@@ -4190,7 +4190,7 @@ __metadata:
react-stately: "npm:^3.46.0"
react-use: "npm:^17.2.4"
zen-observable: "npm:^0.10.0"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -5265,7 +5265,7 @@ __metadata:
react-dom: "npm:^18.0.2"
react-router-dom: "npm:^6.30.2"
react-use: "npm:^17.2.4"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -5401,7 +5401,7 @@ __metadata:
react-use: "npm:^17.2.4"
yaml: "npm:^2.0.0"
zen-observable: "npm:^0.10.0"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@backstage/frontend-test-utils": "workspace:^"
"@types/react": ^17.0.0 || ^18.0.0
@@ -5512,7 +5512,7 @@ __metadata:
react-use: "npm:^17.2.4"
swr: "npm:^2.2.5"
zen-observable: "npm:^0.10.0"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -6417,7 +6417,7 @@ __metadata:
react-dom: "npm:^18.0.2"
react-router-dom: "npm:^6.30.2"
react-use: "npm:^17.2.4"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -7325,7 +7325,7 @@ __metadata:
react-router-dom: "npm:^6.30.2"
react-use: "npm:^17.3.2"
uuid: "npm:^11.0.2"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -7368,7 +7368,7 @@ __metadata:
react-dom: "npm:^18.0.2"
react-router-dom: "npm:^6.30.2"
react-use: "npm:^17.2.4"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -7714,7 +7714,7 @@ __metadata:
react-helmet: "npm:6.1.0"
react-router-dom: "npm:^6.30.2"
react-use: "npm:^17.2.4"
zod: "npm:^3.25.76 || ^4.0.0"
zod: "npm:^4.0.0"
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
react: ^17.0.0 || ^18.0.0
@@ -49246,7 +49246,7 @@ __metadata:
languageName: node
linkType: hard
"zod@npm:^3.25 || ^4.0, zod@npm:^3.25.76 || ^4.0.0, zod@npm:^4.1.11":
"zod@npm:^3.25 || ^4.0, zod@npm:^3.25.76 || ^4.0.0, zod@npm:^4.0.0, zod@npm:^4.1.11":
version: 4.3.6
resolution: "zod@npm:4.3.6"
checksum: 10/25fc0f62e01b557b4644bf0b393bbaf47542ab30877c37837ea8caf314a8713d220c7d7fe51f68ffa72f0e1018ddfa34d96f1973d23033f5a2a5a9b6b9d9da01