José Valim
3b3c15b979
Do not add no_warn_undefined to CInf chunk
2019-12-09 10:33:35 +01:00
Eric Meadows-Jönsson
9394612a3d
Remove signatures from checker chunk ( #9634 )
2019-12-07 18:09:50 +01:00
José Valim
ba619b1c3e
Add Application.compile_env/3 ( #9628 )
...
Mix stores the compile_env in each applications' .app file.
Releases and Mix tasks were also changed to validate against
the runtime configuration against any stored `compile_env`.
In case of mismatches, an error is raised during boot.
2019-12-06 17:23:01 +01:00
Eric Meadows-Jönsson
40799f2688
Preserve slashes in URIs without authority ( #9632 )
...
Old behavior:
to_string(URI.parse("file:///path")) == "file:/path"
New behavior:
to_string(URI.parse("file:///path")) == "file:///path"
2019-12-06 16:34:13 +01:00
Jan Hruban
e1b14cad05
Close with correct accumulator in Stream.resource/3 ( #9627 )
...
In the optimized case with a single-element list returned from the
`next_fun`, call the stream function chain in a separate try/catch
block. If it errors out, call the `after_fun` with the new accumulator
returned from `next_fun`.
Previously the `after_fun` was called with the old accumulator in such
case.
2019-12-06 14:44:25 +01:00
José Valim
0a33059a10
Use .exs extension in config reader input
2019-12-04 16:40:51 +01:00
José Valim
d2ac69eafa
Ensure children are trapping exits before terminating
2019-12-04 12:33:01 +01:00
José Valim
917ad8ff2e
Fix race conditions in impl test
2019-12-04 12:24:24 +01:00
José Valim
46fa678f42
Refactor elixir_config and mix compilers for upcoming changes
2019-12-04 11:59:51 +01:00
José Valim
60733b8d7c
Print all undefined functions as warnings and then raise ( #9623 )
...
Sometimes one undefined function warning can hide others.
For example, in a function call like this:
foo(bar 1, 2)
The user may be expecting it to be called as:
foo(bar(1), 2)
But Elixir compiles it to:
foo(bar(1, 2))
In this case, the warning would be one of "undefined
function foo/1" or "undefined function bar/2", but they
are only "half truths". By showing all undefined function
warnings, we improve errors like above and it allows
users to see all undefined calls at once, when it would
otherwise require them to compile the code multiple times.
2019-12-03 10:33:59 +01:00
Eksperimental
b82ad0a512
Allows heading separator in IO.ANSI.Docs to not to have spaces around "|" ( #9616 )
...
This is supported by GFM (GitHub Flavored Markdown).
2019-12-03 10:01:02 +01:00
José Valim
6c0e49f0b7
Add examples to ambiguous op error message
2019-12-02 10:27:28 +01:00
Brandon Zylstra
949450e9ba
Grammar suggestions for syntax reference ( #9622 )
2019-12-02 10:03:35 +01:00
Eksperimental
1faf678709
Fix table format in Base module ( #9614 )
2019-12-01 09:11:53 +01:00
Eksperimental
7312b40458
Fix bug when last two columns are empty in IO.ANSI.Docs ( #9615 )
...
When this happened, the last "|" became the content of the second to
last column.
This happened for example with the table in the Base module
## Base 64 (URL and filename safe) alphabet
...
12 | M | 29 | d | 46 | u | 63 | _
13 | N | 30 | e | 47 | v | | |
14 | O | 31 | f | 48 | w | (pad) | =
15 | P | 32 | g | 49 | x | | |
16 | Q | 33 | h | 50 | y | | |
2019-12-01 09:10:45 +01:00
Eksperimental
9d87fe434e
Replace usage of "etc." ( #9569 )
2019-11-29 08:22:18 +01:00
Josh Price
9938ff428d
Replace exsplus with exrop as the OTP 20 default pseudorandom algorithm ( #9609 )
2019-11-28 18:32:15 +01:00
Samuel Pordeus
2ed9f6e006
Fix typo on test name ( #9611 )
2019-11-28 18:03:05 +01:00
José Valim
7bc73a3d18
Use infinity timeout in internal services
2019-11-27 11:17:09 +01:00
José Valim
54ea2b8715
Add deprecation notice to System.get_pid
2019-11-24 15:42:03 +01:00
Andrea Leopardi
3e0799ac22
Improve documentation for Config.Provider ( #9595 )
2019-11-24 10:48:42 +01:00
Yoshihiro Tanaka
ba18c3a0dd
Add missing unreserved character to URI document ( #9591 )
...
According to RFC 3986, section 2.3, add missing unreserved character.
The implementation already includes it.
2019-11-24 00:14:17 +01:00
José Valim
14fde590a8
Raise if a non-absolute path is given with host or authority ( #9589 )
2019-11-23 20:46:23 +01:00
Eksperimental
c137ed5ad3
Use URI.parse/1 instead of building %URI{} manually whenever possible ( #9590 )
2019-11-23 19:11:53 +01:00
José Valim
a94911881d
Expose an API for returning paths and streamline deprecations
2019-11-22 19:08:35 +01:00
José Valim
f6ef422f4c
No need to cache home
2019-11-22 19:08:35 +01:00
Eksperimental
2121cbd086
Replace usage of "e.g." ( #9571 )
2019-11-22 11:26:23 +01:00
José Valim
808500786c
Make generated app message consistent when building source, closes #9583
2019-11-22 11:25:01 +01:00
José Valim
5d773d9978
Fix race condition on dynamic supervisor test, closes #9574
2019-11-21 18:15:49 +01:00
José Valim
806b9c4cf6
Sleep after sending restart command
2019-11-20 21:10:19 +01:00
Piotr Szmielew
9dc8d21a41
Add second example for Stream.resource/3 ( #9564 )
2019-11-20 14:04:31 +01:00
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