puppet 8.5.1-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 (542) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +23 -20
  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/relationship_operator.rb +2 -2
  216. data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
  217. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  218. data/lib/puppet/pops/functions/dispatcher.rb +3 -3
  219. data/lib/puppet/pops/functions/function.rb +14 -16
  220. data/lib/puppet/pops/issue_reporter.rb +2 -2
  221. data/lib/puppet/pops/label_provider.rb +2 -2
  222. data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
  223. data/lib/puppet/pops/loader/loader.rb +4 -4
  224. data/lib/puppet/pops/loader/loader_paths.rb +3 -3
  225. data/lib/puppet/pops/loader/module_loaders.rb +11 -11
  226. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  227. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  228. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
  229. data/lib/puppet/pops/loader/static_loader.rb +3 -3
  230. data/lib/puppet/pops/loaders.rb +3 -3
  231. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  232. data/lib/puppet/pops/lookup/explainer.rb +2 -2
  233. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  234. data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
  235. data/lib/puppet/pops/lookup/interpolation.rb +3 -3
  236. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  237. data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
  238. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
  239. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  240. data/lib/puppet/pops/merge_strategy.rb +6 -6
  241. data/lib/puppet/pops/migration/migration_checker.rb +1 -1
  242. data/lib/puppet/pops/model/ast_transformer.rb +9 -11
  243. data/lib/puppet/pops/model/factory.rb +4 -5
  244. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  245. data/lib/puppet/pops/parser/epp_support.rb +1 -1
  246. data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
  247. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  248. data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
  249. data/lib/puppet/pops/parser/lexer2.rb +20 -12
  250. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  251. data/lib/puppet/pops/parser/locator.rb +4 -4
  252. data/lib/puppet/pops/parser/parser_support.rb +12 -14
  253. data/lib/puppet/pops/parser/pn_parser.rb +3 -3
  254. data/lib/puppet/pops/parser/slurp_support.rb +8 -8
  255. data/lib/puppet/pops/patterns.rb +12 -12
  256. data/lib/puppet/pops/pcore.rb +1 -1
  257. data/lib/puppet/pops/pn.rb +2 -2
  258. data/lib/puppet/pops/puppet_stack.rb +1 -1
  259. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  260. data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
  261. data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
  262. data/lib/puppet/pops/time/timestamp.rb +1 -1
  263. data/lib/puppet/pops/types/class_loader.rb +4 -6
  264. data/lib/puppet/pops/types/iterable.rb +1 -1
  265. data/lib/puppet/pops/types/p_binary_type.rb +1 -1
  266. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  267. data/lib/puppet/pops/types/p_object_type.rb +5 -5
  268. data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
  269. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
  270. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  271. data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
  272. data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
  273. data/lib/puppet/pops/types/p_uri_type.rb +4 -4
  274. data/lib/puppet/pops/types/recursion_guard.rb +4 -4
  275. data/lib/puppet/pops/types/ruby_generator.rb +2 -2
  276. data/lib/puppet/pops/types/string_converter.rb +12 -8
  277. data/lib/puppet/pops/types/tree_iterators.rb +4 -6
  278. data/lib/puppet/pops/types/type_calculator.rb +10 -10
  279. data/lib/puppet/pops/types/type_factory.rb +7 -3
  280. data/lib/puppet/pops/types/type_formatter.rb +22 -24
  281. data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
  282. data/lib/puppet/pops/types/types.rb +28 -24
  283. data/lib/puppet/pops/utils.rb +38 -42
  284. data/lib/puppet/pops/validation/checker4_0.rb +10 -10
  285. data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
  286. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -1
  287. data/lib/puppet/pops/validation.rb +4 -4
  288. data/lib/puppet/pops/visitor.rb +2 -2
  289. data/lib/puppet/property/ensure.rb +12 -14
  290. data/lib/puppet/property/keyvalue.rb +4 -4
  291. data/lib/puppet/property/list.rb +4 -4
  292. data/lib/puppet/property/ordered_list.rb +1 -1
  293. data/lib/puppet/property.rb +31 -33
  294. data/lib/puppet/provider/exec.rb +2 -2
  295. data/lib/puppet/provider/file/posix.rb +19 -17
  296. data/lib/puppet/provider/file/windows.rb +13 -19
  297. data/lib/puppet/provider/group/directoryservice.rb +3 -2
  298. data/lib/puppet/provider/group/groupadd.rb +4 -4
  299. data/lib/puppet/provider/group/windows_adsi.rb +2 -2
  300. data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
  301. data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
  302. data/lib/puppet/provider/nameservice/pw.rb +1 -2
  303. data/lib/puppet/provider/nameservice.rb +8 -8
  304. data/lib/puppet/provider/package/aix.rb +19 -19
  305. data/lib/puppet/provider/package/appdmg.rb +2 -2
  306. data/lib/puppet/provider/package/apple.rb +1 -1
  307. data/lib/puppet/provider/package/apt.rb +18 -18
  308. data/lib/puppet/provider/package/aptitude.rb +1 -3
  309. data/lib/puppet/provider/package/aptrpm.rb +9 -9
  310. data/lib/puppet/provider/package/blastwave.rb +10 -14
  311. data/lib/puppet/provider/package/dnfmodule.rb +3 -3
  312. data/lib/puppet/provider/package/dpkg.rb +11 -13
  313. data/lib/puppet/provider/package/fink.rb +14 -14
  314. data/lib/puppet/provider/package/freebsd.rb +1 -1
  315. data/lib/puppet/provider/package/gem.rb +12 -14
  316. data/lib/puppet/provider/package/macports.rb +2 -2
  317. data/lib/puppet/provider/package/nim.rb +10 -10
  318. data/lib/puppet/provider/package/openbsd.rb +22 -22
  319. data/lib/puppet/provider/package/opkg.rb +6 -6
  320. data/lib/puppet/provider/package/pacman.rb +35 -29
  321. data/lib/puppet/provider/package/pip.rb +25 -24
  322. data/lib/puppet/provider/package/pkg.rb +15 -15
  323. data/lib/puppet/provider/package/pkgdmg.rb +10 -10
  324. data/lib/puppet/provider/package/pkgin.rb +2 -2
  325. data/lib/puppet/provider/package/pkgng.rb +5 -5
  326. data/lib/puppet/provider/package/pkgutil.rb +17 -21
  327. data/lib/puppet/provider/package/portage.rb +59 -61
  328. data/lib/puppet/provider/package/ports.rb +12 -11
  329. data/lib/puppet/provider/package/portupgrade.rb +35 -35
  330. data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
  331. data/lib/puppet/provider/package/rpm.rb +26 -26
  332. data/lib/puppet/provider/package/rug.rb +7 -9
  333. data/lib/puppet/provider/package/sun.rb +4 -4
  334. data/lib/puppet/provider/package/up2date.rb +5 -7
  335. data/lib/puppet/provider/package/urpmi.rb +6 -6
  336. data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
  337. data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
  338. data/lib/puppet/provider/package/windows/package.rb +2 -2
  339. data/lib/puppet/provider/package/windows.rb +3 -5
  340. data/lib/puppet/provider/package/yum.rb +33 -37
  341. data/lib/puppet/provider/package/zypper.rb +12 -14
  342. data/lib/puppet/provider/package.rb +1 -1
  343. data/lib/puppet/provider/package_targetable.rb +1 -1
  344. data/lib/puppet/provider/parsedfile.rb +9 -9
  345. data/lib/puppet/provider/service/base.rb +16 -21
  346. data/lib/puppet/provider/service/bsd.rb +4 -4
  347. data/lib/puppet/provider/service/daemontools.rb +31 -31
  348. data/lib/puppet/provider/service/debian.rb +6 -6
  349. data/lib/puppet/provider/service/freebsd.rb +36 -36
  350. data/lib/puppet/provider/service/gentoo.rb +6 -6
  351. data/lib/puppet/provider/service/init.rb +19 -19
  352. data/lib/puppet/provider/service/launchd.rb +22 -22
  353. data/lib/puppet/provider/service/openbsd.rb +10 -10
  354. data/lib/puppet/provider/service/openrc.rb +1 -1
  355. data/lib/puppet/provider/service/openwrt.rb +3 -3
  356. data/lib/puppet/provider/service/rcng.rb +3 -3
  357. data/lib/puppet/provider/service/redhat.rb +4 -4
  358. data/lib/puppet/provider/service/runit.rb +6 -6
  359. data/lib/puppet/provider/service/service.rb +5 -7
  360. data/lib/puppet/provider/service/smf.rb +28 -27
  361. data/lib/puppet/provider/service/src.rb +7 -7
  362. data/lib/puppet/provider/service/systemd.rb +31 -37
  363. data/lib/puppet/provider/service/upstart.rb +17 -17
  364. data/lib/puppet/provider/service/windows.rb +7 -7
  365. data/lib/puppet/provider/user/aix.rb +4 -2
  366. data/lib/puppet/provider/user/directoryservice.rb +34 -36
  367. data/lib/puppet/provider/user/hpux.rb +10 -14
  368. data/lib/puppet/provider/user/pw.rb +1 -1
  369. data/lib/puppet/provider/user/user_role_add.rb +16 -18
  370. data/lib/puppet/provider/user/useradd.rb +7 -7
  371. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  372. data/lib/puppet/provider.rb +8 -8
  373. data/lib/puppet/reference/indirection.rb +3 -0
  374. data/lib/puppet/reference/metaparameter.rb +1 -1
  375. data/lib/puppet/reference/providers.rb +3 -3
  376. data/lib/puppet/reference/type.rb +1 -1
  377. data/lib/puppet/relationship.rb +4 -5
  378. data/lib/puppet/reports/http.rb +1 -1
  379. data/lib/puppet/reports/log.rb +2 -2
  380. data/lib/puppet/reports/store.rb +4 -4
  381. data/lib/puppet/reports.rb +2 -2
  382. data/lib/puppet/resource/catalog.rb +16 -16
  383. data/lib/puppet/resource/status.rb +3 -3
  384. data/lib/puppet/resource/type.rb +8 -8
  385. data/lib/puppet/resource/type_collection.rb +1 -1
  386. data/lib/puppet/resource.rb +41 -41
  387. data/lib/puppet/scheduler/scheduler.rb +1 -1
  388. data/lib/puppet/settings/alias_setting.rb +3 -5
  389. data/lib/puppet/settings/base_setting.rb +11 -11
  390. data/lib/puppet/settings/boolean_setting.rb +2 -2
  391. data/lib/puppet/settings/config_file.rb +5 -4
  392. data/lib/puppet/settings/duration_setting.rb +2 -2
  393. data/lib/puppet/settings/environment_conf.rb +3 -3
  394. data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
  395. data/lib/puppet/settings/file_setting.rb +11 -11
  396. data/lib/puppet/settings/ini_file.rb +3 -3
  397. data/lib/puppet/settings/port_setting.rb +1 -1
  398. data/lib/puppet/settings/priority_setting.rb +2 -2
  399. data/lib/puppet/settings/ttl_setting.rb +2 -2
  400. data/lib/puppet/settings/value_translator.rb +8 -8
  401. data/lib/puppet/settings.rb +65 -70
  402. data/lib/puppet/ssl/base.rb +2 -4
  403. data/lib/puppet/ssl/certificate_request.rb +18 -22
  404. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  405. data/lib/puppet/ssl/oids.rb +2 -2
  406. data/lib/puppet/ssl/openssl_loader.rb +4 -4
  407. data/lib/puppet/syntax_checkers/base64.rb +3 -3
  408. data/lib/puppet/syntax_checkers/epp.rb +3 -3
  409. data/lib/puppet/syntax_checkers/json.rb +3 -3
  410. data/lib/puppet/syntax_checkers/pp.rb +3 -3
  411. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  412. data/lib/puppet/transaction/event.rb +2 -2
  413. data/lib/puppet/transaction/event_manager.rb +5 -5
  414. data/lib/puppet/transaction/persistence.rb +12 -14
  415. data/lib/puppet/transaction/report.rb +4 -4
  416. data/lib/puppet/transaction/resource_harness.rb +2 -2
  417. data/lib/puppet/transaction.rb +14 -18
  418. data/lib/puppet/type/component.rb +3 -3
  419. data/lib/puppet/type/exec.rb +43 -45
  420. data/lib/puppet/type/file/checksum_value.rb +1 -1
  421. data/lib/puppet/type/file/content.rb +6 -6
  422. data/lib/puppet/type/file/ctime.rb +2 -2
  423. data/lib/puppet/type/file/data_sync.rb +3 -3
  424. data/lib/puppet/type/file/ensure.rb +16 -15
  425. data/lib/puppet/type/file/mode.rb +9 -9
  426. data/lib/puppet/type/file/mtime.rb +2 -2
  427. data/lib/puppet/type/file/selcontext.rb +14 -14
  428. data/lib/puppet/type/file/source.rb +19 -21
  429. data/lib/puppet/type/file/target.rb +11 -11
  430. data/lib/puppet/type/file.rb +21 -21
  431. data/lib/puppet/type/filebucket.rb +3 -3
  432. data/lib/puppet/type/group.rb +3 -3
  433. data/lib/puppet/type/notify.rb +2 -2
  434. data/lib/puppet/type/package.rb +4 -4
  435. data/lib/puppet/type/resources.rb +6 -6
  436. data/lib/puppet/type/schedule.rb +9 -9
  437. data/lib/puppet/type/service.rb +6 -8
  438. data/lib/puppet/type/tidy.rb +22 -24
  439. data/lib/puppet/type/user.rb +13 -13
  440. data/lib/puppet/type.rb +76 -88
  441. data/lib/puppet/util/at_fork/solaris.rb +33 -37
  442. data/lib/puppet/util/autoload.rb +2 -2
  443. data/lib/puppet/util/backups.rb +9 -9
  444. data/lib/puppet/util/character_encoding.rb +7 -6
  445. data/lib/puppet/util/checksums.rb +2 -2
  446. data/lib/puppet/util/classgen.rb +8 -8
  447. data/lib/puppet/util/colors.rb +1 -1
  448. data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
  449. data/lib/puppet/util/command_line/trollop.rb +42 -46
  450. data/lib/puppet/util/command_line.rb +2 -2
  451. data/lib/puppet/util/constant_inflector.rb +2 -2
  452. data/lib/puppet/util/diff.rb +19 -21
  453. data/lib/puppet/util/docs.rb +2 -2
  454. data/lib/puppet/util/errors.rb +9 -9
  455. data/lib/puppet/util/execution.rb +32 -9
  456. data/lib/puppet/util/feature.rb +1 -1
  457. data/lib/puppet/util/fileparsing.rb +12 -16
  458. data/lib/puppet/util/filetype.rb +36 -40
  459. data/lib/puppet/util/inifile.rb +6 -12
  460. data/lib/puppet/util/ldap/connection.rb +1 -1
  461. data/lib/puppet/util/ldap/manager.rb +10 -12
  462. data/lib/puppet/util/lockfile.rb +6 -8
  463. data/lib/puppet/util/log/destination.rb +2 -2
  464. data/lib/puppet/util/log/destinations.rb +4 -4
  465. data/lib/puppet/util/log.rb +12 -9
  466. data/lib/puppet/util/logging.rb +11 -11
  467. data/lib/puppet/util/metric.rb +3 -3
  468. data/lib/puppet/util/monkey_patches.rb +5 -7
  469. data/lib/puppet/util/network_device/config.rb +3 -3
  470. data/lib/puppet/util/package/version/debian.rb +27 -28
  471. data/lib/puppet/util/package/version/pip.rb +5 -5
  472. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  473. data/lib/puppet/util/package/version/rpm.rb +1 -1
  474. data/lib/puppet/util/package.rb +2 -2
  475. data/lib/puppet/util/pidlock.rb +2 -2
  476. data/lib/puppet/util/platform.rb +1 -1
  477. data/lib/puppet/util/plist.rb +8 -10
  478. data/lib/puppet/util/posix.rb +17 -17
  479. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  480. data/lib/puppet/util/provider_features.rb +3 -3
  481. data/lib/puppet/util/rdoc/code_objects.rb +3 -3
  482. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
  483. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
  484. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
  485. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  486. data/lib/puppet/util/rdoc/parser.rb +1 -1
  487. data/lib/puppet/util/reference.rb +13 -9
  488. data/lib/puppet/util/retry_action.rb +1 -1
  489. data/lib/puppet/util/rpm_compare.rb +17 -18
  490. data/lib/puppet/util/rubygems.rb +1 -1
  491. data/lib/puppet/util/selinux.rb +7 -7
  492. data/lib/puppet/util/storage.rb +10 -12
  493. data/lib/puppet/util/suidmanager.rb +18 -19
  494. data/lib/puppet/util/symbolic_file_mode.rb +71 -75
  495. data/lib/puppet/util/tag_set.rb +2 -2
  496. data/lib/puppet/util/tagging.rb +8 -10
  497. data/lib/puppet/util/terminal.rb +4 -4
  498. data/lib/puppet/util/user_attr.rb +7 -7
  499. data/lib/puppet/util/watcher.rb +3 -5
  500. data/lib/puppet/util/windows/access_control_list.rb +1 -1
  501. data/lib/puppet/util/windows/adsi.rb +42 -42
  502. data/lib/puppet/util/windows/daemon.rb +64 -68
  503. data/lib/puppet/util/windows/error.rb +2 -2
  504. data/lib/puppet/util/windows/file.rb +18 -25
  505. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  506. data/lib/puppet/util/windows/principal.rb +8 -8
  507. data/lib/puppet/util/windows/process.rb +16 -28
  508. data/lib/puppet/util/windows/registry.rb +16 -15
  509. data/lib/puppet/util/windows/root_certs.rb +2 -2
  510. data/lib/puppet/util/windows/security.rb +31 -31
  511. data/lib/puppet/util/windows/service.rb +11 -11
  512. data/lib/puppet/util/windows/sid.rb +8 -8
  513. data/lib/puppet/util/windows/user.rb +18 -20
  514. data/lib/puppet/util/yaml.rb +1 -1
  515. data/lib/puppet/util.rb +55 -46
  516. data/lib/puppet/version.rb +2 -2
  517. data/lib/puppet/x509/pem_store.rb +1 -1
  518. data/lib/puppet.rb +3 -3
  519. data/man/man5/puppet.conf.5 +10 -2
  520. data/man/man8/puppet-agent.8 +1 -1
  521. data/man/man8/puppet-apply.8 +1 -1
  522. data/man/man8/puppet-catalog.8 +1 -1
  523. data/man/man8/puppet-config.8 +1 -1
  524. data/man/man8/puppet-describe.8 +1 -1
  525. data/man/man8/puppet-device.8 +1 -1
  526. data/man/man8/puppet-doc.8 +1 -1
  527. data/man/man8/puppet-epp.8 +1 -1
  528. data/man/man8/puppet-facts.8 +1 -1
  529. data/man/man8/puppet-filebucket.8 +1 -1
  530. data/man/man8/puppet-generate.8 +1 -1
  531. data/man/man8/puppet-help.8 +1 -1
  532. data/man/man8/puppet-lookup.8 +1 -1
  533. data/man/man8/puppet-module.8 +1 -1
  534. data/man/man8/puppet-node.8 +1 -1
  535. data/man/man8/puppet-parser.8 +1 -1
  536. data/man/man8/puppet-plugin.8 +1 -1
  537. data/man/man8/puppet-report.8 +1 -1
  538. data/man/man8/puppet-resource.8 +5 -1
  539. data/man/man8/puppet-script.8 +1 -1
  540. data/man/man8/puppet-ssl.8 +1 -1
  541. data/man/man8/puppet.8 +2 -2
  542. metadata +2 -2
