Marktplatz: Versionsliste im Katalog und ältere Versionen (Gegenstück zu iris/Iris#137) #79

Closed
opened 2026-10-21 18:58:29 +00:00 by alf · 2 comments
Owner

Zweck

In der Detailansicht jedes Plugins gibt es einen Knopf „Versionen“, der alle Versionen zeigt, die in der Registry liegen; aus der Liste lässt sich eine ältere Version installieren (iris/Iris#137, dort Befund und Plan).

Befund im Linux-Server

  • preview und install nehmen version schon an und prüfen sie gegen den Index (marketplace.py, plugin_registry.py: „älterer Stand als Rückweg“).
  • Es fehlt die Liste im Katalog: GET /marketplace/api/catalog trägt je Plugin nur available_version.
  • Die Seite (app/marketplace_web/index.html) ist eine byte-identische Kopie von macos-iris/Iris/Resources/MarketplacePage.html und bekommt den Knopf und die Liste.

Plan

  1. build_catalog: je Plugin versions: [{version, published, size, installed, current}], neueste zuerst, aus history (die aktuelle ist immer dabei).
  2. Die Seite aus iris/Iris übernehmen (Knopf „Versionen“, Liste, Nachricht an die App mit target_version).
  3. Tests: Reihenfolge (0.1.10 vor 0.1.2), Markierungen, fehlender Verlauf, Katalog.
  4. Wire-Doku im Wurzel-Repo.

Die Schlüssel sind additiv.

Bezug: iris/Iris#137, iris/iris-plugins#178 (Registry behält fünf Versionen).

## Zweck In der Detailansicht jedes Plugins gibt es einen Knopf „Versionen“, der alle Versionen zeigt, die in der Registry liegen; aus der Liste lässt sich eine ältere Version installieren (iris/Iris#137, dort Befund und Plan). ## Befund im Linux-Server - `preview` und `install` nehmen `version` schon an und prüfen sie gegen den Index (`marketplace.py`, `plugin_registry.py`: „älterer Stand als Rückweg“). - Es fehlt die Liste im Katalog: `GET /marketplace/api/catalog` trägt je Plugin nur `available_version`. - Die Seite (`app/marketplace_web/index.html`) ist eine byte-identische Kopie von `macos-iris/Iris/Resources/MarketplacePage.html` und bekommt den Knopf und die Liste. ## Plan 1. `build_catalog`: je Plugin `versions: [{version, published, size, installed, current}]`, neueste zuerst, aus `history` (die aktuelle ist immer dabei). 2. Die Seite aus iris/Iris übernehmen (Knopf „Versionen“, Liste, Nachricht an die App mit `target_version`). 3. Tests: Reihenfolge (0.1.10 vor 0.1.2), Markierungen, fehlender Verlauf, Katalog. 4. Wire-Doku im Wurzel-Repo. Die Schlüssel sind additiv. Bezug: iris/Iris#137, iris/iris-plugins#178 (Registry behält fünf Versionen).
Author
Owner

PR #80 gemergt: feat(marketplace): Versionsliste im Katalog und im Plugin (Knopf Versionen, ältere Version installieren), Seite wie in iris/Iris#137 (#79)
#80

Commits:

  • feat(marketplace): Versionsliste im Katalog und im Plugin (Knopf Versionen, ältere Version installieren), Seite wie in iris/Iris#137 (#79)
PR #80 gemergt: feat(marketplace): Versionsliste im Katalog und im Plugin (Knopf Versionen, ältere Version installieren), Seite wie in iris/Iris#137 (#79) https://forgejo.lewerken.duckdns.org/iris/iris-linux-server/pulls/80 Commits: - feat(marketplace): Versionsliste im Katalog und im Plugin (Knopf Versionen, ältere Version installieren), Seite wie in iris/Iris#137 (#79)
Author
Owner

PR #85 gemergt: docs(plan): Marktplatz-Felder im Linux-Server (Dateivergleich, versions, changelog) und Lesson (iris-linux-server#79)
#85

Commits:

  • docs(plan): Marktplatz-Felder im Linux-Server (Dateivergleich, versions, changelog) und Lesson (iris-linux-server#79)
PR #85 gemergt: docs(plan): Marktplatz-Felder im Linux-Server (Dateivergleich, versions, changelog) und Lesson (iris-linux-server#79) https://forgejo.lewerken.duckdns.org/iris/iris-linux-server/pulls/85 Commits: - docs(plan): Marktplatz-Felder im Linux-Server (Dateivergleich, versions, changelog) und Lesson (iris-linux-server#79)
alf closed this issue 2026-10-21 23:13:05 +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-linux-server#79
No description provided.