Add the s3_enabled property to the yumrepo type

This allows you to access S3 repos using the yum-s3-iam plugin
(#21470) Change validation of "storeconfigs" to reflect runtime state.

The problem was that the validator is written with static validation
in mind - not considering if storeconfigs are on or not.
Since we are currently only using the validator to validate for the
current runtime, this commit changes the behavior to consider the
runtime storeconfigs state and marking the related issues as :ignored if
storeconfigs is on.

A user that wants to use Puppet as a library will need to configure the
validation / issue options accordingly (the manifests will be validated
as per the settings of the puppet runtime used to run the validation).

This is easily done by using a different severity producer.
(maint) Remove unused exception class
(maint) re-indent file
(#21307) Refactor WatchedFile class

The watchedfile class was extracted from another location but had some
remnants of old behavior. In addition it would treat missing files as
always changed, which could lead to undesired behavior around trying to
reload missing files.

This commit refactors the WatchedFile to use a single timestamp value
and assume that the file is unchanged if the file timeout period has not
elapsed.

In addition this commit also treats file absence as a valid state.  If a
file is missing between two checks it will be treated as unchanged.
(packaging) Update PUPPETVERSION for 3.2.3

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge branch 'release/3.2.3' into stable

* release/3.2.3:
  (packaging) Update PUPPETVERSION for 3.2.3
(#7911) Simplified libs section of installer

This will make sure that all files in the source lib directory
make it into the ruby sitelib directory

As the type of files being included in the lib directory has
grown, rather than call each filetype out specifically in the
installer (ie globs like lib/**/*.rb, lib/**/*.py), it seems
easier to just move everything from the source lib directory
to the the sitelib directory during installation.

The new glob lib/**/* now includes directories in the glob
list.  This caused an error in do_libs because File.install
would be called on a directory resulting in a 0 byte file being
placed where a directory should have been.  The error is generated
on the second pass of the loop when File.makedirs is called, and
the file exists and is NOT a directory.  This is the reason for
skipping directories in the do_libs section.
(#21087) Debug output for all augeas error nodes

Adds debug output in cases where augeas has error nodes without children. This
specifically addresses the case where an incorrect lens name is specified, and
may provide better output for other cases as well.

Thanks to Jan Vansteenkiste for the implementation of the fix.
(packaging) Remove createpackage.sh from puppet

This shell script has been replaced and superceded by the packaging rake tasks.
Running `rake package:bootstrap` followed by `rake package:apple` will build a
dmg locally in a similar manner to this script.
Merge pull request #1712 from jjulien/missing_config_7911

(#7911) Simplified libs section of installer
properly handle max version on ppc debian
(#21659) Links are seen as files and get bucketed.

Links are seen as files and get bucketed.jThe code that checks the
filetype uses File.stat(file).type. This for some reason returns that it
is a file:

  irb(main):001:0> File.stat(‘wellthisisembarrasing’).ftype => "file"

File.lstat(file) return the correct value:

  irb(main):002:0> File.lstat(‘wellthisisembarrasing’).ftype => "link"

File.lstat(file) should be used instead.
(maint) Expect unused filebucket to be absent

In Ruby 1.8.7 `Find.find` will ignore all given paths that are not
present, while Ruby 1.9.1+ `Find.find` will raise an exception if any of
the given paths are not present.

Before 6ed43ec a test could create an empty filebucket hierarchy, which
was then inspected to ensure it had no files. 6ed43ec fixed the
underlying cause which stopped creating the filebucket, and trying to
call Find.find on the absent directory on Ruby 1.9.1+ will fail.

This commit replaces the `Find.find` invocation with an assertion that
the filebucket directory is absent.
Merge branch 'pull-1762'

This closes GH-1762
Pin redcarpet gem to the last version that supported Ruby 1.8
Merge branch 'stable'

* stable:
  Pin redcarpet gem to the last version that supported Ruby 1.8
  (#7911) Simplified libs section of installer
  (packaging) Update PUPPETVERSION for 3.2.3
(Bug #21768) Update puppet for F19

Prior to this commit, there was no support for Fedora 19. This
commit modifies build_defaults to include F19 in the mocks,
and removes the ruby(abi) requirement. This is because F19 no
longer provides ruby abi.
(#21801) Normalize headers that come through Rack

Previously, although we stripped the leading `HTTP_` from
HTTP headers which Rack turned into environment variables,
we did not restore hyphens from underscores.

The user-visible consequence of this was that the match
to detect whether profiling was request from an agent would
not work when running under Passenger, but did work under
Webrick.

This commit updates the translation routine to turn underscores
back into hyphens. It also fixes an erroneous test fixture; the
sample header 'HTTP_X-Custom-Header' would never been seen in
the wild because environment variables are not allowed to have
hyphens.
Refactor to remove 'LogPath' module

In preparation for #21805, I stumbled across some coded that
seemed unnecessarily complex.  Since my changes for #21805
will end up interacting with some of this code, I decided
it was worth a quick refactor.  This commit removes the
`Puppet::Util::LogPaths` module and simplifies all of the
code that was interacting with it.