Commit Graph
10350 Commits
Author SHA1 Message Date
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
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
Andrea Leopardi b22d732d3f Improve docs for DynamicSupervisor.child_spec/1 (#12370) 2023-01-29 13:51:32 +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 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 LeopardiandJosé 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
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
José Valim 7b769a4ab0 Add Code.prepend_paths/1 and Code.append_paths/1 2023-01-18 15:11:19 +01:00
José Valim fea56cfa95 Clarify Path.relative_to/2 docs 2023-01-18 12:37:06 +01:00
José Valim ddef5c65c6 Fix link to "Strictly Prettier"
Closes #12344.
2023-01-17 14:38:25 +01:00
José Valim a3a7b15768 Fix accidental variable match in errors from macro, closes #12340 2023-01-15 11:19:02 +01:00
Kah Goh e2ba2a67db Improve docs for Kernel.**/2 (#12339)
This change:

- explicitly mentions that both numbers need to be integers for the
  result to be an integer to make that condition clearer.
- adds @spec for the float-integer and integer-float inputs.
2023-01-14 20:34:57 +01:00
José Valim 77e3293233 Properly handle Macro inputs and output types in expansion
Closes #12299
Closes #12324
2023-01-14 16:00:14 +01:00
José Valim 2fdec63291 Inline Map.intersect/2 and delegate to :maps.merge_with/2 2023-01-13 12:50:27 +01:00
José Valim 7590e08106 Make pry opt-in on dbg with --dbg pry 2023-01-13 11:23:27 +01:00
Ed Flanagan 09d35db6c1 Add Map.intersect/2 and Map.intersect/3 (#12336) 2023-01-13 10:01:37 +01:00
Gustavo Bicalho 5f8f5f6320 Fix arity of __after_verify__ in Compile callbacks documentation (#12334) 2023-01-12 15:35:28 +01:00
Leandro Pereira 3edac7c6a3 system_test - link instead of copy to bypass macos 13 codesign (#12327)
Fix #12290
2023-01-10 20:46:33 +01:00
sabiwara 36a99359f4 Fix Macro.to_string/1 for large negative integers (#12326) 2023-01-10 10:50:34 +01:00
José Valim 6b7e99e50f Support :lines in System.cmd/3 (#12323) 2023-01-09 10:59:03 +01:00
Leandro Pereira 8014350645 Pretty print KeyError exception message (#12322) 2023-01-06 23:23:47 +01:00
José Valim 79bebf971f Use new Code.loaded?/1 2023-01-06 23:13:56 +01:00
José Valim 7def1fdae9 Remove unecessary :beam_lib.info/1 call, closes #12317 2023-01-06 12:11:24 +01:00
Greg Mefford f8540ab193 Add details about waiting information in --profile time compiler output (#12310) 2023-01-04 23:31:21 +01:00
José Valim 7b73407af8 Respect line breaks after =
Many editors use indentation for collapsing
so folks may want to use `var =` followed by
new line to collapse. This PR makes it possible
and aligns `=` with other operators.
2023-01-04 12:06:58 +01:00
felipe stival ca9ecc16c4 Add Code.loaded?/1 (#12314) 2022-12-26 12:38:18 +01:00
José Valim aacf524520 Add linear time disclaimer 2022-12-23 21:57:19 -03:00