|
| 1 | +## [0.2.21] - December 2025 |
| 2 | + |
| 3 | +* API enhancements: |
| 4 | + * [Add `HashMap.lookupKey` and `HashSet.lookupElement`](https://github.com/haskell-unordered-containers/unordered-containers/pull/554) |
| 5 | + * [Add `differenceWithKey`](https://github.com/haskell-unordered-containers/unordered-containers/pull/542) |
| 6 | + * [Add `disjoint`](https://github.com/haskell-unordered-containers/unordered-containers/pull/559) |
| 7 | + |
| 8 | +* Performance improvements: |
| 9 | + * [`HashSet.fromList`: Use `unsafeInsert`](https://github.com/haskell-unordered-containers/unordered-containers/pull/515) |
| 10 | + * [Use tree-diffing for `difference`](https://github.com/haskell-unordered-containers/unordered-containers/pull/535) |
| 11 | + * [Remove some unnecessary forcing of HashMaps](https://github.com/haskell-unordered-containers/unordered-containers/pull/545) |
| 12 | + * [Optimize indexing in arrays of length 2](https://github.com/haskell-unordered-containers/unordered-containers/pull/528) |
| 13 | + * [Remove the `Array.index` function](https://github.com/haskell-unordered-containers/unordered-containers/pull/539) |
| 14 | + |
| 15 | +* Documentation changes: |
| 16 | + * [Turn some comments into docstrings](https://github.com/haskell-unordered-containers/unordered-containers/pull/516) |
| 17 | + * [Reword disclaimer regarding hash collision attacks](https://github.com/haskell-unordered-containers/unordered-containers/pull/557) |
| 18 | + * [Update time complexity of some HashSet functions](https://github.com/haskell-unordered-containers/unordered-containers/pull/568) |
| 19 | + * [Update instructions for code inspection](https://github.com/haskell-unordered-containers/unordered-containers/pull/567) |
| 20 | + |
| 21 | +* Other changes: |
| 22 | + * [Drop support for GHC < 8.10](https://github.com/haskell-unordered-containers/unordered-containers/pull/510) |
| 23 | + * [Address deprecation warnings and other warnings](https://github.com/haskell-unordered-containers/unordered-containers/pull/512) |
| 24 | + * [Introduce `ShiftedHash`](https://github.com/haskell-unordered-containers/unordered-containers/pull/529) |
| 25 | + * [New "fine-grained" benchmarks](https://github.com/haskell-unordered-containers/unordered-containers/pull/526) |
| 26 | + * [Make it compile with MicroHs](https://github.com/haskell-unordered-containers/unordered-containers/pull/553) |
| 27 | + * [Remove redundant `Eq` constraints](https://github.com/haskell-unordered-containers/unordered-containers/pull/558) |
| 28 | + |
| 29 | +[0.2.21]: https://github.com/haskell-unordered-containers/unordered-containers/compare/v0.2.20.1...v0.2.21 |
| 30 | + |
1 | 31 | ## [0.2.20.1] - October 2025 |
2 | 32 |
|
3 | 33 | * [Fix infinite loop in `isSubmapOf[By]` / `isSubsetOf` on 32-bit platforms](https://github.com/haskell-unordered-containers/unordered-containers/pull/501). |
|
0 commit comments