./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.11.2, Package name: py310-pathspec-0.11.2, 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: 45.93 KB

Version history: (Expand)


CVS history: (Expand)


   2023-07-30 09:56:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.11.2

0.11.2 (2023-07-28)

New features:
- match_files with negated path spec. `pathspec.PathSpec.match_*()` now have a \ 
`negate` parameter to make using *.gitignore* logic easier and more efficient.

Bug fixes:
- Add edge case: patterns that end with an escaped space
- Negate with caret symbol as with the exclamation mark.
   2023-03-15 13:58:51 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.11.1

0.11.1 (2023-03-14)

Bug fixes:
- Include directory should override exclude file.

Improvements:
- Fix partially unknown PathLike type.
- Convert `os.PathLike` to a string properly using `os.fspath`.
   2023-03-09 08:41:18 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.11.0

0.11.0

Major changes:
- Changed build backend to `flit_core.buildapi`_ from `setuptools.build_meta`_. \ 
Building with `setuptools` through `setup.py` is still supported for \ 
distributions that need it.

Improvements:
- Please consider switching the build-system to flit_core to ease setuptools \ 
bootstrap.
   2022-12-12 14:44:59 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pathspec: updated to 0.10.3

0.10.3 (2022-12-09)
-------------------

New features:
- Added utility function `pathspec.util.append_dir_sep()` to aid in \ 
distinguishing between directories and files on the file-system.

Bug fixes:
- Package not marked as py.typed.
- Exports are considered private.
- 'Self' string literal type is Unknown in pyright.

Improvements:
- Checking directories via match_file() does not work on Path objects.
   2022-11-13 13:30:45 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pathspec: updated to 0.10.2

0.10.2 (2022-11-12)
-------------------
Bug fixes:
- Fix failing tests on Windows.
- Type hint on *root* parameter on `pathspec.pathspec.PathSpec.match_tree_entries()`.
- Type hint on *root* parameter on `pathspec.pathspec.PathSpec.match_tree_files()`.
- Type hint on *root* parameter on `pathspec.util.iter_tree_entries()`.
- Type hint on *root* parameter on `pathspec.util.iter_tree_files()`.
- IndexError with my .gitignore file when trying to build a Python package.
   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