0.13.3
Released on 2014-05-24
Changes
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- Add `:strict` option that only parses known switches
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- Add `next/2` useful for manual parsing of options
- Type
- enhancement
- Tool
- Elixir
- Module
- Macro
- Description
- Add `Macro.prewalk/2/3` and `Macro.postwalk/2/3`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `GenEvent`, `GenServer`, `Supervisor`, `Agent` and `Task` modules added
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- Make deprecations compiler warnings to avoid the same deprecation being printed multiple times
- Type
- enhancement
- Tool
- Elixir
- Module
- Enum
- Description
- Fix `Enum.join/2` and `Enum.map_join/3` for empty binaries at the beginning of the collection
- Type
- enhancement
- Tool
- Elixir
- Module
- ExUnit
- Description
- Ensure the formatter doesn't error when printing :EXITs
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- Rename `ELIXIR_ERL_OPTS` to `ELIXIR_ERL_OPTIONS` for consistency with `ERL_COMPILER_OPTIONS`
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- Parse `-` as a plain argument
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- `--` is always removed from argument list on `parse/2` and when it is the leading entry on `parse_head/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- Regex
- Description
- Properly escape regex (previously regex controls were double escaped)
- Type
- enhancement
- Tool
- Elixir
- Module
- Dict
- Description
- `Dict.Behaviour` is deprecated in favor of `Dict`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `Application.Behaviour`, `GenEvent.Behaviour`, `GenServer.Behaviour` and `Supervisor.Behaviour` are deprecated in favor of `Application`, `GenEvent`, `GenServer` and `Supervisor`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `defexception/3` is deprecated in favor of `defexception/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `raise/3` is deprecated in favor of `reraise/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `set_elem/3` is deprecated in favor of `put_elem/3`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `atom_to_binary/1` and `atom_to_list/1` are deprecated in favor of `Atom.to_string/1` and `Atom.to_char_list/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `bitstring_to_list/1` and `list_to_bitstring/1` are deprecated in favor of the `:erlang` ones
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `binary_to_atom/1`, `binary_to_existing_atom/1`, `binary_to_float/1`, `binary_to_integer/1` and `binary_to_integer/2` are deprecated in favor of conversion functions in `String`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `float_to_binary/*` and `float_to_list/*` are deprecated in favor of `Float.to_string/*` and `Float.to_char_list/*`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `integer_to_binary/*` and `integer_to_list/*` are deprecated in favor of `Integer.to_string/*` and `Integer.to_char_list/*`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `iodata_to_binary/1` and `iodata_length/1` are deprecated `IO.iodata_to_binary/1` and `IO.iodata_length/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `list_to_atom/1`, `list_to_existing_atom/1`, `list_to_float/1`, `list_to_integer/1`, `list_to_integer/2` and `list_to_tuple/1` are deprecated in favor of conversion functions in `List`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `tuple_to_list/1` is deprecated in favor of `Tuple.to_list/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- List
- Description
- `List.from_char_data/1` and `List.from_char_data!/1` deprecated in favor of `String.to_char_list/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- String
- Description
- `String.from_char_data/1` and `String.from_char_data!/1` deprecated in favor of `List.to_string/1`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `is_exception/1`, `is_record/1` and `is_record/2` are deprecated in favor of `Exception.exception?1`, `Record.record?/1` and `Record.record?/2`
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `defrecord/3` is deprecated in favor of structs
- Type
- enhancement
- Tool
- Elixir
- Module
- Kernel
- Description
- `:hygiene` in `quote` is deprecated
- Type
- enhancement
- Tool
- Elixir
- Module
- Mix
- Description
- `Mix.project/0` is deprecated in favor of `Mix.Project.config/0`
- Type
- enhancement
- Tool
- Elixir
- Module
- Process
- Description
- `Process.spawn/1`, `Process.spawn/3`, `Process.spawn_link/1`, `Process.spawn_link/3`, `Process.spawn_monitor/1`, `Process.spawn_monitor/3`, `Process.send/2` and `Process.self/0` are deprecated in favor of the ones in `Kernel`
- Type
- enhancement
- Tool
- Elixir
- Module
- Exception
- Description
- Exceptions now generate structs instead of records
- Type
- enhancement
- Tool
- Elixir
- Module
- OptionParser
- Description
- Errors on parsing returns the switch and value as binaries (unparsed)
- Type
- enhancement
- Tool
- Elixir
- Module
- String
- Description
- `String.to_char_list/1` (previously deprecated) no longer returns a tuple but the char list only and raises in case of failure