alphagov / govuk-frontend

GOV.UK Frontend contains the code you need to start building a user interface for government platforms and services.
https://frontend.design-system.service.gov.uk/
MIT License
1.19k stars 328 forks source link

Drop support for Ruby Sass and LibSass #2637

Open 36degrees opened 2 years ago

36degrees commented 2 years ago

What

Drop support for Ruby Sass and LibSass, including:

Although there are no code changes, it's highly likely that we'll choose to make related breaking changes as part of this work. Regardless, it's a significant change for our users and so we should treat it as a breaking change.

Why

Ruby Sass was deprecated in April 2018 and reached End of Life in April 2019. We're not aware of any of our users still using it, but as supporting it has involved no extra work on our part we've supported it up until now.

LibSass has also been deprecated since October 2020.

The new Sass module system (@use) is only available in Dart Sass, and there are no plans to introduce it to LibSass. Additionally, a future release of Dart Sass will drop support for @import which will make it impractical for us to continue to support both Dart Sass and LibSass.

Dropping support for LibSass is also a recommendation made by the Sass maintainers themselves:

"We recommend all existing LibSass users make plans to eventually move onto Dart Sass, and that all Sass libraries make plans to eventually drop support for LibSass.

We’re no longer planning to add any new features to LibSass, including compatibility with new CSS features.

LibSass and Node Sass will continue to be maintained indefinitely on a best-effort basis, including fixing major bugs and security issues and maintaining compatibility with the latest Node versions."

Dropping support for Ruby Sass and LibSass will allow us to resolve the following issues:

Who needs to work on this

Developers, technical writer

Who needs to review this

Developers, technical writer

Done when

36degrees commented 2 years ago

There's a presentation with more context on the changes going on in the eco-system, and some of the history of the three different compilers here: https://docs.google.com/presentation/d/10Jf6K-KsqhGyZIjcuxVL6P60ksJ4lSyT96WHZpJwARk/edit#slide=id.g10d42026b8_2_0

We've also started to communicate these upcoming changes to our users in our channels on x-gov Slack and as announcements in the GitHub Discussions for this repo.

EoinShaughnessy commented 2 years ago

Re the install docs update - are we removing all mention of LibSass and Ruby Sass, or are we just saying not to use them as we don't support them?