Michał Górny · @mgorny
203 followers · 1076 posts · Server pol.social

Jeśli nie uważacie, że myląca i słabo udokumentowana składnia `include` (przez którą ciągle odkrywam spieprzone paczki, patrz: fosstodon.org/@mgorny/10980462, fosstodon.org/@mgorny/10955102) to dostatecznie dobry powód, by odradzać , oto kolejny absurdalny problem:

Jeżeli zadeklarujesz zależność jako opcjonalną (`optional = true`), ale nie umieścisz jej w żadnej grupie `extra`… to ta zależność nie będzie opcjonalna. Żadnego ostrzeżenia o błędnej składni, nic. Problem znany od 3,5 roku:

github.com/python-poetry/poetr

A najlepsze jak ktoś ożywi wpółmartwą paczkę na tydzień, wyda nową wersję używającą Poetry, a potem przez kolejny rok będzie ignorować poprawki dla niepoprawnego użycia tego systemu budowania.

#gentoo #pep517 #python #pythonpoetry

Last updated 1 year ago

Michał Górny · @mgorny
198 followers · 941 posts · Server pol.social

Wydałem dziś w wersji 15, z wsparciem dla budowania cross-prefix. Innymi słowy, można teraz odpalić budowanie paczek przy pomocy systemu budowania używając interpretera Pythona, który jest zainstalowany w innym prefiksie niż używany przez sysroot.

Używając terminów ebuildów , teraz będziemy wywoływać:

```
gpep517 build-wheel ... \
--sysroot "${SYSROOT}" \
--prefix "${EPREFIX}/usr"
```

Wcześniej nie można było podawać `--prefix`, więc `${EPREFIX}` musiał być taki sam jak `${BROOT}`, czyli prefiks używanego interpretera. gpep517 wówczas szukałby danych w katalogu `${SYSROOT}${BROOT}/usr` (lub innym prefiksie używanym przez uruchomionego Pythona) — a teraz poprawnie będzie szukał w `${SYSROOT}${EPREFIX}/usr`.

Podziękowania dla Chewiego za łatkę!

pypi.org/project/gpep517/15/

#python #gentoo #pep517 #gpep517

Last updated 1 year ago

Michał Górny · @mgorny
123 followers · 460 posts · Server pol.social

Inne wiadomości ze świata : nowy backend -build-core okazuje się psuć na jeszcze jeden sposób. Tym razem błąd zauważono przy wykorzystaniu -backend.

A, fail2ban też psuje. Może to ten sam problem.

scikit-build-core: github.com/scikit-build/scikit
fail2ban: bugs.gentoo.org/909535
poprzedni bug (psuł rozszerzenia ): github.com/scikit-build/scikit

#rustlang #pdm #setuptools #scikit #pep517 #python

Last updated 1 year ago

Michał Górny · @mgorny
47 followers · 220 posts · Server pol.social

Oznaczyłem paczkę - jako przestarzałą w . Część z pozostałych wstecznych zależności już została zaktualizowana do użycia innego backendu, jedna ma już otwarty pull request, a pozostałymi trzema zająłem się sam (proponując migrację do pdm-backend):

github.com/abersheeran/a2wsgi/
github.com/gazpachoking/jsonre
github.com/mkdocstrings/autore

#python #gentoo #pep517 #pdm

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
442 followers · 2269 posts · Server fosstodon.org

I've marked - package deprecated in . Some of the remaining revdeps have already been migrated away in their VCS repositories, one has pull request open, and I've filed pull requests to migrate the remaining three to pdm-backend:

github.com/abersheeran/a2wsgi/
github.com/gazpachoking/jsonre
github.com/mkdocstrings/autore

#pdm #pep517 #gentoo #python

Last updated 1 year ago

Michał Górny · @mgorny
42 followers · 188 posts · Server pol.social

Udało mi się wrzucić nową wersję do .

- instalacja metodą była zepsuta i do systemu nie trafiały pliki danych (aktualna wersja stabilna paczki też jest popsuta i nikt nawet nie zauważył)

- testy spodziewają się, że pliki danych z translate-toolkit i gaupol znajdą się w tym samym katalogu, ${XDG_DATA_HOME}

- jeden z testów zmienia katalog roboczy przez os.chdir() i nigdy nie wraca, psując tym samym testy po nim następujące

- wszystkie testy zbudowane w oparciu o snapshottest się sypią i nie mam pojęcia dlaczego (a do tego wtyczka ta generuje paskudnie nieczytelne komunikaty błędów i w ogóle dlaczego ktokolwiek używa czegoś tak paskudnego?!)

Czuję się, jakbym właśnie zmarnował godzinę swojego życia.

#python #pep517 #gentoo #translatetoolkit

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
437 followers · 2243 posts · Server fosstodon.org

I've managed to bump in .

- install was broken and didn't install data files (it's also broken in current stable and nobody even noticed)

- tests expect data files from itself and gaupol in a single ${XDG_DATA_HOME}

- one test module does os.chdir() and never returns, breaking other tests

- all tests based on snaphottest fail and I have no clue why (also, the output is awful and why do people use such a horrible plugin?!)

