José Valim
685dd1a3e0
Return {:error, :unavalable} for ensure_compiled in a deadlock ( #9543 )
2019-11-19 09:12:40 +01:00
Eksperimental
00053dc00f
Explicitly mention that def and defmacro define public functions/macros ( #9556 )
2019-11-19 09:11:16 +01:00
Eksperimental
0acab05f53
Use titlecase in Elixir, Erlang, EEx, Unicode, and Dialyzer ( #9557 )
2019-11-19 09:10:29 +01:00
Eksperimental
83ec6e3614
Use argument instead of arg in error messages ( #9561 )
2019-11-19 09:09:10 +01:00
Eksperimental
1d02b882b3
Example in defmodule shows the return value as mentioned in the bulleted list ( #9555 )
2019-11-19 09:08:14 +01:00
Eksperimental
209b02120c
Refer properly to Erlang datetime tuple in the docs ( #9560 )
...
[ci skip]
2019-11-19 13:21:07 +05:30
Eksperimental
fab82a99a7
Use "operating system" instead of OS ( #9547 )
2019-11-18 09:21:52 +01:00
José Valim
b0e7bcd702
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
9917d3920a
Make the number of attempted function clauses in FunctionClauseError more obvious ( #9544 )
2019-11-17 15:19:05 +01:00
Eksperimental
2568ea2dc0
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
ac79670925
Add new types to Calendar.ISO ( #9512 )
2019-11-16 11:02:38 +01:00
Eksperimental
d0edd59cb1
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
b67f18e9ea
Improve Bitwise docs ( #9538 )
2019-11-16 11:01:24 +01:00
Eksperimental
a6b473951e
Add specs for Bitwise ( #9537 )
2019-11-16 10:49:14 +01:00
José Valim
b81a84f862
Remove outdated TODO
2019-11-16 10:46:43 +01:00
José Valim
db3f3ef174
Support profiling via elixirc
2019-11-16 02:57:42 +01:00
José Valim
dbf8a7a9fe
Use version metadata in Erlang pass
2019-11-16 02:45:55 +01:00
Eric Meadows-Jönsson
623a91936b
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
97076019e4
Add async: true to tests using capture_io :stderr
2019-11-15 10:00:16 +01:00
José Valim
19157377cc
Add patterns information to guards page
2019-11-14 12:33:53 +01:00
Fernando Tapia Rico
1e9a781971
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
29574aa245
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
084373846b
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
ed821750e8
Improvements to MapSet moduledocs ( #9531 )
2019-11-14 07:46:04 +01:00
Eric Meadows-Jönsson
d2418152d0
Use reverse rewrite in checker
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
9587134429
Change Bitwise macros to rewrites
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
8ece599b6d
Add reverse rewrite and inline rules
2019-11-14 00:16:01 +01:00
Eric Meadows-Jönsson
904ce121e2
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
d2df63470f
Move unification to Infer module
2019-11-13 16:42:25 +01:00
Eric Meadows-Jönsson
4ae121700a
Split Infer into Expr and Pattern modules
2019-11-13 16:42:25 +01:00
Eric Meadows-Jönsson
c65f9d1325
Remove unused parameter from register_key ( #9524 )
2019-11-13 16:42:03 +01:00
Eric Meadows-Jönsson
2e13e5d8a4
Add --profile time flag to profile compilation steps ( #9519 )
2019-11-13 12:57:49 +01:00
Eric Meadows-Jönsson
a3fc4b3f9e
Add variable version to expanded meta ( #9520 )
2019-11-13 12:57:21 +01:00
Tomasz Marek Sulima
b108d3cfd7
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
08d6fe8cb8
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
7ae8a96702
Fix for default leftover in Enum.chunk/3 ( #9507 )
...
Closes #9506 .
2019-11-08 14:51:30 +01:00
Eksperimental
73eb15dd07
Improvements to Calendar docs, specs and guards ( #9493 )
2019-11-08 14:40:43 +01:00
José Valim
c87b6307cd
Traverse args of remote functions when looking for undefined/deprecation warnings
2019-11-08 14:32:30 +01:00
José Valim
1c864fca7d
Do deprecation of Supervise.Spec in steps
2019-11-07 09:37:43 +01:00
Eksperimental
ef5b0fb9ef
Use type-check when it's an adjective ( #9502 )
...
[ci skip]
2019-11-07 09:09:32 +01:00
Eksperimental
8c72af6478
Copyedit the guards page ( #9500 )
2019-11-07 00:36:41 +01:00
Wojtek Mach
d6666caa12
Link defguard/1 and defguardp/1 ( #9501 )
2019-11-06 23:18:17 +01:00
Eksperimental
d4b0680f35
Minor corrections to recently introduced changes in Guards page ( #9499 )
...
[ci skip]
2019-11-06 19:03:14 +01:00
José Valim
b423b9e2b9
Ensure reassigned variables are properly carried forward
2019-11-06 19:00:36 +01:00
Vladimir Gorej
d814f09c1c
Fix a typo in Calendar docs ( #9498 )
2019-11-06 17:47:54 +01:00
Eric Meadows-Jönsson
24cab18d2f
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
0e1dfc4edf
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
f78841ae09
Clarify evaluation rules for guards, closes #9495
2019-11-06 08:45:21 +01:00
Cleidiano Oliveira
a8b948c308
Fix a typo on System.build_info docs ( #9491 )
2019-11-05 13:43:25 +01:00
Eksperimental
f92e36904f
Updates on DynamicSupervisor.start_child/2 ( #9434 )
...
- Updates specs to include old_erlang_child_spec.
- Improve docs.
2019-11-05 08:55:09 +01:00