0.13.0
Released on 2014-04-20
Changes
- Type
- enhancement
- Tool
- Elixir
- Module
- Base
- Description
- Add `Base` module which does conversions to bases 16, 32, hex32, 64 and url64
- Type
- enhancement
- Tool
- Elixir
- Module
- Code
- Description
- Add `Code.eval_file/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- Collectable
- Description
- Add the `Collectable` protocol that empowers `Enum.into/2` and `Stream.into/2` and the `:into` option in comprehensions
- Type
- enhancement
- Tool
- Elixir
- Module
- Collectable
- Description
- Implement `Collectable` for lists, dicts, bitstrings, functions and provide both `File.Stream` and `IO.Stream`
- Type
- enhancement
- Tool
- Elixir
- Module
- EEx
- Description
- Add `handle_body/1` callback to `EEx.Engine`
- Type
- enhancement
- Tool
- Elixir
- Module
- Enum
- Description
- Add `Enum.group_by/2`, `Enum.into/2`, `Enum.into/3`, `Enum.traverse/2` and `Enum.sum/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Randomize cases and tests suite runs, allow seed configuration and the `--seed` flag via `mix test`
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Support `--only` for filtering when running tests with `mix test`
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Raise an error if another `capture_io` process already captured the device
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Improve formatter to show source code and rely on lhs and rhs (instead of expected and actual)
- Type
- enhancement
- Tool
- Elixir
- Module
- IEx
- Description
- Allow prompt configuration with the `:prompt` option
- Type
- enhancement
- Tool
- Elixir
- Module
- IEx
- Description
- Use werl on Windows
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- Support `ERL_PATH` in `bin/elixir`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- Support interpolation in keyword syntax
- Type
- enhancement
- Tool
- Elixir
- Module
- Map
- Description
- Add a Map module and support 17.0 maps and structs
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Add dependency option `:only` to specify the dependency environment. `mix deps.get` and `mix deps.update` works accross all environment unless `--only` is specified
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Add `Mix.Shell.prompt/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Ensure the project is compiled in case Mix' CLI cannot find a task
- Type
- enhancement
- Tool
- Elixir
- Module
- Node
- Description
- Add `Node.ping/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Process
- Description
- Include `Process.send/3` and support the `--gen-debug` option
- Type
- enhancement
- Tool
- Elixir
- Module
- Regex
- Description
- Regexes no longer need the "g" option when there is a need to use named captures
- Type
- enhancement
- Tool
- Elixir
- Module
- Stream
- Description
- Add `Stream.into/2` and `Stream.into/3`
- Type
- enhancement
- Tool
- Elixir
- Module
- StringIO
- Description
- Add a `StringIO` module that allows a String to be used as IO device
- Type
- enhancement
- Tool
- Elixir
- Module
- System
- Description
- Add `System.delete_env/1` to remove a variable from the environment
- Type
- enhancement
- Tool
- Elixir
- Module
- CLI
- Description
- Ensure `--app` is handled as an atom before processing
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Ensure `ExUnit.Assertions` does not emit compiler warnings for `assert_receive`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- Ensure the same pid is not queued twice in the parallel compiler
- Type
- enhancement
- Tool
- Elixir
- Module
- Macro
- Description
- `Macro.to_string/2` considers proper precedence when translating `!(foo > bar)` into a string
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Automatically recompile on outdated Elixir version and show proper error messages
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Ensure generated `.app` file includes core dependencies
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Allow a dependency with no SCM to be overridden
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- Allow queries in `mix local.install` URL
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- Do not recognize undefined aliases as switches
- Type
- enhancement
- Tool
- Elixir
- Module
- Dict
- Description
- `Dict.empty/1`, `Dict.new/1` and `Dict.new/2` are deprecated
- Type
- enhancement
- Tool
- Elixir
- Module
- Exception
- Description
- `Exception.normalize/1` is deprecated in favor of `Exception.normalize/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `lc` and `bc` comprehensions are deprecated in favor of `for` (this is a soft deprecation, no warning will be emitted)
- Type
- enhancement
- Tool
- Elixir
- Module
- ListDict
- Description
- `ListDict` is deprecated in favor of `Map` (this is a soft deprecation, no warning will be emitted)
- Type
- enhancement
- Tool
- Elixir
- Module
- Record
- Description
- `defrecord/2`, `defrecordp/3`, `is_record/1` and `is_record/2` macros in Kernel are deprecated. Instead, use the new macros and API defined in the `Record` module (this is a soft deprecation, no warnings will be emitted)
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Formatters are now required to be a GenEvent and `ExUnit.run/2` returns a map with results