Closed barrymcgee closed 8 years ago
The NPM module nesting change does not effect vanilla-framework
itself, as it has no sass dependencies, and no-where in this project either specifies an NPM version or is dependent on any specific version.
The place where NPM3 support needs to be implemented is in each Vanilla theme. Lines like this one
@import '../node_modules/vanilla-framework/scss/vanilla';
Needs to be changed to:
@import 'vanilla-framework/scss/vanilla';
E.g.: in ubuntu-vanilla-theme.
The node_modules
folder then needs to be included in the sass include path when the sass is built in any project which uses the theme.
It is perfectly safe to update this in each vanilla theme as soon as anyone gets to it. This will not break any sites as all the vanilla themes are versioned. However, when the new version for a theme is published, no site will be able to use the new version until it updates its build system to use NPM3 and set up the sass include path correctly.
@import 'vanilla-framework/scss/vanilla';
form as and when we get to themeI've updated all the themes we currently have with issues to update to the new way of including vanilla:
I've also added issues into all the sites I could find which use vanilla themes to get their SASS building systems updated to set the include-path
as needed:
Given that this is now tracked everywhere else that the work actually needs to happen, I'm going to close this.
We should upgrade to NPM 3. The improvements and key differences over NPM2 are documented here:
https://docs.npmjs.com/how-npm-works/npm3