chef-zero 14.0.17 → 15.0.4

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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/bin/chef-zero +2 -2
  4. data/chef-zero.gemspec +4 -3
  5. data/lib/chef_zero/chef_data/cookbook_data.rb +1 -1
  6. data/lib/chef_zero/chef_data/data_normalizer.rb +1 -0
  7. data/lib/chef_zero/data_store/raw_file_store.rb +1 -1
  8. data/lib/chef_zero/endpoints/acl_endpoint.rb +1 -1
  9. data/lib/chef_zero/endpoints/acls_endpoint.rb +1 -1
  10. data/lib/chef_zero/endpoints/actor_endpoint.rb +1 -1
  11. data/lib/chef_zero/endpoints/actors_endpoint.rb +1 -1
  12. data/lib/chef_zero/endpoints/authenticate_user_endpoint.rb +1 -1
  13. data/lib/chef_zero/endpoints/container_endpoint.rb +1 -1
  14. data/lib/chef_zero/endpoints/containers_endpoint.rb +1 -1
  15. data/lib/chef_zero/endpoints/cookbook_version_endpoint.rb +1 -1
  16. data/lib/chef_zero/endpoints/cookbooks_base.rb +1 -1
  17. data/lib/chef_zero/endpoints/data_bag_endpoint.rb +1 -1
  18. data/lib/chef_zero/endpoints/data_bag_item_endpoint.rb +1 -1
  19. data/lib/chef_zero/endpoints/data_bags_endpoint.rb +1 -1
  20. data/lib/chef_zero/endpoints/environment_cookbook_endpoint.rb +1 -1
  21. data/lib/chef_zero/endpoints/environment_cookbook_versions_endpoint.rb +1 -1
  22. data/lib/chef_zero/endpoints/environment_cookbooks_endpoint.rb +1 -1
  23. data/lib/chef_zero/endpoints/environment_endpoint.rb +1 -1
  24. data/lib/chef_zero/endpoints/environment_nodes_endpoint.rb +1 -1
  25. data/lib/chef_zero/endpoints/environment_recipes_endpoint.rb +1 -1
  26. data/lib/chef_zero/endpoints/environment_role_endpoint.rb +1 -1
  27. data/lib/chef_zero/endpoints/group_endpoint.rb +1 -1
  28. data/lib/chef_zero/endpoints/groups_endpoint.rb +1 -1
  29. data/lib/chef_zero/endpoints/license_endpoint.rb +1 -1
  30. data/lib/chef_zero/endpoints/node_endpoint.rb +1 -1
  31. data/lib/chef_zero/endpoints/node_identifiers_endpoint.rb +1 -1
  32. data/lib/chef_zero/endpoints/nodes_endpoint.rb +1 -1
  33. data/lib/chef_zero/endpoints/not_found_endpoint.rb +1 -1
  34. data/lib/chef_zero/endpoints/organization_association_request_endpoint.rb +1 -1
  35. data/lib/chef_zero/endpoints/organization_association_requests_endpoint.rb +1 -1
  36. data/lib/chef_zero/endpoints/organization_authenticate_user_endpoint.rb +1 -1
  37. data/lib/chef_zero/endpoints/organization_endpoint.rb +1 -1
  38. data/lib/chef_zero/endpoints/organization_user_base.rb +1 -1
  39. data/lib/chef_zero/endpoints/organization_user_endpoint.rb +1 -1
  40. data/lib/chef_zero/endpoints/organization_users_endpoint.rb +1 -1
  41. data/lib/chef_zero/endpoints/organization_validator_key_endpoint.rb +1 -1
  42. data/lib/chef_zero/endpoints/organizations_endpoint.rb +1 -1
  43. data/lib/chef_zero/endpoints/policy_group_endpoint.rb +1 -1
  44. data/lib/chef_zero/endpoints/policy_group_policy_endpoint.rb +1 -1
  45. data/lib/chef_zero/endpoints/policy_groups_endpoint.rb +1 -1
  46. data/lib/chef_zero/endpoints/principal_endpoint.rb +1 -1
  47. data/lib/chef_zero/endpoints/rest_list_endpoint.rb +1 -1
  48. data/lib/chef_zero/endpoints/rest_object_endpoint.rb +1 -1
  49. data/lib/chef_zero/endpoints/role_endpoint.rb +1 -1
  50. data/lib/chef_zero/endpoints/role_environments_endpoint.rb +1 -1
  51. data/lib/chef_zero/endpoints/sandbox_endpoint.rb +1 -1
  52. data/lib/chef_zero/endpoints/sandboxes_endpoint.rb +1 -1
  53. data/lib/chef_zero/endpoints/search_endpoint.rb +1 -1
  54. data/lib/chef_zero/endpoints/system_recovery_endpoint.rb +1 -1
  55. data/lib/chef_zero/endpoints/universe_endpoint.rb +1 -1
  56. data/lib/chef_zero/endpoints/user_association_request_endpoint.rb +1 -1
  57. data/lib/chef_zero/endpoints/user_association_requests_count_endpoint.rb +1 -1
  58. data/lib/chef_zero/endpoints/user_association_requests_endpoint.rb +1 -1
  59. data/lib/chef_zero/endpoints/user_organizations_endpoint.rb +1 -1
  60. data/lib/chef_zero/rest_base.rb +6 -2
  61. data/lib/chef_zero/rest_request.rb +6 -2
  62. data/lib/chef_zero/rest_router.rb +1 -1
  63. data/lib/chef_zero/rspec.rb +1 -1
  64. data/lib/chef_zero/server.rb +8 -8
  65. data/lib/chef_zero/socketless_server_map.rb +1 -1
  66. data/lib/chef_zero/version.rb +1 -1
  67. data/spec/run_oc_pedant.rb +3 -3
  68. data/spec/server_spec.rb +2 -2
  69. metadata +19 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 51b6df8cfb1404572342f5012c1779ae1abf0f5dedfbe9bbe85f59f9d36830a3
