tox lowest-supported-dev tests fail
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-init |
Fix Released
|
Low
|
James Falcon |
Bug Description
I'm working on cloud-init with a view to adding support for the devuan distro (debian without systemd). I'm working on a local machine rather than a cloud provider, and I'm doing the development on devuan v4 (chimaera) based on debian 11 (bullseye) - so I can't run the commands ubuntu-bug or journalctl. The version of python 3 on devuan chimaera is 3.9.
When I run the tests, using tox, I get 140 failures from the lowest-
1) jinja2 tries to import soft_unicode() from the package markupsafe. This has been removed from recent versions of markupsafe, and this causes jinja2 to fail to initialise properly, resulting in errors like:
WARNING cloudinit.
The problem has been flagged up in markupsafe:
https:/
- but is apparently still unresolved. The recommended workaround is to use markupsafe 2.0.1, which was the last version to include soft_unicode(). This can be done by adding
markupsafe==2.0.1
to the deps in the [lowest-
2) In python 3.9, threading.
https:/
The recommendation is to use threading.
This breaks httpretty 0.9.5. The earliest version of httpretty in which this is fixed is 0.9.7
Changing "httpretty==0.9.5" to "httpretty==0.9.7" in tox.ini works around this.
With these two changes to tox.ini in place, tox on cloud-init under devuan 4 runs without failures.
Hope this is useful. Happy to provide further information if required.
description: | updated |
description: | updated |
Changed in cloud-init: | |
status: | New → In Progress |
importance: | Undecided → Low |
assignee: | nobody → James Falcon (falcojr) |
Changed in cloud-init: | |
status: | In Progress → Fix Committed |
Thanks, pd9370, for the detailed description.
lowest- supported- dev is supposed to run on the latest supported Python version, which may vary depending on the cloud-init version you are hacking with. One can find the minimum python version changes in the following documentation:
https:/ /cloudinit. readthedocs. io/en/latest/ topics/ contributing. html#python- support