Free software activity in October 2026
My Debian contributions this month were all sponsored by Freexian.
You can also support my work directly via Liberapay or GitHub Sponsors.
OpenSSH
I upgraded both openssh and openssh-gssapi from 10.5p1 to 10.6p1, started generating MLDSA44-ED25519 host keys by default now that upstream no longer considers them experimental, and fixed a problem where switching between the normal and GSS-API variants followed by purging the old packages caused some configuration files to disappear.
Python packaging
New upstream versions:
- afew (fixing a build failure with Python 3.15)
- django-render-block (fixing a build failure)
- djangorestframework (fixing a build failure)
- frescobaldi
- fsspec (fixing CVE-2026-104851)
- khal (fixing an ikhal crash at startup)
- pydantic (twice)
- pydantic-core (twice)
- pydantic-settings
- pygml
- pyinstaller-hooks-contrib (fixing a build failure)
- python-ast-serialize
- python-asyncvarlink
- python-blockbuster
- python-bytecode (fixing a build failure with Python 3.15)
- python-certifi (twice)
- python-cytoolz
- python-django-postgres-extra
- python-evalidate
- python-mitogen
- python-moto
- python-persistent
- python-typeguard (fixing a build failure with Python 3.15)
- toolz (fixing a build failure with Python 3.15)
- twisted (fixing CVE-2026-115774, CVE-2026-115775, CVE-2026-115776, CVE-2026-115778, CVE-2026-115877, and CVE-2026-83813)
- zope.hookable
- zope.i18nmessageid
- zope.interface
- zope.security
Other build/test failures:
- aiohttp-socks: Add python3-starlette and python3-uvicorn to autopkgtest dependencies
- celery: FTBFS: FAILED t/unit/utils/test_platforms.py::test_close_open_fds - AssertionError
- django-ninja: FTBFS: E AssertionError
- django-q: Fix autopkgtest failures with python-moto 5.2.4
- ipywidgets: FTBFS: src/utils.ts(4,44): error TS7016: Could not find a declaration file for module ‘base64-js’ (tracked down to node-base64-js and contributed a fix there, uploaded by Santiago Vila)
- isodate: FTBFS: includes a common build directory name ‘tests’ as a module
- mercurial: FTBFS on riscv64: Failed test-obsolete-bundle-strip.t: timed out
- mistune0: FTBFS: includes a common build directory name ‘tests’ as a module
- pybind11-stubgen: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-pybind11-stubgen/usr/lib/python3.15/dist-packages/pybind11_stubgen-3.0.0.dist-info’ was able to be merged into ‘debian/python3-pybind11-stubgen/usr/lib/python3/dist-packages/pybind11_stubgen-3.0.0.dist-info’ (contributed upstream)
- pydantic-core: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-pydantic-core/usr/lib/python3.15/dist-packages/.hypothesis/constants’ was able to be merged into ‘debian/python3-pydantic-core/usr/lib/python3/dist-packages/.hypothesis/constants’
- pydantic-settings: Fix test failures with pydantic 2.14
- pygml: FTBFS: E: dh_python3 fs:312: python3-pygml includes a common build directory name ‘tests’ as a module (contributed upstream)
- pyinstaller: Make autopkgtests work on more architectures
- pyrsistent: FTBFS with dh-python >= 7.20261019
- python-anyio: FTBFS: ValueError: server_hostname can only be specified in client mode
- python-asyncvarlink: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-asyncvarlink/usr/lib/python3.15/dist-packages/.hypothesis/constants’ was able to be merged into ‘debian/python3-asyncvarlink/usr/lib/python3/dist-packages/.hypothesis/constants’
- python-bcrypt: FTBFS: error: failed to select a version for the requirement
bcrypt-pbkdf = "^0.10.0" - python-django-postgres-extra: FTBFS: E: dh_python3 fs:312: python3-django-postgres-extra includes a common build directory name ‘tests’ as a module
- python-ecdsa: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-ecdsa/usr/lib/python3.15/dist-packages/.hypothesis/constants’ was able to be merged into ‘debian/python3-ecdsa/usr/lib/python3/dist-packages/.hypothesis/constants’
- python-elastic-transport: Make tests more reliable on slow architectures
- python-isoduration: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-isoduration/usr/lib/python3.15/dist-packages/.hypothesis/constants’ was able to be merged into ‘debian/python3-isoduration/usr/lib/python3/dist-packages/.hypothesis/constants’
- python-lsp-mypy: FTBFS: E: dh_python3 fs:172: Not everything in ‘debian/python3-pylsp-mypy/usr/lib/python3.15/dist-packages/.mypy_cache/3.14’ was able to be merged into ‘debian/python3-pylsp-mypy/usr/lib/python3/dist-packages/.mypy_cache/3.14’
- python-multidict: FTBFS: includes a common build directory name ‘tests’ as a module
- python-serializable: FTBFS: includes a common build directory name ‘tests’ as a module
- python-trame-server: FTBFS: E ModuleNotFoundError: No module named ‘more_itertools’
- python-urllib3: FTBFS: E ValueError: check_hostname requires server_hostname
- python-ws4py: FTBFS: E: dh_python3 fs:312: python3-ws4py includes a common build directory name ‘test’ as a module
- sphinx-rst-linker: FTBFS: E ModuleNotFoundError: No module named ‘jaraco’
- sphinxcontrib-seqdiag: FTBFS: includes a common build directory name ‘tests’ as a module
Since lots of Python modules use Rust extensions nowadays, we often have to help with upgrades of Rust packages. I did some of this:
- PyO3 0.29 (which needs more help!): blake3-py, cbor2, pendulum, pysequoia, python-ahocorasick-rs, python-cotengrust, python-jellyfish, python-ormar-utils, python-watchfiles, rpds-py, and unicode-segmentation-rs
- Upgraded python-maturin from 1.9.4 to 1.16.0 to help with several other upgrades; this was a major upgrade involving more or less completely reworking our patch set.
Other bugs:
One of my hobbies is typesetting (“engraving”) music, sometimes for my own use, sometimes for teaching, and sometimes for my choir. I’ve used LilyPond for a long time and have got pretty used to it. My workflow was a bit cumbersome, though, usually involving side-by-side editor and PDF viewer windows with some ad-hoc Makefiles and editor macros. I recently discovered the Frescobaldi frontend to LilyPond, and decided I liked it enough to switch over to it. It was already packaged in Debian, but it had a missing desktop entry and icon and missing translations; I fixed those based on a patch set by Joachim Wiedorn. My upload introduced a testing migration problem, which I also fixed.
Rust packaging
I upgraded rust-jiter and rust-smallvec to new upstream versions for a new version of pydantic-core. The rust-smallvec upgrade caused an FTBFS in rust-saphyr-parser-bw, which I fixed.
I packaged rust-cargo-cyclonedx for a new version of python-maturin. This needed some porting to work with a new version of rust-cargo-metadata, which I contributed upstream.
I improved the dev/list-rdeps.sh tool used by the Rust team to check build-depends too, which should make it easier for that team to remember Python packages in transitions.
Code reviews
- debbugs: Fix autopkgtests (merged)
- openssh-gssapi: d/t/purge-keeps-config-with-counterpart: test for purge (merged)
- openssh: d/t/purge-keeps-config-with-counterpart: test for purge (merged)
- python-datamodel-code-generator: Upgrade to 0.85.0 (sponsored upload for Nico Della Torre)
- python-pyramid-tm: FTBFS: ModuleNotFoundError: No module named ‘pkg_resources’ (sponsored upload for Maximilian Engelhardt)
11 November, 2026 10:01AM by Colin Watson



