puppet 8.5.0-universal-darwin → 8.6.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 (543) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +29 -26
  3. data/ext/windows/service/daemon.rb +49 -55
  4. data/lib/hiera/scope.rb +3 -3
  5. data/lib/hiera_puppet.rb +1 -1
  6. data/lib/puppet/agent/disabler.rb +1 -1
  7. data/lib/puppet/application/agent.rb +2 -2
  8. data/lib/puppet/application/apply.rb +2 -2
  9. data/lib/puppet/application/describe.rb +6 -6
  10. data/lib/puppet/application/device.rb +99 -100
  11. data/lib/puppet/application/doc.rb +1 -1
  12. data/lib/puppet/application/face_base.rb +7 -7
  13. data/lib/puppet/application/filebucket.rb +1 -1
  14. data/lib/puppet/application/lookup.rb +5 -5
  15. data/lib/puppet/application/resource.rb +10 -3
  16. data/lib/puppet/application/ssl.rb +3 -3
  17. data/lib/puppet/application.rb +16 -18
  18. data/lib/puppet/coercion.rb +1 -1
  19. data/lib/puppet/configurer/downloader.rb +9 -4
  20. data/lib/puppet/configurer/fact_handler.rb +12 -13
  21. data/lib/puppet/configurer.rb +16 -18
  22. data/lib/puppet/confine/feature.rb +1 -1
  23. data/lib/puppet/confine/variable.rb +1 -1
  24. data/lib/puppet/confine.rb +2 -2
  25. data/lib/puppet/confine_collection.rb +1 -1
  26. data/lib/puppet/confiner.rb +2 -2
  27. data/lib/puppet/daemon.rb +3 -3
  28. data/lib/puppet/datatypes.rb +5 -6
  29. data/lib/puppet/defaults.rb +14 -8
  30. data/lib/puppet/environments.rb +3 -7
  31. data/lib/puppet/error.rb +3 -3
  32. data/lib/puppet/external/dot.rb +42 -34
  33. data/lib/puppet/face/catalog/select.rb +1 -1
  34. data/lib/puppet/face/epp.rb +7 -9
  35. data/lib/puppet/face/help.rb +12 -12
  36. data/lib/puppet/face/module/changes.rb +1 -3
  37. data/lib/puppet/face/module/list.rb +37 -37
  38. data/lib/puppet/face/node/clean.rb +1 -1
  39. data/lib/puppet/face/parser.rb +6 -8
  40. data/lib/puppet/face/report.rb +5 -7
  41. data/lib/puppet/facter_impl.rb +1 -1
  42. data/lib/puppet/feature/base.rb +9 -11
  43. data/lib/puppet/feature/pe_license.rb +1 -1
  44. data/lib/puppet/feature/ssh.rb +1 -1
  45. data/lib/puppet/feature/telnet.rb +3 -5
  46. data/lib/puppet/feature/zlib.rb +1 -1
  47. data/lib/puppet/ffi/windows/constants.rb +1 -1
  48. data/lib/puppet/ffi/windows/functions.rb +2 -2
  49. data/lib/puppet/ffi/windows/structs.rb +3 -3
  50. data/lib/puppet/file_bucket/dipper.rb +4 -4
  51. data/lib/puppet/file_bucket/file.rb +4 -4
  52. data/lib/puppet/file_serving/base.rb +5 -5
  53. data/lib/puppet/file_serving/configuration/parser.rb +9 -9
  54. data/lib/puppet/file_serving/configuration.rb +3 -3
  55. data/lib/puppet/file_serving/fileset.rb +13 -13
  56. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  57. data/lib/puppet/file_serving/metadata.rb +13 -9
  58. data/lib/puppet/file_serving/mount/file.rb +6 -6
  59. data/lib/puppet/file_serving/mount/locales.rb +2 -4
  60. data/lib/puppet/file_serving/mount/pluginfacts.rb +2 -4
  61. data/lib/puppet/file_serving/mount/plugins.rb +2 -4
  62. data/lib/puppet/file_serving/mount.rb +1 -1
  63. data/lib/puppet/file_system/file_impl.rb +3 -3
  64. data/lib/puppet/file_system/memory_impl.rb +1 -1
  65. data/lib/puppet/file_system/path_pattern.rb +1 -1
  66. data/lib/puppet/file_system/uniquefile.rb +17 -16
  67. data/lib/puppet/file_system/windows.rb +26 -18
  68. data/lib/puppet/forge/cache.rb +2 -2
  69. data/lib/puppet/forge/errors.rb +1 -1
  70. data/lib/puppet/forge/repository.rb +2 -2
  71. data/lib/puppet/forge.rb +13 -19
  72. data/lib/puppet/functions/abs.rb +2 -2
  73. data/lib/puppet/functions/camelcase.rb +1 -1
  74. data/lib/puppet/functions/compare.rb +2 -2
  75. data/lib/puppet/functions/contain.rb +1 -1
  76. data/lib/puppet/functions/defined.rb +2 -2
  77. data/lib/puppet/functions/dig.rb +1 -1
  78. data/lib/puppet/functions/eyaml_lookup_key.rb +11 -13
  79. data/lib/puppet/functions/get.rb +1 -1
  80. data/lib/puppet/functions/hocon_data.rb +3 -5
  81. data/lib/puppet/functions/import.rb +1 -1
  82. data/lib/puppet/functions/json_data.rb +4 -6
  83. data/lib/puppet/functions/max.rb +2 -2
  84. data/lib/puppet/functions/min.rb +2 -2
  85. data/lib/puppet/functions/new.rb +1 -1
  86. data/lib/puppet/functions/reduce.rb +6 -10
  87. data/lib/puppet/functions/regsubst.rb +2 -2
  88. data/lib/puppet/functions/require.rb +1 -1
  89. data/lib/puppet/functions/yaml_data.rb +11 -13
  90. data/lib/puppet/functions.rb +32 -37
  91. data/lib/puppet/generate/type.rb +2 -2
  92. data/lib/puppet/gettext/config.rb +9 -9
  93. data/lib/puppet/graph/rb_tree_map.rb +31 -23
  94. data/lib/puppet/graph/relationship_graph.rb +12 -12
  95. data/lib/puppet/graph/simple_graph.rb +8 -10
  96. data/lib/puppet/http/client.rb +1 -1
  97. data/lib/puppet/http/dns.rb +4 -4
  98. data/lib/puppet/http/external_client.rb +1 -1
  99. data/lib/puppet/http/factory.rb +1 -1
  100. data/lib/puppet/http/proxy.rb +15 -15
  101. data/lib/puppet/http/redirector.rb +6 -2
  102. data/lib/puppet/http/resolver.rb +2 -2
  103. data/lib/puppet/http/retry_after_handler.rb +2 -2
  104. data/lib/puppet/http/service/ca.rb +1 -1
  105. data/lib/puppet/http/service/compiler.rb +4 -4
  106. data/lib/puppet/http/service/file_server.rb +1 -1
  107. data/lib/puppet/http/service/report.rb +2 -2
  108. data/lib/puppet/http/service.rb +9 -13
  109. data/lib/puppet/http/session.rb +1 -1
  110. data/lib/puppet/http/site.rb +1 -1
  111. data/lib/puppet/indirector/catalog/compiler.rb +44 -45
  112. data/lib/puppet/indirector/catalog/rest.rb +7 -5
  113. data/lib/puppet/indirector/catalog/store_configs.rb +1 -1
  114. data/lib/puppet/indirector/exec.rb +2 -2
  115. data/lib/puppet/indirector/face.rb +7 -9
  116. data/lib/puppet/indirector/fact_search.rb +1 -1
  117. data/lib/puppet/indirector/facts/facter.rb +6 -6
  118. data/lib/puppet/indirector/facts/json.rb +1 -1
  119. data/lib/puppet/indirector/facts/store_configs.rb +1 -1
  120. data/lib/puppet/indirector/file_bucket_file/file.rb +17 -17
  121. data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -3
  122. data/lib/puppet/indirector/file_content/rest.rb +1 -1
  123. data/lib/puppet/indirector/file_metadata/rest.rb +1 -1
  124. data/lib/puppet/indirector/hiera.rb +1 -1
  125. data/lib/puppet/indirector/indirection.rb +27 -29
  126. data/lib/puppet/indirector/json.rb +4 -4
  127. data/lib/puppet/indirector/memory.rb +2 -2
  128. data/lib/puppet/indirector/msgpack.rb +5 -5
  129. data/lib/puppet/indirector/node/store_configs.rb +1 -1
  130. data/lib/puppet/indirector/none.rb +1 -1
  131. data/lib/puppet/indirector/report/json.rb +1 -1
  132. data/lib/puppet/indirector/report/yaml.rb +1 -1
  133. data/lib/puppet/indirector/request.rb +4 -4
  134. data/lib/puppet/indirector/resource/ral.rb +2 -4
  135. data/lib/puppet/indirector/resource/store_configs.rb +1 -1
  136. data/lib/puppet/indirector/terminus.rb +4 -4
  137. data/lib/puppet/indirector/yaml.rb +3 -3
  138. data/lib/puppet/info_service/class_information_service.rb +5 -8
  139. data/lib/puppet/info_service/task_information_service.rb +6 -7
  140. data/lib/puppet/interface/action.rb +5 -5
  141. data/lib/puppet/interface/action_manager.rb +5 -5
  142. data/lib/puppet/interface/documentation.rb +5 -5
  143. data/lib/puppet/interface/face_collection.rb +7 -7
  144. data/lib/puppet/interface/option.rb +2 -2
  145. data/lib/puppet/interface/option_manager.rb +6 -6
  146. data/lib/puppet/interface.rb +4 -4
  147. data/lib/puppet/metatype/manager.rb +2 -2
  148. data/lib/puppet/module/plan.rb +10 -10
  149. data/lib/puppet/module/task.rb +8 -8
  150. data/lib/puppet/module.rb +39 -41
  151. data/lib/puppet/module_tool/applications/application.rb +10 -8
  152. data/lib/puppet/module_tool/applications/installer.rb +53 -50
  153. data/lib/puppet/module_tool/applications/unpacker.rb +6 -8
  154. data/lib/puppet/module_tool/applications/upgrader.rb +37 -34
  155. data/lib/puppet/module_tool/checksums.rb +2 -2
  156. data/lib/puppet/module_tool/dependency.rb +1 -1
  157. data/lib/puppet/module_tool/errors/base.rb +1 -1
  158. data/lib/puppet/module_tool/install_directory.rb +1 -1
  159. data/lib/puppet/module_tool/local_tarball.rb +3 -5
  160. data/lib/puppet/module_tool/metadata.rb +12 -8
  161. data/lib/puppet/module_tool/shared_behaviors.rb +27 -12
  162. data/lib/puppet/module_tool/tar/mini.rb +3 -3
  163. data/lib/puppet/module_tool.rb +4 -4
  164. data/lib/puppet/network/client_request.rb +5 -3
  165. data/lib/puppet/network/format.rb +2 -2
  166. data/lib/puppet/network/format_support.rb +1 -1
  167. data/lib/puppet/network/formats.rb +1 -1
  168. data/lib/puppet/network/http/api/indirected_routes.rb +24 -44
  169. data/lib/puppet/network/http/api/server/v3.rb +1 -1
  170. data/lib/puppet/network/http/connection.rb +1 -1
  171. data/lib/puppet/network/http/handler.rb +8 -12
  172. data/lib/puppet/network/http/request.rb +1 -1
  173. data/lib/puppet/network/http/route.rb +9 -9
  174. data/lib/puppet/node/environment.rb +21 -23
  175. data/lib/puppet/node/facts.rb +1 -1
  176. data/lib/puppet/node.rb +5 -5
  177. data/lib/puppet/pal/json_catalog_encoder.rb +1 -1
  178. data/lib/puppet/pal/pal_impl.rb +48 -50
  179. data/lib/puppet/pal/plan_signature.rb +1 -1
  180. data/lib/puppet/pal/task_signature.rb +1 -1
  181. data/lib/puppet/parameter/package_options.rb +1 -1
  182. data/lib/puppet/parameter/value.rb +2 -2
  183. data/lib/puppet/parameter/value_collection.rb +7 -7
  184. data/lib/puppet/parameter.rb +8 -9
  185. data/lib/puppet/parser/ast/block_expression.rb +2 -2
  186. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  187. data/lib/puppet/parser/ast/pops_bridge.rb +3 -4
  188. data/lib/puppet/parser/ast/resource.rb +4 -4
  189. data/lib/puppet/parser/ast/resourceparam.rb +4 -4
  190. data/lib/puppet/parser/ast.rb +14 -15
  191. data/lib/puppet/parser/compiler.rb +26 -28
  192. data/lib/puppet/parser/functions/create_resources.rb +3 -3
  193. data/lib/puppet/parser/functions/fail.rb +1 -1
  194. data/lib/puppet/parser/functions/generate.rb +2 -2
  195. data/lib/puppet/parser/functions/tag.rb +1 -1
  196. data/lib/puppet/parser/functions.rb +2 -2
  197. data/lib/puppet/parser/relationship.rb +3 -1
  198. data/lib/puppet/parser/resource/param.rb +2 -2
  199. data/lib/puppet/parser/resource.rb +23 -23
  200. data/lib/puppet/parser/scope.rb +10 -10
  201. data/lib/puppet/parser/script_compiler.rb +1 -1
  202. data/lib/puppet/parser/templatewrapper.rb +1 -1
  203. data/lib/puppet/parser/type_loader.rb +10 -12
  204. data/lib/puppet/parser.rb +1 -1
  205. data/lib/puppet/pops/adaptable.rb +1 -1
  206. data/lib/puppet/pops/evaluator/access_operator.rb +8 -8
  207. data/lib/puppet/pops/evaluator/callable_signature.rb +4 -4
  208. data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -4
  209. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +7 -7
  210. data/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +6 -6
  211. data/lib/puppet/pops/evaluator/compare_operator.rb +10 -10
  212. data/lib/puppet/pops/evaluator/deferred_resolver.rb +1 -1
  213. data/lib/puppet/pops/evaluator/epp_evaluator.rb +2 -2
  214. data/lib/puppet/pops/evaluator/evaluator_impl.rb +56 -60
  215. data/lib/puppet/pops/evaluator/literal_evaluator.rb +4 -0
  216. data/lib/puppet/pops/evaluator/relationship_operator.rb +2 -2
  217. data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
  218. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  219. data/lib/puppet/pops/functions/dispatcher.rb +3 -3
  220. data/lib/puppet/pops/functions/function.rb +14 -16
  221. data/lib/puppet/pops/issue_reporter.rb +2 -2
  222. data/lib/puppet/pops/label_provider.rb +2 -2
  223. data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
  224. data/lib/puppet/pops/loader/loader.rb +4 -4
  225. data/lib/puppet/pops/loader/loader_paths.rb +3 -3
  226. data/lib/puppet/pops/loader/module_loaders.rb +11 -11
  227. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  228. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  229. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
  230. data/lib/puppet/pops/loader/static_loader.rb +3 -3
  231. data/lib/puppet/pops/loaders.rb +3 -3
  232. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  233. data/lib/puppet/pops/lookup/explainer.rb +2 -2
  234. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  235. data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
  236. data/lib/puppet/pops/lookup/interpolation.rb +3 -3
  237. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  238. data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
  239. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
  240. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  241. data/lib/puppet/pops/merge_strategy.rb +6 -6
  242. data/lib/puppet/pops/migration/migration_checker.rb +1 -1
  243. data/lib/puppet/pops/model/ast_transformer.rb +9 -11
  244. data/lib/puppet/pops/model/factory.rb +4 -5
  245. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  246. data/lib/puppet/pops/parser/epp_support.rb +1 -1
  247. data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
  248. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  249. data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
  250. data/lib/puppet/pops/parser/lexer2.rb +20 -12
  251. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  252. data/lib/puppet/pops/parser/locator.rb +4 -4
  253. data/lib/puppet/pops/parser/parser_support.rb +12 -14
  254. data/lib/puppet/pops/parser/pn_parser.rb +3 -3
  255. data/lib/puppet/pops/parser/slurp_support.rb +8 -8
  256. data/lib/puppet/pops/patterns.rb +12 -12
  257. data/lib/puppet/pops/pcore.rb +1 -1
  258. data/lib/puppet/pops/pn.rb +2 -2
  259. data/lib/puppet/pops/puppet_stack.rb +1 -1
  260. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  261. data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
  262. data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
  263. data/lib/puppet/pops/time/timestamp.rb +1 -1
  264. data/lib/puppet/pops/types/class_loader.rb +4 -6
  265. data/lib/puppet/pops/types/iterable.rb +1 -1
  266. data/lib/puppet/pops/types/p_binary_type.rb +1 -1
  267. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  268. data/lib/puppet/pops/types/p_object_type.rb +5 -5
  269. data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
  270. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
  271. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  272. data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
  273. data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
  274. data/lib/puppet/pops/types/p_uri_type.rb +4 -4
  275. data/lib/puppet/pops/types/recursion_guard.rb +4 -4
  276. data/lib/puppet/pops/types/ruby_generator.rb +2 -2
  277. data/lib/puppet/pops/types/string_converter.rb +12 -8
  278. data/lib/puppet/pops/types/tree_iterators.rb +4 -6
  279. data/lib/puppet/pops/types/type_calculator.rb +10 -10
  280. data/lib/puppet/pops/types/type_factory.rb +7 -3
  281. data/lib/puppet/pops/types/type_formatter.rb +22 -24
  282. data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
  283. data/lib/puppet/pops/types/types.rb +28 -24
  284. data/lib/puppet/pops/utils.rb +38 -42
  285. data/lib/puppet/pops/validation/checker4_0.rb +10 -10
  286. data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
  287. data/lib/puppet/pops/validation/validator_factory_4_0.rb +2 -0
  288. data/lib/puppet/pops/validation.rb +4 -4
  289. data/lib/puppet/pops/visitor.rb +2 -2
  290. data/lib/puppet/property/ensure.rb +12 -14
  291. data/lib/puppet/property/keyvalue.rb +4 -4
  292. data/lib/puppet/property/list.rb +4 -4
  293. data/lib/puppet/property/ordered_list.rb +1 -1
  294. data/lib/puppet/property.rb +31 -33
  295. data/lib/puppet/provider/exec.rb +2 -2
  296. data/lib/puppet/provider/file/posix.rb +19 -17
  297. data/lib/puppet/provider/file/windows.rb +13 -19
  298. data/lib/puppet/provider/group/directoryservice.rb +3 -2
  299. data/lib/puppet/provider/group/groupadd.rb +4 -4
  300. data/lib/puppet/provider/group/windows_adsi.rb +2 -2
  301. data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
  302. data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
  303. data/lib/puppet/provider/nameservice/pw.rb +1 -2
  304. data/lib/puppet/provider/nameservice.rb +8 -8
  305. data/lib/puppet/provider/package/aix.rb +19 -19
  306. data/lib/puppet/provider/package/appdmg.rb +2 -2
  307. data/lib/puppet/provider/package/apple.rb +1 -1
  308. data/lib/puppet/provider/package/apt.rb +18 -18
  309. data/lib/puppet/provider/package/aptitude.rb +1 -3
  310. data/lib/puppet/provider/package/aptrpm.rb +9 -9
  311. data/lib/puppet/provider/package/blastwave.rb +10 -14
  312. data/lib/puppet/provider/package/dnfmodule.rb +3 -3
  313. data/lib/puppet/provider/package/dpkg.rb +11 -13
  314. data/lib/puppet/provider/package/fink.rb +14 -14
  315. data/lib/puppet/provider/package/freebsd.rb +1 -1
  316. data/lib/puppet/provider/package/gem.rb +12 -14
  317. data/lib/puppet/provider/package/macports.rb +2 -2
  318. data/lib/puppet/provider/package/nim.rb +10 -10
  319. data/lib/puppet/provider/package/openbsd.rb +22 -22
  320. data/lib/puppet/provider/package/opkg.rb +6 -6
  321. data/lib/puppet/provider/package/pacman.rb +35 -29
  322. data/lib/puppet/provider/package/pip.rb +25 -24
  323. data/lib/puppet/provider/package/pkg.rb +15 -15
  324. data/lib/puppet/provider/package/pkgdmg.rb +10 -10
  325. data/lib/puppet/provider/package/pkgin.rb +2 -2
  326. data/lib/puppet/provider/package/pkgng.rb +5 -5
  327. data/lib/puppet/provider/package/pkgutil.rb +17 -21
  328. data/lib/puppet/provider/package/portage.rb +59 -61
  329. data/lib/puppet/provider/package/ports.rb +12 -11
  330. data/lib/puppet/provider/package/portupgrade.rb +35 -35
  331. data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
  332. data/lib/puppet/provider/package/rpm.rb +26 -26
  333. data/lib/puppet/provider/package/rug.rb +7 -9
  334. data/lib/puppet/provider/package/sun.rb +4 -4
  335. data/lib/puppet/provider/package/up2date.rb +5 -7
  336. data/lib/puppet/provider/package/urpmi.rb +6 -6
  337. data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
  338. data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
  339. data/lib/puppet/provider/package/windows/package.rb +2 -2
  340. data/lib/puppet/provider/package/windows.rb +3 -5
  341. data/lib/puppet/provider/package/yum.rb +33 -37
  342. data/lib/puppet/provider/package/zypper.rb +12 -14
  343. data/lib/puppet/provider/package.rb +1 -1
  344. data/lib/puppet/provider/package_targetable.rb +1 -1
  345. data/lib/puppet/provider/parsedfile.rb +9 -9
  346. data/lib/puppet/provider/service/base.rb +16 -21
  347. data/lib/puppet/provider/service/bsd.rb +4 -4
  348. data/lib/puppet/provider/service/daemontools.rb +31 -31
  349. data/lib/puppet/provider/service/debian.rb +6 -6
  350. data/lib/puppet/provider/service/freebsd.rb +36 -36
  351. data/lib/puppet/provider/service/gentoo.rb +6 -6
  352. data/lib/puppet/provider/service/init.rb +19 -19
  353. data/lib/puppet/provider/service/launchd.rb +22 -22
  354. data/lib/puppet/provider/service/openbsd.rb +10 -10
  355. data/lib/puppet/provider/service/openrc.rb +1 -1
  356. data/lib/puppet/provider/service/openwrt.rb +3 -3
  357. data/lib/puppet/provider/service/rcng.rb +3 -3
  358. data/lib/puppet/provider/service/redhat.rb +4 -4
  359. data/lib/puppet/provider/service/runit.rb +6 -6
  360. data/lib/puppet/provider/service/service.rb +5 -7
  361. data/lib/puppet/provider/service/smf.rb +28 -27
  362. data/lib/puppet/provider/service/src.rb +7 -7
  363. data/lib/puppet/provider/service/systemd.rb +31 -37
  364. data/lib/puppet/provider/service/upstart.rb +17 -17
  365. data/lib/puppet/provider/service/windows.rb +7 -7
  366. data/lib/puppet/provider/user/aix.rb +4 -2
  367. data/lib/puppet/provider/user/directoryservice.rb +34 -36
  368. data/lib/puppet/provider/user/hpux.rb +10 -14
  369. data/lib/puppet/provider/user/pw.rb +1 -1
  370. data/lib/puppet/provider/user/user_role_add.rb +16 -18
  371. data/lib/puppet/provider/user/useradd.rb +7 -7
  372. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  373. data/lib/puppet/provider.rb +8 -8
  374. data/lib/puppet/reference/indirection.rb +3 -0
  375. data/lib/puppet/reference/metaparameter.rb +1 -1
  376. data/lib/puppet/reference/providers.rb +3 -3
  377. data/lib/puppet/reference/type.rb +1 -1
  378. data/lib/puppet/relationship.rb +4 -5
  379. data/lib/puppet/reports/http.rb +1 -1
  380. data/lib/puppet/reports/log.rb +2 -2
  381. data/lib/puppet/reports/store.rb +4 -4
  382. data/lib/puppet/reports.rb +2 -2
  383. data/lib/puppet/resource/catalog.rb +16 -16
  384. data/lib/puppet/resource/status.rb +3 -3
  385. data/lib/puppet/resource/type.rb +8 -8
  386. data/lib/puppet/resource/type_collection.rb +1 -1
  387. data/lib/puppet/resource.rb +41 -41
  388. data/lib/puppet/scheduler/scheduler.rb +1 -1
  389. data/lib/puppet/settings/alias_setting.rb +3 -5
  390. data/lib/puppet/settings/base_setting.rb +11 -11
  391. data/lib/puppet/settings/boolean_setting.rb +2 -2
  392. data/lib/puppet/settings/config_file.rb +5 -4
  393. data/lib/puppet/settings/duration_setting.rb +2 -2
  394. data/lib/puppet/settings/environment_conf.rb +3 -3
  395. data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
  396. data/lib/puppet/settings/file_setting.rb +11 -11
  397. data/lib/puppet/settings/ini_file.rb +3 -3
  398. data/lib/puppet/settings/port_setting.rb +1 -1
  399. data/lib/puppet/settings/priority_setting.rb +2 -2
  400. data/lib/puppet/settings/ttl_setting.rb +2 -2
  401. data/lib/puppet/settings/value_translator.rb +8 -8
  402. data/lib/puppet/settings.rb +65 -70
  403. data/lib/puppet/ssl/base.rb +2 -4
  404. data/lib/puppet/ssl/certificate_request.rb +18 -22
  405. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  406. data/lib/puppet/ssl/oids.rb +2 -2
  407. data/lib/puppet/ssl/openssl_loader.rb +4 -4
  408. data/lib/puppet/syntax_checkers/base64.rb +3 -3
  409. data/lib/puppet/syntax_checkers/epp.rb +3 -3
  410. data/lib/puppet/syntax_checkers/json.rb +3 -3
  411. data/lib/puppet/syntax_checkers/pp.rb +3 -3
  412. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  413. data/lib/puppet/transaction/event.rb +2 -2
  414. data/lib/puppet/transaction/event_manager.rb +5 -5
  415. data/lib/puppet/transaction/persistence.rb +12 -14
  416. data/lib/puppet/transaction/report.rb +4 -4
  417. data/lib/puppet/transaction/resource_harness.rb +2 -2
  418. data/lib/puppet/transaction.rb +14 -18
  419. data/lib/puppet/type/component.rb +3 -3
  420. data/lib/puppet/type/exec.rb +43 -45
  421. data/lib/puppet/type/file/checksum_value.rb +1 -1
  422. data/lib/puppet/type/file/content.rb +6 -6
  423. data/lib/puppet/type/file/ctime.rb +2 -2
  424. data/lib/puppet/type/file/data_sync.rb +3 -3
  425. data/lib/puppet/type/file/ensure.rb +16 -15
  426. data/lib/puppet/type/file/mode.rb +9 -9
  427. data/lib/puppet/type/file/mtime.rb +2 -2
  428. data/lib/puppet/type/file/selcontext.rb +14 -14
  429. data/lib/puppet/type/file/source.rb +19 -21
  430. data/lib/puppet/type/file/target.rb +11 -11
  431. data/lib/puppet/type/file.rb +21 -21
  432. data/lib/puppet/type/filebucket.rb +3 -3
  433. data/lib/puppet/type/group.rb +3 -3
  434. data/lib/puppet/type/notify.rb +2 -2
  435. data/lib/puppet/type/package.rb +4 -4
  436. data/lib/puppet/type/resources.rb +6 -6
  437. data/lib/puppet/type/schedule.rb +9 -9
  438. data/lib/puppet/type/service.rb +6 -8
  439. data/lib/puppet/type/tidy.rb +22 -24
  440. data/lib/puppet/type/user.rb +13 -13
  441. data/lib/puppet/type.rb +76 -88
  442. data/lib/puppet/util/at_fork/solaris.rb +33 -37
  443. data/lib/puppet/util/autoload.rb +2 -2
  444. data/lib/puppet/util/backups.rb +9 -9
  445. data/lib/puppet/util/character_encoding.rb +7 -6
  446. data/lib/puppet/util/checksums.rb +2 -2
  447. data/lib/puppet/util/classgen.rb +8 -8
  448. data/lib/puppet/util/colors.rb +1 -1
  449. data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
  450. data/lib/puppet/util/command_line/trollop.rb +42 -46
  451. data/lib/puppet/util/command_line.rb +2 -2
  452. data/lib/puppet/util/constant_inflector.rb +2 -2
  453. data/lib/puppet/util/diff.rb +19 -21
  454. data/lib/puppet/util/docs.rb +2 -2
  455. data/lib/puppet/util/errors.rb +9 -9
  456. data/lib/puppet/util/execution.rb +32 -9
  457. data/lib/puppet/util/feature.rb +1 -1
  458. data/lib/puppet/util/fileparsing.rb +12 -16
  459. data/lib/puppet/util/filetype.rb +36 -40
  460. data/lib/puppet/util/inifile.rb +6 -12
  461. data/lib/puppet/util/ldap/connection.rb +1 -1
  462. data/lib/puppet/util/ldap/manager.rb +10 -12
  463. data/lib/puppet/util/lockfile.rb +6 -8
  464. data/lib/puppet/util/log/destination.rb +2 -2
  465. data/lib/puppet/util/log/destinations.rb +4 -4
  466. data/lib/puppet/util/log.rb +12 -9
  467. data/lib/puppet/util/logging.rb +11 -11
  468. data/lib/puppet/util/metric.rb +3 -3
  469. data/lib/puppet/util/monkey_patches.rb +5 -7
  470. data/lib/puppet/util/network_device/config.rb +3 -3
  471. data/lib/puppet/util/package/version/debian.rb +27 -28
  472. data/lib/puppet/util/package/version/pip.rb +5 -5
  473. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  474. data/lib/puppet/util/package/version/rpm.rb +1 -1
  475. data/lib/puppet/util/package.rb +2 -2
  476. data/lib/puppet/util/pidlock.rb +2 -2
  477. data/lib/puppet/util/platform.rb +1 -1
  478. data/lib/puppet/util/plist.rb +8 -10
  479. data/lib/puppet/util/posix.rb +17 -17
  480. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  481. data/lib/puppet/util/provider_features.rb +3 -3
  482. data/lib/puppet/util/rdoc/code_objects.rb +3 -3
  483. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
  484. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
  485. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
  486. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  487. data/lib/puppet/util/rdoc/parser.rb +1 -1
  488. data/lib/puppet/util/reference.rb +13 -9
  489. data/lib/puppet/util/retry_action.rb +1 -1
  490. data/lib/puppet/util/rpm_compare.rb +17 -18
  491. data/lib/puppet/util/rubygems.rb +1 -1
  492. data/lib/puppet/util/selinux.rb +7 -7
  493. data/lib/puppet/util/storage.rb +10 -12
  494. data/lib/puppet/util/suidmanager.rb +18 -19
  495. data/lib/puppet/util/symbolic_file_mode.rb +71 -75
  496. data/lib/puppet/util/tag_set.rb +2 -2
  497. data/lib/puppet/util/tagging.rb +8 -10
  498. data/lib/puppet/util/terminal.rb +4 -4
  499. data/lib/puppet/util/user_attr.rb +7 -7
  500. data/lib/puppet/util/watcher.rb +3 -5
  501. data/lib/puppet/util/windows/access_control_list.rb +1 -1
  502. data/lib/puppet/util/windows/adsi.rb +42 -42
  503. data/lib/puppet/util/windows/daemon.rb +64 -68
  504. data/lib/puppet/util/windows/error.rb +2 -2
  505. data/lib/puppet/util/windows/file.rb +18 -25
  506. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  507. data/lib/puppet/util/windows/principal.rb +8 -8
  508. data/lib/puppet/util/windows/process.rb +16 -28
  509. data/lib/puppet/util/windows/registry.rb +16 -15
  510. data/lib/puppet/util/windows/root_certs.rb +2 -2
  511. data/lib/puppet/util/windows/security.rb +31 -31
  512. data/lib/puppet/util/windows/service.rb +11 -11
  513. data/lib/puppet/util/windows/sid.rb +8 -8
  514. data/lib/puppet/util/windows/user.rb +18 -20
  515. data/lib/puppet/util/yaml.rb +1 -1
  516. data/lib/puppet/util.rb +55 -46
  517. data/lib/puppet/version.rb +2 -2
  518. data/lib/puppet/x509/pem_store.rb +1 -1
  519. data/lib/puppet.rb +3 -3
  520. data/man/man5/puppet.conf.5 +10 -2
  521. data/man/man8/puppet-agent.8 +1 -1
  522. data/man/man8/puppet-apply.8 +1 -1
  523. data/man/man8/puppet-catalog.8 +1 -1
  524. data/man/man8/puppet-config.8 +1 -1
  525. data/man/man8/puppet-describe.8 +1 -1
  526. data/man/man8/puppet-device.8 +1 -1
  527. data/man/man8/puppet-doc.8 +1 -1
  528. data/man/man8/puppet-epp.8 +1 -1
  529. data/man/man8/puppet-facts.8 +1 -1
  530. data/man/man8/puppet-filebucket.8 +1 -1
  531. data/man/man8/puppet-generate.8 +1 -1
  532. data/man/man8/puppet-help.8 +1 -1
  533. data/man/man8/puppet-lookup.8 +1 -1
  534. data/man/man8/puppet-module.8 +1 -1
  535. data/man/man8/puppet-node.8 +1 -1
  536. data/man/man8/puppet-parser.8 +1 -1
  537. data/man/man8/puppet-plugin.8 +1 -1
  538. data/man/man8/puppet-report.8 +1 -1
  539. data/man/man8/puppet-resource.8 +5 -1
  540. data/man/man8/puppet-script.8 +1 -1
  541. data/man/man8/puppet-ssl.8 +1 -1
  542. data/man/man8/puppet.8 +2 -2
  543. metadata +2 -2
