-------------------
Major changes:
- Dropped support of EOL Python 3.7. See `Pull 82`_.
API changes:
- Signature of protected method `pathspec.pathspec.PathSpec._match_file()` (with a leading underscore) has been changed from `def _match_file(patterns: Iterable[Pattern], file: str) -> bool` to `def _match_file(patterns: Iterable[Tuple[int, Pattern]], file: str) -> Tuple[Optional[bool], Optional[int]]`.
New features:
- Added `pathspec.pathspec.PathSpec.check_*()` methods. These methods behave similarly to `.match_*()` but return additional information in the `pathspec.util.CheckResult` objects (e.g., `CheckResult.index` indicates the index of the last pattern that matched the file).
- Added `pathspec.pattern.RegexPattern.pattern` attribute which stores the original, uncompiled pattern.
Bug fixes:
- `Issue 81`_: GitIgnoreSpec behaviors differ from git.
- `Pull 83`_: Fix ReadTheDocs builds.
Improvements:
- Mark Python 3.12 as supported. See `Pull 82`_.
- Improve test debugging.
- Improve type hint on *on_error* parameter on `pathspec.pathspec.PathSpec.match_tree_entries()`.
- Improve type hint on *on_error* parameter on `pathspec.util.iter_tree_entries()`.
.. _`Issue 81`: https://github.com/cpburnz/python-pathspec/issues/81
.. _`Pull 82`: https://github.com/cpburnz/python-pathspec/pull/82
.. _`Pull 83`: https://github.com/cpburnz/python-pathspec/pull/83