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
@@ -76,7 +76,11 @@ module Puppet::ModuleTool
76
76
  vstring = mod.version ? "v#{mod.version}" : '???'
77
77
  Puppet.notice _("Found '%{name}' (%{version}) in %{dir} ...") % { name: name, version: colorize(:cyan, vstring), dir: dir }
78
78
  unless @ignore_changes
79
- changes = Checksummer.run(mod.path) rescue []
79
+ changes = begin
80
+ Checksummer.run(mod.path)
81
+ rescue
82
+ []
83
+ end
80
84
  if mod.has_metadata? && !changes.empty?
81
85
  raise LocalChangesError,
82
86
  :action => :upgrade,
@@ -117,22 +121,22 @@ module Puppet::ModuleTool
117
121
 
118
122
  version = release.version
119
123
 
120
- unless forced?
121
- # Since upgrading already installed modules can be troublesome,
122
- # we'll place constraints on the graph for each installed
123
- # module, locking it to upgrades within the same major version.
124
- installed_range = ">=#{version} #{version.major}.x"
125
- graph.add_constraint('installed', installed_module, installed_range) do |node|
126
- Puppet::Module.parse_range(installed_range).include? node.version
127
- end
124
+ next if forced?
125
+
126
+ # Since upgrading already installed modules can be troublesome,
127
+ # we'll place constraints on the graph for each installed
128
+ # module, locking it to upgrades within the same major version.
129
+ installed_range = ">=#{version} #{version.major}.x"
130
+ graph.add_constraint('installed', installed_module, installed_range) do |node|
131
+ Puppet::Module.parse_range(installed_range).include? node.version
132
+ end
128
133
 
129
- release.mod.dependencies.each do |dep|
130
- dep_name = dep['name'].tr('/', '-')
134
+ release.mod.dependencies.each do |dep|
135
+ dep_name = dep['name'].tr('/', '-')
131
136
 
132
- range = dep['version_requirement']
133
- graph.add_constraint("#{installed_module} constraint", dep_name, range) do |node|
134
- Puppet::Module.parse_range(range).include? node.version
135
- end
137
+ range = dep['version_requirement']
138
+ graph.add_constraint("#{installed_module} constraint", dep_name, range) do |node|
139
+ Puppet::Module.parse_range(range).include? node.version
136
140
  end
137
141
  end
138
142
  end
@@ -146,30 +150,29 @@ module Puppet::ModuleTool
146
150
 
147
151
  releases.each do |rel|
148
152
  mod = installed_modules_source.by_name[rel.name.split('-').last]
149
- if mod
150
- next if mod.has_metadata? && mod.forge_name.tr('/', '-') == rel.name
151
-
152
- if rel.name != name
153
- dependency = {
154
- :name => rel.name,
155
- :version => rel.version
156
- }
157
- end
158
-
159
- raise InstallConflictError,
160
- :requested_module => name,
161
- :requested_version => options[:version] || 'latest',
162
- :dependency => dependency,
163
- :directory => mod.path,
164
- :metadata => mod.metadata
153
+ next unless mod
154
+ next if mod.has_metadata? && mod.forge_name.tr('/', '-') == rel.name
155
+
156
+ if rel.name != name
157
+ dependency = {
158
+ :name => rel.name,
159
+ :version => rel.version
160
+ }
165
161
  end
162
+
163
+ raise InstallConflictError,
164
+ :requested_module => name,
165
+ :requested_version => options[:version] || 'latest',
166
+ :dependency => dependency,
167
+ :directory => mod.path,
168
+ :metadata => mod.metadata
166
169
  end
167
170
 
168
171
  child = releases.find { |x| x.name == name }
169
172
 
170
173
  unless forced?
171
174
  if child.version == results[:installed_version]
172
- versions = graph.dependencies[name].map { |r| r.version }
175
+ versions = graph.dependencies[name].map(&:version)
173
176
  newer_versions = versions.select { |v| v > results[:installed_version] }
174
177
 
175
178
  raise VersionAlreadyInstalledError,
