@fern-api/fern-api-dev 5.75.3 → 5.75.4

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 +61 -9
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -691149,7 +691149,7 @@ var AccessTokenPosthogManager = class {
691149
691149
  properties: {
691150
691150
  ...event,
691151
691151
  ...event.properties,
691152
- version: "5.75.3",
691152
+ version: "5.75.4",
691153
691153
  usingAccessToken: true,
691154
691154
  ...getRunIdProperties()
691155
691155
  }
@@ -691215,7 +691215,7 @@ var UserPosthogManager = class {
691215
691215
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
691216
691216
  event: "CLI",
691217
691217
  properties: {
691218
- version: "5.75.3",
691218
+ version: "5.75.4",
691219
691219
  ...event,
691220
691220
  ...event.properties,
691221
691221
  usingAccessToken: false,
@@ -866515,7 +866515,9 @@ var ValidMarkdownRule = {
866515
866515
  const message = markdownParseResult.message != null ? `Markdown failed to parse: ${markdownParseResult.message}` : "Markdown failed to parse";
866516
866516
  return [
866517
866517
  {
866518
- severity: "fatal",
866518
+ // Surfaced as a warning (not an error) so re-enabling this rule does not
866519
+ // suddenly break existing `fern check` runs on repos with latent MDX issues.
866520
+ severity: "warning",
866519
866521
  message
866520
866522
  }
866521
866523
  ];
@@ -868492,6 +868494,8 @@ var allRules = [
868492
868494
  // Check non-component references (will skip v2 files)
868493
868495
  ValidLocalReferencesRule,
868494
868496
  // Validate that local references actually exist
868497
+ ValidMarkdownRule,
868498
+ // Compile each page's MDX and surface syntax errors (e.g. unclosed components)
868495
868499
  NavigationConflicts,
868496
868500
  ValidateVersionFileRule,
868497
868501
  ValidateProductFileRule,
@@ -872316,7 +872320,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
872316
872320
  var LOGS_FOLDER_NAME = "logs";
872317
872321
  var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
872318
872322
  function getCliSource() {
872319
- const version7 = "5.75.3";
872323
+ const version7 = "5.75.4";
872320
872324
  return `cli@${version7}`;
872321
872325
  }
872322
872326
  var DebugLogger = class {
@@ -904905,7 +904909,7 @@ var LegacyDocsPublisher = class {
904905
904909
  previewId,
904906
904910
  disableTemplates: void 0,
904907
904911
  skipUpload,
904908
- cliVersion: "5.75.3",
904912
+ cliVersion: "5.75.4",
904909
904913
  loginCommand: "fern auth login"
904910
904914
  });
904911
904915
  if (taskContext.getResult() === TaskResult.Failure) {
@@ -929238,6 +929242,9 @@ var DynamicTypeInstantiationMapper = class {
929238
929242
  return this.convertLiteralToOptionalPrimitive(named.typeReference.value);
929239
929243
  }
929240
929244
  }
929245
+ if (inner2.type === "literal") {
929246
+ return this.convertLiteralToOptionalPrimitive(inner2.value);
929247
+ }
929241
929248
  return go_exports.TypeInstantiation.optional(this.convert({ typeReference: inner2, value: args.value, as: args.as }));
929242
929249
  }
929243
929250
  case "optional": {
@@ -929262,6 +929269,9 @@ var DynamicTypeInstantiationMapper = class {
929262
929269
  return this.convertLiteralToOptionalPrimitive(named.typeReference.value);
929263
929270
  }
929264
929271
  }
929272
+ if (inner2.type === "literal") {
929273
+ return this.convertLiteralToOptionalPrimitive(inner2.value);
929274
+ }
929265
929275
  return go_exports.TypeInstantiation.optional(this.convert({ typeReference: inner2, value: args.value, as: args.as }));
929266
929276
  }
929267
929277
  case "primitive":
@@ -941726,6 +941736,10 @@ var EndpointSnippetGenerator5 = class {
941726
941736
  assertNever(named);
941727
941737
  }
941728
941738
  }
941739
+ // Whether a type resolves to a literal, treating optional/nullable literals AS literals.
941740
+ // Used for request-body properties and path parameters, which omit ALL literals (required
941741
+ // and optional alike) from the generated method call because they are set internally.
941742
+ // Contrast with resolvesToNonOptionalLiteralType below, which keeps optional literals.
941729
941743
  resolvesToLiteralType(typeReference2) {
941730
941744
  switch (typeReference2.type) {
941731
941745
  case "literal":
@@ -941753,6 +941767,44 @@ var EndpointSnippetGenerator5 = class {
941753
941767
  assertNever(typeReference2);
941754
941768
  }
941755
941769
  }
941770
+ // Whether a type resolves to a REQUIRED literal, i.e. a literal NOT wrapped in optional/nullable.
941771
+ // Used to filter query parameters and headers: a required literal (e.g. response_type="code") is
941772
+ // hardcoded inside the generated method and omitted from its signature, so passing it as a keyword
941773
+ // argument raises TypeError. An optional literal, by contrast, stays in the signature, so it must
941774
+ // remain a valid keyword argument and is kept.
941775
+ //
941776
+ // This deliberately differs from resolvesToLiteralType above in the optional/nullable cases: here
941777
+ // they return false (keep the parameter) instead of recursing. The asymmetry is intentional and is
941778
+ // validated by the literal fixture's wire tests. Note the two cannot be collapsed into a single
941779
+ // guard like `t.type !== "optional" && resolvesToLiteralType(t)`: a named alias whose target is
941780
+ // optional<literal> has top-level type "named", so such a guard would misclassify it as a required
941781
+ // literal and wrongly drop it, whereas recursing through the alias here correctly returns false.
941782
+ resolvesToNonOptionalLiteralType(typeReference2) {
941783
+ switch (typeReference2.type) {
941784
+ case "literal":
941785
+ return true;
941786
+ case "named": {
941787
+ const named = this.context.resolveNamedType({ typeId: typeReference2.value });
941788
+ if (named == null) {
941789
+ return false;
941790
+ }
941791
+ if (named.type === "alias") {
941792
+ return this.resolvesToNonOptionalLiteralType(named.typeReference);
941793
+ }
941794
+ return false;
941795
+ }
941796
+ case "optional":
941797
+ case "nullable":
941798
+ case "list":
941799
+ case "map":
941800
+ case "set":
941801
+ case "primitive":
941802
+ case "unknown":
941803
+ return false;
941804
+ default:
941805
+ assertNever(typeReference2);
941806
+ }
941807
+ }
941756
941808
  getBodyRequestArgsForBytes({ body, value: value2 }) {
941757
941809
  const typeInstantiation = this.getBytesBodyRequestTypeInstantiation({ value: value2 });
941758
941810
  if (python_exports.TypeInstantiation.isNop(typeInstantiation)) {
@@ -941866,7 +941918,7 @@ var EndpointSnippetGenerator5 = class {
941866
941918
  parameters: request7.queryParameters ?? [],
941867
941919
  values: snippet.queryParameters ?? {}
941868
941920
  });
941869
- const queryParameterFields = queryParameters.map((queryParameter) => ({
941921
+ const queryParameterFields = queryParameters.filter((queryParameter) => !this.resolvesToNonOptionalLiteralType(queryParameter.typeReference)).map((queryParameter) => ({
941870
941922
  name: this.context.getPropertyName(queryParameter.name.name),
941871
941923
  value: this.context.dynamicTypeLiteralMapper.convert(queryParameter)
941872
941924
  }));
@@ -941876,7 +941928,7 @@ var EndpointSnippetGenerator5 = class {
941876
941928
  parameters: request7.headers ?? [],
941877
941929
  values: snippet.headers ?? {}
941878
941930
  });
941879
- const headerFields = headers2.map((header) => ({
941931
+ const headerFields = headers2.filter((header) => !this.resolvesToNonOptionalLiteralType(header.typeReference)).map((header) => ({
941880
941932
  name: this.context.getPropertyName(header.name.name),
941881
941933
  value: this.context.dynamicTypeLiteralMapper.convert(header)
941882
941934
  }));
@@ -971692,7 +971744,7 @@ function getAutomationContextFromEnv() {
971692
971744
  config_branch: process.env.FERN_CONFIG_BRANCH,
971693
971745
  config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
971694
971746
  trigger: process.env.GITHUB_EVENT_NAME,
971695
- cli_version: "5.75.3"
971747
+ cli_version: "5.75.4"
971696
971748
  };
971697
971749
  }
971698
971750
  function isAutomationMode() {
@@ -972524,7 +972576,7 @@ var CliContext = class _CliContext {
972524
972576
  if (false) {
972525
972577
  this.logger.error("CLI_VERSION is not defined");
972526
972578
  }
972527
- return "5.75.3";
972579
+ return "5.75.4";
972528
972580
  }
972529
972581
  getCliName() {
972530
972582
  if (false) {
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "5.75.3",
2
+ "version": "5.75.4",
3
3
  "repository": {
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/fern-api/fern.git",