Skip to content

Commit

Permalink
Crystal 0.23.0 Changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
matiasgarciaisaia committed Jun 26, 2017
1 parent bf5d462 commit 3c3d3e2
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,31 @@
# 0.23.0 (27-06-2017)

* **(breaking-change)** `Logger#formatter` takes a `Severity` instead of a `String` (See #4355, #4369, thanks @Sija)
* **(breaking-change)** Removed `IO.select` (See #4392, thanks @RX14)
* Added `Crystal::System::Random` namespace (See #4450, thanks @ysbaddaden)
* Added `Path#resolve?` macro method (See #4370, #4408, thanks @RX14)
* Added range methods to `BitArray` (See #4397, #3968, thanks @RX14)
* Added some well-known HTTP Status messages (See #4419, thanks @akzhan)
* Added compiler progress indicator (See #4182, thanks @RX14)
* Added `System.cpu_cores` (See #4449, #4226, thanks @miketheman)
* Added `separator` and `quote_char` to `CSV#each_row` (See #4448, thanks @timsu)
* Added `map_with_index!` to `Pointer`, `Array` and `StaticArray` (See #4456, #3356, #3354, thanks @Nephos)
* Added `headers` parameter to `HTTP::WebSocket` constructors (See #4227, #4222, thanks @adamtrilling)
* `HTTP::StaticFileHandler` can disable directory listing (See #4403, #4398, thanks @joaodiogocosta)
* `bin/crystal` now uses `/bin/sh` instead of `/bin/bash` (See #3809, #4410, thanks @TheLonelyGhost)
* `crystal init` generates a `.editorconfig` file (See #4422, #297, thanks @akzhan)
* `man` page for `crystal` command (See #2989, #1291, thanks @dread-uo)
* Re-raising an exception doesn't overwrite its callstack (See #4487, #4482, thanks @akzhan)
* MD5 and SHA1 documentation clearly states they are not cryptographically secure anymore (See #4426, thanks @RX14)
* Fixed Crystal not reusing .o files across builds (See #4336)
* Fixed `SomeClass.class.is_a?(SomeConst)` causing an "already had enclosing call" exception (See #4364, #4390, thanks @rockwyc992)
* Fixed `HTTP::Params.parse` query string with two `=` gave wrong result (See #4388, #4389, thanks @akiicat)
* Fixed `Class.class.is_a?(Class.class.class.class.class)` 🎉 (See #4375, #4374, thanks @rockwyc992)
* Fixed select hanging when sending before receive (See #3862, #3899, thanks @kostya)
* Fixed "Unknown key in access token json: id_token" error in OAuth2 client (See #4437)
* Fixed macro lookup conflicting with method lookup when including on top level (See #236)
* Fixed Vagrant images (see #4510, #4508, thanks @Val)

# 0.22.0 (20-04-2017)

* **(breaking-change)** Removed `Process.new(pid)` is now private (See #4197)
Expand Down

18 comments on commit 3c3d3e2

@Sija
Copy link
Contributor

@Sija Sija commented on 3c3d3e2 Jun 27, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#4515, #4542, #4558, #4560, #4562, #4566, #4574, #4567, #4512, #4502, #4501, #4491, #3168, #4429, #4415, #4386, #4333, #4280, #4260, #4026, #3783, #4474 and #4216 could find a way to the changelog too...

@Sija
Copy link
Contributor

@Sija Sija commented on 3c3d3e2 Jun 29, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@matiasgarciaisaia @asterite FYI, performing apt-get update ATM results in following error:

W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://dist.crystal-lang.org crystal InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A4EBAC6667697DD2

W: Failed to fetch https://dist.crystal-lang.org/apt/dists/crystal/InRelease

W: Some index files failed to download. They have been ignored, or old ones used instead.

@matiasgarciaisaia
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @Sija - double thanks for this comments!

We're probably iterating the changelog a bit more tomorrow, but I'm surely going to work out the GPG issue. We did quite a few changes in the release process, and, while I actually tested installing Crystal on a fresh Ubuntu VM, I had already wiped every VM that had the package installed so couldn't test the upgrade.

So, long story short: thanks for the heads up, keep tuned for news 👌

@akzhan
Copy link
Contributor

@akzhan akzhan commented on 3c3d3e2 Jun 30, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@matiasgarciaisaia anyway Homebrew formula points to old release yet.

@matiasgarciaisaia
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@akzhan yeah - that's (quite literally) another issue: Homebrew/homebrew-core#15035

@straight-shoota
Copy link
Member

@straight-shoota straight-shoota commented on 3c3d3e2 Jun 30, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be worth mentioning somewhere that on ubuntu you need to run

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A4EBAC6667697DD2

again to update to this release.

@ysbaddaden
Copy link
Contributor

@ysbaddaden ysbaddaden commented on 3c3d3e2 Jun 30, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It installed on Ubuntu 14.04 (trusty) but there is a libstdc++6 version mismatch, despite having v4.8.4 installed:

/usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found

I don't know which system the binary was built on (debian 8?) but it's not portable anymore to Ubuntu LTS releases (despite trusty having no issue with LLVM 3.8+ and libstdc++ versions). Obviously the tarball has the same issue.

@need47
Copy link
Contributor

@need47 need47 commented on 3c3d3e2 Jun 30, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ysbaddaden I've the same issue. So I decided to build from source.

@straight-shoota
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it goes any further, this discussion should better be in an issue. Nobody is gonna discover this on a commit.

@mverzilli
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, please open an issue and we'll schedule for 0.23.1... this is critical

@Fryguy
Copy link
Contributor

@Fryguy Fryguy commented on 3c3d3e2 Jun 30, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be worth mentioning somewhere that on ubuntu you need to run

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A4EBAC6667697DD2`

again to update to this release.

My Travis builds are now breaking and I think this might be the reason why. I can open a separate issue if anyone wants.

Installing Crystal
OK
Hit http://downloads-distro.mongodb.org dist Release.gpg
Hit http://downloads-distro.mongodb.org dist Release
Hit http://us.archive.ubuntu.com precise Release.gpg
Hit http://us.archive.ubuntu.com precise-updates Release.gpg
Hit http://us.archive.ubuntu.com precise-backports Release.gpg
Hit http://apt.postgresql.org precise-pgdg Release.gpg
Hit http://us.archive.ubuntu.com precise Release
Hit http://downloads-distro.mongodb.org dist/10gen amd64 Packages
Hit http://us.archive.ubuntu.com precise-updates Release
Hit http://us.archive.ubuntu.com precise-backports Release
Hit http://apt.postgresql.org precise-pgdg Release
Hit http://downloads-distro.mongodb.org dist/10gen i386 Packages
Hit http://us.archive.ubuntu.com precise/main Sources
Hit http://us.archive.ubuntu.com precise/restricted Sources
Hit http://us.archive.ubuntu.com precise/universe Sources
Hit http://us.archive.ubuntu.com precise/multiverse Sources
Hit http://us.archive.ubuntu.com precise/main amd64 Packages
Hit http://us.archive.ubuntu.com precise/restricted amd64 Packages
Hit http://us.archive.ubuntu.com precise/universe amd64 Packages
Hit http://us.archive.ubuntu.com precise/multiverse amd64 Packages
Hit http://us.archive.ubuntu.com precise/main i386 Packages
Hit http://us.archive.ubuntu.com precise/restricted i386 Packages
Hit http://security.ubuntu.com precise-security Release.gpg
Hit http://apt.postgresql.org precise-pgdg/main amd64 Packages
Hit http://us.archive.ubuntu.com precise/universe i386 Packages
Hit http://us.archive.ubuntu.com precise/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/main Sources
Hit http://us.archive.ubuntu.com precise-updates/restricted Sources
Hit http://us.archive.ubuntu.com precise-updates/universe Sources
Hit http://us.archive.ubuntu.com precise-updates/multiverse Sources
Hit http://us.archive.ubuntu.com precise-updates/main amd64 Packages
Hit http://us.archive.ubuntu.com precise-updates/restricted amd64 Packages
Hit http://us.archive.ubuntu.com precise-updates/universe amd64 Packages
Hit http://us.archive.ubuntu.com precise-updates/multiverse amd64 Packages
Hit http://us.archive.ubuntu.com precise-updates/main i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/main Sources
Hit http://us.archive.ubuntu.com precise-backports/restricted Sources
Hit http://us.archive.ubuntu.com precise-backports/universe Sources
Hit http://us.archive.ubuntu.com precise-backports/multiverse Sources
Hit http://us.archive.ubuntu.com precise-backports/main amd64 Packages
Hit http://us.archive.ubuntu.com precise-backports/restricted amd64 Packages
Hit http://apt.postgresql.org precise-pgdg/main i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/universe amd64 Packages
Hit http://us.archive.ubuntu.com precise-backports/multiverse amd64 Packages
Hit http://us.archive.ubuntu.com precise-backports/main i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/multiverse i386 Packages
Hit http://security.ubuntu.com precise-security Release
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://ppa.launchpad.net precise Release.gpg
Hit http://security.ubuntu.com precise-security/main Sources
Hit http://ppa.launchpad.net precise Release
Hit http://ppa.launchpad.net precise Release
Hit http://ppa.launchpad.net precise Release
Hit http://ppa.launchpad.net precise Release
Hit http://ppa.launchpad.net precise Release
Get:1 https://dist.crystal-lang.org crystal Release.gpg [801 B]
Hit http://security.ubuntu.com precise-security/restricted Sources
Hit http://security.ubuntu.com precise-security/universe Sources
Hit http://security.ubuntu.com precise-security/multiverse Sources
Hit http://security.ubuntu.com precise-security/main amd64 Packages
Hit http://security.ubuntu.com precise-security/restricted amd64 Packages
Hit http://security.ubuntu.com precise-security/universe amd64 Packages
Hit http://security.ubuntu.com precise-security/multiverse amd64 Packages
Hit http://security.ubuntu.com precise-security/main i386 Packages
Hit http://security.ubuntu.com precise-security/restricted i386 Packages
Hit http://security.ubuntu.com precise-security/universe i386 Packages
Hit http://ppa.launchpad.net precise Release
Get:2 https://dist.crystal-lang.org crystal Release [1,628 B]
Ign https://dist.crystal-lang.org crystal Release
Hit http://security.ubuntu.com precise-security/multiverse i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Hit http://ppa.launchpad.net precise/main i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Hit http://ppa.launchpad.net precise/main i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Hit http://ppa.launchpad.net precise/main i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Hit http://ppa.launchpad.net precise/main i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Get:3 https://dist.crystal-lang.org crystal/main amd64 Packages [378 B]
Get:4 https://dist.crystal-lang.org crystal/main i386 Packages [376 B]
Hit http://ppa.launchpad.net precise/main i386 Packages
Hit http://ppa.launchpad.net precise/main amd64 Packages
Hit http://ppa.launchpad.net precise/main i386 Packages
Fetched 3,183 B in 4s (724 B/s)
Reading package lists... Done
W: GPG error: https://dist.crystal-lang.org crystal Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A4EBAC6667697DD2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libgmpxx4ldbl
Suggested packages:
  libgmp10-doc libmpfr-dev
The following NEW packages will be installed:
  crystal libgmp-dev libgmpxx4ldbl
0 upgraded, 3 newly installed, 0 to remove and 275 not upgraded.
Need to get 19.0 MB of archives.
After this operation, 60.0 MB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  crystal
E: There are problems and -y was used without --force-yes

Then a little later

$ crystal --version
/home/travis/.travis/job_stages: line 54: crystal: command not found
$ crystal deps --version
/home/travis/.travis/job_stages: line 54: crystal: command not found

$ crystal deps
/home/travis/.travis/job_stages: line 54: crystal: command not found


The command "crystal deps" failed and exited with 127 during .

Your build has been stopped.

@matiasgarciaisaia
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've just created #4648 to track the GPG issues with the Debian repo. If you can add any available data there (tried to find @Fryguy's travis build, but couldn't), that'll probably help us.

Thanks for bearing with us - loving this community! 💙

@matiasgarciaisaia
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're tracking @ysbaddaden's issue in #4647, just in case you arrive here with that very same issue.

@Sija
Copy link
Contributor

@Sija Sija commented on 3c3d3e2 Jul 8, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@matiasgarciaisaia that's a looooong tomorrow you're havin' ;)

@mverzilli
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know you have no bad intentions, but he's been working non-stop throughout the week to solve the last issues with packages, so in a way it's been a long day for him indeed. @matiasgarciaisaia thanks for your hard work ❤️

@Sija
Copy link
Contributor

@Sija Sija commented on 3c3d3e2 Jul 8, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I second that! Sorry if that come out sarcastic, my only intention was to file a friendly reminder before 0.23.1 will be released :) @matiasgarciaisaia thanks and keep up the good work! 👍

@matiasgarciaisaia
Copy link
Member Author

@matiasgarciaisaia matiasgarciaisaia commented on 3c3d3e2 Jul 8, 2017 via email

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@RX14
Copy link
Contributor

@RX14 RX14 commented on 3c3d3e2 Jul 8, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the future, all changelogs will be PRs (all commits to master will be PRs actually) so that this won't happen again.

Please sign in to comment.