From 2c43475d1bc909a2927a0270240ce394fd11e21b96f5c8dba3136f8256805222 Mon Sep 17 00:00:00 2001 From: Matwey Kornilov Date: Thu, 6 Jan 2022 20:51:50 +0000 Subject: [PATCH] Accepting request 944534 from home:MaSven:branches:devel:languages:erlang - Elixir 1.13.1 * 1. Bug fixes Elixir [Code] Do not show code snippets in `SyntaxError` and `TokenMissingError` if line is empty [Exception] Do not fail blaming `ArgumentError` for improper lists on `apply/3` [Macro] Set a max `line_length` for `Macro.to_string/1` [Macro] Fix formatting of lists on module attributes for `Macro.to_string/1` [String] Fix incorrect codepoint byte counting in `slice` with negative positions in ranges [Task] Ensure async streams can be consumed from another process than the one that creates them [URI] Undeprecate `URI.parse/1` as `URI.new/1` is too strict in many common cases [URI] Make sure `URI.new/1` returns nil for empty paths IEx [IEx] Make sure the `--version` flag halts IEx Mix [Mix] Make protocol consolidation part of the `Mix.install/2` cache - Elixir 1.13.0 * Enhancements EEx [EEx] Add `:parser_options` to EEx functions Elixir [Calendar] Add `c:Calendar.year_of_era/3` to support calendars where the beginning of a new era does not align with the beginning of a new year [CLI] Support `--short-version` on the CLI that does not boot the VM [Code] Add `Code.string_to_quoted_with_comments/2` and `Code.quoted_to_algebra/2` [Code] Add more `:token_metadata` to aliases and remote calls when parsing strings [Code] Add `Code.Fragment` module to provide best-effort information from code fragments. The module currently provides an updated `Code.Fragment.cursor_context/2` with operator support and `Code.Fragment.surround_context/2` which looks at a given position in a fragment and find its surrounding delimiters [Code] Allow custom sigil formatting on `Code.format_string!/2` [Code] Add `{:on_module, bytecode, :none}` trace to compilation tracers [Enum] Optimize `Enum.concat/1` for lists of lists [Enum] Add `Enum.slide/3` [Exception] Better format Elixir exceptions in Erlang [Inspect] Allow default inspect fun to be set globally with `Inspect.Opts.default_inspect_fun/1` [IO] Allow `:eof` to be given as limit to `IO.getn/2` [Kernel] Support the `:sigils` option in `import Mod, only: :sigils` and allow the sigil modifiers to be also digits [Kernel] Make `get_in` consistently abort and return `nil` when `nil` values are found (previously Elixir would raise an error in this case). This allows a user to use `get_in` as a safe navigation operator. [Kernel] Improve compilation times by reducing the amount of copies of the AST across compiler processes [Kernel] Raise if trying to define a module with a slash in its name [Kernel] Warn when `?\` is used and there is no need for a escape character [Kernel] Track structs in typespecs as export deps instead of compile-time deps [Kernel] Add power operator (`**/2`) [Keyword] Add `Keyword.validate/2` [Keyword] Implement `Keyword.filter/2` and `Keyword.map/2` [List] Add `List.keyfind!/3` [Macro] Add `Macro.prewalker/1` and `Macro.postwalker/1` [Macro.Env] Add the following reflection functions: `required?/2`, `lookup_import/2`, `fetch_alias/2`, and `fetch_macro_alias/2` [Map] Implement `Map.filter/2` and `Map.map/2` [Module] Support `:nillify_clauses` in `Module.get_definition/3` [Module] Add `Module.attributes_in/1` and `Module.overridables_in/1` [OptionParser] Add "did you mean?" suggestions to `OptionParser.ParseError` messages [Record] Add record reflection via `@__records__` [Task] Add `Task.completed/1` [Task] Add `Task.ignore/1` to keep a task running but ignoring all of its results [Task] Reduce the amount of copying `Task.async*` functions [URI] Add `URI.new/1` and `URI.new!/1` ExUnit [ExUnit] Show hint if comparing different but equivalent strings [ExUnit.CaptureIO] Add `with_io/3` to return result with captured io [ExUnit.CaptureLog] Add `with_log/2` to return result with captured logs IEx [IEx.Autocomplete] Add path autocompletion whenever when the cursor follows `"./` or `"/` or `"DRIVER:` where `DRIVER` is a single letter [IEx.Autocomplete] Add autocompletion for sigils, struct names, and struct fields [IEx.Helpers] Allow multiple modules to be given to `r/1` Logger [Logger] Add `Logger.put_application_level/2` [Logger] Print all log levels in accordance to Erlang/OTP. This also means `[warn]` is now shown as `[warning]` Mix [Mix] Add `MIX_INSTALL_FORCE` environment variable support [Mix] Support `:config` and `:system_env` in `Mix.install/2` [Mix] Add `Mix.installed?/0` [Mix.Shell] Add `:default` option to `Mix.Shell.yes?` [mix archive.install] Run `loadconfig` before building archive [mix compile] Move Elixir version check to before deps are compiled, in order to give feedback earlier [mix compile.elixir] Do not recompile files if their modification time change but their contents are still the same and the .beam files are still on disk [mix compile.elixir] Do not recompile all Elixir sources when Erlang modules change, only dependent ones [mix compile.elixir] Do not recompile Elixir files if `mix.exs` changes, instead recompile only files using `Mix.Project` or trigger a recompilation if a compiler option changes [mix compile.elixir] Only recompile needed files when a dependency is added, updated or removed [mix compile.elixir] Only recompile needed files when a dependency is configured [mix deps] Add `:subdir` option to git deps [mix escript.install] Run `loadconfig` before building escript [mix format] Support `:plugins` in `mix format` that can hook into custom extensions and sigils [mix format] Add `Mix.Tasks.Format.formatter_for_file/2` [mix local.rebar] No longer support `sub_dirs` in Rebar 2 to help migration towards Rebar 3 [mix local.rebar] Support `--if-missing` option when installing Rebar [mix local.rebar] Set `REBAR_PROFILE=prod` when compiling Rebar dependencies [mix test] Support `--profile-require=time` to profile the time loading test files themselves [mix test] Allow filtering modules from coverage using regex [mix test] Allow the exit status of ExUnit to be configured and set the default to 2 [mix test] Exit with a status of 3 when coverage falls below threshold [mix test] Write failed manifest when suite fails due to --warnings-as-errors [mix test] Ignore `MIX_TEST_PARTITION` when partitions set to 1 [mix xref] Support multiple sinks and sources in `mix xref graph` [mix xref] Add `trace` subcommand to print compilation dependencies between files [mix xref] Add `--fail-above` option to `mix xref` [mix xref] Add `--label compile-connected` to `mix xref` * 2. Bug fixes EEx [EEx] Accept comments in EEx between do and the first clause [EEx] Accept EEx expressions where `->` is followed by newline Elixir [Application] Allow any expression as first argument of `compile_env` [Application] Warn if `Application.compile_env` or `Application.compile_env!` are called without a require [Code] Make sure `:static_atoms_encoder` in `Code.string_to_quoted/2` also applies to quoted keyword keys [Code] Ensure bindings with no context are returned as atoms instead of `{binding, nil}` in eval operations [Inspect] Fix a bug when inspecting a non-binary bitstring with colors [Kernel] Reject bidirectional formatting characters in strings and comments [Kernel] Support escaping of terminators in uppercase sigils heredocs for consistency [Kernel] Raise if `__CALLER__` or `__ENV__` or `__STACKTRACE__` are used in match [Kernel] Improve error message on invalid argument for `byte_size` from binary concat [Kernel] Raise when aliasing non-Elixir modules without `:as` [Kernel] Allow `unquote_splicing` inside `%{...}` without parens [Kernel] Ensure that waiting on a struct expansion inside a typespec is correctly tracked as waiting time in the compiler [Kernel] Correctly parse the atom `.` as a keyword list key [Kernel] Do not leak variables from the first generator in `with` and `for` special forms [Kernel] Fix column number on strings with NFD characters [Kernel] Fix a bug where a combination of dynamic line in `quote` with `unquote` of remote calls would emit invalid AST metadata [OptionParser] Validate switch types/modifiers early on to give more precise feedback [Protocol] Add `defdelegate` to the list of unallowed macros inside protocols as protocols do not allow function definitions [Protocol] Warn if `@callback`, `@macrocallback` and `@optional_callbacks` are defined inside protocol [Protocol] Ensure protocol metadata is deterministic on consolidation [Range] Always show step when range is descending [String] Update Unicode database to version 14.0 [URI] Only percent decode if followed by hex digits (according to https://url.spec.whatwg.org/#percent-decode) [Version] Ensure proper precedence of `and`/`or` in version requirements ExUnit [ExUnit] Fix formatter and counters from `ExUnit.run/0` to consider all tests in a module whenever if a module's `setup_all` fails [ExUnit] Allow doctests newlines to be terminated by CRLF IEx [IEx] Fix the loss of `.iex.exs` context after a pry session [IEx] Stop evaluator before exiting IEx server to avoid evaluators leaking Logger [Logger] Raise clear error message for invalid `:compile_time_purge_matching` configuration [Logger] Fix a bug where Logger would not reset its discard counter under some scenarios Mix [mix compile.elixir] Track transitive runtime dependencies coming from local/path dependencies [mix compile.elixir] Recompile file if `@external_resource` is deleted [mix compile.elixir] Print number of compiling files on all compiler cycles. This will make the `Compiling N files (.ex)` show up multiple times if necessary [mix deps] Raise if local dep is unavailable while compiling [mix deps.unlock] Fix blank output when unlocking a dependency that is not locked [mix local.install] Do not respect `MIX_DEPS_PATH` for install commands [mix release] Improve release scripts by making sure shell errors cascade (this is done by avoiding exporting and defining variables in a single step) [mix release] Do not boot release if `RELEASE_COOKIE` is empty [mix release] Allow releases running as a daemon to be restarted [mix release] Raise proper error message when non-serializable values are in configs [mix test] Fix coverage engine to also tag `case`, `cond`, and `receive` branches where the right side is a literal * 3. Soft-deprecations (no warnings emitted) Elixir [Code] Environment options in `Code.eval_quoted/3` and `Code.eval_string/3`, such as `:aliases` and `:tracers`, have been deprecated in favor of passing an environment [IO] `:all` on `IO.getn` is deprecated in favor of `:eof` [URI] `URI.parse/1` is deprecated in favor of `URI.new/1` and `URI.new!/1` Mix [mix format] `Mix.Tasks.Format.formatter_opts_for_file/2` is deprecated in favor of `Mix.Tasks.Format.formatter_for_file/2` * 4. Hard-deprecations Elixir [Code] `Code.cursor_context/2` is deprecated, use `Code.Fragment.cursor_context/2` instead [Macro] `Macro.to_string/2` is deprecated, use `Macro.to_string/1` instead [System] `System.get_pid/0` is deprecated, use `System.pid/0` instead [Version] Using `!` or `!=` in version requirements is deprecated, use `~>` or `>=` instead Mix [mix escript.build] `:strip_beam` option is deprecated in favor of `:strip_beams` [Mix] `:exit_code` in `Mix.raise/2` has been deprecated in favor of `:exit_status` [Mix.Config] `Mix.Config` is deprecated in favor of `Config` module Full release notes: https://github.com/elixir-lang/elixir/releases/tag/v1.13.0 OBS-URL: https://build.opensuse.org/request/show/944534 OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=74 --- ...ests-that-write-to-stderr-on-Windows.patch | 35 ---- elixir-1.12.3.tar.gz | 3 - elixir-1.13.1.tar.gz | 3 + elixir-1.13.2.tar.gz | 3 + elixir-doc.spec | 4 +- elixir.changes | 196 ++++++++++++++++++ elixir.spec | 10 +- 7 files changed, 208 insertions(+), 46 deletions(-) delete mode 100644 0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch delete mode 100644 elixir-1.12.3.tar.gz create mode 100644 elixir-1.13.1.tar.gz create mode 100644 elixir-1.13.2.tar.gz diff --git a/0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch b/0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch deleted file mode 100644 index 955be01..0000000 --- a/0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch +++ /dev/null @@ -1,35 +0,0 @@ -From f8778d13735349d4e7e359a38e7b677693182156 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jos=C3=A9=20Valim?= -Date: Tue, 24 Aug 2021 13:04:46 +0200 -Subject: [PATCH] Add retries to tests that write to stderr on Windows - ---- - lib/elixir/test/elixir/exception_test.exs | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/lib/elixir/test/elixir/exception_test.exs b/lib/elixir/test/elixir/exception_test.exs -index 6242194f7..fa8a5d3e4 100644 ---- a/lib/elixir/test/elixir/exception_test.exs -+++ b/lib/elixir/test/elixir/exception_test.exs -@@ -470,12 +470,13 @@ test "annotates undefined function error with suggestions" do - * min/1 - """ - -- assert blame_message(:erlang, & &1.gt_cookie()) == """ -- function :erlang.gt_cookie/0 is undefined or private. Did you mean one of: -+ message = blame_message(:erlang, & &1.gt_cookie()) - -- * get_cookie/0 -- * set_cookie/2 -- """ -+ assert message =~ -+ "function :erlang.gt_cookie/0 is undefined or private. Did you mean one of:" -+ -+ assert message =~ "* get_cookie/0" -+ assert message =~ "* set_cookie/2" - end - - test "annotates undefined function clause error with macro hints" do --- -2.31.1 - diff --git a/elixir-1.12.3.tar.gz b/elixir-1.12.3.tar.gz deleted file mode 100644 index e9ada74..0000000 --- a/elixir-1.12.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c5affa97defafa1fd89c81656464d61da8f76ccfec2ea80c8a528decd5cb04ad -size 2461828 diff --git a/elixir-1.13.1.tar.gz b/elixir-1.13.1.tar.gz new file mode 100644 index 0000000..d77976d --- /dev/null +++ b/elixir-1.13.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deaba8156b11777adfa28e54e76ddf49ab1a0132cca54c41d9d7648e800edcc8 +size 2920682 diff --git a/elixir-1.13.2.tar.gz b/elixir-1.13.2.tar.gz new file mode 100644 index 0000000..33e694d --- /dev/null +++ b/elixir-1.13.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 +size 0 diff --git a/elixir-doc.spec b/elixir-doc.spec index d98765b..a019d42 100644 --- a/elixir-doc.spec +++ b/elixir-doc.spec @@ -1,7 +1,7 @@ # # spec file for package elixir-doc # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: elixir-doc -Version: 1.12.3 +Version: 1.13.1 Release: 0 Summary: Documentation for elixir License: Apache-2.0 diff --git a/elixir.changes b/elixir.changes index 289d9e7..aeb11a3 100644 --- a/elixir.changes +++ b/elixir.changes @@ -1,4 +1,200 @@ ------------------------------------------------------------------- +Thu Jan 6 19:50:32 UTC 2022 - Sven Marquardt + +- Elixir 1.13.1 + * 1. Bug fixes + + Elixir + [Code] Do not show code snippets in `SyntaxError` and `TokenMissingError` if line is empty + [Exception] Do not fail blaming `ArgumentError` for improper lists on `apply/3` + [Macro] Set a max `line_length` for `Macro.to_string/1` + [Macro] Fix formatting of lists on module attributes for `Macro.to_string/1` + [String] Fix incorrect codepoint byte counting in `slice` with negative positions in ranges + [Task] Ensure async streams can be consumed from another process than the one that creates them + [URI] Undeprecate `URI.parse/1` as `URI.new/1` is too strict in many common cases + [URI] Make sure `URI.new/1` returns nil for empty paths + + IEx + [IEx] Make sure the `--version` flag halts IEx + + Mix + [Mix] Make protocol consolidation part of the `Mix.install/2` cache + + +------------------------------------------------------------------- +Thu Jan 6 18:45:51 UTC 2022 - Sven Marquardt +- Elixir 1.13.0 + * Enhancements + + EEx + [EEx] Add `:parser_options` to EEx functions + + Elixir + [Calendar] Add `c:Calendar.year_of_era/3` to support calendars where the beginning of a new era does not align with + the beginning of a new year + [CLI] Support `--short-version` on the CLI that does not boot the VM + [Code] Add `Code.string_to_quoted_with_comments/2` and `Code.quoted_to_algebra/2` + [Code] Add more `:token_metadata` to aliases and remote calls when parsing strings + [Code] Add `Code.Fragment` module to provide best-effort information from code fragments. + The module currently provides an updated `Code.Fragment.cursor_context/2` with operator support and + `Code.Fragment.surround_context/2` which looks at a given position in a fragment and find its surrounding delimiters + [Code] Allow custom sigil formatting on `Code.format_string!/2` + [Code] Add `{:on_module, bytecode, :none}` trace to compilation tracers + [Enum] Optimize `Enum.concat/1` for lists of lists + [Enum] Add `Enum.slide/3` + [Exception] Better format Elixir exceptions in Erlang + [Inspect] Allow default inspect fun to be set globally with `Inspect.Opts.default_inspect_fun/1` + [IO] Allow `:eof` to be given as limit to `IO.getn/2` + [Kernel] Support the `:sigils` option in `import Mod, only: :sigils` and allow the sigil modifiers to be also digits + [Kernel] Make `get_in` consistently abort and return `nil` when `nil` values are found (previously Elixir would raise + an error in this case). This allows a user to use `get_in` as a safe navigation operator. + [Kernel] Improve compilation times by reducing the amount of copies of the AST across compiler processes + [Kernel] Raise if trying to define a module with a slash in its name + [Kernel] Warn when `?\` is used and there is no need for a escape character + [Kernel] Track structs in typespecs as export deps instead of compile-time deps + [Kernel] Add power operator (`**/2`) + [Keyword] Add `Keyword.validate/2` + [Keyword] Implement `Keyword.filter/2` and `Keyword.map/2` + [List] Add `List.keyfind!/3` + [Macro] Add `Macro.prewalker/1` and `Macro.postwalker/1` + [Macro.Env] Add the following reflection functions: `required?/2`, `lookup_import/2`, `fetch_alias/2`, and `fetch_macro_alias/2` + [Map] Implement `Map.filter/2` and `Map.map/2` + [Module] Support `:nillify_clauses` in `Module.get_definition/3` + [Module] Add `Module.attributes_in/1` and `Module.overridables_in/1` + [OptionParser] Add "did you mean?" suggestions to `OptionParser.ParseError` messages + [Record] Add record reflection via `@__records__` + [Task] Add `Task.completed/1` + [Task] Add `Task.ignore/1` to keep a task running but ignoring all of its results + [Task] Reduce the amount of copying `Task.async*` functions + [URI] Add `URI.new/1` and `URI.new!/1` + + ExUnit + [ExUnit] Show hint if comparing different but equivalent strings + [ExUnit.CaptureIO] Add `with_io/3` to return result with captured io + [ExUnit.CaptureLog] Add `with_log/2` to return result with captured logs + + IEx + [IEx.Autocomplete] Add path autocompletion whenever when the cursor follows `"./` or `"/` or `"DRIVER:` where + `DRIVER` is a single letter + [IEx.Autocomplete] Add autocompletion for sigils, struct names, and struct fields + [IEx.Helpers] Allow multiple modules to be given to `r/1` + + Logger + [Logger] Add `Logger.put_application_level/2` + [Logger] Print all log levels in accordance to Erlang/OTP. This also means `[warn]` is now shown as `[warning]` + + Mix + [Mix] Add `MIX_INSTALL_FORCE` environment variable support + [Mix] Support `:config` and `:system_env` in `Mix.install/2` + [Mix] Add `Mix.installed?/0` + [Mix.Shell] Add `:default` option to `Mix.Shell.yes?` + [mix archive.install] Run `loadconfig` before building archive + [mix compile] Move Elixir version check to before deps are compiled, in order to give feedback earlier + [mix compile.elixir] Do not recompile files if their modification time change but their contents are still the same and the .beam files are still on disk + [mix compile.elixir] Do not recompile all Elixir sources when Erlang modules change, only dependent ones + [mix compile.elixir] Do not recompile Elixir files if `mix.exs` changes, instead recompile only files using `Mix.Project` or trigger a recompilation if a compiler option changes + [mix compile.elixir] Only recompile needed files when a dependency is added, updated or removed + [mix compile.elixir] Only recompile needed files when a dependency is configured + [mix deps] Add `:subdir` option to git deps + [mix escript.install] Run `loadconfig` before building escript + [mix format] Support `:plugins` in `mix format` that can hook into custom extensions and sigils + [mix format] Add `Mix.Tasks.Format.formatter_for_file/2` + [mix local.rebar] No longer support `sub_dirs` in Rebar 2 to help migration towards Rebar 3 + [mix local.rebar] Support `--if-missing` option when installing Rebar + [mix local.rebar] Set `REBAR_PROFILE=prod` when compiling Rebar dependencies + [mix test] Support `--profile-require=time` to profile the time loading test files themselves + [mix test] Allow filtering modules from coverage using regex + [mix test] Allow the exit status of ExUnit to be configured and set the default to 2 + [mix test] Exit with a status of 3 when coverage falls below threshold + [mix test] Write failed manifest when suite fails due to --warnings-as-errors + [mix test] Ignore `MIX_TEST_PARTITION` when partitions set to 1 + [mix xref] Support multiple sinks and sources in `mix xref graph` + [mix xref] Add `trace` subcommand to print compilation dependencies between files + [mix xref] Add `--fail-above` option to `mix xref` + [mix xref] Add `--label compile-connected` to `mix xref` + + * 2. Bug fixes + + EEx + [EEx] Accept comments in EEx between do and the first clause + [EEx] Accept EEx expressions where `->` is followed by newline + + Elixir + [Application] Allow any expression as first argument of `compile_env` + [Application] Warn if `Application.compile_env` or `Application.compile_env!` are called without a require + [Code] Make sure `:static_atoms_encoder` in `Code.string_to_quoted/2` also applies to quoted keyword keys + [Code] Ensure bindings with no context are returned as atoms instead of `{binding, nil}` in eval operations + [Inspect] Fix a bug when inspecting a non-binary bitstring with colors + [Kernel] Reject bidirectional formatting characters in strings and comments + [Kernel] Support escaping of terminators in uppercase sigils heredocs for consistency + [Kernel] Raise if `__CALLER__` or `__ENV__` or `__STACKTRACE__` are used in match + [Kernel] Improve error message on invalid argument for `byte_size` from binary concat + [Kernel] Raise when aliasing non-Elixir modules without `:as` + [Kernel] Allow `unquote_splicing` inside `%{...}` without parens + [Kernel] Ensure that waiting on a struct expansion inside a typespec is correctly tracked as waiting time in the compiler + [Kernel] Correctly parse the atom `.` as a keyword list key + [Kernel] Do not leak variables from the first generator in `with` and `for` special forms + [Kernel] Fix column number on strings with NFD characters + [Kernel] Fix a bug where a combination of dynamic line in `quote` with `unquote` of remote calls would emit invalid AST metadata + [OptionParser] Validate switch types/modifiers early on to give more precise feedback + [Protocol] Add `defdelegate` to the list of unallowed macros inside protocols as protocols do not allow function definitions + [Protocol] Warn if `@callback`, `@macrocallback` and `@optional_callbacks` are defined inside protocol + [Protocol] Ensure protocol metadata is deterministic on consolidation + [Range] Always show step when range is descending + [String] Update Unicode database to version 14.0 + [URI] Only percent decode if followed by hex digits (according to https://url.spec.whatwg.org/#percent-decode) + [Version] Ensure proper precedence of `and`/`or` in version requirements + + ExUnit + [ExUnit] Fix formatter and counters from `ExUnit.run/0` to consider all tests in a module whenever if a module's `setup_all` fails + [ExUnit] Allow doctests newlines to be terminated by CRLF + + IEx + [IEx] Fix the loss of `.iex.exs` context after a pry session + [IEx] Stop evaluator before exiting IEx server to avoid evaluators leaking + + Logger + [Logger] Raise clear error message for invalid `:compile_time_purge_matching` configuration + [Logger] Fix a bug where Logger would not reset its discard counter under some scenarios + + Mix + [mix compile.elixir] Track transitive runtime dependencies coming from local/path dependencies + [mix compile.elixir] Recompile file if `@external_resource` is deleted + [mix compile.elixir] Print number of compiling files on all compiler cycles. This will make the `Compiling N files (.ex)` show up multiple times if necessary + [mix deps] Raise if local dep is unavailable while compiling + [mix deps.unlock] Fix blank output when unlocking a dependency that is not locked + [mix local.install] Do not respect `MIX_DEPS_PATH` for install commands + [mix release] Improve release scripts by making sure shell errors cascade (this is done by avoiding exporting and defining variables in a single step) + [mix release] Do not boot release if `RELEASE_COOKIE` is empty + [mix release] Allow releases running as a daemon to be restarted + [mix release] Raise proper error message when non-serializable values are in configs + [mix test] Fix coverage engine to also tag `case`, `cond`, and `receive` branches where the right side is a literal + + * 3. Soft-deprecations (no warnings emitted) + + Elixir + [Code] Environment options in `Code.eval_quoted/3` and `Code.eval_string/3`, such as `:aliases` and `:tracers`, have been deprecated in favor of passing an environment + [IO] `:all` on `IO.getn` is deprecated in favor of `:eof` + [URI] `URI.parse/1` is deprecated in favor of `URI.new/1` and `URI.new!/1` + + Mix + [mix format] `Mix.Tasks.Format.formatter_opts_for_file/2` is deprecated in favor of `Mix.Tasks.Format.formatter_for_file/2` + + * 4. Hard-deprecations + + Elixir + [Code] `Code.cursor_context/2` is deprecated, use `Code.Fragment.cursor_context/2` instead + [Macro] `Macro.to_string/2` is deprecated, use `Macro.to_string/1` instead + [System] `System.get_pid/0` is deprecated, use `System.pid/0` instead + [Version] Using `!` or `!=` in version requirements is deprecated, use `~>` or `>=` instead + + Mix + [mix escript.build] `:strip_beam` option is deprecated in favor of `:strip_beams` + [Mix] `:exit_code` in `Mix.raise/2` has been deprecated in favor of `:exit_status` + [Mix.Config] `Mix.Config` is deprecated in favor of `Config` module + +Full release notes: https://github.com/elixir-lang/elixir/releases/tag/v1.13.0 +------------------------------------------------------------------- Fri Nov 5 11:51:18 UTC 2021 - Matwey Kornilov - Add 0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch: diff --git a/elixir.spec b/elixir.spec index bd5eec5..56ef486 100644 --- a/elixir.spec +++ b/elixir.spec @@ -1,7 +1,7 @@ # # spec file for package elixir # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: elixir -Version: 1.12.3 +Version: 1.13.1 Release: 0 Summary: Functional meta-programming aware language built atop Erlang License: Apache-2.0 @@ -25,13 +25,12 @@ Group: Development/Languages/Other URL: http://elixir-lang.org Source0: https://github.com/elixir-lang/elixir/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source2: macros.elixir -Patch0: 0001-Add-retries-to-tests-that-write-to-stderr-on-Windows.patch BuildRequires: gcc BuildRequires: make # required by Mix.SCM.Git see also (https://github.com/elixir-lang/elixir/issues/1386) -Requires: erlang >= 21 +Requires: erlang >= 22 Requires: git >= 1.7 -BuildRequires: erlang >= 21 +BuildRequires: erlang >= 22 BuildRequires: erlang-dialyzer BuildRequires: erlang-src BuildRequires: git >= 1.7 @@ -67,7 +66,6 @@ Elixir source code. %prep %setup -q -%patch0 -p1 %build # Elixir wants UTF-8 locale, force it