diff --git a/fern/apis/fdr/definition/generators/cli.yml b/fern/apis/fdr/definition/generators/cli.yml index 2c77275ef2..c6a9d9dfb8 100644 --- a/fern/apis/fdr/definition/generators/cli.yml +++ b/fern/apis/fdr/definition/generators/cli.yml @@ -6,19 +6,24 @@ imports: commons: ./commons.yml types: - CliReleaseRequest: - extends: commons.ReleaseRequest + BaseCliRelease: properties: irVersion: type: integer docs: The major version of the IR that this CLI exposes. + tags: + type: optional> + docs: Tags to categorize the CLI release. + + CliReleaseRequest: + extends: + - commons.ReleaseRequest + - BaseCliRelease CliRelease: - extends: commons.Release - properties: - irVersion: - type: integer - docs: The major version of the IR that this CLI exposes. + extends: + - commons.Release + - BaseCliRelease ListCliReleasesResponse: properties: diff --git a/fern/apis/fdr/definition/generators/commons.yml b/fern/apis/fdr/definition/generators/commons.yml index 52b70425ac..d506b3cfef 100644 --- a/fern/apis/fdr/definition/generators/commons.yml +++ b/fern/apis/fdr/definition/generators/commons.yml @@ -43,8 +43,14 @@ types: properties: type: ChangelogEntryType summary: string - upgradeNotes: optional + links: + type: optional> + docs: | + Any URLs that are relevant to the change, such as a PR or issue. This is optional for backcompat. + You do not always need to specify the URL as the CLI can fill it in with the current PR, but given you can choose to not + release within the same PR as the change is introduced, this should be specified for divorcing the two. + upgradeNotes: optional # Keep a Changelog added: optional> changed: optional> diff --git a/fern/apis/fdr/definition/generators/versions.yml b/fern/apis/fdr/definition/generators/versions.yml index fd26e9a0fd..7a55d93947 100644 --- a/fern/apis/fdr/definition/generators/versions.yml +++ b/fern/apis/fdr/definition/generators/versions.yml @@ -7,8 +7,7 @@ imports: root: ./__package__.yml types: - GeneratorReleaseRequest: - extends: commons.ReleaseRequest + BaseGeneratorRelease: properties: generatorId: root.GeneratorId irVersion: @@ -20,20 +19,19 @@ types: customConfigSchema: type: optional docs: The JSON schema (stringified) for the custom config that this generator version supports. + tags: + type: optional> + docs: Tags to categorize the Generator release. + + GeneratorReleaseRequest: + extends: + - commons.ReleaseRequest + - BaseGeneratorRelease GeneratorRelease: - extends: commons.Release - properties: - generatorId: root.GeneratorId - irVersion: - type: integer - docs: The major version of the IR that this generator version consumes. - migration: - type: optional - docs: The TypeScript file for the migration to run when upgrading to this version. - customConfigSchema: - type: optional - docs: The JSON schema (stringified) for the custom config that this generator version supports. + extends: + - commons.Release + - BaseGeneratorRelease ListGeneratorReleasesResponse: properties: diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/client/Client.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/client/Client.ts index 010eeb5799..ce3630e5ef 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/client/Client.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/client/Client.ts @@ -201,7 +201,6 @@ export class Cli { * * @example * await fernRegistry.generators.cli.upsertCliRelease({ - * irVersion: 1, * version: "string", * createdAt: "2023-01-15", * isYanked: { @@ -210,6 +209,9 @@ export class Cli { * changelogEntry: [{ * type: FernRegistry.generators.ChangelogEntryType.Fix, * summary: "string", + * links: { + * "key": "value" + * }, * upgradeNotes: { * "key": "value" * }, @@ -228,7 +230,9 @@ export class Cli { * fixed: { * "key": "value" * } - * }] + * }], + * irVersion: 1, + * tags: ["string"] * }) */ public async upsertCliRelease( diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/BaseCliRelease.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/BaseCliRelease.ts new file mode 100644 index 0000000000..2516e51ab5 --- /dev/null +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/BaseCliRelease.ts @@ -0,0 +1,10 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +export interface BaseCliRelease { + /** The major version of the IR that this CLI exposes. */ + irVersion: number; + /** Tags to categorize the CLI release. */ + tags?: string[]; +} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliRelease.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliRelease.ts index 1927015ea6..ec08534f62 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliRelease.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliRelease.ts @@ -4,7 +4,4 @@ import * as FernRegistry from "../../../../../index"; -export interface CliRelease extends FernRegistry.generators.Release { - /** The major version of the IR that this CLI exposes. */ - irVersion: number; -} +export interface CliRelease extends FernRegistry.generators.Release, FernRegistry.generators.BaseCliRelease {} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.ts index a5b75df0cd..8d5ae2e911 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.ts @@ -4,7 +4,6 @@ import * as FernRegistry from "../../../../../index"; -export interface CliReleaseRequest extends FernRegistry.generators.ReleaseRequest { - /** The major version of the IR that this CLI exposes. */ - irVersion: number; -} +export interface CliReleaseRequest + extends FernRegistry.generators.ReleaseRequest, + FernRegistry.generators.BaseCliRelease {} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/index.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/index.ts index 05f34a6de5..5d1c5626dc 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/index.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/cli/types/index.ts @@ -1,3 +1,4 @@ +export * from "./BaseCliRelease"; export * from "./CliReleaseRequest"; export * from "./CliRelease"; export * from "./ListCliReleasesResponse"; diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/commons/types/ChangelogEntry.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/commons/types/ChangelogEntry.ts index 0249072fab..942f2f0baf 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/commons/types/ChangelogEntry.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/commons/types/ChangelogEntry.ts @@ -10,6 +10,13 @@ import * as FernRegistry from "../../../../../index"; export interface ChangelogEntry { type: FernRegistry.generators.ChangelogEntryType; summary: string; + /** + * Any URLs that are relevant to the change, such as a PR or issue. This is optional for backcompat. + * + * You do not always need to specify the URL as the CLI can fill it in with the current PR, but given you can choose to not + * release within the same PR as the change is introduced, this should be specified for divorcing the two. + */ + links?: string[]; upgradeNotes?: string; added?: string[]; changed?: string[]; diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/client/Client.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/client/Client.ts index 20aa43cf8c..ad51a0541c 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/client/Client.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/client/Client.ts @@ -159,10 +159,6 @@ export class Versions { * * @example * await fernRegistry.generators.versions.upsertGeneratorRelease({ - * generatorId: "string", - * irVersion: 1, - * migration: "string", - * customConfigSchema: "string", * version: "string", * createdAt: "2023-01-15", * isYanked: { @@ -171,6 +167,9 @@ export class Versions { * changelogEntry: [{ * type: FernRegistry.generators.ChangelogEntryType.Fix, * summary: "string", + * links: { + * "key": "value" + * }, * upgradeNotes: { * "key": "value" * }, @@ -189,7 +188,12 @@ export class Versions { * fixed: { * "key": "value" * } - * }] + * }], + * generatorId: "string", + * irVersion: 1, + * migration: "string", + * customConfigSchema: "string", + * tags: ["string"] * }) */ public async upsertGeneratorRelease( diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.ts new file mode 100644 index 0000000000..623cc1df68 --- /dev/null +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.ts @@ -0,0 +1,17 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as FernRegistry from "../../../../../index"; + +export interface BaseGeneratorRelease { + generatorId: FernRegistry.generators.GeneratorId; + /** The major version of the IR that this generator version consumes. */ + irVersion: number; + /** The TypeScript file for the migration to run when upgrading to this version. Ideally this would be typed as a file, but we don't support file upload in the express generator. */ + migration?: string; + /** The JSON schema (stringified) for the custom config that this generator version supports. */ + customConfigSchema?: string; + /** Tags to categorize the Generator release. */ + tags?: string[]; +} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorRelease.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorRelease.ts index e9674b01d1..9f44f4088f 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorRelease.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorRelease.ts @@ -4,12 +4,6 @@ import * as FernRegistry from "../../../../../index"; -export interface GeneratorRelease extends FernRegistry.generators.Release { - generatorId: FernRegistry.generators.GeneratorId; - /** The major version of the IR that this generator version consumes. */ - irVersion: number; - /** The TypeScript file for the migration to run when upgrading to this version. */ - migration?: string; - /** The JSON schema (stringified) for the custom config that this generator version supports. */ - customConfigSchema?: string; -} +export interface GeneratorRelease + extends FernRegistry.generators.Release, + FernRegistry.generators.BaseGeneratorRelease {} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.ts index 81696b9757..a4b963b0a1 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.ts @@ -4,12 +4,6 @@ import * as FernRegistry from "../../../../../index"; -export interface GeneratorReleaseRequest extends FernRegistry.generators.ReleaseRequest { - generatorId: FernRegistry.generators.GeneratorId; - /** The major version of the IR that this generator version consumes. */ - irVersion: number; - /** The TypeScript file for the migration to run when upgrading to this version. Ideally this would be typed as a file, but we don't support file upload in the express generator. */ - migration?: string; - /** The JSON schema (stringified) for the custom config that this generator version supports. */ - customConfigSchema?: string; -} +export interface GeneratorReleaseRequest + extends FernRegistry.generators.ReleaseRequest, + FernRegistry.generators.BaseGeneratorRelease {} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/index.ts b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/index.ts index 73195b9601..480e1d4bce 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/index.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/generators/resources/versions/types/index.ts @@ -1,3 +1,4 @@ +export * from "./BaseGeneratorRelease"; export * from "./GeneratorReleaseRequest"; export * from "./GeneratorRelease"; export * from "./ListGeneratorReleasesResponse"; diff --git a/servers/fdr/prisma/migrations/20240916153103_add_tags_and_pr_urls/migration.sql b/servers/fdr/prisma/migrations/20240916153103_add_tags_and_pr_urls/migration.sql new file mode 100644 index 0000000000..38eb207367 --- /dev/null +++ b/servers/fdr/prisma/migrations/20240916153103_add_tags_and_pr_urls/migration.sql @@ -0,0 +1,5 @@ +-- AlterTable +ALTER TABLE "CliRelease" ADD COLUMN "tags" TEXT[] DEFAULT ARRAY[]::TEXT[]; + +-- AlterTable +ALTER TABLE "GeneratorRelease" ADD COLUMN "tags" TEXT[] DEFAULT ARRAY[]::TEXT[]; diff --git a/servers/fdr/prisma/schema.prisma b/servers/fdr/prisma/schema.prisma index 5faea330c7..1eb71f77f9 100644 --- a/servers/fdr/prisma/schema.prisma +++ b/servers/fdr/prisma/schema.prisma @@ -203,6 +203,7 @@ model GeneratorRelease { customConfigSchema String? releaseType ReleaseType + tags String[] @default([]) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt @@ -222,6 +223,7 @@ model CliRelease { changelogEntry Bytes? releaseType ReleaseType + tags String[] @default([]) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt diff --git a/servers/fdr/src/__test__/local/db/cliVersionsDao.test.ts b/servers/fdr/src/__test__/local/db/cliVersionsDao.test.ts index 97b4f74ed0..5e5f4afa6e 100644 --- a/servers/fdr/src/__test__/local/db/cliVersionsDao.test.ts +++ b/servers/fdr/src/__test__/local/db/cliVersionsDao.test.ts @@ -21,6 +21,31 @@ it("cli verion not semver", async () => { }).rejects.toThrow(new InvalidVersionError({ providedVersion: "abc.1.2" })); }); +it("cli release with tags and URLs", async () => { + const release: CliReleaseRequest = { + version: "0.1.2-rc13", + irVersion: 0, + tags: ["OpenAPI", "Fern Definition"], + changelogEntry: [ + { + type: "feat", + summary: "added a new feature", + added: ["added a new feature"], + links: ["https://123.com"], + }, + ], + }; + + await fdrApplication.dao.cliVersions().upsertCliRelease({ + cliRelease: release, + }); + + const dbRelease = await fdrApplication.dao.cliVersions().getCliRelease({ cliVersion: "0.1.2-rc13" }); + expect(dbRelease).not.toBeUndefined(); + expect(dbRelease?.tags).toEqual(release.tags); + expect(dbRelease?.changelogEntry?.[0]?.links).toEqual(release.changelogEntry?.[0]?.links); +}); + it("cli version get latest respects semver, not time", async () => { // create some versions and sleep between them to ensure the timestamps are different await fdrApplication.dao.cliVersions().upsertCliRelease({ diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.d.ts new file mode 100644 index 0000000000..ce087e1a01 --- /dev/null +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.d.ts @@ -0,0 +1,9 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +export interface BaseCliRelease { + /** The major version of the IR that this CLI exposes. */ + irVersion: number; + /** Tags to categorize the CLI release. */ + tags?: string[]; +} diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.js b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.js new file mode 100644 index 0000000000..0b46289f5b --- /dev/null +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/BaseCliRelease.js @@ -0,0 +1,4 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +export {}; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliRelease.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliRelease.d.ts index b75fd79fcd..b8affa0786 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliRelease.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliRelease.d.ts @@ -2,7 +2,5 @@ * This file was auto-generated by Fern from our API Definition. */ import * as FernRegistry from "../../../../../index"; -export interface CliRelease extends FernRegistry.generators.Release { - /** The major version of the IR that this CLI exposes. */ - irVersion: number; +export interface CliRelease extends FernRegistry.generators.Release, FernRegistry.generators.BaseCliRelease { } diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.d.ts index 8413396d50..ba7feecc92 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/CliReleaseRequest.d.ts @@ -2,7 +2,5 @@ * This file was auto-generated by Fern from our API Definition. */ import * as FernRegistry from "../../../../../index"; -export interface CliReleaseRequest extends FernRegistry.generators.ReleaseRequest { - /** The major version of the IR that this CLI exposes. */ - irVersion: number; +export interface CliReleaseRequest extends FernRegistry.generators.ReleaseRequest, FernRegistry.generators.BaseCliRelease { } diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.d.ts index 05f34a6de5..5d1c5626dc 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.d.ts @@ -1,3 +1,4 @@ +export * from "./BaseCliRelease"; export * from "./CliReleaseRequest"; export * from "./CliRelease"; export * from "./ListCliReleasesResponse"; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.js b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.js index 05f34a6de5..5d1c5626dc 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.js +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/cli/types/index.js @@ -1,3 +1,4 @@ +export * from "./BaseCliRelease"; export * from "./CliReleaseRequest"; export * from "./CliRelease"; export * from "./ListCliReleasesResponse"; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/commons/types/ChangelogEntry.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/commons/types/ChangelogEntry.d.ts index 8dd9d866ed..ea4e93a33e 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/commons/types/ChangelogEntry.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/commons/types/ChangelogEntry.d.ts @@ -8,6 +8,13 @@ import * as FernRegistry from "../../../../../index"; export interface ChangelogEntry { type: FernRegistry.generators.ChangelogEntryType; summary: string; + /** + * Any URLs that are relevant to the change, such as a PR or issue. This is optional for backcompat. + * + * You do not always need to specify the URL as the CLI can fill it in with the current PR, but given you can choose to not + * release within the same PR as the change is introduced, this should be specified for divorcing the two. + */ + links?: string[]; upgradeNotes?: string; added?: string[]; changed?: string[]; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.d.ts new file mode 100644 index 0000000000..44f962dcd3 --- /dev/null +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.d.ts @@ -0,0 +1,15 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +import * as FernRegistry from "../../../../../index"; +export interface BaseGeneratorRelease { + generatorId: FernRegistry.generators.GeneratorId; + /** The major version of the IR that this generator version consumes. */ + irVersion: number; + /** The TypeScript file for the migration to run when upgrading to this version. Ideally this would be typed as a file, but we don't support file upload in the express generator. */ + migration?: string; + /** The JSON schema (stringified) for the custom config that this generator version supports. */ + customConfigSchema?: string; + /** Tags to categorize the Generator release. */ + tags?: string[]; +} diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.js b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.js new file mode 100644 index 0000000000..0b46289f5b --- /dev/null +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/BaseGeneratorRelease.js @@ -0,0 +1,4 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ +export {}; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorRelease.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorRelease.d.ts index 85df8b32cf..1033874cbe 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorRelease.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorRelease.d.ts @@ -2,12 +2,5 @@ * This file was auto-generated by Fern from our API Definition. */ import * as FernRegistry from "../../../../../index"; -export interface GeneratorRelease extends FernRegistry.generators.Release { - generatorId: FernRegistry.generators.GeneratorId; - /** The major version of the IR that this generator version consumes. */ - irVersion: number; - /** The TypeScript file for the migration to run when upgrading to this version. */ - migration?: string; - /** The JSON schema (stringified) for the custom config that this generator version supports. */ - customConfigSchema?: string; +export interface GeneratorRelease extends FernRegistry.generators.Release, FernRegistry.generators.BaseGeneratorRelease { } diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.d.ts index 6310853348..b1d23f4c74 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/GeneratorReleaseRequest.d.ts @@ -2,12 +2,5 @@ * This file was auto-generated by Fern from our API Definition. */ import * as FernRegistry from "../../../../../index"; -export interface GeneratorReleaseRequest extends FernRegistry.generators.ReleaseRequest { - generatorId: FernRegistry.generators.GeneratorId; - /** The major version of the IR that this generator version consumes. */ - irVersion: number; - /** The TypeScript file for the migration to run when upgrading to this version. Ideally this would be typed as a file, but we don't support file upload in the express generator. */ - migration?: string; - /** The JSON schema (stringified) for the custom config that this generator version supports. */ - customConfigSchema?: string; +export interface GeneratorReleaseRequest extends FernRegistry.generators.ReleaseRequest, FernRegistry.generators.BaseGeneratorRelease { } diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.d.ts b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.d.ts index 73195b9601..480e1d4bce 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.d.ts +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.d.ts @@ -1,3 +1,4 @@ +export * from "./BaseGeneratorRelease"; export * from "./GeneratorReleaseRequest"; export * from "./GeneratorRelease"; export * from "./ListGeneratorReleasesResponse"; diff --git a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.js b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.js index 73195b9601..480e1d4bce 100644 --- a/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.js +++ b/servers/fdr/src/api/generated/api/resources/generators/resources/versions/types/index.js @@ -1,3 +1,4 @@ +export * from "./BaseGeneratorRelease"; export * from "./GeneratorReleaseRequest"; export * from "./GeneratorRelease"; export * from "./ListGeneratorReleasesResponse"; diff --git a/servers/fdr/src/db/generators/CliVersionsDao.ts b/servers/fdr/src/db/generators/CliVersionsDao.ts index 7efdbacece..b266f72292 100644 --- a/servers/fdr/src/db/generators/CliVersionsDao.ts +++ b/servers/fdr/src/db/generators/CliVersionsDao.ts @@ -136,6 +136,7 @@ export class CliVersionsDaoImpl implements CliVersionsDao { changelogEntry: cliRelease.changelogEntry != null ? writeBuffer(cliRelease.changelogEntry) : null, isYanked: cliRelease.isYanked != null ? writeBuffer(cliRelease.isYanked) : null, createdAt: cliRelease.createdAt != null ? new Date(cliRelease.createdAt) : undefined, + tags: cliRelease.tags, }; await this.prisma.cliRelease.upsert({ @@ -199,6 +200,7 @@ function convertPrismaCliRelease(cliRelease: prisma.CliRelease | null): CliRelea return { version: cliRelease.version, + tags: cliRelease.tags, irVersion: cliRelease.irVersion, releaseType: convertPrismaReleaseType(cliRelease.releaseType), changelogEntry: diff --git a/servers/fdr/src/db/generators/GeneratorVersionsDao.ts b/servers/fdr/src/db/generators/GeneratorVersionsDao.ts index 925a401644..4c5b7ba705 100644 --- a/servers/fdr/src/db/generators/GeneratorVersionsDao.ts +++ b/servers/fdr/src/db/generators/GeneratorVersionsDao.ts @@ -96,6 +96,7 @@ export class GeneratorVersionsDaoImpl implements GeneratorVersionsDao { releaseType, nonce: noncifySemanticVersion(generatorRelease.version), createdAt: generatorRelease.createdAt != null ? new Date(generatorRelease.createdAt) : undefined, + tags: generatorRelease.tags, }; await this.prisma.generatorRelease.upsert({ where: { @@ -274,5 +275,6 @@ function convertPrismaGeneratorRelease(generatorRelease: prisma.GeneratorRelease majorVersion: generatorRelease.major, isYanked: generatorRelease.isYanked != null ? (readBuffer(generatorRelease.isYanked) as Yank) : undefined, createdAt: generatorRelease.createdAt?.toISOString(), + tags: generatorRelease.tags, }; }