Registry behält fünf statt drei Versionen je Plugin #178

Closed
opened 2026-10-21 18:38:27 +00:00 by alf · 3 comments
Owner

Warum

Der Marktplatz soll ältere Versionen installieren können (Versionsliste im Plugin; Feature-Issue iris/Iris#137). Dafür müssen die Pakete in der Registry liegen. Heute behält publish-plugins.sh je Plugin nur die letzten drei Versionen (--keep 3), ältere Dateien werden gelöscht und sind nur noch im Git-Verlauf der Registry. Alf möchte eine Reserve von fünf.

Plan

  • Eine Quelle für den Standard: DEFAULT_KEEP = 5 in registry-tools/registry_index.py (Funktion add und Kommandozeile); publish-plugins.sh reicht --keep nur durch, wenn es gesetzt wurde, und hat keine eigene Zahl mehr.
  • Doku: README.md Kapitel 19 (Quelle für docs/Veroeffentlichen.md), PLUGIN-REGISTRY-REPO.md.
  • Tests: Standard behält fünf (Bibliotheksaufruf und Kommandozeile), --keep überschreibt weiter.

Grenzen

Wirkt nur für künftige Veröffentlichungen. Schon entfernte Pakete kommen dadurch nicht zurück; sie lägen im Git-Verlauf der Registry und ließen sich bei Bedarf per Skript zurückholen (nicht Teil).

Bezug: iris/Iris#137.

## Warum Der Marktplatz soll ältere Versionen installieren können (Versionsliste im Plugin; Feature-Issue iris/Iris#137). Dafür müssen die Pakete in der Registry liegen. Heute behält `publish-plugins.sh` je Plugin nur die letzten drei Versionen (`--keep 3`), ältere Dateien werden gelöscht und sind nur noch im Git-Verlauf der Registry. Alf möchte eine Reserve von fünf. ## Plan - Eine Quelle für den Standard: `DEFAULT_KEEP = 5` in `registry-tools/registry_index.py` (Funktion `add` und Kommandozeile); `publish-plugins.sh` reicht `--keep` nur durch, wenn es gesetzt wurde, und hat keine eigene Zahl mehr. - Doku: `README.md` Kapitel 19 (Quelle für `docs/Veroeffentlichen.md`), `PLUGIN-REGISTRY-REPO.md`. - Tests: Standard behält fünf (Bibliotheksaufruf und Kommandozeile), `--keep` überschreibt weiter. ## Grenzen Wirkt nur für künftige Veröffentlichungen. Schon entfernte Pakete kommen dadurch nicht zurück; sie lägen im Git-Verlauf der Registry und ließen sich bei Bedarf per Skript zurückholen (nicht Teil). Bezug: iris/Iris#137.
Author
Owner

PR #179 gemergt: feat(registry): Reserve von fünf Versionen je Plugin, ein Standard in registry_index.py; iris-plugin-dev 0.1.4 (Doku) (#178)
#179

Commits:

  • feat(registry): Reserve von fünf Versionen je Plugin, ein Standard in registry_index.py; iris-plugin-dev 0.1.4 (Doku) (#178)
PR #179 gemergt: feat(registry): Reserve von fünf Versionen je Plugin, ein Standard in registry_index.py; iris-plugin-dev 0.1.4 (Doku) (#178) https://forgejo.lewerken.duckdns.org/iris/iris-plugins/pulls/179 Commits: - feat(registry): Reserve von fünf Versionen je Plugin, ein Standard in registry_index.py; iris-plugin-dev 0.1.4 (Doku) (#178)
Author
Owner

Umgesetzt (PR #179)

Geändert: DEFAULT_KEEP = 5 ist die einzige Quelle des Standards in registry-tools/registry_index.py (Funktion add und Kommandozeile); publish-plugins.sh hat keine eigene Zahl mehr und reicht --keep nur durch, wenn es gesetzt wurde. Doku: README.md Kapitel 19 (Quelle für docs/Veroeffentlichen.md), PLUGIN-REGISTRY-REPO.md (jetzt auch: installierbar sind Versionen nur, solange sie im Index stehen). iris-plugin-dev auf 0.1.4, weil seine docs/ aus der README entstehen: Mit der geänderten README hätte das Paket bei gleicher Version anderen Inhalt gehabt, und publish-plugins.sh --all hätte es abgelehnt.

Gemessen: 72 Registry-Tests grün (3 neu: Standard behält fünf bei Bibliotheksaufruf und Kommandozeile, Dateien und Verlauf stimmen überein, --keep überschreibt weiter). Gegenprobe: Mit Standard 3 scheitern die zwei Standard-Tests. Das Shell-Skript im Probelauf mit und ohne --keep (bash -n sauber, Argument kommt an).

Grenzen

  • Wirkt erst bei der nächsten Veröffentlichung. Heute haben die Plugins höchstens drei Versionen (zwei oder eine bei jungen Plugins); schon entfernte Pakete kommen nicht zurück. Wer sie will, kann sie aus dem Git-Verlauf der Registry holen (nicht Teil; bei iris-plugin-dev wäre es 0.1.0 aus cd706d7b).
  • iris-plugin-dev 0.1.4 ist gemergt, aber nicht veröffentlicht (nur Doku).
  • Ein Testlauf im Git-Worktree zeigte: iris-server-hosts baut dort nicht (braucht das danebenliegende Repo linux-server); veröffentlicht wird deshalb aus dem Haupt-Checkout.
  • Beim Prüfen meiner Gegenprobe blieb altes Bytecode (gleiche Dateigröße, gleiche Sekunde) liegen und ließ zwei Tests fälschlich rot werden; nach dem Löschen von __pycache__ waren alle grün. Kein Fehler im Code.

Das Issue bleibt offen bis zur nächsten Veröffentlichung mit dem neuen Standard. Teil von iris/Iris#137.

## Umgesetzt (PR #179) **Geändert:** `DEFAULT_KEEP = 5` ist die einzige Quelle des Standards in `registry-tools/registry_index.py` (Funktion `add` und Kommandozeile); `publish-plugins.sh` hat keine eigene Zahl mehr und reicht `--keep` nur durch, wenn es gesetzt wurde. Doku: `README.md` Kapitel 19 (Quelle für `docs/Veroeffentlichen.md`), `PLUGIN-REGISTRY-REPO.md` (jetzt auch: installierbar sind Versionen nur, solange sie im Index stehen). `iris-plugin-dev` auf 0.1.4, weil seine `docs/` aus der README entstehen: Mit der geänderten README hätte das Paket bei gleicher Version anderen Inhalt gehabt, und `publish-plugins.sh --all` hätte es abgelehnt. **Gemessen:** 72 Registry-Tests grün (3 neu: Standard behält fünf bei Bibliotheksaufruf und Kommandozeile, Dateien und Verlauf stimmen überein, `--keep` überschreibt weiter). Gegenprobe: Mit Standard 3 scheitern die zwei Standard-Tests. Das Shell-Skript im Probelauf mit und ohne `--keep` (`bash -n` sauber, Argument kommt an). **Grenzen** - **Wirkt erst bei der nächsten Veröffentlichung.** Heute haben die Plugins höchstens drei Versionen (zwei oder eine bei jungen Plugins); schon entfernte Pakete kommen nicht zurück. Wer sie will, kann sie aus dem Git-Verlauf der Registry holen (nicht Teil; bei `iris-plugin-dev` wäre es 0.1.0 aus `cd706d7b`). - `iris-plugin-dev` 0.1.4 ist gemergt, aber **nicht veröffentlicht** (nur Doku). - Ein Testlauf im Git-Worktree zeigte: `iris-server-hosts` baut dort nicht (braucht das danebenliegende Repo `linux-server`); veröffentlicht wird deshalb aus dem Haupt-Checkout. - Beim Prüfen meiner Gegenprobe blieb altes Bytecode (gleiche Dateigröße, gleiche Sekunde) liegen und ließ zwei Tests fälschlich rot werden; nach dem Löschen von `__pycache__` waren alle grün. Kein Fehler im Code. Das Issue bleibt offen bis zur nächsten Veröffentlichung mit dem neuen Standard. Teil von iris/Iris#137.
Author
Owner

Abgeschlossen

Die Registry behält fünf Versionen je Plugin (DEFAULT_KEEP in registry_index.py, PR #178 bis #179). Beispiel iris-plugin-dev: 0.1.8 bis 0.1.12. Das Auffüllen entfernter Pakete aus dem Git-Verlauf wurde bewusst nicht gemacht.

Geschlossen auf Alfs ausdrückliches Wort (2026-10-21).

## Abgeschlossen Die Registry behält fünf Versionen je Plugin (`DEFAULT_KEEP` in `registry_index.py`, PR #178 bis #179). Beispiel iris-plugin-dev: 0.1.8 bis 0.1.12. Das Auffüllen entfernter Pakete aus dem Git-Verlauf wurde bewusst nicht gemacht. Geschlossen auf Alfs ausdrückliches Wort (2026-10-21).
alf closed this issue 2026-10-21 21:55:22 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
iris/iris-plugins#178
No description provided.