@postman/sdk-config 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +18 -6
  2. package/dist/index.cjs +170 -18
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +1 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +170 -18
  7. package/dist/index.js.map +1 -1
  8. package/dist/sdk-config/index.cjs +164 -17
  9. package/dist/sdk-config/index.cjs.map +1 -1
  10. package/dist/sdk-config/index.d.cts +1 -1
  11. package/dist/sdk-config/index.d.ts +1 -1
  12. package/dist/sdk-config/index.js +164 -17
  13. package/dist/sdk-config/index.js.map +1 -1
  14. package/dist/sdk-config/v1/index.cjs +164 -17
  15. package/dist/sdk-config/v1/index.cjs.map +1 -1
  16. package/dist/sdk-config/v1/index.d.cts +429 -31
  17. package/dist/sdk-config/v1/index.d.ts +429 -31
  18. package/dist/sdk-config/v1/index.js +164 -17
  19. package/dist/sdk-config/v1/index.js.map +1 -1
  20. package/dist/sdk-config-ir/index.cjs +22 -5
  21. package/dist/sdk-config-ir/index.cjs.map +1 -1
  22. package/dist/sdk-config-ir/index.d.cts +1 -1
  23. package/dist/sdk-config-ir/index.d.ts +1 -1
  24. package/dist/sdk-config-ir/index.js +22 -5
  25. package/dist/sdk-config-ir/index.js.map +1 -1
  26. package/dist/sdk-config-ir/v1/index.cjs +22 -5
  27. package/dist/sdk-config-ir/v1/index.cjs.map +1 -1
  28. package/dist/sdk-config-ir/v1/index.d.cts +30 -4
  29. package/dist/sdk-config-ir/v1/index.d.ts +30 -4
  30. package/dist/sdk-config-ir/v1/index.js +22 -5
  31. package/dist/sdk-config-ir/v1/index.js.map +1 -1
  32. package/dist/{typescript-Byhn4MqL.d.cts → typescript-BFRxjAah.d.cts} +1 -0
  33. package/dist/{typescript-Byhn4MqL.d.ts → typescript-BFRxjAah.d.ts} +1 -0
  34. package/package.json +1 -1
  35. package/src/sdk-config/v1/README.md +35 -12
  36. package/src/sdk-config-ir/v1/README.md +36 -29
@@ -1,3 +1,3 @@
1
1
  export { ApiConfig, ApiConfigInput, ApiImportSettings, AuthConfig, AuthScheme, ClientConfig, ClientConfigInput, ClientConfigOverride, CompatibilityConfig, CredentialResolution, DocsConfig, GenerationConfig, LanguageGenerationConfig, LegacyInput, OutputConfig, PublishConfig, PublishRegistry, ReadmeCustomSection, ReadmeEndpoint, ReplayConfig, SDK_CONFIG_IR_V1_SCHEMA_VERSION, SdkConfigIrCapability, SdkConfigIrV1, SdkConfigIrV1Input, SerializedSdkConfigIrV1, SourceConfig, SourceSpecConfig, SourceSpecType, TargetConfig, TargetLanguage, UnsupportedField, WebhookSignature, WebhookSignatureInput, apiConfigSchema, apiImportSettingsSchema, authConfigSchema, authSchemeSchema, clientConfigOverrideSchema, clientConfigSchema, clientRetryOverrideSchema, compatibilityConfigSchema, docsConfigSchema, generationConfigSchema, getSdkConfigIrV1Diagnostics, languageGenerationConfigSchema, legacyInputSchema, outputConfigSchema, parseSdkConfigIrV1, parseSdkConfigIrV1ForConsumption, publishConfigSchema, publishRegistrySchema, readmeCustomSectionSchema, readmeEndpointSchema, replayConfigSchema, sdkConfigIrCapabilitySchema, sdkConfigIrV1Schema, serializeSdkConfigIrV1, sourceConfigSchema, sourceSpecConfigSchema, sourceSpecTypeSchema, targetConfigSchema, targetLanguageSchema, unsupportedFieldSchema, webhookSignatureSchema } from './v1/index.cjs';
