Open
Conversation
4c22093 to
dc1dac1
Compare
dc1dac1 to
709dc9e
Compare
709dc9e to
e0c688f
Compare
e0c688f to
e762d02
Compare
e762d02 to
53cb0aa
Compare
53cb0aa to
9768e7e
Compare
9768e7e to
4d29bac
Compare
4d29bac to
33b2c88
Compare
33b2c88 to
5e4a48f
Compare
5e4a48f to
a9d25c2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.17.3→1.19.5Release Notes
elixir-lang/elixir (elixir)
v1.19.5Compare Source
1. Enhancements
Elixir
2. Bug fixes
Elixir
dbg_callbackis modified at runtimenot inStream.flat_map/2to crashIEx
#iex:breakas part of multi-line promptsLogger
v1.19.4Compare Source
1. Enhancements
Mix
--min-cycle-labelto help projects adapt to the more precisemix xref graphreports in Elixir v1.19. In previous versions, Elixir would break a large compilation cycle into several smaller ones, and therefore developers would check for--min-cycle-sizeon CI. However, the issue is not the size of the cycle (it has no implication in the amount of compiled files), but how many compile-time dependencies (aka compile labels) in a cycle. The new option allows developers to filter on the label parameter2. Bug fixes
Elixir
File.cp_r/3reports non-existing destination properly (instead of source)ExUnit
assertpropagate type informationLogger
Mix
app:APPworks when the project or its dependencies were not yet compiledhexapplication can be included in escriptsv1.19.3Compare Source
1. Enhancements
Elixir
Mix
--force-elixir,--force-app, etc2. Bug fixes
ExUnit
setup_allMix
&Mod.fun/aritycan be written to .app filesv1.19.2Compare Source
1. Enhancements
Elixir
.beamfiles in the compilerMix
--no-check-cwdto skip compiler check to aid debugging2. Bug fixes
Elixir
IO.inspect :label~~~unary operatorLogger
Mix
elixirc_pathsis not a list of string pathsMIX_OS_DEPS_COMPILE_PARTITION_COUNTacrossmix escript.install,mix archive.install, and othersv1.19.1Compare Source
1. Bug fixes
EEx
EEx.compile_stringElixir
dbg/2Mix
v1.18.4Compare Source
This release includes initial support for Erlang/OTP 28, for those who want to try it out. In such cases, you may use Elixir v1.18.4 precompiled for Erlang/OTP 27, as it is binary compatible with Erlang/OTP 28. Note, however, that Erlang/OTP 28 no longer allows regexes to be defined in the module body and interpolated into an attribute. If you do this:
You must rewrite it to:
1. Enhancements
IEx
IEx.Helpers.process_info/1which prints process informationMix
--no-listenersoption--no-listenersoption2. Bug fixes
Elixir
@on_definitioncallbacks@on_loadcallbackssupercallselixir_erlMix
v1.18.3Compare Source
1. Enhancements
Elixir
<<_::3*8>>in typespecsMix
--no-listenersoption2. Bug fixes
Elixir
--no-colornot setting:ansi_enabledto falsenilStream.cycle/1is explicitly haltedExUnit
IEx
__MODULE__recompileif IEx is not runningv1.18.2Compare Source
1. Enhancements
Elixir
--color/--no-colorfor enabling and disabling of ANSI colorscontainer_cursor_to_quotedwith trailing fragmentsMix
2. Bug fixes
Elixir
elixir,elixirc, andmixon Windows, as they leave the shell broken after quitting ErlangExUnit
IEx
Mix
v1.18.1Compare Source
1. Enhancements
2. Bug fixes
Elixir
Code.Fragment.container_cursor_to_quoted/2with:trailing_fragmentparses expressions that were supported in previous versions@fileannotation@fileannotation:no_parensmetadata when using capture with arity on all casesExUnit
--repeat-until-failurecan be combined with groupsMix
--warnings-as-errorsv1.18.0Compare Source
Official announcement: https://elixir-lang.org/blog/2024/12/19/elixir-v1-18-0-released/
1. Enhancements
Elixir
elixir,elixirc, andmixon Windows. Those provide a safer entry point for running Elixir from other platformsDuration.to_string/1Code.format_string!/2--and---inCode.format_string!/2to make precedence clearerCode.string_to_quoted/2whentoken_metadata: trueto help compute ranges from the AST:capture_argas its own entry inCode.Fragment.surround_context/2Config.read_config/1Enum.product_by/2andEnum.sum_by/2MissingApplicationsErrorexception to denote missing applicationsJSONmodule with encoding and decoding functionalityJSON.Encoderfor all Calendar types_), such ashttp_сервер. Previously allowed highly restrictive identifiers, which mixed Latin and other scripts, such as the japanese word for t-shirt,Tシャツ, now require the underscore as wellelem/2unquoteandunquote_splicingto catch bugs earlierERL_COMPILER_OPTIONS=deterministic. Keep in mind deterministic builds strip source and other compile time information, which may be relevant for programsList.ends_with?/2dbghandling ofif/2,with/1and of code blocksMacro.struct_info!/2to return struct information mirroringmod.__info__(:struct)Registry.lock/3for local lockingPartitionSupervisor.resize!/2to resize the number of partitions in a supervisor (up to the limit it was started with)Process.sleep/1@undefined_impl_descriptionto customize error message when an implementation is undefined__deriving__/1as optional macro callback toProtocol, no longer requiring empty implementationsExUnit
ExUnit.Casetest_pidas a tagIEx
IEx.configure(auto_reload: true)to automatically pick up modules recompiled from other operating system processes:dot_iexsupport toIEx.configure/1Mix
mix format --migrateto migrate from deprecated functionality:listenersconfiguration to listen to compilation events from the current and other operating system processes2. Bug fixes
Elixir
Code.string_to_quoted/2next_break_fitsrespectsline_lengthunquoteandunquote_splicingto provide better error reports instead of failing too late inside the compilerStream.transform/5URI.merge/2ExUnit
assert/1with=IEx
IEx.Helpers.recompile/0will reload modules changed by other operating system processesMix
--all-warningswhen files do not changerebar3in some casesprivdirectories.appfiles deterministic in releasesMix.Shellon Windows when outputting non UTF-8 characters3. Soft deprecations (no warnings emitted)
Elixir
color/3is deprecated in favor ofcolor_doc/3fold_doc/2is deprecated in favor offold/2unlessin favor ofif. Usemix format --migrateto automate the migrationMacro.struct!/2is deprecated in favor ofMacro.struct_info!/2__deriving__/3inside theAnyimplementation is deprecated, derive it inside the protocol definition itself4. Hard deprecations
EEx
<%#is deprecated in favor of<%!--or<% #c:EEx.handle_text/2is deprecated in favor ofc:EEx.handle_text/3Elixir
:warnings_as_errorsis deprecated viaCode.put_compiler_option/2. This must not affect developers, as the:warnings_as_errorsoption is managed by Mix tasks, and not directly used via theCodemoduleEnumerable.slice/1List.zip/1is deprecated in favor ofEnum.zip/1Module.eval_quoted/3in favor ofCode.eval_quoted/3Range.new/2Tuple.append/2is deprecated, useTuple.insert_at/3insteadMix
mix cmd --app APPin favor ofmix do --app APP:warnings_as_errorsconfiguration in:elixirc_optionsis deprecated. Instead pass the--warnings-as-errorsflag tomix compile. Alternatively, you might alias the task:aliases: [compile: "compile --warnings-as-errors"]:warnings_as_errorsconfiguration in:test_elixirc_optionsis deprecated. Instead pass the--warnings-as-errorsflag tomix test. Alternatively, you might alias the task:aliases: [test: "test --warnings-as-errors"]compilers/0in favor ofMix.Task.Compiler.compilers/0v1.17
The CHANGELOG for v1.17 releases can be found in the v1.17 branch.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.