Skip to content
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

Please rebuild native gems then release new gem version #237

Open
johnnyshields opened this issue May 17, 2022 · 11 comments · May be fixed by #238
Open

Please rebuild native gems then release new gem version #237

johnnyshields opened this issue May 17, 2022 · 11 comments · May be fixed by #238

Comments

@johnnyshields
Copy link

Please release a new version of sassc-ruby which includes the latest binaries for all platforms. This will require updating your rake-compiler-dock version.

In particular, the x64-mingw-ucrt architecture needs to be built for Windows on Ruby 3.1.

This will fix many of the issues users are reporting recently.

@johnnyshields johnnyshields changed the title Rebuild native gems + Ruby 3.1 support Please rebuild native gems then release new gem version May 17, 2022
@johnnyshields
Copy link
Author

@bolandrm need your help on this one.

@johnnyshields
Copy link
Author

#238 fixes this.

@johnnyshields
Copy link
Author

@bolandrm or anyone, can you please help on this? Is this gem still maintained?

@chadlwilson
Copy link

chadlwilson commented Oct 17, 2022

@johnnyshields As mentioned in #239 and #220 (based on my own research), it might be reasonable to consider this as dead. Work seems to have migrated to dart-sass and given libsass is deprecated, which is at the core of this gem I suppose it doesn't have a big reason to exist, longer term.

As referred to by others in #220, I have had great success moving to https://github.com/ntkme/sassc-embedded-shim-ruby to thus depend on dart-sass with minimal changes and no need to compile dependencies or worry about platforms (and still being able to use sprockets/rails which was useful in my particular case), which I'd encourage you to have a look at. Can see an example of a migration at gocd/gocd#10794 if it's useful (JRuby project, but still).

@johnnyshields
Copy link
Author

@chadlwilson thank you for the reply. Would you be willing to let me/my company take over on extended life maintenance, as there are quite a few people out there still using it and and wanting to upgrade to latest Ruby etc releases?

@chadlwilson
Copy link

@johnnyshields I'm not a maintainer - just another community user sharing my experience. 😉 Happened to be subscribed to this issue as I was also struggling trying to build libsass on Windows as well earlier.

I subsequently discovered the sassc-ruby shim to delegate to sass-embedded which completely avoids such compile or gem platform problems as it downloads pre-built binaries for the relevant platform on the fly during gem install.

Of course it's OSS, so you are free to fork; but given the underlying libsass has been deprecated for two years and doesn't seem to have seen much development in the last 18 months, you might have to fork that too... and personally I think you might be better to put the effort in to migrate to something based on dart-sass rather than taking on the maintenance burden of possibly not just this, but also its relationship with libsass. Just my 2c - obviously you can evaluate what's best for your situation.

@brodock
Copy link

brodock commented Oct 20, 2022

if we could do a major release here and integrate the work from https://github.com/ntkme/sassc-embedded-shim-ruby that would be ideal as we don't have to update all gems that depend on this one... but if that is not the path here, sass-contrib/sassc-embedded-shim-ruby#25 should decouple from sassc-ruby all together and we can move further.

having newer sass available through ruby API again could help update projects like sprockets which is still a dependency in many others.

@chadlwilson
Copy link

IIRC @ntkme enquired about possibility of that somewhere in sprockets-land I believe. IMHO it's reasonably well decoupled in that most of the work happens in https://github.com/ntkme/sass-embedded-host-ruby and the repo you linked to is purely just a shim that redirects away from libsass.

And then there's dartsass-rails. The shim allows continued use of sprockets in the lightest touch way possible.

@chadlwilson
Copy link

Maybe rails/sprockets#661 was what I was thinking of.

@brodock
Copy link

brodock commented Oct 21, 2022

The problem with the approach is that you need to override sassc with a git repository. This makes deployment a bit harder and slower. Ideally we would either solve here or do a real fork that can be used moving further.

This doesn't dismiss the benefit of existing solution which can act as a bridge and help people migrate from one solution to the other.

But consider that anyone building something that should rely on sassc would be better served with a version/fork that works without requiring extra hacks

@johnnyshields
Copy link
Author

This is the way: #240

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants