(#7592) Remove redundant call to String#to_s

Previously, the augeas provider made calls like the following:

 @aug.get(key).to_s

Since the Augeas#get method returns a String not an array, the to_s
call is redundant. (Note the #match method does return an array.)

The augeas tests were stubbing the #get method to return an array in
some places (and a string in others). Prior to 1.9.2, ruby will
automatically convert ["foo"].to_s to "foo", so everything worked as
expected. However, under 1.9.2, ["foo"].to_s becomes "[\"foo\"]".

These failures weren't noticed earlier, because our 1.9.2@allFeatures
jenkins nodes do not have ruby-augeas installed. In other words, tests
that require Puppet.features.augeas? were never running in
Jenkins. The recent change to improve augeas testing, removed the
dependency on this feature being installed, so these tests started
failing.

This commit just removes the redundant call to String#to_s, and
updates the spec tests to match what the Augeas#get method really
returns.
Updating CHANGELOG for 2.7.12rc2
Merge branch '2.7rc' into 2.7.x
Updating puppet.spec for 2.7.11-1, 2.7.11-2
(#7986) Cleanup pkg provider #1

The testing of hash[:error] is apparently dead code because it is never set
to anything different than "ok". Remove the hashkey :missing because it is
never used later.
(#7986) Cleanup pkg provider #2

Switch from Puppet.warning to the warning classmethod. This is mostly
for testing purposes and changes messages produced by puppet slightly.
Instead of

    warning: Failed to match 'pkg list' line foo

The user will now get

    warning: Puppet::Type::Package::ProviderPkg: Failed to match 'pkg
    list' line foo
(#7986) Modify pkg provider to handle publisher

The methods :instances, :query and :latest did not handle pkg list -H
lines correctly when the publisher of a package is not the preferred
publisher.

Modify the parsing method to handle lines with publisher correctly
(#10722) Refactor http_spec to use expectations
(#10722) Add spec to verify that an error is logged on bad http
Merge pull request #561 from pcarlisle/ticket/2.7.x/10722-error-on-bad-http-response

(#10722) report an error on bad HTTTP response to report submission
Merge branch '2.7.x'

* 2.7.x:
  (#10722) Add spec to verify that an error is logged on bad http
  (#10722) Refactor http_spec to use expectations
  Updating CHANGELOG for 2.7.12rc2
  (#7592) Remove redundant call to String#to_s
  (#11988) Work around Augeas reload bug when changing save modes
  (#11988) Don't overwrite symlinks in augeas provider
  (#8312) Fix zypper provider so ensure => 'latest' now works
  (#12844) Fix a unit test relating to lockfiles
  (#12914) Allow puppet to be interrupted while waiting for child
  (#12933) Better error message when agent is administratively disabled
  (#7592) Remove redundant call to String#to_s
  (#12844) Agent lockfiles: backwards compatibility with 2.7.10/2.7.11
  (#10722) Display errors on HTTP report submission failures
  Revert "Merge remote-tracking branch 'masterzen/tickets/2.7.x/3757' into 2.7.x"
  Revert "(#12844) Backwards compatibility for 'puppet agent --enable'"
  (#11988) Work around Augeas reload bug when changing save modes
  (#11988) Don't overwrite symlinks in augeas provider
  (#12881) Fix cron type default name error on windows
  (#12844) Backwards compatibility for 'puppet agent --enable'
  (#8312) Fix zypper provider so ensure => 'latest' now works

Conflicts:
	lib/puppet/provider/augeas/augeas.rb
	lib/puppet/reports/http.rb
	lib/puppet/util/pidlock.rb
	spec/unit/application/agent_spec.rb
	spec/unit/provider/augeas/augeas_spec.rb
	spec/unit/reports/http_spec.rb
(#12981) Fix external subcommand exit status
Merge pull request #536 from pcarlisle/ticket/2.7.x/9491-filesetting-munging

(#9491) Preserve trailing slashes in FileSettings
Merge pull request #544 from pcarlisle/ticket/master/12763-reloadable-plugins

Ticket/master/12763 reloadable plugins
(#12960) Fix puppet resource <type> if type has no providers

puppet resource type calls the instances method of the type class. The
instances method then calls providers_by_source which can fail if the
following conditions are true

    1) there is at least one provider defined for the type
    2) all providers are unsuitable

If both requirements are met, the method self.defaultprovider will
return nil and we get the following error message (provided by Ben Ford)

    # puppet resource maillist
    puppet/type.rb:902:in `providers_by_source': undefined method `source'
    for nil:NilClass (NoMethodError)

The fix handles the case where defaultprovider can be nil
Fix order dependent spec failure caused by formats_spec

This was adding a feature for pson inside of a block that already depended on
the pson feature. This seems unnecessary.
Merge pull request #560 from stschulte/ticket/2.7.x/7986

(#7986) Modify pkg provider to handle publisher
Fix hash comparison under RSpec with 1.8.5

The behaviour of eql isn't quite right, and == actually does the right check,
on all versions of Ruby / RSpec.  This accepts that, and stops using eql in
rspec checks.

Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>
Merge pull request #566 from daniel-pittman/maint/2.7.x/fix-pkg-provider-tests-on-1.8.5

Maint/2.7.x/fix pkg provider tests on 1.8.5
missing: )