puppet 8.5.1-universal-darwin → 8.7.0-universal-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (581) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +6 -2
  3. data/Gemfile.lock +55 -48
  4. data/Rakefile +45 -22
  5. data/examples/hiera/README.md +68 -57
  6. data/examples/hiera/data/common.yaml +12 -0
  7. data/examples/hiera/data/dc1.yaml +6 -0
  8. data/examples/hiera/hiera.yaml +15 -0
  9. data/examples/hiera/modules/ntp/data/common.yaml +4 -0
  10. data/examples/hiera/modules/ntp/hiera.yaml +9 -0
  11. data/examples/hiera/modules/ntp/manifests/config.pp +16 -4
  12. data/examples/hiera/modules/ntp/templates/ntp.conf.epp +3 -0
  13. data/examples/hiera/modules/users/manifests/common.pp +7 -2
  14. data/examples/hiera/modules/users/manifests/dc1.pp +7 -2
  15. data/examples/hiera/site.pp +1 -1
  16. data/ext/project_data.yaml +0 -45
  17. data/ext/windows/service/daemon.rb +49 -55
  18. data/lib/hiera/scope.rb +3 -3
  19. data/lib/hiera_puppet.rb +1 -1
  20. data/lib/puppet/agent/disabler.rb +1 -1
  21. data/lib/puppet/application/agent.rb +2 -2
  22. data/lib/puppet/application/apply.rb +2 -2
  23. data/lib/puppet/application/describe.rb +6 -6
  24. data/lib/puppet/application/device.rb +99 -100
  25. data/lib/puppet/application/doc.rb +1 -1
  26. data/lib/puppet/application/face_base.rb +7 -7
  27. data/lib/puppet/application/filebucket.rb +1 -1
  28. data/lib/puppet/application/lookup.rb +5 -5
  29. data/lib/puppet/application/resource.rb +10 -3
  30. data/lib/puppet/application/ssl.rb +3 -3
  31. data/lib/puppet/application.rb +16 -18
  32. data/lib/puppet/coercion.rb +1 -1
  33. data/lib/puppet/configurer/downloader.rb +9 -4
  34. data/lib/puppet/configurer/fact_handler.rb +12 -13
  35. data/lib/puppet/configurer.rb +16 -18
  36. data/lib/puppet/confine/feature.rb +1 -1
  37. data/lib/puppet/confine/variable.rb +1 -1
  38. data/lib/puppet/confine.rb +2 -2
  39. data/lib/puppet/confine_collection.rb +1 -1
  40. data/lib/puppet/confiner.rb +2 -2
  41. data/lib/puppet/daemon.rb +4 -3
  42. data/lib/puppet/datatypes.rb +5 -6
  43. data/lib/puppet/defaults.rb +14 -8
  44. data/lib/puppet/environments.rb +3 -7
  45. data/lib/puppet/error.rb +3 -3
  46. data/lib/puppet/external/dot.rb +42 -34
  47. data/lib/puppet/face/catalog/select.rb +1 -1
  48. data/lib/puppet/face/epp.rb +7 -9
  49. data/lib/puppet/face/help.rb +12 -12
  50. data/lib/puppet/face/module/changes.rb +1 -3
  51. data/lib/puppet/face/module/list.rb +37 -37
  52. data/lib/puppet/face/node/clean.rb +1 -1
  53. data/lib/puppet/face/parser.rb +6 -8
  54. data/lib/puppet/face/report.rb +5 -7
  55. data/lib/puppet/facter_impl.rb +1 -1
  56. data/lib/puppet/feature/base.rb +9 -11
  57. data/lib/puppet/feature/pe_license.rb +1 -1
  58. data/lib/puppet/feature/ssh.rb +1 -1
  59. data/lib/puppet/feature/telnet.rb +3 -5
  60. data/lib/puppet/feature/zlib.rb +1 -1
  61. data/lib/puppet/ffi/windows/constants.rb +1 -1
  62. data/lib/puppet/ffi/windows/functions.rb +2 -2
  63. data/lib/puppet/ffi/windows/structs.rb +3 -3
  64. data/lib/puppet/file_bucket/dipper.rb +4 -4
  65. data/lib/puppet/file_bucket/file.rb +4 -4
  66. data/lib/puppet/file_serving/base.rb +5 -5
  67. data/lib/puppet/file_serving/configuration/parser.rb +9 -9
  68. data/lib/puppet/file_serving/configuration.rb +3 -3
  69. data/lib/puppet/file_serving/fileset.rb +13 -13
  70. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  71. data/lib/puppet/file_serving/metadata.rb +13 -9
  72. data/lib/puppet/file_serving/mount/file.rb +6 -6
  73. data/lib/puppet/file_serving/mount/locales.rb +2 -4
  74. data/lib/puppet/file_serving/mount/pluginfacts.rb +2 -4
  75. data/lib/puppet/file_serving/mount/plugins.rb +2 -4
  76. data/lib/puppet/file_serving/mount.rb +1 -1
  77. data/lib/puppet/file_system/file_impl.rb +3 -3
  78. data/lib/puppet/file_system/memory_impl.rb +1 -1
  79. data/lib/puppet/file_system/path_pattern.rb +1 -1
  80. data/lib/puppet/file_system/uniquefile.rb +17 -16
  81. data/lib/puppet/file_system/windows.rb +26 -18
  82. data/lib/puppet/forge/cache.rb +2 -2
  83. data/lib/puppet/forge/errors.rb +1 -1
  84. data/lib/puppet/forge/repository.rb +2 -2
  85. data/lib/puppet/forge.rb +13 -19
  86. data/lib/puppet/functions/abs.rb +2 -2
  87. data/lib/puppet/functions/camelcase.rb +1 -1
  88. data/lib/puppet/functions/compare.rb +2 -2
  89. data/lib/puppet/functions/contain.rb +1 -1
  90. data/lib/puppet/functions/defined.rb +2 -2
  91. data/lib/puppet/functions/dig.rb +1 -1
  92. data/lib/puppet/functions/eyaml_lookup_key.rb +11 -13
  93. data/lib/puppet/functions/get.rb +1 -1
  94. data/lib/puppet/functions/hocon_data.rb +3 -5
  95. data/lib/puppet/functions/import.rb +1 -1
  96. data/lib/puppet/functions/json_data.rb +4 -6
  97. data/lib/puppet/functions/max.rb +2 -2
  98. data/lib/puppet/functions/min.rb +2 -2
  99. data/lib/puppet/functions/new.rb +1 -1
  100. data/lib/puppet/functions/reduce.rb +6 -10
  101. data/lib/puppet/functions/regsubst.rb +2 -2
  102. data/lib/puppet/functions/require.rb +1 -1
  103. data/lib/puppet/functions/yaml_data.rb +11 -13
  104. data/lib/puppet/functions.rb +32 -37
  105. data/lib/puppet/generate/type.rb +2 -2
  106. data/lib/puppet/gettext/config.rb +9 -9
  107. data/lib/puppet/graph/rb_tree_map.rb +31 -23
  108. data/lib/puppet/graph/relationship_graph.rb +12 -12
  109. data/lib/puppet/graph/simple_graph.rb +8 -10
  110. data/lib/puppet/http/client.rb +1 -1
  111. data/lib/puppet/http/dns.rb +4 -4
  112. data/lib/puppet/http/external_client.rb +1 -1
  113. data/lib/puppet/http/factory.rb +1 -1
  114. data/lib/puppet/http/proxy.rb +15 -15
  115. data/lib/puppet/http/redirector.rb +6 -2
  116. data/lib/puppet/http/resolver.rb +2 -2
  117. data/lib/puppet/http/retry_after_handler.rb +2 -2
  118. data/lib/puppet/http/service/ca.rb +1 -1
  119. data/lib/puppet/http/service/compiler.rb +4 -4
  120. data/lib/puppet/http/service/file_server.rb +1 -1
  121. data/lib/puppet/http/service/report.rb +2 -2
  122. data/lib/puppet/http/service.rb +9 -13
  123. data/lib/puppet/http/session.rb +1 -1
  124. data/lib/puppet/http/site.rb +1 -1
  125. data/lib/puppet/indirector/catalog/compiler.rb +44 -45
  126. data/lib/puppet/indirector/catalog/rest.rb +7 -5
  127. data/lib/puppet/indirector/catalog/store_configs.rb +1 -1
  128. data/lib/puppet/indirector/exec.rb +2 -2
  129. data/lib/puppet/indirector/face.rb +7 -9
  130. data/lib/puppet/indirector/fact_search.rb +1 -1
  131. data/lib/puppet/indirector/facts/facter.rb +6 -6
  132. data/lib/puppet/indirector/facts/json.rb +1 -1
  133. data/lib/puppet/indirector/facts/store_configs.rb +1 -1
  134. data/lib/puppet/indirector/file_bucket_file/file.rb +17 -17
  135. data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -3
  136. data/lib/puppet/indirector/file_content/rest.rb +1 -1
  137. data/lib/puppet/indirector/file_metadata/rest.rb +1 -1
  138. data/lib/puppet/indirector/hiera.rb +1 -1
  139. data/lib/puppet/indirector/indirection.rb +27 -29
  140. data/lib/puppet/indirector/json.rb +4 -4
  141. data/lib/puppet/indirector/memory.rb +2 -2
  142. data/lib/puppet/indirector/msgpack.rb +5 -5
  143. data/lib/puppet/indirector/node/store_configs.rb +1 -1
  144. data/lib/puppet/indirector/none.rb +1 -1
  145. data/lib/puppet/indirector/report/json.rb +1 -1
  146. data/lib/puppet/indirector/report/yaml.rb +1 -1
  147. data/lib/puppet/indirector/request.rb +4 -4
  148. data/lib/puppet/indirector/resource/ral.rb +2 -4
  149. data/lib/puppet/indirector/resource/store_configs.rb +1 -1
  150. data/lib/puppet/indirector/terminus.rb +4 -4
  151. data/lib/puppet/indirector/yaml.rb +3 -3
  152. data/lib/puppet/info_service/class_information_service.rb +5 -8
  153. data/lib/puppet/info_service/task_information_service.rb +6 -7
  154. data/lib/puppet/interface/action.rb +5 -5
  155. data/lib/puppet/interface/action_manager.rb +5 -5
  156. data/lib/puppet/interface/documentation.rb +5 -5
  157. data/lib/puppet/interface/face_collection.rb +7 -7
  158. data/lib/puppet/interface/option.rb +2 -2
  159. data/lib/puppet/interface/option_manager.rb +6 -6
  160. data/lib/puppet/interface.rb +4 -4
  161. data/lib/puppet/metatype/manager.rb +2 -2
  162. data/lib/puppet/module/plan.rb +10 -10
  163. data/lib/puppet/module/task.rb +8 -8
  164. data/lib/puppet/module.rb +39 -41
  165. data/lib/puppet/module_tool/applications/application.rb +10 -8
  166. data/lib/puppet/module_tool/applications/installer.rb +53 -50
  167. data/lib/puppet/module_tool/applications/unpacker.rb +6 -8
  168. data/lib/puppet/module_tool/applications/upgrader.rb +37 -34
  169. data/lib/puppet/module_tool/checksums.rb +2 -2
  170. data/lib/puppet/module_tool/dependency.rb +1 -1
  171. data/lib/puppet/module_tool/errors/base.rb +1 -1
  172. data/lib/puppet/module_tool/install_directory.rb +1 -1
  173. data/lib/puppet/module_tool/local_tarball.rb +3 -5
  174. data/lib/puppet/module_tool/metadata.rb +12 -8
  175. data/lib/puppet/module_tool/shared_behaviors.rb +27 -12
  176. data/lib/puppet/module_tool/tar/mini.rb +3 -3
  177. data/lib/puppet/module_tool.rb +4 -4
  178. data/lib/puppet/network/client_request.rb +5 -3
  179. data/lib/puppet/network/format.rb +2 -2
  180. data/lib/puppet/network/format_support.rb +1 -1
  181. data/lib/puppet/network/formats.rb +1 -1
  182. data/lib/puppet/network/http/api/indirected_routes.rb +24 -44
  183. data/lib/puppet/network/http/api/server/v3.rb +1 -1
  184. data/lib/puppet/network/http/connection.rb +1 -1
  185. data/lib/puppet/network/http/handler.rb +8 -12
  186. data/lib/puppet/network/http/request.rb +1 -1
  187. data/lib/puppet/network/http/route.rb +9 -9
  188. data/lib/puppet/node/environment.rb +21 -23
  189. data/lib/puppet/node/facts.rb +1 -1
  190. data/lib/puppet/node.rb +5 -5
  191. data/lib/puppet/pal/json_catalog_encoder.rb +1 -1
  192. data/lib/puppet/pal/pal_impl.rb +48 -50
  193. data/lib/puppet/pal/plan_signature.rb +1 -1
  194. data/lib/puppet/pal/task_signature.rb +1 -1
  195. data/lib/puppet/parameter/package_options.rb +1 -1
  196. data/lib/puppet/parameter/value.rb +2 -2
  197. data/lib/puppet/parameter/value_collection.rb +7 -7
  198. data/lib/puppet/parameter.rb +8 -9
  199. data/lib/puppet/parser/ast/block_expression.rb +2 -2
  200. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  201. data/lib/puppet/parser/ast/pops_bridge.rb +3 -4
  202. data/lib/puppet/parser/ast/resource.rb +4 -4
  203. data/lib/puppet/parser/ast/resourceparam.rb +4 -4
  204. data/lib/puppet/parser/ast.rb +14 -15
  205. data/lib/puppet/parser/compiler.rb +26 -28
  206. data/lib/puppet/parser/functions/create_resources.rb +3 -3
  207. data/lib/puppet/parser/functions/fail.rb +1 -1
  208. data/lib/puppet/parser/functions/generate.rb +2 -2
  209. data/lib/puppet/parser/functions/tag.rb +1 -1
  210. data/lib/puppet/parser/functions.rb +2 -2
  211. data/lib/puppet/parser/relationship.rb +3 -1
  212. data/lib/puppet/parser/resource/param.rb +2 -2
  213. data/lib/puppet/parser/resource.rb +23 -23
  214. data/lib/puppet/parser/scope.rb +10 -10
  215. data/lib/puppet/parser/script_compiler.rb +1 -1
  216. data/lib/puppet/parser/templatewrapper.rb +1 -1
  217. data/lib/puppet/parser/type_loader.rb +10 -12
  218. data/lib/puppet/parser.rb +1 -1
  219. data/lib/puppet/pops/adaptable.rb +1 -1
  220. data/lib/puppet/pops/evaluator/access_operator.rb +8 -8
  221. data/lib/puppet/pops/evaluator/callable_signature.rb +4 -4
  222. data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -4
  223. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +7 -7
  224. data/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +6 -6
  225. data/lib/puppet/pops/evaluator/compare_operator.rb +10 -10
  226. data/lib/puppet/pops/evaluator/deferred_resolver.rb +1 -1
  227. data/lib/puppet/pops/evaluator/epp_evaluator.rb +2 -2
  228. data/lib/puppet/pops/evaluator/evaluator_impl.rb +56 -60
  229. data/lib/puppet/pops/evaluator/relationship_operator.rb +2 -2
  230. data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
  231. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  232. data/lib/puppet/pops/functions/dispatcher.rb +3 -3
  233. data/lib/puppet/pops/functions/function.rb +14 -16
  234. data/lib/puppet/pops/issue_reporter.rb +2 -2
  235. data/lib/puppet/pops/label_provider.rb +2 -2
  236. data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
  237. data/lib/puppet/pops/loader/loader.rb +4 -4
  238. data/lib/puppet/pops/loader/loader_paths.rb +3 -3
  239. data/lib/puppet/pops/loader/module_loaders.rb +11 -11
  240. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  241. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  242. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
  243. data/lib/puppet/pops/loader/static_loader.rb +5 -5
  244. data/lib/puppet/pops/loaders.rb +3 -3
  245. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  246. data/lib/puppet/pops/lookup/explainer.rb +2 -2
  247. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  248. data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
  249. data/lib/puppet/pops/lookup/interpolation.rb +3 -3
  250. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  251. data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
  252. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
  253. data/lib/puppet/pops/lookup/module_data_provider.rb +9 -9
  254. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  255. data/lib/puppet/pops/merge_strategy.rb +6 -6
  256. data/lib/puppet/pops/migration/migration_checker.rb +1 -1
  257. data/lib/puppet/pops/model/ast_transformer.rb +9 -11
  258. data/lib/puppet/pops/model/factory.rb +4 -5
  259. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  260. data/lib/puppet/pops/parser/epp_support.rb +1 -1
  261. data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
  262. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  263. data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
  264. data/lib/puppet/pops/parser/lexer2.rb +20 -12
  265. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  266. data/lib/puppet/pops/parser/locator.rb +4 -4
  267. data/lib/puppet/pops/parser/parser_support.rb +12 -14
  268. data/lib/puppet/pops/parser/pn_parser.rb +3 -3
  269. data/lib/puppet/pops/parser/slurp_support.rb +8 -8
  270. data/lib/puppet/pops/patterns.rb +12 -12
  271. data/lib/puppet/pops/pcore.rb +1 -1
  272. data/lib/puppet/pops/pn.rb +2 -2
  273. data/lib/puppet/pops/puppet_stack.rb +1 -1
  274. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  275. data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
  276. data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
  277. data/lib/puppet/pops/time/timestamp.rb +1 -1
  278. data/lib/puppet/pops/types/class_loader.rb +4 -6
  279. data/lib/puppet/pops/types/iterable.rb +1 -1
  280. data/lib/puppet/pops/types/p_binary_type.rb +1 -1
  281. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  282. data/lib/puppet/pops/types/p_object_type.rb +5 -5
  283. data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
  284. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
  285. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  286. data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
  287. data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
  288. data/lib/puppet/pops/types/p_uri_type.rb +4 -4
  289. data/lib/puppet/pops/types/recursion_guard.rb +4 -4
  290. data/lib/puppet/pops/types/ruby_generator.rb +2 -2
  291. data/lib/puppet/pops/types/string_converter.rb +12 -8
  292. data/lib/puppet/pops/types/tree_iterators.rb +4 -6
  293. data/lib/puppet/pops/types/type_calculator.rb +10 -10
  294. data/lib/puppet/pops/types/type_factory.rb +7 -3
  295. data/lib/puppet/pops/types/type_formatter.rb +22 -24
  296. data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
  297. data/lib/puppet/pops/types/types.rb +28 -24
  298. data/lib/puppet/pops/utils.rb +38 -42
  299. data/lib/puppet/pops/validation/checker4_0.rb +10 -10
  300. data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
  301. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -1
  302. data/lib/puppet/pops/validation.rb +4 -4
  303. data/lib/puppet/pops/visitor.rb +2 -2
  304. data/lib/puppet/property/ensure.rb +12 -14
  305. data/lib/puppet/property/keyvalue.rb +4 -4
  306. data/lib/puppet/property/list.rb +4 -4
  307. data/lib/puppet/property/ordered_list.rb +1 -1
  308. data/lib/puppet/property.rb +31 -33
  309. data/lib/puppet/provider/aix_object.rb +1 -1
  310. data/lib/puppet/provider/exec.rb +2 -2
  311. data/lib/puppet/provider/file/posix.rb +19 -17
  312. data/lib/puppet/provider/file/windows.rb +13 -19
  313. data/lib/puppet/provider/group/directoryservice.rb +3 -2
  314. data/lib/puppet/provider/group/groupadd.rb +32 -11
  315. data/lib/puppet/provider/group/windows_adsi.rb +2 -2
  316. data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
  317. data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
  318. data/lib/puppet/provider/nameservice/pw.rb +1 -2
  319. data/lib/puppet/provider/nameservice.rb +8 -8
  320. data/lib/puppet/provider/package/aix.rb +19 -19
  321. data/lib/puppet/provider/package/appdmg.rb +2 -2
  322. data/lib/puppet/provider/package/apple.rb +1 -1
  323. data/lib/puppet/provider/package/apt.rb +18 -18
  324. data/lib/puppet/provider/package/aptitude.rb +1 -3
  325. data/lib/puppet/provider/package/aptrpm.rb +9 -9
  326. data/lib/puppet/provider/package/blastwave.rb +10 -14
  327. data/lib/puppet/provider/package/dnfmodule.rb +3 -3
  328. data/lib/puppet/provider/package/dpkg.rb +11 -13
  329. data/lib/puppet/provider/package/fink.rb +14 -14
  330. data/lib/puppet/provider/package/freebsd.rb +1 -1
  331. data/lib/puppet/provider/package/gem.rb +12 -14
  332. data/lib/puppet/provider/package/macports.rb +2 -2
  333. data/lib/puppet/provider/package/nim.rb +10 -10
  334. data/lib/puppet/provider/package/openbsd.rb +22 -22
  335. data/lib/puppet/provider/package/opkg.rb +6 -6
  336. data/lib/puppet/provider/package/pacman.rb +35 -29
  337. data/lib/puppet/provider/package/pip.rb +25 -24
  338. data/lib/puppet/provider/package/pkg.rb +15 -15
  339. data/lib/puppet/provider/package/pkgdmg.rb +10 -10
  340. data/lib/puppet/provider/package/pkgin.rb +2 -2
  341. data/lib/puppet/provider/package/pkgng.rb +5 -5
  342. data/lib/puppet/provider/package/pkgutil.rb +17 -21
  343. data/lib/puppet/provider/package/portage.rb +59 -61
  344. data/lib/puppet/provider/package/ports.rb +12 -11
  345. data/lib/puppet/provider/package/portupgrade.rb +35 -35
  346. data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
  347. data/lib/puppet/provider/package/rpm.rb +26 -26
  348. data/lib/puppet/provider/package/rug.rb +7 -9
  349. data/lib/puppet/provider/package/sun.rb +4 -4
  350. data/lib/puppet/provider/package/up2date.rb +5 -7
  351. data/lib/puppet/provider/package/urpmi.rb +6 -6
  352. data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
  353. data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
  354. data/lib/puppet/provider/package/windows/package.rb +2 -2
  355. data/lib/puppet/provider/package/windows.rb +3 -5
  356. data/lib/puppet/provider/package/xbps.rb +127 -0
  357. data/lib/puppet/provider/package/yum.rb +33 -37
  358. data/lib/puppet/provider/package/zypper.rb +12 -14
  359. data/lib/puppet/provider/package.rb +1 -1
  360. data/lib/puppet/provider/package_targetable.rb +1 -1
  361. data/lib/puppet/provider/parsedfile.rb +9 -9
  362. data/lib/puppet/provider/service/base.rb +16 -21
  363. data/lib/puppet/provider/service/bsd.rb +4 -4
  364. data/lib/puppet/provider/service/daemontools.rb +31 -31
  365. data/lib/puppet/provider/service/debian.rb +6 -6
  366. data/lib/puppet/provider/service/freebsd.rb +36 -36
  367. data/lib/puppet/provider/service/gentoo.rb +6 -6
  368. data/lib/puppet/provider/service/init.rb +19 -19
  369. data/lib/puppet/provider/service/launchd.rb +22 -22
  370. data/lib/puppet/provider/service/openbsd.rb +10 -10
  371. data/lib/puppet/provider/service/openrc.rb +1 -1
  372. data/lib/puppet/provider/service/openwrt.rb +3 -3
  373. data/lib/puppet/provider/service/rcng.rb +3 -3
  374. data/lib/puppet/provider/service/redhat.rb +4 -4
  375. data/lib/puppet/provider/service/runit.rb +6 -6
  376. data/lib/puppet/provider/service/service.rb +5 -7
  377. data/lib/puppet/provider/service/smf.rb +28 -27
  378. data/lib/puppet/provider/service/src.rb +7 -7
  379. data/lib/puppet/provider/service/systemd.rb +31 -37
  380. data/lib/puppet/provider/service/upstart.rb +17 -17
  381. data/lib/puppet/provider/service/windows.rb +7 -7
  382. data/lib/puppet/provider/user/aix.rb +4 -2
  383. data/lib/puppet/provider/user/directoryservice.rb +34 -36
  384. data/lib/puppet/provider/user/hpux.rb +10 -14
  385. data/lib/puppet/provider/user/pw.rb +1 -1
  386. data/lib/puppet/provider/user/user_role_add.rb +16 -18
  387. data/lib/puppet/provider/user/useradd.rb +7 -7
  388. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  389. data/lib/puppet/provider.rb +8 -8
  390. data/lib/puppet/reference/indirection.rb +3 -0
  391. data/lib/puppet/reference/metaparameter.rb +1 -1
  392. data/lib/puppet/reference/providers.rb +3 -3
  393. data/lib/puppet/reference/type.rb +1 -1
  394. data/lib/puppet/relationship.rb +4 -5
  395. data/lib/puppet/reports/http.rb +1 -1
  396. data/lib/puppet/reports/log.rb +2 -2
  397. data/lib/puppet/reports/store.rb +4 -4
  398. data/lib/puppet/reports.rb +2 -2
  399. data/lib/puppet/resource/catalog.rb +16 -16
  400. data/lib/puppet/resource/status.rb +3 -3
  401. data/lib/puppet/resource/type.rb +8 -8
  402. data/lib/puppet/resource/type_collection.rb +1 -1
  403. data/lib/puppet/resource.rb +41 -41
  404. data/lib/puppet/scheduler/scheduler.rb +1 -1
  405. data/lib/puppet/scheduler/splay_job.rb +9 -0
  406. data/lib/puppet/settings/alias_setting.rb +3 -5
  407. data/lib/puppet/settings/base_setting.rb +11 -11
  408. data/lib/puppet/settings/boolean_setting.rb +2 -2
  409. data/lib/puppet/settings/config_file.rb +5 -4
  410. data/lib/puppet/settings/duration_setting.rb +2 -2
  411. data/lib/puppet/settings/environment_conf.rb +3 -3
  412. data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
  413. data/lib/puppet/settings/file_setting.rb +11 -11
  414. data/lib/puppet/settings/ini_file.rb +3 -3
  415. data/lib/puppet/settings/port_setting.rb +1 -1
  416. data/lib/puppet/settings/priority_setting.rb +2 -2
  417. data/lib/puppet/settings/ttl_setting.rb +2 -2
  418. data/lib/puppet/settings/value_translator.rb +8 -8
  419. data/lib/puppet/settings.rb +65 -70
  420. data/lib/puppet/ssl/base.rb +2 -4
  421. data/lib/puppet/ssl/certificate_request.rb +18 -22
  422. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  423. data/lib/puppet/ssl/oids.rb +2 -2
  424. data/lib/puppet/ssl/openssl_loader.rb +4 -4
  425. data/lib/puppet/syntax_checkers/base64.rb +3 -3
  426. data/lib/puppet/syntax_checkers/epp.rb +3 -3
  427. data/lib/puppet/syntax_checkers/json.rb +3 -3
  428. data/lib/puppet/syntax_checkers/pp.rb +3 -3
  429. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  430. data/lib/puppet/transaction/event.rb +2 -2
  431. data/lib/puppet/transaction/event_manager.rb +5 -5
  432. data/lib/puppet/transaction/persistence.rb +12 -14
  433. data/lib/puppet/transaction/report.rb +4 -4
  434. data/lib/puppet/transaction/resource_harness.rb +2 -2
  435. data/lib/puppet/transaction.rb +14 -18
  436. data/lib/puppet/type/component.rb +3 -3
  437. data/lib/puppet/type/exec.rb +51 -45
  438. data/lib/puppet/type/file/checksum_value.rb +1 -1
  439. data/lib/puppet/type/file/content.rb +6 -6
  440. data/lib/puppet/type/file/ctime.rb +2 -2
  441. data/lib/puppet/type/file/data_sync.rb +3 -3
  442. data/lib/puppet/type/file/ensure.rb +16 -15
  443. data/lib/puppet/type/file/mode.rb +9 -9
  444. data/lib/puppet/type/file/mtime.rb +2 -2
  445. data/lib/puppet/type/file/selcontext.rb +14 -14
  446. data/lib/puppet/type/file/source.rb +19 -21
  447. data/lib/puppet/type/file/target.rb +11 -11
  448. data/lib/puppet/type/file.rb +21 -21
  449. data/lib/puppet/type/filebucket.rb +3 -3
  450. data/lib/puppet/type/group.rb +3 -3
  451. data/lib/puppet/type/notify.rb +2 -2
  452. data/lib/puppet/type/package.rb +4 -4
  453. data/lib/puppet/type/resources.rb +6 -6
  454. data/lib/puppet/type/schedule.rb +9 -9
  455. data/lib/puppet/type/service.rb +6 -8
  456. data/lib/puppet/type/tidy.rb +22 -24
  457. data/lib/puppet/type/user.rb +13 -13
  458. data/lib/puppet/type.rb +76 -88
  459. data/lib/puppet/util/at_fork/solaris.rb +33 -37
  460. data/lib/puppet/util/autoload.rb +2 -2
  461. data/lib/puppet/util/backups.rb +9 -9
  462. data/lib/puppet/util/character_encoding.rb +7 -6
  463. data/lib/puppet/util/checksums.rb +2 -2
  464. data/lib/puppet/util/classgen.rb +8 -8
  465. data/lib/puppet/util/colors.rb +1 -1
  466. data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
  467. data/lib/puppet/util/command_line/trollop.rb +60 -46
  468. data/lib/puppet/util/command_line.rb +2 -2
  469. data/lib/puppet/util/constant_inflector.rb +2 -2
  470. data/lib/puppet/util/diff.rb +19 -21
  471. data/lib/puppet/util/docs.rb +2 -2
  472. data/lib/puppet/util/errors.rb +9 -9
  473. data/lib/puppet/util/execution.rb +32 -9
  474. data/lib/puppet/util/feature.rb +1 -1
  475. data/lib/puppet/util/fileparsing.rb +12 -16
  476. data/lib/puppet/util/filetype.rb +36 -40
  477. data/lib/puppet/util/inifile.rb +6 -12
  478. data/lib/puppet/util/ldap/connection.rb +1 -1
  479. data/lib/puppet/util/ldap/manager.rb +10 -12
  480. data/lib/puppet/util/lockfile.rb +6 -8
  481. data/lib/puppet/util/log/destination.rb +2 -2
  482. data/lib/puppet/util/log/destinations.rb +4 -4
  483. data/lib/puppet/util/log.rb +12 -9
  484. data/lib/puppet/util/logging.rb +11 -11
  485. data/lib/puppet/util/metric.rb +3 -3
  486. data/lib/puppet/util/monkey_patches.rb +5 -7
  487. data/lib/puppet/util/network_device/config.rb +3 -3
  488. data/lib/puppet/util/package/version/debian.rb +27 -28
  489. data/lib/puppet/util/package/version/pip.rb +5 -5
  490. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  491. data/lib/puppet/util/package/version/rpm.rb +1 -1
  492. data/lib/puppet/util/package.rb +2 -2
  493. data/lib/puppet/util/pidlock.rb +2 -2
  494. data/lib/puppet/util/platform.rb +1 -1
  495. data/lib/puppet/util/plist.rb +8 -10
  496. data/lib/puppet/util/posix.rb +17 -17
  497. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  498. data/lib/puppet/util/provider_features.rb +3 -3
  499. data/lib/puppet/util/rdoc/code_objects.rb +3 -3
  500. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
  501. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
  502. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
  503. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  504. data/lib/puppet/util/rdoc/parser.rb +1 -1
  505. data/lib/puppet/util/reference.rb +13 -9
  506. data/lib/puppet/util/retry_action.rb +1 -1
  507. data/lib/puppet/util/rpm_compare.rb +18 -19
  508. data/lib/puppet/util/rubygems.rb +1 -1
  509. data/lib/puppet/util/selinux.rb +7 -7
  510. data/lib/puppet/util/storage.rb +10 -12
  511. data/lib/puppet/util/suidmanager.rb +18 -19
  512. data/lib/puppet/util/symbolic_file_mode.rb +71 -75
  513. data/lib/puppet/util/tag_set.rb +2 -2
  514. data/lib/puppet/util/tagging.rb +8 -10
  515. data/lib/puppet/util/terminal.rb +4 -4
  516. data/lib/puppet/util/user_attr.rb +7 -7
  517. data/lib/puppet/util/watcher.rb +3 -5
  518. data/lib/puppet/util/windows/access_control_list.rb +1 -1
  519. data/lib/puppet/util/windows/adsi.rb +42 -42
  520. data/lib/puppet/util/windows/com.rb +2 -2
  521. data/lib/puppet/util/windows/daemon.rb +64 -68
  522. data/lib/puppet/util/windows/error.rb +2 -2
  523. data/lib/puppet/util/windows/file.rb +18 -25
  524. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  525. data/lib/puppet/util/windows/principal.rb +8 -8
  526. data/lib/puppet/util/windows/process.rb +16 -28
  527. data/lib/puppet/util/windows/registry.rb +16 -15
  528. data/lib/puppet/util/windows/root_certs.rb +2 -2
  529. data/lib/puppet/util/windows/security.rb +31 -31
  530. data/lib/puppet/util/windows/service.rb +11 -11
  531. data/lib/puppet/util/windows/sid.rb +8 -8
  532. data/lib/puppet/util/windows/user.rb +18 -20
  533. data/lib/puppet/util/yaml.rb +1 -1
  534. data/lib/puppet/util.rb +55 -46
  535. data/lib/puppet/version.rb +2 -2
  536. data/lib/puppet/x509/pem_store.rb +1 -1
  537. data/lib/puppet.rb +3 -3
  538. data/locales/puppet.pot +604 -600
  539. data/man/man5/puppet.conf.5 +10 -2
  540. data/man/man8/puppet-agent.8 +1 -1
  541. data/man/man8/puppet-apply.8 +1 -1
  542. data/man/man8/puppet-catalog.8 +1 -1
  543. data/man/man8/puppet-config.8 +1 -1
  544. data/man/man8/puppet-describe.8 +1 -1
  545. data/man/man8/puppet-device.8 +1 -1
  546. data/man/man8/puppet-doc.8 +1 -1
  547. data/man/man8/puppet-epp.8 +1 -1
  548. data/man/man8/puppet-facts.8 +1 -1
  549. data/man/man8/puppet-filebucket.8 +1 -1
  550. data/man/man8/puppet-generate.8 +1 -1
  551. data/man/man8/puppet-help.8 +1 -1
  552. data/man/man8/puppet-lookup.8 +1 -1
  553. data/man/man8/puppet-module.8 +1 -1
  554. data/man/man8/puppet-node.8 +1 -1
  555. data/man/man8/puppet-parser.8 +1 -1
  556. data/man/man8/puppet-plugin.8 +1 -1
  557. data/man/man8/puppet-report.8 +1 -1
  558. data/man/man8/puppet-resource.8 +5 -1
  559. data/man/man8/puppet-script.8 +1 -1
  560. data/man/man8/puppet-ssl.8 +1 -1
  561. data/man/man8/puppet.8 +2 -2
  562. metadata +23 -27
  563. data/examples/hiera/etc/hiera.yaml +0 -15
  564. data/examples/hiera/etc/hieradb/common.yaml +0 -3
  565. data/examples/hiera/etc/hieradb/dc1.yaml +0 -6
  566. data/examples/hiera/etc/hieradb/development.yaml +0 -2
  567. data/examples/hiera/etc/puppet.conf +0 -3
  568. data/examples/hiera/modules/data/manifests/common.pp +0 -4
  569. data/examples/hiera/modules/ntp/manifests/data.pp +0 -4
  570. data/examples/hiera/modules/ntp/templates/ntp.conf.erb +0 -3
  571. data/examples/hiera/modules/users/manifests/development.pp +0 -4
  572. data/tasks/benchmark.rake +0 -180
  573. data/tasks/cfpropertylist.rake +0 -15
  574. data/tasks/ci.rake +0 -24
  575. data/tasks/generate_ast_model.rake +0 -90
  576. data/tasks/generate_cert_fixtures.rake +0 -199
  577. data/tasks/manpages.rake +0 -67
  578. data/tasks/memwalk.rake +0 -195
  579. data/tasks/parallel.rake +0 -410
  580. data/tasks/parser.rake +0 -22
  581. data/tasks/yard.rake +0 -59