4
- data.tar.gz: 134c6eeab2b181816a7e7211392f5472d9dbf497fad9c5a3b424521f747fcda4
3
+ metadata.gz: 822f9869055f275fe987a127a5cdfa2dfcdafbfa71efc56f3811a64dd1af5e29
4
+ data.tar.gz: '03668fcd06702dc1d0a4ffb33ee10bafc67d15b08e6fc0e82ec337893329f61d'
5
5
  SHA512:
6
- metadata.gz: 28d830c27a14463aee454123475caee162ff31f62bc2c9bdda6ff7628e6b1fe24af883dbcf78c64071683a51eac4492367ff68f500eb2feaea45e7c5e8583a5e
7
- data.tar.gz: 352b9c4184dc973953dde9322bdb71f9cd54dce7f2f56acb2acbcc47edda8dc29b94fb975d9f1f87b104b49004eb5dbe026287c420d1d58f8c139b3de6a184e9
6
+ metadata.gz: cdf09fc9b68907f2d45e6d7ae764a565b86f196c18e52b75c13a9e4e7f1cb27ce476f97fd5c3fa5a7c939b1a90a3ad2f1eccca3caa28afa3da0f3a532e4d86b7
7
+ data.tar.gz: 6d270b630bbd3685d0efe9d1b7e3aaebf00639c112887bfb3ea85fdcc859a44202009a6f25ad98b9fa54828d396201e8c68bffff4f20d5dbbf00f4be19265962
data/Rakefile CHANGED
@@ -61,7 +61,7 @@ rescue LoadError
61
61
  end
62
62
 
63
63
  begin
64
- require "yard"
64
+ require "yard" unless defined?(YARD)
65
65
  YARD::Rake::YardocTask.new(:docs)
66
66
  rescue LoadError
67
67
  puts "yard is not available. bundle install first to make sure all dependencies are installed."
@@ -3,7 +3,7 @@
3
3
  # Trap interrupts to quit cleanly.
4
4
  Signal.trap("INT") { exit 1 }
5
5
 
6
- require "rubygems"
6
+ require "rubygems" unless defined?(Gem)
7
7
  $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", "lib")))
8
8
 
9
9
  require "chef_zero/log"
@@ -11,7 +11,7 @@ require "chef_zero/dist"
11
11
  require "chef_zero/version"
12
12
  require "chef_zero/server"
13
13
  require "chef_zero/data_store/raw_file_store"
14
- require "optparse"
14
+ require "optparse" unless defined?(OptionParser)
15
15
 
16
16
  def parse_port(port)
17
17
  array = []
@@ -1,4 +1,4 @@
1
- $:.unshift(File.dirname(__FILE__) + "/lib")
1
+ $:.unshift(__dir__ + "/lib")
2
2
  require "chef_zero/version"
3
3
 
4
4
  Gem::Specification.new do |s|
@@ -11,13 +11,14 @@ Gem::Specification.new do |s|
11
11
  s.homepage = "https://github.com/chef/chef-zero"
12
12
  s.license = "Apache-2.0"
13
13
 
14
- s.required_ruby_version = ">= 2.4"
14
+ s.required_ruby_version = ">= 2.6"
15
15
 
16
16
  s.add_dependency "mixlib-log", ">= 2.0", "< 4.0"
