github crystal-lang/crystal 1.7.0

latest releases: 1.13.3, 1.13.2, 1.13.1...
20 months ago

Language

  • Add lib functions earlier so that they are visible in top-level macros (#12848, thanks @asterite)

Standard Library

Collection

Concurrency

Crypto

  • (breaking-change) Implement Digest class in Digest::CRC32 and Digest::Adler32 (#11535, thanks @BlobCodes)
  • Fix OpenSSL::SSL::Context::Client#alpn_protocol= (#12724, thanks @jaclarke)
  • Fix HTTP::Client certificate validation error on FQDN (host with trailing dot) (#12778, thanks @compumike)
  • Enable arc4random(3) on all supported BSDs and macOS/Darwin (#12608, thanks @dmgk)

Files

Macros

Networking

Numeric

Runtime

Serialization

Specs

System

Text

Compiler

Codegen

Generics

  • Redefine defs when constant and number in generic arguments are equal (#12785, thanks @HertzDevil)
  • Fix restriction of numeral generic argument against non-free variable Path (#12784, thanks @HertzDevil)

Interpreter

Parser

Semantic

Tools

Docs-generator

  • Fix range literals causing method lookups in docs generator (#12680, thanks @caspiano)
  • Fix method lookup for single char class names (#12683, thanks @caspiano)

Formatter

  • Formatter: document stdin filename argument (-) (#12620, thanks @caspiano)

Other

Infrastructure

Code Improvements

  • Style: Remove redundant begin blocks (#12638, thanks @caspiano)
  • Lint: Fix variable name casing (#12674, thanks @Sija)
  • Lint: Remove comparisons with boolean literals (#12673, thanks @Sija)
  • Lint: Use Object#in? instead of multiple comparisons (#12675, thanks @Sija)
  • Lint: Remove useless assignments (#12648, thanks @Sija)
  • Use Object#in? in place of multiple comparisons (#12700, thanks @caspiano)
  • Style: Remove explicit returns from the codebase (#12637, thanks @caspiano)
  • Lint: Use Enumerable#find!/#index! variants (#12686, thanks @Sija)
  • Style: Use short block notation for simple one-liners (#12676, thanks @Sija)
  • Couple of ameba lint issues fixed (#12685, thanks @Sija)
  • Use context-specific heredoc deliminators (#12816, thanks @straight-shoota)

Don't miss a new crystal release

NewReleases is sending notifications on new releases.