Packages

A collection of extra utilities and extensions to the Elixir standard library

Current section

Files

Jump to
extra History.md
Raw

History.md

0.2.0 / 2017-08-30
==================
* feat(extra:kernel): Create `Kernel.Extra.boolean/1`
0.1.1 / 2017-08-30
==================
* deps(ex_doc): Add dependency on `ex_doc`
0.1.0 / 2017-08-30
==================
Initial external release of `extra`, extracted from our internal umbrella app
* build(circleci): Cache the `_build` folder on circleci
* build(dialyzer): Use :transitive for `plt_add_deps`
* build(circleci): Add config for CircleCI
* fix(mix): point mix.exs at non-umbrella files
* docs(): simplify README
* fix(mix-apps): Don't try to run Cortex on Drone
* deps(cortex): Update cortex to 0.2.1
* feat(): Add `Enum.Extra.rename_keys`
* feat(): Add a Monoid protocol
* feat(extra:keyword): Adds `get_keys/2` function
* feat(extra:keyword): Adds `fetch_keys!/*` fn
* deps(shorter-maps): Adds ShorterMaps dependency
* feat(extra:struct): Creates `keys/1` convenience fn
* fix(struct): disable credo nesting warning
* feat(extra:struct): Adds `merge/2` for structs
* fix(extra:string): Titlecase supports dashes
* feat(extra:struct): Adds `drop/2` convenience fn
* feat(extra:map): Adds `assert_keys!` and `has_keys?`
* feat(extra:map): Adds `take_non_nil` fn
* feat(extra:enum): add `unique?/1`
* feat(extra:enum): add `map_if/3`
* chore(core): upgrade to Elixir 1.5.1
* chore(): remove trailing whitespace from all files
* feat(extra:tuple): add `unwrap_ok!/1` and `wrap_with/2,` and `unwrap_ok_with_default/2`
* feat(extra:enum): add `reduce_or_error/3`
* fix(enum:extra): `map_or_error/3` adherering more closely to enum.map usage
* test(extra:stream): Covers `Stream.Extra.unwrap_oks!/1`
* feat(extra:stream): Impls `unwrap_oks!/1`
* chore(extra:stream): Updates `unwrap_oks/1` docs and impl
* deps(extra): Adds cortex to Extra
* fix(extra:module): ignore credo raise inside rescue warning
* refactor(extra:enum): Calls `Enum.to_list/1` for more assertive impl
* chore(dialyzer): fixing all of our broken typespecs
* chore(extra:process): doc changes, typo fixes
* feat(extra:process): add `nearest/2` function
* refactor(tests): Moves default test dir to env var
* refactor(extra:behaviour): Adds missing functions to error msg
* refactor(extra:keyword): Removes unnecessary `default/3` in favor of `get/3`
* docs(extra:keyword): Fixes incorrect spec
* feat(extra:file): Adds `ensure_dir/1`
* fix(ex_unit:extra): dont rely on Core.Config
* chore(): remove trailing whitespace
* feat(extra): implement `Process.Extra.exit/2`
* refactor(Keyword,Map.Extra): `assert_key!/3` `:nil_ok` => `:allow_nil_value` and default changed
* fix(keyword:extra): `assert_key!/3` ensures checked key is not nil by default
* feat(map:extra): optional `nil_ok:` boolean defaults to false
* feat(extra:keyword): Adds default function to remove default value boilerplate
* chore(extra:keyword,map): Enhances error message to include key
* chore(extra:map): Drops t in favor of map in specs
* chore(extra:map): Drops unless expr in favor of case expr
* chore(map:extra): Removes dead code from Map.Extra test
* feat(map:extra): Adds `assert_key!` for Map type
* feat(ex_unit:extra): `assert_receive_either/3` macro and test
* feat(extra:flow): `unwrap_oks/2`
* chore(list.extra): add docs for failure case of `List.Extra.pop_first/3`
* refactor(): Use better error return for `List.Extra.pop_first`
* feat(): add `List.Extra.pop_first`
* feat(extra:module): `Module.Extra.assert_exists!(module)` impl and tests
* feat(extra:behaviour): `Behaviour.Extra.assert_impl!(behaviour,` module) impl and tests
* chore(): Formats docs to conform to standards
* chore(): add typespecs for `Enum.Extra.index_by`
* docs(Enum.Extra): add examples for `Enum.Extra.index_by/2`
* chore(): fix grammar in test name
* feat(enum:extra): Adds `index_by/2` helper function
* refactor(extra:enum): `Enum.Extra.map_or_error/2` implemented, tests, docs
* chore(): Use more descriptive test names in `Enum.ExtraTest`
* feat(extra:map): impls `Map.each_or_error/2`
* chore(): remove trailing whitespace in `String.Extra`
* chore(errors): fix error message on `Keyword.Extra.assert_key!/3`
* feat(extra:enum): add `each_or_error/2` fn
* refactor(keyword:extra): Removes unnecessary default function - using `get/3` instead
* feat(keyword:extra): Adds `default/3` function for working with opts
* feat(extra): port over `Stream.Extra`
* feat(extra): port over `Keyword.Extra` module and tests
* feat(extra): port `String.Extra` from umbrella. Simplify API