1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-11-10 01:19:53 +01:00

chore: upgrade swagger-parser (#10946)

## Why

- @apidevtools/swagger-parser 12.1.0 switched its schema validator to
Ajv’s compile‑and‑reuse model, so validating our large OpenAPI document
no longer instantiates fresh Ajv/Z‑Schema instances per run. That lowers
the resident set size during spec validation.
- The bundled @apidevtools/json-schema-ref-parser dependency is now
14.x, which avoids mutating the input schema and uses a leaner
dereference cache, further trimming retained objects while we build the
OpenAPI spec.

In the previous 10.1.x line, lib/validators/schema.js was instantiating
Ajv (and even Z‑Schema in older builds) per invocation and mutating
large schema objects in place, which meant every validation spun up
fresh parser state plus lots of temporary objects.
This commit is contained in:
Gastón Fournier 2025-11-07 15:25:24 +01:00 committed by GitHub
parent 0bcdf82e37
commit 101ed4d3f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 13 deletions

View File

@ -132,7 +132,7 @@
"unleash-client": "^6.8.0-beta.0"
},
"devDependencies": {
"@apidevtools/swagger-parser": "10.1.1",
"@apidevtools/swagger-parser": "12.1.0",
"@babel/core": "7.26.10",
"@biomejs/biome": "^1.9.4",
"@cyclonedx/yarn-plugin-cyclonedx": "^2.0.0",

View File

@ -25,14 +25,13 @@ __metadata:
languageName: node
linkType: hard
"@apidevtools/json-schema-ref-parser@npm:11.7.2":
version: 11.7.2
resolution: "@apidevtools/json-schema-ref-parser@npm:11.7.2"
"@apidevtools/json-schema-ref-parser@npm:14.0.1":
version: 14.0.1
resolution: "@apidevtools/json-schema-ref-parser@npm:14.0.1"
dependencies:
"@jsdevtools/ono": "npm:^7.1.3"
"@types/json-schema": "npm:^7.0.15"
js-yaml: "npm:^4.1.0"
checksum: 10c0/90dd8e60e25ccfe5c7de2453de893d5f5bb7c6cabcce028edf0678a119f0e433f422d730aa14fd718542e80fa7b3acf40923d69dc8e9f6c25603842b76ad2f16
checksum: 10c0/f8aff4d32f66b81be0e641da175d359ec3e4191f9c65343b30f90cfbcfdbdb78b13e57c4a0a8d0574c828294abde56400a031858f61cf38b3309a4213698dc0c
languageName: node
linkType: hard
@ -78,20 +77,19 @@ __metadata:
languageName: node
linkType: hard
"@apidevtools/swagger-parser@npm:10.1.1":
version: 10.1.1
resolution: "@apidevtools/swagger-parser@npm:10.1.1"
"@apidevtools/swagger-parser@npm:12.1.0":
version: 12.1.0
resolution: "@apidevtools/swagger-parser@npm:12.1.0"
dependencies:
"@apidevtools/json-schema-ref-parser": "npm:11.7.2"
"@apidevtools/json-schema-ref-parser": "npm:14.0.1"
"@apidevtools/openapi-schemas": "npm:^2.1.0"
"@apidevtools/swagger-methods": "npm:^3.0.2"
"@jsdevtools/ono": "npm:^7.1.3"
ajv: "npm:^8.17.1"
ajv-draft-04: "npm:^1.0.0"
call-me-maybe: "npm:^1.0.2"
peerDependencies:
openapi-types: ">=7"
checksum: 10c0/21be668c64311d54579ef06e71b6d5640df032f4cdd959dfde93210f26128cbe3c84eb29ead1895c93af703cd4f2fd7efae31dd316549f1f9d29293c78b0ccd4
checksum: 10c0/ccac54e2f67c24c22fbfe8040a70642da20b72c8b0b21ba75c4e97b7444189eff09fb25fcdd8903f1081b9d4d3c78b57ed39c19397502e1bc64b517f0f3a8639
languageName: node
linkType: hard
@ -7558,7 +7556,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "unleash-server@workspace:."
dependencies:
"@apidevtools/swagger-parser": "npm:10.1.1"
"@apidevtools/swagger-parser": "npm:12.1.0"
"@babel/core": "npm:7.26.10"
"@biomejs/biome": "npm:^1.9.4"
"@cyclonedx/yarn-plugin-cyclonedx": "npm:^2.0.0"