Background
Part of:
Subtasks
Notes
This is blocked by upgrading to node-sass or dart-sass. That's because, with libsass-python (our current compliation mechanism), there are two ways to compile Sass, and neither are satisfactory:
- The Python API (
sass.compile(..)), which we currently use, cannot not be elegantly called from a shell script. It'd have to be implemented with brittle command along the lines of:
python -c "import sass; sass.compile(dirname=('$sass_src', '$css_dest'), include_paths=$include_paths, ... )"
where $include_paths would have to be stitched together, in shell. That all sounds like a step backwards rather than in improvement.
- The command line interface that comes with the library,
sassc does not accept directories as parameters, only individual files. We'd need to implement the logic to compile every file in a directory ourselves.
Background
Part of:
Subtasks
scripts/assets/compile-sass.sh, re-implementing the functionality ofpavelib/assets.py:_compile_sass.pavelib/assets.py:_compile_sasswith a simple call to the new shell script.Notes
This is blocked by upgrading to node-sass or dart-sass. That's because, with libsass-python (our current compliation mechanism), there are two ways to compile Sass, and neither are satisfactory:
sass.compile(..)), which we currently use, cannot not be elegantly called from a shell script. It'd have to be implemented with brittle command along the lines of:python -c "import sass; sass.compile(dirname=('$sass_src', '$css_dest'), include_paths=$include_paths, ... )"$include_pathswould have to be stitched together, in shell. That all sounds like a step backwards rather than in improvement.sasscdoes not accept directories as parameters, only individual files. We'd need to implement the logic to compile every file in a directory ourselves.