← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1980854] [NEW] tox lowest-supported-dev tests fail

 

Public bug reported:

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-
supported-dev environment. I've identified that they're caused by two
problems:

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.templater:templater.py:128 Jinja not available as
the selected renderer for desired template, reverting to the basic
renderer.

The problem has been flagged up in markupsafe:

https://github.com/pallets/markupsafe/issues/304

- 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-supported-deps] section of tox.ini, directly
below jinja==2.10

2) In python 3.9, threading.Thread.isAlive has been removed:

https://github.com/spotify/luigi/issues/2939

The recommendation is to use threading.Thread.is_alive instead.

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.

** Affects: cloud-init
     Importance: Undecided
         Status: New

** Description changed:

  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-
  supported-dev environment. I've identified that they're caused by two
  problems:
  
  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.templater:templater.py:128 Jinja not available as
  the selected renderer for desired template, reverting to the basic
  renderer.
  
  The problem has been flagged up in markupsafe:
  
  https://github.com/pallets/markupsafe/issues/304
  
  - 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-supported-deps] section of tox.ini, directly
- below jinja=2.10
- 
+ below jinja==2.10
  
  2) In python 3.9, threading.Thread.isAlive has been removed:
  
  https://github.com/spotify/luigi/issues/2939
  
  The recommendation is to use threading.Thread.is_alive instead.
  
  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.

** Description changed:

  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-
  supported-dev environment. I've identified that they're caused by two
  problems:
  
  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.templater:templater.py:128 Jinja not available as
  the selected renderer for desired template, reverting to the basic
  renderer.
  
  The problem has been flagged up in markupsafe:
  
  https://github.com/pallets/markupsafe/issues/304
  
  - 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-supported-deps] section of tox.ini, directly
  below jinja==2.10
  
  2) In python 3.9, threading.Thread.isAlive has been removed:
  
  https://github.com/spotify/luigi/issues/2939
  
  The recommendation is to use threading.Thread.is_alive instead.
  
  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.

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1980854

Title:
  tox lowest-supported-dev tests fail

Status in cloud-init:
  New

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-
  supported-dev environment. I've identified that they're caused by two
  problems:

  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.templater:templater.py:128 Jinja not available as
  the selected renderer for desired template, reverting to the basic
  renderer.

  The problem has been flagged up in markupsafe:

  https://github.com/pallets/markupsafe/issues/304

  - 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-supported-deps] section of tox.ini,
  directly below jinja==2.10

  2) In python 3.9, threading.Thread.isAlive has been removed:

  https://github.com/spotify/luigi/issues/2939

  The recommendation is to use threading.Thread.is_alive instead.

  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.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1980854/+subscriptions



Follow ups