@@ -188,12 +188,11 @@ module Puppet::Functions
188
188
  # and it will fail unless protected with an if defined? if the local
189
189
  # variable does not exist in the block's binder.
190
190
  #
191
- begin
192
- loader = block.binding.eval('loader_injected_arg if defined?(loader_injected_arg)')
193
- create_loaded_function(func_name, loader, function_base, &block)
194
- rescue StandardError => e
195
- raise ArgumentError, _("Function Load Error for function '%{function_name}': %{message}") % { function_name: func_name, message: e.message }
196
- end
191
+
192
+ loader = block.binding.eval('loader_injected_arg if defined?(loader_injected_arg)')
193
+ create_loaded_function(func_name, loader, function_base, &block)
194
+ rescue StandardError => e
195
+ raise ArgumentError, _("Function Load Error for function '%{function_name}': %{message}") % { function_name: func_name, message: e.message }
197
196
  end
198
197
 
199
198
  # Creates a function in, or in a local loader under the given loader.
@@ -570,7 +569,7 @@ module Puppet::Functions
570
569
  @block_name = nil
571
570
  @return_type = nil
572
571
  @argument_mismatch_hander = argument_mismatch_handler
573
- self.instance_eval(&block)
572
+ instance_eval(&block)
574
573
  callable_t = create_callable(@types, @block_type, @return_type, @min, @max)
