¡Hola Matthias!

El 2026-09-14 a las 13:48 +0200, Matthias Klose escribió:
On 9/13/26 23:11, Maximiliano Curia wrote:
As I mentioned on my previous email, I've been working on the Python
3.15 migration. This is a status update of how things are going as well
as an opportunity for others to help.

thanks for doing that!

You are welcome!

having a working numpy before starting with 3.15 would be very nice. I also can see pandas having issues now.

To make myself clear numpy 2.x works when rebuilt against python 3.15.
But a number of packages that were rebuilt in debusine failed because
they were still trying to use deprecated or removed numpy 1
functionalities.

About pandas, I backported upstream fixes by brute force to the version
that was in sid so pandas builds in debusine, but then I used a more
pristine version of those patches against the version that was in the
git repository (3.x) as I thought it would be uploaded to unstable soon.

So, for now, the version in experimental of pandas should work with
python 3.15, the pandas maintainers are still working on bringing
pandas 3 to unstable. I'll prepare a set of patches for the 2.3.3
version of pandas next.

I'm raising your bug reports to severity important, together with the message that they become RC at the end of October.

Thanks, I started reported them as important after you told me, but the
ones that I had filed as normal I had just left them as they were.

## What's next

My next step is to rebuild a subset of the packages again, the ones that
link against cpython, but this time setting Python 3.15 as the default
version. I expect this will uncover more bugs, as there are many
packages that only build for a single Python version, so just having
3.15 available doesn't cause them to build against it.

I know that you are using a debusine archive for your work. Is there some way that others can use that for testing, or even contributing with uploads?

Sure, the packages in debusine have a public repositories so you can use
them to build your packages having python 3.15 as a supported version
 deb http://deb.debusine.debian.net/debian/r-python-python3.15 sid-python3.15 
main

Or to build them using python 3.15 as the default version using:
 deb http://deb.debusine.debian.net/debian/r-python-python3.15 sid-python3.15 
main
 deb http://deb.debusine.debian.net/debian/r-python-python3.15 
sid-py315-default main

The corresponding signing key can be seen in 
https://deb.debusine.debian.net/debian/r-python-python3.15/

To build from a git repository, I use something like:
 gbp buildpackage --no-clean-source --git-builder='sbuild --no-run-lintian 
--extra-repository="deb http://deb.debusine.debian.net/debian/r-python-python3.15 
sid-python3.15 main" 
--extra-repository-key="/home/maxy/debian/python/signing-keys.asc"'

And then for autopkgtest:
 autopkgtest -o ../build-area/pyhst2 --add-apt-source="deb http://deb.debian.org/debian 
unstable contrib non-free" --add-apt-source="deb [trusted=yes] 
http://deb.debusine.debian.net/debian/r-python-python3.15 sid-python3.15 main" -U 
../build-area/pyhst2_2020c-8+py315.2_amd64.changes -- unshare --release unstable --arch amd64

I haven't managed to find the right invocation of gbp that calls sbuild
that passes the things that I need to autopkgtest. ¯\_(ツ)_/¯
Change to match your needs, of course.

To upload to debusine, any Debian developer can upload to these
repositories, for that you need a debusine client that's logged in
(using salsa). Then dput-ng can use debusine to make uploads.

This is my ~/.dput.d/profiles/debusine-py315.json
{
    "allow_unsigned_uploads": true,
    "debusine_scope": "debian",
    "debusine_workspace": "r-python-python3.15",
    "debusine_workflow": "sweep-sid-py315",
    "debusine_workflow_data": {
        "source_artifact": "@UPLOAD@"
    },
    "fqdn": "debusine.debian.net",
    "incoming": "/",
    "meta": "debusine",
    "method": "debusine"
}

And my ~/.dput.d/profiles/debusine-py315-default.json
{
    "allow_unsigned_uploads": true,
    "debusine_scope": "debian",
    "debusine_workspace": "r-python-python3.15",
    "debusine_workflow": "sweep-sid-py315",
    "debusine_workflow_data": {
        "source_artifact": "@UPLOAD@"
    },
    "fqdn": "debusine.debian.net",
    "incoming": "/",
    "meta": "debusine",
    "method": "debusine"
}

With those you can then push a package with:
 dput debusine-py315 $package_source_changes

My tooling has some limitations so, please push packages that have as
+py315.$N for the supported version and a +py315.d.$N for the default
version fake binNMU versioning so the dashboard processes the packages.

If somebody else needs access, I think I can add your salsa user so you
can upload to these debusine suites, ping me via irc and I'll give it a
try.

Another way to help, could be to give aws credits to freexian as, right
now, debusine.debian.net has a bottleneck on amd64 machines (I have no
affiliation to freexian).

Happy hacking,
--
"Brilliant opportunities are cleverly disguised as insolvable problems."
-- Gardener's Philosophy

"The reverse is also true." -- Corollary
Saludos /\/\ /\ >< `/

Attachment: signature.asc
Description: PGP signature

Reply via email to