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