You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8-2Lines changed: 8 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,7 @@ For a complete reference on Elixir syntax, see the [Syntax Reference](https://he
45
45
46
46
In the example above, an argument that did not match or guard that did not evaluate to true are shown between `-`. If the terminal supports ANSI coloring, they are wrapped in red instead of the `-` character.
47
47
48
-
Since blaming an exception can be extensive, `Exception.blame/3` must be used exclusively in debugging situations. It is not advised to apply it to production components such as a Logger. This feature has been integrated into the compiler, the command line, ExUnit and IEx.
48
+
Since blaming an exception can be expensive, `Exception.blame/3` must be used exclusively in debugging situations. It is not advised to apply it to production components such as a Logger. This feature has been integrated into the compiler, the command line, ExUnit and IEx.
49
49
50
50
This feature also requires Erlang/OTP 20+.
51
51
@@ -82,7 +82,7 @@ If it is necessary to configure any of the children, such can be done by passing
82
82
MyApp.Endpoint
83
83
]
84
84
85
-
The modules `Agent`, `Registry`, `Task`, and `Task.Supervisor` have been updated to also defined a `child_spec/1` function, allowing them to be used in a supervision tree similar to the examples above. `use Agent`, `use GenServer`, `use Supervisor`, and `use Task` have also been updated to automatically generate an overridable `child_spec/1`.
85
+
The modules `Agent`, `Registry`, `Task`, and `Task.Supervisor` have been updated to include a `child_spec/1` function, allowing them to be used directly in a supervision tree similar to the examples above. `use Agent`, `use GenServer`, `use Supervisor`, and `use Task` have also been updated to automatically define an overridable `child_spec/1` function.
86
86
87
87
Finally, child specifications are now provided as maps (data-structures) instead of the previous `Supervisor.Spec.worker/3` and `Supervisor.Spec.supervisor/3` APIs. This behaviour also aligns with how supervisors are configured in Erlang/OTP 18+. See the updated `Supervisor` docs for more information, as well as the new `Supervisor.init/2` and `Supervisor.child_spec/2` functions.
88
88
@@ -145,6 +145,7 @@ This release brings further improvements to Calendar types. It adds arithmetic a
145
145
*[Calendar] Add Rata Die format for conversions between Calendars and `Date.convert/2`, `Time.convert/2`, `NaiveDateTime.convert/2` and `DateTime.convert/2` (as well as bang variants)
146
146
*[Calendar] Add `:calendar` field to `Time` struct
*[Enum] Add `Enum.chunk_by/4` and `Stream.chunk_by/4`
149
150
*[Exception] Add `Exception.blame/3` that adds metadata to exceptions
150
151
*[File] Add `File.read_link/1` and `File.read_link!/1`
@@ -167,12 +168,15 @@ This release brings further improvements to Calendar types. It adds arithmetic a
167
168
*[Supervisor] Add `Supervisor.init/2` and `Supervisor.child_spec/2`
168
169
*[Supervisor] Allow `module` and `{module, arg}` to be given to `Supervisor.start_link/2` and invoke `module.child_spec(arg)` on each argument
169
170
*[Task] Support `:on_timeout` in `Task.async_stream` to control how tasks are terminated
171
+
*[Task] Add `ordered: false` support to `Task.async_stream`
170
172
171
173
#### ExUnit
172
174
173
175
*[ExUnit] Show code snippet from test source file in case of test errors
174
176
*[ExUnit] Show the value of variables used in an assertion
175
177
*[ExUnit] Use `Exception.blame/3` when formatting test errors
178
+
*[ExUnit] Make `assert_raise/2` fail if the underlying exception has a broken `message/1` implementation
179
+
*[ExUnit] Add `start_supervised/2` and `stop_supervised/1` to ExUnit. Processes started by this function are automatically shut down when the test exits
176
180
177
181
#### IEx
178
182
@@ -186,6 +190,7 @@ This release brings further improvements to Calendar types. It adds arithmetic a
186
190
187
191
#### Mix
188
192
193
+
*[mix compile.elixir] Add `--all-warnings` option to Elixir compiler that shows all warnings from the previous compilation (instead of just of the files being compiled)
189
194
*[mix escript.build] Strip debug information from escripts by default and add option `:strip_beam` which defaults to true
190
195
*[mix loadpaths] Ensure `--no-deps-check` do not trigger SCM callbacks (such as `git`)
191
196
*[mix local.hex] Add `--if-missing` flag to `local.hex` mix task
@@ -214,6 +219,7 @@ This release brings further improvements to Calendar types. It adds arithmetic a
214
219
#### Mix
215
220
216
221
*[mix compile.elixir] Store multiple sources in case of module conflicts. This solves an issue where `_build` would get corrupted when compiling Elixir projects with module conflicts
222
+
*[mix compile.erlang] Do not silently discard Erlang compile errors
217
223
*[mix compile.protocols] Ensure protocol implementations do not "disappear" when switching between applications in umbrella projects by having separate consolidation paths per project
0 commit comments