@@ -57,7 +57,7 @@ class TypedModelObject < Object
57
57
  def self.register_ptypes(loader, ir)
58
58
  types = [
59
59
  Annotation.register_ptype(loader, ir),
60
- RubyMethod.register_ptype(loader, ir),
60
+ RubyMethod.register_ptype(loader, ir)
61
61
  ]
62
62
  Types.constants.each do |c|
63
63
  next if c == :PType || c == :PHostClassType
@@ -131,7 +131,7 @@ class PAnyType < TypedModelObject
131
131
  end
132
132
  when PVariantType
133
133
  # Assignable if all contained types are assignable, or if this is exactly Any
134
- return true if self.instance_of?(PAnyType)
134
+ return true if instance_of?(PAnyType)
135
135
  # An empty variant may be assignable to NotUndef[T] if T is assignable to empty variant
136
136
  return _assignable?(o, guard) if is_a?(PNotUndefType) && o.types.empty?
137
137
 
@@ -342,7 +342,7 @@ class PAnyType < TypedModelObject
342
342
  # @raises ArgumentError
343
343
  #
344
344
  def self.new_function(type)
345
- raise ArgumentError.new("Creation of new instance of type '#{type}' is not supported")
345
+ raise ArgumentError, "Creation of new instance of type '#{type}' is not supported"
346
346
  end
