coder / coder/coder-desktop-windows

Add "preview" update channel to match macOS

Aperta
#127 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
26
Fork
12
Merge medio
6h 50m
PR unite (30g)
1

Descrizione

Currently we only have a "stable" update channel. It would be worthwhile to have a preview channel for dogfooding or customers that want to try new features before they're released.

- We will need to generate version numbers for preview builds
- macOS currently does this by setting the 4th version field (`0.0.0.z`) to the number of commits since the last release
- We will need to package them identically to release builds
- And sign them!
- We will need to push the preview artifacts somewhere
- macOS currently does this with a "preview" release, but I dislike this pattern and would probably opt for storing them on `releases.coder.com`
- We will need to update the `SparkleUpdateController` code to handle channel selection, and add UI elements to select a channel

One potential challenge is that our installers forbid downgrading (for good reason). Once a user switches to the preview channel, they won't be able to switch back to the release channel until a new version is released (or they uninstall/reinstall). I think NetSparkle probably handles this for us though if we go with the same version number system as macOS.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Start by reading the existing SparkleUpdateController and the current release packaging, signing, and artifact-publishing flow. Define how preview channel selection, version numbering, and storage on releases.coder.com should work, then verify that preview installers and switching back to stable handle the stated downgrade constraint.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
desktop, release
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.