Scott Bradshaw
b5d883c8bb
Add support for epoch time (%s) to Calendar strftime ( #12380 )
2023-02-07 09:58:33 +01:00
José Valim
22b7686fa8
Raise on misplaced ... in typespecs, closes #12377
2023-02-06 11:28:58 +01:00
felipe stival
0a08b06f67
Add backticks to tuple in docs ( #12379 )
2023-02-05 23:47:20 +01:00
felipe stival
b3cc3dd47c
Accept {module, function} tuples in ExUnit setup ( #12378 )
2023-02-05 21:42:08 +01:00
José Valim
5e710eaa8c
Do not add runtime deps for alias references in patterns and guards
2023-02-03 19:37:15 +01:00
José Valim
2f6f8964ce
Improve docs and coverage
2023-02-03 19:11:49 +01:00
José Valim
a7848bd432
mix format
2023-02-02 22:01:01 +01:00
José Valim
3b72a34389
Add a test for compilation to core
2023-02-02 21:50:59 +01:00
Bram Verburg
4e4f150cd6
Fix elixir_erl:debug_info/4 returning core_v1 ( #12376 )
2023-02-02 21:47:19 +01:00
José Valim
e1eecb8ca6
Move path loading and IEx booting to Elixir ( #12375 )
...
This gives us more control to cache paths
and over boot compared to relying on scripts.
This also makes it easier for someone to provide
alternatives to IEx.
2023-02-02 21:45:24 +01:00
José Valim
bcf789f41e
Do not share refs across receives
2023-02-01 21:24:45 +01:00
José Valim
a33693e161
Also share the creation of references/aliases
2023-02-01 18:40:56 +01:00
José Valim
25080822b8
Enable selective receive optimizations in Task
...
This will work from Erlang/OTP 26.
2023-02-01 15:47:45 +01:00
Michał Łępicki
e31aee546b
Correct stop return type ( #12373 )
2023-02-01 09:58:47 +01:00
José Valim
52a0a8e221
Clarify stop is async
2023-02-01 00:09:45 +01:00
KiKoS0
bf4556470a
Support nested expressions in cursor_context/1 ( #12369 )
...
Closes #11876 .
2023-01-30 13:03:33 +01:00
José Valim
b08834c0de
Update CHANGELOG
2023-01-30 00:10:45 +01:00
José Valim
acb0e3c728
Ensure ssl and inets are available on Mix.Utils
2023-01-29 19:15:53 +01:00
José Valim
96c6a541f5
Keep the compiler for erlang packages
2023-01-29 18:44:43 +01:00
José Valim
0721d1a01a
Return the accumulator from app traversal
2023-01-29 18:37:03 +01:00
José Valim
d4ef3ea9bb
Improve version mismatch error message
2023-01-29 18:23:12 +01:00
Michał Łępicki
f58826e594
Fix IEx.Broker.take_over/3 spec ( #12371 )
...
The return type changed in
https://github.com/elixir-lang/elixir/commit/44f88ef91c3202a3603b5f42a05862909907dae7#diff-3e0ede30fd7f00793f4a685a30d4dfc03dfd3c881e1f648d9299b03470ad5a42R134
2023-01-29 16:25:09 +01:00
José Valim
9f927fdb04
Embed application tracer into app loader
2023-01-29 14:01:42 +01:00
Andrea Leopardi
b22d732d3f
Improve docs for DynamicSupervisor.child_spec/1 ( #12370 )
2023-01-29 13:51:32 +01:00
José Valim
3798fcce03
Update docs and code comments
2023-01-29 13:11:25 +01:00
José Valim
b45ce8ad85
Add a test for builtin apps restoration in Mix.install/2
2023-01-29 12:55:07 +01:00
José Valim
302da8c73f
Merge private Mix.PublicKeys module into Mix.Local
2023-01-29 12:52:46 +01:00
José Valim
50960ca449
Restore builtin apps for Mix.install/2
2023-01-29 12:52:34 +01:00
José Valim
e48365242a
Prune load paths before compilation
...
Prior to this commit, Elixir would never prune load
paths before compiling the current project and dependencies.
This means that if you had two independent dependencies,
`abc` and `xyz`, and `abc` was compiled before `xyz`,
`abc` would still be in the load path as `xyz` was compiled.
This commit makes it so load paths are always pruned to the
current dependencies before the project is compiled. This makes
it so unlisted Erlang apps, Elixir apps, and umbrella siblings
are no longer available. This also comes with the benefit that
we can fully remove the application tracer and compiling
dependnecies for larger applications is faster as the load paths
no longer accumulate.
Closes #12367 .
Closes #12318 .
2023-01-29 12:18:50 +01:00
José Valim
bcb1f68a06
Monitor instead of linking on StringIO
2023-01-28 12:30:33 +01:00
José Valim
42af91d6ac
Move capture logging inside the test process
2023-01-28 12:13:03 +01:00
José Valim
d06e2d851b
Optimize application tracer ( #12368 )
2023-01-28 00:25:23 +01:00
andrewmelis
49954d7184
Fix out-of-order arguments in IEx.Server.shell_loop ( #12366 )
2023-01-27 20:38:32 +01:00
José Valim
074d30958d
mix format
2023-01-27 12:34:56 +01:00
José Valim
44f88ef91c
Use IO prompt for better autocompletion experience
...
Unfortunately this has two implications:
* The IEx counter always grows instead of being reset
* pry(N) will now be styled as iex(N)
Closes #12365 .
2023-01-27 12:25:11 +01:00
José Valim
158114e3fe
Refactor prompt writing
2023-01-27 11:19:10 +01:00
José Valim
754ad427c1
Clarify :parser_options scope, closes #12364
2023-01-26 07:55:10 +01:00
José Valim
d5882c4f17
Use :code.is_loaded/1 to avoid file system lookup
2023-01-24 14:41:27 +01:00
Andrea Leopardi and José Valim
7674bb09fd
Add Code.ensure_all_loaded(!)/1 ( #12363 )
...
Co-authored-by: José Valim <jose.valim@dashbit.co >
2023-01-24 13:15:35 +01:00
Andrea Leopardi
1c75810f42
Add type t:Registry.listener_message/0 ( #12362 )
...
I also added some docs for this feature.
2023-01-24 12:53:58 +01:00
JP Ramassini
aa8e6d3feb
Add error message when piping into an expression ending in bracket-based access ( #12359 )
...
Closes #12351 .
2023-01-23 21:43:42 +01:00
Andrea leopardi
e36328c68a
Remove unnecessary module prefix in Macro
2023-01-23 17:12:53 +01:00
Andrea Leopardi
43fae44326
Format logic expressions in dbg/2 ( #12358 )
2023-01-23 17:07:50 +01:00
Rich Morin
71070cda93
Fix some wording in the docs ( #12357 )
2023-01-21 20:38:21 +01:00
José Valim
b222b2372d
Add and use --purge-consolidation-path-if-stale
2023-01-20 23:15:47 +01:00
Simon Prévost
a88938bd11
Let pid/1 parse a pid's inspection string ( #12355 )
2023-01-20 20:14:18 +01:00
sabiwara
c0b9f74f27
Optimize for into map as Enum.map/2 ( #12353 )
2023-01-19 16:19:25 +01:00
sabiwara
44b5d3dcb7
Optimize for as Enum.map/2 when sensible ( #12352 )
2023-01-19 13:47:14 +01:00
José Valim
d86916cae8
Improve error message for {foo: :bar} and <<foo: :bar>>
2023-01-19 00:09:40 +01:00
José Valim
61a7af6ed1
Trim down work required on boot time
2023-01-18 23:38:02 +01:00