From 49c9111d50644c0588086c5abff94fec11a339e8 Mon Sep 17 00:00:00 2001 From: "franca.winter" Date: Thu, 23 Jul 2026 11:44:23 +0200 Subject: [PATCH 1/4] fix(API): extract cldr_version enum to fix TypeScript client build The typescript-fetch generator fails to emit the enum declaration for inline string enums inside schemas that also use oneOf. This causes a compile error in the generated client: src/models/IcuSkeletonParameters.ts: Cannot find name 'IcuSkeletonParametersCldrVersionEnum' Fix: extract cldr_version to a named component schema (icu_skeleton_cldr_version). The generator handles named schemas correctly. Enum values are unchanged so this is not a breaking change. Co-Authored-By: Claude Sonnet 4.6 --- doc/compiled.json | 17 ++++++++++------- paths/icu/skeleton.yaml | 10 +--------- schemas.yaml | 2 ++ schemas/icu.yaml | 11 +++++++++++ 4 files changed, 24 insertions(+), 16 deletions(-) diff --git a/doc/compiled.json b/doc/compiled.json index dd99f2c9c..95baec974 100644 --- a/doc/compiled.json +++ b/doc/compiled.json @@ -4456,6 +4456,15 @@ "de": "{number, plural, one {} other {}}" } }, + "icu_skeleton_cldr_version": { + "type": "string", + "description": "Pluralization rule set to apply when constructing skeletons. Accepted values are `legacy` and `cldr_41`. Defaults to `legacy` when omitted.", + "enum": [ + "legacy", + "cldr_41" + ], + "example": "cldr_41" + }, "notification": { "type": "object", "title": "notification", @@ -5731,13 +5740,7 @@ "example": false }, "cldr_version": { - "description": "Pluralization rule set to apply when constructing skeletons. Accepted values are `legacy` and `cldr_41`. Defaults to `legacy` when omitted.", - "type": "string", - "enum": [ - "legacy", - "cldr_41" - ], - "example": "cldr_41" + "$ref": "#/components/schemas/icu_skeleton_cldr_version" } }, "oneOf": [ diff --git a/paths/icu/skeleton.yaml b/paths/icu/skeleton.yaml index 830c0e132..6b34958a1 100644 --- a/paths/icu/skeleton.yaml +++ b/paths/icu/skeleton.yaml @@ -64,15 +64,7 @@ requestBody: type: boolean example: false cldr_version: - description: >- - Pluralization rule set to apply when constructing skeletons. - Accepted values are `legacy` and `cldr_41`. Defaults to - `legacy` when omitted. - type: string - enum: - - legacy - - cldr_41 - example: cldr_41 + "$ref": "../../schemas/icu.yaml#/skeleton_cldr_version" oneOf: - required: - content diff --git a/schemas.yaml b/schemas.yaml index 02c46b8f4..c681ab212 100644 --- a/schemas.yaml +++ b/schemas.yaml @@ -156,6 +156,8 @@ schemas: "$ref": schemas/variable.yaml#/variable icu: "$ref": schemas/icu.yaml#/skeleton + icu_skeleton_cldr_version: + "$ref": schemas/icu.yaml#/skeleton_cldr_version notification: "$ref": schemas/notification.yaml#/notification notification_group: diff --git a/schemas/icu.yaml b/schemas/icu.yaml index f328ba1b7..1220a8808 100644 --- a/schemas/icu.yaml +++ b/schemas/icu.yaml @@ -9,3 +9,14 @@ skeleton: example: en: "{number, plural, one {} other {}}" de: "{number, plural, one {} other {}}" + +skeleton_cldr_version: + type: string + description: >- + Pluralization rule set to apply when constructing skeletons. + Accepted values are `legacy` and `cldr_41`. Defaults to + `legacy` when omitted. + enum: + - legacy + - cldr_41 + example: cldr_41 From d8bfdbffbe0f51cf7ddbb9a26317ae36d2272c27 Mon Sep 17 00:00:00 2001 From: "franca.winter" Date: Thu, 23 Jul 2026 13:40:09 +0200 Subject: [PATCH 2/4] fix(API): drop cldr_version enum, fix description and example The enum was wrong (cldr_41 should be cldr41) and would go stale with every CLDR release. Drop it in favour of a description that names legacy and cldr48 as representative values without pinning an exhaustive list. Update example to cldr48 (current default). Co-Authored-By: Claude Sonnet 4.6 --- doc/compiled.json | 10 +++------- schemas/icu.yaml | 11 ++++------- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/doc/compiled.json b/doc/compiled.json index 95baec974..d6a0eaee4 100644 --- a/doc/compiled.json +++ b/doc/compiled.json @@ -4458,12 +4458,8 @@ }, "icu_skeleton_cldr_version": { "type": "string", - "description": "Pluralization rule set to apply when constructing skeletons. Accepted values are `legacy` and `cldr_41`. Defaults to `legacy` when omitted.", - "enum": [ - "legacy", - "cldr_41" - ], - "example": "cldr_41" + "description": "Pluralization rule set to use when constructing skeletons. Pass `legacy` for pre-CLDR behaviour, or a CLDR version string such as `cldr48`. Defaults to the project's configured version when omitted.", + "example": "cldr48" }, "notification": { "type": "object", @@ -5460,7 +5456,7 @@ }, "job_updated_since": { "description": "filter by jobs updated since given date", - "example": "2013-02-21T00:00:00.000Z", + "example": "2013-02-21T00:00:00Z", "name": "updated_since", "in": "query", "schema": { diff --git a/schemas/icu.yaml b/schemas/icu.yaml index 1220a8808..e747e389b 100644 --- a/schemas/icu.yaml +++ b/schemas/icu.yaml @@ -13,10 +13,7 @@ skeleton: skeleton_cldr_version: type: string description: >- - Pluralization rule set to apply when constructing skeletons. - Accepted values are `legacy` and `cldr_41`. Defaults to - `legacy` when omitted. - enum: - - legacy - - cldr_41 - example: cldr_41 + Pluralization rule set to use when constructing skeletons. Pass `legacy` + for pre-CLDR behaviour, or a CLDR version string such as `cldr48`. + Defaults to the project's configured version when omitted. + example: cldr48 From 0606cdf5b87dc687b5b630aba4388706a0fc2f06 Mon Sep 17 00:00:00 2001 From: "franca.winter" Date: Thu, 23 Jul 2026 13:44:37 +0200 Subject: [PATCH 3/4] fix(API): remove cldr_version enum from icu/skeleton request body The typescript-fetch generator fails to emit the enum declaration for inline string enums inside schemas that also use oneOf, causing a compile error in the generated TypeScript client. Removing the enum fixes the build. Description and example updated to reflect the actual accepted values. Co-Authored-By: Claude Sonnet 4.6 --- doc/compiled.json | 9 +++------ paths/icu/skeleton.yaml | 8 +++++++- schemas.yaml | 2 -- schemas/icu.yaml | 8 -------- 4 files changed, 10 insertions(+), 17 deletions(-) diff --git a/doc/compiled.json b/doc/compiled.json index d6a0eaee4..282ae727f 100644 --- a/doc/compiled.json +++ b/doc/compiled.json @@ -4456,11 +4456,6 @@ "de": "{number, plural, one {} other {}}" } }, - "icu_skeleton_cldr_version": { - "type": "string", - "description": "Pluralization rule set to use when constructing skeletons. Pass `legacy` for pre-CLDR behaviour, or a CLDR version string such as `cldr48`. Defaults to the project's configured version when omitted.", - "example": "cldr48" - }, "notification": { "type": "object", "title": "notification", @@ -5736,7 +5731,9 @@ "example": false }, "cldr_version": { - "$ref": "#/components/schemas/icu_skeleton_cldr_version" + "description": "Pluralization rule set to use when constructing skeletons. Pass `legacy` for pre-CLDR behaviour, or a CLDR version string such as `cldr48`. Defaults to the project's configured version when omitted.", + "type": "string", + "example": "cldr48" } }, "oneOf": [ diff --git a/paths/icu/skeleton.yaml b/paths/icu/skeleton.yaml index 6b34958a1..594f60b37 100644 --- a/paths/icu/skeleton.yaml +++ b/paths/icu/skeleton.yaml @@ -64,7 +64,13 @@ requestBody: type: boolean example: false cldr_version: - "$ref": "../../schemas/icu.yaml#/skeleton_cldr_version" + description: >- + Pluralization rule set to use when constructing skeletons. Pass + `legacy` for pre-CLDR behaviour, or a CLDR version string such + as `cldr48`. Defaults to the project's configured version when + omitted. + type: string + example: cldr48 oneOf: - required: - content diff --git a/schemas.yaml b/schemas.yaml index c681ab212..02c46b8f4 100644 --- a/schemas.yaml +++ b/schemas.yaml @@ -156,8 +156,6 @@ schemas: "$ref": schemas/variable.yaml#/variable icu: "$ref": schemas/icu.yaml#/skeleton - icu_skeleton_cldr_version: - "$ref": schemas/icu.yaml#/skeleton_cldr_version notification: "$ref": schemas/notification.yaml#/notification notification_group: diff --git a/schemas/icu.yaml b/schemas/icu.yaml index e747e389b..f328ba1b7 100644 --- a/schemas/icu.yaml +++ b/schemas/icu.yaml @@ -9,11 +9,3 @@ skeleton: example: en: "{number, plural, one {} other {}}" de: "{number, plural, one {} other {}}" - -skeleton_cldr_version: - type: string - description: >- - Pluralization rule set to use when constructing skeletons. Pass `legacy` - for pre-CLDR behaviour, or a CLDR version string such as `cldr48`. - Defaults to the project's configured version when omitted. - example: cldr48 From 13cffb07b1c09307cdda3408916d067898b2900d Mon Sep 17 00:00:00 2001 From: "franca.winter" Date: Thu, 23 Jul 2026 13:50:07 +0200 Subject: [PATCH 4/4] chore: regenerate compiled.json with pinned swagger-cli version Co-Authored-By: Claude Sonnet 4.6 --- doc/compiled.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/compiled.json b/doc/compiled.json index 282ae727f..deb238a1d 100644 --- a/doc/compiled.json +++ b/doc/compiled.json @@ -5451,7 +5451,7 @@ }, "job_updated_since": { "description": "filter by jobs updated since given date", - "example": "2013-02-21T00:00:00Z", + "example": "2013-02-21T00:00:00.000Z", "name": "updated_since", "in": "query", "schema": {