2
- export { C as CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE, a as CliDistributionConfig, b as CliDistributionGithubAppConfig, c as CliDistributionHomebrewConfig, d as CliDistributionScoopConfig, e as CliGenerationConfig, f as CliProfilesConfig, g as CliProfilesProvisionOperation, h as CsharpGenerationConfig, D as Dependency, G as GoGenerationConfig, J as JavaGenerationConfig, i as JsonObject, j as JsonValue, K as KotlinGenerationConfig, M as McpAvailabilityStatus, k as McpGenerationConfig, l as McpToolFilter, P as PackageConfig, m as PhpGenerationConfig, n as PlanModifiers, o as PythonGenerationConfig, R as RubyGenerationConfig, p as RustGenerationConfig, S as SdkConfigIrV1Diagnostic, q as SwiftGenerationConfig, T as TerraformGenerationConfig, r as TypescriptGenerationConfig, s as cliDistributionConfigSchema, t as cliDistributionGithubAppSchema, u as cliDistributionHomebrewSchema, v as cliDistributionScoopSchema, w as cliGenerationConfigSchema, x as composerPackageNameSchema, y as csharpGenerationConfigSchema, z as dependencySchema, A as exactSemverSchema, B as githubActionsSecretNameSchema, E as goGenerationConfigSchema, F as goModulePathSchema, H as javaGenerationConfigSchema, I as jsonObjectSchema, L as jsonValueSchema, N as kotlinGenerationConfigSchema, O as mcpAvailabilityStatuses, Q as mcpGenerationConfigSchema, U as nonEmptyStringSchema, V as packageConfigSchema, W as phpGenerationConfigSchema, X as pythonGenerationConfigSchema, Y as relativePathSchema, Z as rubyGenerationConfigSchema, _ as rustGenerationConfigSchema, $ as swiftGenerationConfigSchema, a0 as terraformGenerationConfigSchema, a1 as typescriptGenerationConfigSchema } from '../typescript-Byhn4MqL.cjs';
2
+ export { C as CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE, a as CliDistributionConfig, b as CliDistributionGithubAppConfig, c as CliDistributionHomebrewConfig, d as CliDistributionScoopConfig, e as CliGenerationConfig, f as CliProfilesConfig, g as CliProfilesProvisionOperation, h as CsharpGenerationConfig, D as Dependency, G as GoGenerationConfig, J as JavaGenerationConfig, i as JsonObject, j as JsonValue, K as KotlinGenerationConfig, M as McpAvailabilityStatus, k as McpGenerationConfig, l as McpToolFilter, P as PackageConfig, m as PhpGenerationConfig, n as PlanModifiers, o as PythonGenerationConfig, R as RubyGenerationConfig, p as RustGenerationConfig, S as SdkConfigIrV1Diagnostic, q as SwiftGenerationConfig, T as TerraformGenerationConfig, r as TypescriptGenerationConfig, s as cliDistributionConfigSchema, t as cliDistributionGithubAppSchema, u as cliDistributionHomebrewSchema, v as cliDistributionScoopSchema, w as cliGenerationConfigSchema, x as composerPackageNameSchema, y as csharpGenerationConfigSchema, z as dependencySchema, A as exactSemverSchema, B as githubActionsSecretNameSchema, E as goGenerationConfigSchema, F as goModulePathSchema, H as javaGenerationConfigSchema, I as jsonObjectSchema, L as jsonValueSchema, N as kotlinGenerationConfigSchema, O as mcpAvailabilityStatuses, Q as mcpGenerationConfigSchema, U as nonEmptyStringSchema, V as packageConfigSchema, W as phpGenerationConfigSchema, X as pythonGenerationConfigSchema, Y as relativePathSchema, Z as rubyGenerationConfigSchema, _ as rustGenerationConfigSchema, $ as swiftGenerationConfigSchema, a0 as terraformGenerationConfigSchema, a1 as typescriptGenerationConfigSchema } from '../typescript-BFRxjAah.cjs';
3
3
  import 'zod';
