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?
--
Benjamin Drung
Debian & Ubuntu Developer