2013-07-05 10:05:02 +02:00
|
|
|
#
|
2015-05-15 19:02:04 +02:00
|
|
|
# spec file for package elixir
|
2013-07-05 10:05:02 +02:00
|
|
|
#
|
Accepting request 669040 from home:gsantomaggio_suse:branches:devel:languages:erlang
----------------------- --------------------------------------------
- Elixir 1.8.0
* Elixir v1.8 comes with many improvements at the infrastructure level, improving compilation time,
speeding up common patterns, and adding features around introspection of the system.
See full changelog at https://github.com/elixir-lang/elixir/releases/tag/v1.8.0
* Enhancements
EEx
[EEx] Optimize the default template engine to compile and execute more efficiently
Elixir
[Calendar] Add Calendar.TimeZoneDatabase and a Calendar.UTCOnlyTimeZoneDatabase implementation
[Calendar] Add callbacks day_of_year/3, quarter_of_year/3, year_of_era/1, and day_of_era/3
[Code.Formatter] Preserve user's choice of new line after most operators
[Date] Add Date.day_of_year/1, Date.quarter_of_year/1, Date.year_of_era/1, and Date.day_of_era/1
[DateTime] Add DateTime.from_naive/3, DateTime.now/1, and DateTime.shift_zone/3
[File] Allow :raw option in File.exists?/2, File.regular?/2, and File.dir?/2
[File] Allow POSIX time as an integer in File.touch/2 and File.touch!/2
[Inspect] Allow Inspect protocol to be derivable with the :only/:except options
[Kernel] Do not propagate counters to variables in quote inside another quote
[Kernel] Warn on ambiguous use of :: and | in typespecs
[Kernel] Add :delegate_to @doc metadata tag when using defdelegate
[Kernel] Improve compile-time building of ranges via the .. operator
[Kernel] Compile charlist interpolation more efficiently
[Kernel] Add floor/1 and ceil/1 guards
[Kernel.SpecialForms] Add :reduce option to for comprehensions
[List] Add List.myers_difference/3 and List.improper?/1
[Macro] Add Macro.struct!/2 for proper struct resolution during compile time
[Map] Optimize and merge nested maps put and merge operations
[Range] Add Range.disjoint?/2
[Record] Reduce memory allocation when updating multiple fields in a record
[Registry] Allow associating a value on :via tuple
[String] Add String.bag_distance/2
[Task] Add $callers tracking to Task - this makes it easier to find which process spawned a task and use it for tracking ownership and monitoring
ExUnit
[ExUnit] Add ExUnit.after_suite/1 callback
[ExUnit.Assertions] Show last N messages (instead of first N) from mailbox on assert_receive fail
IEx
[IEx.Helpers] Add port/1 and port/2
[IEx.Server] Expose IEx.Server.run/1 for custom IEx sessions with the ability to broker pry sessions
Mix
[Mix] Add Mix.target/0 and Mix.target/1 to control dependency management per target
[Mix.Project] Add :depth and :parents options to deps_paths/1
[mix archive.install] Add a timeout when installing archives
[mix compile] Include optional dependencies in :extra_applications
[mix escript.install] Add a timeout when installing escripts
[mix format] Warn when the same file may be formatted by multiple .formatter.exs
[mix test] Allow setting the maximum number of failures via --max-failures
[mix test] Print a message instead of raising on unmatched tests inside umbrella projects
* Bug fixes
Elixir
[Calendar] Allow printing dates with more than 9999 years
[Exception] Exclude deprecated functions in "did you mean?" hints
[Float] Handle subnormal floats in Float.ratio/1
[Kernel] Remove Guard test tuple_size(...) can never succeed Dialyzer warning on try
[Kernel] Expand operands in size*unit bitstring modifier instead of expecting size and unit to be literal integers
[Kernel] Do not deadlock on circular struct dependencies in typespecs
[Kernel] Raise proper error message when passing flags to the Erlang compiler that Elixir cannot handle
[Kernel] Do not leak variables in cond clauses with a single matching at compile-time clause
[NaiveDateTime] Do not accept leap seconds in builder and parsing functions
[String] Fix ZWJ handling in Unicode grapheme clusters
[StringIO] Handle non-printable args in StringIO gracefully
IEx
[IEx.Helpers] Use typespec info (instead of docs chunk) and properly format callbacks in b/1
Logger
[Logger] Allow Logger backends to be dynamically removed when an application is shutting down
Mix
[mix compile] Ensure changes in deps propagate to all umbrella children - this fix a long standing issue where updating a dependency would not recompile all projects accordingly, requiring a complete removal of _build
[mix compile] Avoid time drift when checking and updating compiler manifest files
[mix compile.app] Respect the :only option between umbrella siblings
[mix compile.protocols] Reconsolidate protocols if local dependencies are stale
[mix deps] Properly mark dependencies with different :system_env as diverged
[mix new] Use --module value when setting up filenames
OBS-URL: https://build.opensuse.org/request/show/669040
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=37
2019-01-28 12:39:22 +01:00
|
|
|
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
2013-07-05 10:05:02 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
|
|
#
|
|
|
|
|
2015-05-15 19:02:04 +02:00
|
|
|
|
2013-07-05 10:05:02 +02:00
|
|
|
Name: elixir
|
Accepting request 669040 from home:gsantomaggio_suse:branches:devel:languages:erlang
----------------------- --------------------------------------------
- Elixir 1.8.0
* Elixir v1.8 comes with many improvements at the infrastructure level, improving compilation time,
speeding up common patterns, and adding features around introspection of the system.
See full changelog at https://github.com/elixir-lang/elixir/releases/tag/v1.8.0
* Enhancements
EEx
[EEx] Optimize the default template engine to compile and execute more efficiently
Elixir
[Calendar] Add Calendar.TimeZoneDatabase and a Calendar.UTCOnlyTimeZoneDatabase implementation
[Calendar] Add callbacks day_of_year/3, quarter_of_year/3, year_of_era/1, and day_of_era/3
[Code.Formatter] Preserve user's choice of new line after most operators
[Date] Add Date.day_of_year/1, Date.quarter_of_year/1, Date.year_of_era/1, and Date.day_of_era/1
[DateTime] Add DateTime.from_naive/3, DateTime.now/1, and DateTime.shift_zone/3
[File] Allow :raw option in File.exists?/2, File.regular?/2, and File.dir?/2
[File] Allow POSIX time as an integer in File.touch/2 and File.touch!/2
[Inspect] Allow Inspect protocol to be derivable with the :only/:except options
[Kernel] Do not propagate counters to variables in quote inside another quote
[Kernel] Warn on ambiguous use of :: and | in typespecs
[Kernel] Add :delegate_to @doc metadata tag when using defdelegate
[Kernel] Improve compile-time building of ranges via the .. operator
[Kernel] Compile charlist interpolation more efficiently
[Kernel] Add floor/1 and ceil/1 guards
[Kernel.SpecialForms] Add :reduce option to for comprehensions
[List] Add List.myers_difference/3 and List.improper?/1
[Macro] Add Macro.struct!/2 for proper struct resolution during compile time
[Map] Optimize and merge nested maps put and merge operations
[Range] Add Range.disjoint?/2
[Record] Reduce memory allocation when updating multiple fields in a record
[Registry] Allow associating a value on :via tuple
[String] Add String.bag_distance/2
[Task] Add $callers tracking to Task - this makes it easier to find which process spawned a task and use it for tracking ownership and monitoring
ExUnit
[ExUnit] Add ExUnit.after_suite/1 callback
[ExUnit.Assertions] Show last N messages (instead of first N) from mailbox on assert_receive fail
IEx
[IEx.Helpers] Add port/1 and port/2
[IEx.Server] Expose IEx.Server.run/1 for custom IEx sessions with the ability to broker pry sessions
Mix
[Mix] Add Mix.target/0 and Mix.target/1 to control dependency management per target
[Mix.Project] Add :depth and :parents options to deps_paths/1
[mix archive.install] Add a timeout when installing archives
[mix compile] Include optional dependencies in :extra_applications
[mix escript.install] Add a timeout when installing escripts
[mix format] Warn when the same file may be formatted by multiple .formatter.exs
[mix test] Allow setting the maximum number of failures via --max-failures
[mix test] Print a message instead of raising on unmatched tests inside umbrella projects
* Bug fixes
Elixir
[Calendar] Allow printing dates with more than 9999 years
[Exception] Exclude deprecated functions in "did you mean?" hints
[Float] Handle subnormal floats in Float.ratio/1
[Kernel] Remove Guard test tuple_size(...) can never succeed Dialyzer warning on try
[Kernel] Expand operands in size*unit bitstring modifier instead of expecting size and unit to be literal integers
[Kernel] Do not deadlock on circular struct dependencies in typespecs
[Kernel] Raise proper error message when passing flags to the Erlang compiler that Elixir cannot handle
[Kernel] Do not leak variables in cond clauses with a single matching at compile-time clause
[NaiveDateTime] Do not accept leap seconds in builder and parsing functions
[String] Fix ZWJ handling in Unicode grapheme clusters
[StringIO] Handle non-printable args in StringIO gracefully
IEx
[IEx.Helpers] Use typespec info (instead of docs chunk) and properly format callbacks in b/1
Logger
[Logger] Allow Logger backends to be dynamically removed when an application is shutting down
Mix
[mix compile] Ensure changes in deps propagate to all umbrella children - this fix a long standing issue where updating a dependency would not recompile all projects accordingly, requiring a complete removal of _build
[mix compile] Avoid time drift when checking and updating compiler manifest files
[mix compile.app] Respect the :only option between umbrella siblings
[mix compile.protocols] Reconsolidate protocols if local dependencies are stale
[mix deps] Properly mark dependencies with different :system_env as diverged
[mix new] Use --module value when setting up filenames
OBS-URL: https://build.opensuse.org/request/show/669040
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=37
2019-01-28 12:39:22 +01:00
|
|
|
Version: 1.8.0
|
2015-05-15 19:02:04 +02:00
|
|
|
Release: 0
|
2018-12-11 14:55:23 +01:00
|
|
|
Summary: Functional meta-programming aware language built atop Erlang
|
2018-12-20 08:05:40 +01:00
|
|
|
License: Apache-2.0
|
2013-07-05 10:05:02 +02:00
|
|
|
Group: Development/Languages/Other
|
2015-05-15 19:02:04 +02:00
|
|
|
Url: http://elixir-lang.org
|
2018-04-24 12:02:55 +02:00
|
|
|
Source0: https://github.com/elixir-lang/elixir/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
2014-02-17 10:46:00 +01:00
|
|
|
Source2: macros.elixir
|
2015-05-15 19:02:04 +02:00
|
|
|
BuildRequires: erlang
|
|
|
|
BuildRequires: gcc
|
|
|
|
BuildRequires: make
|
2013-07-07 16:21:04 +02:00
|
|
|
# required by Mix.SCM.Git see also (https://github.com/elixir-lang/elixir/issues/1386)
|
|
|
|
Requires: git >= 1.7
|
Accepting request 669040 from home:gsantomaggio_suse:branches:devel:languages:erlang
----------------------- --------------------------------------------
- Elixir 1.8.0
* Elixir v1.8 comes with many improvements at the infrastructure level, improving compilation time,
speeding up common patterns, and adding features around introspection of the system.
See full changelog at https://github.com/elixir-lang/elixir/releases/tag/v1.8.0
* Enhancements
EEx
[EEx] Optimize the default template engine to compile and execute more efficiently
Elixir
[Calendar] Add Calendar.TimeZoneDatabase and a Calendar.UTCOnlyTimeZoneDatabase implementation
[Calendar] Add callbacks day_of_year/3, quarter_of_year/3, year_of_era/1, and day_of_era/3
[Code.Formatter] Preserve user's choice of new line after most operators
[Date] Add Date.day_of_year/1, Date.quarter_of_year/1, Date.year_of_era/1, and Date.day_of_era/1
[DateTime] Add DateTime.from_naive/3, DateTime.now/1, and DateTime.shift_zone/3
[File] Allow :raw option in File.exists?/2, File.regular?/2, and File.dir?/2
[File] Allow POSIX time as an integer in File.touch/2 and File.touch!/2
[Inspect] Allow Inspect protocol to be derivable with the :only/:except options
[Kernel] Do not propagate counters to variables in quote inside another quote
[Kernel] Warn on ambiguous use of :: and | in typespecs
[Kernel] Add :delegate_to @doc metadata tag when using defdelegate
[Kernel] Improve compile-time building of ranges via the .. operator
[Kernel] Compile charlist interpolation more efficiently
[Kernel] Add floor/1 and ceil/1 guards
[Kernel.SpecialForms] Add :reduce option to for comprehensions
[List] Add List.myers_difference/3 and List.improper?/1
[Macro] Add Macro.struct!/2 for proper struct resolution during compile time
[Map] Optimize and merge nested maps put and merge operations
[Range] Add Range.disjoint?/2
[Record] Reduce memory allocation when updating multiple fields in a record
[Registry] Allow associating a value on :via tuple
[String] Add String.bag_distance/2
[Task] Add $callers tracking to Task - this makes it easier to find which process spawned a task and use it for tracking ownership and monitoring
ExUnit
[ExUnit] Add ExUnit.after_suite/1 callback
[ExUnit.Assertions] Show last N messages (instead of first N) from mailbox on assert_receive fail
IEx
[IEx.Helpers] Add port/1 and port/2
[IEx.Server] Expose IEx.Server.run/1 for custom IEx sessions with the ability to broker pry sessions
Mix
[Mix] Add Mix.target/0 and Mix.target/1 to control dependency management per target
[Mix.Project] Add :depth and :parents options to deps_paths/1
[mix archive.install] Add a timeout when installing archives
[mix compile] Include optional dependencies in :extra_applications
[mix escript.install] Add a timeout when installing escripts
[mix format] Warn when the same file may be formatted by multiple .formatter.exs
[mix test] Allow setting the maximum number of failures via --max-failures
[mix test] Print a message instead of raising on unmatched tests inside umbrella projects
* Bug fixes
Elixir
[Calendar] Allow printing dates with more than 9999 years
[Exception] Exclude deprecated functions in "did you mean?" hints
[Float] Handle subnormal floats in Float.ratio/1
[Kernel] Remove Guard test tuple_size(...) can never succeed Dialyzer warning on try
[Kernel] Expand operands in size*unit bitstring modifier instead of expecting size and unit to be literal integers
[Kernel] Do not deadlock on circular struct dependencies in typespecs
[Kernel] Raise proper error message when passing flags to the Erlang compiler that Elixir cannot handle
[Kernel] Do not leak variables in cond clauses with a single matching at compile-time clause
[NaiveDateTime] Do not accept leap seconds in builder and parsing functions
[String] Fix ZWJ handling in Unicode grapheme clusters
[StringIO] Handle non-printable args in StringIO gracefully
IEx
[IEx.Helpers] Use typespec info (instead of docs chunk) and properly format callbacks in b/1
Logger
[Logger] Allow Logger backends to be dynamically removed when an application is shutting down
Mix
[mix compile] Ensure changes in deps propagate to all umbrella children - this fix a long standing issue where updating a dependency would not recompile all projects accordingly, requiring a complete removal of _build
[mix compile] Avoid time drift when checking and updating compiler manifest files
[mix compile.app] Respect the :only option between umbrella siblings
[mix compile.protocols] Reconsolidate protocols if local dependencies are stale
[mix deps] Properly mark dependencies with different :system_env as diverged
[mix new] Use --module value when setting up filenames
OBS-URL: https://build.opensuse.org/request/show/669040
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=37
2019-01-28 12:39:22 +01:00
|
|
|
BuildRequires: erlang >= 20
|
2016-01-02 18:42:28 +01:00
|
|
|
BuildRequires: erlang-dialyzer
|
2018-12-10 18:34:06 +01:00
|
|
|
BuildRequires: erlang-src
|
2013-07-07 16:21:04 +02:00
|
|
|
BuildRequires: git >= 1.7
|
2013-07-05 10:05:02 +02:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
BuildArch: noarch
|
2015-05-15 19:02:04 +02:00
|
|
|
Requires: erlang
|
2013-07-05 10:05:02 +02:00
|
|
|
|
|
|
|
%description
|
2018-12-11 14:55:23 +01:00
|
|
|
Elixir is a functional meta-programming aware language built on top
|
|
|
|
of the Erlang VM. It is a dynamic language with flexible syntax with
|
|
|
|
macros support that leverage Erlang's abilities to build concurrent,
|
|
|
|
distributed, fault-tolerant applications with hot code upgrades.
|
2013-07-05 10:05:02 +02:00
|
|
|
|
2018-12-11 14:55:23 +01:00
|
|
|
Elixir also provides first-class support for pattern matching,
|
|
|
|
polymorphism via protocols (similar to Clojure's), aliases and
|
|
|
|
associative data structures (usually known as dicts or hashes in
|
|
|
|
other programming languages).
|
2013-07-05 10:05:02 +02:00
|
|
|
|
2018-12-11 14:55:23 +01:00
|
|
|
Finally, Elixir and Erlang share the same bytecode and data types.
|
|
|
|
This means one can invoke Erlang code from Elixir (and vice-versa)
|
|
|
|
without any conversion or performance impact.
|
2013-07-05 10:05:02 +02:00
|
|
|
|
2016-02-24 17:22:30 +01:00
|
|
|
%package src
|
|
|
|
Summary: Elixir programming language sources
|
2018-12-11 14:55:23 +01:00
|
|
|
Group: Development/Sources
|
2016-02-24 17:22:30 +01:00
|
|
|
Requires: %{name} = %{version}
|
|
|
|
|
|
|
|
%description src
|
|
|
|
Elixir source code.
|
|
|
|
|
2013-07-05 10:05:02 +02:00
|
|
|
%define elixirdir %{_prefix}/lib/elixir
|
|
|
|
|
|
|
|
%prep
|
2016-01-02 18:42:28 +01:00
|
|
|
%setup -q
|
2013-07-05 10:05:02 +02:00
|
|
|
|
|
|
|
%build
|
2015-05-15 19:02:04 +02:00
|
|
|
# Elixir wants UTF-8 locale, force it
|
|
|
|
export LANG=en_US.UTF-8
|
2013-07-05 10:05:02 +02:00
|
|
|
# Make Elixir
|
|
|
|
make
|
|
|
|
|
|
|
|
%install
|
2013-08-12 09:50:11 +02:00
|
|
|
make install DESTDIR=%{buildroot} PREFIX=%{_prefix}
|
2016-02-24 17:22:30 +01:00
|
|
|
# install -D -m 0644
|
2013-07-05 10:05:02 +02:00
|
|
|
# Relink
|
|
|
|
for I in iex elixir elixirc mix
|
|
|
|
do
|
|
|
|
ln -sf %{elixirdir}/bin/$I %{buildroot}%{_bindir}/$I
|
|
|
|
done
|
2019-01-03 09:33:01 +01:00
|
|
|
install -D -m 0644 %{S:2} %{buildroot}%{_rpmmacrodir}/macros.elixir
|
2013-07-05 10:05:02 +02:00
|
|
|
|
|
|
|
%check
|
2015-05-15 19:02:04 +02:00
|
|
|
export LANG=en_US.UTF-8
|
2013-07-05 10:05:02 +02:00
|
|
|
make test
|
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root)
|
2018-12-10 18:34:06 +01:00
|
|
|
%doc CHANGELOG.md README.md NOTICE
|
|
|
|
%license LICENSE
|
2013-07-05 10:05:02 +02:00
|
|
|
%dir %{elixirdir}
|
|
|
|
%dir %{elixirdir}/bin
|
|
|
|
%dir %{elixirdir}/lib
|
|
|
|
%{_bindir}/iex
|
|
|
|
%{_bindir}/elixir
|
|
|
|
%{_bindir}/elixirc
|
|
|
|
%{_bindir}/mix
|
2015-11-20 21:41:18 +01:00
|
|
|
%{_mandir}/man1/iex.1.gz
|
|
|
|
%{_mandir}/man1/elixir.1.gz
|
|
|
|
%{_mandir}/man1/elixirc.1.gz
|
|
|
|
%{_mandir}/man1/mix.1.gz
|
2013-07-05 10:05:02 +02:00
|
|
|
%{elixirdir}/bin/iex
|
|
|
|
%{elixirdir}/bin/elixirc
|
|
|
|
%{elixirdir}/bin/mix
|
|
|
|
%{elixirdir}/bin/elixir
|
|
|
|
%{elixirdir}/lib/*
|
2019-01-03 09:33:01 +01:00
|
|
|
%{_rpmmacrodir}/macros.elixir
|
2013-07-05 10:05:02 +02:00
|
|
|
|
|
|
|
%changelog
|