Eric Meadows-Jönsson
bec7a0becb
Store Mix.Dep records in Mix.Dep.deps
2014-01-22 16:30:07 +01:00
José Valim
fe8fc1be25
Inline some process and node calls, closes #1808
2014-01-22 15:06:35 +01:00
Eric Meadows-Jönsson
bcb7cff5f2
Add Version.compare/2
2014-01-22 14:36:41 +01:00
José Valim
8023c29c3f
Consistently inline functions in the Kernel module by the compiler
2014-01-22 14:11:48 +01:00
José Valim
674f4a2cb3
Do not erase elixir_compiler_pid
2014-01-22 10:47:17 +01:00
José Valim
b326fe12d9
Unify deps.get and deps.update workflows
2014-01-22 10:00:08 +01:00
José Valim
263f0d1c81
Rename Mix.Deps.Retriever to Mix.Deps.Loader
2014-01-22 09:30:45 +01:00
José Valim
47ae5b4758
Move Elixir version mismatch to a warning, closes #1951
2014-01-22 09:28:51 +01:00
José Valim
25c54dad84
Remove duplicated type assertions
2014-01-21 21:08:43 +01:00
José Valim
48b8efe9c6
Ensure proper tokenization of the ... identifier
2014-01-21 20:50:43 +01:00
Eric Meadows-Jönsson
5d34fcdccd
Clear project stack in mix teardown
2014-01-21 12:51:43 +01:00
José Valim
e63546bda6
Ensure proper dependency on bootstrap
2014-01-21 10:25:31 +01:00
José Valim
04c8ca9718
Deprecate keywords, getter and list getter functionalities of defrecordp
...
Those functionalities can still be simulated via pattern matching
and perform basic operations. The reason for this deprecation is
that we are starting to unify defrecord/defrecordp syntaxes, so
instead of doing a big change at once, we are first bringing them
to a common set of functionalities to easy migration in the future.
2014-01-21 10:15:35 +01:00
José Valim
08d69e3975
Add a test for records with default function fields
2014-01-21 09:56:16 +01:00
Carsten Bormann
9764f3f384
Fix functions as default values in records
...
successful check_value/2 needs to return its second argument
2014-01-20 20:42:46 +01:00
José Valim
b1915b1ad6
Convert HashSet to use the new trie implementation
2014-01-20 13:58:43 +01:00
José Valim
b3e07652cc
Range is no longer a record
...
The goal is to simplify and allow us to extend ranges in the future.
Also, incentivate people to use `first .. last` in pattern matching
instead of `Range[first: first, last: last]`.
2014-01-20 12:24:22 +01:00
José Valim
cad7551caf
Inspect :... and :foo@bar as valid atoms
2014-01-20 12:24:22 +01:00
José Valim
8ac132fee1
Fix HashDict.pop signature
2014-01-20 12:24:22 +01:00
José Valim
ec94c93b24
Remove ** from operators list for now
2014-01-20 12:24:22 +01:00
xuming
9d4f15c1c9
minor typo in doc
2014-01-20 01:09:47 +08:00
José Valim
6bcb7adeb4
Clean up DictTest implementation
...
Before this commit, DictTest used too many helper functions
and used assertions in the opposite order.
2014-01-19 15:25:35 +01:00
José Valim
d311e10bea
Change HashDict implementation to use tries with compound nodes
...
The new implementation is basically a tree of tuples (tries) but
they allow compond nodes (a node with a key-value pair and a
sub-tree). This removes the need for node-expansion and also simplifies
the design structure to not require multiple stages nor buckets.
The end result is a faster HashDict implementation (about 10% faster
on access, 30% on updates), which is still small for small dicts
but about 30% bigger for large dicts (in terms of memory) and with
a much simpler implementation.
2014-01-19 13:58:45 +01:00
José Valim
adf7834529
Ensure ExUnit doesn't hang on linked failures
...
Thanks to @pminten for reporting this issue.
2014-01-18 19:41:19 +01:00
Ryan Coppolo
ce61c60af5
Deprecates binary_to_term and term_to_binary in Kernel.
2014-01-17 16:08:15 -08:00
José Valim
dc0dd43406
Simplify diverge/override mechanism in Mix.Deps
2014-01-17 17:47:13 +01:00
Eric Meadows-Jönsson
6c2744d373
Add index reflection to private records
...
Example:
defrecordp :user, [:name, age]
user(:age) #=> 2
2014-01-17 01:24:43 +01:00
José Valim
f671e1204c
Change precedence of <- to be the same as other generators
2014-01-16 20:08:55 +01:00
José Valim
c0af2622af
List iex -S mix at the bottom of mix help
2014-01-16 13:20:30 +01:00
José Valim
6b511cc844
Remove @hidden in mix tasks
...
Instead, we can use the presence or abscence of @shortdoc
to specify if the task should be shown or not.
2014-01-16 12:58:48 +01:00
José Valim
4ade0f98aa
Remove deprecated code
2014-01-16 10:26:48 +01:00
José Valim
67a672e6ed
Guarantee nullary funs/macros are allowed in guards, closes #1997
2014-01-16 10:00:39 +01:00
José Valim
54e8ea13f4
Ensure heredocs are allowed in calls, closes #1998
2014-01-16 09:49:13 +01:00
José Valim
5a2e838def
Deprecate <-/2 in favor of send/2
2014-01-14 18:27:41 +01:00
José Valim
42fc70a0eb
Deprecate Enum.first/1 in favor of Enum.at/2 and List.first/1
...
The main reason for this change is because `Enum.first/1` does
not communicate that enumeration will happen, in contrast to
functions like Enum.at/2 and Enum.fetch/2 which are meant to
be used with non-indexed collections and the need for enumeration
is made a bit more obvious.
Closes #1983
2014-01-14 16:26:32 +01:00
José Valim
87fee37711
Change String.next_grapheme/1 and String.next_codepoint/1 to return nil on string end
...
This is more composable in the sense can use in in if/cond constructs
and also makes it easy to build streams. Closes #1721 .
2014-01-14 16:15:54 +01:00
José Valim
4870351d2f
Deprecate continuable heredocs, closes #1986
2014-01-14 16:03:14 +01:00
José Valim
aba387c526
Ensure git scm does not take lock into account when comparing deps, closes #1992
2014-01-14 11:55:23 +01:00
John Warwick
68c9a28d06
Cleaning up Module docs
2014-01-14 17:31:28 +08:00
José Valim
30c9af3631
Merge pull request #1994 from devinus/eex-assigns-dict
...
Allow EEx.AssignsEngine to accept any Dict.t
2014-01-13 13:30:55 -08:00
Devin Torres
f42055be57
Allow EEx.AssignsEngine to accept any Dict.t
2014-01-13 15:21:26 -06:00
Chris McCord
8c45982cc6
Fix Module.definitions_in documentation typo.
2014-01-13 11:52:07 -05:00
Chas Lemley
94812b4242
fix error with float midpoint rounding
...
- remove midpoint rounding option from Float.round/2
- always midpoint round away from 0
2014-01-12 12:17:50 -05:00
John Warwick
7ea4b02460
Dict.Behaviour doc cleanup
2014-01-12 07:46:23 +08:00
José Valim
11423af777
Add missing fixture file for previous commit
2014-01-11 19:11:08 +01:00
José Valim
23c67ac47c
Add a test to ensure no hanging in ParallelCompiler
2014-01-11 19:10:43 +01:00
José Valim
3ae00072ae
Remove unecessary protocol in IEx.Autocomplete
2014-01-11 17:08:31 +01:00
José Valim
b4b9ecccb4
Remove :[] as a valid atom and do not allow remote container calls
2014-01-11 17:02:45 +01:00
José Valim
53b68887b6
Invert the precedence of | and when
...
Although this adds some drawbacks when it comes to typespecs,
it prepares us for when we have named patterns.
2014-01-11 16:52:46 +01:00
José Valim
407427f627
Take into get_rev_info command may fail when not in a git repository
2014-01-11 10:33:18 +01:00