From 6231c69334ec62fcb91373650b7cdaad6d6ba9cb Mon Sep 17 00:00:00 2001 From: Colin Watson Date: Fri, 1 Nov 2024 12:21:31 +0000 Subject: [PATCH] Free software activity in October 2024 --- content/activity-2024-10.md | 179 ++++++++++++++++++++++++++++++++++++ posted_on_Mastodon.txt | 1 + 2 files changed, 180 insertions(+) create mode 100644 content/activity-2024-10.md diff --git a/content/activity-2024-10.md b/content/activity-2024-10.md new file mode 100644 index 00000000..91c98107 --- /dev/null +++ b/content/activity-2024-10.md @@ -0,0 +1,179 @@ +Title: Free software activity in October 2024 +Slug: activity-2024-10 +Date: 2024-11-01 12:19:04 +00:00 +Category: columbiform +Tags: activity, columbiform, freexian, planet-debian, planet-ubuntu +Summary: Ansible, OpenSSH, and lots of Python. +Mastodon-ID: 113407659872939632 + +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). + +## Ansible + +I noticed that [Ansible](https://www.ansible.com/) had fallen out of Debian +testing due to autopkgtest failures. This seemed like a problem worth +fixing: in common with many other people, we use Ansible for configuration +management at Freexian, and it probably wouldn't make our sysadmins too +happy if they upgraded to trixie after its release and found that Ansible +was gone. + +The problems here were really just slogging through test failures in both +the `ansible-core` and `ansible` packages, but their test suites are large +and take a while to run so this took some time. I was able to contribute a +few small fixes to various upstreams in the process: + +* [test: Make git archive prefix fit in 32-bit + `ssize_t`](https://github.com/ansible/ansible/pull/84129) (though upstream + went for a different approach) +* [test: replace more deprecated + `assertEquals`](https://github.com/ansible-collections/community.grafana/pull/406) +* [Fix import error on Python + 3.13](https://github.com/ansible-collections/community.mongodb/pull/684) +* [Make `test_start_daemon_with_no_mock` less + flaky](https://github.com/ansible-collections/cloud.common/pull/162) + +This should now get back into testing tomorrow. + +## OpenSSH + +Martin-Éric Racine +[reported](https://github.com/jtesta/ssh-audit/issues/291) that `ssh-audit` +didn't list the `ext-info-s` feature as being available in Debian's OpenSSH +9.2 packaging in bookworm, contrary to what OpenSSH upstream said on their +[specifications page](https://www.openssh.com/specs.html) at the time. I +spent some time looking into this and realized that upstream was mistakenly +saying that implementations of `ext-info-c` and `ext-info-s` were added at +the same time, while in fact `ext-info-s` was added rather later. +`ssh-audit` now has clearer output, and the OpenSSH maintainers have +corrected their specifications page. + +I looked into a [report](https://bugs.debian.org/1041521) of an `ssh` +failure in certain cases when using GSS-API key exchange (which is a Debian +patch). Once again, having [integration +tests]({filename}/activity-2024-05.md) was a huge win here: the affected +scenario is quite a fiddly one, but I was able to set it up in the +[test](https://salsa.debian.org/ssh-team/openssh/-/blob/master/debian/tests/ssh-gssapi), +and thereby make sure it doesn't regress in future. It still took me a +couple of hours to get all the details right, but in the past this sort of +thing took me much longer with a much lower degree of confidence that the +fix was correct. + +On upstream's +[advice](https://lists.mindrot.org/pipermail/openssh-unix-dev/2024-October/041682.html), +I cherry-picked some key exchange fixes needed for big-endian architectures. + +## Python team + +I packaged [python-evalidate](https://bugs.debian.org/1085206), needed for a +new upstream version of buildbot. + +The Python 3.13 transition rolls on. I fixed problems related to it in +[htmlmin](https://bugs.debian.org/1084575), +[humanfriendly](https://bugs.debian.org/1084718), +[postgresfixture](https://bugs.debian.org/1082143) ([contributed +upstream](https://code.launchpad.net/~cjwatson/postgresfixture/py313/+merge/474603)), +[pylint](https://bugs.debian.org/1084621), +[python-asyncssh](https://bugs.debian.org/1084679) ([contributed +upstream](https://github.com/ronf/asyncssh/pull/697)), +[python-oauthlib](https://bugs.debian.org/1082235), +[python3-simpletal](https://bugs.debian.org/1084589), +[quodlibet](https://bugs.debian.org/1084610), +[zope.exceptions](https://bugs.debian.org/1082339), and +[zope.interface](https://bugs.debian.org/1081541). + +A trickier Python 3.13 issue involved the `cgi` module. Years ago I [ported +zope.publisher to the multipart module]({filename}/lp-python3.md) because +`cgi.FieldStorage` was broken in some situations, and as a result I got a +[recommendation](https://github.com/python/peps/pull/2306) into Python's +["dead batteries" PEP 594](https://peps.python.org/pep-0594/). +Unfortunately there turns out to be a [name conflict between multipart and +python-multipart on +PyPI](https://github.com/pypa/packaging-problems/issues/818); +python-multipart upstream has been [working to disentangle +this](https://github.com/Kludex/python-multipart/pull/166), though we still +need to [work out what to do in Debian](https://bugs.debian.org/1085728). +All the same, I needed to fix +[python-wadllib](https://bugs.debian.org/1082280) and multipart seemed like +the best fit; I [contributed a port +upstream](https://code.launchpad.net/~cjwatson/wadllib/+git/wadllib/+merge/474861) +and temporarily copied multipart into Debian's python-wadllib source package +to allow its tests to pass. I'll come back and fix this properly once we +sort out the multipart vs. python-multipart packaging. + +tzdata +[moved](https://tracker.debian.org/news/1573095/accepted-tzdata-2024b-3-source-into-unstable/) +some timezone definitions to tzdata-legacy, which has broken a number of +packages. I added tzdata-legacy build-dependencies to +[alembic](https://bugs.debian.org/1086253) and +[python-icalendar](https://bugs.debian.org/1086374) to deal with this in +those packages, though there are still some other instances of this left. + +I tracked down an [nltk regression](https://bugs.debian.org/1084385) that +caused build failures in many other packages. + +I fixed Rust crate versioning issues in +[pydantic-core](https://bugs.debian.org/1084322), +[python-bcrypt](https://bugs.debian.org/1084329), and +[python-maturin](https://bugs.debian.org/1081875) (mostly fixed by Peter +Michael Green and Jelmer Vernooij, but it needed a little extra work). + +I fixed other build failures in +[entrypoints](https://bugs.debian.org/1052826), +[mayavi2](https://bugs.debian.org/1082685), +[python-pyvmomi](https://bugs.debian.org/1052793) (mostly fixed by Alexandre +Detiste, but it needed a little extra work), and +[python-testing.postgresql](https://bugs.debian.org/1018589) (ditto). + +I fixed [python3-simpletal](https://bugs.debian.org/1080724) to tolerate +future versions of dh-python that will drop their dependency on +python3-setuptools. + +I fixed broken symlinks in [python-treq](https://bugs.debian.org/988773). + +I removed (build-)depends on python3-pkg-resources from +[alembic](https://bugs.debian.org/1083301), +[autopep8](https://bugs.debian.org/1083309), +[buildbot](https://bugs.debian.org/1083325), +[celery](https://bugs.debian.org/1083331), +[flufl.enum](https://bugs.debian.org/1083398), +[flufl.lock](https://bugs.debian.org/1083400), +[python-public](https://bugs.debian.org/1083685), +[python-wadllib](https://bugs.debian.org/1083718) ([contributed +upstream](https://code.launchpad.net/~cjwatson/wadllib/+git/wadllib/+merge/474798)), +[pyvisa](https://bugs.debian.org/1083732), +[routes](https://bugs.debian.org/1083757), +[vulture](https://bugs.debian.org/1083983), and +[zodbpickle](https://bugs.debian.org/1084003) ([contributed +upstream](https://github.com/zopefoundation/zodbpickle/pull/99)). + +I upgraded astroid, asyncpg (fixing a [Python 3.13 +failure](https://bugs.debian.org/1081995) and a [build +failure](https://bugs.debian.org/1084240)), buildbot (noticing an [upstream +test bug](https://github.com/buildbot/buildbot/pull/8137) in the process), +dnsdiag, frozenlist, netmiko (fixing a [Python 3.13 +failure](https://bugs.debian.org/1084527)), psycopg3, pydantic-settings, +pylint, python-asyncssh, python-bleach, python-btrees, python-cytoolz, +python-django-pgtrigger, python-django-test-migrations, python-gssapi, +python-icalendar, python-json-log-formatter, python-pgbouncer, +python-pkginfo, python-plumbum, python-stdlib-list, python-tokenize-rt, +python-treq (fixing a [Python 3.13 +failure](https://bugs.debian.org/1084541)), python-typeguard, python-webargs +(fixing a [build failure](https://bugs.debian.org/1082393)), pyupgrade, +[pyvisa](https://bugs.debian.org/1084175), +[pyvisa-py](https://bugs.debian.org/1084176) (fixing a [Python 3.13 +failure](https://bugs.debian.org/1084620)), toolz, twisted, vulture, +waitress (fixing [CVE-2024-49768](https://bugs.debian.org/1086467) and +[CVE-2024-49769](https://bugs.debian.org/1086468)), wtf-peewee, wtforms, +zodbpickle, zope.exceptions, zope.interface, zope.proxy, zope.security, and +zope.testrunner to new upstream versions. + +I tried to fix a [regression](https://bugs.debian.org/1081851) in +python-scruffy, but I need testing feedback. + +I requested removal of +[python-testing.mysqld](https://bugs.debian.org/1018588). diff --git a/posted_on_Mastodon.txt b/posted_on_Mastodon.txt index 51ec3a42..27c47e25 100644 --- a/posted_on_Mastodon.txt +++ b/posted_on_Mastodon.txt @@ -6,6 +6,7 @@ activity-2024-06.html activity-2024-07.html activity-2024-08.html activity-2024-09.html +activity-2024-10.html apt-resolver-bugs.html automatic-installability-checking.html binfmt-support-2.2.0.html -- 2.30.2