@@ -1,3 +1,3 @@
1
1
  export { ApiConfig, ApiConfigInput, ApiImportSettings, AuthConfig, AuthScheme, ClientConfig, ClientConfigInput, ClientConfigOverride, CompatibilityConfig, CredentialResolution, DocsConfig, GenerationConfig, LanguageGenerationConfig, LegacyInput, OutputConfig, PublishConfig, PublishRegistry, ReadmeCustomSection, ReadmeEndpoint, ReplayConfig, SDK_CONFIG_IR_V1_SCHEMA_VERSION, SdkConfigIrCapability, SdkConfigIrV1, SdkConfigIrV1Input, SerializedSdkConfigIrV1, SourceConfig, SourceSpecConfig, SourceSpecType, TargetConfig, TargetLanguage, UnsupportedField, WebhookSignature, WebhookSignatureInput, apiConfigSchema, apiImportSettingsSchema, authConfigSchema, authSchemeSchema, clientConfigOverrideSchema, clientConfigSchema, clientRetryOverrideSchema, compatibilityConfigSchema, docsConfigSchema, generationConfigSchema, getSdkConfigIrV1Diagnostics, languageGenerationConfigSchema, legacyInputSchema, outputConfigSchema, parseSdkConfigIrV1, parseSdkConfigIrV1ForConsumption, publishConfigSchema, publishRegistrySchema, readmeCustomSectionSchema, readmeEndpointSchema, replayConfigSchema, sdkConfigIrCapabilitySchema, sdkConfigIrV1Schema, serializeSdkConfigIrV1, sourceConfigSchema, sourceSpecConfigSchema, sourceSpecTypeSchema, targetConfigSchema, targetLanguageSchema, unsupportedFieldSchema, webhookSignatureSchema } from './v1/index.js';
2
- export { C as CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE, a as CliDistributionConfig, b as CliDistributionGithubAppConfig, c as CliDistributionHomebrewConfig, d as CliDistributionScoopConfig, e as CliGenerationConfig, f as CliProfilesConfig, g as CliProfilesProvisionOperation, h as CsharpGenerationConfig, D as Dependency, G as GoGenerationConfig, J as JavaGenerationConfig, i as JsonObject, j as JsonValue, K as KotlinGenerationConfig, M as McpAvailabilityStatus, k as McpGenerationConfig, l as McpToolFilter, P as PackageConfig, m as PhpGenerationConfig, n as PlanModifiers, o as PythonGenerationConfig, R as RubyGenerationConfig, p as RustGenerationConfig, S as SdkConfigIrV1Diagnostic, q as SwiftGenerationConfig, T as TerraformGenerationConfig, r as TypescriptGenerationConfig, s as cliDistributionConfigSchema, t as cliDistributionGithubAppSchema, u as cliDistributionHomebrewSchema, v as cliDistributionScoopSchema, w as cliGenerationConfigSchema, x as composerPackageNameSchema, y as csharpGenerationConfigSchema, z as dependencySchema, A as exactSemverSchema, B as githubActionsSecretNameSchema, E as goGenerationConfigSchema, F as goModulePathSchema, H as javaGenerationConfigSchema, I as jsonObjectSchema, L as jsonValueSchema, N as kotlinGenerationConfigSchema, O as mcpAvailabilityStatuses, Q as mcpGenerationConfigSchema, U as nonEmptyStringSchema, V as packageConfigSchema, W as phpGenerationConfigSchema, X as pythonGenerationConfigSchema, Y as relativePathSchema, Z as rubyGenerationConfigSchema, _ as rustGenerationConfigSchema, $ as swiftGenerationConfigSchema, a0 as terraformGenerationConfigSchema, a1 as typescriptGenerationConfigSchema } from '../typescript-Byhn4MqL.js';
2
+ export { C as CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE, a as CliDistributionConfig, b as CliDistributionGithubAppConfig, c as CliDistributionHomebrewConfig, d as CliDistributionScoopConfig, e as CliGenerationConfig, f as CliProfilesConfig, g as CliProfilesProvisionOperation, h as CsharpGenerationConfig, D as Dependency, G as GoGenerationConfig, J as JavaGenerationConfig, i as JsonObject, j as JsonValue, K as KotlinGenerationConfig, M as McpAvailabilityStatus, k as McpGenerationConfig, l as McpToolFilter, P as PackageConfig, m as PhpGenerationConfig, n as PlanModifiers, o as PythonGenerationConfig, R as RubyGenerationConfig, p as RustGenerationConfig, S as SdkConfigIrV1Diagnostic, q as SwiftGenerationConfig, T as TerraformGenerationConfig, r as TypescriptGenerationConfig, s as cliDistributionConfigSchema, t as cliDistributionGithubAppSchema, u as cliDistributionHomebrewSchema, v as cliDistributionScoopSchema, w as cliGenerationConfigSchema, x as composerPackageNameSchema, y as csharpGenerationConfigSchema, z as dependencySchema, A as exactSemverSchema, B as githubActionsSecretNameSchema, E as goGenerationConfigSchema, F as goModulePathSchema, H as javaGenerationConfigSchema, I as jsonObjectSchema, L as jsonValueSchema, N as kotlinGenerationConfigSchema, O as mcpAvailabilityStatuses, Q as mcpGenerationConfigSchema, U as nonEmptyStringSchema, V as packageConfigSchema, W as phpGenerationConfigSchema, X as pythonGenerationConfigSchema, Y as relativePathSchema, Z as rubyGenerationConfigSchema, _ as rustGenerationConfigSchema, $ as swiftGenerationConfigSchema, a0 as terraformGenerationConfigSchema, a1 as typescriptGenerationConfigSchema } from '../typescript-BFRxjAah.js';
3
3
  import 'zod';