347
347
 
348
348
  # Answers the question if instances of this type can represent themselves as a string that
@@ -400,7 +400,7 @@ class PAnyType < TypedModelObject
400
400
  modified = false
401
401
  modified_types = types.map do |t|
402
402
  t_mod = t.send(method, *method_args)
403
- modified = !t.equal?(t_mod) unless modified
403
+ modified ||= !t.equal?(t_mod)
404
404
  t_mod
405
405
  end
406
406
  if modified
@@ -737,7 +737,7 @@ class PScalarDataType < PScalarType
737
737
  end
738
738
 
739
739
  def instance?(o, guard = nil)
740
- return o.instance_of?(String) || o.is_a?(Integer) || o.is_a?(Float) || o.is_a?(TrueClass) || o.is_a?(FalseClass)
740
+ o.instance_of?(String) || o.is_a?(Integer) || o.is_a?(Float) || o.is_a?(TrueClass) || o.is_a?(FalseClass)
741
741
  end
742
742
 
743
743
  DEFAULT = PScalarDataType.new
@@ -919,9 +919,9 @@ class PNumericType < PScalarDataType
919
919
 
920
920
  Puppet::Pops::Utils.to_n(from)
921
921
  rescue TypeError => e
922
- raise TypeConversionError.new(e.message)
922
+ raise TypeConversionError, e.message
923
923
  rescue ArgumentError => e