Feels like an wasted hour.

#translatetoolkit #gentoo #pep517 #python

Last updated 1 year ago

Michał Górny · @mgorny
35 followers · 85 posts · Server pol.social

Czy można sensowniej spędzać czas niż dodając wsparcie dla bezsensownej zmiany nazwy -owego backendu , który był używany przez mniej niż dziesięć paczek? Pierwsza z nich (autorstwa autora owego backendu, oczywiście) właśnie wydała nową wersję jedynie w celu zmiany backendu, podczas gdy cała reszta będzie jeszcze długo wymagała starej paczki.

github.com/gentoo/gentoo/pull/
gitlab.com/warsaw/public/-/com

#python #gentoo #pep517 #nih

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
426 followers · 2121 posts · Server fosstodon.org

Is there a better work to spend your time on than adding support for a pointless rename of a backend that was used by less than a dozen packages? The first one (by the backend's author, of course) just made a release purely for the purpose of switching to the rename, while the rest still block on the old package.

github.com/gentoo/gentoo/pull/
gitlab.com/warsaw/public/-/com

#nih #pep517 #gentoo #python

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
361 followers · 1682 posts · Server fosstodon.org

Ok, it seems that github3.py is the first victim that I know of, of the war PyPI maintainers are waging against PyPA standards. Big sigh.

github.com/sigmavirus24/github

#python #pep517 #pypi #pypa #pep625 #hatchling

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
360 followers · 1664 posts · Server fosstodon.org

Today's sigh: meson-python suddenly decided that they won't call ` compile` anymore and they'be calling directly instead. As a result, `compile-args` in the `config_settings` dict suddenly changed from passing meson options to passing ninja options.

Yes, you guessed right. This sudden API change broke our workflow.

bugs.gentoo.org/904677
github.com/mesonbuild/meson-py

#meson #ninja #gentoo #python #pep517

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
335 followers · 1473 posts · Server fosstodon.org

> PDM was created as a “Python package manager with PEP 582 support” (which is notable, given that PDM does not implement PEP 582).

(from pradyunsg.me/blog/2023/01/21/t, it references pradyunsg.me/blog/2023/01/21/p)

#python #pep517 #pdm

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
295 followers · 1172 posts · Server fosstodon.org

Did you know that verifies the trove classifiers you're using? So even if you don't use any new feature, you need to put a lower bound on supported hatchling version, or some users may see build failures due to unrecognized trove classifiers.

github.com/tiangolo/fastapi/pu

#hatchling #python #pep517

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
293 followers · 1139 posts · Server fosstodon.org

So it seems that is not the only distro stuck with old version of pydata-sphinx-theme because of how horrible sphinx-theme-builder is. That said, Fedora seems to have managed it… and it's so scary I don't think it's worth it. Why do software developers have to be so short sighted?

src.fedoraproject.org/rpms/pyt

#gentoo #python #pep517

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
271 followers · 1009 posts · Server fosstodon.org

I've just noticed that my bug about PEP 625 support in flit_core has the number… 626. One bug too late!

That said, I've finally gotten around to making a PR, and it turned out to be trivial! It's so nice that source distributions and wheels use the same rules, so you can just reuse the existing function.

github.com/pypa/flit/issues/62
github.com/pypa/flit/pull/628

#python #pep517

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
270 followers · 999 posts · Server fosstodon.org

pdm-backend just aligned its sdist and wheel naming to the current standards! This leaves setuptools as the only backend I'm aware of using legacy naming.

github.com/pdm-project/pdm-bac

#pep517 #python

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
258 followers · 944 posts · Server fosstodon.org

Oh, on top of all the mess around different build systems following different distribution filename normalization rules, it turns out that doesn't accept wheels following the newer rules… because "the situation about what file names are acceptable is extremely messy right now" (as of July 2022).

Please tell me with a straight face that packaging works.

github.com/pypi/warehouse/issu

#pep517 #pypi #python

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
231 followers · 785 posts · Server fosstodon.org

Some more fun.

Only hatchling, meson-python and poetry-core implement PEP 625 sdist naming.

All tested backends except for pdm-pep517 and setuptools implement the current wheel naming spec. These two use the older PEP 427 naming.

blogs.gentoo.org/mgorny/2023/0

#pep517 #python

Last updated 1 year ago

Michał Górny :gentoo: · @mgorny
224 followers · 722 posts · Server fosstodon.org

It gets even better. It turns out that Poetry has an undocumented `build` key that doesn't work via poetry-core (sigh). It runs a script at build time that Box uses to build a C extension using distutils (sigh).

This is just the true pure horror that introduced. Switching from setuptools to poetry just to add a hack that uses setuptools to plug what poetry can't do.

github.com/cdgriffith/Box/blob

#pep517

Last updated 2 years ago

Michał Górny :gentoo: · @mgorny
224 followers · 721 posts · Server fosstodon.org

Given that I've just discovered two more packages installing random documentation files straight into top-level site-packages directory, I have only one thing to say:

Please do not use Poetry. It is the single worst build system in history.

github.com/python-babel/flask-
github.com/cdgriffith/Box/pull

#python #pep517

Last updated 2 years ago