Changelog for pqueue-1.6.0.0
Revision history for pqueue
1.6.0.0 -- 2025-10-11
-
Deprecate
mapUand replace it bymapMonotonicinData.PQeueu.MinandData.PQueue.Max(#129) -
Drop ghc-7.10 support (#142)
-
Fix typo in
Data.PQueue.Max.toListdocumentation (#131)
1.5.0.0 -- 2023-08-08
-
Fix incorrect behavior of
mapMaybeandmapEitherforMinQueue. These previously worked only for monotonic functions. -
Fix a performance bug that caused queue performance not to improve when the queue shrinks. (#109)
-
Make
minViewmore eager, improving performance in typical cases. (#107) -
Make mapping and traversal functions force the full data structure spine. This should make performance more predictable, and removes the last remaining reasons to use the
seqSpinefunctions. As these are no longer useful, deprecate them. (#103) -
Deprecate
insertBehind. This function does not play nicely with merges, we lack tests to verify it works properly without merges, it imposes a substantial maintenance burden on the rest of the package, and it is quite slow. (#35) -
Add pattern synonyms to work with
MinQueueandMinPQueue. (#92) -
Make the
Datainstances respect the queue invariants. Make theConstrs match the pattern synonyms. Make theDatainstance forMinPQueuework "incrementally", like the one forMinQueue. (#92)
1.4.3.0 -- 2022-10-30
- Add instances for indexed-traversable. (#85)
- Add ghc-9.4 support. (#86)
1.4.2.0 -- 2022-06-19
-
Overall performance has improved greatly, especially when there are many insertions and/or merges in a row. Insertion, deletion, and merge are now worst case logarithmic, while maintaining their previous amortized bounds. (#26)
-
New
mapMWithKeyfunctions optimized for working in strict monads. These are used to implement themapMandsequencemethods ofTraversable. (#46) -
Define
stimesin theSemigroupinstances. (#57) -
Add strict left unordered folds (
foldlU',foldlWithKeyU') and monoidal unordered folds (foldMapU,foldMapWithKeyU). (#59) -
New functions for adjusting and updating the min/max of a key-value priority queue in an
Applicativecontext. (#66) -
Fixed
Data.PQueue.Max.mapto work onMaxQueues. (#76)
1.4.1.4 -- 2021-12-04
- Maintenance release for ghc-9.0 & ghc-9.2 support
- Change nix-setup to use the seaaye tool
1.4.1.3 -- 2020-06-06
- Maintenance release
- Add missing documentation
- Add nix-expressions for testing against different compilers/package sets
1.4.1.2 -- 2018-09-26
- Maintenance release for ghc-8.6
- Drop support for ghc<7.10
1.4.1.1 -- 2018-02-11
-
Remove/replace buggy
insertBehindimplementation.The existing implementation did not always insert behind. As a fix, the function was removed from Data.PQueue.Max/Min and was rewritten with a O(n) complexity (!) for Data.PQueue.Prio.Max/Min.
-
Adapt for ghc-8.4, based on the ghc-8.4.1-alpha1 release
-
Drop support for ghc<7.4
1.3.2.3 -- 2017-08-01
- Maintenance release for ghc-8.2
1.3.2.2 -- 2017-03-12
- Add test-suite from darcs repository for pqueue-1.0.1.
1.3.2.1 -- 2017-03-11
- Fix documentation errors
- complexity on
toList,toListU PQueue.Prio.Maxhad "ascending" instead of "descending" in some places
- complexity on
1.3.2 -- 2016-09-28
- Add function
insertBehindas a slight variation ofinsertwhich differs in behaviour for elements the compare equal.
1.3.1.1 -- 2016-05-21
- Ensure compatibility with ghc-8
- Minor internal refactors
1.3.1 -- 2015-10-03
- Add
Monoidinstance forMaxPQueue
1.3.0 -- 2015-06-23
- Lennart Spitzner starts co-maintaining
- new git repository at github.com:lspitzner/pqueue
- Ensure compatibility with ghc-7.10