1 2Change History 3============== 4 50.9.0 (2021-07-17) 6------------------ 7 8- `Issue #44`_/`Issue #50`_: Raise `GitWildMatchPatternError` for invalid git patterns. 9- `Issue #45`_: Fix for duplicate leading double-asterisk, and edge cases. 10- `Issue #46`_: Fix matching absolute paths. 11- API change: `util.normalize_files()` now returns a `Dict[str, List[pathlike]]` instead of a `Dict[str, pathlike]`. 12- Added type hinting. 13 14.. _`Issue #44`: https://github.com/cpburnz/python-path-specification/issues/44 15.. _`Issue #45`: https://github.com/cpburnz/python-path-specification/pull/45 16.. _`Issue #46`: https://github.com/cpburnz/python-path-specification/issues/46 17.. _`Issue #50`: https://github.com/cpburnz/python-path-specification/pull/50 18 19 200.8.1 (2020-11-07) 21------------------ 22 23- `Issue #43`_: Add support for addition operator. 24 25.. _`Issue #43`: https://github.com/cpburnz/python-path-specification/pull/43 26 27 280.8.0 (2020-04-09) 29------------------ 30 31- `Issue #30`_: Expose what patterns matched paths. Added `util.detailed_match_files()`. 32- `Issue #31`_: `match_tree()` doesn't return symlinks. 33- `Issue #34`_: Support `pathlib.Path`\ s. 34- Add `PathSpec.match_tree_entries` and `util.iter_tree_entries()` to support directories and symlinks. 35- API change: `match_tree()` has been renamed to `match_tree_files()`. The old name `match_tree()` is still available as an alias. 36- API change: `match_tree_files()` now returns symlinks. This is a bug fix but it will change the returned results. 37 38.. _`Issue #30`: https://github.com/cpburnz/python-path-specification/issues/30 39.. _`Issue #31`: https://github.com/cpburnz/python-path-specification/issues/31 40.. _`Issue #34`: https://github.com/cpburnz/python-path-specification/issues/34 41 42 430.7.0 (2019-12-27) 44------------------ 45 46- `Issue #28`_: Add support for Python 3.8, and drop Python 3.4. 47- `Issue #29`_: Publish bdist wheel. 48 49.. _`Issue #28`: https://github.com/cpburnz/python-path-specification/pull/28 50.. _`Issue #29`: https://github.com/cpburnz/python-path-specification/pull/29 51 52 530.6.0 (2019-10-03) 54------------------ 55 56- `Issue #24`_: Drop support for Python 2.6, 3.2, and 3.3. 57- `Issue #25`_: Update README.rst. 58- `Issue #26`_: Method to escape gitwildmatch. 59 60.. _`Issue #24`: https://github.com/cpburnz/python-path-specification/pull/24 61.. _`Issue #25`: https://github.com/cpburnz/python-path-specification/pull/25 62.. _`Issue #26`: https://github.com/cpburnz/python-path-specification/pull/26 63 64 650.5.9 (2018-09-15) 66------------------ 67 68- Fixed file system error handling. 69 70 710.5.8 (2018-09-15) 72------------------ 73 74- Improved type checking. 75- Created scripts to test Python 2.6 because Tox removed support for it. 76- Improved byte string handling in Python 3. 77- `Issue #22`_: Handle dangling symlinks. 78 79.. _`Issue #22`: https://github.com/cpburnz/python-path-specification/issues/22 80 81 820.5.7 (2018-08-14) 83------------------ 84 85- `Issue #21`_: Fix collections deprecation warning. 86 87.. _`Issue #21`: https://github.com/cpburnz/python-path-specification/issues/21 88 89 900.5.6 (2018-04-06) 91------------------ 92 93- Improved unit tests. 94- Improved type checking. 95- `Issue #20`_: Support current directory prefix. 96 97.. _`Issue #20`: https://github.com/cpburnz/python-path-specification/issues/20 98 99 1000.5.5 (2017-09-09) 101------------------ 102 103- Add documentation link to README. 104 105 1060.5.4 (2017-09-09) 107------------------ 108 109- `Issue #17`_: Add link to Ruby implementation of *pathspec*. 110- Add sphinx documentation. 111 112.. _`Issue #17`: https://github.com/cpburnz/python-path-specification/pull/17 113 114 1150.5.3 (2017-07-01) 116------------------ 117 118- `Issue #14`_: Fix byte strings for Python 3. 119- `Issue #15`_: Include "LICENSE" in source package. 120- `Issue #16`_: Support Python 2.6. 121 122.. _`Issue #14`: https://github.com/cpburnz/python-path-specification/issues/14 123.. _`Issue #15`: https://github.com/cpburnz/python-path-specification/pull/15 124.. _`Issue #16`: https://github.com/cpburnz/python-path-specification/issues/16 125 126 1270.5.2 (2017-04-04) 128------------------ 129 130- Fixed change log. 131 132 1330.5.1 (2017-04-04) 134------------------ 135 136- `Issue #13`_: Add equality methods to `PathSpec` and `RegexPattern`. 137 138.. _`Issue #13`: https://github.com/cpburnz/python-path-specification/pull/13 139 140 1410.5.0 (2016-08-22) 142------------------ 143 144- `Issue #12`_: Add `PathSpec.match_file()`. 145- Renamed `gitignore.GitIgnorePattern` to `patterns.gitwildmatch.GitWildMatchPattern`. 146- Deprecated `gitignore.GitIgnorePattern`. 147 148.. _`Issue #12`: https://github.com/cpburnz/python-path-specification/issues/12 149 150 1510.4.0 (2016-07-15) 152------------------ 153 154- `Issue #11`_: Support converting patterns into regular expressions without compiling them. 155- API change: Subclasses of `RegexPattern` should implement `pattern_to_regex()`. 156 157.. _`Issue #11`: https://github.com/cpburnz/python-path-specification/issues/11 158 159 1600.3.4 (2015-08-24) 161------------------ 162 163- `Issue #7`_: Fixed non-recursive links. 164- `Issue #8`_: Fixed edge cases in gitignore patterns. 165- `Issue #9`_: Fixed minor usage documentation. 166- Fixed recursion detection. 167- Fixed trivial incompatibility with Python 3.2. 168 169.. _`Issue #7`: https://github.com/cpburnz/python-path-specification/pull/7 170.. _`Issue #8`: https://github.com/cpburnz/python-path-specification/pull/8 171.. _`Issue #9`: https://github.com/cpburnz/python-path-specification/pull/9 172 173 1740.3.3 (2014-11-21) 175------------------ 176 177- Improved documentation. 178 179 1800.3.2 (2014-11-08) 181------------------ 182 183- `Issue #5`_: Use tox for testing. 184- `Issue #6`_: Fixed matching Windows paths. 185- Improved documentation. 186- API change: `spec.match_tree()` and `spec.match_files()` now return iterators instead of sets. 187 188.. _`Issue #5`: https://github.com/cpburnz/python-path-specification/pull/5 189.. _`Issue #6`: https://github.com/cpburnz/python-path-specification/issues/6 190 191 1920.3.1 (2014-09-17) 193------------------ 194 195- Updated README. 196 197 1980.3.0 (2014-09-17) 199------------------ 200 201- `Issue #3`_: Fixed trailing slash in gitignore patterns. 202- `Issue #4`_: Fixed test for trailing slash in gitignore patterns. 203- Added registered patterns. 204 205.. _`Issue #3`: https://github.com/cpburnz/python-path-specification/pull/3 206.. _`Issue #4`: https://github.com/cpburnz/python-path-specification/pull/4 207 208 2090.2.2 (2013-12-17) 210------------------ 211 212- Fixed setup.py. 213 214 2150.2.1 (2013-12-17) 216------------------ 217 218- Added tests. 219- Fixed comment gitignore patterns. 220- Fixed relative path gitignore patterns. 221 222 2230.2.0 (2013-12-07) 224------------------ 225 226- Initial release. 227