actions / actions/setup-python

allow-prereleases: restrict to alpha, beta, rc

Offen
#1,160 1 Kommentar 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature request
Vorherrschende Sprache
TypeScript
Sterne
2.2k
Forks
739
Ø Merge
6 T. 18 Std.
Gemergte PRs (30 T.)
1

Beschreibung

I maintain a C++/Python package that uses the Python's C-API. I'd like to test the package against pre-releases, but only after the ABI/API have stabilized, i.e., RCs.

Right now, setup-python has allow-prereleases which falls back to the most recent pre-release if there's no stable release yet.

I'd like to propose a more fine-grained control over which prereleases should be selected:

  • (allow-prereleases: 'dev': Use dev, alpha, beta, rc prereleases)

  • allow-prereleases: 'alpha': Use alpha, beta, rc prereleases (not dev, equivalent to allow-prereleases: true)

  • allow-prereleases: 'beta': Use beta, rc prereleases (not dev, not alpha)

  • allow-prereleases: 'rc': Use rc prereleases (not dev, not alpha, not beta)

Even simpler, one could use allow-releases:

  • (allow-releases: 'dev': Use dev, alpha, beta, rc, stable releases)

  • allow-releases: 'alpha': Use alpha, beta, rc, stable releases (not dev, equivalent to allow-prereleases: true)

  • allow-releases: 'beta': Use beta, rc, stable releases (not dev, not alpha)

  • allow-releases: 'rc': Use rc, stable releases (not dev, not alpha, not beta)

  • allow-releases: 'stable' (default): Use stable releases (not dev, not alpha, not beta, not rc)

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit nachzuverfolgen, wie setup-python derzeit allow-prereleases interpretiert und Python-Versionen auswählt. Vergleiche die vorgeschlagenen Pre-Release-Stufen, kläre, ob allow-prereleases oder allow-releases die vorgesehene Schnittstelle ist, und überprüfe, dass jede Stufe die angegebenen Versionen auswählt, ohne das standardmäßige Verhalten für stabile Versionen zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, typescript
Bereich
ci-cd, devops
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.