--- /dev/null
+Title: Free software activity in September 2024
+Slug: activity-2024-09
+Date: 2024-10-01 13:57:39 +01:00
+Category: columbiform
+Tags: activity, columbiform, freexian, planet-debian, planet-ubuntu
+
+Almost all of my Debian contributions this month were
+[sponsored](https://www.freexian.com/about/debian-contributions/) by
+Freexian.
+
+You can also support my work directly via
+[Liberapay](https://liberapay.com/cjwatson).
+
+## Pydantic
+
+My main Debian project for the month turned out to be getting
+[Pydantic](https://github.com/pydantic/pydantic) back into a good state in
+Debian testing. I've used Pydantic quite a bit in various projects, most
+recently in [Debusine](https://freexian-team.pages.debian.net/debusine/), so
+I have an interest in making sure it works well in Debian. However, it had
+been stalled on 1.10.17 for quite a while due to the complexities of getting
+2.x packaged. This was partly making sure everything else could cope with
+the transition, but in practice mostly sorting out packaging of its [new
+Rust dependencies](https://github.com/pydantic/pydantic-core). Several
+other people (notably Alexandre Detiste, Andreas Tille, Drew Parsons, and
+Timo Röhling) had made some good progress on this, but nobody had quite got
+it over the line and it seemed a bit stuck.
+
+Learning Rust is on my to-do list, but merely not knowing a language [hasn't
+stopped me before]({filename}/porting-ghc-a-tale-of-two-architectures.md).
+So I learned [how the Debian Rust team's packaging
+works](https://salsa.debian.org/rust-team/debcargo-conf), upgraded a few
+packages to new upstream versions (including
+[rust-half](https://salsa.debian.org/rust-team/debcargo-conf/-/merge_requests/716)
+and [upstream rust-idna](https://github.com/servo/rust-url/pull/963) test
+fixes), and packaged [rust-jiter](https://crates.io/crates/jiter). After a
+lot of waiting around for various things and chasing some failures in other
+packages I was eventually able to get current versions of both pydantic-core
+and pydantic into testing.
+
+I'm looking forward to being able to drop our clunky v1 compatibility code
+once debusine can rely on running on trixie!
+
+## OpenSSH
+
+I upgraded the Debian packaging to [OpenSSH
+9.9p1](https://www.openssh.com/releasenotes.html#9.9p1).
+
+## YubiHSM
+
+I upgraded python-yubihsm, yubihsm-connector, and yubihsm-shell to new
+upstream versions.
+
+I noticed that I could enable some tests in python-yubihsm and
+yubihsm-shell; I'd previously thought the whole test suite required a real
+YubiHSM device, but when I looked closer it turned out that this was only
+true for some tests.
+
+I fixed yubihsm-shell build failures on some 32-bit architectures (upstream
+PRs [#431](https://github.com/Yubico/yubihsm-shell/pull/431),
+[#432](https://github.com/Yubico/yubihsm-shell/pull/432)), and also made it
+[build
+reproducibly](https://salsa.debian.org/pkg-security-team/yubihsm-shell/-/commit/b74e38e88bd6492381f67aebb4741083218dd163).
+
+Thanks to Helmut Grohne, I fixed yubihsm-connector to [apply udev rules to
+existing devices when the package is
+installed](https://bugs.debian.org/1081398).
+
+As usual, bookworm-backports is up to date with all these changes.
+
+## Python team
+
+[setuptools
+72.0.0](https://setuptools.pypa.io/en/latest/history.html#v72-0-0) removed
+the venerable `setup.py test` command. This caused some fallout in Debian,
+some of which was quite non-obvious as packaging helpers sometimes fell back
+to different ways of running test suites that didn't quite work. I fixed
+[django-guardian](https://bugs.debian.org/1080102),
+[manuel](https://bugs.debian.org/1079748),
+[python-autopage](https://bugs.debian.org/1080278),
+[python-flask-seeder](https://bugs.debian.org/1080280),
+[python-pgpdump](https://bugs.debian.org/1080232),
+[python-potr](https://bugs.debian.org/1080282),
+[python-precis-i18n](https://bugs.debian.org/1079767),
+[python-stopit](https://bugs.debian.org/1079761),
+[serpent](https://bugs.debian.org/1080234),
+[straight.plugin](https://bugs.debian.org/1080287),
+[supervisor](https://bugs.debian.org/1079757), and
+[zope.i18nmessageid](https://bugs.debian.org/1080145).
+
+As usual for new language versions, the addition of Python 3.13 caused some
+problems. I fixed [psycopg2](https://bugs.debian.org/1081431),
+[python-time-machine](https://bugs.debian.org/1081477), and
+[python-traits](https://bugs.debian.org/1081478).
+
+I fixed build/autopkgtest failures in
+[keymapper](https://bugs.debian.org/1080857),
+[python-django-test-migrations](https://bugs.debian.org/1072607),
+[python-rosettasciio](https://salsa.debian.org/python-team/packages/python-rosettasciio/-/commit/879e9a18d2010f7386417b79326c9f39a007b0b8),
+[routes](https://bugs.debian.org/1058236),
+[transmissionrpc](https://bugs.debian.org/1071724), and
+[twisted](https://bugs.debian.org/1081419).
+
+buildbot was in [a bit of a mess](https://bugs.debian.org/1073001) due to
+being incompatible with SQLAlchemy 2.0. Fortunately by the time I got to it
+upstream had committed a workable set of patches, and the main difficulty
+was figuring out what to cherry-pick since they haven't made a new upstream
+release with all of that yet. I figured this out and got us up to 4.0.3.
+
+Adrian Bunk [asked](https://bugs.debian.org/1081014) whether python-zipp
+should be removed from trixie. I spent some time investigating this and
+concluded that the answer was no, but looking into it was an interesting
+exercise anyway.
+
+On the other hand, I looked into flask-appbuilder, concluded that it should
+be removed, and filed a [removal request](https://bugs.debian.org/1081148).
+
+I upgraded some embedded CSS files in
+[nbconvert](https://bugs.debian.org/1082665).
+
+I upgraded importlib-resources, ipywidgets, jsonpickle, pydantic-settings,
+pylint (fixing a [test failure](https://bugs.debian.org/1079751)),
+python-aiohttp-session, python-apptools, python-asyncssh,
+python-django-celery-beat, python-django-rules, python-limits,
+python-multidict, python-persistent, python-pkginfo, python-rt, python-spur,
+python-zipp, stravalib, transmissionrpc, vulture, zodbpickle,
+zope.exceptions ([adopting it](https://bugs.debian.org/948808)),
+zope.i18nmessageid, zope.proxy, and zope.security to new upstream versions.
+
+## debmirror
+
+The `experimental` and `*-proposed-updates` suites used to not have
+`Contents-*` files, and a long time ago debmirror was changed to just skip
+those files in those suites. They were added to the Debian archive some
+time ago, but debmirror carried on skipping them anyway. Once I realized
+what was going on, I removed these unnecessary special cases
+([#819925](https://bugs.debian.org/819925),
+[#1080168](https://bugs.debian.org/1080168)).