Re: Help needed triaging build failures without distutils

2023-01-05 Thread Justin Z
Added for kig in 
https://src.fedoraproject.org/rpms/kig/c/d1d0c99facdb10dce32a8bf583750efaa565eefe?branch=rawhide
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-11-04 Thread Victor Stinner
Hi,

On Tue, Oct 18, 2022 at 11:34 AM Miro Hrončok  wrote:
> The Python standard library distutils module will be removed from Python 3.12+
> https://peps.python.org/pep-0632/

It's done:
https://github.com/python/cpython/commit/0faa0ba240e815614e5a2900e48007acac41b214

I created a discussion to collaborate on Python 3.12 incompatible
changes like the removal of the distutils package:
https://discuss.python.org/t/collaboration-on-handling-python-3-12-incompatible-changes-distutils-removal-invalid-escape-escape-etc/20721

Victor
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]

2022-10-24 Thread Miro Hrončok

On 24. 10. 22 12:46, Richard W.M. Jones wrote:

I'm not sure what could have happened here.  The RPM would have failed
to build if the Python bindings had been ./configure-d out.  The link
shows libguestfs as "not build yet / Disabled":

   
https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/packages/?page=13


(I forgot to respond to this part of your email, so doing that now.)

That is caused by the fact that I build packages in a custom "directory" which 
is a copr thing that allows me to build thousands of packages in copr without 
them "seeing" each other, but it has some UX downsides, such as not being 
visible as built on this page.



but then there's a build which succeeded:

   
https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/build/4906970/

and it has Python bindings.  (The logs of the build don't seem to be
available.)


Yeah, I only renewed failed builds for the logs, I had no idea people will want 
to examine succeeded packages.


Looking at the latest succeeded root.log from Koji instead

https://koji.fedoraproject.org/koji/buildinfo?buildID=2074440
https://kojipkgs.fedoraproject.org//packages/libguestfs/1.49.5/2.fc38/data/logs/x86_64/root.log

I see python3-setuptools was installed, which is the likely reason the build 
succeeded without distutils (as said in my announcement, setuptools provide a 
distutils module, which is 99%-compatible replacement for the removed standard 
library module).



--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: [Libguestfs] distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]

2022-10-24 Thread Richard W.M. Jones
On Mon, Oct 24, 2022 at 06:00:31PM +0200, Miro Hrončok wrote:
> On 24. 10. 22 15:14, Richard W.M. Jones wrote:
> >Original code:
> >
> >   $ python3 -c 'import distutils.sysconfig; 
> > print(distutils.sysconfig.get_python_lib(1,0));'
> >   /usr/lib64/python3.11/site-packages
> >
> >Potential replacement:
> >
> >   $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));'
> >   /usr/local/lib64/python3.11/site-packages
> 
> That is a correct replacement. It will return the same value in
> rpmbuild environment.
> 
> >Maybe the original code was wrong, but I guess we don't want to
> >install site packages in /usr/local when running under RPM at least.
> 
> $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));'
> /usr/local/lib64/python3.11/site-packages
> 
> $ RPM_BUILD_ROOT=/ python3 -c 'import sysconfig;
> print(sysconfig.get_path("platlib"));'
> /usr/lib64/python3.11/site-packages

Ah ha!  Good one, thanks :-)

Here's the fix for libguestfs:
https://github.com/libguestfs/libguestfs/commit/26940f64a740676103b0ee49bf0ca5ac4e297841

I'll leave this fix to stew for a while and if it works I'll fix
various other projects in a similar way.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: [Libguestfs] distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]

2022-10-24 Thread Miro Hrončok

On 24. 10. 22 15:14, Richard W.M. Jones wrote:

Original code:

   $ python3 -c 'import distutils.sysconfig; 
print(distutils.sysconfig.get_python_lib(1,0));'
   /usr/lib64/python3.11/site-packages

Potential replacement:

   $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));'
   /usr/local/lib64/python3.11/site-packages


