This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
Overview of branches in the repository
Every feature and third party patch in Ruby Enterprise Edition is stored in a separate branch, in order to make it easier to merge individual patches back upstream. This page describes the purpose of each branch, and describes which branch is based on which. The branches are displayed here as a tree, and child branches are based on parent branchs.
- master: just the source of Ruby 1.8.6-p286.
- copy_on_write: patches for making the garbage collector copy-on-write friendly.
- mbari: Brent Roman’s MBARI patches.
- ruby_engine: adds a RUBY_ENGINE constant so that applications can determine the Ruby interpreter that they’re running on. This constant is the result of this discussion
and is available in all newer Ruby interpreters. Both MRI and Ruby Enterprise Edition sets this constant to"ruby". - railsbench: contains the RailsBench garbage collector tuning patches, as well as Sylvain Joyeux’s object allocation patch.
- single_threading_fix: Contains the SIGVTALRM single threading fix, originally written by Joe Damato and Aman Gupta and backported to Ruby 1.8.6 by Andreas Fuchs.
- zero_copy_context_switch: Joe Damato’s and Aman Gupta’s zero-copy context switching patch.
- ruby_engine: adds a RUBY_ENGINE constant so that applications can determine the Ruby interpreter that they’re running on. This constant is the result of this discussion
- caller_for_all_threads: patch by Philippe Hanrigou. It adds a function,
caller_for_all_threads, which allows you to see the backtraces of all Ruby threads.
- mbari: Brent Roman’s MBARI patches.
- bugfix_backports: Contains backported Ruby bug fixes.
- copy_on_write: patches for making the garbage collector copy-on-write friendly.
The merge branch is a merger of all of the above branches. Derived from the ‘merge’ branch is the release branch, which also includes:
- The tcmalloc memory allocator.
- The Ruby Enterprise Edition installer.
- The Ruby Enterprise Edition documentation.
- Patches for making memory allocation calls in some Ruby extensions compatible with OS X’s two-level symbol namespacing.
The downloadable tarballs and packages on the Ruby Enterprise Edition website are based on the release branch.
The following branches are unused:
- heap_freezing: this was an experiment and is not included in the official Ruby Enterprise Edition releases.
- misc_patches: various minor experimental patches.
- sparc_optimizations: Darryl Gove’s and Miriam Blatt’s Sparc optimization patches. This was made obsolete by the MBARI patches.







