José Valim
2a9a4f2cab
Release v1.19.0-rc.0
2025-06-09 12:27:46 +02:00
Michał Łępicki
0847e4b41a
Fix mistake in "Untracked compile-time dependencies" anti-pattern ( #14563 )
2025-06-09 12:07:28 +02:00
José Valim
5ff421ca27
Disable inference as part of v1.19 release
2025-06-07 21:23:03 +02:00
José Valim
4425d684a0
Update CHANGELOG
2025-06-07 20:21:55 +02:00
José Valim
e3f538cd25
Branch out v1.19
2025-06-07 20:18:21 +02:00
José Valim
577c8033ba
Optimize subtype? by aborting early ( #14561 )
...
In the same way we introduced non_disjoint_intersection
to optimize compatibility, we introduce empty_difference
to optimize subtyping.
2025-06-07 15:35:41 +02:00
Jean Klingler
84d806603d
More precise error message when escaping a regex with a ref ( #14560 )
...
* More precise error message when escaping a regex with a ref
* Refactor as do_quote_map_value
* Yet another refactoring proposal
2025-06-07 21:56:10 +09:00
José Valim
b1053b75c5
Use binary appending now that we require Erlang/OTP 26
...
Prompt
======
There is a format/2 function in inspect/algebra.ex that
calls format/3 recursively that returns a list of binaries.
Instead of doing so, I want you to pass a binary as accumulator,
<<>>, and then instead of `[head | format(...)]`, on every
operation you will do `format(<<acc::binary, result::binary>>, ...)`.
Notes
=====
The assistant was able to detect an issue with `collapse/4`
but it was unable to fix it. That and the changes to
mix/tasks/format.ex were addressed manually.
2025-06-07 12:46:47 +02:00
José Valim
b82d2dfa02
Reduce allocation on Inspect.Algebra by using cons cells
2025-06-07 09:57:36 +02:00
José Valim
443d96a396
Introduce non_term_type_to_quoted to avoid additional term_type? checks
2025-06-05 17:45:07 +02:00
José Valim
56e7de39c0
Also pretty print structs with no fields in types
2025-06-05 17:39:49 +02:00
José Valim
063a673901
Check for term_type?(dynamic) before computing difference
2025-06-05 17:33:30 +02:00
José Valim
c6ed523914
Fix bugs and add completeness to function pretty printing
2025-06-05 09:18:32 +02:00
José Valim
7307f3c68d
More tests for function application
2025-06-05 09:18:32 +02:00
José Valim
f295a89cc7
Update CHANGELOG
2025-06-03 11:08:34 +02:00
José Valim
f445cb98c3
Add CHANGELOG for function application and improve pretty printing
2025-06-03 10:53:06 +02:00
José Valim
4b6fdb40e8
Add more tests around compatibility check
2025-06-02 17:05:48 +02:00
José Valim
7819a73311
Simplify compatibility check
2025-06-02 16:53:06 +02:00
José Valim
f6595985a5
Remove compile-time warnings
2025-06-02 16:17:15 +02:00
José Valim
e87cc66041
Allow updated options to be returned from Inspect protocol ( #14554 )
2025-06-02 15:55:36 +02:00
José Valim
21ed59c578
Add more docs and examples around function_exported?/3 and macro_exported?/3
2025-06-01 10:00:58 +02:00
Isaac Yonemoto
2013e93db4
Add warnings on function exported and optional callback ( #14552 )
2025-06-01 09:49:48 +02:00
José Valim
41d1a721ad
Do not skip dynamic for indivisible types inside functions
2025-05-30 11:31:21 +02:00
José Valim
65e084e8f8
Infer types for fn
2025-05-30 11:31:21 +02:00
José Valim
0445e9d606
Add denormalization when pretty printing functions
2025-05-30 11:31:21 +02:00
José Valim
a0d649cce9
Prove hints for empty domains from unions
2025-05-30 11:31:21 +02:00
Frank Hunleth
590a827046
Add ANSI codes to turn off conceal and crossed_out ( #14545 )
2025-05-29 18:57:42 +02:00
Dmitry Kleymenov
340e63b9fe
Add doctests to kernel guards ( #14544 )
2025-05-29 09:46:14 +02:00
José Valim
c39286ef9c
Improve error report and checks on function application ( #14541 )
2025-05-28 15:25:37 +02:00
José Valim
7f1fe47f6d
Add Code.Fragment.lines/1 ( #14493 )
2025-05-28 11:04:30 +02:00
Łukasz Samson
56fb419d5e
Improve documentation on Exception.message and Exception.blame ( #14542 )
2025-05-28 11:04:14 +02:00
José Valim
0a77a352ab
More type checking of function applications ( #14508 )
2025-05-27 10:39:54 +02:00
José Valim
fb19dec15c
Include lines in == Compilation error in file ... == slogans ( #14538 )
...
Closes #14535 .
2025-05-27 10:31:17 +02:00
Guillaume Duboc
17d51d11fb
Add tuple elimination of negations ( #14531 )
2025-05-26 19:28:25 +02:00
José Valim
336627d474
Clarify and link to config modules, closes #14533
2025-05-26 10:13:39 +02:00
Łukasz Samson
22467ab6c1
Do not use Access protocol on values that may be structs ( #14532 )
2025-05-26 08:25:14 +02:00
José Valim
360c23965d
Allow early precompiled Elixir to run on Erlang/OTP 28
2025-05-25 16:52:05 +02:00
silverdr
9310ffc9c4
Explicit mention of PID ( #14529 )
2025-05-24 15:09:56 +02:00
Jean Klingler
aa8672c4ee
Improve test coverage of the Time module ( #14525 )
...
* Add tests for Time.to_iso8601/2
* Add tests for Time.compare/2 with different calendars
* Add tests for Time.diff/3
* Test Time.shift/2 with invalid values
2025-05-24 18:19:40 +09:00
Dmitry Kleymenov
5c270037fc
Add examples to File ( #14528 )
2025-05-24 10:31:03 +02:00
Jean Klingler
8a13ed49e5
Improve test coverage of the Date module ( #14524 )
...
* Add tests for Date.utc_today/1
* Add test for non-integer duration shift
* Add test for Date.convert!/2 with incompatible calendars
* Add test for Date.diff/2 with incompatible calendars
* Add test for Date.compare/2 with incompatible calendars
2025-05-23 17:26:25 +02:00
Dmitry Kleymenov
b4bcc3b32e
Put error doctests to run pipeline ( #14520 )
2025-05-23 11:07:27 +02:00
José Valim
050f9e28b4
Run Erlang/OTP 28 on Windows CI ( #14513 )
2025-05-22 10:21:24 +02:00
Dmitry Kleymenov
d636a0a5cc
Add clarity to docs and doctests in Enum ( #14511 )
2025-05-21 16:50:48 +02:00
Dmitry Kleymenov
945c057bf9
Enum scan improvements ( #14486 )
2025-05-20 15:19:07 +02:00
João Paulo Abreu
30d1968bd5
Enhance non-assertive map access anti-pattern documentation ( #14501 )
2025-05-20 14:36:12 +02:00
José Valim
81f885da6c
Add anti-pattern on untracked compile-time dependencies, closes #14465
2025-05-20 11:07:29 +02:00
José Valim
8de98a8a86
Raise nice error message when escaping maps/structs with references, closes #14497
2025-05-20 10:35:17 +02:00
José Valim
1f9433feaa
not_a_map.key should raise BadMapError for consistency
2025-05-20 09:58:15 +02:00
José Valim
f400ac9555
Mention patterns are not allowed in function heads
...
Closes #14496 .
2025-05-20 09:00:33 +02:00