Elixir v1.8.0-rc.0 released

Hi everyone,

We have just released Elixir v1.8.0-rc.0. For more information, checkout the CHANGELOG.

Please give it a try and give us feedback. If everything “just works™”, please let us know that too. Your feedback is really important!

To try it out, you can either compile the v1.8 branch from source OR use the precompiled files, as described in our install page .

Happy holidays!

53 Likes

@josevalim Awesome work especially that you released it today! I have just tried it and for now everything seems to work. I have only one question … Is it expected to work like that?

> DateTime.now("Etc/Universal")
{:error, :utc_only_time_zone_database}
> DateTime.now("Etc/Zulu")     
{:error, :utc_only_time_zone_database}
> DateTime.now("Etc/UTC")
{:ok, #DateTime<2018-12-24 15:15:00.471176Z>}

Maybe I do not get how it should work, but I though that all of those 3 names are correct for UTC

2 Likes

To know that Etc/Zulu is a thing (or an alias to be more precise) we need a database and we don’t ship with a database by default, so we literally only know about Etc/UTC. TL;DR - that’s expected, yes.

2 Likes

How exciting! I have installed the rc and tried it with a few of my repos. All of my smaller repos just work™, but I have two larger projects that depend on cachex which fail to compile:

== Compilation error in file lib/cachex/spec/validator.ex ==
** (CompileError) lib/cachex/spec/validator.ex:36: invalid record specification, expected the record name to be an atom
    (elixir) lib/kernel/typespec.ex:875: Kernel.Typespec.compile_error/2
    (elixir) lib/enum.ex:1431: Enum."-map_reduce/3-lists^mapfoldl/2-0-"/3
    (elixir) lib/enum.ex:1431: Enum."-map_reduce/3-lists^mapfoldl/2-0-"/3
    (elixir) lib/kernel/typespec.ex:927: Kernel.Typespec.fn_args/5
    (elixir) lib/kernel/typespec.ex:913: Kernel.Typespec.fn_args/6
    (elixir) lib/kernel/typespec.ex:366: Kernel.Typespec.translate_spec/8
    (elixir) lib/enum.ex:1431: Enum."-map_reduce/3-lists^mapfoldl/2-0-"/3
    (elixir) lib/kernel/typespec.ex:223: Kernel.Typespec.translate_typespecs_for_module/2
3 Likes

@sneako that’s definitely a bug. Can you please fill in a report? Thank you!

3 Likes

Congrats! Looking forward to testing it out.

Edit: Used asdf list-all elixir to find the proper version to use.

3 Likes

You can build it with asdf straight from github using ref: like asdf install elixir ref:v1.8.0-rc.0

6 Likes

No need, just update plugin and use asdf install elixir 1.8.0-rc.0-otp-21 :077:

7 Likes

Compiled and tested ex_cldr and other derived packages with no issues at all, and compilation did indeed feel faster. Thanks for yet another solid release.

Can’t wait to get my new Cldr.Calendars package out the door based upon the new Calendar behaviour additions. It will also support serving configuration to the new formatter as well.

7 Likes

I can see that for supports a new :reduce argument, but it’s not mentioned in the master branch doc:

https://hexdocs.pm/elixir/master/Kernel.SpecialForms.html#for/1

Should I look somewhere else for the doc?

4 Likes

It seems our automated tools stopped updating the docs, we will investigate, thank you!

4 Likes

Tested 1.8.0-rc.0 on the test suites of horde and delta_crdt, and everything works as expected :tm:.

I did notice that asdf install elixir 1.8.0-rc.0 didn’t work (even though 1.8.0-rc.0 is what you see if you do asdf list-all elixir), I had to use asdf install elixir 1.8.0-rc.0-otp-21 per @Eiji’s instructions.

1 Like

Looks like there are some problems on hex.pm side!

<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>E0764140496F3262</RequestId><HostId>Zu/0DZRnI0zYvyB5ZTwsMgZ0U+ZlHni5GjLgkO7PZjIUD104IyeCDmcS+huWB1jmA8bAW/7xycw=</HostId></Error>

Link generated by asdf install script:
https://repo.hex.pm/builds/elixir/v1.8.0-rc.0.zip

Did your automated tools also stopped uploading zip files to repo.hex.pm?

1 Like

It is probably all related, so yes. :slight_smile:

2 Likes

Thank you for Calendar.TimeZoneDatabase!

All my tests using mock library are failing on 1.8-rc.0. It looks like it uncovered some bug in meck. See https://github.com/jjh42/mock/issues/96 https://github.com/eproxus/meck/issues/201
Apart from that issue all appears to be OK.

All of my tests for Kiq, Flippant and Braintree are passing. Overall there was no breakage and very few warnings.

Compilation didn’t take very long for any of those libraries in the first place, but Kiq is down to ~2.1s after the upgrade.

1 Like