0.14.3

Released on 2014-07-12

Changes

Type
enhancement
Tool
Elixir
Module
Access
Description
Allow function access on `get_in/2` and `get_and_update_in/3`
Type
enhancement
Tool
Elixir
Module
Enum
Description
Add `Enum.sort_by/3`
Type
enhancement
Tool
Elixir
Module
ExUnit
Description
Match the line filter by proximity instead of exact match
Type
enhancement
Tool
Elixir
Module
Float
Description
Support precision in `Float.ceil/1` and `Float.floor/1`
Type
enhancement
Tool
Elixir
Module
IO
Description
Add `IO.(bin)read(device, :all)`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Print a warning if a dangling `@doc` clause is found
Type
enhancement
Tool
Elixir
Module
Mix
Description
Use absolute symbolic links on Windows for `_build` instead of copying
Type
enhancement
Tool
Elixir
Module
Mix
Description
Add `Mix.compilers` that returns all default compilers used by mix tasks
Type
enhancement
Tool
Elixir
Module
Mix
Description
Issue warning and reset mtime for source files from the future
Type
enhancement
Tool
Elixir
Module
Mix
Description
Support task aliases in Mix
Type
enhancement
Tool
Elixir
Module
OptionParser
Description
Add `OptionParser.split/1` that splits a string into argv
Type
enhancement
Tool
Elixir
Module
Record
Description
Allow a record to be converted to a keyword list with `record(some_record)`
Type
enhancement
Tool
Elixir
Module
String
Description
Improve performance of `String.split/1`
Type
enhancement
Tool
Elixir
Module
Typespec
Description
Allow `%Struct{}` syntax to be used in typespecs
Type
enhancement
Tool
Elixir
Module
Typespec
Description
Allow `record(:record, fields)` syntax to be used in typespecs
Type
enhancement
Tool
Elixir
Module
IEx
Description
Do not print ANSI sequences on `IEx.Helpers.clear/0` if ANSI sequences are not supported
Type
enhancement
Tool
Elixir
Module
Inspect
Description
Ensure `Inspect.Algebra.to_doc/2` doesn't go into a loop when there is a failure printing a struct
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`|>`, `<<<`, `>>>` and `^^^` made left associative in operator table
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`<`, `>`, `<=`, `>=` given higher precedence than comparison operators (`==`, `!=`, etc) in the operator table
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Run command line and escripts in a process that does not trap exits
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Fix a bug where Mix paths had higher priority than CLI ones, causing protocol consolidations to not be properly loaded
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Fix wording on error messages when a check/guard always passes or always fails
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Fix a bug where an unused function warning was printed even when the function was used via `defoverridable`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Improve typespecs so they don't generate supertype dialyzer warnings
Type
enhancement
Tool
Elixir
Module
Macro
Description
`to_string` correctly displays sigils
Type
enhancement
Tool
Elixir
Module
Mix
Description
Ensure Mix dependencies are not compiled every second time when `mix deps.compile` is invoked
Type
enhancement
Tool
Elixir
Module
Mix
Description
Fix a bug where `Mix.shell.error/1` and friends choked when printing a map
Type
enhancement
Tool
Elixir
Module
Mix
Description
Ensure multiple `@external_resource` entries are read by Mix compilers
Type
enhancement
Tool
Elixir
Module
Mix
Description
Fix a bug where tasks for umbrella projects were not properly reenabled
Type
enhancement
Tool
Elixir
Module
Stream
Description
Fix bug when `flat_map` is used inside another `flat_map` with an Enumerable
Type
enhancement
Tool
Elixir
Module
Typespec
Description
Fix a bug where the `list` typespec was incorrectly rendered as `[]`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Using a list for bitstring modifiers is deprecated (as in `<>`), please use `-` as the separator instead (as in `<>`)
Type
enhancement
Tool
Elixir
Module
System
Description
`System.cmd/1` is deprecated in favor of `System.cmd/3`
Type
enhancement
Tool
Elixir
Module
Mix
Description
`mix escriptize` is deprecated in favor of `escript.build`
Type
enhancement
Tool
Elixir
Module
Mix
Description
`mix local.install` and `mix local.uninstall` have been deprecated in favor of `mix archive.install` and `mix archive.uninstall` respectively
Type
enhancement
Tool
Elixir
Module
Mix
Description
`:embed_extra_apps` for escripts is deprecated, instead list the dependencies inside `def application`
Type
enhancement
Tool
Elixir
Module
System
Description
Giving a char list to `System.find_executable/1` is deprecated
Type
enhancement
Tool
Elixir
Module
Access
Description
No longer fill in missing intermediate values with empty maps
Type
enhancement
Tool
Elixir
Module
Float
Description
`Float.ceil/2` and `Float.floor/2` now always returns floats and no longer accept integers
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`defstruct` no longer automatically defines a type
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`exit(integer)` is no longer supported from scripts to configure the exit signal. Use `exit({:shutdown, integer})` instead
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Default argument values have to be defined in a function head if the function has multiple clauses
Type
enhancement
Tool
Elixir
Module
Mix
Description
`mix archive.build` replaces the functionality of `mix archive`, `mix archive` now lists locally installed archives
Type
enhancement
Tool
Elixir
Module
Mix
Description
`Mix.shell.info/1` no longer automatically escape ANSI sequences. Instead if has to be explicitly enabled with the `ansi: true` option
Type
enhancement
Tool
Elixir
Module
OptionParser
Description
`--no-SWITCH` are only allowed for declared booleans switches