mirror of
https://github.com/danog/dart-sass.git
synced 2025-01-22 05:41:14 +01:00
Add an explicit compatibility policy
This commit is contained in:
parent
7a73e15693
commit
ff3a006030
34
README.md
34
README.md
@ -30,6 +30,7 @@ A [Dart][dart] implementation of [Sass][sass]. **Sass makes CSS fun again**.
|
||||
* [From Source](#from-source)
|
||||
* [JavaScript API](#javascript-api)
|
||||
* [Why Dart?](#why-dart)
|
||||
* [Compatibility Policy](#compatibility-policy)
|
||||
* [Behavioral Differences from Ruby Sass](#behavioral-differences-from-ruby-sass)
|
||||
|
||||
## Using Dart Sass
|
||||
@ -226,6 +227,39 @@ language. We chose Dart because it presented a number of advantages:
|
||||
|
||||
[perf]: https://github.com/sass/dart-sass/blob/master/perf.md
|
||||
|
||||
## Compatibility Policy
|
||||
|
||||
For the most part, Dart Sass follows [semantic versioning][]. We consider all of
|
||||
the following to be part of the versioned API:
|
||||
|
||||
[semantic versioning]: https://semver.org/
|
||||
|
||||
* The Sass language semantics implemented by Dart Sass.
|
||||
* The Dart API.
|
||||
* The JavaScript API.
|
||||
* The command-line interface.
|
||||
|
||||
Because Dart Sass has a single version that's shared across the Dart,
|
||||
JavaScript, and standalone distributions, this may mean that we increment the
|
||||
major version number when there are in fact no breaking changes for one or more
|
||||
distributions. However, we will attempt to limit the number of breaking changes
|
||||
we make and group them in as few releases as possible to minimize churn. We
|
||||
strongly encourage users to use [the changelog][] for a full understanding of
|
||||
all the changes in each release.
|
||||
|
||||
[the changelog]: https://github.com/sass/dart-sass/blob/master/CHANGELOG.md
|
||||
|
||||
There is one exception where breaking changes may be made outside of a major
|
||||
version revision. It is occasionally the case that CSS adds a feature that's
|
||||
incompatible with existing Sass syntax in some way. Because Sass is committed to
|
||||
full CSS compatibility, we occasionally need to break compatibility with old
|
||||
Sass code in order to remain compatible with CSS.
|
||||
|
||||
In these cases, we will first release a version of Sass that emits deprecation
|
||||
warnings for any stylesheets whose behavior will change. Then, at least three
|
||||
months after the release of a version with these deprecation warnings, we will
|
||||
release a minor version with the breaking change to the Sass language semantics.
|
||||
|
||||
## Behavioral Differences from Ruby Sass
|
||||
|
||||
There are a few intentional behavioral differences between Dart Sass and Ruby
|
||||
|
Loading…
x
Reference in New Issue
Block a user