[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Allow installation on buster of a package not supporting 3.7 (async/await syntax error when generating bytecode)



On 11/8/18 9:15 AM, Adam Cécile wrote:
> Hello list,
> 
> 
> I have a package working perfectly fine on Pyrhon 3.6 but using
> async/await methods so it cannot work on python 3.7 at the moment.
> During package compilation, I popd 3.7 from supported version returned
> by py3version and it allows me to build the package just fine:
> 
> Problem: I cannot install it. Despite 3.7 was not "enabled" during
> build, when installing debian helpers try to compile bytecode for both
> 3.6 and 3.7 and fails. Is there any way to workaround that ?
> 
> 
> 
> Thanks in advance,
> 
> Adam.

Hi,

Unless your package has "async" or "await" as API, you should ...

...simply patch the bad code so that it doesn't include await / async
where it should not. I did this extensively for OpenStack, and that's
really not hard to do.

The most annoying one was Glance, as one of its folder was named
"async". It's annoying because a patch file cannot rename a folder with
zero byte files (and in Python, there's many __init__.py files...). So,
one has to rename the folder in debian/rules, and the rest of the patch
is done as usual (except that it's done *before* the folder rename).

I hope this helps,

Cheers,

Thomas Goirand (zigo)


Reply to: