Add a test package and docs for the "C/C++ lib with optional Python bindings" use case
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Dokumentation
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Bereich
- build-system, documentation, testing
Rechercherichtung
Beginne mit der verlinkten Pull-Request-Diskussion und der im Issue beschriebenen Projektstruktur und prüfe anschließend die vorhandenen Testpakete und die Dokumentation auf verwandte Anwendungsfälle. Füge ein Testpaket hinzu, das eine C/C++-Bibliothek mit Python-Bindings in einem Unterverzeichnis abdeckt, sowie Hinweise zur Struktur und zur Handhabung von sdist. Als erledigt gilt die Aufgabe, wenn die Pakettests die Bibliothek auf oberster Ebene bauen und linken und der dokumentierte Workflow klar ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
This follows up on the discussion at https://github.com/mesonbuild/meson-python/pull/728#discussion_r2069077299. The use case is multi-language projects, like the Arrow projects, where the root of the repo contains a core C/C++ library and bindings for Python (and perhaps other languages) are present in sub-directories. This is a fairly common layout:
meson.build
src/
<some_c_sources>
meson.build
python/
<some_python_sources>
pyproject.toml
meson.build
The challenge here is to get the top-level library built and linked against. The idea in the linked discussion is to add:
python/
dist_script.py # replaces symlink with a copy for sdist generation
subprojects/
<symlink with content `../..`>
We've seen other people struggle with this puzzle when trying to adopt meson-python, e.g. in https://github.com/mesonbuild/meson-python/discussions/674. It would be good to have a test package for this project structure, and a bit of documentation to point out how this can be handled.
- Vorherrschende Sprache
- Python
- Sterne
- 182
- Forks
- 97
- Ø Merge
- 4 Std. 52 Min.
- Gemergte PRs (30 T.)
- 2
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus mesonbuild/meson-python
-
documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
mesonbuild/meson-python#541 ·
-
documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
mesonbuild/meson-python#473 · 6 Kommentare ·
-
documentation enhancement tests
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 45/100
mesonbuild/meson-python#903 · 3 Kommentare ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
mesonbuild/meson-python#871 · 7 Kommentare · 1 Reaktion ·
-
pip install overrides existing build configurationEvtl. vergeben @Alvaro-Kothe hat das vor 140 Tagen übernommen. Offenquestion
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
mesonbuild/meson-python#851 · 6 Kommentare ·
Alle Issues in mesonbuild/meson-python
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
aws/sagemaker-python-sdk#6554 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
huggingface/diffusers#15170 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[BUG] LLM conflict check ignores MNEMOSYNE_LLM_MAX_TOKENS, so reasoning models return empty repliesOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
mnemosyne-oss/mnemosyne#1325 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement meshtastic-2.8
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
pskillen/meshflow-api#459 ·