575
574
  @dispatcher.add(Puppet::Pops::Functions::Dispatch.new(callable_t, meth_name, @names, @max == :default, @block_name, @injections, @weaving, @argument_mismatch_hander))
576
575
  end
@@ -591,14 +590,12 @@ module Puppet::Functions
591
590
  end
592
591
 
593
592
  def internal_type_parse(type_string, loader)
594
- begin
595
- Puppet::Pops::Types::TypeParser.singleton.parse(type_string, loader)
596
- rescue StandardError => e
597
- raise ArgumentError, _("Parsing of type string '\"%{type_string}\"' failed with message: <%{message}>.\n") % {
598
- type_string: type_string,
599
- message: e.message
600
- }
601
- end
593
+ Puppet::Pops::Types::TypeParser.singleton.parse(type_string, loader)
594
+ rescue StandardError => e
595
+ raise ArgumentError, _("Parsing of type string '\"%{type_string}\"' failed with message: <%{message}>.\n") % {
596
+ type_string: type_string,
597
+ message: e.message
598
+ }
602
599
  end
603
600
  private :internal_type_parse
604
601
  end
@@ -688,10 +685,10 @@ module Puppet::Functions
688
685
  PARAM_NAMES = [
689
686
  [],
690
687
  ['p0'].freeze,
691
- ['p0', 'p1'].freeze,
692
- ['p0', 'p1', 'p2'].freeze,
693
- ['p0', 'p1', 'p2', 'p3'].freeze,
694
- ['p0', 'p1', 'p2', 'p3', 'p4'].freeze,
688
+ %w[p0 p1].freeze,
689
+ %w[p0 p1 p2].freeze,
690
+ %w[p0 p1 p2 p3].freeze,
691
+ %w[p0 p1 p2 p3 p4].freeze
695
692
  ]
