pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/py-pathspec



Module Name:    pkgsrc
Committed By:   adam
Date:           Fri Jan  9 14:03:43 UTC 2026

Modified Files:
        pkgsrc/devel/py-pathspec: Makefile PLIST distinfo

Log Message:
py-pathspec: updated to 1.0.2

1.0.2 (2026-01-07)

Bug fixes:

- Type hint `collections.abc.Callable` does not properly replace `typing.Callable` until Python 3.9.2.

1.0.1 (2026-01-06)

Bug fixes:

- `Issue 100`_: ValueError(f"{patterns=!r} cannot be empty.") when using black.

1.0.0 (2026-01-05)

Major changes:

- `Issue 91`_: Dropped support of EoL Python 3.8.
- Added concept of backends to allow for faster regular expression matching. The backend can be controlled using the `backend` argument to `PathSpec()`, `PathSpec.from_lines()`, `GitIgnoreSpec()`, 
and `GitIgnoreSpec.from_lines()`.
- Renamed "gitwildmatch" pattern back to "gitignore". The "gitignore" pattern behaves slightly differently when used with `PathSpec` (*gitignore* as documented) than with `GitIgnoreSpec` (replicates 
*Git*'s edge cases).

API changes:

- Breaking: protected method `pathspec.pathspec.PathSpec._match_file()` (with a leading underscore) has been removed and replaced by backends. This does not affect normal usage of `PathSpec` or 
`GitIgnoreSpec`. Only custom subclasses will be affected. If this breaks your usage, let me know by `opening an issue <https://github.com/cpburnz/python-pathspec/issues>`_.
- Deprecated: "gitwildmatch" is now an alias for "gitignore".
- Deprecated: `pathspec.patterns.GitWildMatchPattern` is now an alias for `pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern`.
- Deprecated: `pathspec.patterns.gitwildmatch` module has been replaced by the `pathspec.patterns.gitignore` package.
- Deprecated: `pathspec.patterns.gitwildmatch.GitWildMatchPattern` is now an alias for `pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern`.
- Deprecated: `pathspec.patterns.gitwildmatch.GitWildMatchPatternError` is now an alias for `pathspec.patterns.gitignore.GitIgnorePatternError`.
- Removed: `pathspec.patterns.gitwildmatch.GitIgnorePattern` has been deprecated since v0.4 (2016-07-15).
- Signature of method `pathspec.pattern.RegexPattern.match_file()` has been changed from `def match_file(self, file: str) -> RegexMatchResult | None` to `def match_file(self, file: AnyStr) -> 
RegexMatchResult | None` to reflect usage.
- Signature of class method `pathspec.pattern.RegexPattern.pattern_to_regex()` has been changed from `def pattern_to_regex(cls, pattern: str) -> tuple[str, bool]` to `def pattern_to_regex(cls, 
pattern: AnyStr) -> tuple[AnyStr | None, bool | None]` to reflect usage and documentation.

New features:

- Added optional "hyperscan" backend using `hyperscan`_ library. It will automatically be used when installed. This dependency can be installed with ``pip install 'pathspec[hyperscan]'``.
- Added optional "re2" backend using the `google-re2`_ library. It will automatically be used when installed. This dependency can be installed with ``pip install 'pathspec[re2]'``.
- Added optional dependency on `typing-extensions`_ library to improve some type hints.

Bug fixes:

- `Issue 93`_: Do not remove leading spaces.
- `Issue 95`_: Matching for files inside folder does not seem to behave like .gitignore's.
- `Issue 98`_: UnboundLocalError in RegexPattern when initialized with `pattern=None`.
- Type hint on return value of `pathspec.pattern.RegexPattern.match_file()` to match documentation.

Improvements:

- Mark Python 3.13 and 3.14 as supported.
- No-op patterns are now filtered out when matching files, slightly improving performance.
- Fix performance regression in `iter_tree_files()` from v0.10.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 pkgsrc/devel/py-pathspec/Makefile
cvs rdiff -u -r1.6 -r1.7 pkgsrc/devel/py-pathspec/PLIST
cvs rdiff -u -r1.20 -r1.21 pkgsrc/devel/py-pathspec/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/py-pathspec/Makefile
diff -u pkgsrc/devel/py-pathspec/Makefile:1.21 pkgsrc/devel/py-pathspec/Makefile:1.22
--- pkgsrc/devel/py-pathspec/Makefile:1.21      Sun Feb 23 18:37:07 2025
+++ pkgsrc/devel/py-pathspec/Makefile   Fri Jan  9 14:03:43 2026
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.21 2025/02/23 18:37:07 wiz Exp $
+# $NetBSD: Makefile,v 1.22 2026/01/09 14:03:43 adam Exp $
 
-DISTNAME=      pathspec-0.12.1
+DISTNAME=      pathspec-1.0.2
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
-PKGREVISION=   1
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=p/pathspec/}
 

