Aleksei Magusev
c60ebb90bb
Use "option" instead of "keyword" in error message for alias
2017-03-26 15:14:14 +02:00
Aleksei Magusev
cc33b340b0
Improve test of discouraged types in TypespecTest
2017-03-26 15:14:14 +02:00
Jeff Kreeftmeijer
efa05882d0
Restore (deprecated) Integer.to_char_list/2 ( #5928 )
2017-03-25 14:05:54 +01:00
Andrea Leopardi
6311c0313e
Properly document passing strings to Module.split/1 ( #5927 )
2017-03-24 14:17:02 -07:00
Eksperimental
eb0f3ea6eb
Add typespecs and guards for the Module module ( #5869 )
2017-03-24 11:00:40 -07:00
José Valim
2d6e0fa476
Improvements to calendar
2017-03-23 18:37:30 +01:00
Qqwy / Wiebe-Marten
d017c5ab12
Adds internal Calendar Rata Die format for conversions between Calendars ( #5841 )
2017-03-23 17:55:38 +01:00
Eksperimental
d3f1fff8a9
Document and test function/0 built-in type ( #5908 )
2017-03-21 20:32:01 +01:00
Gal Tsubery
9d8ae7d287
Validate options for comprehension ( #5907 )
...
This change raises error when invalid keys are give to "for" loops and
prevents silent errors.
2017-03-21 19:41:08 +01:00
Gal Tsubery
0cedfc70d0
Optimize Map.merge/3 by choosing merge direction ( #5899 )
2017-03-18 21:22:16 +01:00
Gal Tsubery
c6766f4b2b
Add float overflow error message to Tokenizer ( #5893 )
2017-03-16 17:20:56 +00:00
Eksperimental
7357f56526
Add nonempty_charlist/0 built-in type ( #5879 )
2017-03-16 09:46:19 +01:00
Aleksei Magusev
526b1ce76b
Correct spelling in Calendar
2017-03-12 21:40:46 +01:00
Qqwy / Wiebe-Marten
9b056af70d
Ensure NaiveDateTime.to_iso8601/1 raises for non-Calendar.ISO structs ( #5865 )
2017-03-12 21:20:45 +01:00
José Valim
c4663ec885
Optimize checking of unused and unreachable locals
2017-03-10 12:20:21 +01:00
Aleksei Magusev
c6f83b59de
Correct tense in test messages
2017-03-05 22:55:09 +01:00
José Valim
ba24a2fef8
Inline binaries inside interpolation
2017-03-05 18:10:11 +01:00
José Valim
8a63cd03ac
Revert "Add MapSet.map_set?/1 function ( #5835 )"
...
Matching on the struct is the preferred and documented approach.
2017-03-05 16:21:24 +01:00
Aleksei Magusev
f9b6b08854
Remove unnecessary Enum.sort/1 calls
2017-03-05 15:45:06 +01:00
Eksperimental
2ef963acd0
Add test for OptionParser.parse/2 when it raises ( #5838 )
2017-03-05 11:08:16 +01:00
Michael Pope
3b1cefe5ae
Add MapSet.map_set?/1 function ( #5835 )
2017-03-04 22:41:20 +01:00
Eksperimental
8cee6fc20c
Implement own version of List.starts_with?/2 ( #5802 )
2017-03-03 21:33:55 +01:00
Gal Tsubery
6bb1037ec4
Fix integer invalid base error message ( #5826 )
2017-03-01 10:12:59 +01:00
YurkoHoshko
3b6bdde527
Support of ETS guard conditions for Registry.match ( #5825 )
2017-02-28 22:35:14 +00:00
Gal Tsubery
825e3dddf1
Improve Float ceil/round/floor error messages ( #5820 )
2017-02-28 16:08:53 +01:00
Eksperimental
8b11443625
Add space after comparison operator in Version example ( #5821 )
2017-02-27 13:08:31 +01:00
Gal Tsubery
a2c45a66dd
Prevent creation of DateTime above year 10k ( #5812 )
...
This aligns the behavior with NaiveDateTime and prevents exception when
calling DateTime.to_iso8601. It will catch the common case of
interpreting timestamps with the wrong accuracy, i.e. using
DateTime.from_unix(ts) when ts is in microsecond accuracy.
2017-02-26 15:30:40 +01:00
Aleksei Magusev
b10543cd20
Use correct file and module names for charlist tests
2017-02-25 19:01:15 +01:00
José Valim
3625f0d8be
Keep ?var_context per module to avoid chance of conflicts
2017-02-24 01:29:44 +01:00
José Valim
5d6961fd92
Check for float size on elixir_bitstring
2017-02-24 00:29:01 +01:00
José Valim
4e0b33a43a
Check for binary size in bitstring matches
2017-02-24 00:29:01 +01:00
José Valim
99892760de
Split bitstring logic into proper modules
2017-02-23 23:53:12 +01:00
José Valim
d84eadb45f
Improve checking of bitstrings
2017-02-23 22:55:35 +01:00
José Valim
102a8a3fa8
Add elixir_erl_compiler
2017-02-23 13:15:26 +01:00
TimNew
ec61b2fa0b
Add argument guard for Task.Supervisor.start_child/3 ( #5811 )
2017-02-23 12:44:04 +01:00
José Valim
2eb8490f9a
Add prematch_vars
2017-02-23 10:43:09 +01:00
Aleksei Magusev
403e690593
Fix var context in Kernel.ExpansionTest
2017-02-21 21:08:51 +01:00
José Valim
e89a384212
Improve to suite and docs
2017-02-21 14:50:41 +01:00
José Valim
300acb518e
Deprecate parens as nil and support guards on funs with zero arity
...
Closes #5799
2017-02-21 13:06:43 +01:00
Aleksei Magusev
a19f7a99bd
Remove unnecessary :location cleaning in Kernel.ExpansionTest
2017-02-21 00:06:34 +01:00
Andrea Leopardi
03a16c7496
Unify formatting of some common expansion errors ( #5797 )
2017-02-20 17:04:33 +01:00
Andrea Leopardi
c775ab6db2
Replace elixir_errors:compile_error/4 with form_error/4 in elixir_map
2017-02-20 13:24:24 +01:00
José Valim
fb588574a5
Fix camelize mechanism for uppercase chars
2017-02-20 12:31:53 +01:00
Andrea Leopardi
46d7ff9902
Unify the error we raise when cond/case/etc don't receive clauses ( #5796 )
...
Before this, we raised one error if we passed a list with some non-clauses in
it, and a different error if we passed a non-list.
2017-02-20 11:54:23 +01:00
José Valim
49ddf3736e
Move more from elixir_module to elixir_erl
2017-02-20 01:35:02 +01:00
Andrea Leopardi
0ff4f20bbc
Add tests for option handling in case/cond/try/receive
2017-02-20 00:45:31 +01:00
Andrea Leopardi
39c7115bc8
Replace elixir_errors:compile_error/4 with form_error/4 in elixir_with
2017-02-19 22:50:31 +01:00
Andrea Leopardi
9869361a8c
Fix option validation in "with"
...
Before this commit, we were not validating unexpected options passed to "with"
if the "else" option was not present, because we were only checking for unknown
options in the code that checked for "else". This commit fixes this by checking
for unknown option after having handled "do" and "else".
2017-02-19 22:46:25 +01:00
Andrea Leopardi
36abf99274
Make the error for local calls in matches/guards uniform ( #5794 )
...
The error for local calls in matches was showing the call, but the one for local
calls in guards wasn't.
2017-02-19 22:06:27 +01:00
Aleksei Magusev
84b67b5b95
Rename elixir_exp module to elixir_expand
2017-02-19 21:57:50 +01:00