gapic-generator-cloud 0.7.2 → 0.9.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -0
- data/lib/gapic/generator/cloud/version.rb +1 -1
- data/lib/gapic/generators/cloud_generator.rb +5 -0
- data/lib/gapic/generators/cloud_generator_parameters.rb +10 -5
- data/lib/gapic/presenters/cloud_gem_presenter.rb +33 -2
- data/lib/gapic/presenters/wrapper_gem_presenter.rb +17 -6
- data/templates/cloud/gem/authentication.erb +12 -10
- data/templates/cloud/gem/rakefile.erb +7 -7
- data/templates/cloud/gem/readme.erb +5 -5
- data/templates/cloud/gem/repo-metadata.erb +5 -1
- data/templates/cloud/service/client/_credentials.erb +4 -0
- data/templates/cloud/service/rest/client/method/def/_rescue.erb +4 -0
- data/templates/cloud/service/rest/client/method/docs/_error.erb +2 -0
- data/templates/cloud/wrapper_gem/rakefile.erb +7 -7
- metadata +7 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f1eea0abf892b4a55303e5b4a2c34502221507204e9a20f5aa87f7a1e1965eb7
|
4
|
+
data.tar.gz: 1485bdadd75c11011b395cf3b025ef59772ec0e9fe410460dab4ee9d1fcdc14d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f58c889e346aa2ed848d01370f78ec7905342a3e55de9cedbec1f2fe40bc85a847c1782bcba731b537db0c9134ea0826877bf7916bf7c79e80c0e094c5e7ebf4
|
7
|
+
data.tar.gz: cb7fa4c07625fcd9ccdd85e2547abf6b13a2c691bce3dfcda86600c84e96f034c20b82d7790cccc661794e9a14f7fbc6e173b207f22580660990847346d0153f
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,31 @@
|
|
1
1
|
# Release History for gapic-generator-cloud
|
2
2
|
|
3
|
+
### 0.9.1 / 2021-07-07
|
4
|
+
|
5
|
+
* Includes changes from gapic-generator 0.9.1
|
6
|
+
* Clarify some text in generated authentication docs
|
7
|
+
|
8
|
+
### 0.9.0 / 2021-06-29
|
9
|
+
|
10
|
+
* Includes changes from gapic-generator 0.9.0
|
11
|
+
|
12
|
+
### 0.8.0 / 2021-06-16
|
13
|
+
|
14
|
+
* Includes changes from gapic-generator 0.8.0
|
15
|
+
|
16
|
+
### 0.7.5 / 2021-05-18
|
17
|
+
|
18
|
+
* Includes changes from gapic-generator 0.7.5
|
19
|
+
|
20
|
+
### 0.7.4 / 2021-05-07
|
21
|
+
|
22
|
+
* Includes changes from gapic-generator 0.7.4
|
23
|
+
|
24
|
+
### 0.7.3 / 2021-03-24
|
25
|
+
|
26
|
+
* Includes changes from gapic-generator 0.7.3
|
27
|
+
* Gapic metadata file generation is enabled by default for gapic-generator-cloud
|
28
|
+
|
3
29
|
### 0.7.2 / 2021-03-05
|
4
30
|
|
5
31
|
* Disable metrics-related rubocop checks in generated wrapper libraries.
|
@@ -33,6 +33,11 @@ module Gapic
|
|
33
33
|
gem_config = api.configuration[:gem] ||= {}
|
34
34
|
gem_config[:homepage] ||= "https://github.com/googleapis/google-cloud-ruby"
|
35
35
|
|
36
|
+
# The gapic metadata generation is disabled by default as per spec.
|
37
|
+
# However it should be enabled by default for cloud libraries, otherwise we'll have to
|
38
|
+
# enable it in every synth/bazel file.
|
39
|
+
api.configuration[:generate_metadata] = true if api.configuration[:generate_metadata].nil?
|
40
|
+
|
36
41
|
super
|
37
42
|
|
38
43
|
# Configure to use prefer Google Cloud templates
|
@@ -21,9 +21,10 @@ module Gapic
|
|
21
21
|
# Contains the cloud generator's parameters
|
22
22
|
module CloudGeneratorParameters
|
23
23
|
BOOL_PARAMETERS_ALIASES = {
|
24
|
-
"ruby-cloud-free-tier"
|
25
|
-
"ruby-cloud-yard-strict"
|
26
|
-
"ruby-cloud-generic-endpoint"
|
24
|
+
"ruby-cloud-free-tier" => ":gem.:free_tier",
|
25
|
+
"ruby-cloud-yard-strict" => ":gem.:yard_strict",
|
26
|
+
"ruby-cloud-generic-endpoint" => ":gem.:generic_endpoint",
|
27
|
+
"ruby-cloud-generate-metadata" => ":generate_metadata"
|
27
28
|
}.freeze
|
28
29
|
|
29
30
|
STRING_PARAMETERS_ALIASES = {
|
@@ -41,12 +42,16 @@ module Gapic
|
|
41
42
|
"ruby-cloud-api-id" => ":gem.:api_id",
|
42
43
|
"ruby-cloud-api-shortname" => ":gem.:api_shortname",
|
43
44
|
"ruby-cloud-factory-method-suffix" => ":gem.:factory_method_suffix",
|
45
|
+
"ruby-cloud-quick-start-service" => ":gem.:quick_start_service",
|
46
|
+
"ruby-cloud-quick-start-method" => ":gem.:quick_start_method",
|
44
47
|
"ruby-cloud-default-service-host" => ":defaults.:service.:default_host",
|
45
|
-
"ruby-cloud-grpc-service-config" => "grpc_service_config"
|
48
|
+
"ruby-cloud-grpc-service-config" => "grpc_service_config",
|
49
|
+
"ruby-cloud-wrapper-gem-override" => ":overrides.:wrapper_gem_name"
|
46
50
|
}.freeze
|
47
51
|
|
48
52
|
ARRAY_PARAMETERS_ALIASES = {
|
49
|
-
"ruby-cloud-default-oauth-scopes" => ":defaults.:service.:oauth_scopes"
|
53
|
+
"ruby-cloud-default-oauth-scopes" => ":defaults.:service.:oauth_scopes",
|
54
|
+
"ruby-cloud-generate-transports" => ":transports"
|
50
55
|
}.freeze
|
51
56
|
|
52
57
|
MAP_PARAMETERS_ALIASES = {
|
@@ -38,11 +38,20 @@ module Gapic
|
|
38
38
|
deps
|
39
39
|
end
|
40
40
|
|
41
|
+
##
|
42
|
+
# Whether this gem has a wrapper
|
43
|
+
# @return [Boolean]
|
44
|
+
def has_wrapper?
|
45
|
+
!wrapper_name.nil?
|
46
|
+
end
|
47
|
+
|
41
48
|
##
|
42
49
|
# The name of the wrapper gem corresponding to this versioned gem
|
43
|
-
# @return [String]
|
50
|
+
# @return [String, Nil]
|
44
51
|
#
|
45
52
|
def wrapper_name
|
53
|
+
return @api.wrapper_gem_name_override if @api.wrapper_gem_name_override?
|
54
|
+
|
46
55
|
minfo = /^(.+)-v\d\w*$/.match name
|
47
56
|
minfo ? minfo[1] : nil
|
48
57
|
end
|
@@ -60,13 +69,35 @@ module Gapic
|
|
60
69
|
#
|
61
70
|
def description
|
62
71
|
desc = readme_description
|
63
|
-
if
|
72
|
+
if has_wrapper?
|
64
73
|
desc += " Note that #{name} is a version-specific client library." \
|
65
74
|
" For most uses, we recommend installing the main client library" \
|
66
75
|
" #{wrapper_name} instead. See the readme for more details."
|
67
76
|
end
|
68
77
|
desc
|
69
78
|
end
|
79
|
+
|
80
|
+
def cloud_env_prefix
|
81
|
+
env_prefix || "GOOGLE_CLOUD"
|
82
|
+
end
|
83
|
+
|
84
|
+
##
|
85
|
+
# Returns a hash of extra generator arguments to be rendered into the
|
86
|
+
# repo-metadata.json file.
|
87
|
+
#
|
88
|
+
def generator_args_for_metadata
|
89
|
+
result = {}
|
90
|
+
result["ruby-cloud-description"] = description
|
91
|
+
result["ruby-cloud-env-prefix"] = env_prefix if env_prefix
|
92
|
+
result["ruby-cloud-product-url"] = product_documentation_url if product_documentation_url
|
93
|
+
path_overrides = @api.overrides_of(:file_path).map { |k, v| "#{k}=#{v}" }.join ";"
|
94
|
+
result["ruby-cloud-path-override"] = path_overrides unless path_overrides.empty?
|
95
|
+
namespace_overrides = @api.overrides_of(:namespace).map { |k, v| "#{k}=#{v}" }.join ";"
|
96
|
+
result["ruby-cloud-namespace-override"] = namespace_overrides unless namespace_overrides.empty?
|
97
|
+
service_overrides = @api.overrides_of(:service).map { |k, v| "#{k}=#{v}" }.join ";"
|
98
|
+
result["ruby-cloud-service-override"] = service_overrides unless service_overrides.empty?
|
99
|
+
result
|
100
|
+
end
|
70
101
|
end
|
71
102
|
|
72
103
|
def self.cloud_gem_presenter api
|
@@ -106,13 +106,24 @@ module Gapic
|
|
106
106
|
end
|
107
107
|
|
108
108
|
def dependencies
|
109
|
-
|
110
|
-
|
111
|
-
|
109
|
+
@dependencies ||= begin
|
110
|
+
deps = { "google-cloud-core" => "~> 1.6" }
|
111
|
+
version_dependencies.each do |version, requirement|
|
112
|
+
# For pre-release dependencies on versioned clients, support both
|
113
|
+
# 0.x and 1.x versions to ease the transition to 1.0 (GA) releases
|
114
|
+
# for those dependencies. (Note the 0.x->1.0 transition is
|
115
|
+
# generally not breaking.)
|
116
|
+
deps["#{name}-#{version}"] =
|
117
|
+
if requirement.start_with? "0."
|
118
|
+
[">= #{requirement}", "< 2.a"]
|
119
|
+
else
|
120
|
+
"~> #{requirement}"
|
121
|
+
end
|
122
|
+
end
|
123
|
+
extra_deps = gem_config_dependencies
|
124
|
+
deps.merge! extra_deps if extra_deps
|
125
|
+
deps
|
112
126
|
end
|
113
|
-
extra_deps = gem_config :extra_dependencies
|
114
|
-
deps.merge! extra_deps if extra_deps
|
115
|
-
deps
|
116
127
|
end
|
117
128
|
|
118
129
|
def google_cloud_short_name
|
@@ -22,7 +22,7 @@ during development.
|
|
22
22
|
2. Set the [environment variable](#environment-variables).
|
23
23
|
|
24
24
|
```sh
|
25
|
-
export <%= gem.
|
25
|
+
export <%= gem.cloud_env_prefix %>_CREDENTIALS=path/to/keyfile.json
|
26
26
|
```
|
27
27
|
|
28
28
|
3. Initialize the client.
|
@@ -69,24 +69,26 @@ The environment variables that <%= gem.name %>
|
|
69
69
|
checks for credentials are configured on the service Credentials class (such as
|
70
70
|
<%= service.credentials_class_xref %>):
|
71
71
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
72
|
+
<%- if gem.env_prefix -%>
|
73
|
+
* `<%= gem.env_prefix %>_CREDENTIALS` - Path to JSON file, or JSON contents
|
74
|
+
* `<%= gem.env_prefix %>_KEYFILE` - Path to JSON file, or JSON contents
|
75
|
+
<%- end -%>
|
76
|
+
* `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
|
77
|
+
* `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
|
78
|
+
* `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
|
77
79
|
|
78
80
|
```ruby
|
79
81
|
require "<%= gem.entrypoint_require %>"
|
80
82
|
|
81
|
-
ENV["<%= gem.
|
83
|
+
ENV["<%= gem.cloud_env_prefix %>_CREDENTIALS"] = "path/to/keyfile.json"
|
82
84
|
|
83
85
|
client = <%= service.create_client_call %>
|
84
86
|
```
|
85
87
|
|
86
88
|
### Configuration
|
87
89
|
|
88
|
-
The **Credentials JSON** can be configured instead of
|
89
|
-
environment
|
90
|
+
The path to the **Credentials JSON** file can be configured instead of storing
|
91
|
+
it in an environment variable. Either on an individual client initialization:
|
90
92
|
|
91
93
|
```ruby
|
92
94
|
require "<%= gem.entrypoint_require %>"
|
@@ -96,7 +98,7 @@ client = <%= service.create_client_call %> do |config|
|
|
96
98
|
end
|
97
99
|
```
|
98
100
|
|
99
|
-
Or
|
101
|
+
Or globally for all clients:
|
100
102
|
|
101
103
|
```ruby
|
102
104
|
require "<%= gem.entrypoint_require %>"
|
@@ -56,29 +56,29 @@ task :acceptance, :project, :keyfile do |t, args|
|
|
56
56
|
<%- if service && !gem.generic_endpoint? -%>
|
57
57
|
project = args[:project]
|
58
58
|
project ||=
|
59
|
-
ENV["<%= gem.
|
59
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] ||
|
60
60
|
ENV["GCLOUD_TEST_PROJECT"]
|
61
61
|
keyfile = args[:keyfile]
|
62
62
|
keyfile ||=
|
63
|
-
ENV["<%= gem.
|
63
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE"] ||
|
64
64
|
ENV["GCLOUD_TEST_KEYFILE"]
|
65
65
|
if keyfile
|
66
66
|
keyfile = File.read keyfile
|
67
67
|
else
|
68
68
|
keyfile ||=
|
69
|
-
ENV["<%= gem.
|
69
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE_JSON"] ||
|
70
70
|
ENV["GCLOUD_TEST_KEYFILE_JSON"]
|
71
71
|
end
|
72
72
|
if project.nil? || keyfile.nil?
|
73
|
-
fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.
|
73
|
+
fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.cloud_env_prefix %>_TEST_PROJECT=test123 <%= gem.cloud_env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
|
74
74
|
end
|
75
75
|
require "<%= service.credentials_require %>"
|
76
76
|
<%= service.credentials_name_full %>.env_vars.each do |path|
|
77
77
|
ENV[path] = nil
|
78
78
|
end
|
79
|
-
ENV["<%= gem.
|
80
|
-
ENV["<%= gem.
|
81
|
-
ENV["<%= gem.
|
79
|
+
ENV["<%= gem.cloud_env_prefix %>_PROJECT"] = project
|
80
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] = project
|
81
|
+
ENV["<%= gem.cloud_env_prefix %>_KEYFILE_JSON"] = keyfile
|
82
82
|
|
83
83
|
<%- end -%>
|
84
84
|
Rake::Task["acceptance:run"].invoke
|
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
<%= gem.homepage %>
|
8
8
|
|
9
|
-
<%- if gem.
|
9
|
+
<%- if gem.has_wrapper? -%>
|
10
10
|
This gem is a _versioned_ client. It provides basic client classes for a
|
11
11
|
specific version of the <%= gem.title %> API. Most users should consider using
|
12
12
|
the main client gem,
|
@@ -36,7 +36,7 @@ In order to use this library, you first need to go through the following steps:
|
|
36
36
|
<%- if gem.api_id -%>
|
37
37
|
1. [Enable the API.](https://console.cloud.google.com/apis/library/<%= gem.api_id %>)
|
38
38
|
<%- end -%>
|
39
|
-
1.
|
39
|
+
1. [Set up authentication.](AUTHENTICATION.md)
|
40
40
|
|
41
41
|
<%- end -%>
|
42
42
|
## Quick Start
|
@@ -44,12 +44,12 @@ In order to use this library, you first need to go through the following steps:
|
|
44
44
|
<%- if gem.packages? -%>
|
45
45
|
```ruby
|
46
46
|
require "<%= gem.entrypoint_require %>"
|
47
|
-
<%- service = gem.
|
48
|
-
<%- method = service&.
|
47
|
+
<%- service = gem.quick_start_service -%>
|
48
|
+
<%- method = service&.quick_start_method -%>
|
49
49
|
<%- if service && method -%>
|
50
50
|
|
51
51
|
client = <%= service.create_client_call %>
|
52
|
-
request =
|
52
|
+
request = <%= method.request_type %>.new # (request fields as keyword arguments...)
|
53
53
|
response = client.<%= method.name %> request
|
54
54
|
<%- end -%>
|
55
55
|
```
|
@@ -17,5 +17,9 @@
|
|
17
17
|
"product_documentation": "<%= gem.product_documentation_url %>",
|
18
18
|
<%- end -%>
|
19
19
|
"repo": "googleapis/google-cloud-ruby",
|
20
|
-
"requires_billing": <%= !gem.free_tier?
|
20
|
+
"requires_billing": <%= !gem.free_tier? %>,
|
21
|
+
<%- gem.generator_args_for_metadata.each do |key, val| -%>
|
22
|
+
<%= key.inspect %>: <%= val.inspect %>,
|
23
|
+
<%- end -%>
|
24
|
+
"library_type": "GAPIC_AUTO"
|
21
25
|
}
|
@@ -13,13 +13,17 @@ class <%= service.credentials_name %> < ::Google::Auth::Credentials
|
|
13
13
|
]
|
14
14
|
<%- end -%>
|
15
15
|
self.env_vars = [
|
16
|
+
<%- if service.gem.env_prefix -%>
|
16
17
|
"<%= service.gem.env_prefix %>_CREDENTIALS",
|
17
18
|
"<%= service.gem.env_prefix %>_KEYFILE",
|
19
|
+
<%- end -%>
|
18
20
|
"GOOGLE_CLOUD_CREDENTIALS",
|
19
21
|
"GOOGLE_CLOUD_KEYFILE",
|
20
22
|
"GCLOUD_KEYFILE",
|
23
|
+
<%- if service.gem.env_prefix -%>
|
21
24
|
"<%= service.gem.env_prefix %>_CREDENTIALS_JSON",
|
22
25
|
"<%= service.gem.env_prefix %>_KEYFILE_JSON",
|
26
|
+
<%- end -%>
|
23
27
|
"GOOGLE_CLOUD_CREDENTIALS_JSON",
|
24
28
|
"GOOGLE_CLOUD_KEYFILE_JSON",
|
25
29
|
"GCLOUD_KEYFILE_JSON"
|
@@ -56,29 +56,29 @@ desc "Run the <%= gem.name %> acceptance tests."
|
|
56
56
|
task :acceptance, :project, :keyfile do |t, args|
|
57
57
|
project = args[:project]
|
58
58
|
project ||=
|
59
|
-
ENV["<%= gem.
|
59
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] ||
|
60
60
|
ENV["GCLOUD_TEST_PROJECT"]
|
61
61
|
keyfile = args[:keyfile]
|
62
62
|
keyfile ||=
|
63
|
-
ENV["<%= gem.
|
63
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE"] ||
|
64
64
|
ENV["GCLOUD_TEST_KEYFILE"]
|
65
65
|
if keyfile
|
66
66
|
keyfile = File.read keyfile
|
67
67
|
else
|
68
68
|
keyfile ||=
|
69
|
-
ENV["<%= gem.
|
69
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE_JSON"] ||
|
70
70
|
ENV["GCLOUD_TEST_KEYFILE_JSON"]
|
71
71
|
end
|
72
72
|
if project.nil? || keyfile.nil?
|
73
|
-
fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.
|
73
|
+
fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.cloud_env_prefix %>_TEST_PROJECT=test123 <%= gem.cloud_env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
|
74
74
|
end
|
75
75
|
require "<%= service.credentials_require %>"
|
76
76
|
<%= service.credentials_name_full %>.env_vars.each do |path|
|
77
77
|
ENV[path] = nil
|
78
78
|
end
|
79
|
-
ENV["<%= gem.
|
80
|
-
ENV["<%= gem.
|
81
|
-
ENV["<%= gem.
|
79
|
+
ENV["<%= gem.cloud_env_prefix %>_PROJECT"] = project
|
80
|
+
ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] = project
|
81
|
+
ENV["<%= gem.cloud_env_prefix %>_KEYFILE_JSON"] = keyfile
|
82
82
|
|
83
83
|
Rake::Task["acceptance:run"].invoke
|
84
84
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gapic-generator-cloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ernest Landrito
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-
|
13
|
+
date: 2021-07-08 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: actionpack
|
@@ -32,14 +32,14 @@ dependencies:
|
|
32
32
|
requirements:
|
33
33
|
- - '='
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: 0.
|
35
|
+
version: 0.9.1
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - '='
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: 0.
|
42
|
+
version: 0.9.1
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: google-style
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -177,6 +177,8 @@ files:
|
|
177
177
|
- templates/cloud/service/client/_self_configure.erb
|
178
178
|
- templates/cloud/service/client/method/def/_rescue.erb
|
179
179
|
- templates/cloud/service/client/method/docs/_error.erb
|
180
|
+
- templates/cloud/service/rest/client/method/def/_rescue.erb
|
181
|
+
- templates/cloud/service/rest/client/method/docs/_error.erb
|
180
182
|
- templates/cloud/shared/_license.erb
|
181
183
|
- templates/cloud/wrapper_gem/_main.erb
|
182
184
|
- templates/cloud/wrapper_gem/client_test.erb
|
@@ -209,7 +211,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
209
211
|
- !ruby/object:Gem::Version
|
210
212
|
version: '0'
|
211
213
|
requirements: []
|
212
|
-
rubygems_version: 3.
|
214
|
+
rubygems_version: 3.1.6
|
213
215
|
signing_key:
|
214
216
|
specification_version: 4
|
215
217
|
summary: An API Client Generator for Ruby in Ruby!
|