696
693
 
697
694
  # Creates an anonymous Function3x class that wraps a 3x function
@@ -746,25 +743,23 @@ module Puppet::Functions
746
743
  # used to support other features than calling.
747
744
  #
748
745
  def call(scope, *args, &block)
746
+ result = catch(:return) do
747
+ mapped_args = Puppet::Pops::Evaluator::Runtime3FunctionArgumentConverter.map_args(args, scope, '')
748
+ # this is the scope.function_xxx(...) call
749
+ return scope.send(self.class.method3x, mapped_args)
750
+ end
751
+ result.value
752
+ rescue Puppet::Pops::Evaluator::Next => jumper
753
+ begin
754
+ throw :next, jumper.value
755
+ rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
756
+ raise Puppet::ParseError.new("next() from context where this is illegal", jumper.file, jumper.line)
757
+ end
758
+ rescue Puppet::Pops::Evaluator::Return => jumper
749
759
  begin
750
- result = catch(:return) do
751
- mapped_args = Puppet::Pops::Evaluator::Runtime3FunctionArgumentConverter.map_args(args, scope, '')
752
- # this is the scope.function_xxx(...) call
753
- return scope.send(self.class.method3x, mapped_args)
754
- end
755
- return result.value
756
- rescue Puppet::Pops::Evaluator::Next => jumper
757
- begin
758
- throw :next, jumper.value
759
- rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
760
- raise Puppet::ParseError.new("next() from context where this is illegal", jumper.file, jumper.line)
761
- end
762
- rescue Puppet::Pops::Evaluator::Return => jumper
763
- begin
764
- throw :return, jumper
765
- rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
766
- raise Puppet::ParseError.new("return() from context where this is illegal", jumper.file, jumper.line)
767
- end
760
+ throw :return, jumper
761
+ rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
762
+ raise Puppet::ParseError.new("return() from context where this is illegal", jumper.file, jumper.line)
768
763
  end