@@ -24,16 +24,16 @@ class Puppet::Parser::Compiler
24
24
  node.environment.check_for_reparse
25
25
 
26
26
  errors = node.environment.validation_errors
27
- if !errors.empty?
27
+ unless errors.empty?
28
28
  errors.each { |e| Puppet.err(e) } if errors.size > 1
29
29
  errmsg = [
30
30
  _("Compilation has been halted because: %{error}") % { error: errors.first },
31
- _("For more information, see https://puppet.com/docs/puppet/latest/environments_about.html"),
31
+ _("For more information, see https://puppet.com/docs/puppet/latest/environments_about.html")
32
32
  ]
33
33
  raise(Puppet::Error, errmsg.join(' '))
34
34
  end
35
35
 
36
- new(node, :code_id => code_id).compile { |resulting_catalog| resulting_catalog.to_resource }
36
+ new(node, :code_id => code_id).compile(&:to_resource)
37
37
  rescue Puppet::ParseErrorWithIssue => detail
38
38
  detail.node = node.name
39
39
  Puppet.log_exception(detail)
@@ -79,7 +79,7 @@ class Puppet::Parser::Compiler
79
79
  # Note that this will fail if the resource is not unique.
80
80
  @catalog.add_resource(resource)
81
81
 
82
- if not resource.class? and resource[:stage]
82
+ if !resource.class? and resource[:stage]
83
83
  # TRANSLATORS "stage" is a keyword in Puppet and should not be translated
