puppet 8.5.0-x64-mingw32 → 8.6.0-x64-mingw32

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
@@ -170,7 +170,7 @@ class PObjectType < PMetaType
170
170
  # @raises [Puppet::ParseError] if the assertion fails
171
171
  # @api private
172
172
  def assert_can_be_overridden(member)
173
- unless self.instance_of?(member.class)
173
+ unless instance_of?(member.class)
174
174
  raise Puppet::ParseError, _("%{member} attempts to override %{label}") % { member: member.label, label: label }
175
175
  end
176
176
  if @final && !(constant? && member.constant?)
@@ -261,7 +261,7 @@ class PObjectType < PMetaType
261
261
  # @api private
262
262
  def create_dispatch(instance)
263
263
  # TODO: Assumes Ruby implementation for now
264
- if (callable_type.is_a?(PVariantType))
264
+ if callable_type.is_a?(PVariantType)
265
265
  callable_type.types.map do |ct|
266
266
  Functions::Dispatch.new(ct, RubyGenerator.protect_reserved_name(name), [], false, ct.block_type.nil? ? nil : 'block')
267
267
  end
@@ -656,7 +656,7 @@ class PObjectType < PMetaType
656
656
  index = param_names.index(ip)
657
657
  if index.nil?
658
658
  raise Serialization::SerializationError,
659
- "Initializer for class #{impl_class.name} parameter '#{ip}' does not match any of the the attributes of type #{name}"
659
+ "Initializer for class #{impl_class.name} parameter '#{ip}' does not match any of the attributes of type #{name}"
660
660
  end
661
661
  new_param_types << param_types[index]
662
662
  end
@@ -901,7 +901,7 @@ class PObjectType < PMetaType
901
901
  tc = TypeCalculator.singleton
902
902
  constants, others = @attributes.partition do |_, a|
903
903
  a.kind == ATTRIBUTE_KIND_CONSTANT && a.type == tc.infer(a.value).generalize
904
- end.map { |ha| ha.to_h }
904
+ end.map(&:to_h)
905
905
 
906
906
  result[KEY_ATTRIBUTES] = compressed_members_hash(others) unless others.empty?
907
907
  unless constants.empty?
@@ -1111,7 +1111,7 @@ class PObjectType < PMetaType
1111
1111
  # @return [PObjectType] the topmost parent who's #equality_attributes include the given _attr_
1112
1112
  def find_equality_definer_of(attr)
1113
1113
  type = self
1114
- while !type.nil? do
1114
+ until type.nil?
1115
1115
  p = type.resolved_parent
1116
1116
  return type unless p.is_a?(PObjectType)
1117
1117
  return type unless p.equality_attributes.include?(attr.name)
@@ -209,12 +209,10 @@ class PObjectTypeExtension < PAnyType
209
209
  def test_instance?(o, guard)
210
210
  eval = Parser::EvaluatingParser.singleton.evaluator
211
211
  @parameters.keys.all? do |pn|
212
- begin
213
- m = o.public_method(pn)
214
- m.arity == 0 ? eval.match?(m.call, @parameters[pn]) : false
215
- rescue NameError
216
- false
217
- end
212
+ m = o.public_method(pn)
213
+ m.arity == 0 ? eval.match?(m.call, @parameters[pn]) : false
214
+ rescue NameError
215
+ false
218
216
  end
219
217
  end
220
218
 
@@ -158,7 +158,7 @@ class PSemVerRangeType < PAnyType
158
158
  end
159
159
 
160
160
  def from_hash(hash)
161
- from_versions(hash['min'], hash.fetch('max') { :default }, hash.fetch('exclude_max') { false })
161
+ from_versions(hash['min'], hash.fetch('max', :default), hash.fetch('exclude_max', false))
162
162
  end
163
163
  end
164
164
  end
@@ -72,7 +72,7 @@ class PSensitiveType < PTypeWithContainedType
72
72
  private
