Replacing pytest -n auto with pytest -n %{_smp_build_ncpus}
by Miro Hrončok
Hello Pythonistats, packagers,
A handful of Fedora Python packages uses pytest-xdist to run tests in parallel
like this:
%pytest -n auto
-n auto means pytest will spawn a number of workers processes equal to the
number of available CPUs.
In the spirit of other packaging guidelines, I believe we should use this instead:
%pytest -n %{_smp_build_ncpus}
This means the same thing in most of the ceases, but will limit the number of
workers depending on other constraints in the spec or in the environment.
Should I do this in a mass change? Not so many packages use pytest -n auto in
the spec:
$ rg -l -- '(-n|--numprocesses)(\s*|=)auto(\s|$)'
ansible-bender.spec
azure-cli.spec
ocrmypdf.spec
python-cartopy.spec
python-GridDataFormats.spec
python-hypothesis.spec
python-matplotlib.spec
python-mplcairo.spec
python-rpmautospec.spec
python-sqlalchemy.spec
python-tox.spec
python-xarray.spec
python-zstandard.spec
pythran.spec
scipy.spec
(Other packages have that in tox.ini or pytest config file, but I am not aiming
at changing that here.)
And, considering many other packages might want to benefit from that, should
this be:
1) encouraged in the Python packaging guidelines
2) macronized (I was thinking %pytest_parallel, but TBD)
?
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
1 year, 1 month
python-pandas has been orphaned - needs a new primary maintainer.
by Orion Poplawski
Looks like python-pandas has been orphaned. Is anyone interested in
taking it on? I've done some drive by work (and have maintained it in
EPEL), but I already have too many packages.
Thanks,
Orion
--
Orion Poplawski
he/him/his - surely the least important thing about me
IT Systems Manager 720-772-5637
NWRA, Boulder/CoRA Office FAX: 303-415-9702
3380 Mitchell Lane orion(a)nwra.com
Boulder, CO 80301 https://www.nwra.com/
1 year, 2 months
Late notice retirement of PyPy 3.7 from Fedora 37+
by Miro Hrončok
Hello,
I plan to retire PyPy 3.7 (pypy3.7) from Fedora 37+. The latest/last release of
it happened in March and I'd like to avoid the need to backport security fixes
to it for more 14ish months.
If there is a high demand (unlikely) it can always be added back after GA, but
it cannot be retired after that.
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
1 year, 2 months
PSA: @python-packagers-sig is now the FAS group for packages
co-maintained by the SIG
by Miro Hrončok
Hello Pythonistas,
after almost exactly 6 years, the FAS groups for Python SIG have changed.
https://pagure.io/fedora-infrastructure/issue/5478
The @python-packagers-sig group is now used to track permissions in dist-git.
Treat this as you treated @python-sig until now.
5 years ago, we asked sponsors of @python-sig to sponsor their sponsorees to
@python-packagers-sig. Most did, but some people are missing.
https://accounts.fedoraproject.org/group/python-packagers-sig/
If you are missing and you would like to be added, let me know off-list (I
don't want to bulk-add people who might no longer be interested).
Similarly, if you don't do Python packaging in Fedora, please ask me off list
to be removed.
Log in to src.fedoraproject.org to update your group membership there:
https://src.fedoraproject.org/group/python-packagers-sig
I've updated https://fedoraproject.org/wiki/SIGs/Python#Python_SIG_FAS_group
Together with this change, the private mailing list for Bugzilla was changed
from python-sig(a)lists.fedoraproject.org to
python-packagers-sig(a)lists.fedoraproject.org
I've subscribed all who were subscribed to the old one.
You might need to update your email filters.
For a time, it is possible that some Bugzilla email will still go to the old list.
Same as before, do not engage any discussion on the list, it's for Bugzilla
only. The primary channel for communication is still this list:
python-devel(a)lists.fedoraproject.org
The @python-sig group will be repurposed as "free to join for any existing
Fedora contributor, no elevated permissions" -- the process is yet to be
created and documented.
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
1 year, 2 months
Remaining packages in need of a Python 3.11 rebuild
by Miro Hrončok
Hello folks!
We are approaching Fedora 37 Final Freeze, which will start on 2022-10-04.
There are still 33 packages in Fedora 37 that will need to be rebuilt with
Python 3.11 in order to be installable (most of them). I propose to retire the
non-installable packages if they are not rebuilt by 2022-10-03 (1 day before
the final freeze) unless they have a freeze exception request and a clear path
forward to make it to Fedora 37 GA. Packages that will be fixed after GA can be
reintroduced with an update.
Packages by maintainer:
aekoroglu python-funcy python-sendgrid
amoralej python-yappi
bizdelnick dlib
dcavalca monkeytype
fab home-assistant-cli python-haversion python-requests-credssp
fantom profanity
gicmo renderdoc
ibotty paternoster
kevin datanommer
luya dlib
mcurlej module-build
merlinm python-calligrabot
mkulik module-build
ngompa kiwi-boxed-plugin python-hyperkitty python-postorius
oget muse
orphan python-calligrabot python-cu2qu python-evic
qulogic python-octave-kernel
ralph datagrepper datanommer-commands
raphgro jpype py4j python-javabridge python-jep
rathann python-Pympler python-filecheck
salimma mailman3 monkeytype python-django-mailman3 python-hyperkitty
python-postorius
sdgathman cjdns
sharkcz sigil
cjdns
@sdgathman
ASSIGNED https://bugzilla.redhat.com/2045255
2 possible ways forward but no news for ~3 weeks
datagrepper
@ralph
ASSIGNED https://bugzilla.redhat.com/2098691
Upstream (Fedora Infra) pins dependencies aggressively,
needs to be relaxed downstream (also Fedora Infra) as a workaround.
Maybe persuade upstream into not doing that long-term.
datanommer
@kevin
NEW https://bugzilla.redhat.com/2098692
Upstream (Fedora Infra) pins dependencies aggressively,
needs to be relaxed downstream (also Fedora Infra) as a workaround
Maybe persuade upstream into not doing that long-term.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
datanommer-commands
@ralph
ASSIGNED https://bugzilla.redhat.com/2098693
Seems to have been updated in dist-git to a version with missing dependencies?
dlib
@bizdelnick @luya
ASSIGNED https://bugzilla.redhat.com/2098694
Bundles old pybind11 which is not Python 3.11 compatible,
needs to be unbundled or at least updated.
home-assistant-cli
@fab
ASSIGNED https://bugzilla.redhat.com/2058155
Bug status changed in March without comment,
not updated since.
jpype
@raphgro
NEW https://bugzilla.redhat.com/2049705
Upstream PR exists: https://github.com/jpype-project/jpype/pull/1087
kiwi-boxed-plugin
@ngompa
NEW https://bugzilla.redhat.com/2098732
Already orphaned once due to non-responsivnes, took again by the same
maintainer without response.
Fixed in Rawhide recently, requested a Fedora 37 fix.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
mailman3
@salimma
ASSIGNED https://bugzilla.redhat.com/2098746
Bug status changed ~4 weeks ago without comment,
not updated since.
module-build
@mcurlej @mkulik
ASSIGNED https://bugzilla.redhat.com/2098750
Fixed in rawhide recently, requested a Fedora 37 fix.
monkeytype
@dcavalca @salimma
ASSIGNED https://bugzilla.redhat.com/2098752
Maintainer "will try to fix this" ~3 weeks ago, no news since.
muse
@oget
NEW https://bugzilla.redhat.com/2103647
Accidentally closed before, but still does not build.
Only requires libpython3.10.so.1.0()(64bit) so is installable.
paternoster
@ibotty
ASSIGNED https://bugzilla.redhat.com/2098772
Maintainer agreed to retire ~3 weeks ago, no news since.
profanity
@fantom
ASSIGNED https://bugzilla.redhat.com/2049682
Bug status changed ~3 weeks ago without comment,
not updated since.
Fixed in rawhide recently, f37-candidate build exists.
py4j
@raphgro
NEW https://bugzilla.redhat.com/2098787
Already CLOSED DEFERRED once by the maintainer, no fix.
python-calligrabot
@merlinm @orphan
NEW https://bugzilla.redhat.com/2098856
Already orphaned once due to non-responsivnes, took again by a different
maintainer, orphaned again by them.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-cu2qu
@orphan
NEW https://bugzilla.redhat.com/2098875
Already orphaned due to non-responsivnes.
Should be retired as it is not needed any more.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-django-mailman3
@salimma
ASSIGNED https://bugzilla.redhat.com/2044961
Bug status changed in March without comment,
not updated since.
python-evic
@orphan
NEW https://bugzilla.redhat.com/2098904
Already orphaned due to non-responsivnes.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-filecheck
@rathann
ASSIGNED https://bugzilla.redhat.com/2098908
Last comment in June, no news since.
python-funcy
@aekoroglu
NEW https://bugzilla.redhat.com/2098917
Orphaned (used to be Igor's?), taken by another maintainer, no update.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-haversion
@fab
NEW https://bugzilla.redhat.com/2098967
Already orphaned once due to non-responsivnes, took again by the same
maintainer without response.
Fixed in Rawhide recently, requested a Fedora 37 fix.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-hyperkitty
@ngompa @salimma
ASSIGNED https://bugzilla.redhat.com/2032607
Also broken on F36, bug status changed in December, no news since.
python-javabridge
@raphgro
ASSIGNED https://bugzilla.redhat.com/2051204
Fails to build with java-17-openjdk.
Bug status changed in February, no helpful news since.
python-jep
@raphgro
NEW https://bugzilla.redhat.com/2098978
Already CLOSED DEFERRED once by the maintainer, no fix.
python-octave-kernel
@qulogic
ASSIGNED https://bugzilla.redhat.com/2099034
https://github.com/Calysto/octave_kernel/issues/215
python-postorius
@ngompa @salimma
ASSIGNED https://bugzilla.redhat.com/2044963
Bug status changed in March, no news since.
python-Pympler
@rathann
ASSIGNED https://bugzilla.redhat.com/2098800
https://github.com/pympler/pympler/issues/148
python-requests-credssp
@fab
NEW https://bugzilla.redhat.com/2099090
Already orphaned once due to non-responsivnes, took again by the same
maintainer, no reply, but fixed in Rawhide only.
python-sendgrid
@aekoroglu
NEW https://bugzilla.redhat.com/2046260
Package was updated to a version with missing deps, new package review blocked
on legal.
Maintainer promised to retire the package ~3 weeks ago, no news since.
Will be retired one week before the freeze anyway barbecue it's an old NEW.
python-yappi
@amoralej
ASSIGNED https://bugzilla.redhat.com/2099152
Merged upstream PR https://github.com/sumerc/yappi/pull/107
Needs backport.
renderdoc
@gicmo
NEW https://bugzilla.redhat.com/2049621
No response whatsoever since the bug was opened in February.
Only requires libpython3.10.so.1.0()(64bit) so is installable.
sigil
@sharkcz
NEW https://bugzilla.redhat.com/2083977
No response whatsoever since the bug was opened in May.
Only requires libpython3.10.so.1.0()(64bit) so is installable.
(Sorry if I summarized some bugs inaccurately or written something that seems
unfair, I was doing it manually and it's surprisingly hard on this scale. No
harm or blame intended.)
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
1 year, 2 months
Python packages using "maturin"
by Ankur Sinha
Hi folks,
While trying to unretire python-cattrs[1], I ended up falling down a rabbit
hole of deps.
One of its optional test deps, orjson[2], requires "maturin"[3] to
build. maturin looks like something that helps publish rust code as
python packages. I think I may have come across this before, but it's
the first time I've actually bothered to look into it. (I know nothing
about rust so I tend to steer clear of rust projects).
So, has anyone else come across this before? Has anyone looked into
packaging it?
Given my non-existent rust knowledge, I'd like to avoid
packaging/maintaining maturin if at all possible. Is there a way to not
use it perhaps (unlikely, I know)?
[1] https://src.fedoraproject.org/rpms/python-cattrs
[2] https://pypi.org/project/orjson/
[3] https://pypi.org/project/maturin/
--
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London
1 year, 2 months
Questions regarding %pyproject_buildrequires
by Sandro
Hi,
I'm tinkering with a package in review, trying to understand the Python
RPM build process. The package is hatch-fancy-pypi-readme [1].
The package uses hatch for build, but it includes a non-license file,
AUTHORS.md, which I thought would be trivial to patch around, so it's
not included in the RPM.
I patched the pyproject.toml and added:
[tool.hatch.build]
exclude = ["AUTHORS.md"]
Then I realized %pyproject_buildrequires has the option -w enabled,
producing a wheel for metadata extraction. So, I added a patch, putting
a MANIFEST.in in the root dir of the project with one line:
exclude AUTHORS.md
Yet the whl archive still contains the file:
hatch_fancy_pypi_readme-22.3.0.dist-info/licenses/AUTHORS.md
and so does the final RPM.
Do I have to resort to manually removing the file in %prep?
I encountered another issue with %pyproject_buildrequires when passing
the -t option for automatic test requirements.
I wanted to see if I can get rid of the extra BuildRequires in the
submitters spec file [2], so I commented out all but python3-dev and
python3-test BuildRequires and added -t to %pyproject_buildrequires.
That made the build fail with:
No matching package to install: 'python3dist(pytest-icdiff)'
Yet, I don't see any test or other python module importing icdiff.
Building with the original spec file, tests are run and succeed.
Is that a known issue with the -t option? Or am I missing something?
[1] https://github.com/hynek/hatch-fancy-pypi-readme
[2] https://pnemade.fedorapeople.org/python-hatch-fancy-pypi-readme.spec
-- Sandro
1 year, 3 months