@fern-api/fern-api-dev 5.60.0 → 5.62.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 (2) hide show
  1. package/cli.cjs +67 -19
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -83624,6 +83624,15 @@ function getPackageNameFromGeneratorConfig(generatorInvocation) {
83624
83624
  }
83625
83625
  return void 0;
83626
83626
  }
83627
+ function getUserAgentTemplateFromGeneratorConfig(generatorInvocation) {
83628
+ if (typeof generatorInvocation.raw?.config === "object" && generatorInvocation.raw?.config !== null) {
83629
+ const template = generatorInvocation.raw.config["user-agent"];
83630
+ if (template != null) {
83631
+ return template;
83632
+ }
83633
+ }
83634
+ return void 0;
83635
+ }
83627
83636
  async function checkVersionDoesNotAlreadyExist({ version: version7, packageName, generatorInvocation, context: context3 }) {
83628
83637
  if (version7 == null) {
83629
83638
  return;
@@ -275752,7 +275761,7 @@ var init_getIrGenerationSettings = __esm({
275752
275761
  });
275753
275762
 
275754
275763
  // ../generation/ir-generator/lib/generateIntermediateRepresentation.js
275755
- function generateIntermediateRepresentation({ workspace, generationLanguage, keywords: keywords3, smartCasing, exampleGeneration, audiences, readme, packageName, version: version7, fdrApiDefinitionId, sourceResolver, disableDynamicExamples, dynamicGeneratorConfig, generationMetadata }) {
275764
+ function generateIntermediateRepresentation({ workspace, generationLanguage, keywords: keywords3, smartCasing, exampleGeneration, audiences, readme, packageName, userAgentTemplate, organization, version: version7, fdrApiDefinitionId, sourceResolver, disableDynamicExamples, dynamicGeneratorConfig, generationMetadata }) {
275756
275765
  const irSettings = getIrGenerationSettings({ workspace });
275757
275766
  const casingsGenerator = constructCasingsGenerator({ generationLanguage, keywords: keywords3, smartCasing });
275758
275767
  const irGraph = new IrGraph(audiences);
@@ -276087,10 +276096,27 @@ function generateIntermediateRepresentation({ workspace, generationLanguage, key
276087
276096
  language: "X-Fern-Language",
276088
276097
  sdkName: "X-Fern-SDK-Name",
276089
276098
  sdkVersion: "X-Fern-SDK-Version",
276090
- userAgent: !hasCustomUserAgentHeader && version7 != null && packageName != null ? {
276091
- header: "User-Agent",
276092
- value: `${packageName}/${version7}`
276093
- } : void 0
276099
+ userAgent: (() => {
276100
+ if (hasCustomUserAgentHeader) {
276101
+ return void 0;
276102
+ }
276103
+ if (userAgentTemplate != null && version7 != null) {
276104
+ const vars = {
276105
+ version: version7,
276106
+ packageName: packageName ?? "",
276107
+ language: generationLanguage ?? "",
276108
+ generatorVersion: generationMetadata?.generatorVersion ?? "",
276109
+ organization: organization ?? "",
276110
+ apiName: workspace.definition.rootApiFile.contents.name ?? ""
276111
+ };
276112
+ const value2 = userAgentTemplate.replace(/\{(\w+)\}/g, (_5, key2) => vars[key2] ?? "");
276113
+ return { header: "User-Agent", value: value2 };
276114
+ }
276115
+ if (version7 != null && packageName != null) {
276116
+ return { header: "User-Agent", value: `${packageName}/${version7}` };
276117
+ }
276118
+ return void 0;
276119
+ })()
276094
276120
  }
276095
276121
  };
276096
276122
  const resolvedReadme = readme ?? workspace.generatorsConfiguration?.rawConfiguration.readme;
@@ -687123,7 +687149,7 @@ var AccessTokenPosthogManager = class {
687123
687149
  properties: {
687124
687150
  ...event,
687125
687151
  ...event.properties,
687126
- version: "5.60.0",
687152
+ version: "5.62.0",
687127
687153
  usingAccessToken: true,
687128
687154
  ...getRunIdProperties()
687129
687155
  }
@@ -687189,7 +687215,7 @@ var UserPosthogManager = class {
687189
687215
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
687190
687216
  event: "CLI",
687191
687217
  properties: {
687192
- version: "5.60.0",
687218
+ version: "5.62.0",
687193
687219
  ...event,
687194
687220
  ...event.properties,
687195
687221
  usingAccessToken: false,
@@ -868284,7 +868310,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
868284
868310
  var LOGS_FOLDER_NAME = "logs";
868285
868311
  var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
868286
868312
  function getCliSource() {
868287
- const version7 = "5.60.0";
868313
+ const version7 = "5.62.0";
868288
868314
  return `cli@${version7}`;
868289
868315
  }
868290
868316
  var DebugLogger = class {
@@ -898033,6 +898059,7 @@ async function runRemoteGenerationForGenerator({ projectConfig, organization, wo
898033
898059
  });
898034
898060
  }
898035
898061
  }
898062
+ const userAgentTemplate = getUserAgentTemplateFromGeneratorConfig(generatorInvocation);
898036
898063
  const ir3 = generateIntermediateRepresentation({
898037
898064
  workspace,
898038
898065
  generationLanguage: generatorInvocation.language,
@@ -898046,6 +898073,8 @@ async function runRemoteGenerationForGenerator({ projectConfig, organization, wo
898046
898073
  audiences,
898047
898074
  readme,
898048
898075
  packageName,
898076
+ userAgentTemplate,
898077
+ organization,
898049
898078
  version: resolvedVersion,
898050
898079
  context: interactiveTaskContext,
898051
898080
  sourceResolver: new SourceResolverImpl(interactiveTaskContext, workspace),
@@ -900776,7 +900805,7 @@ var LegacyDocsPublisher = class {
900776
900805
  previewId,
900777
900806
  disableTemplates: void 0,
900778
900807
  skipUpload,
900779
- cliVersion: "5.60.0",
900808
+ cliVersion: "5.62.0",
900780
900809
  loginCommand: "fern auth login"
900781
900810
  });
900782
900811
  if (taskContext.getResult() === TaskResult.Failure) {
@@ -953579,7 +953608,8 @@ init_lib17();
953579
953608
  init_lib36();
953580
953609
  init_lib26();
953581
953610
  init_lib22();
953582
- async function getIntermediateRepresentation({ workspace, audiences, generatorInvocation, context: context3, irVersionOverride, version: version7, packageName, sourceConfig, includeOptionalRequestPropertyExamples, ir: ir3 }) {
953611
+ async function getIntermediateRepresentation({ workspace, audiences, generatorInvocation, context: context3, irVersionOverride, version: version7, packageName, userAgentTemplate, organization, sourceConfig, includeOptionalRequestPropertyExamples, ir: ir3 }) {
953612
+ const resolvedUserAgentTemplate = userAgentTemplate ?? getUserAgentTemplateFromGeneratorConfig(generatorInvocation);
953583
953613
  const intermediateRepresentation = ir3 ?? generateIntermediateRepresentation({
953584
953614
  workspace,
953585
953615
  audiences,
@@ -953593,6 +953623,8 @@ async function getIntermediateRepresentation({ workspace, audiences, generatorIn
953593
953623
  readme: generatorInvocation.readme,
953594
953624
  version: version7,
953595
953625
  packageName,
953626
+ userAgentTemplate: resolvedUserAgentTemplate,
953627
+ organization,
953596
953628
  context: context3,
953597
953629
  sourceResolver: new SourceResolverImpl(context3, workspace),
953598
953630
  generationMetadata: {
@@ -954869,7 +954901,7 @@ function getGeneratorOutputSubfolder(generatorName) {
954869
954901
  }
954870
954902
 
954871
954903
  // ../generation/local-generation/local-workspace-runner/lib/runLocalGenerationForWorkspace.js
954872
- async function runLocalGenerationForWorkspace({ token, projectConfig, workspace, generatorGroup, version: version7, keepDocker, inspect: inspect6, context: context3, absolutePathToPreview, runner, ai: ai2, replay, noReplay, validateWorkspace, requireEnvVars, skipFernignore, publishToRegistry, isPreview: isPreviewOverride, automationMode, autoMerge, skipIfNoDiff, verify: verify2, disableTelemetry }) {
954904
+ async function runLocalGenerationForWorkspace({ token, projectConfig, workspace, generatorGroup, version: version7, keepDocker, inspect: inspect6, context: context3, absolutePathToPreview, runner, ai: ai2, replay, noReplay, validateWorkspace, requireEnvVars, skipFernignore, publishToRegistry, isPreview: isPreviewOverride, automationMode, autoMerge, skipIfNoDiff, generateTests, verify: verify2, disableTelemetry }) {
954873
954905
  const userProvidedVersion = version7;
954874
954906
  if (userProvidedVersion != null) {
954875
954907
  if (absolutePathToPreview != null) {
@@ -954915,6 +954947,7 @@ async function runLocalGenerationForWorkspace({ token, projectConfig, workspace,
954915
954947
  generatorInvocation
954916
954948
  });
954917
954949
  const packageName = getPackageNameFromGeneratorConfig(generatorInvocation);
954950
+ const userAgentTemplate = getUserAgentTemplateFromGeneratorConfig(generatorInvocation);
954918
954951
  version7 = version7 ?? await computeSemanticVersion({ packageName, generatorInvocation });
954919
954952
  const intermediateRepresentation = generateIntermediateRepresentation({
954920
954953
  workspace: fernWorkspace,
@@ -954929,6 +954962,8 @@ async function runLocalGenerationForWorkspace({ token, projectConfig, workspace,
954929
954962
  readme: generatorInvocation.readme,
954930
954963
  version: version7 ?? await computeSemanticVersion({ packageName, generatorInvocation }),
954931
954964
  packageName,
954965
+ userAgentTemplate,
954966
+ organization: projectConfig.organization,
954932
954967
  context: context3,
954933
954968
  sourceResolver: new SourceResolverImpl(context3, fernWorkspace),
954934
954969
  dynamicGeneratorConfig,
@@ -954980,7 +955015,8 @@ async function runLocalGenerationForWorkspace({ token, projectConfig, workspace,
954980
955015
  version: version7,
954981
955016
  userProvidedVersion,
954982
955017
  packageName,
954983
- context: interactiveTaskContext
955018
+ context: interactiveTaskContext,
955019
+ generateTests
954984
955020
  });
954985
955021
  if (publishConfig != null) {
954986
955022
  intermediateRepresentation.publishConfig = publishConfig;
@@ -955205,7 +955241,7 @@ async function getWorkspaceTempDir() {
955205
955241
  prefix: "fern"
955206
955242
  });
955207
955243
  }
955208
- function getPublishConfig2({ generatorInvocation, org, version: version7, userProvidedVersion, packageName, context: context3 }) {
955244
+ function getPublishConfig2({ generatorInvocation, org, version: version7, userProvidedVersion, packageName, context: context3, generateTests }) {
955209
955245
  if (generatorInvocation.raw?.github != null && isGithubSelfhosted2(generatorInvocation.raw.github)) {
955210
955246
  const parsed = parseRepository(generatorInvocation.raw.github.uri);
955211
955247
  const irMode = generatorInvocation.raw.github.mode === "pull-request" ? "pull-request" : void 0;
@@ -955300,14 +955336,14 @@ function getPublishConfig2({ generatorInvocation, org, version: version7, userPr
955300
955336
  }
955301
955337
  }
955302
955338
  return api_exports.PublishingConfig.filesystem({
955303
- generateFullProject: org?.selfHostedSdKs ?? false,
955339
+ generateFullProject: generateTests || org?.selfHostedSdKs || false,
955304
955340
  publishTarget
955305
955341
  });
955306
955342
  }
955307
955343
  return generatorInvocation.outputMode._visit({
955308
955344
  downloadFiles: () => {
955309
955345
  return api_exports.PublishingConfig.filesystem({
955310
- generateFullProject: org?.selfHostedSdKs ?? false,
955346
+ generateFullProject: generateTests || org?.selfHostedSdKs || false,
955311
955347
  publishTarget: void 0
955312
955348
  });
955313
955349
  },
@@ -955460,6 +955496,8 @@ var GenerationRunner = class {
955460
955496
  readme: generatorInvocation.readme,
955461
955497
  version: outputVersionOverride,
955462
955498
  packageName: generators_yml_exports.getPackageName({ generatorInvocation }),
955499
+ userAgentTemplate: getUserAgentTemplateFromGeneratorConfig(generatorInvocation),
955500
+ organization,
955463
955501
  context: context3,
955464
955502
  sourceResolver: new SourceResolverImpl(context3, workspace),
955465
955503
  generationMetadata: {
@@ -967046,7 +967084,7 @@ function getAutomationContextFromEnv() {
967046
967084
  config_branch: process.env.FERN_CONFIG_BRANCH,
967047
967085
  config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
967048
967086
  trigger: process.env.GITHUB_EVENT_NAME,
967049
- cli_version: "5.60.0"
967087
+ cli_version: "5.62.0"
967050
967088
  };
967051
967089
  }
967052
967090
  function isAutomationMode() {
@@ -967878,7 +967916,7 @@ var CliContext = class _CliContext {
967878
967916
  if (false) {
967879
967917
  this.logger.error("CLI_VERSION is not defined");
967880
967918
  }
967881
- return "5.60.0";
967919
+ return "5.62.0";
967882
967920
  }
967883
967921
  getCliName() {
967884
967922
  if (false) {
@@ -969779,6 +969817,7 @@ async function generateWorkspace({
969779
969817
  automationMode,
969780
969818
  autoMerge,
969781
969819
  skipIfNoDiff,
969820
+ generateTests,
969782
969821
  automation
969783
969822
  }) {
969784
969823
  if (workspace.generatorsConfiguration == null) {
@@ -969841,6 +969880,7 @@ async function generateWorkspace({
969841
969880
  automationMode,
969842
969881
  autoMerge,
969843
969882
  skipIfNoDiff,
969883
+ generateTests,
969844
969884
  verify: verify2,
969845
969885
  disableTelemetry: isTelemetryDisabled()
969846
969886
  });
@@ -970265,6 +970305,7 @@ async function generateAPIWorkspaces({
970265
970305
  automationMode,
970266
970306
  autoMerge,
970267
970307
  skipIfNoDiff,
970308
+ generateTests,
970268
970309
  automation
970269
970310
  }) {
970270
970311
  let token = void 0;
@@ -970343,6 +970384,7 @@ async function generateAPIWorkspaces({
970343
970384
  automationMode,
970344
970385
  autoMerge,
970345
970386
  skipIfNoDiff,
970387
+ generateTests,
970346
970388
  automation
970347
970389
  });
970348
970390
  });
@@ -983915,6 +983957,10 @@ function addGenerateCommand3(cli, cliContext) {
983915
983957
  boolean: true,
983916
983958
  default: false,
983917
983959
  description: "Skip opening a PR / pushing when the generated output has no diff from the base branch."
983960
+ }).option("generate-tests", {
983961
+ boolean: true,
983962
+ default: false,
983963
+ description: "Generate test files even when generating to a local file system (tests are normally only generated for GitHub output modes)"
983918
983964
  }),
983919
983965
  async (argv) => {
983920
983966
  if (argv.api != null && argv.api.length > 0 && argv.docs != null) {
@@ -984027,7 +984073,8 @@ function addGenerateCommand3(cli, cliContext) {
984027
984073
  verify: argv.verify,
984028
984074
  retryRateLimited: argv["retry-rate-limited"],
984029
984075
  requireEnvVars: argv["require-env-vars"],
984030
- skipIfNoDiff: argv["skip-if-no-diff"]
984076
+ skipIfNoDiff: argv["skip-if-no-diff"],
984077
+ generateTests: argv["generate-tests"]
984031
984078
  });
984032
984079
  }
984033
984080
  if (argv.docs != null) {
@@ -984088,7 +984135,8 @@ function addGenerateCommand3(cli, cliContext) {
984088
984135
  verify: argv.verify,
984089
984136
  retryRateLimited: argv["retry-rate-limited"],
984090
984137
  requireEnvVars: argv["require-env-vars"],
984091
- skipIfNoDiff: argv["skip-if-no-diff"]
984138
+ skipIfNoDiff: argv["skip-if-no-diff"],
984139
+ generateTests: argv["generate-tests"]
984092
984140
  });
984093
984141
  }
984094
984142
  );
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "5.60.0",
2
+ "version": "5.62.0",
3
3
  "repository": {
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/fern-api/fern.git",