out' position" alt="The whole CR box assembled, with the fan in the 'in -> out' position">

















EmacsConf 2026 community panel - my comments
This is a recollection of my comments from the EmacsConf 2026 community panel recording session this past weekend, where the panellists took turns answering the proposed questions, one minute per question per panellist.
In addition to the live Q&A session planned for Saturday 12 December 2026 during EmacsConf 2026, all Emacs users and community members are invited to share their thoughts on the panel questions or other questions before or after the conference.
https://emacsconf.org/2026/talks/community/
I started using Emacs during my bachelor's studies. I actually learned about Vim first and was a Vim user, but I'd always found the configuration language (VimScript) a little bit clunky. Not long after, I discovered Emacs, and really loved reading and writing Emacs Lisp, so I stuck around.
In addition to reading and writing Elisp being fun and enjoyable for me, I love that Emacs has been a practical embodiment of software freedom, and I'm really fond of its surrounding culture of sharing freely. There's a lot to love and appreciate about Emacs, but as a practical personal example, I've been grateful for its excellent support for bidirectional text editing. It has empowered me to read and write in Persian, my mother tongue, with ease. (Persian has a right-to-left alphabet, like Arabic and Hebrew.)
As I continued experimenting and writing bits and pieces of Elisp to scratch my own itches, I felt compelled to share them freely as a way of giving back to the community that gave me so much.
For me, the community and the people that make it up are the main deal. Emacs wouldn't be where it is and what it is today without its people, so besides programming contributions, I've tried to contribute in that area as well, for instance by reviving EmacsConf with Sacha Chua back in 2019.
I don't physically have people near me who use Emacs, but I've connected with many folks in our online communities, often starting with an email or IRC message. Some of those relationships started as acquaintanceship and were developed into true friendship over time, and I'm grateful to have had those friends with me.
I would encourage Emacs, our community, to focus on the people. We're living in particularly difficult times, with various kinds of hardships and uncertainty in our lives. Let's strive to treat each other with kindness, empathy, and mindfulness as we continue working together.
There are great examples of other free software communities whose members have banded together and are strengthening each other and their community, as well as cautionary ones where community members have been tiring and driving out their fellow members. We could learn valuable lessons from both in how to take care of our people and ourselves.
I echoed the sentiments of my fellow panellists Prot and Til about doing more of the same in terms of continuing to uphold the standards of excellence and perseverance. Also, drawing inspiration from what bashbunni said, to lower the barriers of entry for people, for example through organizing different kinds of events, and experimenting with ways to make people's lengthy, elaborate Emacs configurations more tangible and accessible to others, to share various workflows and demonstrate what's possible with Emacs.
I look forward to your thoughts on these and other community-related questions.
Take care, and so long for now.
09 November, 2026 09:57PM