Index: pkgsrc/devel/py-pathspec/PLIST
diff -u pkgsrc/devel/py-pathspec/PLIST:1.6 pkgsrc/devel/py-pathspec/PLIST:1.7
--- pkgsrc/devel/py-pathspec/PLIST:1.6  Sun Feb 23 18:27:27 2025
+++ pkgsrc/devel/py-pathspec/PLIST      Fri Jan  9 14:03:43 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.6 2025/02/23 18:27:27 wiz Exp $
+@comment $NetBSD: PLIST,v 1.7 2026/01/09 14:03:43 adam Exp $
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
 ${PYSITELIB}/${WHEEL_INFODIR}/RECORD
 ${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
@@ -6,9 +6,66 @@ ${PYSITELIB}/${WHEEL_INFODIR}/licenses/L
 ${PYSITELIB}/pathspec/__init__.py
 ${PYSITELIB}/pathspec/__init__.pyc
 ${PYSITELIB}/pathspec/__init__.pyo
+${PYSITELIB}/pathspec/_backends/__init__.py
+${PYSITELIB}/pathspec/_backends/__init__.pyc
+${PYSITELIB}/pathspec/_backends/__init__.pyo
+${PYSITELIB}/pathspec/_backends/_utils.py
+${PYSITELIB}/pathspec/_backends/_utils.pyc
+${PYSITELIB}/pathspec/_backends/_utils.pyo
+${PYSITELIB}/pathspec/_backends/agg.py
+${PYSITELIB}/pathspec/_backends/agg.pyc
+${PYSITELIB}/pathspec/_backends/agg.pyo
+${PYSITELIB}/pathspec/_backends/hyperscan/__init__.py
+${PYSITELIB}/pathspec/_backends/hyperscan/__init__.pyc
+${PYSITELIB}/pathspec/_backends/hyperscan/__init__.pyo
+${PYSITELIB}/pathspec/_backends/hyperscan/_base.py
+${PYSITELIB}/pathspec/_backends/hyperscan/_base.pyc
+${PYSITELIB}/pathspec/_backends/hyperscan/_base.pyo
+${PYSITELIB}/pathspec/_backends/hyperscan/base.py
+${PYSITELIB}/pathspec/_backends/hyperscan/base.pyc
+${PYSITELIB}/pathspec/_backends/hyperscan/base.pyo
+${PYSITELIB}/pathspec/_backends/hyperscan/gitignore.py
+${PYSITELIB}/pathspec/_backends/hyperscan/gitignore.pyc
+${PYSITELIB}/pathspec/_backends/hyperscan/gitignore.pyo
+${PYSITELIB}/pathspec/_backends/hyperscan/pathspec.py
+${PYSITELIB}/pathspec/_backends/hyperscan/pathspec.pyc
+${PYSITELIB}/pathspec/_backends/hyperscan/pathspec.pyo
+${PYSITELIB}/pathspec/_backends/re2/__init__.py
+${PYSITELIB}/pathspec/_backends/re2/__init__.pyc
+${PYSITELIB}/pathspec/_backends/re2/__init__.pyo
+${PYSITELIB}/pathspec/_backends/re2/_base.py
+${PYSITELIB}/pathspec/_backends/re2/_base.pyc
+${PYSITELIB}/pathspec/_backends/re2/_base.pyo
+${PYSITELIB}/pathspec/_backends/re2/base.py
+${PYSITELIB}/pathspec/_backends/re2/base.pyc
+${PYSITELIB}/pathspec/_backends/re2/base.pyo
+${PYSITELIB}/pathspec/_backends/re2/gitignore.py
+${PYSITELIB}/pathspec/_backends/re2/gitignore.pyc
+${PYSITELIB}/pathspec/_backends/re2/gitignore.pyo
+${PYSITELIB}/pathspec/_backends/re2/pathspec.py
+${PYSITELIB}/pathspec/_backends/re2/pathspec.pyc
+${PYSITELIB}/pathspec/_backends/re2/pathspec.pyo
+${PYSITELIB}/pathspec/_backends/simple/__init__.py
+${PYSITELIB}/pathspec/_backends/simple/__init__.pyc
+${PYSITELIB}/pathspec/_backends/simple/__init__.pyo
+${PYSITELIB}/pathspec/_backends/simple/gitignore.py
+${PYSITELIB}/pathspec/_backends/simple/gitignore.pyc
+${PYSITELIB}/pathspec/_backends/simple/gitignore.pyo
+${PYSITELIB}/pathspec/_backends/simple/pathspec.py
+${PYSITELIB}/pathspec/_backends/simple/pathspec.pyc
+${PYSITELIB}/pathspec/_backends/simple/pathspec.pyo
 ${PYSITELIB}/pathspec/_meta.py
 ${PYSITELIB}/pathspec/_meta.pyc
 ${PYSITELIB}/pathspec/_meta.pyo
+${PYSITELIB}/pathspec/_typing.py
+${PYSITELIB}/pathspec/_typing.pyc
+${PYSITELIB}/pathspec/_typing.pyo
+${PYSITELIB}/pathspec/_version.py
+${PYSITELIB}/pathspec/_version.pyc
+${PYSITELIB}/pathspec/_version.pyo
+${PYSITELIB}/pathspec/backend.py
+${PYSITELIB}/pathspec/backend.pyc
+${PYSITELIB}/pathspec/backend.pyo
 ${PYSITELIB}/pathspec/gitignore.py
 ${PYSITELIB}/pathspec/gitignore.pyc
 ${PYSITELIB}/pathspec/gitignore.pyo
@@ -21,6 +78,18 @@ ${PYSITELIB}/pathspec/pattern.pyo
 ${PYSITELIB}/pathspec/patterns/__init__.py
 ${PYSITELIB}/pathspec/patterns/__init__.pyc
 ${PYSITELIB}/pathspec/patterns/__init__.pyo
+${PYSITELIB}/pathspec/patterns/gitignore/__init__.py
+${PYSITELIB}/pathspec/patterns/gitignore/__init__.pyc
+${PYSITELIB}/pathspec/patterns/gitignore/__init__.pyo
+${PYSITELIB}/pathspec/patterns/gitignore/base.py
+${PYSITELIB}/pathspec/patterns/gitignore/base.pyc
+${PYSITELIB}/pathspec/patterns/gitignore/base.pyo
+${PYSITELIB}/pathspec/patterns/gitignore/basic.py
+${PYSITELIB}/pathspec/patterns/gitignore/basic.pyc
+${PYSITELIB}/pathspec/patterns/gitignore/basic.pyo
+${PYSITELIB}/pathspec/patterns/gitignore/spec.py
+${PYSITELIB}/pathspec/patterns/gitignore/spec.pyc
+${PYSITELIB}/pathspec/patterns/gitignore/spec.pyo
 ${PYSITELIB}/pathspec/patterns/gitwildmatch.py
 ${PYSITELIB}/pathspec/patterns/gitwildmatch.pyc
 ${PYSITELIB}/pathspec/patterns/gitwildmatch.pyo

Index: pkgsrc/devel/py-pathspec/distinfo
diff -u pkgsrc/devel/py-pathspec/distinfo:1.20 pkgsrc/devel/py-pathspec/distinfo:1.21
--- pkgsrc/devel/py-pathspec/distinfo:1.20      Mon Dec 11 11:01:45 2023
+++ pkgsrc/devel/py-pathspec/distinfo   Fri Jan  9 14:03:43 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.20 2023/12/11 11:01:45 adam Exp $
+$NetBSD: distinfo,v 1.21 2026/01/09 14:03:43 adam Exp $
 
-BLAKE2s (pathspec-0.12.1.tar.gz) = bca2f7ff0049079d452846d4a26c956c722effa7ecf2961e52f9d677b9e36421
-SHA512 (pathspec-0.12.1.tar.gz) = 19d1a8ae5936e76eacd691b0e2fb33d0de376556751a9ae007f6b09d0aa36af7d171101df620cab3e93c9913be578ff3d6bba9d4460351ac248e5c9e015380ad
-Size (pathspec-0.12.1.tar.gz) = 51043 bytes
+BLAKE2s (pathspec-1.0.2.tar.gz) = 67606f0106f03d61fe669a3f6cc3a0abb410e07c45f53381ac85cff6b5548713
+SHA512 (pathspec-1.0.2.tar.gz) = 28b4afd51d6fbb81492dbce30c288a35320d8b6d61da15112bd437eb4902af998c39068ecbac4a450959df8c419820a0252dfc612afc2298b84efd14e0af523b
+Size (pathspec-1.0.2.tar.gz) = 130502 bytes



Home | Main Index | Thread Index | Old Index