[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...
but then there's a build which succeeded:
https://copr.fedorainfracloud.org/coprs/g/python/python-without-distutils...
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
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.