That is a correct replacement. It will return the same value in rpmbuild 
environment.



Maybe the original code was wrong, but I guess we don't want to
install site packages in /usr/local when running under RPM at least.


$ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));'
/usr/local/lib64/python3.11/site-packages

$ RPM_BUILD_ROOT=/ python3 -c 'import sysconfig; 
print(sysconfig.get_path("platlib"));'

/usr/lib64/python3.11/site-packages


--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: [Libguestfs] distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]

2022-10-24 Thread Richard W.M. Jones
[Sending 2nd email again since it didn't reach the Python-devel list first time]

On Tue, Oct 18, 2022 at 11:13:47AM +0100, Richard W.M. Jones wrote:
> On Tue, Oct 18, 2022 at 10:53:12AM +0100, Richard W.M. Jones wrote:
> >   https://github.com/libguestfs/libguestfs/blob/master/m4/guestfs-python.m4
> 
> Actually some help for how to replace it would be useful too as
> sysconfig is not an exact replacement for distutils.sysconfig.  In
> particular get_python_lib doesn't exist, and I can't find an exact
> replacement.
> 
> Original code:
> 
>   $ python3 -c 'import distutils.sysconfig; 
> print(distutils.sysconfig.get_python_lib(1,0));'
>   /usr/lib64/python3.11/site-packages
> 
> Potential replacement:
> 
>   $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));'
>   /usr/local/lib64/python3.11/site-packages
> 
> Maybe the original code was wrong, but I guess we don't want to
> install site packages in /usr/local when running under RPM at least.
> Note it's used here:
> 
> https://github.com/libguestfs/libguestfs/blob/master/python/Makefile.am#L50-L54
> 
> (We do not -- and cannot -- use ordinary Python install mechanisms.)
> 
> Rich.
> 
> -- 
> Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
> Read my programming and virtualization blog: http://rwmj.wordpress.com
> nbdkit - Flexible, fast NBD server with plugins
> https://gitlab.com/nbdkit/nbdkit

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]

