Skip to content


Browse files Browse the repository at this point in the history
Version 0.24.1 (#5358)
  • Loading branch information
RX14 authored and Martin Verzilli committed Dec 13, 2017
1 parent a4ffe5b commit 80a975c
Showing 1 changed file with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions
@@ -1,3 +1,56 @@
# 0.24.1 (TBA)

## New features
- Add ThinLTO support for faster release builds in LLVM 4.0 and above. ([#4367](, thanks @bcardiff)
- **(breaking-change)** Add `UUID` type. `Random::Secure.uuid` has been replaced with `UUID.random`. ([#4453](, thanks @wontruefree)
- Add a `BigDecimal` class for arbitrary precision, exact, decimal numbers. ([#4876]( and [#5255](, thanks @vegai and @Sija)
- Allow `Set` to work as a case condition, which matches when the case variable is inside the set. ([#5269](, thanks @MakeNowJust)
- **(breaking-change)** Change `Time::Format` codes to allow more robust options for parsing sub-second precision times. ([#5317](, thanks @bcardiff)
- Add `Time.utc`, an alias of `` which shortens creating UTC times. ([#5321](, thanks @straight-shoota)
- Add custom extension support to `Tempfile`. ([#5264](, thanks @jreinert)
- Add `reduce` method to `TupleLiteral` and `ArrayLiteral` when using macros. ([#5294](, thanks @javanut13)
- Export a JSON representation of the documentation in the generated output. ([#4746]( and [#5228](, thanks @straight-shoota)
- Make `gc/none` garbage collection compile again and allow it to be enbled using `-Dgc_none` compiler flag. ([#5314](, thanks @ysbaddaden)

## Standard library bugs fixed
- Make `String#[]` unable to read out-of-bounds when the string ends in a unicode character. ([#5257](, thanks @Papierkorb)
- Fix incorrect parsing of long JSON floating point values. ([#5323](, thanks @benoist)
- Replace the default hash function with one resistant to hash DoS. ([#5146](, thanks @funny-falcon)
- Ensure equal numbers always have the same hashcode. ([#5276](, thanks @akzhan)
- Fix struct equality when two structs descend from the same abstract struct. ([#5254](, thanks @hinrik)
- Fix `URI#full_path` not to append a `?` unless the query params are nonempty. ([#5340](, thanks @paulcsmith)
- Fix `HTTP::Params.parse` to parse `&&` correctly. ([#5274](, thanks @akiicat)
- Disallow null bytes in `ENV` keys and values. ([#5216](, thanks @Papierkorb)
- Disallow null bytes in `XML::Node` names and content. ([#5200](, thanks @RX14)
- Fix `IO#blocking=` on OpenBSD. ([#5283](, thanks @wmoxam)
- Fix linking programs in OpenBSD. ([#5282](, thanks @wmoxam)

## Compiler bugs fixed
- Stop incorrectly finding top-level methods when searching for a `super` method. ([#5202](, thanks @lbguilherme)
- Fix parsing regex literals starting with a `;` directly after a call (ex `p /;/`). ([#5208](, thanks @MakeNowJust)
- Correct a case where `Expressions#to_s` could produce invalid output, causing macro expansion to fail. ([#5226](, thanks @asterite)
- Give error instead of crashing when `self` is used at the top level. ([#5227](, thanks @MakeNowJust)
- Give error instead of crashing when using `instance_sizeof` on a generic type without providing it's type arguments. ([#5209](, thanks @lbguilherme)
- Fix parsing calls when short block syntax (`&.foo`) is followed by a newline. ([#5237](, thanks @MakeNowJust)
- Give error instead of crashing when an unterminated string array literal (`%w()`) sits at the end of a file. ([#5241](, thanks @asterite)
- Give error when attempting to use macro yield (`{{yield}}`) outside a macro. ([#5307](, thanks @MakeNowJust)
- Fix error related to generic inheritance. ([#5284](, thanks @MakeNowJust)
- Fix compiler crash when using recursive alias and generics. ([#5330](, thanks @MakeNowJust)
- Fix parsing `foo(+1)` as `foo + 1` instead of `foo(1)` where `foo` was a local variable. ([#5336](, thanks @MakeNowJust)
- Documentation generator: Keep quoted symbol literals quoted when syntax highlighting code blocks in documentation output. ([#5238](, thanks @MakeNowJust)
- Documentation generator: Keep the original delimiter used when syntax highlighting string array literals. ([#5297](, thanks @MakeNowJust)
- Documentation generator: Fix XSS vulnerability when syntax highlighting string array literals. ([#5259](, thanks @MakeNowJust)
- Formatter: fix indentation of the last comment in a `begin`/`end` block. ([#5198](, thanks @MakeNowJust)
- Formatter: fix formatting parentheses with multiple lines in. ([#5268](, thanks @MakeNowJust)
- Formatter: fix formatting `$1?`. ([#5313](, thanks @MakeNowJust)
- Formatter: ensure to insert a space between `{` and `%` characters to avoid forming `{%` macros. ([#5278](, thanks @MakeNowJust)

## Misc
- Fix `Makefile`, CI, and gitignore to use the new documentation path after [#4937]( ([#5217](, thanks @straight-shoota)
- Miscellaneous code cleanups. ([#5318](, [#5341]( and [#5366](, thanks @bew and @mig-hub)
- Documentation fixes. ([#5253](, [#5296](, [#5300]( and [#5322](, thanks @arcage, @icyleaf, @straight-shoota and @bew)
- Fix the in-repository changelog to include 0.24.0. ([#5331](, thanks @sdogruyol)

# 0.24.0 (30-10-2017)

- **(breaking-change)** HTTP::Client#post_form is now ...)
Expand Down

0 comments on commit 80a975c

Please sign in to comment.