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

Reply via email to