Elixir v1.4.0-rc.0 released

Hello folks,

Elixir v1.4.0-rc.0 has been released. This is a release candidate for the upcoming Elixir v1.4.0.

The most notable changes are the addition of the Registry module and the Task.async_stream/3 and Task.async_stream/5 which aid developers in writing concurrent software. Overall this is the smallest release since Elixir v1.0 and that’s also a feature! :slight_smile:

You can find more information about this release in the CHANGELOG: https://github.com/elixir-lang/elixir/blob/v1.4/CHANGELOG.md

With this release we are also officially moving the docs for Elixir and friends to Hexdocs: https://hexdocs.pm/elixir/1.4.0-rc.0 - this provides a unified doc experience throughout the ecosystem and the ability to version all versions (so far we kept only the latest of each branch).

Please give Elixir v1.4 a try. Since it is a prerelease it may not be available in package managers but you can easily use the precompiled packages as explained here: http://elixir-lang.org/install.html#precompiled-package

Finally, as with previous releases, this release includes new warnings. So please update your libraries and if your dependencies are emitting warnings, please update them when appropriate and send pull requests when possible.

FAQ

How frequent are Elixir releases?

Elixir releases have been happening in an interval of 6 months. This has been true since Elixir v1.1. For this reason, we are officially planning to have a new minor release every 6 months. It is not a hard rule, if necessary we will release earlier, or later if nothing worthwhile has been added to master, but that’s the timeline we will work with.

What about GenStage?

The Elixir Core has discussed and agreed to not include GenStage as part of Elixir. That’s actually good news for GenStage: it became obvious in the last months that GenStage has grown beyond our expectations. By keeping GenStage and Flow as separate projects, we will have more flexibility in evolving both.

In any case, we will continue with our plans to remove GenEvent from Elixir Core in the long term. While GenStage and Elixir’s v1.4 registry can be used as replacements, known tools such as Supervisor and GenServers may do the job as well, as I have recently written on Plataformatec’s blog: http://blog.plataformatec.com.br/2016/11/replacing-genevent-by-a-supervisor-genserver/

Once Elixir v1.4.0 (final) is released, we will announce the full plans for GenStage and Flow and how they will relate to future Elixir versions.

49 Likes

Reading through the changelog, these are my favourite new features:

  • Application inflection: This will definitely make Elixir more approachable for newcomers.
  • Task.async_stream: Absolutely wonderful that the distribution of workload across processes is now handled for you.
  • The Registry :heart_eyes:
  • And it is absolutely true that being the smallest release is also a wonderful thing! :thumbsup:

15 Likes

Congrats!!!
Registry and Task.async_stream are very welcome additions to already amazing language.

8 Likes

Congratulations!

Big fan of all the decisions taken, especially moving the docs under hexdocs; it always felt odd having the elixir docs under a separate domain.

7 Likes

[IEx.Autocomplete] Stop appending a trailing dot when autocompleting modules in IEx

This is going to make IEx auto completion frustration free :smiley:

14 Likes

Loved the decision to move elixir docs to hexdocs! :heart_eyes:

I don’t know if my post had something to do with it, but I really felt listened by the community. :laughing:

7 Likes

Very nice changelog! Really nice job!

6 Likes

Your post has everything to it, thank you for the feedback! That’s what happens when you ask for a practical change instead of debating the syntax (which won’t change). :wink:

15 Likes

and now we can also do mix hex.docs open/fetch elixir

6 Likes

Thanks for the release!

As a ruby developer I seriously need to get used to [Kernel] Warn if variable is used as a function call - e.g. I leave out parentheses when I can :smiley: Well I have some updating to do on packages now :smiley:

Otherwise love Application Inflection and async_stream :smiley:

edit: in case everyone is wondering, yes you can specify 1.4.0-rc.0 on travis :slight_smile:

5 Likes

Looking forward to the improvements on calendar and the application inflection!

BTW: the syntax coloring of inspected data structures looks really nice! :raised_hands:

6 Likes

Elixir v1.4.0-rc.1 has been released, it fixes regressions, some new bugs fixed just in time for v1.4, and adds autocomplete of map fields in IEx. Hopefully this is the last stop before v1.4.0 final.

Thanks everyone who gave v1.4.0-rc a try and provided feedback so far!

10 Likes

Thank you very much José and team! I will install momentarily and switch all CIs to (benchee & co.) to run on the new rc :slight_smile:

edit: all passing as expected :slight_smile:

1 Like