73
73
 
74
74
  def _assignable?(o, guard)
75
- self.instance_of?(o.class) && @type.assignable?(o.type, guard)
75
+ instance_of?(o.class) && @type.assignable?(o.type, guard)
76
76
  end
77
77
 
78
78
  DEFAULT = PSensitiveType.new
@@ -17,7 +17,7 @@ module Types
17
17
  # @return [Boolean] `true` if this range intersects with the other range
18
18
  # @api public
19
19
  def intersect?(o)
20
- self.instance_of?(o.class) && !(@to < o.numeric_from || o.numeric_to < @from)
20
+ instance_of?(o.class) && !(@to < o.numeric_from || o.numeric_to < @from)
21
21
  end
22
22
 
23
23
  # Returns the lower bound of the numeric range or `nil` if no lower bound is set.
@@ -94,7 +94,7 @@ module Types
94
94
  end
95
95
 
96
96
  def _assignable?(o, guard)
97
- self.instance_of?(o.class) && numeric_from <= o.numeric_from && numeric_to >= o.numeric_to
97
+ instance_of?(o.class) && numeric_from <= o.numeric_from && numeric_to >= o.numeric_to
98
98
  end
99
99
  end
100
100
 
@@ -183,7 +183,7 @@ class PTypeSetType < PMetaType
183
183
  result[KEY_NAME] = @name
184
184
  result[KEY_VERSION] = @version.to_s unless @version.nil?
185
185
  result[KEY_TYPES] = @types unless @types.empty?
186
- result[KEY_REFERENCES] = @references.transform_values { |ref| ref._pcore_init_hash } unless @references.empty?
186
+ result[KEY_REFERENCES] = @references.transform_values(&:_pcore_init_hash) unless @references.empty?
187
187
  result
188
188
  end
189
189
 
@@ -359,20 +359,20 @@ class PTypeSetType < PMetaType
359
359
  end
360
360
 
361
361
  DEFAULT =
362
- self
363
- .new({
364
- KEY_NAME => 'DefaultTypeSet',
365
- KEY_NAME_AUTHORITY => Pcore::RUNTIME_NAME_AUTHORITY,
366
- Pcore::KEY_PCORE_URI => Pcore::PCORE_URI,
367
- Pcore::KEY_PCORE_VERSION => Pcore::PCORE_VERSION,
368
- KEY_VERSION => SemanticPuppet::Version.new(0, 0, 0)
369
- })
362
+
363
+ new({
364
+ KEY_NAME => 'DefaultTypeSet',
365
+ KEY_NAME_AUTHORITY => Pcore::RUNTIME_NAME_AUTHORITY,
366
+ Pcore::KEY_PCORE_URI => Pcore::PCORE_URI,
367
+ Pcore::KEY_PCORE_VERSION => Pcore::PCORE_VERSION,
368
+ KEY_VERSION => SemanticPuppet::Version.new(0, 0, 0)
369
+ })
370
370
 
371
371
  protected
372
372
 
373
373
  # @api_private
374
374
  def _assignable?(o, guard)
375
- self.instance_of?(o.class) && (self == DEFAULT || eql?(o))
375
+ instance_of?(o.class) && (self == DEFAULT || eql?(o))
376
376
  end
377
377
 
378
378
  private
@@ -34,7 +34,7 @@ class PURIType < PAnyType
34
34
  TypeFactory.optional(PATH) => PStringType::NON_EMPTY,
35
35
  TypeFactory.optional(QUERY) => PStringType::NON_EMPTY,
36
36
  TypeFactory.optional(FRAGMENT) => PStringType::NON_EMPTY,
37
- TypeFactory.optional(OPAQUE) => PStringType::NON_EMPTY,
37
+ TypeFactory.optional(OPAQUE) => PStringType::NON_EMPTY
38
38
  )
39
39
 
