Skip to content

Commit 2e91f22

Browse files
authored
Introduce a backwards comp policy (#474)
* Introduce a backwards comp policy * Tweak doc some more
1 parent 9792a43 commit 2e91f22

2 files changed

Lines changed: 25 additions & 3 deletions

File tree

.github/SECURITY.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
1-
## Security contact information
1+
# Security Policy
22

3-
To report a security vulnerability, please use the
4-
[Tidelift security contact](https://tidelift.com/security).
3+
4+
## Versioning and Backwards Compatibility
5+
6+
_cattrs_ follows [*CalVer*](https://calver.org) and we only support the latest PyPI version, due to limited resources.
7+
We aim to support all Python versions that are not end-of-life; older versions will be dropped to ease the maintenance burden.
8+
9+
Our goal is to never undertake major breaking changes (the kinds that would necessitate a v2 if we were following SemVer).
10+
Minor breaking changes may be undertaken to improve the developer experience and robustness of the library.
11+
All breaking changes are prominently called out in the changelog, alongside any customization steps that may be used to restore previous behavior, when applicable.
12+
13+
APIs may be marked as provisional.
14+
These are not guaranteed to be stable and may change or be removed without prior notice.
15+
16+
## Security Contact Information
17+
18+
To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security).
519
Tidelift will coordinate the fix and disclosure.

HISTORY.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,18 @@
22
```{currentmodule} cattrs
33
```
44

5+
This project adheres to [Calendar Versioning](https://calver.org/).
6+
The first number of the version is the year.
7+
The second number is incremented with each release, starting at 1 for each year.
8+
The third number is for emergencies when we need to start branches for older releases.
9+
10+
Our backwards-compatibility policy can be found [here](https://github.com/python-attrs/cattrs/blob/main/.github/SECURITY.md).
11+
512
## 24.1.0 (UNRELEASED)
613

714
- **Potentially breaking**: Unstructuring hooks for `typing.Any` are consistent now: values are unstructured using their runtime type.
815
Previously this behavior was underspecified and inconsistent, but followed this rule in the majority of cases.
16+
Reverting old behavior is very dependent on the actual case; ask on the issue tracker if in doubt.
917
([#473](https://github.com/python-attrs/cattrs/pull/473))
1018
- Introduce {meth}`BaseConverter.get_structure_hook` and {meth}`BaseConverter.get_unstructure_hook` methods.
1119
([#432](https://github.com/python-attrs/cattrs/issues/432) [#472](https://github.com/python-attrs/cattrs/pull/472))

0 commit comments

Comments
 (0)