924
- raise TypeConversionError.new(e.message)
924
+ raise TypeConversionError, e.message
925
925
  end
926
926
  end
927
927
  end
@@ -952,7 +952,7 @@ class PNumericType < PScalarDataType
952
952
  # @return [Boolean] `true` if this range intersects with the other range
953
953
  # @api public
954
954
  def intersect?(o)
955
- self.instance_of?(o.class) && !(@to < o.numeric_from || o.numeric_to < @from)
955
+ instance_of?(o.class) && !(@to < o.numeric_from || o.numeric_to < @from)
956
956
  end
957
957
 
958
958
  # Returns the lower bound of the numeric range or `nil` if no lower bound is set.
@@ -1088,7 +1088,11 @@ class PIntegerType < PNumericType
1088
1088
  # numbers are converted to zero
1089
1089
  # @return [PIntegerType] a positive range
1090
1090
  def to_size
1091
- @from >= 0 ? self : PIntegerType.new(0, @to < 0 ? 0 : @to)
1091
+ if @from >= 0
1092
+ self
1093
+ else
1094
+ PIntegerType.new(0, @to < 0 ? 0 : @to)
1095
+ end
1092
1096
  end
1093
1097
 
1094
1098
  def new_function
@@ -1142,7 +1146,7 @@ class PIntegerType < PNumericType
1142
1146
  begin