17
- s.add_dependency "hashie", ">= 2.0", "< 4.0"
17
+ s.add_dependency "hashie", ">= 2.0", "< 5.0"
18
18
  s.add_dependency "uuidtools", "~> 2.1"
19
19
  s.add_dependency "ffi-yajl", "~> 2.2"
20
20
  s.add_dependency "rack", "~> 2.0", ">= 2.0.6"
21
+ s.add_dependency "webrick"
21
22
 
22
23
  s.bindir = "bin"
23
24
  s.executables = ["chef-zero"]
@@ -1,4 +1,4 @@
1
- require "digest/md5"
1
+ require "digest/md5" unless defined?(Digest::MD5)
2
2
  require "hashie"
3
3
 
4
4
  module ChefZero
@@ -62,6 +62,7 @@ module ChefZero
62
62
  user["email"] ||= nil
63
63
  user["first_name"] ||= nil
64
64
  user["last_name"] ||= nil
65
+ user["display_name"] ||= nil
65
66
  end
66
67
  user
67
68
  end
@@ -19,7 +19,7 @@
19
19
  require_relative "data_already_exists_error"
20
20
  require_relative "data_not_found_error"
21
21
  require_relative "interface_v2"
22
- require "fileutils"
22
+ require "fileutils" unless defined?(FileUtils)
23
23
 
24
24
  module ChefZero
25
25
  module DataStore
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/acl_path"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
  require_relative "../chef_data/acl_path"
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_list_endpoint"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_list_endpoint"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../rest_error_response"
4
4
  require_relative "../chef_data/data_normalizer"
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_list_endpoint"
3
3
  require_relative "data_bag_item_endpoint"
4
4
  require_relative "../rest_error_response"
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "data_bag_item_endpoint"
4
4
  require_relative "../chef_data/data_normalizer"
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_list_endpoint"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "cookbooks_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../rest_error_response"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "cookbooks_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "cookbooks_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "cookbooks_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_list_endpoint"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require "uuidtools"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
 
3
3
  module ChefZero
4
4
  module Endpoints
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "organization_user_base"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require "uuidtools"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require "uuidtools"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../../chef_zero"
3
3
  require_relative "../rest_base"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
  require_relative "../rest_error_response"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,6 +1,6 @@
1
1
  require_relative "../rest_base"
2
2
  require_relative "../rest_error_response"
3
- require "ffi_yajl"
3
+ require "ffi_yajl" unless defined?(FFI_Yajl)
4
4
 
5
5
  module ChefZero
6
6
  module Endpoints
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
  require_relative "../rest_error_response"
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "rest_object_endpoint"
3
3
  require_relative "../chef_data/data_normalizer"
4
4
 
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -1,4 +1,4 @@
1
- require "ffi_yajl"
1
+ require "ffi_yajl" unless defined?(FFI_Yajl)
2
2
  require_relative "../rest_base"
3
3
 
4
4
  module ChefZero
@@ -77,7 +77,7 @@ module ChefZero
77
77
 
78
78
  def get_data(request, rest_path = nil, *options)
79
79
  rest_path ||= request.rest_path
80
- rest_path = rest_path.map { |v| URI.decode(v) }
80
+ rest_path = rest_path.map { |v| self.class.rfc2396_parser.unescape(v) }
81
81
  begin
82
82
  data_store.get(rest_path, request)
83
83
  rescue DataStore::DataNotFoundError
@@ -284,7 +284,7 @@ module ChefZero
284
284
  end
285
285
 
286
286
  def self.build_uri(base_uri, rest_path)
287
- "#{base_uri}/#{rest_path.map { |v| URI.escape(v) }.join("/")}"
287
+ "#{base_uri}/#{rest_path.map { |v| rfc2396_parser.escape(v) }.join("/")}"
288
288
  end
289
289
 
290
290
  def populate_defaults(request, response)
@@ -324,5 +324,9 @@ module ChefZero
324
324
  name.size > 255 ||
325
325
  name =~ /[+ !]/
326
326
  end
327
+
328
+ def self.rfc2396_parser
329
+ @parser ||= URI::RFC2396_Parser.new
330
+ end
327
331
  end
328
332
  end
@@ -1,8 +1,8 @@
1
1
  require "rack/request"
2
+ require "cgi" unless defined?(CGI)
2
3
 
3
4
  module ChefZero
4
5
  class RestRequest
5
-
6
6
  def initialize(env, rest_base_prefix = [])
7
7
  @env = env
8
8
  @rest_base_prefix = rest_base_prefix
@@ -61,7 +61,7 @@ module ChefZero
61
61
  @query_params ||= begin
62
62
  params = Rack::Request.new(env).GET
63
63
  params.keys.each do |key|