84
84
  raise ArgumentError, _("Only classes can set 'stage'; normal resources like %{resource} cannot change run stage") % { resource: resource }
85
85
  end
@@ -216,7 +216,7 @@ class Puppet::Parser::Compiler
216
216
  break if astnode
217
217
  end
218
218
 
219
- unless (astnode ||= krt.node("default"))
219
+ unless astnode ||= krt.node("default")
220
220
  raise Puppet::ParseError, _("Could not find node statement with name 'default' or '%{names}'") % { names: node.names.join(", ") }
221
221
  end
222
222
 
@@ -251,14 +251,14 @@ class Puppet::Parser::Compiler
251
251
 
252
252
  if class_parameters
253
253
  resources = ensure_classes_with_parameters(scope, hostclasses, class_parameters)
254
- if !lazy_evaluate
254
+ unless lazy_evaluate
255
255
  resources.each(&:evaluate)
256
256
  end
257
257
 
258
258
  resources
259
259
  else
260
260
  already_included, newly_included = ensure_classes_without_parameters(scope, hostclasses)
261
- if !lazy_evaluate
261
+ unless lazy_evaluate
262
262
  newly_included.each(&:evaluate)
263
263
  end
264
264
 
@@ -345,17 +345,15 @@ class Puppet::Parser::Compiler
345
345
  exceptwrap do
