-
-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sass/node-sass -> sass/dart-sass #296
base: master
Are you sure you want to change the base?
sass/node-sass -> sass/dart-sass #296
Conversation
Sorry for the long delay and thanks a lot. Just tested this on a small project and it looks fine. Honestly I have no idea why the tests are failing (the failures are probably not related to this PR). @sebakerckhof could you take a look at this? In my opinion it would be a good move to get away from |
This fails because dart-sass can't handle non-alpahetic characters at the start of an import, which we use for package imports, in line with other meteor css preprocessors. sass/dart-sass#1100 Also note that dart-sass, while faster than the old ruby implementation is still substantially slower than libsass. |
libsass and node-sass are officially deprecated now sass/node-sass@e2391c2 |
I had a discussion with the dart-sass people about the problem with the non-alphnumeric first character of the import. Long story short, they don't want to / can change it, so we would have to change it. This would be a major breaking change. So I'd like to schedule it together with Meteor 2.0 |
FYI: i'm working on a version with dart-sass. A bit more work is required than I thought at first sight and I hit a bug in dart-sass which is a blocker for now. But as soon as the bug is resolved I should have a beta pretty soon. As stated before, the import syntax is not going to be backwards compatible. |
Hey @sebakerckhof. Do you have a branch available that you could push? Not sure if I will be much use, but I could certainly try to help here. |
I saw this note in the README, just in case you weren't aware. No idea how much that will help, though.
|
@moberegger Yeah, and since we're using meteor, we can easily use fibers (but maybe not such a great idea seeing how fibers is deprecated). Anyway, performance issues aside, I'm still waiting on these 2 bugs to be fixed in dart-sass before we can have a working version based on dart-sass: |
@sebakerckhof any updates on this? Really need to import sass from node_modules |
Thank you for looking into this! Really appreciate it so far. I've updated PR to be compatible with current master version, and also bumped sass lib version (checked it as well, it works on my project well) Looking forward for further news on this one! I've noticed that bugs sass/dart-sass#1138 sass/dart-sass#1137 are resolved now, which is great news |
Would that be possible to revisit this PR, since the blocker sass/dart-sass#1137 was resolved? If dart-sass ends up being used in this package in some way or another, it'll increase its business value dramatically 👍 |
Hi there, any ETA for merge? |
Can people please take this for test. I currently don't have any scss project. |
I have tested this in a decent code base and could not find any issues - both for the local and production build. I think it is a pretty representative project using bootstrap and a bunch of Sass features. While testing, I bumped the sass dependency version to 1.64.2 and did not see any problems either. |
Thank you for looking into it @faburem . Updated version in PR to 1.64.2, hope it'll get merged soon! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Since it seems like even after updating to the latest node-sass the main issue which promted this PR won't be fixed I will release this as a major next version. |
I think there could be some misunderstanding because this PR does fix the main issue which prompted this PR for me at least, and I successfully use it in my production code. Unless something changed. |
Sorry I think the confusion comes from my wording "they are deprecated now" in #294 (comment) . What I meant there is that node-sass is deprecated. |
Hi @Firfi, I tried testing this version on our project, but I'm getting these errors:
I tried changing it to just I'm not sure what causes it (path issues, maybe?) When I reverted to the latest version, it started working again. Tested using Meteor 2.12, both on Windows 11 and Mac OS 13.0 (Intel) |
Is it possible for you to share the project or a minimal reproduction? I can try to look into it @dsmalicsi |
Hi, I've spent quite some time working on the integration of Meteor JS and Dart Sass. Given how things are evolving with Dart Sass, I wanted to share my approach before creating a separate pull request. I'm really curious to hear the feedback from the maintainer community on whether this direction is viable. I haven’t had the chance to test it comprehensively on different platforms like Windows, so I’d appreciate any input on that as well. Here’s the repo where I’ve explored the idea: my meteor-scss. If the community finds it useful and worth developing further, I’d be more than happy to collaborate and get this merged into the main package. Also, I’d be interested in contributing to the ongoing maintenance and development of this package in the future. Not too long ago, I created an issue about this topic (#322), but I realize now that this might not have been the right place to post it since it seems this PR already addresses some of the points I mentioned. :) |
@illusionfield I'm all for it. If you want to step up to maintain this package I'm happy to facilitate that. |
Thanks, @StorytellerCZ, I didn’t make a pull request yet because my approach brings a few new elements that are a bit different:
Let me know how you’d like to proceed – happy to jump in wherever it’s useful! Cheers, |
One of my ideas is to create a version of the plugin that acts purely as a bridge between the Sass compiler and Meteor. In this setup, developers could freely install the Dart Sass dependency via npm, depending on their preference ( This approach would make the Dart Sass dependency largely version-independent, requiring only compatibility checks between the plugin and specific Sass versions. Developers would have the flexibility to use whichever version of Sass they need, without relying on a specific version embedded in this package. It would also significantly reduce the need for frequent version or patch updates for this package while maintaining flexibility for developers. What do you think about this idea? |
It's not so big of PR now! Works pretty well for me.
Side note: I'm also currently use the code snippet from a4f6b9c#diff-2528c563afd9125ec438980adf8b65ca
to add css handling, would be nice to merge it sometime later : )