Please keep this on list.
Paul Tomblin writes:
Nope, it's still saying it depends on libapache2-mod-proxy-uwsgi | nginx, and there's no libapache2-mod-proxy-uwsgi. It appears that mod_proxy is in base apache now. Oddly I never enabled proxy_uwsgi in mods-enabled but mailman works. I should probably report it to Debian.
What depends on libapache2-mod-proxy-uwsgi? Mailman core doesn't depend on that at all. It always uses gunicorn as the WSGI server for the REST API, and the Apache config uses ProxyPass on port localhost:8001. And sez who? Are you asking apt or dpkg? I thought you have installed via pip into a virtual environment -- what apt and dpkg think about Mailman dependencies is irrelevant.
Is it possible to upgrade to 3.10 with pip?
If you installed using Debian, you can't upgrade with pip -- that's a Debian restriction. You have to remove the Debian package(s), and create a virtual environment, typically under /opt/mailman, to install the Mailman suite into. Then, if you have already working lists, you have to either (1) "very carefully" move all the /var/lib/mailman data from your working Debian install into /opt/mailman in appropriate places, or (2) configure the new Mailman to look for data where Debian put it (if you're lucky you can re-use Debian's /etc/mailman3/mailman.cfg for that, although they may have patched the source). The /var data is the queues (mostly bad and shunt, but you may have orphaned qfiles in out, and very very rarely in other queues), the logs, and any in-progress digests being accumulated. The list configurations, user profiles, and most volatile data (eg, pending confirmations) will be in your database. You can use the Debian packaged database, just point the new Mailman at that.
Yes: see https://pypi.org/project/mailman/. Use python3 -m pip install --upgrade mailman.
Nope, that doesn't work. python3 -m pip install --upgrade mailman 2>&1 | tee bar Requirement already satisfied: mailman in ./venv/lib/python3.13/site-packages (3.3.9)
Where is '.'? If it's under /var/lib or /var/share, you've got Debian's mailman and you can't upgrade with pip. You want it to be under /usr/local (ugh) or /opt/mailman (happy face).
Collecting mailman Using cached mailman-3.3.10-py3-none-any.whl.metadata (2.4 kB) [...] Requirement already satisfied: zope.schema>=4.9 in ./venv/lib/python3.13/site-packages (from zope.configuration->mailman) (8.1)
Are you saying pip returns to the shell prompt without doing anything after that?
If I'm reading that right, I have to guess which requirements I need to force an update on before it will upgrade mailman.
No, that's saying all requirements are satisfied for mailman-3.3.10 as far as I can tell. Are you working as the right user? (If you've previously used Debian packages and have working lists, you probably want to continue using Debian's preferred 'list' user, otherwise you may create a 'mailman' user.) If it's not lacking write permissions to the virtual environment, I have no idea why this isn't working. The only thing I can suggest is the same as Mark, force version 3.3.10 with
python3 -m pip install --upgrade mailman==3.3.10
and see what happens.
Steve
-- GNU Mailman consultant (installation, migration, customization) Sirius Open Source https://www.siriusopensource.com/ Software systems consulting in Europe, North America, and Japan
participants (1)
-
Stephen J. Turnbull