346
346
  Puppet::Util::Profiler.profile(_("Evaluated definitions"), [:compiler, :evaluate_definitions]) do
347
347
  urs = unevaluated_resources.each do |resource|
348
- begin
349
- resource.evaluate
350
- rescue Puppet::Pops::Evaluator::PuppetStopIteration => detail
351
- # needs to be handled specifically as the error has the file/line/position where this
352
- # occurred rather than the resource
353
- fail(Puppet::Pops::Issues::RUNTIME_ERROR, detail, { :detail => detail.message }, detail)
354
- rescue Puppet::Error => e
355
- # PuppetError has the ability to wrap an exception, if so, use the wrapped exception's
356
- # call stack instead
357
- fail(Puppet::Pops::Issues::RUNTIME_ERROR, resource, { :detail => e.message }, e.original || e)
358
- end
348
+ resource.evaluate
349
+ rescue Puppet::Pops::Evaluator::PuppetStopIteration => detail
350
+ # needs to be handled specifically as the error has the file/line/position where this
351
+ # occurred rather than the resource
352
+ fail(Puppet::Pops::Issues::RUNTIME_ERROR, detail, { :detail => detail.message }, detail)
353
+ rescue Puppet::Error => e
354
+ # PuppetError has the ability to wrap an exception, if so, use the wrapped exception's
355
+ # call stack instead
356
+ fail(Puppet::Pops::Issues::RUNTIME_ERROR, resource, { :detail => e.message }, e.original || e)
359
357
  end
