The Ruby Changes

This site is dedicated to history of Ruby language evolution. Basically, it is just the same information that each Ruby version’s NEWS file contains, just in more readable and informative manner.

Latest version: 3.1 (3.02.72.62.52.4)

Ruby Evolution: bird-eye view on all significant changes 2.0−3.1, grouped by topic.

Maintainer’s write-up on the creation of the changelogs:

  1. What you can learn by merely writing a programming language changelog
  2. Following the programming language evolution, and taking it personally
  3. Programming language evolution: with all that, we are still flying.

Main goals

  • Full: unlike most of “What’s new in Ruby x.y?” blog posts, information here targets to cover all the NEWS file of current Ruby version;
  • Comprehensive: unlike the NEWS file itself (and most of blog-posts, too), the site provides full context for each change:
    • Where and how it was discussed;
    • Related documentation at ruby-doc.org;
    • Code examples;
    • Reasoning for the change, if known.
  • Concise: given two goals above, content still tries to stay short and focused, so the changes could be quickly navigated through;
  • Well-structured: both regarding order/explanations of each particular change, and design of the site, it is intended to be easily and logically navigated.
  • Open: the source of changelog is available on the GitHub and is open for fixes and suggestions.

Some things to know about the content

  • Structure and grouping of the information, as well as the illustrative examples, are mostly decided by this site’s author. I am trying to make it as useful and logical as humanly possible, but I have my own opinions about what is important, and what is not, what is related and what is not.
    • Maybe “Highlights” section at the top of each version changelog is more subjective than the rest of the content, but it is totally optional, you can skip it.
  • The site is dedicated to the language, not its implementation(s), therefore at the moment it does not include the description of MRI implementation changes, optimizations and internals.
  • …and also some minor behavior changes are excluded.
  • I want to eventually cover Ruby versions down to 1.8, or maybe even earlier, but it is currently work-in-progress, with the first priority of the recent release of Ruby 2.6, and then going down version by version in my free time.
  • UPD 2019-06-06: Ruby 2.5 is now covered too. Despite being 1.5 years old news, I believe it is still important to cover it in the same manner as the recent version was.
  • UPD 2019-10-14: Ruby 2.4 changelog added, and some other content changed. See History for detail.
  • UPD 2019-12-27: Newly released Ruby 2.7 changelog added.
  • UPD 2020-12-25: Newly released Ruby 3.0 changelog added.
  • UPD 2022-01-05: Newly released Ruby 3.1 changelog added.
  • UPD 2022-06-09: Newly released Ruby Evolution bird-eye view added.

The source of the site can be found at GitHub. See also the Contributing section.

Credits and licenses

  • The source of information is NEWS files from Ruby repository.
  • Book theme is initially borrowed from mdBook project.
  • The work in this repository (text, scripts and custom additions to design) is made by Victor Shepelev and should be considered Public Domain.