40
40
  TYPE_STRING_PARAM =
@@ -46,7 +46,7 @@ class PURIType < PAnyType
46
46
  TypeFactory.type_type(PPatternType::DEFAULT),
47
47
  TypeFactory.type_type(PEnumType::DEFAULT),
48
48
  TypeFactory.type_type(PNotUndefType::DEFAULT),
49
- TypeFactory.type_type(PUndefType::DEFAULT),
49
+ TypeFactory.type_type(PUndefType::DEFAULT)
50
50
  ]))
51
51
 
52
52
  TYPE_INTEGER_PARAM =
@@ -55,7 +55,7 @@ class PURIType < PAnyType
55
55
  .new([
56
56
  PIntegerType.new(0),
57
57
  TypeFactory.type_type(PNotUndefType::DEFAULT),
58
- TypeFactory.type_type(PUndefType::DEFAULT),
58
+ TypeFactory.type_type(PUndefType::DEFAULT)
59
59
  ]))
60
60
 
61
61
  TYPE_URI_PARAM_HASH_TYPE = TypeFactory.struct(
@@ -66,7 +66,7 @@ class PURIType < PAnyType
66
66
  TypeFactory.optional(PATH) => TYPE_STRING_PARAM,
67
67
  TypeFactory.optional(QUERY) => TYPE_STRING_PARAM,
68
68
  TypeFactory.optional(FRAGMENT) => TYPE_STRING_PARAM,
69
- TypeFactory.optional(OPAQUE) => TYPE_STRING_PARAM,
69
+ TypeFactory.optional(OPAQUE) => TYPE_STRING_PARAM
70
70
  )
71
71
 
72
72
  TYPE_URI_PARAM_TYPE = PVariantType.new([PStringType::NON_EMPTY, TYPE_URI_PARAM_HASH_TYPE])
@@ -46,7 +46,7 @@ class RecursionGuard
46
46
  def with_this(instance)
47
47
  if (@state & SELF_RECURSION_IN_THIS) == 0
48
48
  tc = this_count
49
- @state = @state | SELF_RECURSION_IN_THIS if this_put(instance)
49
+ @state |= SELF_RECURSION_IN_THIS if this_put(instance)
50
50
  if tc < this_count
51
51
  # recursive state detected
52
52
  result = yield(@state)
@@ -66,7 +66,7 @@ class RecursionGuard
66
66
  def with_that(instance)
67
67
  if (@state & SELF_RECURSION_IN_THAT) == 0
68
68
  tc = that_count
69
- @state = @state | SELF_RECURSION_IN_THAT if that_put(instance)
69
+ @state |= SELF_RECURSION_IN_THAT if that_put(instance)
70
70
  if tc < that_count
71
71
  # recursive state detected
72
72
  result = yield(@state)
@@ -85,7 +85,7 @@ class RecursionGuard
85
85
  # @return [Integer] the resulting state
86
86
  def add_this(instance)
87
87
  if (@state & SELF_RECURSION_IN_THIS) == 0
88
- @state = @state | SELF_RECURSION_IN_THIS if this_put(instance)
88
+ @state |= SELF_RECURSION_IN_THIS if this_put(instance)
89
89
  end
90
90
  @state
91
91
  end
@@ -95,7 +95,7 @@ class RecursionGuard
95
95
  # @return [Integer] the resulting state
96
96
  def add_that(instance)
97
97
  if (@state & SELF_RECURSION_IN_THAT) == 0
98
- @state = @state | SELF_RECURSION_IN_THAT if that_put(instance)
98
+ @state |= SELF_RECURSION_IN_THAT if that_put(instance)
99
99
  end
100
100
  @state
101
101
  end
@@ -64,7 +64,7 @@ class RubyGenerator < TypeFormatter
64
64
  class_body(key, EMPTY_ARRAY, class_def)
65
65
  cls = Class.new(parent_class)
66
66
  cls.class_eval(class_def)
