Latitude 10 docs

SDK versioning

The first package of each language gets your config's firstVersion. After that, each package's version is worked out from the last one, the registry's diff between their versions, and the names the SDK exports. The biggest bump that applies wins.

What changedBump
A breaking change in the diff, or a changed operationId (a renamed method)Major
An exported name is gone from the SDKMajor
Any other change in the diff, such as a new operation or a deprecationMinor
A new exported nameMinor
No diff to compare withMinor, compared by exported names only
Only a removed description, or nothingPatch

Breaking changes lists every kind of change the diff finds.

Below 1.0.0

As semver does for versions below 1.0.0, a major change moves the minor number, and anything else the patch: 0.3.2 becomes 0.4.0 or 0.3.3.

The same input, the same package

The same config and the same registry version give the same package and version again, so a re-run never moves the version.

Previews

A preview from the SDK panel is versioned so it can't be mistaken for a release: 0.0.0-preview.7 for TypeScript and 0.0.0.dev7 for Python, for registry version 7. A preview can be made from the sample document; a package to publish can't.

Where this comes from

  • app/sdk/_lib/version.ts
  • app/sdk/_lib/builds.ts
  • app/registry/_lib/diff.ts