RELEASES & HISTORY

A living Ruby
collection.

Facets has been growing since 2004. Here are the recent releases and a path back through its story.

LATEST RELEASES

Facets 4

Facets 4 continues the modernization begun in 3.2 for Ruby 3.1 and newer. The 3.2.0 release changed enough that it should have been 4.0.0; 4.0.0 makes the next round of changes under the right number.

4.1.008 NOV 2026

LATEST

Out of Ruby's way

Makes the methods Facets shares with ActiveSupport behave as ActiveSupport's do, so it no longer matters which library loads last. Stops Facets from changing what Ruby's own methods do, including Hash#count and Array#shelljoin, and deprecates the block form of Kernel#extend.

Read changes
4.0.102 NOV 2026

Safer shell escaping

Stops facets/shellwords from replacing Ruby's Shellwords.escape with a version that left shell metacharacters unescaped, lets Rails apps that load Facets boot again, and fixes several methods that broke on Ruby 3.

Read changes
4.0.027 SEP 2026

Clearer by design

Makes #try strict and #try! lenient, moves Rails-compatible methods to a new lib/rails area, and schedules every deprecation for removal after 2027-09-30.

Read changes
3.2.215 JUN 2026

Compatibility, polished

Fixes range intersection on Ruby 3.1 and 3.2, restores Range#overlap? where Ruby does not provide it, and corrects Binding#caller_locations argument handling.

Read changes
3.2.114 JUN 2026

Core loading restored

Repairs stale require paths that affected require 'facets' in 3.2.0, and adds a load-path regression check. Also adds OpenDSL and PIC.

Read changes
3.2.0APR 2026

Modern Ruby foundation

Moves the minimum Ruby version to 3.1, adds methods such as Array#to_ranges and String#dashcase, and retires extensions now built into Ruby.

Read migration notes

FROM THE ARCHIVE

Over twenty years
of ideas.

Facets grew out of TomsLib, a handful of useful methods started in July 2002. It was renamed Succ (2003), A.B.C. (2004) and Raspberry (2004) before becoming Ruby Facets in December 2004, with 1.0 following a year later.

These posts are preserved as published. Their install advice and API links describe older Facets releases; use the current guide for 3.x.