Releases: pqwy/lru
Releases · pqwy/lru
0.3.1
v0.3.0
CHANGES:
Semantics cleanup.
Breaking:
finddrops?promoteand never changes the ordering.adddrops?trimand never drops bindings.size->weightitems->sizeunadd->popF.S.foldandF.S.iteriterate in LRU order.F.M.foldandF.M.iterdrop?dirand always iterate in LRU order.
Other:
- add
F.S.fold_kandF.S.iter_k
To fix client code:
- replace
find ~promote:falsewithfind; - replace
findandfind ~promote:truewithfindandpromote; - replace
add ~trim:falsewithadd; - replace
addandadd ~trim:truewithaddandtrim; s/size/weight/g,s/items/size/g,s/unadd/pop/g;- audit uses of
foldanditerfor order-sensitivity.
v0.2.0
v0.2.0 2017-03-31
Breaking changes:
-
resizeno longer drops bindings if the new size pushes the queue over capacity. -
of_listhas simpler semantics; dropped thecapparameter.
Other changes:
-
Replace
Lru.M.cachewith more generalLru.memo. -
Queues with 0 initial capacity are legal.
-
Add
trimto shrink a queue to its capacity, as queues are no longer guaranteed to
have size smaller than capacity. -
findgets thepromoteparameter, allowing queries that do not change the order. -
addgets thetrimparameter, allowing insertions that do not drop old entries.