On Tue, Jul 21, 2026 at 12:51:44PM +0200, Benjamin Drung wrote:
On Tue, 2026-07-21 at 10:38 +0100, Colin Watson wrote:
On Sun, Jul 19, 2026 at 01:25:48AM +0200, Hefee wrote:
> python3-invoke 3.0 is not compatible with fabric. As woraround please
> update the dependencies.
>
> With python3-invoke 3.0.3+ds-1:
>
> % fab -H server createCsv
> Traceback (most recent call last):
> File "/usr/bin/fab", line 33, in <module>
> sys.exit(load_entry_point('fabric==3.2.2', 'console_scripts', 'fab')())
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
> File "/usr/lib/python3/dist-packages/invoke/program.py", line 398, in run
> self.execute()
> ~~~~~~~~~~~~^^
> File "/usr/lib/python3/dist-packages/invoke/program.py", line 583, in execute
> executor.execute(*self.tasks)
> ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
> File "/usr/lib/python3/dist-packages/invoke/executor.py", line 141, in
execute
> context = call.make_context(config, core_parse_result=self.core)
> TypeError: ConnectionCall.make_context() got an unexpected keyword argument
'core_parse_result'
>
> Downgrade to python3-invoke 2.2.0-2 resolves the issue. As workaround
> until upstream fixed that - please update the dependencies against
> python3-invoke << 3.0 to have a working fabric.
That won't achieve anything useful. It will just make fabric
uninstallable and unable to migrate to testing, which would itself be an
RC bug.
While this has been fixed upstream
(https://github.com/fabric/fabric/commit/7fa309db9dd5dac69079c1fb83b6f579555f7d53),
apparently it's "(technically) backwards incompatible"
(https://github.com/fabric/fabric/commit/63f3d9bdadb7bd2c0b9eb67434a6237261e658f8).
I'm not sure what's best for Debian to do here. Ideally we wouldn't
have upgraded to the new invoke until fabric had a matching release.
It's unfortunate that python-invoke made it to testing despite this; I
guess that's because fabric currently lacks autopkgtests.
CCing bdrung, who uploaded the new python-invoke.
That's very unfortunately. After looking at the fabric upstream repo I
think the best way forward is:
* package the upstream git main branch as 4.0.0~git$date
* run the upstream tests during build and as autopkgtest to avoid this
(invoke migrating and breaking fabric) to happen again
What do you think?
Maybe we should consult with upstream (CCed) before doing that. I
notice that there haven't been any changes to git in a few months; is
there a plan for a 4.0 release soon?
(Another possibility would be to revert python-invoke to 2.x in Debian
for now, I guess.)
Thanks,
--
Colin Watson (he/him) [[email protected]]