Releases: elmcraft/core-extra
2.2.0
Highlights
We've added a number of new utility functions:
Cmd.Extra.andThenfor composing update functionsList.Extra.appendTo,List.Extra.prependToandList.Extra.pushfor pipeline friendly ways to add to listsArray.Extra.lastas a nice one-liner to get the last element of a list.Order.Extra.nothingFirstandOrder.Extra.nothingLastto compose ordering functions overMaybe
Plus the usual slew of minor bug fixes and performance enhancements.
Details
- Add
Cmd.Extra.andThenby @Janiczek in #66 - Update packages to reduce vulnerabilities by @miniBill in #67
- More efficient
liftNby @miniBill in #69 - Update elm-review by @miniBill in #68
- Faster
Maybe.Extra.andMapby @miniBill in #72 - Simplify
List.Extra.notMemberby @miniBill in #73 - Add
Array.Extra.lastby @MartinSStewart in #74 - Inline call to
Result.mapinResult.Extra.andMapfor performance by @miniBill in #71 - Adds
List.Extra.pushandList.Extra.prependby @gampleman in #70 - Fixes
String.Extra.rightOf/String.Extra.leftOfmisbehaving with newlines by @gampleman in #75 - Adds helpers for dealing with
Maybevalues inOrder.Extraby @gampleman in #77
New Contributors
- @MartinSStewart made their first contribution in #74
Full Changelog: 2.1.0...2.2.0
2.1.0
Highlights
We've added a brand new Triple.Extra module to match Tuple.Extra!
We've also added a number of new utility functions:
Dict.Extra.invertAllDict.Extra.updateIfExistsDict.Extra. upsertFloat.Extra.equalWithinFloat.Extra.interpolateFromList.Extra.conditionalList.Extra.consSet.Extra.allSet.Extra.any
Details
- Fix code highlighting in
Result.Extra.toTaskdocs 🐞 by @kutyel in #45 - Upgrade and readme tweaks by @lue-bird in #42
- Add missed
dict-extracontributors by @DanielJenkins in #50 - Fix Float.Extra.aboutEqual behaviour with infinities by @ianmackenzie in #51
- Add Set.Extra.any and Set.Extra.all by @miniBill in #53
- Triple.Extra by @gampleman in #52
- Make groupsOf... family of functions fully tail recursive. by @jmbromley in #47
- Update README.md by @gampleman in #57
- Adds List.Extra.{cons,conditional} by @gampleman in #63
- Adds Dict.Extra.{invertAll,upsert,updateIfExists} by @gampleman in #62
Full Changelog
ADDED MODULES
Triple.Extra
Dict.Extra
Added:
invertAll :
Dict.Dict comparable1 comparable2
-> Dict.Dict comparable2 (Set.Set comparable1)
updateIfExists :
comparable
-> (a -> a)
-> Dict.Dict comparable a
-> Dict.Dict comparable a
upsert :
comparable
-> a
-> (a -> a)
-> Dict.Dict comparable a
-> Dict.Dict comparable a
Float.Extra
Added:
equalWithin :
Basics.Float -> Basics.Float -> Basics.Float -> Basics.Bool
interpolateFrom :
Basics.Float -> Basics.Float -> Basics.Float -> Basics.Float
List.Extra
Added:
conditional : List.List ( a, Basics.Bool ) -> List.List a
cons : ( a, List.List a ) -> List.List a
Set.Extra
Added:
all : (a -> Basics.Bool) -> Set.Set a -> Basics.Bool
any : (a -> Basics.Bool) -> Set.Set a -> Basics.Bool
2.0.0
V2 is the same as the initial release, but merely removes all deprecated functions:
Array.Extra:
- apply : Array (a -> b) -> Array a -> Array b
- interweave : Array a -> Array a -> Array a
Basics.Extra:
- atLeast : comparable -> comparable -> comparable
- atMost : comparable -> comparable -> comparable
- fractionalModBy : Float -> Float -> Float
- orderBy : List (a -> a -> Order) -> a -> a -> Order
- swap : ( a, b ) -> ( b, a )
- toOrder : (a -> comparable) -> a -> a -> Order
- toOrderDesc : (a -> comparable) -> a -> a -> Order
Dict.Extra:
- fromListDedupe : (a -> a -> a) -> List ( comparable, a ) -> Dict comparable a
- fromListDedupeBy : (a -> a -> a) -> (a -> comparable) -> List a -> Dict comparable a
- insertDedupe : (v -> v -> v) -> comparable -> v -> Dict comparable v -> Dict comparable v
List.Extra:
- filterNot : (a -> Bool) -> List a -> List a
Maybe.Extra:
- traverse : (a -> Maybe b) -> List a -> Maybe (List b)
- traverseArray : (a -> Maybe b) -> Array a -> Maybe (Array b)
Result.Extra:
- singleton : a -> Result e a
Set.Extra:
- subset : Set comparable -> Set comparable -> Bool
String.Extra:
- removeAccents : String -> String
Tuple.Extra:
- sequenceFirstMaybe : ( Maybe a, b ) -> Maybe ( a, b )
- sequenceMaybe : ( Maybe a, Maybe b ) -> Maybe ( a, b )
- sequenceSecondMaybe : ( a, Maybe b ) -> Maybe ( a, b )