picturepan2 / spectre

Spectre.css - A Lightweight, Responsive and Modern CSS Framework

Home Page:https://picturepan2.github.io/spectre/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Does not compile anymore in a Python 3 environment

dmoklaf opened this issue · comments

Python 2 is now deprecated. In a Python 3 environment the "npm install" command fails as it tries to run node-gyp in a deprecated (from the Python 2 era) 3.8 version (instead of 7.1.2) against the Python 3 interpreter.

Closer inspection reveals the wrong installed version of node-gyp is due to the node-sass component which is itself installed in an old version by the gulp-sass component. One solution could be to have gulp-sass upgrade its node-sass dependency:
dlmanning/gulp-sass#782

However this ticket has been in limbos for 2 months, and node-sass is deprecated anyway - it recommends now to use node-dart-sass which is the now target environment to compile sass files. I suspect it explains why gulp-sass has received no updates, in favor of gulp-dart-sass.

A clean solution is consequently for Spectre to depends on gulp-dart-sass instead of gulp-sass. It requires only to update the packages.json and gulpfile.js files.

I noticed it also accelerates considerably the build times as node-sass had a very heavy and lengthy C++ compilation stage, that is now instantaneous thanks to dart.

I could contribute the patch if the principle (replacing gulp-sass with gulp-dart-sass) is validated. It has been running smoothly for 9 day now, across many rebuilds, without any issue.

Hello, is there any interest in this? Thx