1143
1147
  radix == :default ? Integer(from) : Integer(from, radix)
1144
1148
  rescue TypeError => e
1145
- raise TypeConversionError.new(e.message)
1149
+ raise TypeConversionError, e.message
1146
1150
  rescue ArgumentError => e
1147
1151
  # Test for special case where there is whitespace between sign and number
1148
1152
  match = Patterns::WS_BETWEEN_SIGN_AND_NUMBER.match(from)
@@ -1154,7 +1158,7 @@ class PIntegerType < PNumericType
1154
1158
  # Ignored to retain original error
1155
1159
  end
1156
1160
  end
1157
- raise TypeConversionError.new(e.message)
1161
+ raise TypeConversionError, e.message
1158
1162
  end
1159
1163
  end
1160
1164
  end
@@ -1184,7 +1188,7 @@ class PIntegerType < PNumericType
1184
1188
  when 2, 8, 10, 16
1185
1189
  # do nothing
1186
1190
  else
1187
- raise ArgumentError.new(_("Illegal radix: %{radix}, expected 2, 8, 10, 16, or default") % { radix: radix })
1191
+ raise ArgumentError, _("Illegal radix: %{radix}, expected 2, 8, 10, 16, or default") % { radix: radix }
1188
1192
  end
1189
1193
  radix
