puppetlabs/puppet — pull request #3379 by joshcooper (2014-12-04 18:56:40+00:00)
Title: (PUP-2563) Gracefully exit on ruby 187

Previously, running puppet on ruby 187 would fail in an unhelpful way:

in `const_defined?': wrong number of arguments (2 for 1) (ArgumentError)

Since users have historically installed puppet using whatever ruby
version happens to be installed, we want to ensure puppet displays a
useful error message that ruby 1.9.3 or greater is required, and exits
gracefully.

This commit puts the check in lib/puppet.rb, which handles the various
puppet entry points: when executing the `puppet` command, when using
puppet as a library, e.g. `require 'puppet'`, and via passenger's
config.ru.