Skip to content

Versioning

Capgo uses semantic versioning (semver) for plugins, the CLI, and the products we ship — the same practice we recommend for your own app bundles.

This page explains how those versions relate to each other, what stays compatible across majors, and how to pin older Capacitor majors with LTS tags.

ProductMajor versioningCompatibility notes
Capgo pluginsFollow the matching Capacitor majorPlugin major 8 targets Capacitor 8, 7 targets Capacitor 7, and so on
Capgo CLIIndependentDo not sync CLI major with plugins or Capacitor. Always use the latest CLI
Capgo ConsoleIndependentOwn release cadence; compatible with supported updater plugin versions

Every Capgo plugin major tracks the Capacitor major it is built for:

  • @capgo/capacitor-updater@8 → Capacitor 8
  • @capgo/capacitor-updater@7 → Capacitor 7
  • and the same pattern for other Capgo plugins

When Capacitor ships a new major, Capgo ships a matching plugin major. That is when we may change default options if a new default is the better long-term choice for that Capacitor generation.

Plugin APIs stay stable between majors unless a change is broken by design for everyone (for example a Capacitor platform requirement that forces the same break on all consumers). You should usually be able to move between Capgo plugin majors as you upgrade Capacitor without rewriting your integration.

Defaults may still change on a new major. Review release notes and migration guides (see updater upgrades and the guides under Migrations in the updater sidebar) when you bump.

The Capgo CLI and Capgo Console do not share major versions with plugins or Capacitor.

  • You do not need CLI major 8 because you are on Capacitor 8 or updater 8.
  • Always install or invoke the latest CLI.
  • The latest CLI and Console remain compatible with any supported @capgo/capacitor-updater (and related updater) major.

Pinning an old CLI version is discouraged. Prefer:

Terminal window
npx @capgo/cli@latest bundle upload --channel=production

When you stay on an older Capacitor major, install the matching Capgo plugin major with an LTS dist-tag instead of copying an outdated lockfile forever.

Terminal window
# Latest Capgo updater for Capacitor 7
npm i @capgo/capacitor-updater@lts-v7
# Same pattern for other majors
npm i @capgo/capacitor-updater@lts-v6
npm i @capgo/capacitor-updater@lts-v5
npm i @capgo/capacitor-updater@lts-v4

Outside the updater, LTS releases of previous plugin majors are published on demand.

PackagePrevious-major backports
@capgo/capacitor-updaterMonthly mirrored backports to v7 / v6 / v5 (lts-v7, lts-v6, lts-v5). lts-v4 stays available for Capacitor 4 but is not on that monthly cadence
Other Capgo pluginsOn demand

LTS lines mirror the current latest line’s minor and patch when a backport exists.

If the latest release is 8.3.4, the Capacitor 7 LTS line is published as 7.3.4 with the same feature set and bug fixes, adapted to that Capacitor major.

Install with the tag when you want “latest for this Capacitor major”:

Terminal window
npm i @capgo/capacitor-updater@lts-v7 # resolves to the current 7.x LTS, e.g. 7.3.4

After a new plugin major ships, an lts-v7 (or lts-v6, …) release is a backport of latest so the same work runs on the previous Capacitor major.

Because it tracks latest, the LTS line’s public API may change when latest changes — even though the major number stays on 7. Treat LTS as “current Capgo behavior on an older Capacitor,” not as a frozen legacy API forever.

  1. Upgrade Capgo plugins when you upgrade Capacitor majors.
  2. Always run @capgo/cli@latest — CLI major sync with Capacitor/plugins is unnecessary.
  3. Stay on Capacitor 7 (or older)? Use @lts-v7 (or the matching tag), not a random old 7.x from months ago.
  4. Version your own live-update bundles with semver the same way Capgo versions its packages. See bundle versioning and channels and version targeting.