Skip to content

Releases: facelessuser/wcmatch

8.5.2

15 May 12:50
dd0b3c2
Compare
Choose a tag to compare

8.5.2

  • FIX: Fix pathlib issue with inheritance on Python versions greater than 3.12.
  • FIX: Fix EXTMATCH case with !(...) patterns.

8.5.1

20 Feb 17:18
6d105d1
Compare
Choose a tag to compare

8.5.1

  • FIX: Fix issue with type check failure in wcmatch.glob.

8.5

30 Aug 21:08
ff57d25
Compare
Choose a tag to compare
8.5

8.5

  • NEW: Formally support Python 3.11 (no change).
  • NEW: Add support for Python 3.12 (pathlib changes).
  • NEW: Drop Python 3.7 support.
  • FIX: Fix handling of current directory when magic and non-magic patterns are mixed in glob pattern list.

8.4.1

19 Sep 23:14
d8f2835
Compare
Choose a tag to compare

8.4.1

  • FIX: Windows drive path separators should normalize like other path separators.
  • FIX: Fix a Windows pattern parsing issue that caused absolute paths with ambiguous drives to not parse correctly.

8.4

31 May 00:27
Compare
Choose a tag to compare
8.4

8.4

  • NEW: Drop support for Python 3.6.
  • NEW: Switch to Hatch backend instead of Setuptools.
  • NEW: Add new exclude option to fnmatch, pathlib, and glob methods that allows exclusion patterns to be
    specified directly without needing to enable NEGATE and prepend patterns with !. exclude accepts a separate
    pattern or pattern list. exclude should not be used in conjunction with NEGATE. One or the other should be used.

8.3

02 Nov 23:03
Compare
Choose a tag to compare
8.3

8.3

  • NEW: Officially support Python 3.10.
  • NEW: Provide type hints for API.
  • FIX: Gracefully handle calls with an empty pattern list.

8.2

21 May 16:09
Compare
Choose a tag to compare
8.2

8.2

  • NEW: Add support for dir_fd in glob patterns.
  • FIX: Small fix for Python 3.10 Beta 1 and pathlib.

8.1.2

10 Mar 04:04
Compare
Choose a tag to compare

8.1.2

  • FIX: fnmatch.translate no longer requires users to normalize their Windows paths for comparison. Previously, portions of the translate regex handled both / and \\, while other portions did not. This inconsistent handling forced users to normalize paths for reliable matching. Now all of the generated regex should handle both / and \\.
  • FIX: On Linux/Unix systems, a backslash should not be assumed literal if it is followed by a forward slash. Backslash is magic on all systems, and an escaped forward slash is still counted as a forward slash, not a backslash and forward slash.
  • FIX: A trailing backslash that is not escaped via another backslash should not be assumed as a backslash. Since it is escaping nothing, it will be ignored. Literal backslashes on any system must be escaped.

8.1.1

10 Feb 04:08
Compare
Choose a tag to compare

8.1.1

  • FIX: When tracking unique glob paths, the unique cache had inverted logic for case sensitive vs case insensitive comparison. (#164)

8.1

08 Feb 19:57
2737567
Compare
Choose a tag to compare
8.1

8.1

  • NEW: Add is_magic function to the glob and fnamtch library.
  • NEW: fnmatch now has escape available via its API. The fnmatch variant uses filename logic instead of path logic.
  • NEW: Deprecate raw_escape in glob as it is very niche and the same can be accomplished simply by using #!py3 codecs.decode(string, 'unicode_escape') and then using escape.
  • FIX: Use os.fspath to convert path-like objects to string/bytes, whatever the return from __fspath__ is what Wildcard Match will accept. Don't try to convert paths via __str__ or __bytes__ as not all path-like objects may implement both.
  • FIX: Better checking of types to ensure consistent failure if the path, pattern, or root directory of are not all of type str or bytes.
  • FIX: Some internal fixes and refactoring.
  • FIX: Refactor code to take advantage of bracex's ability to abort parsing on extremely large pattern expansions. Patterns like {1..10000000} will now abort dramatically quicker. Require bracex 2.1.1 which aborts much quicker.
  • FIX: Fix some corner cases where limit would not abort correctly.