
When the DBM database cannot be read by the current version of Ruby's DBM library (due to corruption or another incompatibility) it segfaults or freezes which takes down the entire Homebrew Ruby process. This isn't desirable so instead perform a shell out with the Homebrew Ruby to see if it can read the DBM database before we try to use the information. If this hangs or crashes: silently delete the database and recreate it.
Library
This directory contains all the code run by the official brew
and brew cask
commands in Homebrew
and all formulae (package descriptions) in taps (repositories containing formulae) in Taps
subdirectories.