José Valim
097eee9d5f
Add Macro.Env.expand_import/5 and Macro.Env.expand_require/6 ( #13421 )
2024-03-21 10:51:10 +01:00
Jean Klingler
3da9af2150
Only infer size in pinned variable when needed ( #13423 )
2024-03-20 18:59:21 +09:00
José Valim
b8f069d08e
Fix parsing of ambiguous operators followed by containers
...
Closes #13402 .
2024-03-09 11:17:06 +01:00
Tiago Moraes
f9a139b7f8
Check exports on compile time context modules ( #13400 )
2024-03-08 18:47:23 +01:00
José Valim
b3710dea97
Always start IEx shell via -user
...
There is some uncertainty as to wether it will be possible
to start an IEx shell dynamically from a -noshell environment.
Therefore, this PR simplifies the shell booting to still
rely on -user, as it did earlier than Erlang/OTP 26.
2024-02-29 14:48:54 +01:00
José Valim
d120affb11
Emit defmodule tracing event
2024-02-26 18:28:40 +01:00
Jean Klingler
3c55db78f0
Use Erlang's implementation of jaro distance, fix bugs ( #13369 )
...
* Use Erlang's implementation of jaro distance, fix bugs
* Remove conditional compilation
2024-02-26 19:25:31 +09:00
José Valim
80af632a7e
Wrap (a -> b) into literals instead of plain lists, closes #13358
2024-02-24 22:48:05 +01:00
José Valim
129c5beef8
Decouple require expansion from alias
2024-02-24 21:19:46 +01:00
José Valim
dab3d22993
Deprecate escaping closing delimiter in uppercase sigils
...
This aligns our uppercase sigils with Erlang/OTP 27.
2024-02-24 20:05:10 +01:00
José Valim
514615d034
Apply end of expression more consistently, closes #13355
2024-02-18 11:25:19 +01:00
José Valim
38a571b73a
Purge modules asynchronously ( #13350 )
2024-02-15 20:33:31 +01:00
José Valim
04e2724591
Do not purge compiler modules during compilation, only after ( #13346 )
...
The compiler freezing is mostly caused by a bug upstream,
but it may be speed up compilation to avoid purging as
we compile, as purging blocks the code server.
A potential downside is higher memory usage during
compilation.
Closes #13264 .
2024-02-15 12:48:53 +01:00
José Valim
a2676855fd
Remove unused Args argument
2024-02-11 23:36:40 +01:00
José Valim
9973a2eded
Remove typespec from default requires
2024-02-08 15:43:20 +01:00
José Valim
6655d40376
Streamline and document the parser
2024-02-07 15:06:48 +01:00
José Valim
d68c8d6cdd
Unify handling of .. and ...
2024-02-07 12:26:39 +01:00
José Valim
d244eaf8be
Remove end_of_expression from ->, closes #13318
2024-02-06 13:46:46 +01:00
José Valim
fd4e6b530c
Fix column marker for maps
2024-02-05 15:13:31 +01:00
Mitchell Hanberg
eb1499ac29
Include from_brackets metadata in all cases ( #13317 )
2024-02-05 09:40:16 +01:00
José Valim
00d2be5af7
Fix error message 'a guards', closes #13296
2024-01-30 20:07:38 +01:00
Jean Klingler
0b95ca45c2
Translate with/1 as a closure ( #13299 )
...
* Translate with/1 as a closure
* Emit leaner code on with var <-
2024-01-30 21:26:39 +09:00
José Valim
55cd5a4a22
Revert "Do not escape \ in uppercase sigils, closes #8989 "
...
This reverts commit 51d23cbba8
due to a regression.
Closes #13262 .
2024-01-17 23:28:21 +01:00
José Valim
e4a71032d5
Always log errors at the end
2024-01-17 23:14:20 +01:00
Artem Solomatin
53f45a93b6
Specify guide links for incorrect guards message ( #13247 )
2024-01-12 22:38:47 +01:00
José Valim
19bdfd0444
Improve misplaced operator | message
2024-01-12 20:14:27 +01:00
Jean Klingler
8cde231bbd
behaviour -> behavior when not about OTP behaviours ( #13240 )
2024-01-09 15:25:14 +09:00
José Valim
3ae8475e41
Add bitmask types to descr ( #13230 )
...
The bitmap represents all non-divisible types.
Currently it implements all types in our system,
but atoms, lists, tuples, maps, and functions
will be given more precise types later on.
Dynamic has not been yet implemented nor
optimizations for term.
2024-01-07 19:30:48 +01:00
José Valim
748722dc0d
Trim down current typed module implementation ( #13226 )
2024-01-06 11:33:26 +01:00
José Valim
fa088a4358
Do not hardcode newlines
2024-01-04 13:01:52 +01:00
José Valim
926560350b
Extract snippet in elixir_errors to simplify exception handling
2023-12-21 21:14:44 +01:00
José Valim
7f3d62108b
Consider column in snippets, closes #13199
2023-12-21 19:26:06 +01:00
José Valim
3a52c2d729
Add source field to diagnostics
2023-12-21 17:05:47 +01:00
José Valim
71039d97d3
Do not warn unused imports twice, closes #13178
2023-12-14 17:18:13 +01:00
José Valim
4d712b25ea
Normalize token missing and mismatched delimiter exceptions
...
Closes #13183 .
Closes #13185 .
Closes #13186 .
Closes #13187 .
2023-12-14 17:02:15 +01:00
Vinícius Müller
02b0876154
Improve diagnostics for unclosed heredocs ( #13182 )
2023-12-14 09:24:43 +01:00
José Valim
aabe46536e
Disable compiler optimizations only in module body
2023-12-10 03:23:45 +11:00
Vinícius Müller
1d978bf73c
Improve unclosed delimiter messages ( #13123 )
2023-12-04 12:46:15 +01:00
José Valim
e258ccc279
Remove warning on non-ambiguous nullary remote call
2023-11-22 08:54:39 +08:00
Jean Klingler
856da799a3
Auto infer size of matched variable in bitstrings ( #13106 )
2023-11-15 20:50:10 +09:00
José Valim
dfba5db6c0
Consider start line in MismatchedDelimiterError
2023-11-13 12:28:39 +01:00
José Valim
51d23cbba8
Do not escape \ in uppercase sigils, closes #8989
2023-11-13 11:53:44 +01:00
José Valim
665a459a59
Handle nil values in IO.warn
2023-11-10 12:53:34 +01:00
José Valim
1b6fb26dfb
Let's not deprecate ...foo as the API may be useful
...
for the type system in the future.
This reverts commit f97d8585e8 .
2023-11-10 12:36:04 +01:00
José Valim
c4fa754dde
Add :emit_warnings to Code.string_to_quoted
2023-11-06 16:30:46 +01:00
José Valim
8ae45c1c6b
Fix case clause error on tokenizer
2023-11-06 13:28:53 +01:00
José Valim
8d7975bc0b
s/parens/parentheses
2023-11-01 12:42:47 +01:00
José Valim
f437e8695b
Require Erlang/OTP 25+ ( #13045 )
2023-10-30 23:55:36 +01:00
José Valim
2f43c8cc47
Warn on map.field() and mod.function
2023-10-30 21:43:27 +01:00
George Guimarães
eb20bdd716
Fix some typos ( #13043 )
2023-10-30 17:48:47 +01:00