Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
(Modules 4377) Causes ensure_packages to accept concurrent declarations with ensure => 'present' and 'installed'
|
|
(MODULES-5003) file_line fix all broken lines
|
|
(maint) Stdlib::Compat::Integer accepts numbers with newlines apparently
|
|
|
|
|
|
|
|
|
|
|
|
defined_with_params() now returns false for defined types, causing
duplicate resources when using ensure_resources().
Introduced by 4f19c27 in PE-20308.
|
|
|
|
- `defined_with_params` calls `findresource(reference.to_s)`
- `findresource` is
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/parser/compiler.rb#L407
and points to
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/resource/catalog.rb#L352
- This calls `Puppet::Resource.new` with the type
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/resource/catalog.rb#L366
- This ends up calling `resource_type` via
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/resource.rb#L317-L319
and that ends up declaring the type via the autoloader api at
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/resource.rb#L390
- But why does the autoloader API fail to find it in the current
environment?
- Okay, so when the autoloader is trying to find the type, it uses the
typeloader to look it up in the current environment
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/metatype/manager.rb#L171
- this calls `get_file` and `mark_loaded`
https://github.com/puppetlabs/puppet/blob/4.8.1/lib/puppet/util/autoload.rb#L64-L67
Suggested workaround is to pass a literal type instead of a string to
`findresource` to fix in stdlib, and also to fix loading/requiring of
type in core puppet.
This seems to affect more recent versions of puppet, so fallback to
original behavior on pre-4.5
|
|
|
|
Add glob function
|
|
The fix for PUP-7371 adds the missing `Undef` into the error message
being tested in type aliases specs, fixing the following failure against
Puppet's master branch:
test::string rejects other values [] should fail to compile and raise an error matching /parameter 'value' expects a String/
Failure/Error: it { is_expected.to compile.and_raise_error(/parameter 'value' expects a String/) }
error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Test::String]: parameter 'value' expects a value of type Undef or String, got Array at line 2:1 on node example
# ./spec/aliases/string_spec.rb:27:in `block (5 levels) in <top (required)>'
|
|
(MODULES-4528) Use versioncmp to check Puppet version for 4.10.x compat
|
|
|
|
Addition of new length function
|
|
|
|
`Puppet.version.to_f` on Puppet 4.10.0 will evaluate to `4.1`, causing
test and behavioural changes when conditionals check that the version is
equal or greater than versions such as `4.3`.
Version comparisons that are vulnerable to this have been changed to use
Puppet's versioncmp implementation, while most others only check for
for major version boundaries which is safe.
|
|
* (#FM-6068) allow file encoding to be specified
Add a new parameter `encoding` to allow non UTF-8 files to specify a file encoding. This prevents receiving the error message "invalid byte sequence in UTF-8" when special characters that are not UTF-8 encoded appear in the input stream, such as the copyright symbol.
* (#FM-6068) allow file encoding to be specified
Added docs and tests as requested
|
|
(FM-6086) - Unit tests for Resource Types
|
|
|
|
|
|
(FM-6063) - Unit tests for high effort functions
|
|
|
|
* Improves regex to catch some valid (but less
known) ipv6 strings, mostly those which are a mix
of ipv6 strings and embedded ipv4 numbers
* Regex inspired by the following:
* https://github.com/sindresorhus/ip-regex
* https://gist.github.com/cpetschnig/294476
* The original Dartware forum thread where
someone originally created this beast of a regex,
now lost except to archive.org
* Whilst we're here, we can add the more tricky
ipv6 strings to the existing functions to validate
* Luckily, the `ipaddr` native ruby library used
in the original functions already supports these
|
|
|
|
|
|
(FM-6054) - Unit tests for low effort functions
|
|
|
|
tphoney/remove_unsupported_platforms_and_future_parser
remove unsupported platforms and future parser
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(FM-6019) - i18N tests for Spike
|
|
Allow test module metadata.json to be read
|
|
Fix acceptance test failure "Hiera is not a class"
|
|
Due to [BKR-969](https://tickets.puppetlabs.com/browse/BKR-969) the global `Hiera`
symbol is corrupted. Loading puppet before beaker fixes that.
|
|
Fix unsupported data type error with rspec-puppet master
|
|
|
|
Since puppetlabs/puppet@f2e8e66, the test module's metadata.json is also
read causing expectation failures. Like 5c51463, permit it to be read by
Puppet.
|
|
The symbol used in the value of the facts hash is not a valid type of
value for facts, and results in the following error since
rspec-puppet@d50acf0e.
Puppet::Error:
Unsupported data type: 'Symbol'
# puppet/lib/puppet/parser/scope.rb:788:in `deep_freeze'
# puppet/lib/puppet/parser/scope.rb:781:in `block in deep_freeze'
# puppet/lib/puppet/parser/scope.rb:781:in `each'
# puppet/lib/puppet/parser/scope.rb:781:in `deep_freeze'
# puppet/lib/puppet/parser/scope.rb:764:in `set_facts'
# puppet/lib/puppet/parser/compiler.rb:850:in `set_node_parameters'
# puppet/lib/puppet/parser/compiler.rb:166:in `block (2 levels) in compile'
# puppet/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'
# puppet/lib/puppet/util/profiler.rb:51:in `profile'
# puppet/lib/puppet/parser/compiler.rb:166:in `block in compile'
# puppet/lib/puppet/context.rb:65:in `override'
# puppet/lib/puppet.rb:293:in `override'
# puppet/lib/puppet/parser/compiler.rb:162:in `compile'
# rspec-puppet/lib/rspec-puppet/example/function_example_group.rb:161:in `build_compiler'
The fact's presence doesn't change the behaviour, so remove it.
|
|
|
|
|