Commit Graph
1538 Commits
Author SHA1 Message Date
José Valim 09dcbf7566 Introduce deprecations scheduled for Elixir v1.20 2025-06-07 21:55:06 +02:00
José Valim 51e160e6f8 Add OTP 28 to CI (#14510) 2025-05-21 13:48:13 +02:00
Matt Enlow c3d33410ec Parameterize violates the "never run concurrently" async docs (#14492) 2025-05-13 12:37:26 +02:00
José Valim 87dd05e5fd Preserve files with no line filter on mix test
Before this patch, if you invoked:

    mix test test/foo_test.exs:13 test/bar_test.exs

We would include a location filter only for foo_test.exs
and no tests in bar_test.exs would run. We now ensure
that the full location of files with line filters are
included as tags, as long as any file is included.

Closes #14445.
2025-04-25 15:33:43 +02:00
Rudolf Manusadzhian 7b8bcb98be Add missing parameters field to ExUnit.Test struct type (#14446) 2025-04-22 14:18:23 +02:00
José Valim 920a6a0a42 Consistenly apply timeouts across suites (#14444)
Closes #14443.
2025-04-18 12:11:12 +02:00
Rudolf Manusadzhian 7e6e7008f9 Add group to the test context (#14440) 2025-04-17 09:39:44 +02:00
Jonatan Männchen f3e8ceb5aa Implement Test Coverage Reporting (#14343) 2025-04-07 22:37:01 +02:00
Andrea LeopardiandJosé Valim 441cf7d2f1 Add warning to the docs for start_link_supervised!/2 (#14374)
Co-authored-by: José Valim <jose.valim@dashbit.co>
2025-03-28 10:07:21 +01:00
Andrea Leopardi 7b71138da2 Add Mermaid graph about ExUnit processes (#14372) 2025-03-27 21:37:28 +01:00
Steffen Deusch b08eea70e5 Prevent exits from leaking in ExUnit.CaptureServer (#14348)
When a process that traps exits used ExUnit's log capture functionality,
it would receive stray exits from the Tasks started inside it that could
lead to issues if not handled.
2025-03-19 16:51:28 +01:00
Jean Klingler b3cc618199 Fix regression when diffing nested improper lists (#14292)
Close https://github.com/elixir-lang/elixir/issues/14291
2025-02-21 23:08:36 +09:00
José Valim c1e79d189c Support Erlang/OTP 28 2025-02-20 18:10:23 +01:00
José Valim d800e9c725 Parallelize log dispatch on CaptureLog, closes #14288 2025-02-20 13:10:29 +01:00
James Baldwin 56d03dabff Fix grammar in callbacks docs (#14285) 2025-02-19 20:50:06 +01:00
Daniel Kukula c65f9555aa Fix ExUnit list diff bug (#14275) 2025-02-19 08:32:15 +01:00
Daniel Kukula f1bf1b8602 Use newlines and pretty printing in several builtin exceptions (#14269) 2025-02-18 11:39:58 +01:00
Jonatan Männchen 980500551c Inline Licence Info & Copyright for non-test files (#14256) 2025-02-07 21:11:09 +01:00
Jonatan Männchen f7bbe81ea7 Inline licence info & copyright for test files (#14257) 2025-02-07 20:54:14 +01:00
Rudolf Manusadzhian 28b0ef277d Fix typo in callbacks docs (#14252) 2025-02-05 08:45:48 +01:00
Jean Klingler 4087560237 Support ellipsis in doctest exceptions (#14233) 2025-01-28 18:48:47 +09:00
eeff 5354a1fc8d Add :inspect_opts option for doctest (#14225)
Closes #14219
2025-01-24 21:29:21 +01:00
José Valim e3599fc935 Do not precompile regexes on Erlang/OTP 28 2025-01-21 18:53:51 +01:00
Marcus Kruse 661319329e Show hints for mix test --no-color (#14198) 2025-01-18 16:44:52 +01:00
José Valim 83a70d799c Deprecate struct update syntax
The struct update syntax was added early in Elixir to help validate
at compile-time that the update keys were valid. However, for a couple
releases already, Elixir's static analysis can perform such validation
more reliably and find more error if you pattern match on the struct
when the variable is defined instead.

This deprecation simplifies the language and pushes developers to
better alternatives.

Closes #13974.
2025-01-18 10:08:31 +01:00
Jean Klingler 08d844a206 Add and simplify links to erlang documentation (#14179)
* Link more erlang modules in docs

* Fix epmd link

* Use `:atom` syntax to link erlang modules
2025-01-12 18:58:38 +09:00
Jean Klingler 059071acdc Fix ExUnit crash when diffing bitstring specifiers (#14161) 2025-01-09 18:26:50 +09:00
Andrea Leopardi bde9494ac5 Clarify return value of ExUnit.CaptureLog.with_log/2 2025-01-03 10:10:24 +01:00
José Valim bf068de4cd Properly raise for invalid async value 2024-12-28 09:32:43 +01:00
José Valim c1c2cf8a65 Type checking of protocol dispatch (#14117) 2024-12-27 19:40:26 +01:00
José Valim 9df0fe5d8e Use division by zero to show exception
Closes #14111.
2024-12-24 09:42:09 +01:00
Kieran 92f1e3777f Omit excluded tests from test count in CLI summary (#14078) 2024-12-23 11:33:47 +01:00
José Valim 45aec00ff7 Queue async groups until state is loaded 2024-12-23 10:49:54 +01:00
José Valim d78ef17803 Do not run async groups on load and support --repeat-until-failure (#14107) 2024-12-23 10:31:43 +01:00
José Valim 98229529f6 Do not warn for CaseTemplate options, closes #14077 2024-12-17 10:03:40 +01:00
José Valim 098c01a7ee Introduce deprecations scheduled for v1.19 2024-12-11 11:59:36 +01:00
José Valim 64e4b89053 Fix map ordering in earlier Elixir versions 2024-12-06 09:23:10 +01:00
José Valim beaca3b5ad Improve diff printing for when there are nested three-element tuples 2024-12-06 09:13:10 +01:00
José Valim 0174d50d92 Solve map ordering in earlier Erlang/OTP versions 2024-11-17 19:45:52 +01:00
Daniel Kukula a8c92060ea Format inserted/deleted maps in list assertions (#13954) 2024-11-17 14:09:10 +01:00
José Valim bb9ddb3317 Mark negation inside refute as generated, closes #13992 2024-11-13 23:11:01 +01:00
José Valim cb2e03688e Perform return type inference and application across local calls (#13984) 2024-11-11 23:06:31 +01:00
José Valim 485ca72ae2 Infer types and use them across remote calls (#13981)
This also unifies handling of deterministic builds with Erlang/OTP
as well as warnings_as_errors.
2024-11-09 18:00:27 +01:00
Dave Lucia b35b0ef435 Simplify the explanation of a basic test case (#13982)
Simplifies the language used to describe a "basic setup for ExUnit"

In particular, I removed the term "test case" which was an alias for a
"test module". "test case" can easily be confused with a `test` block.
2024-11-09 11:01:48 +01:00
José Valim 8ed104d175 Add test_pid tag to ExUnit.Case
Closes #13880.
2024-11-07 21:05:04 +01:00
José Valim 1ca06361b6 Type checking of stacktrace and error/raise functions 2024-11-05 13:13:59 +01:00
José Valim 268bb2df93 Provide more hints on missing module message (#13933) 2024-10-28 17:26:22 +01:00
José Valim a0e061f94a Fix warnings during suite 2024-10-27 11:34:40 +01:00
José Valim 76faed3cb9 Add ansi escapes to typing violations 2024-10-27 11:02:39 +01:00
José Valim 90f504e9c3 Deprecate usage around __struct__/0 2024-10-25 19:20:45 +02:00