mesonbuild / mesonbuild/meson-python

Allow the user to specify `limited-api` from the command line

Offen
#787 31 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement
Vorherrschende Sprache
Python
Sterne
180
Forks
93
Ø Merge
2 T. 7 Std.
Gemergte PRs (30 T.)
18

Beschreibung

I think this is a more specific version of https://github.com/mesonbuild/meson-python/issues/639.

Currently, so far as I know, the only way to tell `meson-python` to tag a wheel as ABI compatible is with a [project setting](https://mesonbuild.com/meson-python/reference/pyproject-settings.html#project-settings) via the `pyproject.toml`
```toml
[tool.meson-python]
limited-api = true
```

However, for my project I would like to be able to build abi3 wheels for Python 3.12+, and not for lower versions. So it would be nice to be able to instead specify it via a [build config setting](https://mesonbuild.com/meson-python/reference/config-settings.html). Something like
```bash
python -m build --config-setting=limited-api=true
```

I'd be happy to take a crack at a PR if this seems reasonable?

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 mit der Dokumentation zu den config-settings von meson-python und dem Beispiel für project-settings in pyproject.toml. Verfolge, wie `limited-api` derzeit gelesen wird, und überprüfe anschließend, dass `python -m build --config-setting=limited-api=true` akzeptiert wird und das angeforderte Verhalten für ein ABI-kompatibles Wheel erzeugt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
build-system
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

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