360
358
  !urs.empty?
361
359
  end
@@ -413,7 +411,7 @@ class Puppet::Parser::Compiler
413
411
  def fail_on_unevaluated_overrides
414
412
  remaining = @resource_overrides.values.flatten.collect(&:ref)
415
413
 
416
- if !remaining.empty?
414
+ unless remaining.empty?
417
415
  raise Puppet::ParseError, _("Could not find resource(s) %{resources} for overriding") % { resources: remaining.join(', ') }
418
416
  end
419
417
  end
@@ -424,7 +422,7 @@ class Puppet::Parser::Compiler
424
422
  #
425
423
  def fail_on_unevaluated_resource_collections
426
424
  remaining = @collections.collect(&:unresolved_resources).flatten.compact
427
- if !remaining.empty?
425
+ unless remaining.empty?
428
426
  raise Puppet::ParseError, _("Failed to realize virtual resources %{resources}") % { resources: remaining.join(', ') }
429
427
  end
430
428
  end
@@ -484,14 +482,14 @@ class Puppet::Parser::Compiler
484
482
  def metaparams_as_data(resource, params)
485
483
  data = nil
486
484
  params.each do |param|
487
- unless resource[param].nil?
488
- # Because we could be creating a hash for every resource,
489
- # and we actually probably don't often have any data here at all,
490
- # we're optimizing a bit by only creating a hash if there's
491
- # any data to put in it.
492
- data ||= {}
493
- data[param] = resource[param]
494
- end
485
+ next if resource[param].nil?
486
+
487
+ # Because we could be creating a hash for every resource,
488
+ # and we actually probably don't often have any data here at all,
489
+ # we're optimizing a bit by only creating a hash if there's
490
+ # any data to put in it.
491
+ data ||= {}
492
+ data[param] = resource[param]
495
493
  end