64
- params[key] = URI.unescape(params[key])
64
+ params[key] = self.class.rfc2396_parser.unescape(params[key])
65
65
  end
66
66
  params
67
67
  end
@@ -80,5 +80,9 @@ module ChefZero
80
80
  end
81
81
  result
82
82
  end
83
+
84
+ def self.rfc2396_parser
85
+ @parser ||= URI::RFC2396_Parser.new
86
+ end
83
87
  end
84
88
  end
@@ -1,4 +1,4 @@
1
- require "pp"
1
+ require "pp" unless defined?(PP)
2
2
 
3
3
  module ChefZero
4
4
  class RestRouter
@@ -1,4 +1,4 @@
1
- require "tempfile"
1
+ require "tempfile" unless defined?(Tempfile)
2
2
  require_relative "server"
3
3
  require_relative "rest_request"
4
4
 
@@ -16,14 +16,14 @@
16
16
  # limitations under the License.
17
17
  #
18
18
 
19
- require "openssl"
20
- require "open-uri"
21
- require "rubygems"
22
- require "timeout"
23
- require "stringio"
24
-
25
- require "rack"
26
- require "webrick"
19
+ require "openssl" unless defined?(OpenSSL)
20
+ require "open-uri" unless defined?(OpenURI)
21
+ require "rubygems" unless defined?(Gem)
22
+ require "timeout" unless defined?(Timeout)
23
+ require "stringio" unless defined?(StringIO)
24
+
25
+ require "rack" unless defined?(Rack)
26
+ require "webrick" unless defined?(WEBrick)
27
27
  require "webrick/https"
28
28
 
29
29
  require_relative "../chef_zero"
@@ -17,7 +17,7 @@
17
17
  #
18
18
 
19
19
  require "thread"
20
- require "singleton"
20
+ require "singleton" unless defined?(Singleton)
21
21
  require_relative "dist"
22
22
 
23
23
  module ChefZero
@@ -1,3 +1,3 @@
1
1
  module ChefZero
2
- VERSION = "14.0.17".freeze
2
+ VERSION = "15.0.4".freeze
3
3
  end
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
- require "json"
2
+ require "json" unless defined?(JSON)
3
3
  require "bundler"
4
4
  require "bundler/setup"
5
5
 
@@ -93,7 +93,7 @@ begin
93
93
  tmpdir = nil
94
94
  server =
95
95
  if ENV["FILE_STORE"]
96
- require "tmpdir"
96
+ require "tmpdir" unless defined?(Dir.mktmpdir)
97
97
  require "chef_zero/data_store/raw_file_store"
98
98
  tmpdir = Dir.mktmpdir
99
99
  data_store = ChefZero::DataStore::RawFileStore.new(tmpdir, true)
@@ -102,7 +102,7 @@ begin
102
102
  start_chef_server(data_store: data_store)
103
103
 
104
104
  elsif ENV["CHEF_FS"]
105
- require "tmpdir"
105
+ require "tmpdir" unless defined?(Dir.mktmpdir)
106
106
  tmpdir = Dir.mktmpdir
107
107
  start_cheffs_server(tmpdir)
108
108
 
@@ -1,6 +1,6 @@
1
1
  require "chef_zero/server"
2
- require "net/http"
3
- require "uri"
2
+ require "net/http" unless defined?(Net::HTTP)
3
+ require "uri" unless defined?(URI)
4
4
 
5
5
  describe ChefZero::Server do
6
6
  context "with a server bound to port 8889" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-zero
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.0.17
4
+ version: 15.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chef Software, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-30 00:00:00.000000000 Z
11
+ date: 2021-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-log
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: '2.0'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '4.0'
42
+ version: '5.0'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,7 +49,7 @@ dependencies:
49
49
  version: '2.0'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '4.0'
52
+ version: '5.0'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: uuidtools
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -98,6 +98,20 @@ dependencies:
98
98
  - - ">="
99
99
  - !ruby/object:Gem::Version
100
100
  version: 2.0.6
101
+ - !ruby/object:Gem::Dependency
102
+ name: webrick
103
+ requirement: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ type: :runtime
109
+ prerelease: false
110
+ version_requirements: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: '0'
101
115
  description: Self-contained, easy-setup, fast-start in-memory Chef server for testing
102
116
  and solo setup purposes
103
117
  email: oss@chef.io
@@ -238,7 +252,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
238
252
  requirements:
239
253
  - - ">="
240
254
  - !ruby/object:Gem::Version
241
- version: '2.4'
255
+ version: '2.6'
242
256
  required_rubygems_version: !ruby/object:Gem::Requirement
243
257
  requirements:
244
258
  - - ">="