1190
1194
  end
@@ -1277,7 +1281,7 @@ class PFloatType < PNumericType
1277
1281
  end
1278
1282
  Float(from)
1279
1283
  rescue TypeError => e
1280
- raise TypeConversionError.new(e.message)
1284
+ raise TypeConversionError, e.message
1281
1285
  rescue ArgumentError => e
1282
1286
  # Test for special case where there is whitespace between sign and number
1283
1287
  match = Patterns::WS_BETWEEN_SIGN_AND_NUMBER.match(from)
@@ -1289,7 +1293,7 @@ class PFloatType < PNumericType
1289
1293
  # Ignored to retain original error
1290
1294
  end
1291
1295
  end
1292
- raise TypeConversionError.new(e.message)
1296
+ raise TypeConversionError, e.message
1293
1297
  end
1294
1298
  end
1295
1299
  end
@@ -1816,7 +1820,7 @@ class PPatternType < PScalarDataType
1816
1820
  else
1817
1821
  # the string in String type must match one of the patterns in Pattern type,
1818
1822
  # or Pattern represents all Patterns == all Strings
1819
- regexps = @patterns.map { |p| p.regexp }
1823
+ regexps = @patterns.map(&:regexp)
1820
1824
  regexps.empty? || regexps.any? { |re| re.match(v) }
1821
1825
  end
1822
1826
  when PEnumType
@@ -1827,7 +1831,7 @@ class PPatternType < PScalarDataType
1827
1831
  else
1828
1832
  # all strings in String/Enum type must match one of the patterns in Pattern type,
1829
1833
  # or Pattern represents all Patterns == all Strings
1830
- regexps = @patterns.map { |p| p.regexp }
1834
+ regexps = @patterns.map(&:regexp)
1831
1835
  regexps.empty? || o.values.all? { |s| regexps.any? { |re| re.match(s) } }
1832
1836
  end
1833
1837
  when PPatternType
@@ -1963,7 +1967,7 @@ class PStructElement < TypedModelObject
1963
1967
  end
1964
1968
 
1965
1969
  def <=>(o)
1966
- self.name <=> o.name
1970
+ name <=> o.name
1967
1971
  end
1968
1972
 
1969
1973
  def eql?(o)
@@ -2045,8 +2049,8 @@ class PStructType < PAnyType
2045
2049
  else
2046
2050
  PIterableType.new(
2047
2051
  PTupleType.new([
2048
- PVariantType.maybe_create(@elements.map { |se| se.key_type }),
2049
- PVariantType.maybe_create(@elements.map { |se| se.value_type })
2052
+ PVariantType.maybe_create(@elements.map(&:key_type)),
2053
+ PVariantType.maybe_create(@elements.map(&:value_type))
2050
2054
  ],
2051
2055
  PHashType::KEY_PAIR_TUPLE_SIZE)
2052
2056
  )
@@ -2434,7 +2438,7 @@ class PCallableType < PAnyType
2434
2438
  return false unless @param_types.instance?(args)
2435
2439
 
2436
2440
  if @block_type.nil?
2437
- block == nil
2441
+ block.nil?
2438
2442
  else
2439
2443
  @block_type.instance?(block)
2440
2444
  end
@@ -2842,7 +2846,7 @@ class PHashType < PCollectionType
2842
2846
  {}
2843
2847
  else
2844
2848
  unless from.size.even?
2845
- raise TypeConversionError.new(_('odd number of arguments for Hash'))
2849
+ raise TypeConversionError, _('odd number of arguments for Hash')
2846
2850
  end
2847
2851
 
2848
2852
  Hash[*from]
@@ -2854,7 +2858,7 @@ class PHashType < PCollectionType
2854
2858
  Hash[*Iterable.on(from).to_a]
2855
2859
  else
2856
2860
  t = TypeCalculator.singleton.infer(from).generalize
2857
- raise TypeConversionError.new(_("Value of type %{type} cannot be converted to Hash") % { type: t })
2861
+ raise TypeConversionError, _("Value of type %{type} cannot be converted to Hash") % { type: t }
2858
2862
  end
2859
2863
  end
2860
2864
  end
@@ -3054,7 +3058,7 @@ class PVariantType < PAnyType
3054
3058
  not_undefs = parts[0]
3055
3059
  if not_undefs.size > 1
3056
3060
  others = parts[1]
3057
- others << PNotUndefType.new(PVariantType.maybe_create(not_undefs.map { |not_undef| not_undef.type }).normalize)
3061
+ others << PNotUndefType.new(PVariantType.maybe_create(not_undefs.map(&:type)).normalize)
3058
3062
  array = others
3059
3063
  end
3060
3064
  end
@@ -3097,7 +3101,7 @@ class PVariantType < PAnyType
3097
3101
  patterns = parts[0]
3098
3102
  if patterns.size > 1
3099
3103
  others = parts[1]
3100
- others << PPatternType.new(patterns.map { |pattern| pattern.patterns }.flatten.uniq)
3104
+ others << PPatternType.new(patterns.map(&:patterns).flatten.uniq)
3101
3105
  array = others
