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

docs: include section on our versioning approach #189

Merged
merged 1 commit into from
Oct 28, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,28 @@ passing it the name of your custom hook via its `additionalHooks` option:

Note that this option expects a _RegExp string_.

### Versioning

Versioning is modeled after [semantic versioning](https://semver.org/); however,
since these configurations are for a code quality tool meaning just about every
change to a config is likely going to result in a new error in at least one of
our codebases (and so arguably be a breaking change), we consider general
configuration changes to be _minor features_, and release them as such.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


In addition to this covering changes like enabling a new rule and adjusting the
configuration of an already-enabled rule, this also includes updating to new
major versions of a plugin which might have removed or renamed rules used in our
configs.

We specify which versions of plugins is expected by our configs as optional peer
dependencies, meaning your package manager should warn you if a minor version of
our package requires a related plugin to be updated for compatibility.

Major versions are generally reserved for when we're making a significant number
of changes, which can be common with new major versions of ESLint that have
significant breaking changes that require the surrounding ecosystem to release
new major versions.

### Releasing

Releases are handled using
Expand Down