496
494
  data
497
495
  end
@@ -61,10 +61,10 @@ ENDHEREDOC
61
61
  end
62
62
 
63
63
  raise ArgumentError, (_("create_resources(): wrong number of arguments (%{count}; must be 2 or 3)") % { count: args.length }) if args.length > 3
64
- raise ArgumentError, (_('create_resources(): second argument must be a hash')) unless args[1].is_a?(Hash)
64
+ raise ArgumentError, _('create_resources(): second argument must be a hash') unless args[1].is_a?(Hash)
65
65
 
66
66
  if args.length == 3
67
- raise ArgumentError, (_('create_resources(): third argument, if provided, must be a hash')) unless args[2].is_a?(Hash)
67
+ raise ArgumentError, _('create_resources(): third argument, if provided, must be a hash') unless args[2].is_a?(Hash)
68
68
  end
69
69
 
70
70
  type, instances, defaults = args
@@ -105,7 +105,7 @@ ENDHEREDOC
105
105
  Puppet::Parser::Resource::Param.new(
106
106
  :name => name,
107
107
  :value => value, # wide open to various data types, must be correct
108
- :source => self.source, # TODO: support :line => line, :file => file,
108
+ :source => source, # TODO: support :line => line, :file => file,
109
109
  :add => false
110
110
  )
111
111
  end
@@ -8,6 +8,6 @@ Puppet::Parser::Functions.newfunction(
8
8
  concatenated, and passed to the exception-handler.
9
9
  DOC
10
10
  ) do |vals|
11
- vals = vals.collect { |s| s.to_s }.join(" ") if vals.is_a? Array
11
+ vals = vals.collect(&:to_s).join(" ") if vals.is_a? Array
12
12
  raise Puppet::ParseError, vals.to_s
13
13
  end
@@ -17,9 +17,9 @@ Puppet::Parser::Functions.newfunction(:generate, :arity => -2, :type => :rvalue,
17
17
  raise Puppet::ParseError, _("Generators must be fully qualified") unless Puppet::Util.absolute_path?(args[0])
18
18
 
19
19
  if Puppet::Util::Platform.windows?
20
- valid = args[0] =~ /^[a-z]:(?:[\/\\][-.~\w]+)+$/i
20
+ valid = args[0] =~ %r{^[a-z]:(?:[/\\][-.~\w]+)+$}i
21
21
  else
22
- valid = args[0] =~ /^[-\/\w.+]+$/
22
+ valid = args[0] =~ %r{^[-/\w.+]+$}
23
23
  end
24
24
 
25
25
  unless valid
@@ -11,5 +11,5 @@ Puppet::Parser::Functions.newfunction(:tag, :arity => -2, :doc => "Add the speci
11
11
  )
12
12
  end
13
13
 
14
- self.resource.tag(*vals)
14
+ resource.tag(*vals)
15
15
  end
@@ -215,7 +215,7 @@ module Puppet::Parser::Functions
215
215
  raise ArgumentError, _("%{name}(): Wrong number of arguments given (%{arg_count} for minimum %{min_arg_count})") % { name: name, arg_count: args[0].size, min_arg_count: (arity + 1).abs }
216
216
  end
217
217
 
218
- r = Puppet::Pops::Evaluator::Runtime3FunctionArgumentConverter.convert_return(self.send(real_fname, args[0]))
218
+ r = Puppet::Pops::Evaluator::Runtime3FunctionArgumentConverter.convert_return(send(real_fname, args[0]))
219
219
  # avoid leaking aribtrary value if not being an rvalue function
220
220
  options[:type] == :rvalue ? r : nil
221
221
  else
@@ -263,7 +263,7 @@ module Puppet::Parser::Functions
263
263
  ret = ''.dup
264
264
 
265
265
  merged_functions(environment).sort { |a, b| a[0].to_s <=> b[0].to_s }.each do |name, hash|
266
- ret << "#{name}\n#{"-" * name.to_s.length}\n"
266
+ ret << "#{name}\n#{'-' * name.to_s.length}\n"
267
267
  if hash[:doc]
268
268
  ret << Puppet::Util::Docs.scrub(hash[:doc])
269
269
  else
@@ -26,7 +26,9 @@ class Puppet::Parser::Relationship
26
26
  end
27
27
 
28
28
  def initialize(source, target, type)
29
- @source, @target, @type = source, target, type
29
+ @source = source
30
+ @target = target
31
+ @type = type
30
32
  end
31
33
 
32
34
  def param_name
@@ -26,12 +26,12 @@ class Puppet::Parser::Resource::Param
26
26
  end
27
27
 
28
28
  def to_s
29
- "#{self.name} => #{self.value}"
29
+ "#{name} => #{value}"
30
30
  end
31
31
 
32
32
  def self.from_param(param, value)
33
33
  new_param = param.dup
34
34
  new_param.value = value
35
- return new_param
35
+ new_param
36
36
  end
37
37
  end
@@ -21,7 +21,7 @@ class Puppet::Parser::Resource < Puppet::Resource
21
21
 
22
22
  # Determine whether the provided parameter name is a relationship parameter.
23
23
  def self.relationship_parameter?(name)
24
- @relationship_names ||= Puppet::Type.relationship_params.collect { |p| p.name }
24
+ @relationship_names ||= Puppet::Type.relationship_params.collect(&:name)
25
25
  @relationship_names.include?(name)
26
26
  end
27
27
 
@@ -33,7 +33,7 @@ class Puppet::Parser::Resource < Puppet::Resource
33
33
  def [](param)
34
34
  param = param.intern
35
35
  if param == :title
36
- return self.title
36
+ return title
37
37
  end
38
38
 
39
39
  if @parameters.has_key?(param)
@@ -57,7 +57,7 @@ class Puppet::Parser::Resource < Puppet::Resource
57
57
  # is drawn from the class to the stage. The stage for containment
58
58
  # defaults to main, if none is specified.
59
59
  def add_edge_to_stage
60
- return unless self.class?
60
+ return unless class?
61
61
 
62
62
  stage = catalog.resource(:stage, self[:stage] || (scope && scope.resource && scope.resource[:stage]) || :main)
63
63
  unless stage
@@ -136,13 +136,13 @@ class Puppet::Parser::Resource < Puppet::Resource
136
136
 
137
137
  if with_defaults
138
138
  scope.lookupdefaults(self.type).each_pair do |name, param|
139
- unless @parameters.include?(name)
140
- self.debug "Adding default for #{name}"
139
+ next if @parameters.include?(name)
141
140
 
142
- param = param.dup
143
- @parameters[name] = param
144
- tag(*param.value) if param.name == :tag
145
- end
141
+ debug "Adding default for #{name}"
142
+
143
+ param = param.dup
144
+ @parameters[name] = param
145
+ tag(*param.value) if param.name == :tag
146
146
  end
147
147
  end
148
148
  end
@@ -150,9 +150,9 @@ class Puppet::Parser::Resource < Puppet::Resource
150
150
  # Is this resource modeling an isomorphic resource type?
151
151
  def isomorphic?
152
152
  if builtin_type?
153
- return resource_type.isomorphic?
153
+ resource_type.isomorphic?
154
154
  else
155
- return true
155
+ true
156
156
  end
157
157
  end
158
158
 
@@ -161,7 +161,7 @@ class Puppet::Parser::Resource < Puppet::Resource
161
161
  def merge(resource)
162
162
  # Test the resource scope, to make sure the resource is even allowed
163
163
  # to override.
164
- unless self.source.equal?(resource.source) || resource.source.child_of?(self.source)
164
+ unless source.equal?(resource.source) || resource.source.child_of?(source)
165
165
  raise Puppet::ParseError.new(_("Only subclasses can override parameters"), resource.file, resource.line)
166
166
  end
167
167
 
@@ -190,7 +190,7 @@ class Puppet::Parser::Resource < Puppet::Resource
190
190
  end
191
191
 
192
192
  def name
193
- self[:name] || self.title
193
+ self[:name] || title
194
194
  end
195
195
 
196
196
  # A temporary occasion, until I get paths in the scopes figured out.
@@ -200,10 +200,10 @@ class Puppet::Parser::Resource < Puppet::Resource
200
200
  # if we ever receive a parameter named 'tag', set
201
201
  # the resource tags with its value.
202
202
  def set_parameter(param, value = nil)
203
- if !param.is_a?(Puppet::Parser::Resource::Param)
203
+ unless param.is_a?(Puppet::Parser::Resource::Param)
204
204
  param = param.name if param.is_a?(Puppet::Pops::Resource::Param)
205
205
  param = Puppet::Parser::Resource::Param.new(
206
- :name => param, :value => value, :source => self.source
206
+ :name => param, :value => value, :source => source
207
207
  )
208
208
  end
209
209
 
@@ -219,16 +219,16 @@ class Puppet::Parser::Resource < Puppet::Resource
219
219
  value = param.value
220
220
  value = (:undef == value) ? nil : value
221
221
 
222
- unless value.nil?
223
- case param.name
224
- when :before, :subscribe, :notify, :require
225
- if value.is_a?(Array)
226
- value = value.flatten.reject { |v| v.nil? || :undef == v }
227
- end
228
- else
222
+ next if value.nil?
223
+
224
+ case param.name
225
+ when :before, :subscribe, :notify, :require
226
+ if value.is_a?(Array)
227
+ value = value.flatten.reject { |v| v.nil? || :undef == v }
229
228
  end
230
- result[param.name] = value
229
+ else
231
230
  end
231
+ result[param.name] = value
232
232
  end)