3102
3106
  end
3103
3107
  end
@@ -45,37 +45,35 @@ module Utils
45
45
  # @api public
46
46
  #
47
47
  def self.to_n_with_radix o
48
- begin
49
- case o
50
- when String
51
- match = Patterns::NUMERIC.match(relativize_name(o))
52
- if !match
53
- nil
54
- elsif match[5].to_s.length > 0
55
- fp_value = match_to_fp(match)
56
- fp_value.nil? ? nil : [fp_value, 10]
57
- else
58
- # Set radix (default is decimal == 10)
59
- radix = 10
60
- if match[3].to_s.length > 0
61
- radix = 16
62
- elsif match[4].to_s.length > 1 && match[4][0, 1] == '0'
63
- radix = 8
64
- end
65
- # Ruby 1.8.7 does not have a second argument to Kernel method that creates an
66
- # integer from a string, it relies on the prefix 0x, 0X, 0 (and unsupported in puppet binary 'b')
67
- # We have the correct string here, match[2] is safe to parse without passing on radix
68
- match[1] == '-' ? [-Integer(match[2]), radix] : [Integer(match[2]), radix]
69
- end
70
- when Numeric
71
- # Impossible to calculate radix, assume decimal
72
- [o, 10]
73
- else
48
+ case o
49
+ when String
50
+ match = Patterns::NUMERIC.match(relativize_name(o))
51
+ if !match
74
52
  nil
53
+ elsif match[5].to_s.length > 0
54
+ fp_value = match_to_fp(match)
55
+ fp_value.nil? ? nil : [fp_value, 10]
56
+ else
57
+ # Set radix (default is decimal == 10)
58
+ radix = 10
59
+ if match[3].to_s.length > 0
60
+ radix = 16
61
+ elsif match[4].to_s.length > 1 && match[4][0, 1] == '0'
62
+ radix = 8
63
+ end
64
+ # Ruby 1.8.7 does not have a second argument to Kernel method that creates an
65
+ # integer from a string, it relies on the prefix 0x, 0X, 0 (and unsupported in puppet binary 'b')
66
+ # We have the correct string here, match[2] is safe to parse without passing on radix
67
+ match[1] == '-' ? [-Integer(match[2]), radix] : [Integer(match[2]), radix]
75
68
  end
76
- rescue ArgumentError
69
+ when Numeric
70
+ # Impossible to calculate radix, assume decimal
71
+ [o, 10]
72
+ else
77
73
  nil
78
74
  end
75
+ rescue ArgumentError
76
+ nil
79
77
  end
80
78
 
81
79
  # To Numeric (or already numeric)
@@ -84,25 +82,23 @@ module Utils
84
82
  # A leading '::' is accepted (and ignored)
85
83
  #
86
84
  def self.to_n o
87
- begin
88
- case o
89
- when String
90
- match = Patterns::NUMERIC.match(relativize_name(o))
91
- if !match
92
- nil
93
- elsif match[5].to_s.length > 0
94
- match_to_fp(match)
95
- else
96
- match[1] == '-' ? -Integer(match[2]) : Integer(match[2])
97
- end
98
- when Numeric
99
- o
100
- else
85
+ case o
86
+ when String
87
+ match = Patterns::NUMERIC.match(relativize_name(o))
88
+ if !match
101
89
  nil
90
+ elsif match[5].to_s.length > 0
91
+ match_to_fp(match)
92
+ else
93
+ match[1] == '-' ? -Integer(match[2]) : Integer(match[2])
102
94
  end
103
- rescue ArgumentError
95
+ when Numeric
96
+ o
97
+ else
104
98
  nil
105
99
  end
100
+ rescue ArgumentError
101
+ nil
106
102
  end
107
103
 
108
104
  # is the name absolute (i.e. starts with ::)
@@ -325,11 +325,11 @@ class Checker4_0 < Evaluator::LiteralEvaluator
325
325
  found_default = false
326
326
  o.options.each do |option|
327
327
  option.values.each do |value|
328
- if value.is_a?(Model::LiteralDefault)
329
- # Flag the second default as 'unreachable'
330
- acceptor.accept(Issues::DUPLICATE_DEFAULT, value, :container => o) if found_default
331
- found_default = true
332
- end
328
+ next unless value.is_a?(Model::LiteralDefault)
329
+
330
+ # Flag the second default as 'unreachable'
331
+ acceptor.accept(Issues::DUPLICATE_DEFAULT, value, :container => o) if found_default
332
+ found_default = true
333
333
  end
334
334
  end
335
335
  end
@@ -573,7 +573,7 @@ class Checker4_0 < Evaluator::LiteralEvaluator
573
573
  body = prog.body
574
574
  return if prog.body.is_a?(Model::Nop) # Ignore empty or comment-only files
575
575
 
576
- if (body.is_a?(Model::BlockExpression))
576
+ if body.is_a?(Model::BlockExpression)
577
577
  body.statements.each { |s| acceptor.accept(Issues::ILLEGAL_TOP_CONSTRUCT_LOCATION, s) unless valid_top_construct?(s) }
578
578
  else
579
579
  acceptor.accept(Issues::ILLEGAL_TOP_CONSTRUCT_LOCATION, body) unless valid_top_construct?(body)
@@ -620,7 +620,7 @@ class Checker4_0 < Evaluator::LiteralEvaluator
620
620
  # If a file comes from a module, but isn't in the right place, always error
621
621
  names = dir_to_names(relative_path)
622
622
 
623
- return adapter.file_to_namespace[file] = (names == BAD_MODULE_FILE ? BAD_MODULE_FILE : names.join("::").freeze)
623
+ adapter.file_to_namespace[file] = (names == BAD_MODULE_FILE ? BAD_MODULE_FILE : names.join("::").freeze)
624
624
  end
625
625
 
626
626
  def initial_manifest?(path, manifest_setting)
@@ -647,7 +647,7 @@ class Checker4_0 < Evaluator::LiteralEvaluator
647
647
  parent_dir_path = Pathname.new(parent_dir)
648
648
  clean_parent = parent_dir_path.cleanpath.to_s + File::SEPARATOR
649
649
 
650
- return child_dir.start_with?(clean_parent)
650
+ child_dir.start_with?(clean_parent)
651
651
  end
652
652
  private :is_parent_dir_of?
653
653
 
@@ -670,7 +670,7 @@ class Checker4_0 < Evaluator::LiteralEvaluator
670
670
  # Do not include name of module init file at top level of module
671
671
  # e.g. <module name>/manifests/init.pp
672
672
  filename = path_components[-1]
673
- if !(path_components.length == 3 && filename == 'init.pp')
673
+ unless path_components.length == 3 && filename == 'init.pp'
674
674
  names.push(filename[0..-4]) # Remove .pp from filename
675
675
  end
676
676
 
@@ -1124,7 +1124,7 @@ class Checker4_0 < Evaluator::LiteralEvaluator
1124
1124
 
1125
1125
  # Case expression is idem, if test, and all options are idem
1126
1126
  def idem_CaseExpression(o)
1127
- return false if !idem(o.test)
1127
+ return false unless idem(o.test)
1128
1128
 
1129
1129
  !o.options.any? { |opt| !idem(opt) }
1130
1130
  end
@@ -8,7 +8,7 @@ class TasksChecker < Checker4_0
8
8
  def in_ApplyExpression?
9
9
  top = container(0)
