Skip to content

Commit

Permalink
Add libsass
Browse files Browse the repository at this point in the history
The django-pyscss and pyscss libraries currently being used in Horizon
are not currently maintained and have an increasing number of problems
that we have to work around. We want to instead switch to using the
libsass library, which is using a C library of the same name under the
hood, which in turn contains the official implementation of the sass and
scss parsers.

python3-libsass

 * Is the library actively maintained?
    The library is a python wrapper for the official C libsass library,
    and it's updated with every libsass release.
    https://github.com/sass/libsass-python/commits/main/
 * Is the library good code?
    As far as I can tell, it's a correctly written python wrapper for C
    library. It includes tests.
 * Is the library license compatible?
    Yes, it's MIT license.
 * Is the library already packaged in the distros we target (Ubuntu
   latest / Fedora latest)?
    Yes.
    https://packages.fedoraproject.org/pkgs/python-libsass/python3-libsass/
    https://packages.ubuntu.com/oracular/python3-libsass
 * Is the function of this library already covered by other libraries in global-requirements.txt?
    Yes, we are replacing python3-pyscss because it's unmaintained and
    has problems with recent versions of Python.
 * Is the library required for OpenStack project or related dev or infrastructure setup? (Answer to this should be Yes, of course) Which?
    It's needed for openstack-dashboard, aka Horizon.
 * If the library release is managed by the Openstack release process does it use the cycle-with-intermediary release type?
    It's not managed by the OpenStack.

We no longer need django-libsass, we replaced it with our own code.

Change-Id: I6d5c895e36766c9b1e1bb41f4c98468ba1b51a64
  • Loading branch information
deshipu committed Dec 9, 2024
1 parent c55a1e5 commit 8d81cee
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 0 deletions.
1 change: 1 addition & 0 deletions global-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ django-compressor # MIT
django-debreach # BSD
django-formtools # BSD
django-pyscss # BSD License (2 clause)
libsass # MIT
Django<4.3 # BSD
# eventlet is not compatibile with 2.0.0: https://github.com/eventlet/eventlet/issues/619
dnspython!=2.0.0,!=2.2.0 # http://www.dnspython.org/LICENSE
Expand Down
1 change: 1 addition & 0 deletions upper-constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,7 @@ importlib-metadata===6.11.0;python_version>='3.10'
oslo.middleware===6.2.0
XStatic-mdi===1.6.50.2
django-pyscss===2.0.3
libsass===0.23.0
uritemplate===4.1.1
docutils===0.21.2
threadpoolctl===3.5.0
Expand Down

0 comments on commit 8d81cee

Please sign in to comment.