Elixir release

0.10.3

Change breakdown

Organization at a glance

Detailed changelog

Enhancement

25 changes

Tool: Enhancements Module: Enum

Add Enum.take_every/2

Tool: Enhancements Module: IEx

IEx now respects signals sent from the Ctrl+G menu

Tool: Enhancements Module: Kernel

Allow documentation for types with @typedoc

Tool: Enhancements Module: Mix

Allow apps to be selected in umbrella projects

Tool: Enhancements Module: Record

Generated record functions new and update also take options with strings as keys

Tool: Enhancements Module: Stream

Add Stream.unfold/1

Tool: Bug fixes Module: Dict

Fix a bug when a HashDict was marked as equal when one was actually a subset of the other

Tool: Bug fixes Module: EEx

Solve issue where do blocks inside templates were not properly aligned

Tool: Bug fixes Module: ExUnit

Improve checks and have better error reports on poorly aligned doctests

Tool: Bug fixes Module: Kernel

Fix handling of multiple heredocs on the same line

Tool: Bug fixes Module: Kernel

Provide better error messages for match, guard and quoting errors

Tool: Bug fixes Module: Kernel

Make Kernel.raise/2 a macro to avoid messing up stacktraces

Tool: Bug fixes Module: Kernel

Ensure &() works on quoted blocks with only one expression

Tool: Bug fixes Module: Mix

Address an issue where a dependency was not compiled in the proper order when specified in different projects

Tool: Bug fixes Module: Mix

Ensure compile: false is a valid mechanism for disabling the compilation of dependencies

Tool: Bug fixes Module: Regex

Fix bug on Regex.scan/3 when capturing groups and the regex has no groups

Tool: Bug fixes Module: String

Fix a bug with String.split/2 when given an empty pattern

Tool: Bug fixes Module: Typespec

Guarantee typespecs error reports point to the proper line

Tool: Deprecations Module: Kernel

The previous partial application syntax (without the & operator) has now been deprecated

Tool: Deprecations Module: Regex

Regex.captures/3 is deprecated in favor of Regex.named_captures/3

Tool: Deprecations Module: String

String.valid_codepoint?/1 is deprecated in favor of pattern matching with <<_ :: utf8 >>

Tool: Backwards incompatible changes Module: IEx

The r/0 helper has been removed as it caused surprising behaviour when many modules with dependencies were accumulated

Tool: Backwards incompatible changes Module: Mix

Mix.Version was renamed to Version

Tool: Backwards incompatible changes Module: Mix

File.IteratorError was renamed to IO.StreamError

Tool: Backwards incompatible changes Module: Mix

mix new now defaults to the --sup option, use --bare to get the previous behaviour