Skip to content

Commit 06cfc12

Browse files
authored
docs: add semantic versioning policy (#387)
* docs: add semantic versioning policy * docs: update patch bullet point Closes #343
1 parent b92132d commit 06cfc12

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

README.md

+4
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,10 @@ You can avoid this by:
303303

304304
If you think the error you are getting is not related to this at all, please [fill a new issue](https://github.com/testing-library/eslint-plugin-testing-library/issues/new/choose) with as many details as possible.
305305

306+
## Other documentation
307+
308+
- [Semantic Versioning Policy](/docs/semantic-versioning-policy.md)
309+
306310
## Contributors ✨
307311

308312
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

docs/semantic-versioning-policy.md

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Semantic Versioning Policy
2+
3+
`eslint-plugin-testing-library` follows [Semantic Versioning](https://semver.org/). However, for [the same reason as ESLint itself](https://github.com/eslint/eslint#semantic-versioning-policy), it's not always clear when a minor or major version bump occurs. To help clarify this for everyone, we've defined the following Semantic Versioning Policy for this ESLint plugin:
4+
5+
- Patch release (intended to not break your lint build)
6+
- A bug fix in a rule that results in `eslint-plugin-testing-library` reporting fewer errors.
7+
- A bug fix to the core.
8+
- Re-releasing after a failed release (i.e., publishing a release that doesn't work for anyone).
9+
- A dependency gets updated
10+
- Minor release (might break your lint build)
11+
- A bug fix in a rule that results in `eslint-plugin-testing-library` reporting more errors.
12+
- A new rule is created.
13+
- A new option to an existing rule that does not result in ESLint reporting more errors by default.
14+
- A new option to an existing rule that might result in ESLint reporting more errors by default.
15+
- A new addition to an existing rule to support a newly-added Testing Library feature that will result in `eslint-plugin-testing-library` reporting more errors by default.
16+
- An existing rule is deprecated.
17+
- New capabilities to the public API are added (new classes, new methods, new arguments to existing methods, etc.).
18+
- A new shareable configuration is created.
19+
- An existing shareable configuration is updated and will result in strictly fewer errors (e.g., rule removals).
20+
- Support for a Node major version is added.
21+
- Major release (likely to break your lint build)
22+
- An existing shareable configuration is updated and may result in new errors (e.g., rule additions, most rule option updates).
23+
- Part of the public API is removed or changed in an incompatible way. The public API includes:
24+
- Rule schemas
25+
- Configuration schema
26+
- Support for a Node major version is dropped.
27+
28+
According to our policy, any minor update may report more errors than the previous release (ex: from a bug fix). As such, we recommend using the tilde (`~`) in `package.json` e.g. `"eslint-plugin-testing-library": "~4.3.0"` to guarantee the results of your builds.

0 commit comments

Comments
 (0)