2022-10-24 Thread Richard W.M. Jones
[Sending again since it didn't reach the Python-devel list first time]

On Tue, Oct 18, 2022 at 10:53:12AM +0100, Richard W.M. Jones wrote:
> On Tue, Oct 18, 2022 at 11:27:47AM +0200, Miro Hrončok wrote:
> > Hey Pythonistas.
> > 
> > The Python standard library distutils module will be removed from Python 
> > 3.12+
> > 
> > https://peps.python.org/pep-0632/
> 
> Annoying, but OK ...
> 
> > As preparatory work, we build all python packages in a Copr repository
> > with Python 3.11 sans distutils:
> > 
> > https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/
> > 
> > I've rebuilt all the failed builds again and also in a control-group copr:
> > 
> > https://copr.fedorainfracloud.org/coprs/g/python/python-with-distutils/
> >
> > 250 packages that failed to build without distuils but succeeded
> > with distutils need to be examined and categorized into various
> > different groups:
> > 
> >  - package uses distutils only if sys.version_info < (3, 12)
> >  -- this is OK but still fails here
> >  - package uses distutils unconditionally and the package needs to be fixed
> >  - package uses another package that uses distutils unconditionally
> >   and the dependency needs to be fixed
> > 
> > I suspect most of the packages will fail to build with Python 3.12
> > (planned for Fedora 39, change proposal TBD). The python3-setutpools
> > package provides a distutils module [^1], so sometimes "simply"
> > adding BuildRequires: python3-setuptools might workaround the
> > problem.
> 
> ...
> 
> > rjones hivex libdnet libnbd
> 
> I think your testing methodology might have been wrong because we use
> distutils in other packages that I maintain, notably:
> 
>   https://github.com/libguestfs/libguestfs/blob/master/m4/guestfs-python.m4
> 
> I'm not sure what could have happened here.  The RPM would have failed
> to build if the Python bindings had been ./configure-d out.  The link
> shows libguestfs as "not build yet / Disabled":
> 
>   
> https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/packages/?page=13
> 
> but then there's a build which succeeded:
> 
>   
> https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/build/4906970/
> 
> and it has Python bindings.  (The logs of the build don't seem to be
> available.)
> 
> Anyway I'll see if I can fix this upstream as requested.
> 
> Rich.
> 
> -- 
> Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
> Read my programming and virtualization blog: http://rwmj.wordpress.com
> virt-top is 'top' for virtual machines.  Tiny program with many
> powerful monitoring features, net stats, disk stats, logging, etc.
> http://people.redhat.com/~rjones/virt-top

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines.  Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-21 Thread Miro Hrončok

On 21. 10. 22 12:16, Miro Hrončok wrote:

On 18. 10. 22 11:27, Miro Hrončok wrote:
I suspect most of the packages will fail to build with Python 3.12 (planned 
for Fedora 39, change proposal TBD). The python3-setutpools package provides 
a distutils module [^1], so sometimes "simply" adding BuildRequires: 
python3-setuptools might workaround the problem.


I've created a new copr repository:

https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils-always-setuptools/

It always adds python3-setuptools to the buildroot, so packages that will be 
successful here will be buildable once they add BuildRequires on 
python3-setuptools.


Note that adding such BuildRequires might however hide some transitive 
dependency problem, if the distutils import comes from a dependency.


Builds pending.


The following packages have either been fixed in the meantime, or their failure 
was unrelated:


hplip
libreswan
libxml2
lttng-ust
nispor
nmstate
photocollage
python-cups
python-jupyter-polymake
python-m2r
python-mne
python-mplcursors
python-rpmfluff
python-sphinxcontrib-openapi
python-usort
rebase-helper
sanlock

The following packages succeeded with python3-setuptools, so adding something 
like this will workaround the problem for them:


BuildRequires:  (python3-setuptools if python3-devel >= 3.12)

GConf2
MUSIC
PyQt4
SoapySDR
Zim
anaconda
anjuta
appliance-tools
astrometry
audit
awake
b43-tools
babeltrace
babeltrace2
bamf
baresip
brd
brial
btest
cairo-dock-plug-ins
ccsm
cdist
clingo
csmock
cvc4
dee
deltarpm
distcc
dmlite
dnf-plugin-perfmetrics
dnsviz
eric
etckeeper
flann
fonts-tweak-tool
fusion-icon
gdb
gfal2-python
gjots2
glusterfs
gnome-doc-utils
gnucash
gnumeric
gphotoframe
gpodder
graphviz
grass
gtk2
hivex
hugin
i2c-tools
ibus
ibus-anthy
insight
keycloak-httpd-client-install
kig
ldns
libarcus
libblockdev
libcap-ng
libcint
libdnet
libfreenect
libftdi
libkdumpfile
libkkc
libldb
libnbd
libneurosim
libnl3
libprelude
libpreludedb
libproxy
libpst
libsavitar
libselinux
libsemanage
libsolv
libssh2-python
libtalloc
libtdb
libtevent
link-grammar
livecd-tools
maildirproc
mailnag
manafirewall
marisa
mathgl
mpv
netgen-mesher
ntpsec
ocaml-pyml
oct2spec
omniORB
omniORBpy
onboard
openscap-daemon
pam_wrapper
pipx
pluma
policycoreutils
pyflowtools
pyke
pyppd
pystatgrab
pysvn
python-IPy
python-PyPDF2
python-ansi
python-auth-credential
python-bintrees
python-cmdln
python-cpio
python-cram
python-cypy
python-dbf
python-empy
python-firehose
python-gccinvocation
python-gzipstream
python-iowait
python-ipgetter
python-kmod
python-logging-tree
python-logutils
python-messaging
python-modestmaps
python-multi_key_dict
python-nmap
python-optcomplete
python-pendulum
python-py9p
python-pyaes
python-pycxx
python-pyfim
python-pylibravatar
python-pynest2d
python-pyoptical
python-pyzolib
python-rpdb
python-schedutils
python-simplevisor
python-slip
python-smbpasswd
python-sysv_ipc
python-termcolor
python-uinput
python-visionegg-quest
python-whois
python-yamlordereddictloader
python3-cangjie
python3-script
python3-simpletal
qpid-dispatch
quodlibet
rabbitvcs
realtime-tests
recode
rednotebook
rpm
rteval
rubber
setroubleshoot
simple-ccsm
sip
sos
soundconverter
sssd
stp
subversion
syslog-ng
systemd-coredump-python
targetd
tbb
tcl-snack
telepathy-logger
tlsh
torbrowser-launcher
tuna
tuned
ufw
urjtag
uwsgi
vips
volume_key
wiki2beamer
wordxtr
workrave
xen
xpra
ydiff
yokadi
zbar



--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-21 Thread Miro Hrončok

On 18. 10. 22 11:27, Miro Hrončok wrote:
I suspect most of the packages will fail to build with Python 3.12 (planned for 
Fedora 39, change proposal TBD). The python3-setutpools package provides a 
distutils module [^1], so sometimes "simply" adding BuildRequires: 
python3-setuptools might workaround the problem.


I've created a new copr repository:

https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils-always-setuptools/

It always adds python3-setuptools to the buildroot, so packages that will be 
successful here will be buildable once they add BuildRequires on 
python3-setuptools.


Note that adding such BuildRequires might however hide some transitive 
dependency problem, if the distutils import comes from a dependency.


Builds pending.

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-20 Thread Ben Beasley
The failure in pipx is because argparse-manpage[1], which is not in this 
list, requires distutils at runtime.


+ /usr/bin/python3 scripts/generate_man.py
Traceback (most recent call last):
  File "/builddir/build/BUILD/pipx-1.1.0/scripts/generate_man.py", line 7, in 

from build_manpages.manpage import Manpage  # type: ignore
^^
  File "/usr/lib/python3.11/site-packages/build_manpages/__init__.py", line 7, in 

from .build_manpages import build_manpages, get_build_py_cmd, 
get_install_cmd
  File "/usr/lib/python3.11/site-packages/build_manpages/build_manpages.py", line 10, 
in 
from distutils.core import Command
ModuleNotFoundError: No module named 'distutils'

I filed an issue[2] advising argparse-manpage upstream of the situation.

[1] https://src.fedoraproject.org/rpms/argparse-manpage

[2] https://github.com/praiskup/argparse-manpage/issues/63

On 10/18/22 05:27, Miro Hrončok wrote:

Hey Pythonistas.

The Python standard library distutils module will be removed from 
Python 3.12+


https://peps.python.org/pep-0632/

As preparatory work, we build all python packages in a Copr repository 
with Python 3.11 sans distutils:


https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/ 



I've rebuilt all the failed builds again and also in a control-group 
copr:


https://copr.fedorainfracloud.org/coprs/g/python/python-with-distutils/

250 packages that failed to build without distuils but succeeded with 
distutils need to be examined and categorized into various different 
groups:


 - package uses distutils only if sys.version_info < (3, 12)
 -- this is OK but still fails here
 - package uses distutils unconditionally and the package needs to be 
fixed

 - package uses another package that uses distutils unconditionally
  and the dependency needs to be fixed

I suspect most of the packages will fail to build with Python 3.12 
(planned for Fedora 39, change proposal TBD). The python3-setutpools 
package provides a distutils module [^1], so sometimes "simply" adding 
BuildRequires: python3-setuptools might workaround the problem.


However, upstream involvement is recommended.

A few bugzillas were opened wrt this and I plan to open more:

https://bugzilla.redhat.com/showdependencytree.cgi?id=PYTHON3.12&hide_resolved=0 



I've also oepned some upstream Pull Requests:
https://github.com/pypa/pip/pull/11522
https://github.com/pypa/setuptools/pull/3636
https://pagure.io/fedora-gather-easyfix/pull-request/10
https://github.com/filbranden/dnf-plugins-perfmetrics/pull/1
https://github.com/rpm-software-management/deltarpm/pull/17

Could you please help me by looking at your failed packages and 
talking to your upstreams? Feel free to reply with links, questions, 
bugzillas...


To test this locally, you can do something like:

1. fedpkg clone $PKG && cd $PKG
2. mock -r fedora-rawhide-x86_64 init
3. mock -r fedora-rawhide-x86_64 install python3-devel
4. sudo rm -rf 
/var/lib/mock/fedora-rawhide-x86_64/root/usr/lib64/python3.11/distutils/

4. fedpkg mockbuild -N


Thanks!



[^1]: Unfortunately,  is not 100 % compatible with the removed 
standard library one distutils: 
https://github.com/pypa/setuptools/issues/3532




Maintainers by package:
0ad  bruno kalev pcpa pwalter
GConf2   alexl buc caillon caolanm mbarnes rhughes ssp 
walters

MUSIC    ankursinha
PyQt4    sagitter than
SoapySDR hobbes1069 mdomsch
Zim  cheeselee ohaessler
anaconda anaconda-maint jkonecny m4rtink rvykydal sbueno 
vpodzime vponcova

anjuta   kalev limb moezroy rakesh
appliance-tools  ngompa
astrometry   lupinix
audit    sgrubb
awake    fab
b43-tools    pwalter
babeltrace   blarsen greenscientist keiths ktdreyer mjeanson 
suchakra

babeltrace2  mjeanson
bamf jspaleta salimma
baresip  robert
brd  jsbackus
brial    pcpa
btest    fab
cairo-dock-plug-ins  mtasaka
ccsm jskarvad
cdist    fnux
clingo   thofmann
cryptlib senderek
cryptominisat    jjames
csmock   kdudka svashisht
csound   ndim
cvc4 brouhaha jjames
dee  jspaleta spot
deltarpm defolos
distcc   grover limb
dmlite   adev andreamanzi gbitzes okeeble rocha vokac
dnf-plugin-perfmetrics dcavalca
dnsviz   jonathanspw pemensik
eric rdieter
etckeeper    thm
fedora-gather-easyfix pingou
flann    rmattes
fonts-tweak-tool jamesni tagoh
fusion-icon  jskarvad
gdb  ahajkova blarsen jankratochvil keiths kevinb 
sergiodj

gfal2-python adev andreamanzi mipatras simonm
gjots2   wef
glusterfs    kkeithle

Re: Help needed triaging build failures without distutils

2022-10-20 Thread Miro Hrončok

On 20. 10. 22 6:42, Elliott Sales de Andrade wrote:

For python-mplcursors, it appears to have setuptools installed anyway,
but it also looks like a crash in pyproject_buildrequires.py


Looks like 
https://github.com/anntzer/mplcursors/commit/625dc7b42ca2b0c61e85aa31a70298053e32615e



For python-pikepdf, it appears you built from git while it was in a
sidetag and the new dependencies were unavailable for your copr. It'll
probably build fine now.


Indeed, thanks.

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-19 Thread Elliott Sales de Andrade
On Tue, Oct 18, 2022 at 5:28 AM Miro Hrončok  wrote:
>
> Hey Pythonistas.
>
> The Python standard library distutils module will be removed from Python 3.12+
>
> https://peps.python.org/pep-0632/
>
> As preparatory work, we build all python packages in a Copr repository with
> Python 3.11 sans distutils:
>
> https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/
>
> I've rebuilt all the failed builds again and also in a control-group copr:
>
> https://copr.fedorainfracloud.org/coprs/g/python/python-with-distutils/
>
> 250 packages that failed to build without distuils but succeeded with 
> distutils
> need to be examined and categorized into various different groups:
>
>   - package uses distutils only if sys.version_info < (3, 12)
>   -- this is OK but still fails here
>   - package uses distutils unconditionally and the package needs to be fixed
>   - package uses another package that uses distutils unconditionally
>and the dependency needs to be fixed
>
> I suspect most of the packages will fail to build with Python 3.12 (planned 
> for
> Fedora 39, change proposal TBD). The python3-setutpools package provides a
> distutils module [^1], so sometimes "simply" adding BuildRequires:
> python3-setuptools might workaround the problem.
>
> However, upstream involvement is recommended.
>
> A few bugzillas were opened wrt this and I plan to open more:
>
> https://bugzilla.redhat.com/showdependencytree.cgi?id=PYTHON3.12&hide_resolved=0
>
> I've also oepned some upstream Pull Requests:
>  https://github.com/pypa/pip/pull/11522
>  https://github.com/pypa/setuptools/pull/3636
>  https://pagure.io/fedora-gather-easyfix/pull-request/10
>  https://github.com/filbranden/dnf-plugins-perfmetrics/pull/1
>  https://github.com/rpm-software-management/deltarpm/pull/17
>
> Could you please help me by looking at your failed packages and talking to 
> your
> upstreams? Feel free to reply with links, questions, bugzillas...
>
> To test this locally, you can do something like:
>
> 1. fedpkg clone $PKG && cd $PKG
> 2. mock -r fedora-rawhide-x86_64 init
> 3. mock -r fedora-rawhide-x86_64 install python3-devel
> 4. sudo rm -rf
> /var/lib/mock/fedora-rawhide-x86_64/root/usr/lib64/python3.11/distutils/
> 4. fedpkg mockbuild -N
>
>
> Thanks!
>
> qulogicpython-mplcursors python-pikepdf

For python-mplcursors, it appears to have setuptools installed anyway,
but it also looks like a crash in pyproject_buildrequires.py

For python-pikepdf, it appears you built from git while it was in a
sidetag and the new dependencies were unavailable for your copr. It'll
probably build fine now.
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-18 Thread Miro Hrončok

On 18. 10. 22 13:58, Hans Ulrich Niedermann wrote:

I have picked up the then orphaned csound on 2022-10-17 to fix its
unrelated FTBFS issues, and the current csound-6.16.2-7 package
successfully builds locally with your below build instructions which
"rm -rf" distutils from the mock buildroot.

So the csound-6.16.2-7 package appears to be good to go for sans
distutils builds (and BTW, csound.spec has been BuildRequiring
python3-setuptools since at least 2019-08-19).

I am therefore assuming the csound package landed on this list by
mistake. Possibly csound was still FTBFS when you did your sans
distutils build, and then I had just fixed csound to build successfully
when you ran the control-group copr builds.


I've restarted the build at 
https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/package/csound/ 
just to verify, but your assumption csounds reasonable.


--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-18 Thread Hans Ulrich Niedermann
I have picked up the then orphaned csound on 2022-10-17 to fix its
unrelated FTBFS issues, and the current csound-6.16.2-7 package
successfully builds locally with your below build instructions which
"rm -rf" distutils from the mock buildroot.

So the csound-6.16.2-7 package appears to be good to go for sans
distutils builds (and BTW, csound.spec has been BuildRequiring
python3-setuptools since at least 2019-08-19).

I am therefore assuming the csound package landed on this list by
mistake. Possibly csound was still FTBFS when you did your sans
distutils build, and then I had just fixed csound to build successfully
when you ran the control-group copr builds.

-ndim

On 2022-10-18 11:27 +0200, Miro Hrončok  wrote:

> Hey Pythonistas.
> 
> The Python standard library distutils module will be removed from
> Python 3.12+
> 
> https://peps.python.org/pep-0632/
> 
> As preparatory work, we build all python packages in a Copr
> repository with Python 3.11 sans distutils:
> 
> https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils/
> 
> I've rebuilt all the failed builds again and also in a control-group
> copr:
> 
> https://copr.fedorainfracloud.org/coprs/g/python/python-with-distutils/
> 
> 250 packages that failed to build without distuils but succeeded with
> distutils need to be examined and categorized into various different
> groups:
> 
>   - package uses distutils only if sys.version_info < (3, 12)
>   -- this is OK but still fails here
>   - package uses distutils unconditionally and the package needs to
> be fixed
>   - package uses another package that uses distutils unconditionally
>and the dependency needs to be fixed
> 
> I suspect most of the packages will fail to build with Python 3.12
> (planned for Fedora 39, change proposal TBD). The python3-setutpools
> package provides a distutils module [^1], so sometimes "simply"
> adding BuildRequires: python3-setuptools might workaround the problem.
> 
> However, upstream involvement is recommended.
> 
> A few bugzillas were opened wrt this and I plan to open more:
> 
> https://bugzilla.redhat.com/showdependencytree.cgi?id=PYTHON3.12&hide_resolved=0
> 
> I've also oepned some upstream Pull Requests:
>  https://github.com/pypa/pip/pull/11522
>  https://github.com/pypa/setuptools/pull/3636
>  https://pagure.io/fedora-gather-easyfix/pull-request/10
>  https://github.com/filbranden/dnf-plugins-perfmetrics/pull/1
>  https://github.com/rpm-software-management/deltarpm/pull/17
> 
> Could you please help me by looking at your failed packages and
> talking to your upstreams? Feel free to reply with links, questions,
> bugzillas...
> 
> To test this locally, you can do something like:
> 
> 1. fedpkg clone $PKG && cd $PKG
> 2. mock -r fedora-rawhide-x86_64 init
> 3. mock -r fedora-rawhide-x86_64 install python3-devel
> 4. sudo rm -rf 
> /var/lib/mock/fedora-rawhide-x86_64/root/usr/lib64/python3.11/distutils/
> 4. fedpkg mockbuild -N
> 
> 
> Thanks!
> 
> 
> 
> [^1]: Unfortunately,  is not 100 % compatible with the removed
> standard library one distutils:
> https://github.com/pypa/setuptools/issues/3532
> 
> 
> 
> Maintainers by package:
> [...]
> csound   ndim
> [...]
> 
> Packages by maintainer:
> [...]
> ndim   csound
> [...]
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-18 Thread Miro Hrončok

On 18. 10. 22 11:27, Miro Hrončok wrote:

libarcus churchyard gferon


https://src.fedoraproject.org/rpms/libarcus/pull-request/22


libsavitar   churchyard gferon


https://src.fedoraproject.org/rpms/libsavitar/pull-request/15

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Help needed triaging build failures without distutils

2022-10-18 Thread Miro Hrončok

On 18. 10. 22 11:27, Miro Hrončok wrote:

pipenv   churchyard ksurma torsava


+ sphinx-build-3 docs html
Running Sphinx v5.1.1

Configuration error:
There is a programmable error in your configuration file:

Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/sphinx/config.py", line 347, in 
eval_config_file

exec(code, namespace)
  ...
from pipenv.vendor.requirementslib import Pipfile, Requirement
  File 
"/builddir/build/BUILD/pipenv-2022.5.2/build/lib/pipenv/vendor/requirementslib/__init__.py", 
line 9, in 

from .models.lockfile import Lockfile
  File 
"/builddir/build/BUILD/pipenv-2022.5.2/build/lib/pipenv/vendor/requirementslib/models/lockfile.py", 
line 16, in 

from .requirements import Requirement
  File 
"/builddir/build/BUILD/pipenv-2022.5.2/build/lib/pipenv/vendor/requirementslib/models/requirements.py", 
line 10, in 

from distutils.sysconfig import get_python_lib
ModuleNotFoundError: No module named 'distutils'


I've opened https://github.com/sarugaku/requirementslib/pull/348

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue