Eksperimental
cf4272d22c
Style mention to operating systems ( #9562 )
...
Use:
- macOS, instead of MacOS X;
- Windows 7, instead of Win7
- Unix, instead of UNIX
- Unix-like operating system or Unix-like system, instead of just Unix
2019-11-19 16:54:07 +01:00
Eksperimental
a4a2a6e2c1
[ci skip] Copyedit deprecations table ( #9554 )
2019-11-19 16:53:01 +01:00
José Valim
aa7f19718c
Return {:error, :unavalable} for ensure_compiled in a deadlock ( #9543 )
2019-11-19 09:12:40 +01:00
Eksperimental
b468c456ae
Explicitly mention that def and defmacro define public functions/macros ( #9556 )
2019-11-19 09:11:16 +01:00
Eksperimental
b0d4288174
Use titlecase in Elixir, Erlang, EEx, Unicode, and Dialyzer ( #9557 )
2019-11-19 09:10:29 +01:00
Eksperimental
98daa2def1
Use argument instead of arg in error messages ( #9561 )
2019-11-19 09:09:10 +01:00
Eksperimental
3cd953a49d
Example in defmodule shows the return value as mentioned in the bulleted list ( #9555 )
2019-11-19 09:08:14 +01:00
Eksperimental
2d6df90b37
Refer properly to Erlang datetime tuple in the docs ( #9560 )
...
[ci skip]
2019-11-19 13:21:07 +05:30
Eksperimental
6fb8efc648
Use "operating system" instead of OS ( #9547 )
2019-11-18 09:21:52 +01:00
José Valim
ac4548f7cc
Deprecate Code.ensure_compiled?/1
...
There are many implications behind using Code.ensure_compiled?/1,
so we do not want to hide it behind a simple boolean check.
Instead use `Code.ensure_compiled/1` which is clearer about intent
and on return values.
2019-11-17 18:47:31 +01:00
Josh Price
5d57c91174
Make the number of attempted function clauses in FunctionClauseError more obvious ( #9544 )
2019-11-17 15:19:05 +01:00
Eksperimental
f40638d294
Introduce t:Calendar.ISO.microsecond/0 and fix t:Calendar.microsecond/0 ( #9541 )
...
The reasoning is that the `0..999_999` and `0..6` values only applied
to the Calendar.ISO calendar, and that could be restrictive for other
types of calendars. As discussed in
https://github.com/elixir-lang/elixir/pull/9493#pullrequestreview-312050446
2019-11-17 09:16:23 +01:00
Eksperimental
552b34a382
Add new types to Calendar.ISO ( #9512 )
2019-11-16 11:02:38 +01:00
Eksperimental
2e6c9c028f
Fix bug in Calendar.ISO.day_of_era/3 typespec ( #9539 )
...
Additionally, it introduces t:Calendar.day_of_era/0.
2019-11-16 11:01:55 +01:00
Eksperimental
0170bc8266
Improve Bitwise docs ( #9538 )
2019-11-16 11:01:24 +01:00
Eksperimental
123275eb92
Add specs for Bitwise ( #9537 )
2019-11-16 10:49:14 +01:00
José Valim
51801f769a
Remove outdated TODO
2019-11-16 10:46:43 +01:00
José Valim
8ffb10309c
Support profiling via elixirc
2019-11-16 02:57:42 +01:00
José Valim
2b05b8dcf3
Use version metadata in Erlang pass
2019-11-16 02:45:55 +01:00
Eric Meadows-Jönsson
b3e48bc1cb
Track variable version globally ( #9536 )
...
Instead of incrementing the version for each variable individually we increment it globally for all variables. This means we can uniquely identify each variable assignment with only the version.
2019-11-15 17:18:39 +01:00
José Valim
e1f347b75a
Add async: true to tests using capture_io :stderr
2019-11-15 10:00:16 +01:00
José Valim
d18f707dc9
Add patterns information to guards page
2019-11-14 12:33:53 +01:00
Fernando Tapia Rico
739de75187
Exclude tests that require epmd on Windows ( #9533 )
...
Temporary disable those test on Windows since the empd daemon is
failing to start in some Windows setups.
2019-11-14 09:32:13 +01:00
Eksperimental
941fbea976
Documentation updates in Bitwise module and functions ( #9528 )
...
* Add "Allowed in guard tests. Inlined by the compiler." to Bitwise functions
* Update @moduledoc for Bitwise since macros are functions now
[ci skip]
2019-11-14 09:29:27 +01:00
Fernando Tapia Rico
1bfebe66a3
Prevent calling non-async functions in async tests ( #9455 )
...
Capturing a named device other than `:stdio`, such as `:stderr`,
happens globally and requires `async: false`.
2019-11-14 08:11:02 +01:00
Eksperimental
4713a734ad
Improvements to MapSet moduledocs ( #9531 )
2019-11-14 07:46:04 +01:00
Eric Meadows-Jönsson
d0a3fdbfd7
Use reverse rewrite in checker
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
1e4e05ef78
Change Bitwise macros to rewrites
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
5cfaf11478
Add reverse rewrite and inline rules
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
16730b59c0
Make unification directed
...
This is to support subtype unification with source and target types for expression checking. Pattern checking is bidirectional, meaning it always picks the subtype, we do this by flipping the source and target on unification failures.
We can also simplify trace collection by removing the variable inference stack.
2019-11-13 16:42:25 +01:00
Eric Meadows-Jönsson
095a3cc3bd
Move unification to Infer module
2019-11-13 16:42:25 +01:00
Eric Meadows-Jönsson
45f29d226f
Split Infer into Expr and Pattern modules
2019-11-13 16:42:25 +01:00
Eric Meadows-Jönsson
3cef2ccf14
Remove unused parameter from register_key ( #9524 )
2019-11-13 16:42:03 +01:00
Eric Meadows-Jönsson
7ccabcca0a
Add --profile time flag to profile compilation steps ( #9519 )
2019-11-13 12:57:49 +01:00
Eric Meadows-Jönsson
a58b74d1ac
Add variable version to expanded meta ( #9520 )
2019-11-13 12:57:21 +01:00
Tomasz Marek Sulima
fe2b3b09c2
Remove struct/0 from the basic types in the typespecs docs ( #9523 )
...
[ci skip]
Closes #9522 .
2019-11-13 00:53:21 +01:00
José Valim
8e7befb108
Add parens to static remote nullary calls
...
test/erlang/module_test.erl have also been removed
as they have been ported elsewhere.
2019-11-08 17:59:08 +01:00
Tomasz Marek Sulima
52f01c22bc
Fix for default leftover in Enum.chunk/3 ( #9507 )
...
Closes #9506 .
2019-11-08 14:51:30 +01:00
Eksperimental
9071853fe8
Improvements to Calendar docs, specs and guards ( #9493 )
2019-11-08 14:40:43 +01:00
José Valim
5b097ae638
Traverse args of remote functions when looking for undefined/deprecation warnings
2019-11-08 14:32:30 +01:00
José Valim
e789d389be
Do deprecation of Supervise.Spec in steps
2019-11-07 09:37:43 +01:00
Eksperimental
b609add982
Use type-check when it's an adjective ( #9502 )
...
[ci skip]
2019-11-07 09:09:32 +01:00
Eksperimental
577797febb
Copyedit the guards page ( #9500 )
2019-11-07 00:36:41 +01:00
Wojtek Mach
c16cc7aa9d
Link defguard/1 and defguardp/1 ( #9501 )
2019-11-06 23:18:17 +01:00
Eksperimental
b169129315
Minor corrections to recently introduced changes in Guards page ( #9499 )
...
[ci skip]
2019-11-06 19:03:14 +01:00
José Valim
49d865b1a0
Ensure reassigned variables are properly carried forward
2019-11-06 19:00:36 +01:00
Vladimir Gorej
19f8951836
Fix a typo in Calendar docs ( #9498 )
2019-11-06 17:47:54 +01:00
Eric Meadows-Jönsson
8dbb3c7d92
Make distinction of guard expressions and functions/operators ( #9497 )
...
* Clarify distinction of guard expressions and functions and operators.
* Recommend using type-check guard functions.
* Reorder sections such that the "multiple guards" section immediately follows the "errors in guards" section.
2019-11-06 16:46:42 +01:00
Devon Estes
9a145026eb
Improve documentation around guards ( #9496 )
...
@eksperimental was right that while this was hinted at, this was never
specifically stated, so I added an explicit example since this functions
differently from other boolean checks (like `if` and such) in the
language.
Resolves #9495
2019-11-06 10:21:55 +01:00
José Valim
463b5d0888
Clarify evaluation rules for guards, closes #9495
2019-11-06 08:45:21 +01:00