10
10
  step = -1
11
- until container(step) == top do
11
+ until container(step) == top
12
12
  return true if container(step).is_a? Puppet::Pops::Model::ApplyBlockExpression
13
13
 
14
14
  step -= 1
@@ -36,6 +36,8 @@ class ValidatorFactory_4_0 < Factory
36
36
  p[Issues::NAME_WITH_HYPHEN] = :error
37
37
  p[Issues::EMPTY_RESOURCE_SPECIALIZATION] = :ignore
38
38
  p[Issues::CLASS_NOT_VIRTUALIZABLE] = :error
39
+
40
+ p[Issues::ILLEGAL_NONLITERAL_PARAMETER_TYPE] = :deprecation
39
41
  p
40
42
  end
41
43
  end
@@ -126,13 +126,13 @@ module Validation
126
126
  #
127
127
  def []=(issue, level)
128
128
  unless issue.is_a? Issues::Issue
129
- raise Puppet::DevError.new(_("Attempt to set validation severity for something that is not an Issue. (Got %{issue})") % { issue: issue.class })
129
+ raise Puppet::DevError, _("Attempt to set validation severity for something that is not an Issue. (Got %{issue})") % { issue: issue.class }
130
130
  end
131
131
  unless SEVERITIES[level]
132
- raise Puppet::DevError.new(_("Illegal severity level: %{level} for '%{issue_code}'") % { issue_code: issue.issue_code, level: level })
132
+ raise Puppet::DevError, _("Illegal severity level: %{level} for '%{issue_code}'") % { issue_code: issue.issue_code, level: level }
133
133
  end
134
134
  unless issue.demotable? || level == :error
135
- raise Puppet::DevError.new(_("Attempt to demote the hard issue '%{issue_code}' to %{level}") % { issue_code: issue.issue_code, level: level })
135
+ raise Puppet::DevError, _("Attempt to demote the hard issue '%{issue_code}' to %{level}") % { issue_code: issue.issue_code, level: level }
136
136
  end
137
137
 
138
138
  @severities[issue] = level
@@ -153,7 +153,7 @@ module Validation
153
153
  #
154
154
  def assert_issue issue
155
155
  unless issue.is_a? Issues::Issue
156
- raise Puppet::DevError.new(_("Attempt to get validation severity for something that is not an Issue. (Got %{issue})") % { issue: issue.class })
156
+ raise Puppet::DevError, _("Attempt to get validation severity for something that is not an Issue. (Got %{issue})") % { issue: issue.class }
157
157
  end
158
158
  end
159
159
  end
@@ -16,8 +16,8 @@ class Visitor
16
16
  attr_reader :receiver, :message, :min_args, :max_args, :cache
17
17
 
18
18
  def initialize(receiver, message, min_args = 0, max_args = nil)
19
- raise ArgumentError.new("min_args must be >= 0") if min_args < 0
20
- raise ArgumentError.new("max_args must be >= min_args or nil") if max_args && max_args < min_args
19
+ raise ArgumentError, "min_args must be >= 0" if min_args < 0
20
+ raise ArgumentError, "max_args must be >= min_args or nil" if max_args && max_args < min_args
21
21
 
22
22
  @receiver = receiver
23
23
  @message = message
@@ -52,19 +52,17 @@ class Puppet::Property::Ensure < Puppet::Property
52
52
  end
53
53
 
54
54
  def change_to_s(currentvalue, newvalue)
55
- begin
56
- if currentvalue == :absent || currentvalue.nil?
57
- return _("created")
58
- elsif newvalue == :absent
59
- return _("removed")
60
- else
61
- return _('%{name} changed %{is} to %{should}') % { name: name, is: is_to_s(currentvalue), should: should_to_s(newvalue) }
62
- end
63
- rescue Puppet::Error
64
- raise
65
- rescue => detail
66
- raise Puppet::DevError, _("Could not convert change %{name} to string: %{detail}") % { name: self.name, detail: detail }, detail.backtrace
55
+ if currentvalue == :absent || currentvalue.nil?
56
+ _("created")
57
+ elsif newvalue == :absent
58
+ _("removed")
59
+ else
60
+ _('%{name} changed %{is} to %{should}') % { name: name, is: is_to_s(currentvalue), should: should_to_s(newvalue) }
67
61
  end
62
+ rescue Puppet::Error
63
+ raise
64
+ rescue => detail
65
+ raise Puppet::DevError, _("Could not convert change %{name} to string: %{detail}") % { name: name, detail: detail }, detail.backtrace
68
66
  end
69
67
 
70
68
  # Retrieves the _is_ value for the ensure property.
@@ -90,9 +88,9 @@ class Puppet::Property::Ensure < Puppet::Property
90
88
  raise Puppet::DevError, _("No ability to determine if %{name} exists") % { name: @resource.class.name }
91
89
  end
92
90
  if result
93
- return :present
91
+ :present
94
92
  else
95
- return :absent
93
+ :absent
96
94
  end
97
95
  end
98
96
 
@@ -110,9 +110,9 @@ module Puppet
110
110
  # ok, some 'convention' if the keyvalue property is named properties, provider should implement a properties method
111
111
  key_hash = provider.send(name) if provider
112
112
  if key_hash && key_hash != :absent
113
- return key_hash
113
+ key_hash
114
114
  else
115
- return :absent
115
+ :absent
116
116
  end
117
117
  end
118
118
 
@@ -121,7 +121,7 @@ module Puppet
121
121
  def insync?(is)
122
122
  return true unless is
123
123
 
124
- (is == self.should)
124
+ (is == should)
125
125
  end
126
126
 
127
127
  # We only accept an array of key/value pairs (strings), a single
@@ -135,7 +135,7 @@ module Puppet
135
135
 
136
136
  next if value.is_a?(Hash)
137
137
 
138
- unless value.include?("#{separator}")
138
+ unless value.include?(separator.to_s)
139
139
  raise ArgumentError, _("Key/value pairs must be separated by '%{separator}'") % { separator: separator }
140
140
  end
141
141
  end
@@ -35,7 +35,7 @@ module Puppet
35
35
 
36
36
  members = @should
37
37
  # inclusive means we are managing everything so if it isn't in should, its gone
38
- members = add_should_with_current(members, retrieve) if !inclusive?
38
+ members = add_should_with_current(members, retrieve) unless inclusive?
39
39
 
40
40
  dearrayify(members)
41
41
  end
@@ -48,9 +48,9 @@ module Puppet
48
48
  # ok, some 'convention' if the list property is named groups, provider should implement a groups method
49
49
  tmp = provider.send(name) if provider
50
50
  if tmp && tmp != :absent
51
- return tmp.instance_of?(Array) ? tmp : tmp.split(delimiter)
51
+ tmp.instance_of?(Array) ? tmp : tmp.split(delimiter)
52
52
  else
53
- return :absent
53
+ :absent
54
54
  end
55
55
  end
56
56
 
@@ -64,7 +64,7 @@ module Puppet
64
64
  def insync?(is)
65
65
  return true unless is
66
66
 
67
- (prepare_is_for_comparison(is) == self.should)
67
+ (prepare_is_for_comparison(is) == should)
68
68
  end
69
69
  end
70
70
  end
@@ -17,7 +17,7 @@ module Puppet
17
17
  # tricky trick
18
18
  # Preserve all the current items in the list
19
19
  # but move them to the back of the line
20
- should = should + (current - should)
20
+ should += (current - should)
21
21
  end
22
22
  should
23
23
  end