head 1.37; access; symbols pkgsrc-2026Q1:1.37.0.14 pkgsrc-2026Q1-base:1.37 pkgsrc-2025Q4:1.37.0.12 pkgsrc-2025Q4-base:1.37 pkgsrc-2025Q3:1.37.0.10 pkgsrc-2025Q3-base:1.37 pkgsrc-2025Q2:1.37.0.8 pkgsrc-2025Q2-base:1.37 pkgsrc-2025Q1:1.37.0.6 pkgsrc-2025Q1-base:1.37 pkgsrc-2024Q4:1.37.0.4 pkgsrc-2024Q4-base:1.37 pkgsrc-2024Q3:1.37.0.2 pkgsrc-2024Q3-base:1.37 pkgsrc-2024Q2:1.36.0.4 pkgsrc-2024Q2-base:1.36 pkgsrc-2024Q1:1.36.0.2 pkgsrc-2024Q1-base:1.36 pkgsrc-2023Q4:1.33.0.2 pkgsrc-2023Q4-base:1.33 pkgsrc-2023Q3:1.32.0.2 pkgsrc-2023Q3-base:1.32 pkgsrc-2023Q2:1.29.0.2 pkgsrc-2023Q2-base:1.29 pkgsrc-2023Q1:1.27.0.2 pkgsrc-2023Q1-base:1.27 pkgsrc-2022Q4:1.26.0.2 pkgsrc-2022Q4-base:1.26 pkgsrc-2022Q3:1.25.0.8 pkgsrc-2022Q3-base:1.25 pkgsrc-2022Q2:1.25.0.6 pkgsrc-2022Q2-base:1.25 pkgsrc-2022Q1:1.25.0.4 pkgsrc-2022Q1-base:1.25 pkgsrc-2021Q4:1.25.0.2 pkgsrc-2021Q4-base:1.25 pkgsrc-2021Q3:1.23.0.2 pkgsrc-2021Q3-base:1.23 pkgsrc-2021Q2:1.21.0.2 pkgsrc-2021Q2-base:1.21 pkgsrc-2021Q1:1.19.0.2 pkgsrc-2021Q1-base:1.19 pkgsrc-2020Q4:1.18.0.2 pkgsrc-2020Q4-base:1.18 pkgsrc-2020Q3:1.16.0.2 pkgsrc-2020Q3-base:1.16 pkgsrc-2020Q2:1.14.0.2 pkgsrc-2020Q2-base:1.14 pkgsrc-2020Q1:1.13.0.2 pkgsrc-2020Q1-base:1.13 pkgsrc-2019Q4:1.11.0.6 pkgsrc-2019Q4-base:1.11 pkgsrc-2019Q3:1.11.0.2 pkgsrc-2019Q3-base:1.11 pkgsrc-2019Q2:1.10.0.6 pkgsrc-2019Q2-base:1.10 pkgsrc-2019Q1:1.10.0.4 pkgsrc-2019Q1-base:1.10 pkgsrc-2018Q4:1.10.0.2 pkgsrc-2018Q4-base:1.10 pkgsrc-2018Q3:1.8.0.2 pkgsrc-2018Q3-base:1.8 pkgsrc-2018Q2:1.7.0.2 pkgsrc-2018Q2-base:1.7 pkgsrc-2018Q1:1.6.0.2 pkgsrc-2018Q1-base:1.6; locks; strict; comment @# @; 1.37 date 2024.08.16.09.57.46; author adam; state Exp; branches; next 1.36; commitid vnskR9wP4ElA02mF; 1.36 date 2024.03.20.11.36.49; author wiz; state Exp; branches; next 1.35; commitid xjpt4CZoDVFClT2F; 1.35 date 2024.02.21.10.29.44; author wiz; state Exp; branches; next 1.34; commitid SY2x87BgHSDeShZE; 1.34 date 2023.12.31.21.47.16; author wiz; state Exp; branches; next 1.33; commitid lPVBLqLrMKosiFSE; 1.33 date 2023.10.23.14.42.23; author adam; state Exp; branches; next 1.32; commitid ZG8icEbPjDc8aLJE; 1.32 date 2023.07.24.06.57.38; author adam; state Exp; branches; next 1.31; commitid n6SanD5fMg3Xv1yE; 1.31 date 2023.07.07.13.40.42; author adam; state Exp; branches; next 1.30; commitid af4tGT3J1EN8iSvE; 1.30 date 2023.07.02.08.09.37; author wiz; state Exp; branches; next 1.29; commitid mjEQBwDCczjFCcvE; 1.29 date 2023.05.26.04.26.50; author adam; state Exp; branches; next 1.28; commitid L2bIBA6XTSjTzqqE; 1.28 date 2023.04.09.08.56.58; author wiz; state Exp; branches; next 1.27; commitid g9oA6uBk2K0lApkE; 1.27 date 2022.12.27.16.55.12; author schmonz; state Exp; branches; next 1.26; commitid Iz0r4fy4wAcGxd7E; 1.26 date 2022.10.15.18.13.42; author triaxx; state Exp; branches; next 1.25; commitid 1YaWt0eZQ636kQXD; 1.25 date 2021.10.26.10.51.33; author nia; state Exp; branches; next 1.24; commitid obtJ15s6fwznfjeD; 1.24 date 2021.10.07.14.20.49; author nia; state Exp; branches; next 1.23; commitid QJiB3Fx8Lkrv1TbD; 1.23 date 2021.09.19.07.02.00; author nia; state Exp; branches; next 1.22; commitid SDC6K8VwRI4yax9D; 1.22 date 2021.08.10.11.18.57; author nia; state Exp; branches; next 1.21; commitid QtNYkmQfuTizSp4D; 1.21 date 2021.06.12.09.25.24; author nia; state Exp; branches; next 1.20; commitid bGPX7SfUPwui9PWC; 1.20 date 2021.04.08.10.34.36; author nia; state Exp; branches; next 1.19; commitid iFtszj8PsflgCtOC; 1.19 date 2021.01.15.12.10.33; author adam; state Exp; branches; next 1.18; commitid esV32LjMYtvQOODC; 1.18 date 2020.11.19.11.49.17; author nia; state Exp; branches; next 1.17; commitid VrKxI9FUfF6bxuwC; 1.17 date 2020.10.19.17.48.41; author nia; state Exp; branches; next 1.16; commitid LFRauHORKKV6wxsC; 1.16 date 2020.09.11.15.05.06; author nia; state Exp; branches; next 1.15; commitid 9zmFRzVHdhAPPDnC; 1.15 date 2020.07.07.11.34.29; author nia; state Exp; branches; next 1.14; commitid RvSxZX3d2EFcN8fC; 1.14 date 2020.05.17.14.44.21; author nia; state Exp; branches; next 1.13; commitid Rt4NE6zxt5lXtB8C; 1.13 date 2020.02.26.19.21.50; author adam; state Exp; branches; next 1.12; commitid TOyWcSci5motCdYB; 1.12 date 2020.02.13.18.27.23; author adam; state Exp; branches; next 1.11; commitid AVh7w4DOWgrAJxWB; 1.11 date 2019.08.01.09.52.52; author nia; state Exp; branches; next 1.10; commitid ZdWAfrTXBj1KbjxB; 1.10 date 2018.11.09.17.17.28; author nia; state Exp; branches; next 1.9; commitid mzJh2l45NbOpaiZA; 1.9 date 2018.10.11.12.10.08; author jperkin; state Exp; branches; next 1.8; commitid H0eG8veXXH6UoxVA; 1.8 date 2018.09.04.13.49.25; author fhajny; state Exp; branches; next 1.7; commitid bVwmU2ew71Se8NQA; 1.7 date 2018.05.14.15.57.13; author fhajny; state Exp; branches; next 1.6; commitid E4qCAv1SVgfIthCA; 1.6 date 2018.03.23.11.54.58; author fhajny; state Exp; branches; next 1.5; commitid 0csV9T4O6w0hOzvA; 1.5 date 2018.03.13.09.18.19; author fhajny; state Exp; branches; next 1.4; commitid N0W7YSo6yGACfhuA; 1.4 date 2018.02.28.15.14.02; author fhajny; state Exp; branches; next 1.3; commitid aIhsL03qLwFdEDsA; 1.3 date 2018.01.30.16.27.10; author fhajny; state Exp; branches; next 1.2; commitid Zk8W6WJpwCtfZUoA; 1.2 date 2018.01.22.14.59.53; author fhajny; state Exp; branches; next 1.1; commitid YtlRLhsFKqV8LSnA; 1.1 date 2018.01.03.13.06.17; author fhajny; state Exp; branches; next ; commitid 54oIr0xM84XTJqlA; desc @@ 1.37 log @elixir: updated to 1.17.2 v1.17.2 Bug fixes Logger [Logger.Translator] Fix logger crash when :gen_statem's format_status/2 returns non-tuple Mix [mix deps.get] Fix regression when fetching a git repository with a :ref [mix release] Validate RELEASE_MODE and set ERRORLEVEL on .bat scripts [mix release] Fix invalid example in code comment inside the generated vm.args.eex @ text @$NetBSD: distinfo,v 1.36 2024/03/20 11:36:49 wiz Exp $ BLAKE2s (elixir-1.17.2.tar.gz) = 34f9085a1c996628488135c37ee7435c33d5b4da68389cf36bd722e37301949b SHA512 (elixir-1.17.2.tar.gz) = f9d4983c3e7bd054a76bfe0dfa4aea483a4dd84ada432ae5a144167ff8d268499077704214eaaecfda84469c2f747a3594258ca95a7955bffde0c7b0f65985f2 Size (elixir-1.17.2.tar.gz) = 3255067 bytes SHA1 (patch-Makefile) = 9b7a1aeef4367b7315fd7a91c53ff533aeaa0aff @ 1.36 log @elixir: update to 1.16.2. 1. Enhancements Elixir [Code] Emit :defmodule tracing event on module definition Mix [Mix] Add Mix.install_project_dir/0 [Mix] Add environment variable for reusing Mix.install/2 installation [Mix.SCM] Add Mix.SCM.delete/1 2. Bug fixes Elixir [Code] Fix charlist formatting issue when a single-quoted charlist escapes a double-quote character [Path] Fix regression on how Path.relative_to/2 dealt with "." as input IEx [IEx.Helpers] Discard mermaid fenced blocks from ansi docs ExUnit [ExUnit] Properly compared pinned values when building diffs @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.35 2024/02/21 10:29:44 wiz Exp $ d3 3 a5 3 BLAKE2s (elixir-1.16.2.tar.gz) = 865845713c85c14ca8e39baee880daa375e06582c13106665129d1ebbea376b8 SHA512 (elixir-1.16.2.tar.gz) = 1e90adcd5d0512d4b394276e431f3987fc61a3f6191cd5c1d0f7fdd82baba99747aa553a3583e0813ffb5a48a32ce02a24e27b641f86a61e421722a802a850c1 Size (elixir-1.16.2.tar.gz) = 3357093 bytes @ 1.35 log @elixir: update to 1.16.1. Bug fixes Elixir [Code] Fix Code.quoted_to_algebra/2 for operator with :do key as operand [Kernel.ParallelCompiler] Do not crash parallel compiler when it receives diagnostics from additional code evaluation [Kernel.ParallelCompiler] Always log errors at the end of compilation [String] Fix String.capitalize/1 with a single codepoint IEx [IEx] Fix autocompletion of function signatures on Erlang/OTP 26 [IEx] Do not assume $HOME is set Mix [mix deps.compile] Handle compilation of rebar3 dependencies when rebar3 is on a path with spaces on Unix [mix test] Properly resolve relative paths when running tests from individual files [mix test] Properly resolve Windows paths when running tests from individual files @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.34 2023/12/31 21:47:16 wiz Exp $ d3 3 a5 3 BLAKE2s (elixir-1.16.1.tar.gz) = b46f29dd9d584d00db76fa5db026663120e54cc1350916e77c67dcc6ef87ffda SHA512 (elixir-1.16.1.tar.gz) = 2663c04ab3abe577884535e681989610131be0f4f0e55997956b9d4cb87c1a3c0cfd3bf453cf61dbc66f3aa20cdf46bc683df1bfe9292771b5445c164e5197ce Size (elixir-1.16.1.tar.gz) = 3353282 bytes @ 1.34 log @elixir: update to 1.16.0. (5 test failures) # Changelog for Elixir v1.16 ## Code snippets in diagnostics Elixir v1.15 introduced a new compiler diagnostic format and the ability to print multiple error diagnostics per compilation (in addition to multiple warnings). With Elixir v1.16, we also include code snippets in exceptions and diagnostics raised by the compiler. For example, a syntax error now includes a pointer to where the error happened: ``` ** (SyntaxError) invalid syntax found on lib/my_app.ex:1:17: error: syntax error before: '*' │ 1 │ [1, 2, 3, 4, 5, *] │ ^ │ └─ lib/my_app.ex:1:17 ``` For mismatched delimiters, it now shows both delimiters: ``` ** (MismatchedDelimiterError) mismatched delimiter found on lib/my_app.ex:1:18: error: unexpected token: ) │ 1 │ [1, 2, 3, 4, 5, 6) │ │ └ mismatched closing delimiter (expected "]") │ └ unclosed delimiter │ └─ lib/my_app.ex:1:18 ``` For unclosed delimiters, it now shows where the unclosed delimiter starts: ``` ** (TokenMissingError) token missing on lib/my_app:8:23: error: missing terminator: ) │ 1 │ my_numbers = (1, 2, 3, 4, 5, 6 │ └ unclosed delimiter ... 8 │ IO.inspect(my_numbers) │ └ missing closing delimiter (expected ")") │ └─ lib/my_app:8:23 ``` Errors and warnings diagnostics also include code snippets. When possible, we will show precise spans, such as on undefined variables: ``` error: undefined variable "unknown_var" │ 5 │ a - unknown_var │ ^^^^^^^^^^^ │ └─ lib/sample.ex:5:9: Sample.foo/1 ``` Otherwise the whole line is underlined: ``` error: function names should start with lowercase characters or underscore, invalid name CamelCase │ 3 │ def CamelCase do │ ^^^^^^^^^^^^^^^^ │ └─ lib/sample.ex:3 ``` A huge thank you to Vinícius Müller for working on the new diagnostics. ## Revamped documentation Elixir's Getting Started guides have been made part of the Elixir repository and incorporated into ExDoc. This was an opportunity to revisit and unify all official guides and references. We have also incorporated and extended the work on [Understanding Code Smells in Elixir Functional Language](https://github.com/lucasvegi/Elixir-Code-Smells/blob/main/etc/2023-emse-code-smells-elixir.pdf), by Lucas Vegi and Marco Tulio Valente, from [ASERG/DCC/UFMG](http://aserg.labsoft.dcc.ufmg.br/), into the official document in the form of anti-patterns. The anti-patterns are divided into four categories: code-related, design-related, process-related, and meta-programming. Our goal is to give all developers examples of potential anti-patterns, with context and examples on how to improve their codebases. Another [ExDoc](https://github.com/elixir-lang/ex_doc) feature we have incorporated in this release is the addition of cheatsheets, starting with [a cheatsheet for the Enum module](https://hexdocs.pm/elixir/main/enum-cheat.html). If you would like to contribute future cheatsheets to Elixir itself, feel free to start a discussion with an issue. Finally, we have started enriching our documentation with [Mermaid.js](https://mermaid.js.org/) diagrams. You can find examples in the [GenServer](https://hexdocs.pm/elixir/main/GenServer.html) and [Supervisor](https://hexdocs.pm/elixir/main/Supervisor.html) docs. ## v1.16.0 (2023-12-22) ### 1. Enhancements #### EEx * [EEx] Include relative file information in diagnostics #### Elixir * [Code] Add `:emit_warnings` for `Code.string_to_quoted/2` * [Code] Automatically include columns in parsing options * [Code] Introduce `MismatchedDelimiterError` for handling mismatched delimiter exceptions * [Code.Fragment] Handle anonymous calls in fragments * [Code.Formatter] Trim trailing whitespace on heredocs with `\r\n` * [File] Add `:offset` option to `File.stream!/2` * [Kernel] Auto infer size of matched variable in bitstrings * [Kernel] Preserve column information when translating typespecs * [Kernel] Suggest module names based on suffix and casing errors when the module does not exist in `UndefinedFunctionError` * [Kernel.ParallelCompiler] Introduce `Kernel.ParallelCompiler.pmap/2` to compile multiple additional entries in parallel * [Kernel.SpecialForms] Warn if `True`/`False`/`Nil` are used as aliases and there is no such alias * [Macro] Add `Macro.compile_apply/4` * [Module] Add support for `@@nifs` annotation from Erlang/OTP 25 * [Module] Add support for missing `@@dialyzer` configuration * [String] Update to Unicode 15.1.0 * [String] Add `String.replace_invalid/2` * [Task] Add `:limit` option to `Task.yield_many/2` #### Logger * [Logger] Add `Logger.levels/0` #### Mix * [mix] Add `MIX_PROFILE` to profile a list of comma separated tasks * [mix archive.install] Support `--sparse` option * [mix compile.app] Warn if both `:applications` and `:extra_applications` are used * [mix compile.elixir] Pass original exception down to diagnostic `:details` when possible * [mix compile.elixir] Optimize scenario where there are thousands of files in `lib/` and one of them is changed * [mix deps.clean] Emit a warning instead of crashing when a dependency cannot be removed * [mix escript.install] Support `--sparse` option * [mix release] Include `include/` directory in releases * [mix test] Allow testing multiple file:line at once, such as `mix test test/foo_test.exs:13 test/bar_test.exs:27` ### 2. Bug fixes #### Elixir * [Code] Keep quotes for atom keys in formatter * [Code.Fragment] Fix crash in `Code.Fragment.surround_context/2` when matching on `->` * [IO] Raise when using `IO.binwrite/2` on terminated device (mirroring `IO.write/2`) * [Kernel] Do not expand aliases recursively (the alias stored in Macro.Env is already expanded) * [Kernel] Ensure `dbg` module is a compile-time dependency * [Kernel] Warn when a private function or macro uses `unquote/1` and the function/macro itself is unused * [Kernel] Re-enabled compiler optimizations for top level functions in scripts (disabled in v1.14.0 but shouldn't impact most programs) * [Kernel] Do not define an alias for nested modules starting with `Elixir.` in their definition * [Kernel.ParallelCompiler] Consider a module has been defined in `@@after_compile` callbacks to avoid deadlocks * [Macro] Address exception on `Macro.to_string/1` for certain ASTs * [Path] Lazily evaluate `File.cwd!/0` in `Path.expand/1` and `Path.absname/1` * [Path] Ensure `Path.relative_to/2` returns a relative path when the given argument does not share a common prefix with `cwd` #### ExUnit * [ExUnit] Raise on incorrectly dedented doctests #### IEx * [IEx.Pry] Fix prying functions with only literals in their body #### Mix * [mix archive.install] Restore code paths after `mix archive.install` * [mix compile] Ensure files with duplicate modules are recompiled whenever any of the files change * [mix compile] Update Mix compiler diagnostics documentation and typespecs to match the Elixir compiler behaviour where both lines and columns start from one (before it inaccurately said that columns started from zero) * [mix escript.install] Restore code paths after `mix escript.install` ### 3. Soft deprecations (no warnings emitted) #### Elixir * [File] Deprecate `File.stream!(file, options, line_or_bytes)` in favor of keeping the options as last argument, as in `File.stream!(file, line_or_bytes, options)` * [Kernel.ParallelCompiler] Deprecate `Kernel.ParallelCompiler.async/1` in favor of `Kernel.ParallelCompiler.pmap/2` * [Path] Deprecate `Path.safe_relative_to/2` in favor of `Path.safe_relative/2` #### Mix * [mix compile] Returning a four-element tuple as a position in `Mix.Task.Compiler.Diagnostic` ### 4. Hard deprecations #### Elixir * [Date] Deprecate inferring a range with negative step, call `Date.range/3` with a negative step instead * [Enum] Deprecate passing a range with negative step on `Enum.slice/2`, give `first..last//1` instead * [Kernel] `~R/.../` is deprecated in favor of `~r/.../`. This is because `~R/.../` still allowed escape codes, which did not fit the definition of uppercase sigils * [String] Deprecate passing a range with negative step on `String.slice/2`, give `first..last//1` instead #### ExUnit * [ExUnit.Formatter] Deprecate `format_time/2`, use `format_times/1` instead #### Mix * [mix compile.leex] Require `:leex` to be added as a compiler to run the `leex` compiler * [mix compile.yecc] Require `:yecc` to be added as a compiler to run the `yecc` compiler @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.33 2023/10/23 14:42:23 adam Exp $ d3 3 a5 3 BLAKE2s (elixir-1.16.0.tar.gz) = 436ddcf98cba87b20ccf0cbf11284126a8321c470f5be95b6ed2a1e1ef408d60 SHA512 (elixir-1.16.0.tar.gz) = b1685d4a6745c08becab02f46a4767189781fd95f0eaa16d78a93e83a1750c5832c509e536c30e635ab62840aae5498052d7ab10a51242161f632405ca99f9cf Size (elixir-1.16.0.tar.gz) = 3351329 bytes @ 1.33 log @elixir: updated to 1.15.7 v1.15.7 1. Enhancements Elixir [Elixir] Allow code evaluation across Elixir versions 2. Bug fixes EEx [EEx] Do not emit duplicate warnings from tokenizer Mix [mix format] Correctly match file to subdirectory in Mix.Tasks.Format.formatter_for_file/2 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.32 2023/07/24 06:57:38 adam Exp $ d3 3 a5 3 BLAKE2s (elixir-1.15.7.tar.gz) = 649cabd75a291c2964a922b66b9449e5d76b78b559b2aff71d326efa293d0896 SHA512 (elixir-1.15.7.tar.gz) = a46f0569cbff342f15a04776f8d57cf2554867546004adabd9b9dff36c184ec56a78f2df2fc6c0855e65c11277662f694f5e6a8c6e1716cf4e22d8fdd5e1d4ae Size (elixir-1.15.7.tar.gz) = 3151775 bytes @ 1.32 log @elixir: updated to 1.15.4 v1.15.4 Bug fixes Mix [mix archive.build] Disable protocol consolidation when building archiveson archive.install [mix compile] Track removed files per local dependency (this addresses a bug where files depending on modules from path dependencies always recompiled) [mix release] Do not strip relevant chunks from Erlang/OTP 26 v1.15.3 1. Enhancements Elixir [Kernel] Improve better stacktraces when executing unnested Elixir code in a file Mix [Mix] Allow to opt out of starting apps in Mix.install/2 2. Bug fixes Elixir [Code] Ensure with_diagnostics propagate warnings from inner Erlang passes IEx [IEx] Fix --remsh on Erlang/OTP 25 and earlier Mix [mix compile.elixir] Ensure __mix_recompile__? callbacks are properly invoked @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.31 2023/07/07 13:40:42 adam Exp $ d3 3 a5 3 BLAKE2s (elixir-1.15.4.tar.gz) = d39289c4815f5a1bbdbcc18f9c204441540df73fda6b9ad8c13236c06a043fb7 SHA512 (elixir-1.15.4.tar.gz) = 46d30fd8cce79ca88d66602cf5eaaea4c877871ca06ad5a87494892f412685e1bd3d1bac547474fcf40f325c45583f1feabde86962e30a6d7626e7f9bdee2bd6 Size (elixir-1.15.4.tar.gz) = 3146690 bytes @ 1.31 log @elixir: updated to 1.15.2 v1.15.2 Bug fixes IEx [IEx] Fix CLI being unable to boot on Windows v1.15.1 1. Enhancements [Code] Code.string_to_quoted/2 honors :static_atoms_encoder for multi-letter sigils 2. Bug fixes ExUnit [ExUnit.CaptureLog] Fix race condition on concurrent capture_log [ExUnit.CaptureLog] Respect options passed to nested capture_log calls [ExUnit.Doctest] Properly compile doctests without results terminated by fences [ExUnit.Doctest] Allow variables defined in doctests to be used in expectation IEx [IEx] Ensure pry works on Erlang/OTP 25 and earlier while IEx is booting [IEx] Code.Fragment.surround_context considers surround context around spaces and parens Logger [Logger] Do not assume Logger has been loaded at compile-time [Logger.Formatter] Properly handle :function as metadata Mix [mix compile] Ensure the current project is available on the code path after its Elixir sources are compiled [mix compile] Guarantee yecc/leex are available when emitting warnings from previous runs [mix compile] Fix bug where an external resource was deleted after its mtime was successfully retrieved [mix compile] Track removed modules and exports across local deps [mix deps] Fix an issue where dependencies could not be started in an umbrella projects [mix release] Properly handle optional dependencies when there is a conflict in the application start mode [mix release] Remove --werl from release scripts on Erlang/OTP 26 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.30 2023/07/02 08:09:37 wiz Exp $ d3 3 a5 3 BLAKE2s (elixir-1.15.2.tar.gz) = aee301eb34b8d23df5dcd64a15f2b7b69618e9c7f5ae338fb032ac4dbfba5d90 SHA512 (elixir-1.15.2.tar.gz) = 5fdd3048960fc015c78fc09f87e0fbf097af345be340fe9a23e556e8bb4340f9aaec2c5044fde2850da3787780e468dc728c7c704512c4176443af8f53426467 Size (elixir-1.15.2.tar.gz) = 3146107 bytes @ 1.30 log @elixir: update to 1.15.0. # Changelog for Elixir v1.15 This release requires Erlang/OTP 24 and later. Elixir v1.15 is a smaller release with focused improvements on compilation and boot times. This release also completes our integration process with Erlang/OTP logger, bringing new features such as log rotation and compaction out of the box. You will also find additional convenience functions in `Code`, `Map`, `Keyword`, all Calendar modules, and others. ## Compile and boot-time improvements The last several releases brought improvements to compilation time and this version is no different. In particular, Elixir now caches and prunes load paths before compilation, ensuring your project (and dependencies!) compile faster and in an environment closer to production. In a nutshell the Erlang VM loads modules from code paths. Each application that ships with Erlang and Elixir plus each dependency become an entry in your code path. The larger the code path, the more work Erlang has to do in order to find a module. In previous versions, Mix would only add entries to the load paths. Therefore, if you compiled 20 dependencies and you went to compile the 21st, the code path would have 21 entries (plus all Erlang and Elixir apps). This allowed modules from unrelated dependencies to be seen and made compilation slower the more dependencies you had. With this release, we will now prune the code paths to only the ones listed as dependencies, bringing the behaviour closer to `mix release`. Furthermore, Erlang/OTP 26 allows us to start applications concurrently and cache the code path lookups, decreasing the cost of booting applications. The combination of Elixir v1.15 and Erlang/OTP 26 should reduce the boot time of applications, such as when starting `iex -S mix` or running a single test with `mix test`, from 5% to 30%. The compiler is also smarter in several ways: `@@behaviour` declarations no longer add compile-time dependencies and aliases in patterns and guards add no dependency whatsoever, as no dispatching happens. Furthermore, Mix now tracks the digests of `@@external_resource` files, reducing the amount of recompilation when swapping branches. Finally, dependencies are automatically recompiled when their compile-time configuration changes. ### Potential incompatibilities Due to the code path pruning, if you have an application or dependency that does not specify its dependencies on Erlang and Elixir application, it may no longer compile successfully in Elixir v1.15. You can temporarily disable code path pruning by setting `prune_code_paths: false` in your `mix.exs`, although doing so may lead to runtime bugs that are only manifested inside a `mix release`. ## Compiler warnings and errors The Elixir compiler can now emit many errors for a single file, making sure more feedback is reported to developers before compilation is aborted. In Elixir v1.14, an undefined function would be reported as: ** (CompileError) undefined function foo/0 (there is no such import) my_file.exs:1 In Elixir v1.15, the new reports will look like: error: undefined function foo/0 (there is no such import) my_file.exs:1 ** (CompileError) my_file.exs: cannot compile file (errors have been logged) A new function, called `Code.with_diagnostics/2`, has been added so this information can be leveraged by editors, allowing them to point to several errors at once. ## Integration with Erlang/OTP logger This release provides additional features such as global logger metadata and file logging (with rotation and compaction) out-of-the-box! This release also soft-deprecates Elixir's Logger Backends in favor of Erlang's Logger handlers. Elixir will automatically convert your `:console` backend configuration into the new configuration. Previously, you would set: ```elixir config :logger, :console, level: :error, format: "$time $message $metadata" ``` Which is now translated to the equivalent: ```elixir config :logger, :default_handler, level: :error config :logger, :default_formatter, format: "$time $message $metadata" ``` If you use `Logger.Backends.Console` with a custom device or other backends, they are still fully supported and functional. If you implement your own backends, you want to consider migrating to [`:logger_backends`](https://github.com/elixir-lang/logger_backends) in the long term. See the new `Logger` documentation for more information on the new features and on compatibility. @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.29 2023/05/26 04:26:50 adam Exp $ d3 3 a5 3 BLAKE2s (elixir-1.15.0.tar.gz) = 0aa1d42c064da87390272ccb20832691cdb5c2b15b8e48cc357c1324630d8ff2 SHA512 (elixir-1.15.0.tar.gz) = 89af6b66fb06d3e2b847ec1e2667b17a78e9501a53397b2edffa530ac6933fb55f7654526bd76abb360c72cd11b023458cd26f36849b43efc91bd737ece7ee31 Size (elixir-1.15.0.tar.gz) = 3144933 bytes @ 1.29 log @elixir: updated to 1.14.5 v1.14.5 (2023-05-22) This release contains fixes for Erlang/OTP 26. Bug fixes Elixir * [CLI] Fix a bug where stdout would block when there was no attached terminal on Windows when running on Erlang/OTP 26 Mix * [Mix] Properly set SSL configuration for Mix downloads when running on Erlang/OTP 26 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.28 2023/04/09 08:56:58 wiz Exp $ d3 3 a5 3 BLAKE2s (elixir-1.14.5.tar.gz) = 3270a9c73c3e372e187e6dd9881361e54a3e6412442f2f6829342d8f88fc1491 SHA512 (elixir-1.14.5.tar.gz) = 589482fb080eb9f71319b7927312ee255dab0376a8fb781533bc97b6a75dd71ec43cd022bb2eff12eca205cdeaf9a6d629f754c555c17cd6222e05912ff3d960 Size (elixir-1.14.5.tar.gz) = 3076366 bytes @ 1.28 log @elixir: update to 1.14.4. v1.14.4 Latest This release adds basic support for Erlang/OTP 26. When migrating to Erlang/OTP 26, keep it mind it changes how maps are stored internally and they will be printed and traversed in a different order (note maps never provided a guarantee of their order). To aid migration, this release adds :sort_maps to inspect custom options, in case you want to sort them before inspection: inspect(map, custom_options: [sort_maps: true]) Enhancements Elixir [Inspect] Add :sort_maps to Inspect.Opts.custom_options IEx [IEx] Support shell history in Erlang/OTP 26+ Mix [mix compile.elixir] Optimize application tracer Bug fixes Elixir [Code] Properly handle blocks with comments in all cases in Code.quoted_to_string_with_comments/2 [Kernel] Fix debug_info/4 when returning core_v1 [Kernel] Store complete path on quote keep: true to avoid invalid stacktraces [Kernel] Fix column count when tokenizing escaped interpolations [Stream] Fix Stream.zip/1 hanging on empty list Mix [mix format] Don't call formatter on directories v1.14.3 1. Enhancements Elixir [Kernel] Speed up loading of runtime modules in the parallel compiler [Range] Optimize range membership implementation ExUnit [ExUnit] Return values from running doctests and make their order consistent 2. Bug fixes Elixir [Calendar] Fix handling of negative years in Calendar.strftime/2 [Exception] Improve blaming of FunctionClauseError with is_struct/2 guards [Kernel] Fix invalid variable scoping in defguard expansion [Kernel] Do not warn on captured underscored vars from defmodule [Kernel] Do not crash for missing line info on type warnings [Macro] Fix Macro.to_string/1 for large negative integers [Macro] Properly type and escape expansion of __ENV__ in macros [Path] Make sure Path.wildcard/2 expands .. symlinks accordingly [Range] Address corner cases in Range.disjoint?/2 implementation ExUnit [ExUnit.DocTest] Remove unnecessary literal quotes from error message on reports @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.27 2022/12/27 16:55:12 schmonz Exp $ d3 3 a5 3 BLAKE2s (elixir-1.14.4.tar.gz) = c3fa063eea8d0a7065f8dca1ee6f774a91c4db6ffd899b83500ff394474b1aa4 SHA512 (elixir-1.14.4.tar.gz) = c39e91e27485ce52e6d29c64f6d5c7abc50e99b8aac578642a4c085083fed23ccba095a013fee4dd3de97524bf4ec54af31478150818921b2a891f7a5840080a Size (elixir-1.14.4.tar.gz) = 3076206 bytes @ 1.27 log @Update to 1.14.2. From the changelog: ## v1.14.2 (2022-11-11) ### 1. Enhancements #### Elixir * [Code] Add `Code.eval_quoted_with_env/4` with support for the `:prune_binding` option #### ExUnit * [ExUnit.Case] Allow test cases to not be registered on use * [ExUnit.DocTest] Include `:doctest` and `:doctest_line` as meta tags * [ExUnit.Formatter] Expose `ExUnit.Formatter.format_assertion_diff/4` #### Mix * [Mix] `Mix.install/2` accepts atoms as paths ### 2. Bug fixes #### Elixir * [Code.Formatter] Fix `size*unit` shortcut in bitstring * [Kernel] Generate unique variables for macro expansion of `defguard` * [Protocol] Expand `:for` in protocols with the appropriate env #### ExUnit * [ExUnit] Do not run duplicate cases on `ExUnit.run/1` #### Mix * [mix test] Ensure proper error message when there is no test directory ## v1.14.1 (2022-10-10) ### 1. Enhancements #### Elixir * [Kernel] Perform partial expansion of literals in module attributes * [Kernel] Do not add compile-time dependencies for literals as defaults in `Application.compile_env/3` inside module attributes * [Macro] Add `Macro.expand_literals/2` and `Macro.expand_literals/3` * [System] Add `:close_stdin` to `System.shell/2` #### Mix * [mix test] Accept `--all-warnings` option ## 2. Bug fixes #### Elixir * [Kernel] Fix misleading warning when `:uniq` is given in `for` comprehensions and the result is unused * [Kernel] Improve error message for when there is a conflicting struct and ignoring module conflict * [Kernel] Do not delete `@@enforce_keys` attribute after `defstruct` declaration * [Kernel] Do not crash the checker on modules with missing `:debug_info` chunk * [Macro] Fix error in `Macro.to_string/2` when converting an AST with `:erlang.binary_to_atom/2` * [String] Fix `String.split/3` and `String.next_grapheme/1` returning invalid results on invalid UTF-8 encoding * [System] Do not close stdin by default in `System.shell/2` * [URI] Do not return `uri.port` as `:undefined` in certain cases in `URI.new/1` #### ExUnit * [ExUnit.DocTest] Do not crash when both `:moduledoc` and functions are specified in `:only` #### IEx * [CLI] Fix invalid argument handling when `--no-pry` is given #### Mix * [mix format] Do not cache inputs from `.formatter.exs` so they are properly re-evaluted on every call @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.26 2022/10/15 18:13:42 triaxx Exp $ d3 3 a5 3 BLAKE2s (elixir-1.14.2.tar.gz) = e46e4be8fd1f56437625e7603b2b4b9f50dc29ada4d6f5d6ebc3c58d30820eb8 SHA512 (elixir-1.14.2.tar.gz) = ec492464553aa6bdaa37dbfd07b1fdc00d398242e269e73893d75b615e0fc44d360b2347378c45982281feed8d0c34c7fbdd09101ca12df0f7073cf52e43f04e Size (elixir-1.14.2.tar.gz) = 3085613 bytes @ 1.26 log @elixir: Update to 1.14.0 upstream changes: ----------------- v1.14 o https://github.com/elixir-lang/elixir/blob/v1.14/CHANGELOG.md v1.13 o https://github.com/elixir-lang/elixir/blob/v1.13/CHANGELOG.md @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.25 2021/10/26 10:51:33 nia Exp $ d3 3 a5 3 BLAKE2s (elixir-1.14.0.tar.gz) = 8e66a58fe06219b363b7b0c9c495c39dcb4761534dcf0d1bb7204e697162fd26 SHA512 (elixir-1.14.0.tar.gz) = 74fa0364260710e7139474437846035aaa764fcc138bedd7c15dd729c72242f56a9d99232524d99701b811e2ddebed84c27586351f4b88cb0091f89fada43ad6 Size (elixir-1.14.0.tar.gz) = 3067581 bytes @ 1.25 log @lang: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes The following distfiles could not be fetched (possibly fetched conditionally?): ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-linux-gnu.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-linux-musl.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-netbsd.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-armv7-unknown-netbsd-eabihf.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-i686-unknown-linux-gnu.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-powerpc-unknown-netbsd90.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-sparc64-unknown-netbsd.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-apple-darwin.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-freebsd.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-linux-gnu.tar.gz ./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-linux-musl.tar.gz ./lang/smlnj/distinfo smlnj-110.73/boot.ppc-unix.tgz ./lang/smlnj/distinfo smlnj-110.73/boot.sparc-unix.tgz ./lang/oracle-jre8/distinfo jce_policy-8.zip ./lang/oracle-jre8/distinfo jre-8u202-linux-i586.tar.gz ./lang/oracle-jre8/distinfo jre-8u202-linux-x64.tar.gz ./lang/oracle-jre8/distinfo jre-8u202-macosx-x64.tar.gz ./lang/oracle-jre8/distinfo jre-8u202-solaris-x64.tar.gz ./lang/oracle-jdk8/distinfo jdk-8u202-linux-i586.tar.gz ./lang/oracle-jdk8/distinfo jdk-8u202-linux-x64.tar.gz ./lang/oracle-jdk8/distinfo jdk-8u202-solaris-x64.tar.gz ./lang/ghc80/distinfo ghc-7.10.3-boot-x86_64-unknown-solaris2.tar.xz ./lang/ghc80/distinfo ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz ./lang/ghc80/distinfo ghc-8.0.2-boot-x86_64-unknown-freebsd.tar.xz ./lang/gcc5-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2 ./lang/gcc5-aux/distinfo ada-bootstrap.i386.freebsd.84.tar.bz2 ./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.dragonfly.41.tar.bz2 ./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2 ./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2 ./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2 ./lang/rust/distinfo rust-1.53.0-aarch64-apple-darwin.tar.gz ./lang/rust/distinfo rust-1.53.0-aarch64-unknown-linux-gnu.tar.gz ./lang/rust/distinfo rust-1.53.0-aarch64-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-1.53.0-aarch64_be-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-1.53.0-arm-unknown-linux-gnueabihf.tar.gz ./lang/rust/distinfo rust-1.53.0-armv7-unknown-linux-gnueabihf.tar.gz ./lang/rust/distinfo rust-1.53.0-i686-unknown-linux-gnu.tar.gz ./lang/rust/distinfo rust-1.53.0-powerpc-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-1.53.0-powerpc-unknown-netbsd90.tar.gz ./lang/rust/distinfo rust-1.53.0-sparc64-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-1.53.0-x86_64-apple-darwin.tar.gz ./lang/rust/distinfo rust-1.53.0-x86_64-unknown-freebsd.tar.gz ./lang/rust/distinfo rust-1.53.0-x86_64-unknown-illumos.tar.gz ./lang/rust/distinfo rust-1.53.0-x86_64-unknown-linux-gnu.tar.gz ./lang/rust/distinfo rust-std-1.53.0-aarch64-apple-darwin.tar.gz ./lang/rust/distinfo rust-std-1.53.0-aarch64-unknown-linux-gnu.tar.gz ./lang/rust/distinfo rust-std-1.53.0-aarch64-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-std-1.53.0-aarch64_be-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-std-1.53.0-arm-unknown-linux-gnueabihf.tar.gz ./lang/rust/distinfo rust-std-1.53.0-armv7-unknown-linux-gnueabihf.tar.gz ./lang/rust/distinfo rust-std-1.53.0-i686-unknown-linux-gnu.tar.gz ./lang/rust/distinfo rust-std-1.53.0-powerpc-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-std-1.53.0-powerpc-unknown-netbsd90.tar.gz ./lang/rust/distinfo rust-std-1.53.0-sparc64-unknown-netbsd.tar.gz ./lang/rust/distinfo rust-std-1.53.0-x86_64-apple-darwin.tar.gz ./lang/rust/distinfo rust-std-1.53.0-x86_64-unknown-freebsd.tar.gz ./lang/rust/distinfo rust-std-1.53.0-x86_64-unknown-linux-gnu.tar.gz ./lang/smlnj11072/distinfo smlnj-110.72/boot.ppc-unix.tgz ./lang/smlnj11072/distinfo smlnj-110.72/boot.sparc-unix.tgz ./lang/ghc84/distinfo ghc-8.0.2-boot-x86_64-unknown-solaris2.tar.xz ./lang/ghc84/distinfo ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz ./lang/ghc84/distinfo ghc-8.4.4-boot-x86_64-apple-darwin.tar.xz ./lang/ghc84/distinfo ghc-8.4.4-boot-x86_64-unknown-freebsd.tar.xz ./lang/ghc7/distinfo ghc-7.10.3-boot-i386-unknown-freebsd.tar.xz ./lang/ghc7/distinfo ghc-7.6.3-boot-i386-unknown-solaris2.tar.xz ./lang/ghc7/distinfo ghc-7.6.3-boot-powerpc-apple-darwin.tar.xz ./lang/ghc7/distinfo ghc-7.6.3-boot-x86_64-unknown-solaris2.tar.xz ./lang/ghc90/distinfo ghc-8.10.4-boot-x86_64-unknown-solaris2.tar.xz ./lang/ghc90/distinfo ghc-9.0.1-boot-aarch64-unknown-netbsd.tar.xz ./lang/ghc90/distinfo ghc-9.0.1-boot-i386-unknown-freebsd.tar.xz ./lang/ghc90/distinfo ghc-9.0.1-boot-x86_64-apple-darwin.tar.xz ./lang/ghc90/distinfo ghc-9.0.1-boot-x86_64-unknown-freebsd.tar.xz ./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz ./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz ./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.8.181-netbsd-8-aarch64-20180917.tar.xz ./lang/openjdk8/distinfo openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.6-amd64-20140719.tar.bz2 ./lang/openjdk8/distinfo openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2 ./lang/go-bin/distinfo go1.14.2.darwin-amd64.tar.gz ./lang/go-bin/distinfo go1.14.2.linux-386.tar.gz ./lang/go-bin/distinfo go1.14.2.linux-amd64.tar.gz ./lang/go-bin/distinfo go1.14.2.linux-arm64.tar.gz ./lang/go-bin/distinfo go1.14.2.linux-armv6l.tar.gz ./lang/go-bin/distinfo go1.14.2.netbsd-arm64.tar.gz ./lang/go-bin/distinfo go1.16beta1.darwin-arm64.tar.gz ./lang/gcc6-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2 ./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.dragonfly.41.tar.bz2 ./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2 ./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2 ./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2 ./lang/ghc810/distinfo ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz ./lang/sun-jre7/distinfo UnlimitedJCEPolicyJDK7.zip ./lang/sun-jre7/distinfo jre-7u80-linux-x64.tar.gz ./lang/sun-jre7/distinfo jre-7u80-solaris-i586.tar.gz ./lang/sun-jre7/distinfo jre-7u80-solaris-x64.tar.gz ./lang/ghc88/distinfo ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz ./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-apple-darwin.tar.xz ./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-unknown-freebsd.tar.xz ./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz ./lang/gcc-aux/distinfo ada-bootstrap.i386.dragonfly.36A.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.i386.freebsd.84.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.x86_64.dragonfly.36A.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2 ./lang/gcc-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2 ./lang/gcc6/distinfo ecj-4.5.jar ./lang/openjdk11/distinfo bootstrap-jdk-1.11.0.7.10-netbsd-9-aarch64-20200509.tar.xz ./lang/sun-jdk7/distinfo jdk-7u80-linux-x64.tar.gz ./lang/sun-jdk7/distinfo jdk-7u80-solaris-i586.tar.gz ./lang/sun-jdk7/distinfo jdk-7u80-solaris-x64.tar.gz @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.24 2021/10/07 14:20:49 nia Exp $ d3 4 a6 4 BLAKE2s (elixir-1.12.3.tar.gz) = 03c9c6199ede22997cf8d81790239d614d7b5e834b5409923046f930470976bf SHA512 (elixir-1.12.3.tar.gz) = 945e33ca9c3e50015531f87630c1bc1b9966acc64bbf7d01c8c4f8cfc104ee1e08113f572f0ad6a9f5e8ee37e33144e58b2ac33dc0a2b01e1355fc5f8b1b9329 Size (elixir-1.12.3.tar.gz) = 2461828 bytes SHA1 (patch-Makefile) = 00a68538bae40effba33fc3bc5019fdbf38a91f3 @ 1.24 log @lang: Remove SHA1 hashes for distfiles @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.23 2021/09/19 07:02:00 nia Exp $ d3 1 a3 1 RMD160 (elixir-1.12.3.tar.gz) = 8ac7467e844136f38c2d4124f0c083a6eab5d15f @ 1.23 log @elixir: update to 1.12.3 This release contains only bug fixes: Elixir * [Code] Make sure that bindings in the default context returned by Code.eval_* functions are not returned as tagged tuples * [Kernel] Do not crash when handling ambiguity errors * [Range] Still match on old range patterns throughout the stdlib IEx * [IEx.Autocomplete] Do not error autocompletion with module attribute Mix * [Mix] Rename inconsistent :exit_code option to :exit_status on Mix.raise/2 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.22 2021/08/10 11:18:57 nia Exp $ a2 1 SHA1 (elixir-1.12.3.tar.gz) = e6860bb0fe1a9ceb3f9c0d615afc27ce6f7e0835 @ 1.22 log @elixir: update to 1.12.2 1. Bug fixes Elixir [Kernel] Ensure deprecated macros emit warnings Mix [mix deps] Ensure unconstrained rebar deps generate valid mix specifications 2. Enhancements Elixir [elixirc] Change the output of --profile time to make it easier to detect outliers [Application] Do not add compile time deps on args to Application.compile_env/2 and Application.compile_env!/2 [Enum] Optimize Enum.into/3 and Map.new/2 Mix [mix compile] Compile most recently changed files first [mix compile, mix run, mix test] Speed up the time taken to load dependencies. This should make the usage of Mix inside projects quite more responsive @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.21 2021/06/12 09:25:24 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.12.2.tar.gz) = b525e7357b939156915580de0a5db8162a123ede RMD160 (elixir-1.12.2.tar.gz) = d86cdb5ca7249d2efbcc2e71c7c78c732ebb9878 SHA512 (elixir-1.12.2.tar.gz) = 4c19a6a0310606b3016b3699079dc5f667e348c86c92e7e998cbecbacd283f5f4ccdd3d83b757725ba637a39729e9d82673b596feee72e831d575630e2f3111a Size (elixir-1.12.2.tar.gz) = 2460047 bytes @ 1.21 log @elixir: update to 1.12.1 Release notes for 1.12.x: https://elixir-lang.org/blog/2021/05/19/elixir-v1-12-0-released/ @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.20 2021/04/08 10:34:36 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.12.1.tar.gz) = 3a789a3c53b90db16d6b7428132276bf489f0e00 RMD160 (elixir-1.12.1.tar.gz) = 79b89bdd965e29e4715e37efa63ae1187b7a0d73 SHA512 (elixir-1.12.1.tar.gz) = ecea8a95d05e85431c324c7e15fdd08639a52fa6031fb8ec671825debecd892d2258b3914fdd8417728be1a18202d211eeb19869797ad0fd022c6ec91cd05880 Size (elixir-1.12.1.tar.gz) = 2458060 bytes @ 1.20 log @elixir: Update to 1.11.4 This release introduces fixes for better support of Erlang/OTP 24+. 1. Enhancements Elixir [Kernel] Update formatting when printing warnings and errors from Erlang/OTP 24+ [Kernel] Support float-16 on bitstrings Mix [mix local.rebar] This task will now install rebar3 version 3.14.4, compiled with Erlang/OTP 21 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.19 2021/01/15 12:10:33 adam Exp $ d3 4 a6 4 SHA1 (elixir-1.11.4.tar.gz) = 751d81a636e9dda05476c10c42bff220cd8d5895 RMD160 (elixir-1.11.4.tar.gz) = 1d4988e1dc391e5dc200f64d7b45ffcc567f7f28 SHA512 (elixir-1.11.4.tar.gz) = 5dc940a31a31ae1c1537f874c15e58311cc0b0452f61e923bdfde0a5cfef3d8003eb3e85be320eb0acfb7bc0c0c0dc8ac965dec6727257c244048268fbf38ceb Size (elixir-1.11.4.tar.gz) = 2396885 bytes @ 1.19 log @elixir: updated to 1.11.3 v1.11.3 1. Enhancements Elixir [Macro] Add Macro.unique_var/2 and Macro.generate_unique_arguments/2 2. Bug fixes Elixir [Code] Do not raise when checking for operator ambiguity when :static_atoms_encoder is set in Code.string_to_quoted [Kernel] Emit undefined function warnings from with [Kernel] Do not fail type checking when literals are used in guards [Module] Do not warn for attributes used in @@after_compile [Record] Make sure nested record names do not clobber each other ExUnit [ExUnit.Assertions] Do not crash if there are macros and module attributes on the left side of ++ IEx [IEx.Helpers] Do not use Unicode chars if ANSI is disabled Mix [mix deps.compile] Fix compatibility with rebar v3.14 [mix release] Do not use private ram_file:compress/1 [mix xref] Do not crash when retrieving calls for modules in memory @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.18 2020/11/19 11:49:17 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.11.3.tar.gz) = c89ee0daff9391c4a0633303213cfaca9900117a RMD160 (elixir-1.11.3.tar.gz) = 26868b07e473727148c8fbe00108721ad24d0360 SHA512 (elixir-1.11.3.tar.gz) = 4962bb9fcf5f4190a8da22a3e42df5b4e521d73771f6a067edb482b911b0f9fbd2883841d06d94ae4ad6b1db2f61f691e5de4c118c722a16f95830c67ce3e45b Size (elixir-1.11.3.tar.gz) = 2394406 bytes @ 1.18 log @elixir: Update to 1.11.2 Elixir [Code] Do not crash when getting docs for missing erts appdir [Kernel] Raise meaningful error if :erlang.is_record is used in guards [Kernel] Prune tracers when fetching __ENV__ inside functions Mix [mix] Fix regression where aliases could not call themselves recursively [mix compile] Do not discard tracers that are set programmatically @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.17 2020/10/19 17:48:41 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.11.2.tar.gz) = 8e845de34e930a10e4c2c41e3f99be4df730c605 RMD160 (elixir-1.11.2.tar.gz) = 4e12b0db7e08d97ea2b346596de9c5317a91f03a SHA512 (elixir-1.11.2.tar.gz) = 472a531353d5f393b0223008ac95ae67b0dc6708143df59a4dd359fdb631329f8a8bded886f53be232e076d194e14a76325fab51a59ec2451706f4f35836bc70 Size (elixir-1.11.2.tar.gz) = 2391833 bytes a7 1 SHA1 (patch-lib_mix_lib_mix_tasks_deps.compile.ex) = 7c153d68f5b936e55b17a139c4a133b87c8d799a @ 1.17 log @elixir: Update to 1.11.1 "Over the last releases, the Elixir team has been focusing on the compiler, both in terms of catching more mistakes at compilation time and making it faster. Elixir v1.11 has made excellent progress on both fronts. This release also includes many other goodies, such as tighter Erlang integration, support for more guard expressions, built-in datetime formatting, and other calendar enhancements." @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.16 2020/09/11 15:05:06 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.11.1.tar.gz) = 2b841520a32780b87de74000a3618a9c527d459a RMD160 (elixir-1.11.1.tar.gz) = a95bc6182bde90bd86af1d140f1b68e1de95bd99 SHA512 (elixir-1.11.1.tar.gz) = 39f8e0cf14545b3ec72e6bfb414204869f8e252e0d2b5538b85d966fcc7c7879b1696d7a02e0e230d38bda20559a14ab03699f9c65cbf4c37d33e8aeadf6ec53 Size (elixir-1.11.1.tar.gz) = 2390974 bytes @ 1.16 log @elixir: Use 'gmake' when compiling native libraries on NetBSD Bump PKGREVISION @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.15 2020/07/07 11:34:29 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.10.4.tar.gz) = d8634700f61c72c0e97f1a212919803a86016d2a RMD160 (elixir-1.10.4.tar.gz) = b94bce2d3a08c05dd207241f12624b25f7cbed67 SHA512 (elixir-1.10.4.tar.gz) = 844e405cf344539a9d32dc7f1ead0dc1dfb0d70a9ab718269f4e25e5262f611f96346f5be93cf8e34a75c58c6aabb12e8a796c5cb182955922510c270ef169e7 Size (elixir-1.10.4.tar.gz) = 2331003 bytes @ 1.15 log @elixir: Update to 1.10.4 ## v1.10.4 (2020-07-04) ### 1. Bug fixes #### Elixir * [Kernel] Fix a bug where custom types were printed as built-in types * [Kernel] Don't add compile-time dependency on `defdelegate` * [Kernel] Add line numbers to warnings on deprecated imports * [Kernel] Report the correct line number when raising inside a macro * [Task] Include callers in translated Logger metadata for Task * [Task] Fix Task PID and caller in Task Supervisor reports #### ExUnit * [ExUnit.Formatter] Avoid crashes when diffing guards when the pattern does not match * [ExUnit.Formatter] Also blame exceptions that come from linked and trapped exits #### IEx * [IEx.Helpers] Do not crash when printing a type that cannot be code formatted #### Mix * [mix app.start] Fix reading `.app` file located in archives (`.ez` files) * [mix local.hex] Provide more guidance when Hex can't be installed * [mix release] Properly encode config in releases @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.14 2020/05/17 14:44:21 nia Exp $ d8 1 @ 1.14 log @elixir: Update to 1.10.3 ## v1.10.3 (2020-04-25) ### 1. Bug fixes #### Elixir * [Code] Return `[{mod, bin}]` from `Code.compile_file/2`, `Code.require_file/2`, `Code.load_file/2` * [Code] Make sure the formatter respects newlines before and after module attributes * [Kernel.ParallelCompiler] Fix a bug where the parallel compiler would raise in long compilation cycles * [Kernel.ParallelCompiler] Fix a bug where the parallel compiler would raise if some of the modules being compiled referred to a module that has been loaded directly to memory * [Module] Fix accidental breaking change where bodiless clauses had their body value on `@@on_definition` callbacks set to an empty list instead of `nil` * [String] Undeprecate `String.normalize/2` normalize and fix infinite loop caused by certain invalid strings #### ExUnit * [ExUnit.Assertions] Fix pattern matching diff when matching on pinned variables * [ExUnit.Assertions] Fix pattern matching diff when matching variable struct names * [ExUnit.Assertions] Fix pattern matching diff when matching on the binary concat operator (`<>`) and the left side is not a literal string * [ExUnit.Assertions] Fix pattern matching diff when matching on pseudo-vars (`__MODULE__`, `__DIR__`, etc) #### Mix * [mix release] Respect the `:path` option when creating a `:tar` file for releases @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.13 2020/02/26 19:21:50 adam Exp $ d3 4 a6 4 SHA1 (elixir-1.10.3.tar.gz) = 99a7c1e160dc3c4a51198e2e27faa6bd4ee3f90e RMD160 (elixir-1.10.3.tar.gz) = 5f8e121a9288f0114b2c431a13f6e07f45b22ffe SHA512 (elixir-1.10.3.tar.gz) = 66b18b983e5374afbd4d94c43a880c5e46a9aa150fa6f38be74ff7f58a19eaaee00248b202d9ae3f6b78e2495fc8d5cec755de644256a731be367766c3812855 Size (elixir-1.10.3.tar.gz) = 2329031 bytes @ 1.13 log @elixir: updated to 1.10.2 v1.10.2 Bug fixes Elixir [Macro] Fix a bug where Macro.to_string/1 would emit invalid code for sigils [Task] Do not crash async_stream monitor if it receives spurious DOWN messages Logger [Logger] Fix a bug where the Logger formatter would fail when handling unknown metadata values Mix [mix compile] Do not write files to disk if --warnings-as-errors was given and warnings were emitted @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.12 2020/02/13 18:27:23 adam Exp $ d3 4 a6 4 SHA1 (elixir-1.10.2.tar.gz) = 78bec225cec309471f58c9ff2c88af554998ae27 RMD160 (elixir-1.10.2.tar.gz) = c1326d507526f4b491c4e289c948214563e200d0 SHA512 (elixir-1.10.2.tar.gz) = a1d1c7847fc8135865d063c6e014bee970066ba07f979f308bec456a732f5366a9343631239965d1caeeaea5cdb644f35185fdfb23f18fcc8c6735a7e3256c0f Size (elixir-1.10.2.tar.gz) = 2323450 bytes @ 1.12 log @elixir: updated to 1.10.0 v1.10.0 Support for Erlang/OTP 21+ Releases improvements Elixir v1.9 introduced releases as a mechanism to package self-contained applications. Elixir v1.10 further improves releases with bug fixes and new enhancements based on feedback we got from the community. The highlights are: * Allow the dual boot system of releases to be disabled on environments that are boot-time sensitive, such as embedded devices * Track and raise if compile-time configuration is set or changes at runtime (more in the next section) * Support for easily adding extra files to releases via overlays * Allow RELEASE_DISTRIBUTION to be set to none in order to fully disable it * Add a built-in :tar step that automatically packages releases @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.11 2019/08/01 09:52:52 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.10.1.tar.gz) = 09c5067a5581d29e053060c0574a80967d7b2c24 RMD160 (elixir-1.10.1.tar.gz) = 626f27b141eec3cf622d1e0c398af6b9f3c04d0b SHA512 (elixir-1.10.1.tar.gz) = 823a685d62b6181be9f3314c1a86b69606dd3d3528a2053060f83802a561d8e136fb32099d51cb90542ea155a0a5768d7e6fc7aa1ae18d2c9f5fd5a5a2ac9cdc Size (elixir-1.10.1.tar.gz) = 2322975 bytes @ 1.11 log @elixir: Update to 1.9.1 ## v1.9.1 (2019-07-18) ### 1. Enhancements #### Mix * [mix format] Print relative paths in `--check-formatted` output * [mix release] Support included applications ### 2. Bug fixes #### Elixir * [Code] Fix formatter wrongly removing nested parens in nested calls #### Logger * [Logger] Do not crash translator on poorly formatted supervisor names #### Mix * [mix compile] Raise readable error for mismatched sources during compilation * [mix release] Preserve UTF8 encoding in release config files ## v1.9.0 (2019-06-24) ### 1. Enhancements #### EEx * [EEx] Allow more complex mixed expressions when tokenizing #### Elixir * [Access] Allow `Access.at/1` to handle negative index * [CLI] Add support for `--boot`, `--boot-var`, `--erl-config`, `--pipe-to`, `--rpc-eval`, and `--vm-args` options * [Code] Add `static_atom_encoder` option to `Code.string_to_quoted/2` * [Code] Support `:force_do_end_blocks` on `Code.format_string!/2` and `Code.format_file!/2` * [Code] Do not raise on deadlocks on `Code.ensure_compiled/1` * [Config] Add `Config`, `Config.Reader`, and `Config.Provider` modules for working with configuration * [File] Add `File.rename!/2` * [Inspect] Add `:inspect_fun` and `:custom_options` to `Inspect.Opts` * [Kernel] Add `~U` sigil for UTC date times * [Kernel] Optimize `&super/arity` and `&super(&1)` * [Kernel] Optimize generated code for `with` with a catch-all clause * [Kernel] Validate `__struct__` key in map returned by `__struct__/0,1` * [Module] Add `Module.get_attribute/3` * [Protocol] Improve `Protocol.UndefinedError` messages to also include the type that was attempted to dispatch on * [Protocol] Optimize performance of dynamic dispatching for non-consolidated protocols * [Record] Include field names in generated type for records * [Regex] Automatically recompile regexes * [Registry] Add `Registry.select/2` * [System] Add `System.restart/0`, `System.pid/0` and `System.no_halt/1` * [System] Add `System.get_env/2`, `System.fetch_env/1`, and `System.fetch_env!/1` * [System] Support `SOURCE_DATE_EPOCH` for reproducible builds #### ExUnit * [ExUnit] Allow multiple `:exclude` on configuration/CLI * [ExUnit.DocTest] No longer wrap doctest errors in custom exceptions. They ended-up hiding more information than showing * [ExUnit.DocTest] Display the actual doctest code when doctest fails #### IEx * [IEx.CLI] Copy ticktime from remote node on IEx `--remsh` * [IEx.CLI] Automatically add a host on node given to `--remsh` #### Logger * [Logger] Use a decentralized mode computation for Logger which allows overloads to be detected more quickly * [Logger] Use `persistent_term` to store configuration whenever available for performance #### Mix * [Mix] Follow XDG base dir specification in Mix for temporary and configuration files * [Mix.Generator] Add `copy_file/3`, `copy_template/4`, and `overwite?/2` * [Mix.Project] Add `preferred_cli_target` that works like `preferred_cli_env` * [mix archive.uninstall] Allow `mix archive.uninstall APP` to uninstall any installed version of APP * [mix new] No longer generate a `config/` directory for mix new * [mix release] Add support for releases * [mix release.init] Add templates for release configuration * [mix test] Allow running tests for a given umbrella app from the umbrella root with `mix test apps/APP/test`. Test failures also include the `apps/APP` prefix in the test location ### 2. Bug fixes #### EEx * [EEx] Consistently trim newlines when you have a single EEx expression per line on multiple lines #### Elixir * [Code] Quote `::` in `Code.format_string!/1` to avoid ambiguity * [Code] Do not crash formatter on false positive sigils * [Enum] Ensure the first equal entry is returned by `Enum.min/2` and `Enum.max/2` * [Kernel] Improve error message when string interpolation is used in a guard * [Kernel] Properly merge and handle docs for callbacks with multiple clauses * [Kernel] Guarantee reproducible builds on modules with dozens of specs * [Kernel] Resolve `__MODULE__` accordingly in nested `defmodule` to avoid double nesting * [Kernel] Type variables starting with an underscore (`_foo`) should not raise compile error * [Kernel] Keep order of elements when macro `in/2` is expanded with a literal list on the right-hand side * [Kernel] Print proper location on undefined function error from dynamically generated functions * [Kernel] **Potentially breaking** Do not leak aliases when nesting module definitions that are fully namespaced modules. If you defined `defmodule Elixir.Foo.Bar` inside `defmodule Foo`, previous Elixir versions would automatically define an alias, but fully namespaced modules such as `Elixir.Foo.Bar` should never define or require an alias. If you were accidentally relying on this broken behaviour, your code may no longer work * [System] Make sure `:init.get_status/0` is set to `{:started, :started}` once the system starts * [Path] Do not expand `~` in `Path.expand/2` when not followed by a path separator * [Protocol] Ensure `debug_info` is kept in protocols * [Regex] Ensure inspect returns valid `~r//` expressions when they are manually compiled with backslashes * [Registry] Fix ETS leak in `Registry.register/2` for already registered calls in unique registries while the process is still alive #### ExUnit * [ExUnit] Raise error if attempting to run single line tests on multiple files * [ExUnit] Return proper error on duplicate child IDs on `start_supervised` #### IEx * [IEx] Automatically shut down IEx if we receive EOF #### Logger * [Logger] Don't discard Logger messages from other nodes as to leave a trail on both systems #### Mix * [mix compile] Ensure Erlang-based Mix compilers (erlang, leex, yecc) set valid position on diagnostics * [mix compile] Ensure compilation halts in an umbrella project if one of the siblings fail to compile * [mix deps] Raise an error if the umbrella app's dir name and `mix.exs` app name don't match * [mix deps.compile] Fix subcommand splitting bug in rebar3 * [mix test] Do not consider modules that are no longer cover compiled when computing coverage report, which could lead to flawed reports ### 3. Soft-deprecations (no warnings emitted) #### Mix * [Mix.Config] `Mix.Config` has been deprecated in favor of the `Config` module that now ships as part of Elixir itself. Reading configuration files should now be done by the `Config.Reader` module ### 4. Hard-deprecations #### Elixir * [CLI] Deprecate `--detached` option, use `--erl "-detached"` instead * [Map] Deprecate Enumerable keys in `Map.drop/2`, `Map.split/2`, and `Map.take/2` * [String] The `:insert_replaced` option in `String.replace/4` has been deprecated. Instead you may pass a function as a replacement or use `:binary.replace/4` if you need to support earlier Elixir versions #### Mix * [Mix.Project] Deprecate `Mix.Project.load_paths/1` in favor of `Mix.Project.compile_path/1` @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.10 2018/11/09 17:17:28 nia Exp $ d3 4 a6 4 SHA1 (elixir-1.9.1.tar.gz) = 42aa6031f5aabbad8a5cc098b50ec74a2dff0902 RMD160 (elixir-1.9.1.tar.gz) = 9f4f0aaaf96ce8f5051b9c0a0176a3ff91dfa5f7 SHA512 (elixir-1.9.1.tar.gz) = 4cfc672d3a2d02e044ffa305ae2986658a431a264b7e06b0fde1773d8d062bde27ea06f0d31433107ef8bfdf6e931c75c6a39de81bc54b275e06edbe0cc87bda Size (elixir-1.9.1.tar.gz) = 2248780 bytes @ 1.10 log @lang/elixir: update to 1.7.4. 1. Enhancements Elixir [Kernel] Expand left..right at compile time in more cases, which leads to improved performance under different scenarios, especially on x in left..right expressions Mix [mix deps.loadpaths] Add --no-load-deps flag. This is useful for Rebar 3 compatibility 2. Bug fixes Elixir [Calendar] Fix for converting from negative iso days on New Year in a leap year [Kernel] Ensure @@spec, @@callback, @@type and friends can be read accordingly [Module] Avoid warnings when using Module.eval_quoted in the middle of existing definitions Mix [mix archive.build] Unload previous archive versions before building [mix format] Expand paths so mix format path\for\windows.ex works [mix test] Ensure that --cover displays correct coverage in an umbrella app @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.9 2018/10/11 12:10:08 jperkin Exp $ d3 5 a7 5 SHA1 (elixir-1.7.4.tar.gz) = 0e8e51ae2a7b446850fc711da5a70c66d2329976 RMD160 (elixir-1.7.4.tar.gz) = 627d80e31bdef16df1b9ba173ad5c0ac67f440a4 SHA512 (elixir-1.7.4.tar.gz) = 594e76601e0d6f7eeddfcaa9b76a2e5c66f702a497599fffc5e9255790c18ac5e00b986fc45fd3b90335522f51272bcd4bcf2b9f8951b94eebfb1d56ac7cebc2 Size (elixir-1.7.4.tar.gz) = 2139938 bytes SHA1 (patch-Makefile) = 815906a3d7532a95582a53d7c9ef9f42dc9d215f @ 1.9 log @elixir: Fix PKGMANDIR. Add TEST_TARGET. @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.8 2018/09/04 13:49:25 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.7.3.tar.gz) = ec476ad1ef116d0dbb04d9065befad38ecfe8e1e RMD160 (elixir-1.7.3.tar.gz) = b248cf3675a738dd063d9df110faefb6f4b5026a SHA512 (elixir-1.7.3.tar.gz) = 67c8de5a85eefc5f7d7ed42ec8b96cb34937cea6c94eb1f2c27237fc0b4c51b2eb39d65c2a4dce4788cb6ed1879fb1839cd8d73c66be71b0b4895952dc228f05 Size (elixir-1.7.3.tar.gz) = 2140430 bytes @ 1.8 log @lang/elixir: Update to 1.7.3. v1.7.3 ====== 1. Bug fixes ExUnit - [ExUnit.Assertions] Do not attempt to expand `try/1` as it is a special form Mix - [mix compile.app] Do not include applications with `runtime: false` as a runtime dependency for applications coming from Hex v1.7.2 ====== 1. Bug fixes Elixir - [DateTime] Take negative years into account in `DateTime.from_iso8601/1` - [Kernel] Do not emit warnings for repeated docs over different clauses due to false positives Mix - [mix compile] Properly mark top-level dependencies as optional and as runtime. This fixes a bug where Mix attempted to start optional dependencies of a package when those optional dependencies were not available - [mix compile] Avoid deadlock when a config has a timestamp later than current time - [mix help] Show task and alias help when both are available - [mix test] Do not fail suite if there are no test files v1.7.1 ====== 1. Bug fixes Elixir - [Calendar] Work-around a Dialyzer bug that causes it to loop for a long time, potentially indefinitely v1.7.0 ====== 1. Enhancements Elixir - [Calendar.ISO] Support negative dates in `Calendar.ISO` - [Calendar] Add `Calendar.months_in_year/1` callback - [Code] Add `Code.compile_file/2` that compiles files without leaving footprints on the system - [Code] Add `Code.purge_compiler_modules/0` that purges any compiler module left behind. This is useful for live systems dynamically compiling code - [Code] Add `Code.fetch_docs/1` that returns docs in the [EEP 48](http://erlang.org/eep/eeps/eep-0048.html) format - [Date] Add `Date.months_in_year/1` function - [DynamicSupervisor] Use the name of the `DynamicSupervisor` as the ID whenever possible - [Exception] Provide "did you mean" suggestions on KeyError - [Exception] Provide more information on ArithmeticError on Erlang/OTP 21+ - [Function] Add `Function` module with `capture/3`, `info/1` and `info/2` functions - [GenServer] Support the new `handle_continue/2` callback on Erlang/OTP 21+ - [IO.ANSI] Add cursor movement to `IO.ANSI` - [Kernel] Support adding arbitrary documentation metadata by passing a keyword list to `@@doc`, `@@moduledoc` and `@@typedoc` - [Kernel] Introduce `__STACKTRACE__` to retrieve the current stacktrace inside `catch`/`rescue` (this will be a requirement for Erlang/OTP 21+) - [Kernel] Raise on unsafe variables in order to allow us to better track unused variables - [Kernel] Warn when using `length` to check if a list is not empty on guards - [Kernel] Add hints on mismatched `do`/`end` and others pairs - [Kernel] Warn when comparing structs using the `>`, `<`, `>=` and `<=` operators - [Kernel] Warn on unsupported nested comparisons such as `x < y < z` - [Kernel] Warn if redefining documentation across clauses of the same definition - [Kernel] Warn on unnecessary quotes around atoms, keywords and calls - [Macro] Add `Macro.special_form?/2` and `Macro.operator?/2` that returns `true` if the given name/arity is a special form or operator respectively - [Macro.Env] Add `Macro.Env.vars/1` and `Macro.Env.has_var?/2` that gives access to environment data without accessing private fields - [Regex] Include endianness in the regex version. This allows regexes to be recompiled when an archive is installed in a system with a different endianness - [Registry] Add `Registry.count/1` and `Registry.count_match/4` - [String] Update to Unicode 11 - [StringIO] Add `StringIO.open/3` - [System] Use ISO 8601 in `System.build_info/0` ExUnit - [ExUnit.Assertion] Print the arguments in error reports when asserting on a function call. For example, if `assert is_list(arg)` fails, the argument will be shown in the report - [ExUnit.Diff] Improve diffing of lists when one list is a subset of the other - [ExUnit.DocTest] Show colored diffs on failed doctests - [ExUnit.Formatter] Excluded tests, via the `--exclude` and `--only` flags, are now shown as "Excluded" in reports. Tests skipped via `@@tag :skip` are now exclusively shown as "Skipped" and in yellow IEx - [IEx.Helpers] Add `use_if_available/2` - [IEx.Helpers] Allow `force: true` option in `recompile/1` - [IEx.Helpers] Add `:allocators` pane to `runtime_info/1` - [IEx.Helpers] Show documentation metadata in `h/1` helpers Logger - [Logger] Ensure nil metadata is always pruned - [Logger] Only evaluate Logger macro arguments when the message will be logged - [Logger] Add `:compile_time_purge_matching` to purge logger calls that match certain compile time metadata, such as module names and application names - [Logger] Log to `:stderr` if a backend fails and there are no other backends - [Logger] Allow translators to return custom metadata - [Logger] Return `:crash_reason`, `:initial_call` and `:registered_name` as metadata in crash reports coming from Erlang/OTP Mix - [mix archive.install] Add support for the Hex organization via `--organization` - [mix archive.uninstall] Support `--force` flag - [mix compile] Improve support for external build tools such as `rebar` - [mix deps] Include `override: true` in rebar dependencies to make the behaviour closer to how rebar3 works (although diverged deps are still marked as diverged) - [mix escript.install] Add support for the Hex organization via `--organization` - [mix escript.uninstall] Support `--force` flag - [mix help] Also list aliases - [mix local] Use ipv6 with auto fallback to ipv4 when downloading data - [mix profile] Allow all profiling tasks to run programatically - [mix test] Add `--failed` option that only runs previously failed tests - [mix test] Print coverage summary by default when the `--cover` flag is given - [Mix.Project] Add `Mix.Project.clear_deps_cache/0` - [Mix.Project] Add `Mix.Project.config_mtime/0` that caches the config mtime values to avoid filesystem access 2. Bug fixes Elixir - [IO.ANSI.Docs] Fix table column alignment when converting docs to ANSI escapes - [Code] Ensure `string_to_quoted` returns error tuples instead of raising in certain constructs - [Code.Formatter] Consistently format keyword lists in function calls with and without parens - [Code.Formatter] Do not break after `->` when there are only comments and one-line clauses - [File] Allow the `:trim_bom` option to be used with `:encoding` - [Kernel] Raise on unsafe variables as some of the code emitted with unsafe variables would not correctly propagate variables or would disable tail call optimization semantics - [Kernel] Do not crash on dynamic sizes in binary generators with collectable into in comprehensions - [Kernel] Do not crash on literals with non-unary size in binary generators with collectable into in comprehensions - [Task] Improve error reports and exit reasons for failed tasks on Erlang/OTP 20+ ExUnit - [ExUnit.Case] Raise proper error if `@@tag` and `@@moduletag` are used before `use ExUnit.Case` - [ExUnit.Case] Raise proper error if `@@describetag` is used outside of `describe/2` blocks - [ExUnit.DocTest] Emit proper assertion error on doctests with invalid UTF-8 Mix - [mix archive.install] Fetch optional dependencies when installing an archive from Git/Hex - [mix compile] Properly track config files in umbrella projects and recompile when any relevant umbrella configuration changes - [mix deps] Ensure the same dependency from different SCMs are tagged as diverged when those SCMs are remote and non-remote - [mix deps] Ensure we re-run dependency resolution when overriding a skipped dep in umbrella - [mix deps.compile] Perform clean builds for dependencies on outdated locks to avoid old modules from affecting future compilation - [mix escript.install] Fetch optional dependencies when installing an escript from Git/Hex 3. Soft-deprecations (no warnings emitted) Elixir - [Code] Deprecate `Code.load_file/2` in favor of `Code.compile_file/2` - [Code] Deprecate `Code.loaded_files/0` in favor of `Code.required_files/0` - [Code] Deprecate `Code.unload_files/1` in favor of `Code.unrequire_files/1` Logger - [Logger] `compile_time_purge_level` is deprecated in favor of `compile_time_purge_matching` 4. Hard-deprecations Elixir - [Code] `Code.get_docs/2` is deprecated in favor of `Code.fetch_docs/1` - [Enum] `Enum.chunk/2/3/4` is deprecated in favor of `Enum.chunk_every/2/3/4` - notice `chunk_every` does not discard incomplete chunks by default - [GenServer] Warn if `super` is used in any of the GenServer callbacks - [Kernel] `not left in right` is ambiguous and is deprecated in favor of `left not in right` - [Kernel] Warn on confusing operator sequences, such as `1+++1` meaning `1 ++ +1` or `........` meaning `... .. ...` - [OptionParser] Deprecate dynamic option parser mode that depended on atoms to be previously loaded and therefore behaved inconsistently - [Stream] `Stream.chunk/2/3/4` is deprecated in favor of `Stream.chunk_every/2/3/4` - notice `chunk_every` does not discard incomplete chunks by default @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.7 2018/05/14 15:57:13 fhajny Exp $ d7 1 a7 1 SHA1 (patch-Makefile) = 10df6513be32d9ef5e62e89d80df917c4fb669a1 @ 1.7 log @lang/elixir: Update to 1.6.5. - [Code] Preserve the user's choice in the formatter on parens call with next break fits - [Code] Preserve the user's choice in the formatter on calls without parens when we have one argument per line - [Code] Fix formatting when there is a tilde in the first element of a bitstring - [Kernel] Support specsdiff flag on __info__ spec clauses - [Kernel] Do not exclude hygienic vars in defguard - [Kernel.SpecialForms] Mark for comprehensions as generated to avoid dialyzer warnings - [Macro] Make sure Macro.to_string/2 emits valid quoted expressions - [Task] Support :infinity timeout on Task.yield_many/2 - [Task.Supervisor] Do not crash spawning supervised tasks when the parent process is dead - [URI] Fix parsing of URIs with trailing ? @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.6 2018/03/23 11:54:58 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.6.5.tar.gz) = 054636aa0b8a8fc148bbd67526f1a9ecd57ebf3f RMD160 (elixir-1.6.5.tar.gz) = 3bf929140199a4f5e728b3bc7d33cb5f2f9edd19 SHA512 (elixir-1.6.5.tar.gz) = e2cf9c2d9198da32cefb841cae4ce64bb52eb28239bbffb6d991916cfdee420b242773664efa7381eb4609c67438ab608f5f96ca2c403b54ecdd9bfdddf91a95 Size (elixir-1.6.5.tar.gz) = 2075889 bytes @ 1.6 log @lang/elixir: Update to 1.6.4. - [Code.Formatter] Do not double escape quoted keyword list identifiers - [Kernel] Properly support into: binary in Erlang/OTP 20.3 @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.5 2018/03/13 09:18:19 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.6.4.tar.gz) = 6f67a954b0d12df854fe9d7a5401fbe2ffc57255 RMD160 (elixir-1.6.4.tar.gz) = 11670660c14c079c76251d679437644ab40ebb22 SHA512 (elixir-1.6.4.tar.gz) = 58e207756b12d70225ecfcddb8eed7b37082d27e24465a15567ece62d6b03fd7f2d51f5a9b5582f63cad0038ec01b742fe4c69123a0d746662a65f9c3ba25a22 Size (elixir-1.6.4.tar.gz) = 2074206 bytes @ 1.5 log @lang/elixir: Update to 1.6.3. Elixir - [Code.Formatter] Support comments in the middle of pipelines, when and | expressions - [Code.Formatter] Consider commas when breaking groups - [Code.Formatter] Ensure proper precedence between & and operators - [Code.Formatter] Consider .formatter.exs when formatting stdin Logger - [Logger.Translator] Ensure logger doesn't crash when reporting named DynamicSupervisor @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.4 2018/02/28 15:14:02 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.6.3.tar.gz) = 54b12efcedab679d424af1133d0e3e739fc25801 RMD160 (elixir-1.6.3.tar.gz) = 4a7cb09aa2a8da514b5642d874271fec1e57a12c SHA512 (elixir-1.6.3.tar.gz) = 76f38accd277d92c428954871c62b9ff69b97137d1e4e3889feb3be94055ba2b45275aa38561aef700dac0f5381db72d4e47b55342a3e04397f3781b412dbf2c Size (elixir-1.6.3.tar.gz) = 2074083 bytes @ 1.4 log @lang/elixit: Update to 1.6.2. 1. Enhancements Mix - [mix compile.erlang] Teach Mix erlang compiler alternative spelling for -behavior declaration - [mix format] Support the :subdirectories configuration that points to other directories with their own .formatter.exs file. This is useful in umbrella applications. mix new --umbrella has also been changed to use this new configuration by default - [mix format] Include the current environment for missing dependency errors 2. Bug fixes Elixir - [Code.Formatter] Ensure -> does not exceed line length - [DynamicSupervisor] Properly tag error reports generated by dynamic supervisors so they can be properly translated by Logger - [DynamicSupervisor] Consider extra arguments during child restart - [Kernel] Ensure arguments given to a guard defined with defguard are evaluated in the correct order - [Module] Do not remove docs for previous function declaration when @@impl true is used - [Supervisor] Ensure use Supervisor properly adds the @@behaviour Supervisor annotation Mix - [Mix.Shell] Bring back Mix.Shell.cmd/2 - this arity was defined via a default argument that was accidentally removed @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.3 2018/01/30 16:27:10 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.6.2.tar.gz) = 5c758abec24ba68a2f87e734fa825223928aac78 RMD160 (elixir-1.6.2.tar.gz) = e4348723bf2935712274e916979aea1d08681c2c SHA512 (elixir-1.6.2.tar.gz) = de94d90b3fa192d572a3adb83207003d353c494943ca96446e0bcf351480a4e8871c976e6decc6b28f0327a6b64cc5ff128085bea3121ad038378c798aa18bdb Size (elixir-1.6.2.tar.gz) = 2072469 bytes @ 1.3 log @Update lang/elixir to 1.6.1. 1. Enhancements Elixir - [DynamicSupervisor] Implement child_spec/1 for DynamicSupervisor - [Kernel] Raise better error messages on invalid map syntax 2. Bug fixes Elixir - [Code.Formatter] Only rearrange not in operator if explicitly opted-in - [Code.Formatter] Ensure do blocks do not exceed line length on calls with a single argument - [Collectable] Support bitstrings in Collectable and for-comprehensions (regression in v1.6.0) - [GenServer] Do not override user own @@opts attribute - [Enum] Reintroduce zipping of any enumerable of enumerables in Enum.zip/1 (regression in v1.6.0) - [Macro] Reorder kw blocks in Macro.to_string/1 to avoid warnings - [Protocol] Fix protocol consolidation when some chunks may be missing - [Stream] Reintroduce zipping of any enumerable of enumerables in Stream.zip/1 (regression in v1.6.0) - [Supervisor] Do not override user own @@opts attribute - [Supervisor] Add @@spec to second clause of start_link/2 ExUnit - [ExUnit.Case] Reintroduce :case in ExUnit setup/setup_all/test context @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.2 2018/01/22 14:59:53 fhajny Exp $ d3 4 a6 4 SHA1 (elixir-1.6.1.tar.gz) = de6ccdd5a5d93b3c8fd398644a50df403f4a50e2 RMD160 (elixir-1.6.1.tar.gz) = b3ece07276702a908d4b9451d035bd9a397126ec SHA512 (elixir-1.6.1.tar.gz) = db7d3c8b2561e70e0efc44a6ec05428cc085f35d294845546cecb8f7a3c8e63008c666ca14191238728da725e98820315cf2b6abcb7ffdec640fe305926c53ec Size (elixir-1.6.1.tar.gz) = 2068820 bytes @ 1.2 log @Update lang/elixir to 1.6.0. 1. Enhancements EEx - [EEx] Allow markers `/` and `|` to be used in a custom EEx engine Elixir - [Calendar] Add truncate to `Time`, `DateTime` and `NaiveDateTime` to facilitate microsecond precision pruning - [Code] Add `format_string!/2` and `format_file!/2` for automatic code formatting - [Code] Support column annotations in quoted expressions with `columns: true` in `Code.string_to_quoted/2` - [DynamicSupervisor] Add `DynamicSupervisor` designed to manage children that are added and removed dynamically - [Exception] Make `Exception.blame/3` extensible by adding an optional `blame/2` callback to exceptions - [Exception] Improve the printing of guards on blamed exceptions - [Enumerable] Add `Enumerable.slice/1` and optimize many `Enum` operations with the new protocol. This allows data-structures with index-based random access to provide a non-linear implementation - [Inspect] Show UTF-8 BOM on inspected strings - [Inspect.Algebra] Add `:strict` and `:flex` breaks - this gives more control over the document fitting - [Inspect.Algebra] Allow a group to inherit the parent group break - [Inspect.Algebra] Add `force_unfit/1` and `next_break_fits/2` which give more control over document fitting - [Inspect.Algebra] Add `collapse_lines/1` for collapsing multiple lines to a maximum value - [Inspect.Algebra] Allow `nest/2` to be `:reset` or be set to the current `:cursor` position - [Kernel] Prefix variables with V when emitting Erlang code. This improves the integration with tools such as Erlang code formatters and the GUI debugger - [Kernel] Warn on the use of `length(x) == 0` in guards - [Kernel] Warn if `catch` comes before `rescue` in try - [Kernel] Warn if heredoc is outdented compared to its closing quotes - [Kernel] Add `defguard/1` and `defguardp/1` to make it easier to build guard-safe macros - [Kernel.ParallelCompiler] Add `compile/2`, `compile_to_path/3` and `require/2` which provide detailed information about warnings and errors - [Kernel.SpecialForms] Support the `uniq: true` flag in `for` comprehensions - [Module] Introduce `@@deprecated` and `@@since` attributes - [Module] Emit conflicting behaviour warnings if the same behaviour is given more than once - [List] Rearrange equals and inserts for shorter diff scripts in `List.myers_difference/2` - [Record] Allow `:macros` and `:includes` to be given to `Record.extract/2` - [Stream] Add `Stream.intersperse/2` - [String] Update to Unicode 10 - [String] Allow passing empty string `match` to `String.replace/4` - [String] Support context and language sensitive operations in `String.upcase/2` and `String.downcase/2`. Currently only the `:greek` context is supported - [String] Support `:ascii` conversion in `String.upcase/2` and `String.downcase/2` - [Time] Add `Time.add/3` ExUnit - [ExUnit.Assertions] Perform inclusive checks in `assert_in_delta` - [ExUnit.Callbacks] Add `ExUnit.Callbacks.start_supervised!/2` - [ExUnit.Case] Generate a random seed per test based on the test suite seed IEx - [IEx.Autocomplete] Provide contextual autocompletion: `t Enum.` will autocomplete types, `b Enum` will autocomplete callbacks - [IEx.CLI] Provide hints for developers when a bad host name is given to `--remsh` - [IEx.Helpers] Automatically include specs when showing documentation for functions/macros - [IEx.Helpers] Improve formatting of behaviours and typespecs by using the formatter - [IEx.Helpers] Allow pattern matching and guard expressions when on `IEx.break!` Logger - [Logger] Add `:discard_threshold` to Logger to help with message queue overflow Mix - [mix app.start] Add `--preload-modules` to `mix app.start` - [mix archive.build] Allow `mix archive.build` to bundle dot files via an option - [mix compile] Define a behavior for Mix compiler tasks and return diagnostics from compiler tasks - [mix compile] Track struct dependencies between files and recompile them only if the struct changes - [mix deps] Support `:system_env` option when specifying dependencies - [mix format] Add a `mix format` task that formats the given files (or the files specified in a `.formatter.exs` file) - [mix profile.eprof] Add a new task for time-based profiling with eprof - [mix test] Run all functions in a describe block by giving the `file:line` the describe block starts - [mix test] Report the top N slowest tests with the `--slowest N` flag - [mix test] Report the number of doctests and tests separately - [mix xref] Support `--include-siblings` in reports for umbrella support - [mix xref] Add `mix xref graph --format stats` - [mix xref] Add `--only-nodes` and `--label` filters to mix xref graph - [mix xref] Add `mix xref deprecated` that shows the callsite of deprecated functions 2. Bug fixes Elixir - [CLI] Support path with spaces as argument to elixir.bat - [Inspect] Properly handle minus signal for non-decimal negative integers - [Integer] Do not raise on non-integer values in `is_odd`/`is_even` - [Kernel] Solve a precedence issue between `&` and `|`, such as `[&Foo.bar/1 | &Baz.bat/2]` - [Kernel] Do not load dynamic Elixir modules as `:in_memory` as this value is not officially supported by the code server. Instead, use an empty list, which is the same value used by Erlang. - [Kernel] Validate variable struct name is atom when used in pattern matching - [Macro] Fix `Macro.to_string/2` for tuple calls, such as `alias Foo.{Bar, Baz}` - [MapSet] Return valid MapSet when unioning a legacy MapSet - [Regex] Return a leading empty space when splitting on empty pattern. This makes the `split` operation consistent with the other operations in the `Regex` module - [Stream] Ensure `Stream.chunk_while/4` does not emit more elements than necessary when halted - [String] Return a leading empty space when splitting on empty string. This makes the `split` operation consistent with the other operations in the `String` module - [URI] Preserve empty fragments in `URI.parse/1` Mix - [mix app.start] Improve the quality of reports if app fails to boot - [mix cmd] Allow `mix cmd` to be invoked multiple times without marking it as executed - [mix deps] Ensure optional dependencies in umbrella applications are loaded - [mix deps.update] Ensure transitive new non-Hex dependencies are also fetched when a repo is updated - [mix xref] Take compile dependencies with higher priority than runtime ones when building a graph - [mix xref] Handle external files for xref callers and warnings 3. Soft deprecations (no warnings emitted) Elixir - [Inspect.Algebra] `surround/3` and `surround_many/6` are deprecated in favor of `container_doc/6` - [Kernel.ParallelCompiler] `files/2` and `files_to_path/3` are deprecated in favor of `compile/2` and `compile_to_path/3` - [Kernel.ParallelRequire] `files/2` is deprecated in favor of `Kernel.ParallelCompiler.require/2` - [GenServer] Warn if `init/1` is not defined in `GenServer`. This brings GenServer closer to the implementation in OTP and aligns all behaviours to require the `init/1` callback ExUnit - [ExUnit.Formatter] `:case_started` and `:case_finished` events are deprecated in favor of `:module_started` and `:module_finished` 4. Deprecations Elixir - [Enum] `Enum.partition/2` is deprecated in favor of `Enum.split_with/2` - [Keyword] `Keyword.replace/3` is deprecated in favor of `Keyword.fetch/2` and `Keyword.put/3` - [Map] `Map.replace/3` is deprecated in favor of `Map.fetch/2` and `Map.put/3` - [Macro] `Macro.unescape_tokens/1` and `Macro.unescape_tokens/2` are deprecated in favor of `Enum.map/2` - [Range] Deprecate `Range.range?/1` in favor of pattern matching on `_ .. _` @ text @d1 1 a1 1 $NetBSD: distinfo,v 1.1 2018/01/03 13:06:17 fhajny Exp $ d3 5 a7 5 SHA1 (elixir-1.6.0.tar.gz) = 760a0620719464551ce10b2e43c0483457f68163 RMD160 (elixir-1.6.0.tar.gz) = 8b6aed0fdd4ff7e917ce7113527422927c0bc801 SHA512 (elixir-1.6.0.tar.gz) = 5af84c134fac299dd723e94219fbb354743a1c75d6f9c21b3976300f6f2c038da1664688c5e024a0b6ef1f7e22f7f2226ea75d190aa3a8e18bd20d1f5d3b4633 Size (elixir-1.6.0.tar.gz) = 2064828 bytes SHA1 (patch-Makefile) = 0d7e87272cf5b837ecdbeb0638cd1c415ac7cd52 @ 1.1 log @Import elixir-1.5.2 as lang/elixir. Elixir is a functional, meta-programming aware language built on top of the Erlang VM. It is a dynamic language that focuses on tooling to leverage Erlang's abilities to build concurrent, distributed and fault-tolerant applications with hot code upgrades. @ text @d1 1 a1 1 $NetBSD$ d3 4 a6 4 SHA1 (elixir-1.5.2.tar.gz) = aefc3523fb0be58bb08f987e4ed5c305fab4afc1 RMD160 (elixir-1.5.2.tar.gz) = cffdc4619ca29ef62a3036e06a97b26ffcba18b8 SHA512 (elixir-1.5.2.tar.gz) = ca8bdd8d97d68a49f9db1cffbb2ff028363ff7679c88aad543208688909f915c55f5a69293c423747f34be6171b38e0180f3654581ab38014c4988a3972cd024 Size (elixir-1.5.2.tar.gz) = 1947836 bytes @