@@ -187,7 +190,7 @@ module Puppet::ModuleTool
187
190
  end
188
191
 
189
192
  Puppet.info _("Preparing to upgrade ...")
190
- releases.each { |release| release.prepare }
193
+ releases.each(&:prepare)
191
194
 
192
195
  Puppet.notice _('Upgrading -- do not interrupt ...')
193
196
  releases.each do |release|
@@ -268,7 +271,7 @@ module Puppet::ModuleTool
268
271
  end
269
272
  end
270
273
 
271
- return {
274
+ {
272
275
  :release => release,
273
276
  :name => release.name,
274
277
  :path => release.install_dir,
@@ -19,7 +19,7 @@ module Puppet::ModuleTool
19
19
 
20
20
  # Return checksum for the +Pathname+.
21
21
  def checksum(pathname)
22
- return Digest::MD5.hexdigest(Puppet::FileSystem.binread(pathname))
22
+ Digest::MD5.hexdigest(Puppet::FileSystem.binread(pathname))
23
23
  end
24
24
 
25
25
  # Return checksums for object's +Pathname+, generate if it's needed.
@@ -36,7 +36,7 @@ module Puppet::ModuleTool
36
36
  end
37
37
  end
38
38
  end
39
- return @data
39
+ @data
40
40
  end
41
41
 
42
42
  alias :to_data_hash :data
@@ -23,7 +23,7 @@ module Puppet::ModuleTool
23
23
  # We override Object's ==, eql, and hash so we can more easily find identical
24
24
  # dependencies.
25
25
  def ==(o)
26
- self.hash == o.hash
26
+ hash == o.hash
27
27
  end
28
28
 
29
29
  alias :eql? :==
@@ -10,7 +10,7 @@ module Puppet::ModuleTool::Errors
10
10
  if @action == :upgrade
11
11
  "#{v(@installed_version)} -> #{v(@requested_version)}"
12
12
  else
13
- "#{v(@installed_version || @requested_version)}"
13
+ v(@installed_version || @requested_version).to_s
14
14
  end
15
15
  end
16
16
  end
@@ -36,7 +36,7 @@ module Puppet
36
36
  }
37
37
 
38
38
  def converted_to_friendly_error(module_name, version, orig_error)
39
- return orig_error if not ERROR_MAPPINGS.include?(orig_error.class)
39
+ return orig_error unless ERROR_MAPPINGS.include?(orig_error.class)
40
40
 
41
41
  ERROR_MAPPINGS[orig_error.class].new(orig_error,
42
42
  :requested_module => module_name,
@@ -84,11 +84,9 @@ module Puppet::ModuleTool
84
84
  # rubocop:enable Naming/MemoizedInstanceVariableName
85
85
 
86
86
  def unpack(file, destination)
87
- begin
88
- Puppet::ModuleTool::Applications::Unpacker.unpack(file, destination)
89
- rescue Puppet::ExecutionFailure => e
90
- raise RuntimeError, _("Could not extract contents of module archive: %{message}") % { message: e.message }
91
- end
87
+ Puppet::ModuleTool::Applications::Unpacker.unpack(file, destination)
88
+ rescue Puppet::ExecutionFailure => e
89
+ raise RuntimeError, _("Could not extract contents of module archive: %{message}") % { message: e.message }
92
90
  end
93
91
  end
94
92
  end
@@ -58,7 +58,7 @@ module Puppet::ModuleTool
58
58
  merge_dependencies(data) if data['dependencies']
59
59
 
60
60
  @data.merge!(data)
61
- return self
61
+ self
62
62
  end
63
63
 
64
64
  # Validates the name and version_requirement for a dependency, then creates
@@ -102,7 +102,11 @@ module Puppet::ModuleTool
102
102
  data = @data.dup.merge('dependencies' => dependencies)
103
103
 
104
104
  contents = data.keys.map do |k|
105
- value = (Puppet::Util::Json.dump(data[k], :pretty => true) rescue data[k].to_json)
105
+ value = begin
106
+ Puppet::Util::Json.dump(data[k], :pretty => true)
107
+ rescue
108
+ data[k].to_json
109
+ end
106
110
  %Q("#{k}": #{value})
107
111
  end
108
112
 
@@ -121,7 +125,7 @@ module Puppet::ModuleTool
121
125
  # Do basic validation and parsing of the name parameter.
122
126
  def process_name(data)
123
127
  validate_name(data['name'])
124
- author, @module_name = data['name'].split(/[-\/]/, 2)
128
+ author, @module_name = data['name'].split(%r{[-/]}, 2)
125
129
 
126
130
  data['author'] ||= author if @data['author'] == DEFAULTS['author']
127
131
  end
@@ -139,7 +143,7 @@ module Puppet::ModuleTool
139
143
  # GitHub, we can predict sensible defaults for both project_page and
140
144
  # issues_url.
141
145
  def process_source(data)
142
- if data['source'] =~ %r[://]
146
+ if data['source'] =~ %r{://}
143
147
  source_uri = URI.parse(data['source'])
144
148
  else
145
149
  source_uri = URI.parse("http://#{data['source']}")
@@ -149,10 +153,10 @@ module Puppet::ModuleTool
149
153
  source_uri.scheme = 'https'
150
154
  source_uri.path.sub!(/\.git$/, '')
151
155
  data['project_page'] ||= @data['project_page'] || source_uri.to_s
152
- data['issues_url'] ||= @data['issues_url'] || source_uri.to_s.sub(/\/*$/, '') + '/issues'
156
+ data['issues_url'] ||= @data['issues_url'] || source_uri.to_s.sub(%r{/*$}, '') + '/issues'
153
157
  end
154
158
  rescue URI::Error
155
- return
159
+ nil
156
160
  end
157
161
 
158
162
  # Validates and parses the dependencies.
@@ -167,9 +171,9 @@ module Puppet::ModuleTool
167
171
 
168
172
  # Validates that the given module name is both namespaced and well-formed.
169
173
  def validate_name(name)
170
- return if name =~ /\A[a-z0-9]+[-\/][a-z][a-z0-9_]*\Z/i
174
+ return if name =~ %r{\A[a-z0-9]+[-/][a-z][a-z0-9_]*\Z}i
171
175
 
172
- namespace, modname = name.split(/[-\/]/, 2)
176
+ namespace, modname = name.split(%r{[-/]}, 2)
173
177
  modname = :namespace_missing if namespace == ''
174
178
 
175
179
  err = case modname
@@ -13,7 +13,8 @@ module Puppet::ModuleTool::Shared
13
13
  @installed[mod_name] << mod
14
14
  d = @local["#{mod_name}@#{mod.version}"]
15
15
  (mod.dependencies || []).each do |hash|
16
- name, conditions = hash['name'], hash['version_requirement']
16
+ name = hash['name']
17
+ conditions = hash['version_requirement']
17
18
  name = name.tr('/', '-')
18
19
  d[name] = conditions
19
20
  @conditions[name] << {
@@ -37,7 +38,11 @@ module Puppet::ModuleTool::Shared
37
38
  mod_name, releases = pair
38
39
  mod_name = mod_name.tr('/', '-')
39
40
  releases.each do |rel|
40
- semver = SemanticPuppet::Version.parse(rel['version']) rescue SemanticPuppet::Version::MIN
41
+ semver = begin
42
+ SemanticPuppet::Version.parse(rel['version'])
43
+ rescue
44
+ SemanticPuppet::Version::MIN
45
+ end
41
46
  @versions[mod_name] << { :vstring => rel['version'], :semver => semver }
42
47
  @versions[mod_name].sort_by! { |a| a[:semver] }
43
48
  @urls["#{mod_name}@#{rel['version']}"] = rel['file']
@@ -55,14 +60,14 @@ module Puppet::ModuleTool::Shared
55
60
  return :latest
56
61
  end
57
62
 
58
- return :best
63
+ :best
59
64
  end
60
65
 
61
66
  def annotated_version(mod, versions)
62
67
  if versions.empty?
63
- return implicit_version(mod)
68
+ implicit_version(mod)
64
69
  else
65
- return "#{implicit_version(mod)}: #{versions.last}"
70
+ "#{implicit_version(mod)}: #{versions.last}"
66
71
  end
67
72
  end
68
73
 
@@ -78,10 +83,16 @@ module Puppet::ModuleTool::Shared
78
83
  }
79
84
 
80
85
  if forced?
81
- range = Puppet::Module.parse_range(@version) rescue Puppet::Module.parse_range('>= 0.0.0')
86
+ range = begin
87
+ Puppet::Module.parse_range(@version)
88
+ rescue
89
+ Puppet::Module.parse_range('>= 0.0.0')
90
+ end
82
91
  else
83
92
  range = (@conditions[mod]).map do |r|
84
- Puppet::Module.parse_range(r[:dependency]) rescue Puppet::Module.parse_range('>= 0.0.0')
93
+ Puppet::Module.parse_range(r[:dependency])
94
+ rescue
95
+ Puppet::Module.parse_range('>= 0.0.0')
85
96
  end.inject(&:&)
86
97
  end
87
98
 
@@ -89,7 +100,7 @@ module Puppet::ModuleTool::Shared
89
100
  next if range === seen[mod][:semver]
90
101
 
91
102
  req_module = @module_name
92
- req_versions = @versions["#{@module_name}"].map { |v| v[:semver] }
103
+ req_versions = @versions[@module_name.to_s].map { |v| v[:semver] }
93
104
  raise InvalidDependencyCycleError,
94
105
  :module_name => mod,
95
106
  :source => (source + [{ :name => mod, :version => source.last[:dependency] }]),
@@ -110,14 +121,14 @@ module Puppet::ModuleTool::Shared
110
121
  @conditions.each { |_, conds| conds.delete_if { |c| c[:module] == mod } }
111
122
  end
112
123
 
113
- versions = @versions["#{mod}"].select { |h| range === h[:semver] }
124
+ versions = @versions[mod.to_s].select { |h| range === h[:semver] }
114
125
  valid_versions = versions.select { |x| x[:semver].special == '' }
115
126
  valid_versions = versions if valid_versions.empty?
116
127
 
117
128
  version = valid_versions.last
118
129
  unless version
119
130
  req_module = @module_name
120
- req_versions = @versions["#{@module_name}"].map { |v| v[:semver] }
131
+ req_versions = @versions[@module_name.to_s].map { |v| v[:semver] }
121
132
  raise NoVersionsSatisfyError,
122
133
  :requested_name => req_module,
123
134
  :requested_version => @version || annotated_version(req_module, req_versions),
@@ -135,7 +146,11 @@ module Puppet::ModuleTool::Shared
135
146
  :action => action,
136
147
  :previous_version => @installed[mod].empty? ? nil : @installed[mod].first.version,
137
148
  :file => @urls["#{mod}@#{version[:vstring]}"],
138
- :path => action == :install ? @options[:target_dir] : (@installed[mod].empty? ? @options[:target_dir] : @installed[mod].first.modulepath),
149
+ :path => if action == :install
150
+ @options[:target_dir]
151
+ else
152
+ @installed[mod].empty? ? @options[:target_dir] : @installed[mod].first.modulepath
153
+ end,
139
154
  :dependencies => []
140
155
  }
141
156
  end
@@ -143,7 +158,7 @@ module Puppet::ModuleTool::Shared
143
158
  deps = @remote["#{mod[:module]}@#{mod[:version][:vstring]}"].sort_by(&:first)
144
159
  mod[:dependencies] = resolve_constraints(deps, source + [{ :name => mod[:module], :version => mod[:version][:vstring] }], seen, :install)
145
160
  end unless @ignore_dependencies
146
- return dependencies
161
+ dependencies
147
162
  end
148
163
 
149
164
  def download_tarballs(graph, default_path, forge)
@@ -44,9 +44,9 @@ class Puppet::ModuleTool::Tar::Mini
44
44
 
45
45
  private
46
46
 
47
- EXECUTABLE = 0755
48
- NOT_EXECUTABLE = 0644
49
- USER_EXECUTE = 0100
47
+ EXECUTABLE = 0o755
48
+ NOT_EXECUTABLE = 0o644
49
+ USER_EXECUTE = 0o100
50
50
 
51
51
  def set_dir_mode!(stats)
52
52
  if stats.key?(:mode)
@@ -13,7 +13,7 @@ module Puppet
13
13
 
14
14
  # Directory and names that should not be checksummed.
15
15
  ARTIFACTS = ['pkg', /^\./, /^~/, /^#/, 'coverage', 'checksums.json', 'REVISION']
16
- FULL_MODULE_NAME_PATTERN = /\A([^-\/|.]+)[-|\/](.+)\z/
16
+ FULL_MODULE_NAME_PATTERN = %r{\A([^-/|.]+)[-|/](.+)\z}
17
17
  REPOSITORY_URL = Puppet.settings[:module_repository]
18
18
 
19
19
  # Is this a directory that shouldn't be checksummed?
@@ -35,7 +35,7 @@ module Puppet
35
35
  def self.username_and_modname_from(full_module_name)
36
36
  matcher = full_module_name.match(FULL_MODULE_NAME_PATTERN)
37
37
  if matcher
38
- return matcher.captures
38
+ matcher.captures
39
39
  else
40
40
  raise ArgumentError, _("Not a valid full name: %{full_module_name}") % { full_module_name: full_module_name }
41
41
  end
@@ -87,7 +87,7 @@ module Puppet
87
87
  str << branch
88
88
  end
89
89
 
90
- return str
90
+ str
91
91
  end
92
92
 
93
93
  def self.build_tree(mods, dir)
@@ -102,7 +102,7 @@ module Puppet
102
102
  mod[:text] = "#{mod[:name]} (#{colorize(:cyan, version_string)})"
103
103
  mod[:text] += " [#{mod[:path]}]" unless mod[:path].to_s == dir.to_s
104
104
 
105
- deps = (mod[:dependencies] || [])
105
+ deps = mod[:dependencies] || []
106
106
  deps.sort_by! { |a| a[:name] }
107
107
  build_tree(deps, dir)
108
108
  end
@@ -7,7 +7,7 @@ module Puppet::Network # :nodoc:
7
7
  attr_accessor :name, :ip, :authenticated, :handler, :method
8
8
 
9
9
  def authenticated?
10
- self.authenticated
10
+ authenticated
11
11
  end
12
12
 
13
13
  # A common way of talking about the full call. Individual servers
@@ -20,11 +20,13 @@ module Puppet::Network # :nodoc:
20
20
  end
21
21
 
22
22
  def initialize(name, ip, authenticated)
23
- @name, @ip, @authenticated = name, ip, authenticated
23
+ @name = name
24
+ @ip = ip
25
+ @authenticated = authenticated
24
26
  end
25
27
 
26
28
  def to_s
27
- "#{self.name}(#{self.ip})"
29
+ "#{name}(#{ip})"
28
30
  end
29
31
  end
30
32
  end
@@ -14,7 +14,7 @@ class Puppet::Network::Format
14
14
  value = @options.delete(name)
15
15
  value = default if value.nil?
16
16
 
17
- self.send(name.to_s + "=", value)
17
+ send(name.to_s + "=", value)
18
18
  end
19
19
 
20
20
  def initialize(name, options = {}, &block)
@@ -111,6 +111,6 @@ class Puppet::Network::Format
111
111
 
112
112
  method = send(name)
113
113
 
114
- return(type == :class ? klass.respond_to?(method) : klass.method_defined?(method))
114
+ (type == :class ? klass.respond_to?(method) : klass.method_defined?(method))
115
115
  end
116
116
  end
@@ -68,7 +68,7 @@ module Puppet::Network::FormatSupport
68
68
  end
69
69
 
70
70
  def friendly_name
71
- if self.respond_to? :indirection
71
+ if respond_to? :indirection
72
72
  indirection.name
73
73
  else
74
74
  self
@@ -222,7 +222,7 @@ Puppet::Network::FormatHandler.create(:flat,
222
222
  a["#{i}.#{el_k}"] = el_v
223
223
  end
224
224
  else
225
- a["#{i}"] = el
225
+ a[i.to_s] = el
226
226
  end
227
227
  end
228
228
  a
@@ -36,7 +36,7 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
36
36
  indirection, method, key, params = uri2indirection(request.method, request.path, request.params)
37
37
  certificate = request.client_cert
38
38
 
39
- if !indirection.allow_remote_requests?
39
+ unless indirection.allow_remote_requests?
40
40
  # TODO: should we tell the user we found an indirection but it doesn't
41
41
  # allow remote requests, or just pretend there's no handler at all? what
42
42
  # are the security implications for the former?
@@ -62,9 +62,7 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
62
62
  environment = params.delete(:environment)
63
63
 
64
64
  if indirection_name !~ /^\w+$/
65
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
66
- _("The indirection name must be purely alphanumeric, not '%{indirection_name}'") % { indirection_name: indirection_name }
67
- )
65
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("The indirection name must be purely alphanumeric, not '%{indirection_name}'") % { indirection_name: indirection_name }
68
66
  end
69
67
 
70
68
  # this also depluralizes the indirection_name if it is a search
@@ -73,29 +71,23 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
73
71
  # check whether this indirection matches the prefix and version in the
74
72
  # request
75
73
  if url_prefix != IndirectionType.url_prefix_for(indirection_name)
76
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
77
- _("Indirection '%{indirection_name}' does not match url prefix '%{url_prefix}'") % { indirection_name: indirection_name, url_prefix: url_prefix }
78
- )
74
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("Indirection '%{indirection_name}' does not match url prefix '%{url_prefix}'") % { indirection_name: indirection_name, url_prefix: url_prefix }
79
75
  end
80
76
 
81
77
  indirection = Puppet::Indirector::Indirection.instance(indirection_name.to_sym)
82
- if !indirection
78
+ unless indirection
83
79
  raise Puppet::Network::HTTP::Error::HTTPNotFoundError.new(
84
80
  _("Could not find indirection '%{indirection_name}'") % { indirection_name: indirection_name },
85
81
  Puppet::Network::HTTP::Issues::HANDLER_NOT_FOUND
86
82
  )
87
83
  end
88
84
 
89
- if !environment
90
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
91
- _("An environment parameter must be specified")
92
- )
85
+ unless environment
86
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("An environment parameter must be specified")
93
87
  end
94
88
 
95
- if !Puppet::Node::Environment.valid_name?(environment)
96
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
97
- _("The environment must be purely alphanumeric, not '%{environment}'") % { environment: environment }
98
- )
89
+ unless Puppet::Node::Environment.valid_name?(environment)
90
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("The environment must be purely alphanumeric, not '%{environment}'") % { environment: environment }
99
91
  end
100
92
 
101
93
  configured_environment = Puppet.lookup(:environments).get(environment)
@@ -105,17 +97,13 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
105
97
  end
106
98
 
107
99
  if configured_environment.nil? && indirection.terminus.require_environment?
108
- raise Puppet::Network::HTTP::Error::HTTPNotFoundError.new(
109
- _("Could not find environment '%{environment}'") % { environment: environment }
110
- )
100
+ raise Puppet::Network::HTTP::Error::HTTPNotFoundError, _("Could not find environment '%{environment}'") % { environment: environment }
111
101
  end
112
102
 
113
103
  params.delete(:bucket_path)
114
104
 
115
105
  if key == "" or key.nil?
116
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
117
- _("No request key specified in %{uri}") % { uri: uri }
118
- )
106
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("No request key specified in %{uri}") % { uri: uri }
119
107
  end
120
108
 
121
109
  [indirection, method, key, params]
@@ -196,19 +184,17 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
196
184
  def first_response_formatter_for(model, request, key, &block)
197
185
  formats = accepted_response_formatters_for(model, request)
198
186
  formatter = formats.find do |format|
199
- begin
200
- yield format
201
- true
202
- rescue Puppet::Network::FormatHandler::FormatError => err
203
- msg = _("Failed to serialize %{model} for '%{key}': %{detail}") %
204
- { model: model, key: key, detail: err }
205
- if Puppet[:allow_pson_serialization]
206
- Puppet.warning(msg)
207
- else
208
- raise Puppet::Network::FormatHandler::FormatError.new(msg)
209
- end
210
- false
187
+ yield format
188
+ true
189
+ rescue Puppet::Network::FormatHandler::FormatError => err
190
+ msg = _("Failed to serialize %{model} for '%{key}': %{detail}") %
191
+ { model: model, key: key, detail: err }
192
+ if Puppet[:allow_pson_serialization]
193
+ Puppet.warning(msg)
194
+ else
195
+ raise Puppet::Network::FormatHandler::FormatError, msg
211
196
  end
197
+ false
212
198
  end
213
199
 
214
200
  return formatter if formatter
@@ -239,9 +225,7 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
239
225
  begin
240
226
  return model_class.convert_from(formatter.name.to_s, data)
241
227
  rescue => e
242
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
243
- _("The request body is invalid: %{message}") % { message: e.message }
244
- )
228
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("The request body is invalid: %{message}") % { message: e.message }
245
229
  end
246
230
  end
247
231
 
@@ -253,22 +237,18 @@ class Puppet::Network::HTTP::API::IndirectedRoutes
253
237
  end
254
238
 
255
239
  def indirection_method(http_method, indirection)
256
- raise Puppet::Network::HTTP::Error::HTTPMethodNotAllowedError.new(
257
- _("No support for http method %{http_method}") % { http_method: http_method }
258
- ) unless METHOD_MAP[http_method]
240
+ raise Puppet::Network::HTTP::Error::HTTPMethodNotAllowedError, _("No support for http method %{http_method}") % { http_method: http_method } unless METHOD_MAP[http_method]
259
241
 
260
242
  method = METHOD_MAP[http_method][plurality(indirection)]
261
243
  unless method
262
- raise Puppet::Network::HTTP::Error::HTTPBadRequestError.new(
263
- _("No support for plurality %{indirection} for %{http_method} operations") % { indirection: plurality(indirection), http_method: http_method }
264
- )
244
+ raise Puppet::Network::HTTP::Error::HTTPBadRequestError, _("No support for plurality %{indirection} for %{http_method} operations") % { indirection: plurality(indirection), http_method: http_method }
265
245
  end
266
246
 
267
247
  method
268
248
  end
269
249
 
270
250
  def self.pluralize(indirection)
271
- return(indirection == "status" ? "statuses" : indirection + "s")
251
+ (indirection == "status" ? "statuses" : indirection + "s")
272
252
  end
273
253
  private_class_method :pluralize
274
254
 
@@ -28,7 +28,7 @@ module Puppet
28
28
  .get(wrap { Environments.new(Puppet.lookup(:environments)) })
29
29
 
30
30
  def self.routes
31
- Puppet::Network::HTTP::Route.path(%r{v3})
31
+ Puppet::Network::HTTP::Route.path(/v3/)
32
32
  .any
33
33
  .chain(ENVIRONMENTS, INDIRECTED)
34
34
  end
@@ -245,7 +245,7 @@ class Puppet::Network::HTTP::Connection
245
245
  end
246
246
 
247
247
  def to_url(path)
248
- if path =~ /^https?:\/\//
248
+ if path =~ %r{^https?://}
249
249
  # The old Connection class accepts a URL as the request path, and sends
250
250
  # it in "absolute-form" in the request line, e.g. GET https://puppet:8140/.
251
251
  # See https://httpwg.org/specs/rfc7230.html#absolute-form. It just so happens