Zum Inhalt springen

Versionierung

Capgo nutzt Semantic Versioning (SemVer) für Plugins, CLI und unsere Produkte – genau die Praxis, die wir auch für deine eigenen App-Bundles empfehlen.

Diese Seite erklärt, wie diese Versionen zusammenhängen, was über Major-Versionen hinweg kompatibel bleibt und wie du ältere Capacitor Major-Versionen mit LTS-Tags pinnst.

ProduktMajor-VersioningKompatibilitätshinweise
Capgo PluginsNutze die passende Capacitor Major-VersionPlugin Major-Version 8 zielt auf Capacitor 8 ab, 7 zielt auf Capacitor 7 ab, usw.
Capgo CLIUnabhängigSynchronisiere CLI Major-Versionen nicht mit Plugins oder Capacitor. Nutze immer die neueste CLI
Capgo KonsoleUnabhängigEigener Release-Zyklus; kompatibel mit unterstützten Updater-Plugin-Versionen

Jede Capgo Plugin-Major-Version folgt der Capacitor Major-Version, für die sie gebaut wurde:

  • @capgo/capacitor-updater@8 → Capacitor 8
  • @capgo/capacitor-updater@7 → Capacitor 7
  • und dasselbe Muster für andere Capgo Plugins

Wenn Capacitor eine neue Major-Version veröffentlicht, liefert Capgo eine passende Plugin-Major-Version aus. Dann ändern wir gegebenenfalls Standardoptionen ob ein neuer Standard die bessere langfristige Wahl für diese Capacitor Generation ist.

API Stabilität über Major-Versionen hinweg

Abschnitt „API Stabilität über Major-Versionen hinweg“

Plugin-APIs bleiben zwischen Major-Versionen stabil, es sei denn, eine Änderung ist bewusst als Breaking Change für alle geplant (z. B. eine Capacitor Plattform-Anforderung, die alle Nutzer gleichermaßen betrifft). Normalerweise solltest du zwischen Capgo Plugin-Major-Versionen wechseln können, während du Capacitor aktualisierst, ohne deine Integration neu schreiben zu müssen.

Standardwerte können sich bei einer neuen Major-Version dennoch ändern. Überprüfe die Release Notes und Migrationsleitfäden (siehe Updater-Upgrades und die Guides unter Migrations in der Updater-Sidebar), wenn du ein Update machst.

Die Capgo CLI und Capgo Console tun dies es nicht Major-Versionen mit Plugins oder Capacitor teilen.

  • Du benötigst es nicht benötigen CLI Major-Versionen 8 da Sie Capacitor 8 oder Updater nutzen 8.
  • Installieren oder rufen Sie immer den Neueste CLI auf.
  • Die neueste CLI und Console sind mit allen unterstützten @capgo/capacitor-updater (und zugehörigen Updater-)Major-Versionen kompatibel.

Das Pinning einer alten CLI-Version ist nicht empfehlenswert. Besser:

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

LTS-Tags für ältere Plugin-Major-Versionen

Abschnitt: „LTS-Tags für frühere Plugin-Major-Versionen“

Wenn du bei einer älteren Capacitor-Major-Version bleibst, installiere die passende Capgo-Plugin-Major-Version mit einem LTS-Dist-Tag, statt ein veraltetes Lockfile ewig weiterzukopieren.

Terminalfenster
# 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

Außerhalb des Updaters werden LTS-Releases früherer Plugin-Major-Versionen veröffentlicht on demand.

Updater-Backports vs. andere Plugins

Abschnitt: „Updater-Backports vs. andere Plugins“
PaketBackports früherer Major-Versionen
@capgo/capacitor-updaterMonatliche gespiegelte Backports für v7 / v6 / v5 (lts-v7, lts-v6, lts-v5). lts-v4 bleibt für Capacitor 4 verfügbar, folgt aber nicht diesem monatlichen Rhythmus
Andere Capgo PluginsBei Bedarf

Gleiche Features, gespiegelte Versionsnummern

Abschnitt: „Gleiche Features, gespiegelte Versionsnummern“

LTS-Versionen spiegeln Minor- und Patch-Versionen der aktuellsten Version wider, sofern ein Backport existiert.

Wenn das neueste Release 8.3.4ist, wird die Capacitor 7 LTS-Version veröffentlicht als 7.3.4 mit dem gleicher Funktionsumfang und Bugfixes, angepasst an diese Capacitor Major-Version.

Installiere mit dem Tag, wenn du „latest für diese Capacitor-Major-Version“ willst:

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

LTS ist ein Backport der neuesten Version

Abschnitt mit dem Titel „LTS ist ein Backport von latest“

After a new plugin major ships, an lts-v7 (oder lts-v6, …) Release ein Backport von latest damit dieselbe Arbeit auf der vorherigen Capacitor-Major-Version läuft.

Da die LTS-Linie latest trackt, kann die öffentliche API der LTS-Linie sich ändern wenn die neuesten Änderungen – obwohl die Major-Version gleich bleibt 7. Betrachte LTS als „aktuelles Capgo-Verhalten auf einer älteren Capacitor“ und nicht als für immer eingefrorenes Legacy-API.

  1. Upgrade Capgo-Plugins, wenn du Capacitor-Major-Versionen upgradest.
  2. Immer ausführen @capgo/cli@latest — Ein CLI-Major-Sync mit Capacitor/Plugins ist nicht nötig.
  3. Bleibst du bei Capacitor 7 (oder älter)? Nutze @lts-v7 (oder den passenden Tag), nicht irgendein altes 7.x von vor Monaten.
  4. Versioniere deine eigenen Live-Update-Bundles mit semver genau so, wie Capgo seine Pakete versioniert. Siehe Bundle-Versioning und Channels und Version-Targeting.