769
764
  end
770
765
  end
@@ -135,7 +135,7 @@ module Puppet
135
135
  end
136
136
 
137
137
  # Sort the inputs by path
138
- inputs.sort_by! { |input| input.path }
138
+ inputs.sort_by!(&:path)
139
139
  end
140
140
 
141
141
  def self.bad_input?
@@ -155,7 +155,7 @@ module Puppet
155
155
  def self.generate(inputs, outputdir = nil, force = false)
156
156
  # remove files for non existing inputs
157
157
  unless outputdir.nil?
158
- filenames_to_keep = inputs.map { |i| i.output_name }
158
+ filenames_to_keep = inputs.map(&:output_name)
159
159
  existing_files = Puppet::FileSystem.children(outputdir).map { |f| Puppet::FileSystem.basename(f) }
160
160
  files_to_remove = existing_files - filenames_to_keep
161
161
  files_to_remove.each do |f|
@@ -43,9 +43,9 @@ module Puppet::GettextConfig
43
43
  # @return [String] the active locale
44
44
  def self.current_locale
45
45
  if gettext_loaded?
46
- return FastGettext.default_locale
46
+ FastGettext.default_locale
47
47
  else
48
- return 'en'
48
+ 'en'
49
49
  end
50
50
  end
51
51
 
@@ -55,7 +55,7 @@ module Puppet::GettextConfig
55
55
  def self.loaded_text_domains
56
56
  return [] if @gettext_disabled || !gettext_loaded?
57
57
 
58
- return FastGettext.translation_repositories.keys
58
+ FastGettext.translation_repositories.keys
59
59
  end
60
60
 
61
61
  # @api private
@@ -191,11 +191,11 @@ module Puppet::GettextConfig
191
191
  # @return [String] path to the config, or nil if not found
192
192
  def self.puppet_locale_path
193
193
  if Puppet::FileSystem.exist?(LOCAL_PATH)
194
- return LOCAL_PATH
194
+ LOCAL_PATH
195
195
  elsif Puppet::Util::Platform.windows? && Puppet::FileSystem.exist?(WINDOWS_PATH)
196
- return WINDOWS_PATH
196
+ WINDOWS_PATH
197
197
  elsif !Puppet::Util::Platform.windows? && Puppet::FileSystem.exist?(POSIX_PATH)
198
- return POSIX_PATH
198
+ POSIX_PATH
199
199
  else
200
200
  nil
201
201
  end
@@ -207,9 +207,9 @@ module Puppet::GettextConfig
207
207
  # @return [Symbol] :mo if in a package structure, :po otherwise
208
208
  def self.translation_mode(conf_path)
209
209
  if WINDOWS_PATH == conf_path || POSIX_PATH == conf_path
210
- return :mo
210
+ :mo
211
211
  else
212
- return :po
212
+ :po
213
213
  end
214
214
  end
215
215
 
@@ -239,7 +239,7 @@ module Puppet::GettextConfig
239
239
  end
240
240
 
241
241
  add_repository_to_domain(project_name, locale_dir, file_format, text_domain)
242
- return true
242
+ true
243
243
  end
244
244
 
245
245
  # @api private
@@ -236,33 +236,41 @@ class Puppet::Graph::RbTreeMap
236
236
 
237
237
  def rotate_left
238
238
  r = @right
239
- r_key, r_value = r.key, r.value
239
+ r_key = r.key
240
+ r_value = r.value
240
241
  b = r.left
241
242
  r.left = @left
242
243
  @left = r
243
244
  @right = r.right
244
245
  r.right = b
245
- r.color, r.key, r.value = :red, @key, @value
246
- @key, @value = r_key, r_value
246
+ r.color = :red
247
+ r.key = @key
248
+ r.value = @value
249
+ @key = r_key
250
+ @value = r_value
247
251
  self
248
252
  end
249
253
 
250
254
  def rotate_right
251
255
  l = @left
252
- l_key, l_value = l.key, l.value
256
+ l_key = l.key
257
+ l_value = l.value
253
258
  b = l.right
254
259
  l.right = @right
255
260
  @right = l
256
261
  @left = l.left
257
262
  l.left = b
258
- l.color, l.key, l.value = :red, @key, @value
259
- @key, @value = l_key, l_value
263
+ l.color = :red
264
+ l.key = @key
265
+ l.value = @value
266
+ @key = l_key
267
+ @value = l_value
260
268
  self
261
269
  end
262
270
 
263
271
  def move_red_left
264
272
  colorflip
265
- if (@right.left && @right.left.red?)
273
+ if @right.left && @right.left.red?
266
274
  @right.rotate_right
267
275
  rotate_left
268
276
  colorflip
@@ -272,7 +280,7 @@ class Puppet::Graph::RbTreeMap
272
280
 
273
281
  def move_red_right
274
282
  colorflip
275
- if (@left.left && @left.left.red?)
283
+ if @left.left && @left.left.red?
276
284
  rotate_right
277
285
  colorflip
278
286
  end
@@ -300,15 +308,15 @@ class Puppet::Graph::RbTreeMap
300
308
 
301
309
  def delete_recursive(node, key)
302
310
  if (key <=> node.key) == -1
