<commit_before># Changelog

## 8.2

- **NEW**: Add support for `dir_fd` in glob patterns.

## 8.1.2

- **FIX**: `fnmatch.translate` no longer requires user 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

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

## 8.1<commit_msg>Update changelog<commit_after># Changelog

## 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

- **FIX**: `fnmatch.translate` no longer requires user 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

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

## 8.1
{'fraction_non_alphanumeric': 0.0851063829787234, 'fraction_numerical': 0.013297872340425532, 'mean_word_length': 3.927947598253275, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3294375', 'n_tokens_mistral': 627, 'n_tokens_neox': 588, 'n_words': 330}