What's new in Elixir v1.8 (dev)

Hi everyone!

We are back with another edition of “What’s new in Elixir”. This time we are working towards Elixir v1.8 which should be out next January. Here are some highlights of what have already made to master:

  • mix test now supports the --max-failures flag ([commit](https://github.com/elixir-lang/elixir/commit/8c373044dcde1654670d8da10448e4b8fecf0b93))

  • The Inspect protocol can now be easily derivable and this is a great mechanism to exclude some fields during inspection and logs, especially security-related ones ([commit](https://github.com/elixir-lang/elixir/commit/10ceadb448ba6a913f3070c3cc51c9c7be1f280b))

  • Mix now automatically starts optional dependencies when using the :extra_applications configuration ([commit](https://github.com/elixir-lang/elixir/commit/53ebafb8a4bc2fe73caefd24b49c95cc2943a340))

  • We finally have official support for time zone databases in Elixir. Elixir still handles only UTC by default but you can bring another database to use the DateTime API with other time zones ([commit](https://github.com/elixir-lang/elixir/commit/b8b1a4ba8af8256567f00e6d9f7fa056881a8ec1))

  • There are many other small additions, such as List.myers_difference/3 and String.bag_distance/2 which were extracted from the Elixir codebase itself

For the complete list of changes, see the CHANGELOG. To keep track of upcoming changes and even contribute some features yourself, head to Elixir’s issues tracker.

P.S.: This post was originally published on Plataformatec’s blog.