303
- node.move_red_left if (!isred(node.left) && !isred(node.left.left))
311
+ node.move_red_left if !isred(node.left) && !isred(node.left.left)
304
312
  node.left, result = delete_recursive(node.left, key)
305
313
  else
306
314
  node.rotate_right if isred(node.left)
307
- if (((key <=> node.key) == 0) && node.right.nil?)
315
+ if ((key <=> node.key) == 0) && node.right.nil?
308
316
  return nil, node.value
309
317
  end
310
318
 
311
- if (!isred(node.right) && !isred(node.right.left))
319
+ if !isred(node.right) && !isred(node.right.left)
312
320
  node.move_red_right
313
321
  end
314
322
  if (key <=> node.key) == 0
@@ -321,7 +329,7 @@ class Puppet::Graph::RbTreeMap
321
329
  node.right, result = delete_recursive(node.right, key)
322
330
  end
323
331
  end
324
- return node.fixup, result
332
+ [node.fixup, result]
325
333
  end
326
334
 
327
335
  def delete_min_recursive(node)
@@ -329,35 +337,35 @@ class Puppet::Graph::RbTreeMap
329
337
  return nil, node.value
330
338
  end
331
339
 
332
- if (!isred(node.left) && !isred(node.left.left))
340
+ if !isred(node.left) && !isred(node.left.left)
333
341
  node.move_red_left
334
342
  end
335
343
  node.left, result = delete_min_recursive(node.left)
336
344
 
337
- return node.fixup, result
345
+ [node.fixup, result]
338
346
  end
339
347
 
340
348
  def delete_max_recursive(node)
341
- if (isred(node.left))
349
+ if isred(node.left)
342
350
  node = node.rotate_right
343
351
  end
344
352
  return nil, node.value if node.right.nil?
345
353
 
346
- if (!isred(node.right) && !isred(node.right.left))
354
+ if !isred(node.right) && !isred(node.right.left)
347
355
  node.move_red_right
348
356
  end
349
357
  node.right, result = delete_max_recursive(node.right)
350
358
 
351
- return node.fixup, result
359
+ [node.fixup, result]
352
360
  end
353
361
 
354
362
  def get_recursive(node, key)
355
363
  return nil if node.nil?
356
364
 
357
365
  case key <=> node.key
358
- when 0 then return node
359
- when -1 then return get_recursive(node.left, key)
360
- when 1 then return get_recursive(node.right, key)
366
+ when 0 then node
367
+ when -1 then get_recursive(node.left, key)
368
+ when 1 then get_recursive(node.right, key)
361
369
  end
362
370
  end
363
371
 
@@ -385,9 +393,9 @@ class Puppet::Graph::RbTreeMap
385
393
  when 1 then node.right = insert(node.right, key, value)
386
394
  end
387
395
 
388
- node.rotate_left if (node.right && node.right.red?)
389
- node.rotate_right if (node.left && node.left.red? && node.left.left && node.left.left.red?)
390
- node.colorflip if (node.left && node.left.red? && node.right && node.right.red?)
396
+ node.rotate_left if node.right && node.right.red?
397
+ node.rotate_right if node.left && node.left.red? && node.left.left && node.left.left.red?
398
+ node.colorflip if node.left && node.left.red? && node.right && node.right.red?
391
399
  node
392
400
  end
393
401
 
@@ -128,22 +128,22 @@ class Puppet::Graph::RelationshipGraph < Puppet::Graph::SimpleGraph
128
128
  deferred_resources << resource
129
129
  end
130
130
 
131
- if @ready.empty? and deferred_resources.any?
132
- if made_progress
133
- enqueue(*deferred_resources)
134
- else
135
- deferred_resources.each do |res|
136
- overly_deferred_resource_handler.call(res)
137
- finish(res)
138
- end
139
- end
131
+ next unless @ready.empty? and deferred_resources.any?
140
132
 
141
- made_progress = false
142
- deferred_resources = []
133
+ if made_progress
134
+ enqueue(*deferred_resources)
135
+ else
136
+ deferred_resources.each do |res|
137
+ overly_deferred_resource_handler.call(res)
138
+ finish(res)
139
+ end
143
140
  end
141
+
142
+ made_progress = false
143
+ deferred_resources = []
144
144
  end
145
145
 
146
- if !continue_while.call()
146
+ unless continue_while.call()
147
147
  while (resource = next_resource)
148
148
  canceled_resource_handler.call(resource)
149
149
  finish(resource)
@@ -106,7 +106,7 @@ class Puppet::Graph::SimpleGraph
106
106
  # decent Ruby stack.
107
107
  recur = [{ :node => root }]
108
108
 
109
- while not recur.empty? do
109
+ until recur.empty?
110
110
  frame = recur.last
111
111
  vertex = frame[:node]
112
112
 
@@ -171,7 +171,7 @@ class Puppet::Graph::SimpleGraph
171
171
 
172
172
  # we usually have a disconnected graph, must walk all possible roots
173
173
  vertices.each do |vertex|
174
- if !state[:index][vertex] then
174
+ unless state[:index][vertex] then
175
175
  tarjan vertex, state
176
176
  end
177
177
  end
@@ -186,9 +186,7 @@ class Puppet::Graph::SimpleGraph
186
186
  # time-scale.
187
187
  state[:scc].select do |component|
188
188
  multi_vertex_component?(component) || single_vertex_referring_to_self?(component)
189
- end.map do |component|
190
- component.sort
191
- end.sort
189
+ end.map(&:sort).sort
192
190
  end
193
191
 
194
192
  # Perform a BFS on the sub graph representing the cycle, with a view to
@@ -212,7 +210,7 @@ class Puppet::Graph::SimpleGraph
212
210
 
213
211
  # frame struct is vertex, [path]
214
212
  stack = [[cycle.first, []]]
215
- while frame = stack.shift do # rubocop:disable Lint/AssignmentInCondition
213
+ while frame = stack.shift # rubocop:disable Lint/AssignmentInCondition
216
214
  if frame[1].member?(frame[0]) then
