Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.13.2 #822

Merged
merged 1 commit into from
Aug 20, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 55 additions & 0 deletions _releases/2024-08-20-crystal-1.13.2-released.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
title: Crystal 1.13.2 is released!
version: 1.13.2
date: 2024-08-20
author: straight-shoota
---
We are announcing a new patch release of the Crystal [1.13 series](/_releases/2024-07-09-1.13.0-released.md) with a couple of important bug fixes.

Pre-built packages are available on [GitHub Releases](https://github.com/crystal-lang/crystal/releases/tag/1.13.2)
and our official distribution channels.
See [crystal-lang.org/install](https://crystal-lang.org/install/) for
installation instructions.

## Stats

This release includes [5 changes since 1.13.1](https://github.com/crystal-lang/crystal/pulls?q=is%3Apr+milestone%3A1.13.2)
by 2 contributors. We thank all the contributors for all the effort put into
improving the language! ❤️

## Changes

This release fixes two compiler bugs which became apparent with the upgrade to LLVM 18.
Since LLVM 18 the alignment of some types has changed (e.g. `Int128` goes from 8 to 16 byte alignment).
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
Since LLVM 18 the alignment of some types has changed (e.g. `Int128` goes from 8 to 16 byte alignment).
Since the release of LLVM 18, the alignment of some types has changed (e.g. `Int128` goes from 8 to 16 byte alignment).

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 don't see the significance.

The compiler didn't expect an alignment bigger than 8 bytes in some cases.
These misalignments are now fixed ([#14906], [#14843]).

*Thanks [@HertzDevil]*

Other bug fixes are atomic allocation for `ReferenceStorage(T)` if `T` has no inner pointers ([#14845])
and explicitly clearing deleted `Hash::Entry` ([#14862]).

*Thanks [@HertzDevil]*

[#14862]: https://github.com/crystal-lang/crystal/pull/14862
[#14845]: https://github.com/crystal-lang/crystal/pull/14845
[#14906]: https://github.com/crystal-lang/crystal/pull/14906
[#14843]: https://github.com/crystal-lang/crystal/pull/14843

For more details, visit the [full changelog](https://github.com/crystal-lang/crystal/releases/tag/1.13.2).

If you find any further issues, please [report them](https://github.com/crystal-lang/crystal/issues/).

---

> **THANKS:**
> We have been able to do all of this thanks to the continued support of [84codes](https://www.84codes.com/) and every other [sponsor](/sponsors).
> To maintain and increase the development pace, donations and sponsorships are
> essential. [OpenCollective](https://opencollective.com/crystal-lang) is
> available for that.
>
> Reach out to [[email protected]](mailto:[email protected])
> if you’d like to become a direct sponsor or find other ways to support Crystal.
> We thank you in advance!

[@HertzDevil]: https://github.com/HertzDevil