Don't keep Gemfile.lock checked in.
Add acceptance test for report processing
Add vendoring system into puppet

(Revert "Revert "Merge pull request #1542 from hlindberg/vendor"")

This reverts commit 546dac12386865c00c172ba2e7b3f6f747434428, which had
reverted the original commit adding vendoring support. We now need it.
Fix installation of vendored libs

Vendored libs were getting the path component 'lib' removed when only the
leading 'lib' should be removed.
Vendor safe_yaml 0.9.2
Add acceptance test for report processing

This replaces a test in the old "unit" suite that was broken but testing dead
code.
Add vendoring system into puppet

This adds support to Puppet for vendoring libraries.
Fix installation of vendored libs

Vendored libs were getting the path component 'lib' removed when only the
leading 'lib' should be removed.
Vendor safe_yaml 0.9.2
(maint) Add an integration spec for agent logging.

Checks which loggers are initialized, and what the log level is for all
combinations of --onetime, --daemonize, --no-daemonize, --verbose,
--debug, and --logdest called on the agent.

A simple patch for #15187 had unintended side effects to logging
behavior which were hard to track down.  This test is intended to give
us visibility on how we expect agent logging to behave and whether or
not this has changed.

There is also a minor change to Puppet::Application#setup_logs that
separates assigning a console log for verbose/debug from setting the
log_level, because this was where one of the bugs was hidden.
(maint) Don't try to invoke a constant as a method

While methods on constants can be invoked with the scope resolution
operator, EG `SemVer::valid?`, the reverse isn't true for retrieving
constants. This fixes the lookup of the SemVer::MIN constant.
(maint) expand flag constants for clarity

Abbreviations for the many flags under test were difficult to read.
This expands them to the full flag names.
(#12361) Remove masterlog option

Pull the `masterlog` configuration option as it is unused and causes confusion.
Also, re-word the description of a test in `webrick_spec.rb` as it is testing
the behavior of `masterhttplog` and not `masterlog`.
Change hiera_include to properly call include with an array of arguments

Before this change hiera includes which looked up an empty array
resulted in this error:

    ArgumentError: include(): Wrong number of arguments given (0 for minimum 1)

Now hiera includes properly allow for a lookup that results in an empty
array

This regression was caused by the arity checks committed in
9ed6fcea48591cda58db1379b58cd39dfbdca684
Merge pull request #1686 from Sharpie/12361-remove-masterlog-setting

(#12361) Remove masterlog option
Revert "Merge pull request #1686 from Sharpie/12361-remove-masterlog-setting"

This reverts commit a664a0e7be708a684d56aea9892cf38e148feeea, reversing
changes made to a6e746d1a5df96f59ea0fdbe13345a5fcdacc7ff.

Removing the `masterlog` option is backwards incompatible, as the option
could be passed as a command line switch and if used after this commit
would cause running the master to fail.
(#20584) Only deserialize expected objects from YAML

Puppet no longer allows the base YAML library to deserialize arbitrary
objects. By using the safe_yaml package, we deserialize only primitive data
structures. The remainder of the deserialization process is now unified
between YAML and PSON. This code will explicitly create only the expected
objects from the primitive data types.

As a side effect of this change the code for REST indirections now allows
specialized deserialization routines per method. The save method now returns
nil by default, and is only overridden in a couple of cases where Puppet was
using the return value to preserve previous behavior.
(#20584) Only deserialize expected objects from YAML

Puppet no longer allows the base YAML library to deserialize arbitrary
objects. By using the safe_yaml package, we deserialize only primitive data
structures. The remainder of the deserialization process is now unified
between YAML and PSON. This code will explicitly create only the expected
objects from the primitive data types.

As a side effect of this change the code for REST indirections now allows
specialized deserialization routines per method. The save method now returns
nil by default, and is only overridden in a couple of cases where Puppet was
using the return value to preserve previous behavior.
(#19112) deploy manpages in -common package

This mirrors Debian's packaging and allows upgrades from their packages to
ours.
(maint) remove fact stringifying deprecation warning

Fact stringifying is on by default, but we're issuing a deprecation
warning on stringified facts. Since it looks like we'll have to
stringify facts for a while, this commit removes the deprecation
warning.

This is an update of GH-1658 that takes the comments into account.