67
- cls.define_singleton_method(:_pcore_type) { return key }
67
+ cls.define_singleton_method(:_pcore_type) { key }
68
68
  key.implementation_class = cls
69
69
  end
70
70
  hash[key] = cls
@@ -220,7 +220,7 @@ class RubyGenerator < TypeFormatter
220
220
  end
221
221
 
222
222
  init_params = others.reject { |a| a.kind == PObjectType::ATTRIBUTE_KIND_DERIVED }
223
- opt, non_opt = init_params.partition { |ip| ip.value? }
223
+ opt, non_opt = init_params.partition(&:value?)
224
224
  derived_attrs, obj_attrs = others.select { |a| a.container.equal?(obj) }.partition { |ip| ip.kind == PObjectType::ATTRIBUTE_KIND_DERIVED }
225
225
 
226
226
  include_type = obj.equality_include_type? && !(obj.parent.is_a?(PObjectType) && obj.parent.equality_include_type?)
@@ -47,7 +47,7 @@ class StringConverter
47
47
  end
48
48
 
49
49
  def padding
50
- return ' ' * 2 * level
50
+ ' ' * 2 * level
51
51
  end
52
52
  end
53
53
 
@@ -89,7 +89,7 @@ class StringConverter
89
89
 
90
90
  FMT_PATTERN_STR = '^%([\s\[+#0{<(|-]*)([1-9][0-9]*)?(?:\.([0-9]+))?([a-zA-Z])$'
91
91
  FMT_PATTERN = Regexp.compile(FMT_PATTERN_STR)