@@ -440,7 +440,10 @@ var cliDistributionConfigSchema = z.strictObject({
440
440
  "A GitHub App used to mint short-lived tokens for every channel without its own tokenSecretName."
441
441
  ),
442
442
  homebrew: cliDistributionHomebrewSchema.optional().describe("Publishes a Homebrew formula to a tap repository on each tagged release."),
443
- scoop: cliDistributionScoopSchema.optional().describe("Publishes a Scoop manifest to a bucket repository on each tagged release.")
443
+ scoop: cliDistributionScoopSchema.optional().describe("Publishes a Scoop manifest to a bucket repository on each tagged release."),
444
+ githubAttestations: z.union([z.literal("auto"), z.boolean()], { error: 'must be "auto", true, or false' }).optional().describe(
445
+ 'Whether the generated release workflow attests build provenance. "auto" (the generator default) attests only on public repositories; true always attests, for private repositories on GitHub Enterprise Cloud; false omits the attestation step and its permissions.'
446
+ )
444
447
  }).superRefine((distribution, context) => {
445
448
  if (distribution.homebrew !== void 0 || distribution.scoop !== void 0) {
446
449
  return;
@@ -453,6 +456,9 @@ var cliDistributionConfigSchema = z.strictObject({
453
456
  });
454
457
  return;
455
458
  }
459
+ if (distribution.githubAttestations !== void 0) {
460
+ return;
461
+ }
456
462
  context.addIssue({
457
463
  code: "custom",
458
464
  message: "distribution must configure at least one channel: homebrew or scoop"
@@ -464,14 +470,17 @@ var CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE = "CLI_DISTRIBUTION_NON_RELEASE_MODE"
464
470
  var nonReleaseGithubModes = /* @__PURE__ */ new Set(["pull-request", "push", "commit"]);
465
471
  function cliDistributionModeDiagnostic(output, outputPath) {
466
472
  const mode = output?.github?.mode;
467
- if (output?.distribution === void 0 || mode === void 0 || !nonReleaseGithubModes.has(mode)) {
473
+ const distribution = output?.distribution;
474
+ if (distribution === void 0 || mode === void 0 || !nonReleaseGithubModes.has(mode)) {
468
475
  return void 0;
469
476
  }
477
+ const hasChannel = distribution.homebrew !== void 0 || distribution.scoop !== void 0;
478
+ const consequence = hasChannel ? "Homebrew and Scoop publish only after a semantic-version tag is pushed to the repository." : "the release workflow, including its githubAttestations setting, runs only after a semantic-version tag is pushed to the repository.";
470
479
  return {
471
480
  code: CLI_DISTRIBUTION_NON_RELEASE_MODE_CODE,
472
481
  severity: "warning",
473
482
  path: [...outputPath, "github", "mode"],
474
- reason: `GitHub mode "${mode}" does not create a release tag, so Homebrew and Scoop publish only after a semantic-version tag is pushed to the repository.`,
483
+ reason: `GitHub mode "${mode}" does not create a release tag, so ${consequence}`,
475
484
  suggestedAction: 'Use mode "release" or "commit-and-release", or push a version tag after merging generated changes.'
476
485
  };
477
486
  }
@@ -816,7 +825,7 @@ var pythonGenerationConfigSchema = z.strictObject({
816
825
  additionalInitExports: z.array(additionalInitExportSchema).optional().describe("Additional names re-exported from the package initializer.")
817
826
  });
818
827
  var rubyGenerationConfigSchema = z.strictObject({
819
- requirePaths: z.array(nonEmptyStringSchema).optional().describe("Ruby load paths included in the generated gem specification.")
828
+ requirePaths: z.array(nonEmptyStringSchema).optional().describe("Files the generated entry file loads with `require`.")
820
829
  });
821
830
  var rustGenerationConfigSchema = z.strictObject({
822
831
  /**
@@ -1195,6 +1204,7 @@ var publishConfigSchema = z.discriminatedUnion("registry", [
1195
1204
  z.strictObject({
1196
1205
  registry: z.literal("rubygems").describe("Publishes the package to a RubyGems-compatible registry."),
1197
1206
  apiKeyEnvironmentVariable: nonEmptyStringSchema.optional().describe("The environment variable containing the RubyGems API key."),
1207
+ ...trustedPublishingShape,
1198
1208
  ...commonPublishShape
1199
1209
  }),
1200
1210
  z.strictObject({
@@ -1251,6 +1261,10 @@ var githubOutputSchema = z.strictObject({
1251
1261
  /** Raw GitHub credentials. These values can be sensitive and must be handled as secrets. */
1252
1262
  credentials: registryCredentialsSchema.optional().describe("Resolved GitHub credentials."),
1253
1263
  privateRepository: z.boolean().optional().describe("Whether the destination repository is private."),
1264
+ /** Whether generated `.github/workflows` files are delivered. If omitted, they are (true). */
1265
+ workflows: z.boolean().optional().describe(
1266
+ "Whether generated .github/workflows files are delivered. Defaults to true. When false, newly generated workflow files are skipped and existing ones in the repository are left untouched."
1267
+ ),
1254
1268
  /** GitHub license block scoped to repository delivery. */
1255
1269
  license: githubLicenseSchema.optional().describe("License configuration for the destination repository."),
1256
1270
  /** GitHub replay control. If omitted, the external publisher applies its default behavior. */
@@ -1265,7 +1279,7 @@ var githubOutputSchema = z.strictObject({
1265
1279
  var distributionShape = {
1266
1280
  /** Valid only for `cli` targets with GitHub delivery; secret names only, never values. */
1267
1281
  distribution: cliDistributionConfigSchema.optional().describe(
1268
- "CLI release channels published by the generated release workflow; credentials are GitHub Actions secret names."
1282
+ "CLI release channels and build attestation settings for the generated release workflow; credentials are GitHub Actions secret names."
1269
1283
  )
1270
1284
  };
1271
1285
  var credentialResolutionShape = {
@@ -1325,6 +1339,9 @@ var apiImportSettingsSchema = z.strictObject({
1325
1339
  discriminatedUnionV2: z.boolean().optional().describe("Whether oneOf and anyOf schemas use the newer discriminator inference rules."),
1326
1340
  undiscriminatedUnionsWithLiterals: z.boolean().optional().describe("Whether literal-bearing unions remain undiscriminated during import."),
1327
1341
  inlineAllOfSchemas: z.boolean().optional().describe("Whether schemas composed with allOf are inlined when possible."),
1342
+ inferDiscriminatedUnionBaseProperties: z.boolean().optional().describe(
1343
+ "Whether properties every discriminated-union variant shares are lifted onto the union."
1344
+ ),
1328
1345
  resolveSchemaCollisions: z.boolean().optional().describe("Whether colliding imported schema names are resolved automatically."),
1329
1346
  asyncApiMessageNaming: z.enum(["v1", "v2"]).optional().describe("The naming strategy used for messages imported from AsyncAPI."),
1330
1347
  defaultIntegerFormat: z.enum(["int32", "int64", "uint32", "uint64"]).optional().describe("The integer format used when a schema does not declare one.")