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.0

Facets 4.0 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.0.027 SEP 2026

LATEST

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.