./devel/py-pathspec, Utility library for gitignore style pattern matching of file paths

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.10.1, Package name: py310-pathspec-0.10.1, Maintainer: pkgsrc-users

pathspec is a utility library for pattern matching of file paths. So far this
only includes Git's wildmatch pattern matching which itself is derived from
Rsync's wildmatch. Git uses wildmatch for its gitignore files.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 42.144 KB

Version history: (Expand)


CVS history: (Expand)


   2022-09-14 12:31:36 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pathspec: updated to 0.10.1

0.10.1 (2022-09-02)
-------------------

Bug fixes:

- Fix documentation on `pathspec.pattern.RegexPattern.match_file()`.
- Remove redundant wheel dep from pyproject.toml.
- Dist failure for Fedora, CentOS, EPEL.
- Since version 0.10.0 pure wildcard does not work in some cases.

Improvements:

- Restore support for legacy installations using `setup.py`.

0.10.0 (2022-08-30)
-------------------

Major changes:

- Dropped support of EOL Python 2.7, 3.5, 3.6.
- The *gitwildmatch* pattern `dir/*` is now handled the same as `dir/`. This \ 
means `dir/*` will now match all descendants rather than only direct children.
- Added `pathspec.GitIgnoreSpec` class (see new features).
- Changed build system to `pyproject.toml`_ and build backend to \ 
`setuptools.build_meta`_ which may have unforeseen consequences.
- Renamed GitHub project from `python-path-specification`_ to `python-pathspec`_.

API changes:

- Deprecated: `pathspec.util.match_files()` is an old function no longer used.
- Deprecated: `pathspec.match_files()` is an old function no longer used.
- Deprecated: `pathspec.util.normalize_files()` is no longer used.
- Deprecated: `pathspec.util.iter_tree()` is an alias for \ 
`pathspec.util.iter_tree_files()`.
- Deprecated: `pathspec.iter_tree()` is an alias for \ 
`pathspec.util.iter_tree_files()`.
- Deprecated: `pathspec.pattern.Pattern.match()` is no longer used. Use or implement
  `pathspec.pattern.Pattern.match_file()`.

New features:

- Added class `pathspec.gitignore.GitIgnoreSpec` (with alias \ 
`pathspec.GitIgnoreSpec`) to implement *gitignore* behavior not possible with \ 
standard `PathSpec` class. The particular *gitignore* behavior implemented is \ 
prioritizing patterns matching the file directly over matching an ancestor \ 
directory.

Bug fixes:

- Files inside an ignored sub-directory are not matched.
- Incorrectly (?) matches files inside directories that do match.
- Refactor deprecated unittest aliases for Python 3.11 compatibility.
- Symlink pathspec_meta.py breaks Windows.
- test_util.py uses os.symlink which can fail on Windows.
- Backslashes at start of pattern not handled correctly.
- pyproject.toml: include subpackages in setuptools config
- `!` doesn't exclude files in directories if the pattern doesn't have a \ 
trailing slash.

Improvements:

- Support Python 3.10, 3.11.
- Modernize code to Python 3.7.
- match_files() is not a pure generator function, and it impacts tree_*() gravely.
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-07-19 21:50:10 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pathspec: updated to 0.9.0

0.9.0

Raise GitWildMatchPatternError for invalid git patterns.
Fix for duplicate leading double-asterisk, and edge cases.
Fix matching absolute paths.
API change: util.normalize_files() now returns a Dict[str, List[pathlike]] \ 
instead of a Dict[str, pathlike].
Added type hinting.
   2020-11-09 10:30:02 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.8.1

0.8.1:
Add support for addition operator.
   2020-04-10 10:52:23 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.8.0

0.8.0:
- Expose what patterns matched paths. Added `util.detailed_match_files()`.
- `match_tree()` doesn't return symlinks.
- Add `PathSpec.match_tree_entries` and `util.iter_tree_entries()` to support \ 
directories and symlinks.
- API change: `match_tree()` has been renamed to `match_tree_files()`. The old \ 
name `match_tree()` is still available as an alias.
- API change: `match_tree_files()` now returns symlinks. This is a bug fix but \ 
it will change the returned results.
   2020-01-08 16:20:18 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.7.0

0.7.0:
- Add support for Python 3.8, and drop Python 3.4.
- Publish bdist wheel.