92
- DELIMITERS = ['[', '{', '(', '<', '|',]
92
+ DELIMITERS = ['[', '{', '(', '<', '|']
93
93
  DELIMITER_MAP = {
94
94
  '[' => ['[', ']'],
95
95
  '{' => ['{', '}'],
@@ -119,13 +119,17 @@ class StringConverter
119
119
 
120
120
  @left = flags.include?('-')
121
121
  @alt = flags.include?('#')
122
- @plus = (flags.include?(' ') ? :space : (flags.include?('+') ? :plus : :ignore))
122
+ @plus = if flags.include?(' ')
123
+ :space
124
+ else
125
+ flags.include?('+') ? :plus : :ignore
126
+ end
123
127
  @zero_pad = flags.include?('0')
124
128
 
125
129
  @delimiters = nil
126
130
  DELIMITERS.each do |d|
127
131
  next unless flags.include?(d)
128
- if !@delimiters.nil?
132
+ unless @delimiters.nil?
129
133
  raise ArgumentError, "Only one of the delimiters [ { ( < | can be given in the format flags, got '#{fmt}'"
130
134
  end
131
135
 
@@ -550,7 +554,7 @@ class StringConverter
550
554
  end
551
555
  private :validate_input
552
556
 
553
- FMT_KEYS = %w{separator separator2 format string_formats}.freeze
557
+ FMT_KEYS = %w[separator separator2 format string_formats].freeze
554
558
 
555
559
  def validate_container_input(fmt)
556
560
  if (fmt.keys - FMT_KEYS).size > 0
@@ -786,7 +790,7 @@ class StringConverter
786
790
  Kernel.format(f.orig_fmt.gsub('s', substitute), val_to_convert)
787
791
 
788
792
  when :p
789
- # width & precision applied to string, not the the name of the type
793
+ # width & precision applied to string, not the name of the type
790
794
  "Binary(\"#{Kernel.format(f.orig_fmt.tr('p', 's'), val.to_s)}\")"
791
795
 
792
796
  when :b
@@ -826,7 +830,7 @@ class StringConverter
826
830
  f.alt? ? apply_string_flags(f, puppet_quote(c_val)) : Kernel.format(f.orig_fmt.tr('c', 's'), c_val)
827
831
 
828
832
  when :C
829
- c_val = val.split('::').map { |s| s.capitalize }.join('::')
833
+ c_val = val.split('::').map(&:capitalize).join('::')
830
834
  f.alt? ? apply_string_flags(f, puppet_quote(c_val)) : Kernel.format(f.orig_fmt.tr('C', 's'), c_val)
831
835
 
832
836
  when :u
@@ -1132,7 +1136,7 @@ class StringConverter
1132
1136
  fmt = format_options.find { |k, _| k.assignable?(val_t) }
1133
1137
  return fmt[1] unless fmt.nil?
1134
1138
 
1135
- return Format.new("%s")
1139
+ Format.new("%s")
1136
1140
  end
1137
1141
  private :get_format
1138
1142
  end
@@ -108,12 +108,10 @@ class TreeIterator
108
108
  private :indexer_on
109
109
 
110
110
  def has_next?(iterator)
111
- begin
112
- iterator.peek
113
- true
114
- rescue StopIteration
115
- false
116
- end
111
+ iterator.peek
112
+ true
113
+ rescue StopIteration
114
+ false
117
115
  end
118
116
  private :has_next?
119
117
 
@@ -132,15 +132,15 @@ class TypeCalculator
132
132
  # @api private
133
133
  def self.infer_callable_methods_t(o)
134
134
  # If being a value that cannot have Pcore based methods callable from Puppet Language
135
- if (o.is_a?(String) ||
136
- o.is_a?(Numeric) ||
137
- o.is_a?(TrueClass) ||
138
- o.is_a?(FalseClass) ||
139
- o.is_a?(Regexp) ||
140
- o.instance_of?(Array) ||
141
- o.instance_of?(Hash) ||
142
- Types::PUndefType::DEFAULT.instance?(o)
143
- )
135
+ if o.is_a?(String) ||
136
+ o.is_a?(Numeric) ||
137
+ o.is_a?(TrueClass) ||
138
+ o.is_a?(FalseClass) ||
139
+ o.is_a?(Regexp) ||
140
+ o.instance_of?(Array) ||
141
+ o.instance_of?(Hash) ||
142
+ Types::PUndefType::DEFAULT.instance?(o)
143
+
144
144
  return nil
145
145
  end
146
146
 
@@ -386,7 +386,7 @@ class TypeCalculator
386
386
  end
387
387
 
388
388
  if t1.is_a?(PStringType) && (t2.is_a?(PStringType) || t2.is_a?(PEnumType))
389
- if (t2.is_a?(PEnumType))
389
+ if t2.is_a?(PEnumType)
390
390
  return t1.value.nil? ? PEnumType::DEFAULT : PEnumType.new(t2.values | [t1.value])
391
391
  end
392
392
 
@@ -248,7 +248,11 @@ module TypeFactory
248
248
  # @api public
249
249
  #
250
250
  def self.boolean(value = nil)
251
- value.nil? ? PBooleanType::DEFAULT : (value ? PBooleanType::TRUE : PBooleanType::FALSE)
251
+ if value.nil?
252
+ PBooleanType::DEFAULT
253
+ else
254
+ value ? PBooleanType::TRUE : PBooleanType::FALSE
255
+ end
252
256
  end
253
257
 
254
258
  # Produces the Any type
@@ -309,7 +313,7 @@ module TypeFactory
309
313
  # @api public
310
314
  #
311
315
  def self.all_callables
312
- return PCallableType::DEFAULT
316
+ PCallableType::DEFAULT
313
317
  end
314
318
 
315
319
  # Produces a Callable type with one signature without support for a block
@@ -623,7 +627,7 @@ module TypeFactory
623
627
  # @param type_string [String] the string form of the type
624
628
  # @return [PTypeReferenceType] the type reference
625
629
  def self.type_reference(type_string = nil)
626
- type_string == nil ? PTypeReferenceType::DEFAULT : PTypeReferenceType.new(type_string)
630
+ type_string.nil? ? PTypeReferenceType::DEFAULT : PTypeReferenceType.new(type_string)
627
631
  end
628
632
 
629
633
  # Returns true if the given type t is of valid range parameter type (integer
@@ -687,37 +687,35 @@ class TypeFormatter
687
687
  end
688
688
 
689
689
  def append_object_hash(hash)
690
- begin
691
- @expanded = false
692
- append_array('Object') do
693
- append_hash(hash, proc { |k| @bld << symbolic_key(k) }) do |k, v|
694
- case k
695
- when KEY_ATTRIBUTES, KEY_FUNCTIONS
696
- # Types might need to be output as type references
697
- append_hash(v) do |_, fv|
698
- if fv.is_a?(Hash)
699
- append_hash(fv, proc { |fak| @bld << symbolic_key(fak) }) do |fak, fav|
700
- case fak
701
- when KEY_KIND
702
- @bld << fav
703
- else
704
- append_string(fav)
705
- end
690
+ @expanded = false
691
+ append_array('Object') do
692
+ append_hash(hash, proc { |k| @bld << symbolic_key(k) }) do |k, v|
693
+ case k
694
+ when KEY_ATTRIBUTES, KEY_FUNCTIONS
695
+ # Types might need to be output as type references
696
+ append_hash(v) do |_, fv|
697
+ if fv.is_a?(Hash)
698
+ append_hash(fv, proc { |fak| @bld << symbolic_key(fak) }) do |fak, fav|
699
+ case fak
700
+ when KEY_KIND
701
+ @bld << fav
702
+ else
703
+ append_string(fav)
706
704
  end
707
- else
708
- append_string(fv)
709
705
  end
706
+ else
707
+ append_string(fv)
710
708
  end
711
- when KEY_EQUALITY
712
- append_array('') { append_strings(v) } if v.is_a?(Array)
713
- else
714
- append_string(v)
715
709
  end
710
+ when KEY_EQUALITY
711
+ append_array('') { append_strings(v) } if v.is_a?(Array)
712
+ else
713
+ append_string(v)
716
714
  end
717
715
  end
718
- ensure
719
- @expanded = true
720
716
  end
717
+ ensure
718
+ @expanded = true
721
719
  end
722
720
 
723
721
  def append_elements(array, to_be_continued = false)
@@ -131,7 +131,7 @@ module Types
131
131
 
132
132
  chopped_path = @path.clone
133
133
  chopped_path.delete_at(element_index)
134
- copy = self.clone
134
+ copy = clone
135
135
  copy.instance_variable_set(:@path, chopped_path)
136
136
  copy
137
137
  end
@@ -287,7 +287,7 @@ module Types
287
287
  if e.is_a?(Array)
288
288
  if report_detailed?(e, a)
289
289
  a = detailed_actual_to_s(e, a)
290
- e = e.map { |t| t.to_alias_expanded_s }
290
+ e = e.map(&:to_alias_expanded_s)
291
291
  else
292
292
  e = e.map { |t| short_name(t) }.uniq
293
293
  a = short_name(a)
@@ -533,10 +533,10 @@ module Types
533
533
  when 0
534
534
  # do nothing
535
535
  when 1
536
- raise Puppet::ParseError.new("#{subject}:#{errors[0].format}")
536
+ raise Puppet::ParseError, "#{subject}:#{errors[0].format}"
537
537
  else
538
- errors_str = errors.map { |error| error.format }.join("\n ")
539
- raise Puppet::ParseError.new("#{subject}:\n #{errors_str}")
538
+ errors_str = errors.map(&:format).join("\n ")
539
+ raise Puppet::ParseError, "#{subject}:\n #{errors_str}"
540
540
  end
541
541
  end
542
542
 
@@ -556,7 +556,7 @@ module Types
556
556
  when 1
557
557
  errors[0].format.strip
558
558
  else
559
- errors.map { |error| error.format }.join("\n ")
559
+ errors.map(&:format).join("\n ")
560
560
  end
561
561
  end
562
562
 
@@ -574,10 +574,10 @@ module Types
574
574
  when 0
575
575
  # do nothing
576
576
  when 1
577
- raise Puppet::ParseError.new("#{subject}:#{errors[0].format}")
577
+ raise Puppet::ParseError, "#{subject}:#{errors[0].format}"
578
578
  else
579
- errors_str = errors.map { |error| error.format }.join("\n ")
580
- raise Puppet::ParseError.new("#{subject}:\n #{errors_str}")
579
+ errors_str = errors.map(&:format).join("\n ")
580
+ raise Puppet::ParseError, "#{subject}:\n #{errors_str}"
581
581
  end
582
582
  end
583
583
  end
@@ -758,19 +758,19 @@ module Types
758
758
  descriptions = variant_descriptions.flatten
759
759
  [size_mismatch_class, MissingRequiredBlock, UnexpectedBlock, TypeMismatch].each do |mismatch_class|
760
760
  mismatches = descriptions.select { |desc| desc.is_a?(mismatch_class) }
761
- if mismatches.size == variant_descriptions.size
762
- # If they all have the same canonical path, then we can compact this into one
763
- generic_mismatch = mismatches.inject do |prev, curr|
764
- break nil unless prev.canonical_path == curr.canonical_path
761
+ next unless mismatches.size == variant_descriptions.size
765
762
 
766
- prev.merge(prev.path, curr)
767
- end
768
- unless generic_mismatch.nil?
769
- # Report the generic mismatch and skip the rest
770
- descriptions = [generic_mismatch]
771
- break
772
- end
763
+ # If they all have the same canonical path, then we can compact this into one
764
+ generic_mismatch = mismatches.inject do |prev, curr|
765
+ break nil unless prev.canonical_path == curr.canonical_path
766
+
767
+ prev.merge(prev.path, curr)
773
768
  end
769
+ next if generic_mismatch.nil?
770
+
771
+ # Report the generic mismatch and skip the rest
772
+ descriptions = [generic_mismatch]
773
+ break
774
774
  end
775
775
  descriptions = descriptions.uniq
776
776
  descriptions.size == 1 ? [descriptions[0].chop_path(varying_path_position)] : descriptions
@@ -894,7 +894,7 @@ module Types
894
894
  end
895
895
 
896
896
  def describe_tuple(expected, original, actual, path, size_mismatch_class)
897
- return EMPTY_ARRAY if expected == actual || expected.types.empty? && (actual.is_a?(PArrayType))
897
+ return EMPTY_ARRAY if expected == actual || expected.types.empty? && actual.is_a?(PArrayType)
898
898
 
899
899
  expected_size = expected.size_type || TypeFactory.range(*expected.size_range)
900
900
 
@@ -954,9 +954,7 @@ module Types
954
954
  if param_errors.empty?
955
955
  this_return_t = expected.return_type || PAnyType::DEFAULT
956
956
  that_return_t = actual.return_type || PAnyType::DEFAULT
957
- unless this_return_t.assignable?(that_return_t)
958
- [TypeMismatch.new(path + [ReturnTypeElement.new], this_return_t, that_return_t)]
959
- else
957
+ if this_return_t.assignable?(that_return_t)
960
958
  # names are ignored, they are just information
961
959
  # Blocks must be compatible
962
960
  this_block_t = expected.block_type || PUndefType::DEFAULT
@@ -966,6 +964,8 @@ module Types
966
964
  else
967
965
  [TypeMismatch.new(path + [BlockPathElement.new], this_block_t, that_block_t)]
968
966
  end
967
+ else
968
+ [TypeMismatch.new(path + [ReturnTypeElement.new], this_return_t, that_return_t)]
969
969
  end
970
970
  else
971
971
  param_errors