233
233
  end
234
234
 
@@ -17,7 +17,7 @@ class Puppet::Parser::Scope
17
17
  extend Forwardable
18
18
 
19
19
  # Variables that always exist with nil value even if not set
20
- BUILT_IN_VARS = ['module_name', 'caller_module_name'].freeze
20
+ BUILT_IN_VARS = %w[module_name caller_module_name].freeze
21
21
  EMPTY_HASH = {}.freeze
22
22
 
23
23
  Puppet::Util.logmethods(self)
@@ -260,7 +260,7 @@ class Puppet::Parser::Scope
260
260
  end
261
261
 
262
262
  def to_hash
263
- @params.select { |_, access| access.assigned? }.transform_values { |access| access.value }
263
+ @params.select { |_, access| access.assigned? }.transform_values(&:value)
264
264
  end
265
265
  end
266
266
 
@@ -283,8 +283,8 @@ class Puppet::Parser::Scope
283
283
  def exist?(name)
284
284
  # Note !! ensure the answer is boolean
285
285
  !!if name =~ /^(.*)::(.+)$/
286
- class_name = $1
287
- variable_name = $2
286
+ class_name = ::Regexp.last_match(1)
287
+ variable_name = ::Regexp.last_match(2)
288
288
  return true if class_name == '' && BUILT_IN_VARS.include?(variable_name)
289
289
 
290
290
  # lookup class, but do not care if it is not evaluated since that will result
@@ -425,7 +425,7 @@ class Puppet::Parser::Scope
425
425
  # additive -- it collects all of the defaults, with defaults
426
426
  # in closer scopes overriding those in later scopes.
427
427
  #
428
- # The lookupdefaults searches in the the order:
428
+ # The lookupdefaults searches in the order:
429
429
  #
430
430
  # * inherited
431
431
  # * contained (recursive)
@@ -625,7 +625,7 @@ class Puppet::Parser::Scope
625
625
  end
626
626
  end
627
627
  # report with leading '::' by using empty class_name
628
- return handle_not_found('', fqn, options)
628
+ handle_not_found('', fqn, options)
629
629
  end
630
630
 
631
631
  # @api private
@@ -676,7 +676,7 @@ class Puppet::Parser::Scope
676
676
  def to_hash(recursive = true, include_undef = false)
677
677
  if recursive and has_enclosing_scope?
678
678
  target = enclosing_scope.to_hash(recursive)
679
- if !(inherited = inherited_scope).nil?
679
+ unless (inherited = inherited_scope).nil?
680
680
  target.merge!(inherited.to_hash(recursive))
681
681
  end
682
682
  else
@@ -773,7 +773,7 @@ class Puppet::Parser::Scope
773
773
  # when you need to set options.
774
774
  def setvar(name, value, options = EMPTY_HASH)
775
775
  if name =~ /^[0-9]+$/
776
- raise Puppet::ParseError.new(_("Cannot assign to a numeric match result variable '$%{name}'") % { name: name }) # unless options[:ephemeral]
776
+ raise Puppet::ParseError, _("Cannot assign to a numeric match result variable '$%{name}'") % { name: name } # unless options[:ephemeral]
777
777
  end
778
778
  unless name.is_a? String
779
779
  raise Puppet::ParseError, _("Scope variable name %{name} is a %{class_type}, not a string") % { name: name.inspect, class_type: name.class }
@@ -894,7 +894,7 @@ class Puppet::Parser::Scope
894
894
  # shorten the path if possible
895
895
  path = detail[0]
896
896
  env_path = nil
897
- env_path = environment.configuration.path_to_env unless (environment.nil? || environment.configuration.nil?)
897
+ env_path = environment.configuration.path_to_env unless environment.nil? || environment.configuration.nil?
898
898
  # check module paths first since they may be in the environment (i.e. they are longer)
899
899
  module_path = environment.full_modulepath.detect { |m_path| path.start_with?(m_path) }
900
900
  if module_path
@@ -1046,7 +1046,7 @@ class Puppet::Parser::Scope
1046
1046
 
1047
1047
  def method_missing(method, *args, &block)
1048
1048
  method.to_s =~ /^function_(.*)$/
1049
- name = $1
1049
+ name = ::Regexp.last_match(1)
1050
1050
  super unless name
1051
1051
  super unless Puppet::Parser::Functions.function(name)
1052
1052
  # In odd circumstances, this might not end up defined by the previous
@@ -118,6 +118,6 @@ class Puppet::Parser::ScriptCompiler
118
118
  def evaluate_main
119
119
  @loaders.pre_load
120
120
  program = @loaders.load_main_manifest
121
- return program.nil? ? nil : Puppet::Pops::Parser::EvaluatingParser.singleton.evaluator.evaluate(program, @topscope)
121
+ program.nil? ? nil : Puppet::Pops::Parser::EvaluatingParser.singleton.evaluator.evaluate(program, @topscope)
122
122
  end
123
123
  end
@@ -100,6 +100,6 @@ class Puppet::Parser::TemplateWrapper
100
100
  end
101
101
 
102
102
  def to_s
103
- "template[#{(@__file__ ? @__file__ : "inline")}]"
103
+ "template[#{@__file__ || 'inline'}]"
104
104
  end
105
105
  end
@@ -67,27 +67,25 @@ class Puppet::Parser::TypeLoader
67
67
  return nil if fqname == "" # special-case main.
68
68
 
69
69
  files_to_try_for(fqname).each do |filename|
70
- begin
71
- imported_types = import_from_modules(filename)
72
- result = imported_types.find { |t| t.type == type and t.name == fqname }
73
- if result
74
- Puppet.debug { "Automatically imported #{fqname} from #{filename} into #{environment}" }
75
- return result
76
- end
77
- rescue TypeLoaderError
78
- # I'm not convinced we should just drop these errors, but this
79
- # preserves existing behaviours.
70
+ imported_types = import_from_modules(filename)
71
+ result = imported_types.find { |t| t.type == type and t.name == fqname }
72
+ if result
73
+ Puppet.debug { "Automatically imported #{fqname} from #{filename} into #{environment}" }
74
+ return result
80
75
  end
76
+ rescue TypeLoaderError
77
+ # I'm not convinced we should just drop these errors, but this
78
+ # preserves existing behaviours.
81
79
  end
82
80
  # Nothing found.
83
- return nil
81
+ nil
84
82
  end
85
83
 
86
84
  def parse_file(file)
87
85
  Puppet.debug { "importing '#{file}' in environment #{environment}" }
88
86
  parser = Puppet::Parser::ParserFactory.parser
89
87
  parser.file = file
90
- return parser.parse
88
+ parser.parse
91
89
  end
92
90
 
93
91
  private
