puppetlabs/puppet — pull request #174 by stschulte (2011-10-23 22:05:30+00:00)
Title: Ticket/2.7.x/10237

If we specify array_matching => all for a property and the should value
is an empty array I would expect that puppet removes any possible is
value instead of ignoring the property entirely. Example taken from
issue #10237:

k5login {'/root/.k5login':
principals => []
}

With this patch applied we do not ignore the principals property.
Instead we do remove any principal that is mentioned in
`/root/.k5login` (in my opinion the expected behaviour).

This change effects other types that use :array_matching => all
as well and is potentially dangerous if we have a default value
of [] somewhere. But that does not seem to be the case.