pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/lang/elixir elixir: Update to 1.9.1
details: https://anonhg.NetBSD.org/pkgsrc/rev/a7876c2e83f1
branches: trunk
changeset: 399028:a7876c2e83f1
user: nia <nia%pkgsrc.org@localhost>
date: Thu Aug 01 09:52:52 2019 +0000
description:
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`
diffstat:
lang/elixir/Makefile | 11 ++++++-----
lang/elixir/PLIST | 17 +++++++++++++----
lang/elixir/distinfo | 12 ++++++------
lang/elixir/patches/patch-Makefile | 24 ++++--------------------
4 files changed, 29 insertions(+), 35 deletions(-)
diffs (189 lines):
diff -r f2adabbdd894 -r a7876c2e83f1 lang/elixir/Makefile
--- a/lang/elixir/Makefile Thu Aug 01 01:23:20 2019 +0000
+++ b/lang/elixir/Makefile Thu Aug 01 09:52:52 2019 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.12 2019/06/17 16:58:42 nia Exp $
+# $NetBSD: Makefile,v 1.13 2019/08/01 09:52:52 nia Exp $
-DISTNAME= elixir-1.7.4
-PKGREVISION= 1
+DISTNAME= elixir-1.9.1
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GITHUB:=elixir-lang/}
GITHUB_TAG= v${PKGVERSION_NOREV}
@@ -11,13 +10,15 @@
COMMENT= Functional, meta-programming aware language built on top of Erlang VM
LICENSE= apache-2.0
-DEPENDS+= erlang>=18.0:../../lang/erlang
+DEPENDS+= erlang>=20.0:../../lang/erlang
USE_TOOLS+= gmake
+MAKE_FLAGS+= MAN_PREFIX=${PREFIX}/${PKGMANDIR}
+
REPLACE_INTERPRETER+= elixir
REPLACE.elixir.old= .*elixir
-REPLACE.elixir.new= ${TOOLS_PLATFORM.env} ${PREFIX}/bin/elixir
+REPLACE.elixir.new= ${TOOLS_PLATFORM.env:Q} ${PREFIX}/bin/elixir
REPLACE_FILES.elixir= bin/mix
CHECK_INTERPRETER_SKIP+= bin/mix
diff -r f2adabbdd894 -r a7876c2e83f1 lang/elixir/PLIST
--- a/lang/elixir/PLIST Thu Aug 01 01:23:20 2019 +0000
+++ b/lang/elixir/PLIST Thu Aug 01 09:52:52 2019 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2018/09/04 13:49:25 fhajny Exp $
+@comment $NetBSD: PLIST,v 1.4 2019/08/01 09:52:52 nia Exp $
bin/elixir
bin/elixirc
bin/iex
@@ -30,6 +30,8 @@
lib/elixir/lib/elixir/ebin/Elixir.Behaviour.beam
lib/elixir/lib/elixir/ebin/Elixir.Bitwise.beam
lib/elixir/lib/elixir/ebin/Elixir.Calendar.ISO.beam
+lib/elixir/lib/elixir/ebin/Elixir.Calendar.TimeZoneDatabase.beam
+lib/elixir/lib/elixir/ebin/Elixir.Calendar.UTCOnlyTimeZoneDatabase.beam
lib/elixir/lib/elixir/ebin/Elixir.Calendar.beam
lib/elixir/lib/elixir/ebin/Elixir.CaseClauseError.beam
lib/elixir/lib/elixir/ebin/Elixir.Code.Formatter.beam
@@ -48,6 +50,9 @@
lib/elixir/lib/elixir/ebin/Elixir.Collectable.beam
lib/elixir/lib/elixir/ebin/Elixir.CompileError.beam
lib/elixir/lib/elixir/ebin/Elixir.CondClauseError.beam
+lib/elixir/lib/elixir/ebin/Elixir.Config.Provider.beam
+lib/elixir/lib/elixir/ebin/Elixir.Config.Reader.beam
+lib/elixir/lib/elixir/ebin/Elixir.Config.beam
lib/elixir/lib/elixir/ebin/Elixir.Date.Range.beam
lib/elixir/lib/elixir/ebin/Elixir.Date.beam
lib/elixir/lib/elixir/ebin/Elixir.DateTime.beam
@@ -74,6 +79,7 @@
lib/elixir/lib/elixir/ebin/Elixir.File.CopyError.beam
lib/elixir/lib/elixir/ebin/Elixir.File.Error.beam
lib/elixir/lib/elixir/ebin/Elixir.File.LinkError.beam
+lib/elixir/lib/elixir/ebin/Elixir.File.RenameError.beam
lib/elixir/lib/elixir/ebin/Elixir.File.Stat.beam
lib/elixir/lib/elixir/ebin/Elixir.File.Stream.beam
lib/elixir/lib/elixir/ebin/Elixir.File.beam
@@ -183,7 +189,6 @@
lib/elixir/lib/elixir/ebin/Elixir.String.Chars.Version.Requirement.beam
lib/elixir/lib/elixir/ebin/Elixir.String.Chars.Version.beam
lib/elixir/lib/elixir/ebin/Elixir.String.Chars.beam
-lib/elixir/lib/elixir/ebin/Elixir.String.Normalizer.beam
lib/elixir/lib/elixir/ebin/Elixir.String.Tokenizer.beam
lib/elixir/lib/elixir/ebin/Elixir.String.Unicode.beam
lib/elixir/lib/elixir/ebin/Elixir.String.beam
@@ -276,6 +281,7 @@
lib/elixir/lib/ex_unit/ebin/ex_unit.app
lib/elixir/lib/iex/ebin/Elixir.IEx.App.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Autocomplete.beam
+lib/elixir/lib/iex/ebin/Elixir.IEx.Broker.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.CLI.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Config.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Evaluator.beam
@@ -299,12 +305,12 @@
lib/elixir/lib/iex/ebin/Elixir.IEx.Info.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Introspection.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Pry.beam
-lib/elixir/lib/iex/ebin/Elixir.IEx.Remsh.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.Server.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.State.beam
lib/elixir/lib/iex/ebin/Elixir.IEx.beam
lib/elixir/lib/iex/ebin/iex.app
lib/elixir/lib/logger/ebin/Elixir.Logger.App.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.BackendSupervisor.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Console.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.Config.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.ErlangHandler.beam
@@ -313,7 +319,6 @@
lib/elixir/lib/logger/ebin/Elixir.Logger.Translator.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.Utils.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.Watcher.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.WatcherSupervisor.beam
lib/elixir/lib/logger/ebin/Elixir.Logger.beam
lib/elixir/lib/logger/ebin/logger.app
lib/elixir/lib/mix/ebin/Elixir.Mix.CLI.beam
@@ -341,6 +346,7 @@
lib/elixir/lib/mix/ebin/Elixir.Mix.ProjectStack.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.PublicKey.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Rebar.beam
+lib/elixir/lib/mix/ebin/Elixir.Mix.Release.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.RemoteConverger.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.SCM.Git.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.SCM.Path.beam
@@ -398,9 +404,12 @@
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Profile.Cprof.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Profile.Eprof.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Profile.Fprof.beam
+lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Release.Init.beam
+lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Release.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Run.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Test.Cover.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Test.beam
+lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.WillRecompile.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Tasks.Xref.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.TasksServer.beam
lib/elixir/lib/mix/ebin/Elixir.Mix.Utils.beam
diff -r f2adabbdd894 -r a7876c2e83f1 lang/elixir/distinfo
--- a/lang/elixir/distinfo Thu Aug 01 01:23:20 2019 +0000
+++ b/lang/elixir/distinfo Thu Aug 01 09:52:52 2019 +0000
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.10 2018/11/09 17:17:28 nia Exp $
+$NetBSD: distinfo,v 1.11 2019/08/01 09:52:52 nia Exp $
-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
+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
+SHA1 (patch-Makefile) = 00a68538bae40effba33fc3bc5019fdbf38a91f3
diff -r f2adabbdd894 -r a7876c2e83f1 lang/elixir/patches/patch-Makefile
--- a/lang/elixir/patches/patch-Makefile Thu Aug 01 01:23:20 2019 +0000
+++ b/lang/elixir/patches/patch-Makefile Thu Aug 01 09:52:52 2019 +0000
@@ -1,11 +1,10 @@
-$NetBSD: patch-Makefile,v 1.3 2018/10/11 12:10:09 jperkin Exp $
+$NetBSD: patch-Makefile,v 1.4 2019/08/01 09:52:52 nia Exp $
Use portable sed calls to avoid gsed.
-Use pkgsrc paths for man pages.
---- Makefile.orig 2018-08-24 18:46:27.000000000 +0000
+--- Makefile.orig 2019-07-18 10:17:13.000000000 +0000
+++ Makefile
-@@ -109,7 +109,7 @@ install: compile
+@@ -120,7 +120,7 @@ install: compile
$(INSTALL_DATA) $$dir/ebin/* "$(DESTDIR)$(PREFIX)/$(LIBDIR)/elixir/$$dir/ebin"; \
done
$(Q) $(INSTALL_DIR) "$(DESTDIR)$(PREFIX)/$(LIBDIR)/elixir/bin"
@@ -14,7 +13,7 @@
$(Q) $(INSTALL_DIR) "$(DESTDIR)$(PREFIX)/$(BINDIR)"
$(Q) for file in "$(DESTDIR)$(PREFIX)"/$(LIBDIR)/elixir/bin/*; do \
ln -sf "../$(LIBDIR)/elixir/bin/$${file##*/}" "$(DESTDIR)$(PREFIX)/$(BINDIR)/"; \
-@@ -262,14 +262,14 @@ build_man: man/iex.1 man/elixir.1
+@@ -296,14 +296,14 @@ build_man: man/iex.1 man/elixir.1
man/iex.1:
$(Q) cp man/iex.1.in man/iex.1
@@ -33,18 +32,3 @@
$(Q) rm -f man/elixir.1.bak
clean_man:
-@@ -279,9 +279,9 @@ clean_man:
- rm -f man/iex.1.bak
-
- install_man: build_man
-- $(Q) mkdir -p $(DESTDIR)$(SHARE_PREFIX)/man/man1
-- $(Q) $(INSTALL_DATA) man/elixir.1 $(DESTDIR)$(SHARE_PREFIX)/man/man1
-- $(Q) $(INSTALL_DATA) man/elixirc.1 $(DESTDIR)$(SHARE_PREFIX)/man/man1
-- $(Q) $(INSTALL_DATA) man/iex.1 $(DESTDIR)$(SHARE_PREFIX)/man/man1
-- $(Q) $(INSTALL_DATA) man/mix.1 $(DESTDIR)$(SHARE_PREFIX)/man/man1
-+ $(Q) mkdir -p $(DESTDIR)$(PREFIX)/$(PKGMANDIR)/man1
-+ $(Q) $(INSTALL_DATA) man/elixir.1 $(DESTDIR)$(PREFIX)/$(PKGMANDIR)/man1
-+ $(Q) $(INSTALL_DATA) man/elixirc.1 $(DESTDIR)$(PREFIX)/$(PKGMANDIR)/man1
-+ $(Q) $(INSTALL_DATA) man/iex.1 $(DESTDIR)$(PREFIX)/$(PKGMANDIR)/man1
-+ $(Q) $(INSTALL_DATA) man/mix.1 $(DESTDIR)$(PREFIX)/$(PKGMANDIR)/man1
- $(MAKE) clean_man
Home |
Main Index |
Thread Index |
Old Index