data/lib/puppet/parser.rb CHANGED
@@ -16,7 +16,7 @@ require_relative 'parser/relationship'
16
16
  require_relative '../puppet/resource/type'
17
17
  require 'monitor'
18
18
 
19
- require_relative 'parser/compiler/catalog_validator/relationship_validator.rb'
19
+ require_relative 'parser/compiler/catalog_validator/relationship_validator'
20
20
 
21
21
  # PUP-3274 This should probably go someplace else
22
22
  class Puppet::LexError < RuntimeError; end
@@ -182,7 +182,7 @@ module Adaptable
182
182
  # Returns the name of the class, or the name of the type if the class represents an Object type
183
183
  # @return [String] the name of the class or type
184
184
  def self.type_name
185
- self.name
185
+ name
186
186
  end
187
187
 
188
188
  # Returns a suitable instance variable name for the _name_ of this instance. The name is created by calling
@@ -67,7 +67,7 @@ class AccessOperator
67
67
  k2 = k2 < 0 ? o.length - k1 + k2 + 1 : k2 # abs length (negative k2 is length from pos to end count)
68
68
  # if k1 is outside, adjust to first position, and adjust length
69
69
  if k1 < 0
70
- k2 = k2 + k1
70
+ k2 += k1
71
71
  k1 = 0
72
72
  end
73
73
  o[k1, k2]
@@ -116,7 +116,7 @@ class AccessOperator
116
116
  k2 = k2 < 0 ? o.length - k1 + k2 + 1 : k2 # abs length (negative k2 is length from pos to end count)
117
117
  # if k1 is outside, adjust to first position, and adjust length
118
118
  if k1 < 0
119
- k2 = k2 + k1
119
+ k2 += k1
120
120
  k1 = 0
121
121
  end
122
122
  # Help ruby always return empty array when asking for a sub array
@@ -448,7 +448,7 @@ class AccessOperator
448
448
 
449
449
  keys.each_with_index do |x, index|
450
450
  fail(Issues::BAD_INTEGER_SLICE_TYPE, @semantic.keys[index],
451
- { :actual => x.class }) unless (x.is_a?(Integer) || x == :default)
451
+ { :actual => x.class }) unless x.is_a?(Integer) || x == :default
452
452
  end
453
453
  Types::PIntegerType.new(*keys)
454
454
  end
@@ -461,7 +461,7 @@ class AccessOperator
461
461
 
462
462
  keys.each_with_index do |x, index|
463
463
  fail(Issues::BAD_FLOAT_SLICE_TYPE, @semantic.keys[index],
464
- { :actual => x.class }) unless (x.is_a?(Float) || x.is_a?(Integer) || x == :default)
464
+ { :actual => x.class }) unless x.is_a?(Float) || x.is_a?(Integer) || x == :default
465
465
  end
466
466
  from, to = keys
467
467
  from = from == :default || from.nil? ? nil : Float(from)
@@ -556,7 +556,7 @@ class AccessOperator
556
556
  else
557
557
  keys.each_with_index do |x, index|
558
558
  fail(Issues::BAD_COLLECTION_SLICE_TYPE, @semantic.keys[start_index + index],
559
- { :actual => x.class }) unless (x.is_a?(Integer) || x == :default)
559
+ { :actual => x.class }) unless x.is_a?(Integer) || x == :default
560
560
  end
561
561
  Types::PIntegerType.new(*keys)
562
562
  end
@@ -635,7 +635,7 @@ class AccessOperator
635
635
  return result_type_array ? [] : nil
636
636
  end
637
637
 
638
- if !o.title.nil?
638
+ unless o.title.nil?
639
639
  # lookup resource and return one or more parameter values
640
640
  resource = find_resource(scope, o.type_name, o.title)
641
641
  unless resource
@@ -665,7 +665,7 @@ class AccessOperator
665
665
  Types::PResourceType.new(type_name, t == :no_title ? nil : t)
666
666
  end
667
667
  # returns single type if request was for a single entity, else an array of types (possibly empty)
668
- return result_type_array ? result : result.pop
668
+ result_type_array ? result : result.pop
669
669
  end
670
670
 
671
671
  NS = '::'
@@ -725,7 +725,7 @@ class AccessOperator
725
725
  end
726
726
 
727
727
  # returns single type as type, else an array of types
728
- return result_type_array ? result : result.pop
728
+ result_type_array ? result : result.pop
729
729
  end
730
730
  end
731
731
  end
@@ -22,7 +22,7 @@ class Puppet::Pops::Evaluator::CallableSignature
22
22
  # @api public
23
23
  #
24
24
  def parameter_names
25
- raise NotImplementedError.new
25
+ raise NotImplementedError
26
26
  end
27
27
 
28
28
  # Returns a PCallableType with the type information, required and optional count, and type information about
@@ -34,7 +34,7 @@ class Puppet::Pops::Evaluator::CallableSignature
34
34
  # @api public
35
35
  #
36
36
  def type
37
- raise NotImplementedError.new
37
+ raise NotImplementedError
38
38
  end
39
39
 
40
40
  # Returns the expected type for an optional block. The type may be nil, which means that the callable does
@@ -56,7 +56,7 @@ class Puppet::Pops::Evaluator::CallableSignature
56
56
  # @api public
57
57
  #
58
58
  def block_name
59
- raise NotImplementedError.new
59
+ raise NotImplementedError
60
60
  end
61
61
 
62
62
  # Returns a range indicating the optionality of a block. One of [0,0] (does not accept block), [0,1] (optional
@@ -87,7 +87,7 @@ class Puppet::Pops::Evaluator::CallableSignature
87
87
  # @api public
88
88
  #
89
89
  def last_captures_rest?
90
- raise NotImplementedError.new
90
+ raise NotImplementedError
91
91
  end
92
92
 
93
93
  # Returns true if the given x is infinity
@@ -26,7 +26,7 @@ class CollectorTransformer
26
26
 
27
27
  fail "Resource type #{type} doesn't exist" unless resource_type
28
28
 
29
- if !o.operations.empty?
29
+ unless o.operations.empty?
30
30
  overrides = {
31
31
  :parameters => o.operations.map { |x| @@evaluator.evaluate(x, scope) }.flatten,
32
32
  :file => o.file,
@@ -182,19 +182,19 @@ class CollectorTransformer
182
182
  def match_AndExpression(o, scope)
183
183
  left_match = match(o.left_expr, scope)
184
184
  right_match = match(o.right_expr, scope)
185
- return [left_match, 'and', right_match]
185
+ [left_match, 'and', right_match]
186
186
  end
187
187
 
188
188
  def match_OrExpression(o, scope)
189
189
  left_match = match(o.left_expr, scope)
190
190
  right_match = match(o.right_expr, scope)
191
- return [left_match, 'or', right_match]
191
+ [left_match, 'or', right_match]
192
192
  end
193
193
 
194
194
  def match_ComparisonExpression(o, scope)
195
195
  left_match = match(o.left_expr, scope)
196
196
  right_match = match(o.right_expr, scope)
197
- return [left_match, o.operator.to_s, right_match]
197
+ [left_match, o.operator.to_s, right_match]
198
198
  end
199
199
 
200
200
  def match_VariableExpression(o, scope)
@@ -28,7 +28,7 @@ class Puppet::Pops::Evaluator::Collectors::AbstractCollector
28
28
  @collected = {}
29
29
  @scope = scope
30
30
 
31
- if !(overrides.nil? || overrides[:parameters])
31
+ unless overrides.nil? || overrides[:parameters]
32
32
  raise ArgumentError, _("Exported resource try to override without parameters")
33
33
  end
34
34
 
@@ -50,12 +50,12 @@ class Puppet::Pops::Evaluator::Collectors::AbstractCollector
50
50
  overrides[:source].override = true
51
51
 
52
52
  objects.each do |res|
53
- unless @collected.include?(res.ref)
54
- t = res.type
55
- t = Puppet::Pops::Evaluator::Runtime3ResourceSupport.find_resource_type(scope, t)
56
- newres = Puppet::Parser::Resource.new(t, res.title, @overrides)
57
- scope.compiler.add_override(newres)
58
- end
53
+ next if @collected.include?(res.ref)
54
+
55
+ t = res.type
56
+ t = Puppet::Pops::Evaluator::Runtime3ResourceSupport.find_resource_type(scope, t)
57
+ newres = Puppet::Parser::Resource.new(t, res.title, @overrides)
58
+ scope.compiler.add_override(newres)
59
59
  end
60
60
  end
61
61