0.13.2

Released on 2014-05-11

Changes

Type
enhancement
Tool
Elixir
Module
Application
Description
Add an Application module with common functions to work with OTP applications
Type
enhancement
Tool
Elixir
Module
Exception
Description
Add `Exception.message/1`, `Exception.format_banner/1`, `Exception.format_exit/1` and `Exception.format/1`
Type
enhancement
Tool
Elixir
Module
File
Description
Add `File.ln_s/1`
Type
enhancement
Tool
Elixir
Module
Mix
Description
`mix deps.clean` now works accross environments
Type
enhancement
Tool
Elixir
Module
Mix
Description
Support line numbers in `mix test`, e.g. test/some/file_test.exs:12
Type
enhancement
Tool
Elixir
Module
Mix
Description
Use `@file` attributes to detect dependencies in between `.ex` and external files. This means changing an `.eex` file will no longer recompile the whole project only the files that depend directly on it
Type
enhancement
Tool
Elixir
Module
Mix
Description
Support application configurations in `config/config.exs` which can be customized by specifying your own `:config_path`
Type
enhancement
Tool
Elixir
Module
Mix
Description
Support user-wide configuration with `~/.mix/config.exs`
Type
enhancement
Tool
Elixir
Module
Mix
Description
`mix help` now uses ANSI formatting to print guides
Type
enhancement
Tool
Elixir
Module
Regex
Description
Support functions in `Regex.replace/4`
Type
enhancement
Tool
Elixir
Module
String
Description
Support `:parts` in `String.split/3`
Type
enhancement
Tool
Elixir
Module
Code
Description
Ensure we don't lose the caller stacktrace on code evaluation
Type
enhancement
Tool
Elixir
Module
IEx
Description
Exit signals now exits the IEx evaluator and a new one is spawned on its place
Type
enhancement
Tool
Elixir
Module
IEx
Description
Ensure we don't prune too much stacktrace when reporting failures
Type
enhancement
Tool
Elixir
Module
IEx
Description
Fix an issue where `iex.bat` on Windows was not passing the proper parameters forward
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Ensure modules defined on root respect defined aliases
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Do not wrap single lists in `:__block__`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Ensure emitted beam code works nicely with dialyzer
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Do not allow a module named `Elixir` to be defined
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Create remote funs even if mod is a variable in capture `&mod.fun/arity`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
Improve compiler message when duplicated modules are detected
Type
enhancement
Tool
Elixir
Module
Mix
Description
Generate `.gitignore` for `--umbrella` projects
Type
enhancement
Tool
Elixir
Module
Mix
Description
Verify if a git dependency in deps has a proper git checkout and clean it automatically when it doesn't
Type
enhancement
Tool
Elixir
Module
Mix
Description
Ensure `mix test` works with `IEx.pry/0`
Type
enhancement
Tool
Elixir
Module
System
Description
Convert remaining functions in System to rely on char data
Type
enhancement
Tool
Elixir
Module
Application
Description
`use Application.Behaviour` is deprecated in favor of `use Application`
Type
enhancement
Tool
Elixir
Module
Exception
Description
`exception.message` is deprecated in favor `Exception.message/1` for retrieving exception messages
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
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
IEx
Description
IEx.Options is deprecated in favor of `IEx.configure/1` and `IEx.configuration/0`
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`lc` and `bc` comprehensions are deprecated in favor of `for`
Type
enhancement
Tool
Elixir
Module
Macro
Description
`Macro.safe_terms/1` is deprecated
Type
enhancement
Tool
Elixir
Module
Process
Description
`Process.delete/0` is deprecated
Type
enhancement
Tool
Elixir
Module
Regex
Description
Deprecate `:global` option in `Regex.split/3` in favor of `parts: :infinity`
Type
enhancement
Tool
Elixir
Module
String
Description
Deprecate `:global` option in `String.split/3` in favor of `parts: :infinity`
Type
enhancement
Tool
Elixir
Module
ExUnit
Description
`ExUnit.Test` and `ExUnit.TestCase` has been converted to structs
Type
enhancement
Tool
Elixir
Module
ExUnit
Description
The test and callback context has been converted to maps
Type
enhancement
Tool
Elixir
Module
Kernel
Description
`File.Stat`, `HashDict`, `HashSet`, `Inspect.Opts`, `Macro.Env`, `Range`, `Regex` and `Version.Requirement` have been converted to structs. This means `is_record/2` checks will no longer work, instead, you can pattern match on them using `%Range{}` and similar
Type
enhancement
Tool
Elixir
Module
URI
Description
The `URI.Info` record has now become the `URI` struct
Type
enhancement
Tool
Elixir
Module
Version
Description
The `Version.Schema` record has now become the `Version` struct