217
215
  found << frame[1] + [frame[0]]
218
216
  break if found.length >= max_paths
@@ -223,7 +221,7 @@ class Puppet::Graph::SimpleGraph
223
221
  end
224
222
  end
225
223
 
226
- return found.sort
224
+ found.sort
227
225
  end
228
226
 
229
227
  # @return [Array] array of dependency cycles (arrays)
@@ -268,7 +266,7 @@ class Puppet::Graph::SimpleGraph
268
266
  filename = File.join(Puppet[:graphdir], "cycles.dot")
269
267
  # DOT files are assumed to be UTF-8 by default - http://www.graphviz.org/doc/info/lang.html
270
268
  File.open(filename, "w:UTF-8") { |f| f.puts graph }
271
- return filename
269
+ filename
272
270
  end
273
271
 
274
272
  # Add a new vertex to the graph.
@@ -330,7 +328,7 @@ class Puppet::Graph::SimpleGraph
330
328
  end
331
329
 
332
330
  def edges
333
- @in_to.values.collect { |x| x.values }.flatten
331
+ @in_to.values.collect(&:values).flatten
334
332
  end
335
333
 
336
334
  def each_edge
@@ -449,7 +447,7 @@ class Puppet::Graph::SimpleGraph
449
447
  # which match +dot+ properties will be used as well.
450
448
  def to_dot_graph(params = {})
451
449
  params['name'] ||= self.class.name.tr(':', '_')
452
- fontsize = params['fontsize'] ? params['fontsize'] : '8'
450
+ fontsize = params['fontsize'] || '8'
453
451
  graph = (directed? ? DOT::DOTDigraph : DOT::DOTSubgraph).new(params)
454
452
  edge_klass = directed? ? DOT::DOTDirectedEdge : DOT::DOTEdge
455
453
  vertices.each do |v|
@@ -365,7 +365,7 @@ class Puppet::HTTP::Client
365
365
  response = nil
366
366
  done = false
367
367
 
368
- while !done do
368
+ until done
369
369
  connect(request.uri, options: options) do |http|
370
370
  apply_auth(request, basic_auth) if redirects.zero?
371
371
 
@@ -41,7 +41,7 @@ module Puppet::HTTP
41
41
  # @param [Symbol] service_name the key of the service we are querying
42
42
  # @yields [String, Integer] server and port of selected record
43
43
  def each_srv_record(domain, service_name = :puppet, &block)
44
- if (domain.nil? or domain.empty?)
44
+ if domain.nil? or domain.empty?
45
45
  Puppet.debug "Domain not known; skipping SRV lookup"
46
46
  return
47
47
  end
@@ -118,7 +118,7 @@ module Puppet::HTTP
118
118
  # @param [String] service_name the service whose TTL we want
119
119
  # @return [Integer] the TTL for this service, in seconds
120
120
  def ttl(service_name)
121
- return @record_cache[service_name].ttl
121
+ @record_cache[service_name].ttl
122
122
  end
123
123
 
124
124
  # Checks if the cached entry for the given service has expired.
@@ -128,9 +128,9 @@ module Puppet::HTTP
128
128
  def expired?(service_name)
129
129
  entry = @record_cache[service_name]
130
130
  if entry
131
- return Time.now > (entry.resolution_time + entry.ttl)
131
+ Time.now > (entry.resolution_time + entry.ttl)
132
132
  else
133
- return true
133
+ true
134
134
  end
135
135
  end
136
136
 
@@ -39,7 +39,7 @@ class Puppet::HTTP::ExternalClient < Puppet::HTTP::Client
39
39
  # (see Puppet::HTTP::Client#post)
40
40
  # @api private
41
41
  def post(url, body, headers: {}, params: {}, options: {}, &block)
42
- raise ArgumentError.new("'post' requires a string 'body' argument") unless body.is_a?(String)
42
+ raise ArgumentError, "'post' requires a string 'body' argument" unless body.is_a?(String)
43
43
 
44
44
  url = encode_query(url, params)
45
45
 
@@ -17,7 +17,7 @@ class Puppet::HTTP::Factory
17
17
 
18
18
  def initialize
19
19
  # PUP-1411, make sure that openssl is initialized before we try to connect
20
- if !@@openssl_initialized
20
+ unless @@openssl_initialized
21
21
  OpenSSL::SSL::SSLContext.new
22
22
  @@openssl_initialized = true
23
23
  end
@@ -6,7 +6,7 @@ require_relative '../../puppet/ssl/openssl_loader'
6
6
  module Puppet::HTTP::Proxy
7
7
  def self.proxy(uri)
8
8
  if http_proxy_host && !no_proxy?(uri)
9
- Net::HTTP.new(uri.host, uri.port, self.http_proxy_host, self.http_proxy_port, self.http_proxy_user, self.http_proxy_password)
9
+ Net::HTTP.new(uri.host, uri.port, http_proxy_host, http_proxy_port, http_proxy_user, http_proxy_password)
10
10
  else
11
11
  http = Net::HTTP.new(uri.host, uri.port, nil, nil, nil, nil)
12
12
  # Net::HTTP defaults the proxy port even though we said not to
@@ -24,7 +24,7 @@ module Puppet::HTTP::Proxy
24
24
  rescue URI::InvalidURIError
25
25
  return nil
26
26
  end
27
- return nil
27
+ nil
28
28
  end
29
29
 
30
30
  # The documentation around the format of the no_proxy variable seems
@@ -56,11 +56,11 @@ module Puppet::HTTP::Proxy
56
56
  # If this no_proxy entry specifies a port, we want to match it against
57
57
  # the destination port. Otherwise just match hosts.
58
58
  if port
