@fern-api/fern-api-dev 4.67.0-7-g952cbd21b82 → 4.67.1

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 +185 -49
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -69229,7 +69229,7 @@ var require_types5 = __commonJS({
69229
69229
  var Umask = () => {
69230
69230
  };
69231
69231
  var getLocalAddresses = () => [];
69232
- var semver14 = () => {
69232
+ var semver15 = () => {
69233
69233
  };
69234
69234
  exports2.types = {
69235
69235
  access: [null, "restricted", "public"],
@@ -69281,7 +69281,7 @@ var require_types5 = __commonJS({
69281
69281
  "init-author-email": String,
69282
69282
  "init-author-url": ["", url3],
69283
69283
  "init-license": String,
69284
- "init-version": semver14,
69284
+ "init-version": semver15,
69285
69285
  json: Boolean,
69286
69286
  key: [null, String],
69287
69287
  "legacy-bundling": Boolean,
@@ -69297,7 +69297,7 @@ var require_types5 = __commonJS({
69297
69297
  message: String,
69298
69298
  "metrics-registry": [null, String],
69299
69299
  "node-options": [null, String],
69300
- "node-version": [null, semver14],
69300
+ "node-version": [null, semver15],
69301
69301
  "no-proxy": [null, String, Array],
69302
69302
  offline: Boolean,
69303
69303
  "onload-script": [null, String],
@@ -251713,8 +251713,8 @@ var require_timespan = __commonJS({
251713
251713
  var require_asymmetricKeyDetailsSupported = __commonJS({
251714
251714
  "../../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js"(exports2, module4) {
251715
251715
  "use strict";
251716
- var semver14 = require_semver2();
251717
- module4.exports = semver14.satisfies(process.version, ">=15.7.0");
251716
+ var semver15 = require_semver2();
251717
+ module4.exports = semver15.satisfies(process.version, ">=15.7.0");
251718
251718
  }
251719
251719
  });
251720
251720
 
@@ -251722,8 +251722,8 @@ var require_asymmetricKeyDetailsSupported = __commonJS({
251722
251722
  var require_rsaPssKeyDetailsSupported = __commonJS({
251723
251723
  "../../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js"(exports2, module4) {
251724
251724
  "use strict";
251725
- var semver14 = require_semver2();
251726
- module4.exports = semver14.satisfies(process.version, ">=16.9.0");
251725
+ var semver15 = require_semver2();
251726
+ module4.exports = semver15.satisfies(process.version, ">=16.9.0");
251727
251727
  }
251728
251728
  });
251729
251729
 
@@ -251785,8 +251785,8 @@ var require_validateAsymmetricKey = __commonJS({
251785
251785
  var require_psSupported = __commonJS({
251786
251786
  "../../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/psSupported.js"(exports2, module4) {
251787
251787
  "use strict";
251788
- var semver14 = require_semver2();
251789
- module4.exports = semver14.satisfies(process.version, "^6.12.0 || >=8.0.0");
251788
+ var semver15 = require_semver2();
251789
+ module4.exports = semver15.satisfies(process.version, "^6.12.0 || >=8.0.0");
251790
251790
  }
251791
251791
  });
251792
251792
 
@@ -427060,28 +427060,28 @@ function getBaseUserDataDirPathMac() {
427060
427060
  return import_node_path27.default.join(import_node_os5.default.homedir(), "Library", "Application Support", "Google");
427061
427061
  }
427062
427062
  function compareVersions(a10, b19) {
427063
- if (!import_semver14.default.valid(a10)) {
427063
+ if (!import_semver15.default.valid(a10)) {
427064
427064
  throw new Error(`Version ${a10} is not a valid semver version`);
427065
427065
  }
427066
- if (!import_semver14.default.valid(b19)) {
427066
+ if (!import_semver15.default.valid(b19)) {
427067
427067
  throw new Error(`Version ${b19} is not a valid semver version`);
427068
427068
  }
427069
- if (import_semver14.default.gt(a10, b19)) {
427069
+ if (import_semver15.default.gt(a10, b19)) {
427070
427070
  return 1;
427071
- } else if (import_semver14.default.lt(a10, b19)) {
427071
+ } else if (import_semver15.default.lt(a10, b19)) {
427072
427072
  return -1;
427073
427073
  } else {
427074
427074
  return 0;
427075
427075
  }
427076
427076
  }
427077
- var import_node_child_process2, import_node_os5, import_node_path27, import_semver14, baseVersionUrl, WINDOWS_ENV_PARAM_NAMES;
427077
+ var import_node_child_process2, import_node_os5, import_node_path27, import_semver15, baseVersionUrl, WINDOWS_ENV_PARAM_NAMES;
427078
427078
  var init_chrome = __esm({
427079
427079
  "../../../node_modules/.pnpm/@puppeteer+browsers@2.13.0/node_modules/@puppeteer/browsers/lib/esm/browser-data/chrome.js"() {
427080
427080
  "use strict";
427081
427081
  import_node_child_process2 = require("child_process");
427082
427082
  import_node_os5 = __toESM(require("os"), 1);
427083
427083
  import_node_path27 = __toESM(require("path"), 1);
427084
- import_semver14 = __toESM(require_semver2(), 1);
427084
+ import_semver15 = __toESM(require_semver2(), 1);
427085
427085
  init_httpUtil();
427086
427086
  init_types4();
427087
427087
  baseVersionUrl = "https://googlechromelabs.github.io/chrome-for-testing";
@@ -627553,7 +627553,7 @@ var AccessTokenPosthogManager = class {
627553
627553
  properties: {
627554
627554
  ...event,
627555
627555
  ...event.properties,
627556
- version: "4.67.0-7-g952cbd21b82",
627556
+ version: "4.67.1",
627557
627557
  usingAccessToken: true
627558
627558
  }
627559
627559
  });
@@ -627604,7 +627604,7 @@ var UserPosthogManager = class {
627604
627604
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
627605
627605
  event: "CLI",
627606
627606
  properties: {
627607
- version: "4.67.0-7-g952cbd21b82",
627607
+ version: "4.67.1",
627608
627608
  ...event,
627609
627609
  ...event.properties,
627610
627610
  usingAccessToken: false,
@@ -843865,7 +843865,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
843865
843865
  var LOGS_FOLDER_NAME = "logs";
843866
843866
  var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
843867
843867
  function getCliSource() {
843868
- const version7 = "4.67.0-7-g952cbd21b82";
843868
+ const version7 = "4.67.1";
843869
843869
  return `cli@${version7}`;
843870
843870
  }
843871
843871
  var DebugLogger = class {
@@ -855113,7 +855113,7 @@ var LegacyDocsPublisher = class {
855113
855113
  previewId,
855114
855114
  disableTemplates: void 0,
855115
855115
  skipUpload,
855116
- cliVersion: "4.67.0-7-g952cbd21b82"
855116
+ cliVersion: "4.67.1"
855117
855117
  });
855118
855118
  if (taskContext.getResult() === TaskResult.Failure) {
855119
855119
  return { success: false };
@@ -857529,12 +857529,21 @@ var AutoVersioningCache = class {
857529
857529
  var import_fs28 = require("fs");
857530
857530
  var import_promises91 = require("fs/promises");
857531
857531
  var import_path61 = require("path");
857532
+ var import_semver12 = __toESM(require_semver2(), 1);
857532
857533
  var AutoVersioningException = class extends Error {
857533
- constructor(message, cause) {
857534
+ /**
857535
+ * True when the magic version was not found at all in the diff,
857536
+ * indicating a generator that doesn't embed versions in source files
857537
+ * (e.g., Swift uses git tags via SPM). Only this case should fall back
857538
+ * to reading git tags.
857539
+ */
857540
+ magicVersionAbsent;
857541
+ constructor(message, options2) {
857534
857542
  super(message);
857535
857543
  this.name = "AutoVersioningException";
857536
- if (cause) {
857537
- this.cause = cause;
857544
+ this.magicVersionAbsent = options2?.magicVersionAbsent ?? false;
857545
+ if (options2?.cause) {
857546
+ this.cause = options2.cause;
857538
857547
  }
857539
857548
  }
857540
857549
  };
@@ -857699,7 +857708,7 @@ var AutoVersioningService = class _AutoVersioningService {
857699
857708
  this.logger.info(`Found placeholder version in the diff but no matching previous version lines were found in any hunk. This indicates a new SDK repository with no previous version. occurrences=${magicVersionOccurrences}`);
857700
857709
  return void 0;
857701
857710
  }
857702
- throw new AutoVersioningException("Failed to extract version from diff. This may indicate the version file format is not supported for auto-versioning, or the placeholder version was not found in any added lines.");
857711
+ throw new AutoVersioningException("Failed to extract version from diff. This may indicate the version file format is not supported for auto-versioning, or the placeholder version was not found in any added lines.", { magicVersionAbsent: true });
857703
857712
  }
857704
857713
  /**
857705
857714
  * Scans backwards from the given index to find a '-' line that forms a version-change pair
@@ -858100,6 +858109,49 @@ var AutoVersioningService = class _AutoVersioningService {
858100
858109
  }
858101
858110
  return /\/v\d+(?=\/|"\s*$|$)/.test(minusContent) || /\/v\d+(?=\/|"\s*$|$)/.test(plusContent);
858102
858111
  }
858112
+ /**
858113
+ * Gets the latest semantic version from git tags in the given repository.
858114
+ * Used as a fallback when the magic version is not embedded in any generated file
858115
+ * (e.g., Swift SDKs which use git tags for versioning via SPM, not a version file).
858116
+ *
858117
+ * @param workingDirectory The git repository directory
858118
+ * @return The latest semver version from git tags, or undefined if no valid tags found
858119
+ */
858120
+ async getLatestVersionFromGitTags(workingDirectory) {
858121
+ try {
858122
+ const result = await loggingExeca(this.logger, "git", ["ls-remote", "--tags", "origin"], {
858123
+ cwd: workingDirectory,
858124
+ doNotPipeOutput: true
858125
+ });
858126
+ const output2 = result.stdout;
858127
+ if (!output2 || output2.trim().length === 0) {
858128
+ this.logger.info("No git tags found in repository");
858129
+ return void 0;
858130
+ }
858131
+ const tags = [];
858132
+ for (const line of output2.split("\n")) {
858133
+ const trimmed2 = line.trim();
858134
+ if (trimmed2.length === 0 || trimmed2.includes("^{}")) {
858135
+ continue;
858136
+ }
858137
+ const match3 = trimmed2.match(/refs\/tags\/(.+)$/);
858138
+ if (match3?.[1]) {
858139
+ tags.push(match3[1]);
858140
+ }
858141
+ }
858142
+ const validTags = tags.filter((tag2) => import_semver12.default.valid(tag2) != null).sort((a10, b19) => import_semver12.default.rcompare(a10, b19));
858143
+ if (validTags.length > 0) {
858144
+ const latest2 = validTags[0];
858145
+ this.logger.info(`Found latest version from git tags: ${latest2}`);
858146
+ return latest2;
858147
+ }
858148
+ this.logger.info("No valid semver tags found in repository");
858149
+ return void 0;
858150
+ } catch (e6) {
858151
+ this.logger.warn(`Failed to read git tags: ${e6}`);
858152
+ return void 0;
858153
+ }
858154
+ }
858103
858155
  /**
858104
858156
  * Replaces all occurrences of the magic version with the final version in generated files.
858105
858157
  *
@@ -906325,7 +906377,7 @@ var import_decompress2 = __toESM(require_decompress(), 1);
906325
906377
  var import_promises102 = require("fs/promises");
906326
906378
  var import_os12 = require("os");
906327
906379
  var import_path71 = require("path");
906328
- var import_semver12 = __toESM(require_semver2(), 1);
906380
+ var import_semver13 = __toESM(require_semver2(), 1);
906329
906381
  var import_tmp_promise12 = __toESM(require_tmp_promise(), 1);
906330
906382
 
906331
906383
  // ../generation/local-generation/local-workspace-runner/lib/sanitizeChangelogEntry.js
@@ -906508,13 +906560,47 @@ var LocalTaskHandler = class {
906508
906560
  if (!this.version) {
906509
906561
  throw new Error("Version is required for auto versioning");
906510
906562
  }
906511
- const previousVersion = autoVersioningService.extractPreviousVersion(diffContent, this.version);
906563
+ let previousVersion;
906564
+ try {
906565
+ previousVersion = autoVersioningService.extractPreviousVersion(diffContent, this.version);
906566
+ } catch (e6) {
906567
+ if (!(e6 instanceof AutoVersioningException) || !e6.magicVersionAbsent) {
906568
+ throw e6;
906569
+ }
906570
+ this.context.logger.info(`Magic version not found in diff, trying fallbacks: ${e6}`);
906571
+ previousVersion = await this.getVersionFromLocalMetadata();
906572
+ if (previousVersion == null) {
906573
+ const tagVersion = await autoVersioningService.getLatestVersionFromGitTags(this.absolutePathToLocalOutput);
906574
+ previousVersion = this.normalizeVersionPrefix(tagVersion);
906575
+ }
906576
+ if (previousVersion == null) {
906577
+ this.context.logger.info("No git tags found \u2014 treating as new SDK repository");
906578
+ const initialVersion = this.version?.startsWith("v") ? "v0.0.1" : "0.0.1";
906579
+ const commitMessage2 = this.isWhitelabel ? "Initial SDK generation" : "Initial SDK generation\n\n\u{1F33F} Generated with Fern";
906580
+ return {
906581
+ version: initialVersion,
906582
+ commitMessage: commitMessage2
906583
+ };
906584
+ }
906585
+ this.context.logger.debug(`Previous version from fallback: ${previousVersion}`);
906586
+ }
906512
906587
  const cleanedDiff = autoVersioningService.cleanDiffForAI(diffContent, this.version);
906513
906588
  const rawDiffSizeKB = formatSizeKB(diffContent.length);
906514
906589
  const cleanedDiffSizeKB = formatSizeKB(cleanedDiff.length);
906515
906590
  const rawFileCount = countFilesInDiff(diffContent);
906516
906591
  const cleanedFileCount = countFilesInDiff(cleanedDiff);
906517
906592
  this.context.logger.debug(`Generated diff size: ${rawDiffSizeKB}KB (${diffContent.length} chars), ${rawFileCount} files changed. Cleaned diff size: ${cleanedDiffSizeKB}KB (${cleanedDiff.length} chars), ${cleanedFileCount} files remaining`);
906593
+ if (previousVersion == null) {
906594
+ previousVersion = await this.getVersionFromLocalMetadata();
906595
+ if (previousVersion == null) {
906596
+ const rawTagVersion = await autoVersioningService.getLatestVersionFromGitTags(this.absolutePathToLocalOutput);
906597
+ const normalizedTag = this.normalizeVersionPrefix(rawTagVersion);
906598
+ if (normalizedTag != null) {
906599
+ this.context.logger.info(`No previous version from diff; using git tag: ${normalizedTag}`);
906600
+ previousVersion = normalizedTag;
906601
+ }
906602
+ }
906603
+ }
906518
906604
  if (previousVersion == null) {
906519
906605
  this.context.logger.info("No previous version found (new SDK repository). Using 0.0.1 as initial version.");
906520
906606
  const initialVersion = this.version?.startsWith("v") ? "v0.0.1" : "0.0.1";
@@ -906709,7 +906795,7 @@ var LocalTaskHandler = class {
906709
906795
  * Uses the semver library for robust version handling.
906710
906796
  */
906711
906797
  incrementVersion(version7, versionBump) {
906712
- const cleanVersion = import_semver12.default.clean(version7);
906798
+ const cleanVersion = import_semver13.default.clean(version7);
906713
906799
  if (!cleanVersion) {
906714
906800
  throw new Error(`Invalid version format: ${version7}`);
906715
906801
  }
@@ -906727,12 +906813,62 @@ var LocalTaskHandler = class {
906727
906813
  default:
906728
906814
  throw new Error(`Unsupported version bump: ${versionBump}`);
906729
906815
  }
906730
- const newVersion = import_semver12.default.inc(cleanVersion, releaseType);
906816
+ const newVersion = import_semver13.default.inc(cleanVersion, releaseType);
906731
906817
  if (!newVersion) {
906732
906818
  throw new Error(`Failed to increment version: ${version7}`);
906733
906819
  }
906734
906820
  return version7.startsWith("v") ? `v${newVersion}` : newVersion;
906735
906821
  }
906822
+ /**
906823
+ * Reads the SDK version from the *previously committed* `.fern/metadata.json`.
906824
+ * Uses `git show HEAD:.fern/metadata.json` instead of reading from the filesystem
906825
+ * because by the time auto-versioning runs, the generated files have already been
906826
+ * copied over — the on-disk metadata.json contains the magic placeholder version,
906827
+ * not the real previous version.
906828
+ * Returns undefined if the file doesn't exist in HEAD (older SDKs) or can't be parsed.
906829
+ */
906830
+ async getVersionFromLocalMetadata() {
906831
+ try {
906832
+ const result = await loggingExeca(this.context.logger, "git", ["show", "HEAD:.fern/metadata.json"], {
906833
+ cwd: this.absolutePathToLocalOutput,
906834
+ doNotPipeOutput: true,
906835
+ reject: false
906836
+ });
906837
+ if (result.exitCode !== 0) {
906838
+ this.context.logger.debug(".fern/metadata.json not found in HEAD commit");
906839
+ return void 0;
906840
+ }
906841
+ const metadata = JSON.parse(result.stdout);
906842
+ if (metadata.sdkVersion != null) {
906843
+ const normalized = this.normalizeVersionPrefix(metadata.sdkVersion);
906844
+ this.context.logger.info(`Found version from .fern/metadata.json (HEAD): ${normalized}`);
906845
+ return normalized;
906846
+ }
906847
+ this.context.logger.debug(".fern/metadata.json found in HEAD but no sdkVersion field");
906848
+ return void 0;
906849
+ } catch (error50) {
906850
+ this.context.logger.debug(`Failed to read .fern/metadata.json from HEAD: ${error50}`);
906851
+ return void 0;
906852
+ }
906853
+ }
906854
+ /**
906855
+ * Normalizes a version string's `v` prefix to match the convention used by
906856
+ * the magic version (`this.version`). Git tags may use `v1.2.3` while the
906857
+ * magic version is `0.0.0-fern-placeholder` (no prefix) or vice-versa.
906858
+ * Without normalization the mismatch propagates into `replaceMagicVersion`
906859
+ * and can produce invalid versions in package manifests (e.g. `v1.3.0` in
906860
+ * a `package.json` that expects bare semver).
906861
+ */
906862
+ normalizeVersionPrefix(version7) {
906863
+ if (version7 == null) {
906864
+ return void 0;
906865
+ }
906866
+ const stripped = version7.startsWith("v") ? version7.slice(1) : version7;
906867
+ if (this.version?.startsWith("v")) {
906868
+ return `v${stripped}`;
906869
+ }
906870
+ return stripped;
906871
+ }
906736
906872
  /**
906737
906873
  * Gets the BAML client registry for AI analysis.
906738
906874
  * This method is adapted from sdkDiffCommand.ts but needs project configuration.
@@ -909124,7 +909260,7 @@ init_lib4();
909124
909260
  var import_fs29 = require("fs");
909125
909261
  var import_promises108 = require("fs/promises");
909126
909262
  var import_path75 = require("path");
909127
- var import_semver13 = __toESM(require_semver2(), 1);
909263
+ var import_semver14 = __toESM(require_semver2(), 1);
909128
909264
  var import_url8 = require("url");
909129
909265
  var MIGRATION_PACKAGE_NAME = "@fern-api/generator-migrations";
909130
909266
  var GeneratorMigrator = class _GeneratorMigrator {
@@ -909380,9 +909516,9 @@ Please check your internet connection and npm configuration, then try again.`);
909380
909516
  */
909381
909517
  filterMigrations({ migrations, from: from4, to: to8 }) {
909382
909518
  return migrations.filter((migration23) => {
909383
- const migrationVersion = import_semver13.default.parse(migration23.version);
909384
- const fromVersion = import_semver13.default.parse(from4);
909385
- const toVersion = import_semver13.default.parse(to8);
909519
+ const migrationVersion = import_semver14.default.parse(migration23.version);
909520
+ const fromVersion = import_semver14.default.parse(from4);
909521
+ const toVersion = import_semver14.default.parse(to8);
909386
909522
  if (migrationVersion == null) {
909387
909523
  this.logger.warn(`Migration has invalid semver version: ${migration23.version}. Skipping.`);
909388
909524
  return false;
@@ -909395,14 +909531,14 @@ Please check your internet connection and npm configuration, then try again.`);
909395
909531
  this.logger.warn(`Invalid 'to' version: ${to8}. Skipping migration ${migration23.version}.`);
909396
909532
  return false;
909397
909533
  }
909398
- return import_semver13.default.gt(migrationVersion, fromVersion) && import_semver13.default.lte(migrationVersion, toVersion);
909534
+ return import_semver14.default.gt(migrationVersion, fromVersion) && import_semver14.default.lte(migrationVersion, toVersion);
909399
909535
  }).sort((a10, b19) => {
909400
- const aVersion = import_semver13.default.parse(a10.version);
909401
- const bVersion = import_semver13.default.parse(b19.version);
909536
+ const aVersion = import_semver14.default.parse(a10.version);
909537
+ const bVersion = import_semver14.default.parse(b19.version);
909402
909538
  if (aVersion == null || bVersion == null) {
909403
909539
  throw new Error(`Internal error: Invalid migration version found during sort. Version A: ${a10.version}, Version B: ${b19.version}. This should not happen as invalid versions are filtered out.`);
909404
909540
  }
909405
- return import_semver13.default.compare(aVersion, bVersion);
909541
+ return import_semver14.default.compare(aVersion, bVersion);
909406
909542
  });
909407
909543
  }
909408
909544
  /** Runs a list of migrations sequentially on a generator config. */
@@ -928711,7 +928847,7 @@ var CliContext = class {
928711
928847
  if (false) {
928712
928848
  this.logger.error("CLI_VERSION is not defined");
928713
928849
  }
928714
- return "4.67.0-7-g952cbd21b82";
928850
+ return "4.67.1";
928715
928851
  }
928716
928852
  getCliName() {
928717
928853
  if (false) {
@@ -929292,7 +929428,7 @@ async function getOrganization({
929292
929428
  init_lib6();
929293
929429
  var import_promises129 = require("fs/promises");
929294
929430
  var import_path79 = __toESM(require("path"), 1);
929295
- var import_semver16 = __toESM(require_semver2(), 1);
929431
+ var import_semver17 = __toESM(require_semver2(), 1);
929296
929432
  var import_yaml6 = __toESM(require_dist9(), 1);
929297
929433
 
929298
929434
  // src/commands/upgrade/migrations/loader.ts
@@ -929301,7 +929437,7 @@ var import_fs32 = require("fs");
929301
929437
  var import_promises128 = require("fs/promises");
929302
929438
  var import_os15 = require("os");
929303
929439
  var import_path78 = require("path");
929304
- var import_semver15 = __toESM(require_semver2(), 1);
929440
+ var import_semver16 = __toESM(require_semver2(), 1);
929305
929441
  var import_url9 = require("url");
929306
929442
  var MIGRATION_PACKAGE_NAME2 = "@fern-api/generator-migrations";
929307
929443
  function getMigrationCacheDir() {
@@ -929465,9 +929601,9 @@ If the problem persists, you can:
929465
929601
  function filterMigrations(params2) {
929466
929602
  const { migrations, from: from4, to: to8, logger: logger4 } = params2;
929467
929603
  return migrations.filter((migration23) => {
929468
- const migrationVersion = import_semver15.default.parse(migration23.version);
929469
- const fromVersion = import_semver15.default.parse(from4);
929470
- const toVersion = import_semver15.default.parse(to8);
929604
+ const migrationVersion = import_semver16.default.parse(migration23.version);
929605
+ const fromVersion = import_semver16.default.parse(from4);
929606
+ const toVersion = import_semver16.default.parse(to8);
929471
929607
  if (migrationVersion == null) {
929472
929608
  logger4.warn(`Migration has invalid semver version: ${migration23.version}. Skipping this migration.`);
929473
929609
  return false;
@@ -929480,16 +929616,16 @@ function filterMigrations(params2) {
929480
929616
  logger4.warn(`Invalid 'to' version: ${to8}. Skipping migration ${migration23.version}.`);
929481
929617
  return false;
929482
929618
  }
929483
- return import_semver15.default.gt(migrationVersion, fromVersion) && import_semver15.default.lte(migrationVersion, toVersion);
929619
+ return import_semver16.default.gt(migrationVersion, fromVersion) && import_semver16.default.lte(migrationVersion, toVersion);
929484
929620
  }).sort((a10, b19) => {
929485
- const aVersion = import_semver15.default.parse(a10.version);
929486
- const bVersion = import_semver15.default.parse(b19.version);
929621
+ const aVersion = import_semver16.default.parse(a10.version);
929622
+ const bVersion = import_semver16.default.parse(b19.version);
929487
929623
  if (aVersion == null || bVersion == null) {
929488
929624
  throw new Error(
929489
929625
  `Internal error: Invalid migration version found during sort. Version A: ${a10.version}, Version B: ${b19.version}. This should not happen as invalid versions are filtered out.`
929490
929626
  );
929491
929627
  }
929492
- return import_semver15.default.compare(aVersion, bVersion);
929628
+ return import_semver16.default.compare(aVersion, bVersion);
929493
929629
  });
929494
929630
  }
929495
929631
  function runMigrations(params2) {
@@ -929752,8 +929888,8 @@ async function loadAndUpdateGenerators({
929752
929888
  context: context3
929753
929889
  });
929754
929890
  if (latestMajorVersion != null) {
929755
- const currentParsed = import_semver16.default.parse(versionToUse);
929756
- const latestParsed = import_semver16.default.parse(latestMajorVersion);
929891
+ const currentParsed = import_semver17.default.parse(versionToUse);
929892
+ const latestParsed = import_semver17.default.parse(latestMajorVersion);
929757
929893
  if (currentParsed != null && latestParsed != null && latestParsed.major > currentParsed.major) {
929758
929894
  skippedMajorUpgrades.push({
929759
929895
  generatorName,
@@ -930270,7 +930406,7 @@ async function addGeneratorToWorkspaces({
930270
930406
  // src/commands/diff/diff.ts
930271
930407
  init_lib4();
930272
930408
  init_lib6();
930273
- var import_semver17 = __toESM(require_semver2(), 1);
930409
+ var import_semver18 = __toESM(require_semver2(), 1);
930274
930410
  async function diff({
930275
930411
  context: context3,
930276
930412
  from: from4,
@@ -930295,7 +930431,7 @@ async function diff({
930295
930431
  return { bump: "no_change", nextVersion: fromVersion, errors: errors4 };
930296
930432
  }
930297
930433
  const bump = bumpOrUndefined ?? "patch";
930298
- const nextVersion = import_semver17.default.inc(fromVersion, bump);
930434
+ const nextVersion = import_semver18.default.inc(fromVersion, bump);
930299
930435
  if (!nextVersion) {
930300
930436
  context3.failWithoutThrowing(`Invalid current version: ${fromVersion}`);
930301
930437
  throw new TaskAbortSignal();
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "4.67.0-7-g952cbd21b82",
2
+ "version": "4.67.1",
3
3
  "repository": {
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/fern-api/fern.git",