<commit_before>4.0.5
-----
* Added `bimapping` to `Control.Lens.Iso`

4.0.4
-----
* Made `declareFields` work again.

4.0.3
-----
* Fixed random segfaulting when using `foldMapBy`.

4.0.2
-----
* Properly bundled the modules needed for the properties test suite into the tarball for hackage.

4.0.1
-----
* Typo fixes
* Exporting `Rewrapping` from `Control.Lens.Wrapped`.
* Removed the dependency on `cpphs`.

4.0
----
* Added `nearly` to `Control.Lens.Prism`.
* Added `Control.Lens.Empty`, exporting `_Empty`.
* We now require `DefaultSignatures`.
* Added `failing` and `ifailing` to `Control.Lens.Traversal`.
* Changed the signature of `Data.List.Split.Lens.condensing` due to the addition of `DropBlankFields` to `Data.List.Split.CondensePolicy` in `split`.
* Simplified `Each`, `Ixed`, and `Contains`. They are no longer indexed. The previous design was actively getting in the way of user-defined instances.
* Replaced more of our home-grown types with standard ones. They had previously been defined to help make more intelligible error messages, but when we switched to using `(Contravariant f, Functor f)` instead of `(Gettable f)`, these ceased to really help. Now you can define even more `lens`-compatible types (e.g. `Getter` and `Fold`) without depending on `lens`.
  * Replaced the use of `Accessor` with `Const`.<commit_msg>Update CHANGELOG<commit_after>4.0.5
-----
* Added `bimapping` to `Control.Lens.Iso`
* Restored correct behavior of `makePrism` on types with a single constructor.
* `makeLenses` now generates `Getter`s and `Fold`s on universally quantified fields.

4.0.4
-----
* Made `declareFields` work again.

4.0.3
-----
* Fixed random segfaulting when using `foldMapBy`.

4.0.2
-----
* Properly bundled the modules needed for the properties test suite into the tarball for hackage.

4.0.1
-----
* Typo fixes
* Exporting `Rewrapping` from `Control.Lens.Wrapped`.
* Removed the dependency on `cpphs`.

4.0
----
* Added `nearly` to `Control.Lens.Prism`.
* Added `Control.Lens.Empty`, exporting `_Empty`.
* We now require `DefaultSignatures`.
* Added `failing` and `ifailing` to `Control.Lens.Traversal`.
* Changed the signature of `Data.List.Split.Lens.condensing` due to the addition of `DropBlankFields` to `Data.List.Split.CondensePolicy` in `split`.
* Simplified `Each`, `Ixed`, and `Contains`. They are no longer indexed. The previous design was actively getting in the way of user-defined instances.
* Replaced more of our home-grown types with standard ones. They had previously been defined to help make more intelligible error messages, but when we switched to using `(Contravariant f, Functor f)` instead of `(Gettable f)`, these ceased to really help. Now you can define even more `lens`-compatible types (e.g. `Getter` and `Fold`) without depending on `lens`.
  * Replaced the use of `Accessor` with `Const`.
{'fraction_non_alphanumeric': 0.12302284710017575, 'fraction_numerical': 0.01195079086115993, 'mean_word_length': 4.019400352733686, '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': '7175510', 'n_tokens_mistral': 924, 'n_tokens_neox': 882, 'n_words': 349}