59
- no_proxy_regex = %r(#{host}:#{port}$)
59
+ no_proxy_regex = /#{host}:#{port}$/
60
60
  dest_string = "#{dest.host}:#{dest.port}"
61
61
  else
62
- no_proxy_regex = %r(#{host}$)
63
- dest_string = "#{dest.host}"
62
+ no_proxy_regex = /#{host}$/
63
+ dest_string = dest.host.to_s
64
64
  end
65
65
 
66
66
  if no_proxy_regex.match(dest_string)
@@ -68,11 +68,11 @@ module Puppet::HTTP::Proxy
68
68
  end
69
69
  end
70
70
 
71
- return false
71
+ false
72
72
  end
73
73
 
74
74
  def self.http_proxy_host
75
- env = self.http_proxy_env
75
+ env = http_proxy_env
76
76
 
77
77
  if env and env.host
78
78
  return env.host
@@ -82,21 +82,21 @@ module Puppet::HTTP::Proxy
82
82
  return nil
83
83
  end
84
84
 
85
- return Puppet.settings[:http_proxy_host]
85
+ Puppet.settings[:http_proxy_host]
86
86
  end
87
87
 
88
88
  def self.http_proxy_port
89
- env = self.http_proxy_env
89
+ env = http_proxy_env
90
90
 
91
91
  if env and env.port
92
92
  return env.port
93
93
  end
94
94
 
95
- return Puppet.settings[:http_proxy_port]
95
+ Puppet.settings[:http_proxy_port]
96
96
  end
97
97
 
98
98
  def self.http_proxy_user
99
- env = self.http_proxy_env
99
+ env = http_proxy_env
100
100
 
101
101
  if env and env.user
102
102
  return env.user
@@ -106,11 +106,11 @@ module Puppet::HTTP::Proxy
106
106
  return nil
107
107
  end
108
108
 
109
- return Puppet.settings[:http_proxy_user]
109
+ Puppet.settings[:http_proxy_user]
110
110
  end
111
111
 
112
112
  def self.http_proxy_password
113
- env = self.http_proxy_env
113
+ env = http_proxy_env
114
114
 
115
115
  if env and env.password
116
116
  return env.password
@@ -120,7 +120,7 @@ module Puppet::HTTP::Proxy
120
120
  return nil
121
121
  end
122
122
 
123
- return Puppet.settings[:http_proxy_password]
123
+ Puppet.settings[:http_proxy_password]
124
124
  end
125
125
 
126
126
  def self.no_proxy
@@ -134,6 +134,6 @@ module Puppet::HTTP::Proxy
134
134
  return nil
135
135
  end
136
136
 
137
- return Puppet.settings[:no_proxy]
137
+ Puppet.settings[:no_proxy]
138
138
  end
139
139
  end
@@ -43,7 +43,7 @@ class Puppet::HTTP::Redirector
43
43
  #
44
44
  # @api private
45
45
  def redirect_to(request, response, redirects)
46
- raise Puppet::HTTP::TooManyRedirects.new(request.uri) if redirects >= @redirect_limit
46
+ raise Puppet::HTTP::TooManyRedirects, request.uri if redirects >= @redirect_limit
47
47
 
48
48
  location = parse_location(response)
49
49
  url = request.uri.merge(location)
@@ -56,6 +56,10 @@ class Puppet::HTTP::Redirector
56
56
  next if header.casecmp('Authorization').zero? && request.uri.host.casecmp(location.host) != 0
57
57
  next if header.casecmp('Cookie').zero? && request.uri.host.casecmp(location.host) != 0
58
58
  end
59
+ # Allow Net::HTTP to set its own Accept-Encoding header to avoid errors with HTTP compression.
60
+ # See https://github.com/puppetlabs/puppet/issues/9143
61
+ next if header.casecmp('Accept-Encoding').zero?
62
+
59
63
  new_request[header] = value
60
64
  end
61
65
 
@@ -74,7 +78,7 @@ class Puppet::HTTP::Redirector
74
78
 
75
79
  def parse_location(response)
76
80
  location = response['location']
77
- raise Puppet::HTTP::ProtocolError.new(_("Location response header is missing")) unless location
81
+ raise Puppet::HTTP::ProtocolError, _("Location response header is missing") unless location
78
82
 
79
83
  URI.parse(location)
80
84
  rescue URI::InvalidURIError => e
@@ -42,9 +42,9 @@ class Puppet::HTTP::Resolver
42
42
  # @api public
43
43
  def check_connection?(session, service, ssl_context: nil)
44
44
  service.connect(ssl_context: ssl_context)
45
- return true
45
+ true
46
46
  rescue Puppet::HTTP::ConnectionError => e
47
47
  Puppet.log_exception(e, "Connection to #{service.url} failed, trying next route: #{e.message}")
48
- return false
48
+ false
49
49
  end
50
50
  end
@@ -48,7 +48,7 @@ class Puppet::HTTP::RetryAfterHandler
48
48
  #
49
49
  # @api private
50
50
  def retry_after_interval(request, response, retries)
51
- raise Puppet::HTTP::TooManyRetryAfters.new(request.uri) if retries >= @retry_limit
51
+ raise Puppet::HTTP::TooManyRetryAfters, request.uri if retries >= @retry_limit
52
52
 
53
53
  retry_after = response['Retry-After']
54
54
  return nil unless retry_after
@@ -72,7 +72,7 @@ class Puppet::HTTP::RetryAfterHandler
72
72
  seconds = (tm.to_time - DateTime.now.to_time).to_i
73
73
  [seconds, 0].max
74
74
  rescue ArgumentError
75
- raise Puppet::HTTP::ProtocolError.new(_("Failed to parse Retry-After header '%{retry_after}' as an integer or RFC 2822 date") % { retry_after: retry_after })
75
+ raise Puppet::HTTP::ProtocolError, _("Failed to parse Retry-After header '%{retry_after}' as an integer or RFC 2822 date") % { retry_after: retry_after }
76
76
  end
77
77
  end
78
78
  end
@@ -124,7 +124,7 @@ class Puppet::HTTP::Service::Ca < Puppet::HTTP::Service
124
124
  options: { ssl_context: ssl_context }
125
125
  )
126
126
 
127
- raise ArgumentError.new(_('SSL context must contain a client certificate.')) unless ssl_context.client_cert
127
+ raise ArgumentError, _('SSL context must contain a client certificate.') unless ssl_context.client_cert
128
128
 
129
129
  process_response(response)
130
130