- Elixir 1.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
- Elixir 1.10.1
* Bug fixes
Elixir
[Code] Do not emit invalid code when formatting nil, false, and true keys in maps
[Kernel] Ensure with clauses properly unpack "implicit guards" (such as matching on the struct name)
[Kernel] Do not warn if commas are used by themselves in ~w/~W sigils
[Kernel] Do not validate the :line option in quote (the validation has been moved to v1.11 to give users more time to update their code)
[Module] Ensure the code verifier handles the :erlang.size/1 guard properly
Logger
[Logger] Properly handle the report_cb/2 option from Erlang
[Logger] Fix truncation for multi-byte characters
[Logger] Do not rebroadcast messages from remote nodes as this is now taken care by Erlang's logger
ExUnit
[ExUnit] Ensure assert_receive produces valid exception messages in case of errors
Mix
[mix release] Make sure the install command (Window specific) works on paths with spaces in the name
[mix release] Allow using remote and rpc commands with Application.compile_env/3
- Elixir 1.10.0
* Elixir 1.10.0 is a new main release.
Full release notes: https://github.com/elixir-lang/elixir/releases/tag/v1.10.0
OBS-URL: https://build.opensuse.org/request/show/794505
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=54
Add unzip to "build require"
- Elixir 1.9.4
* Bug fixes
Mix
[mix local.hex] Remove invalid deprecation warning on mix local.hex command
- Elixir 1.9.3
* Enhancements
Mix
[mix release] Add :tar option for releases to create a tarball
* Bug fixes
Mix
[mix release] Use default_release option when name is not given
[mix release] Make release's boot script contents deterministic
* Deprecations
Mix
[mix archive.install] Warn when installing from URI
[mix escript.install] Warn when installing from URI
- Elixir 1.9.2
* Enhancements
Mix
[mix release] Allow {:from_app, app_name} as a version for releases
* Bug fixes
Elixir
[Kernel] Ensure compilation works for a variable named super
[Kernel] Ensure capture operator of a local function expands correctly inside a macro
[Regex] Ensure dynamic recompilation of regexes considers options.
This fixes an issue where parsing the protocol in URI.parse/1 seemingly looked case sensitive when running Elixir precompiled on another machine
* Mix
[mix release] Use Base.encode32 when generating cookie to avoid unsafe chars
[mix release] Fix install command on Windows
[mix release] Quote executable path on Windows to ensure it works on directories with spaces
- Elixir 1.9.1
* Enhancements
Mix
[mix format] Print relative paths in --check-formatted output
[mix release] Support included applications
* 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
OBS-URL: https://build.opensuse.org/request/show/755456
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=48
----------------------- --------------------------------------------
- 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
- Elixir 1.7.4
* Bug fixes
[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 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
- Elixir 1.7.3
* Bug fixes
[ExUnit.Assertions] Do not attempt to expand try/1 as it is a special form
[mix compile.app] Do not include applications with runtime: false as a runtime
dependency for applications coming from Hex
[mix compile.app] Do not include applications with runtime: false as a runtime dependency
for applications coming from Hex
- Elixir 1.7.2
* Bug fixes
[Kernel] Do not emit warnings for repeated docs over different clauses due to false
positives
[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 test] Do not fail suite if there are no test files
- Elixir 1.7.1
* Bug fixes
[Calendar] Work-around a Dialyzer bug that causes it to loop for a long time,
potentially indefinitely
- Elixir 1.7
Elixir v1.7 is the last release to support Erlang/OTP 19. We recommend everyone to migrate to
Erlang/OTP 20+.
See the full release notes here: https://github.com/elixir-lang/elixir/releases/tag/v1.7.0
OBS-URL: https://build.opensuse.org/request/show/647625
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=31
- Elixir 1.6.6
This release supports Erlang/OTP 21.0 by removing all warnings and by
properly supporting the new Erlang logger module.
* Bug fixes
[Base] Do not raise when finding bad digits in Base.decode32! with
`case: :mixed`
[Code] Preserve the user's choice when fn is followed by a newline and it
has only a single clause
[DynamicSupervisor] Properly account for restarting children in the
`:max_children` configuration
[String] Add performant impl for string upcase/downcase :ascii mode
[Task.Supervisor] Fix type spec for start_child/4
[Logger] Do not crash truncation when truncate is set to infinity
[mix format] Match files starting with dot
- Elixir 1.6.5
This release supports Erlang/OTP 21.0-rc by removing all warnings and by
properly redirecting logger output. Note it is not guaranteed it will support
Erlang/OTP 21.0 final.
Bug fixes
[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
OBS-URL: https://build.opensuse.org/request/show/620027
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=30
- update to v1.3.4
1. Bug fixes
Elixir
[Kernel] Ensure the compiler does not generate unecessary variable
bindings inside case statements. This improves the code emitted and make
sure "unused variable warnings" are not mistakenly silenced
[Kernel] Move raise checks to runtime to avoid crashing cover on Erlang 19.1
[Protocol] Do not emit warnings when using protocols on opaque types
ExUnit
[ExUnit.CaptureLog] Flush Erlang's :error_logger before capturing to
avoid mixed messages
OBS-URL: https://build.opensuse.org/request/show/434012
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=22