(#22529) Update acceptance test for regex fix and solaris

Confine solaris provider which does not implement purgeable, and place
the confine around the whole agents apply block so that it actually runs
on a confined subset of hosts.

Also fix the too restrictive regex which was missing host names with
hyphens and was insensitive to escape sequences (escape sequences are
very sensitive by nature and easily offended).
(Maint) Fixup whitespace

Remove whitespace issues
Merge branch 'issue/stable/22529_fix_acceptance_regex' into stable

* issue/stable/22529_fix_acceptance_regex:
  (Maint) Fixup whitespace
  (#22529) Update acceptance test for regex fix and solaris
(Maint) Remove spurious subproject commit line

This should not be here.
(#22608) Restore the ability for master to accept pson file backups

Commit 769dcdf for #22375 removed the ability for newer masters to
accept pson encoded file backups from older agents.

This commit ensures that masters can deserialize `s` or `pson` encoded file
backups, while agents will serialize using `s` by default.

It also restores the ability to serialize to pson, but adds a
deprecation warning if that happens. Since pson is not the
`default_format` the agent will never serialize file bucket files to
pson.
Merge pull request #1919 from joshcooper/ticket/stable/22608-accept-pson-file-backups

(#22608) Accept pson file backups
(Maint) Fix typo in method name

Acceptance test was failing trying to call confine_block, which doesn't
exist, need to call confine instead.
(packaging) Update PUPPETVERSION for 3.3.1-rc1
(#22652) Parse query strings in rack w/o rack

Rack does not actually support parsing multiple valued query strings
into an array of values (see https://github.com/rack/rack/pull/519).
This is not going to be supported before rack 2.0, but we need this
behavior in order to not have to deal with YAML query parameters.

This changes the rack based query parameter parsing to use CGI.parse
instead of the built in rack semantics (which also has a large number of
other semantics, which we weren't using). As a note, it does not appear
that the behavior of rack's query parameter parsing is documented
anywhere.
(#22652) Restore rack parsing of POST body parameters

The first pass at the fix for #22652 fixed ignore handling by fixing
support for multi-valued parameters in a GET query_string (i.e. by returning
them as an array); however, it inadvertently broke parsing of parameters
in a POST body, e.g. as found in the catalog endpoint POST.

This patch addresses parameters in either case.  As a footnote however,
note that multi-valued parameters in a POST body (which we don't use) would not
return them as an array.

This patch also adds two specs tests, one to catch the issue in the first pass fix
(POST parameters not parsed), and one to flag the state of POST multi-valued param
parsing (does not return array).
(#22652) Add be_one_of matcher (copped from pcarlisle)
(#22652) Tighten up spec for multi-valued params in a POST body
Merge pull request #1946 from kylog/ticket/stable/22652-multi-valued-param

(#22652) multi valued parameter support for rack