gapic-generator-cloud 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c751d7b581655b797aa620a09b6954f79d741075d443ece0938512e6a816a5db
4
- data.tar.gz: dce39d1de70b9426ae427d076bce1150f362c466a49439ca99a73df54176fbf9
3
+ metadata.gz: ac86ed068a512a634033c1c1d15336857f9d3cc4fdc3818e37d339dc80df7814
4
+ data.tar.gz: 19553dab1dc41089de60dd030760e362d14335575283f8d3229acfeb018c4615
5
5
  SHA512:
6
- metadata.gz: 4025efcd6b63862374feaf1b7fc49363cd8d1532d75a27f9246e383018d9cb62936ee6b0b1cb2c57f661a7746b44ecdd6d37189115cf3cb4406d21fd12834577
7
- data.tar.gz: d9f83817a4799b72f615c2c34f47cbe2575aa97059ee9634e33a32880d6e3a0b9788d785515393598c116757044d17d2f5e6c0ce748ba1d16cfcf8f7bd643ef2
6
+ metadata.gz: 014b1551a395518c0da9182cda3d183040af720bb47079c68325597bb44baa251a634c697feacd19fdf20ec53430837a6efbd36bc75f8d8214d44ba4b4a0c7fb
7
+ data.tar.gz: 398bc287670e347e178c6e7e84c604866162e1e69733cdc72311ef98832c9a783b8956a14f9695d5a178117dbfb01d260eb5e45d2717fa2997d9233fa6b13724
data/CHANGELOG.md CHANGED
@@ -1,5 +1,30 @@
1
1
  # Release History for gapic-generator-cloud
2
2
 
3
+ ### 0.8.0 / 2021-06-16
4
+
5
+ * Includes changes from gapic-generator 0.8.0
6
+
7
+ ### 0.7.5 / 2021-05-18
8
+
9
+ * Includes changes from gapic-generator 0.7.5
10
+
11
+ ### 0.7.4 / 2021-05-07
12
+
13
+ * Includes changes from gapic-generator 0.7.4
14
+
15
+ ### 0.7.3 / 2021-03-24
16
+
17
+ * Includes changes from gapic-generator 0.7.3
18
+ * Gapic metadata file generation is enabled by default for gapic-generator-cloud
19
+
20
+ ### 0.7.2 / 2021-03-05
21
+
22
+ * Disable metrics-related rubocop checks in generated wrapper libraries.
23
+
24
+ ### 0.7.1 / 2021-02-27
25
+
26
+ * Update generated readmes to reflect that Ruby 2.5 or later is now required.
27
+
3
28
  ### 0.7.0 / 2021-02-27
4
29
 
5
30
  * Includes changes from gapic-generator 0.7.0, notably dropping Ruby 2.4 support.
@@ -18,7 +18,7 @@
18
18
  module Gapic
19
19
  module Generator
20
20
  module Cloud
21
- VERSION = "0.7.0"
21
+ VERSION = "0.8.0"
22
22
  end
23
23
  end
24
24
  end
@@ -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" => ":gem.:free_tier",
25
- "ruby-cloud-yard-strict" => ":gem.:yard_strict",
26
- "ruby-cloud-generic-endpoint" => ":gem.: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 = {
@@ -42,11 +43,13 @@ module Gapic
42
43
  "ruby-cloud-api-shortname" => ":gem.:api_shortname",
43
44
  "ruby-cloud-factory-method-suffix" => ":gem.:factory_method_suffix",
44
45
  "ruby-cloud-default-service-host" => ":defaults.:service.:default_host",
45
- "ruby-cloud-grpc-service-config" => "grpc_service_config"
46
+ "ruby-cloud-grpc-service-config" => "grpc_service_config",
47
+ "ruby-cloud-wrapper-gem-override" => ":overrides.:wrapper_gem_name"
46
48
  }.freeze
47
49
 
48
50
  ARRAY_PARAMETERS_ALIASES = {
49
- "ruby-cloud-default-oauth-scopes" => ":defaults.:service.:oauth_scopes"
51
+ "ruby-cloud-default-oauth-scopes" => ":defaults.:service.:oauth_scopes",
52
+ "ruby-cloud-generate-transports" => ":transports"
50
53
  }.freeze
51
54
 
52
55
  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,29 @@ module Gapic
60
69
  #
61
70
  def description
62
71
  desc = readme_description
63
- if wrapper_name
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
+ ##
81
+ # Returns a hash of extra generator arguments to be rendered into the
82
+ # repo-metadata.json file.
83
+ #
84
+ def generator_args_for_metadata
85
+ result = {}
86
+ result["ruby-cloud-description"] = description
87
+ result["ruby-cloud-env-prefix"] = env_prefix
88
+ result["ruby-cloud-product-url"] = product_documentation_url if product_documentation_url
89
+ path_overrides = @api.overrides_of(:file_path).map { |k, v| "#{k}=#{v}" }.join ";"
90
+ result["ruby-cloud-path-override"] = path_overrides unless path_overrides.empty?
91
+ namespace_overrides = @api.overrides_of(:namespace).map { |k, v| "#{k}=#{v}" }.join ";"
92
+ result["ruby-cloud-namespace-override"] = namespace_overrides unless namespace_overrides.empty?
93
+ result
94
+ end
70
95
  end
71
96
 
72
97
  def self.cloud_gem_presenter api
@@ -106,13 +106,15 @@ module Gapic
106
106
  end
107
107
 
108
108
  def dependencies
109
- deps = { "google-cloud-core" => "~> 1.5" }
110
- version_dependencies.each do |version, requirement|
111
- deps["#{name}-#{version}"] = "~> #{requirement}"
109
+ @dependencies ||= begin
110
+ deps = { "google-cloud-core" => "~> 1.5" }
111
+ version_dependencies.each do |version, requirement|
112
+ deps["#{name}-#{version}"] = "~> #{requirement}"
113
+ end
114
+ extra_deps = gem_config_dependencies
115
+ deps.merge! extra_deps if extra_deps
116
+ deps
112
117
  end
113
- extra_deps = gem_config :extra_dependencies
114
- deps.merge! extra_deps if extra_deps
115
- deps
116
118
  end
117
119
 
118
120
  def google_cloud_short_name
@@ -6,7 +6,7 @@
6
6
 
7
7
  <%= gem.homepage %>
8
8
 
9
- <%- if gem.wrapper_name -%>
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. {file:AUTHENTICATION.md Set up authentication.}
39
+ 1. [Set up authentication.](AUTHENTICATION.md)
40
40
 
41
41
  <%- end -%>
42
42
  ## Quick Start
@@ -93,11 +93,11 @@ end
93
93
 
94
94
  ## Supported Ruby Versions
95
95
 
96
- This library is supported on Ruby 2.4+.
96
+ This library is supported on Ruby 2.5+.
97
97
 
98
98
  Google provides official support for Ruby versions that are actively supported
99
99
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
100
- in security maintenance, and not end of life. Currently, this means Ruby 2.4
100
+ in security maintenance, and not end of life. Currently, this means Ruby 2.5
101
101
  and later. Older versions of Ruby _may_ still work, but are unsupported and not
102
102
  recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
103
103
  about the Ruby support schedule.
@@ -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
  }
@@ -0,0 +1,4 @@
1
+ <%- assert_locals method -%>
2
+ rescue ::Faraday::Error => e
3
+ gapic_error = ::Gapic::Rest::Error.wrap_faraday_error e
4
+ raise ::Google::Cloud::Error.from_error(gapic_error)
@@ -0,0 +1,2 @@
1
+ <%- assert_locals method -%>
2
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
@@ -88,11 +88,11 @@ end
88
88
 
89
89
  ## Supported Ruby Versions
90
90
 
91
- This library is supported on Ruby 2.4+.
91
+ This library is supported on Ruby 2.5+.
92
92
 
93
93
  Google provides official support for Ruby versions that are actively supported
94
94
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
95
- in security maintenance, and not end of life. Currently, this means Ruby 2.4
95
+ in security maintenance, and not end of life. Currently, this means Ruby 2.5
96
96
  and later. Older versions of Ruby _may_ still work, but are unsupported and not
97
97
  recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
98
98
  about the Ruby support schedule.
@@ -13,10 +13,23 @@ Bundler/OrderedGems:
13
13
  Enabled: false
14
14
  Documentation:
15
15
  Enabled: false
16
-
16
+ Layout/LineLength:
17
+ Enabled: false
17
18
  Metrics/BlockLength:
18
19
  Exclude:
19
20
  - "samples/**/acceptance/*.rb"
21
+ Metrics/AbcSize:
22
+ Enabled: false
23
+ Metrics/ClassLength:
24
+ Enabled: false
25
+ Metrics/CyclomaticComplexity:
26
+ Enabled: false
27
+ Metrics/MethodLength:
28
+ Enabled: false
29
+ Metrics/ModuleLength:
30
+ Enabled: false
31
+ Metrics/PerceivedComplexity:
32
+ Enabled: false
20
33
 
21
34
  Naming/FileName:
22
35
  Exclude:
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.7.0
4
+ version: 0.8.0
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-02-27 00:00:00.000000000 Z
13
+ date: 2021-06-16 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.7.0
35
+ version: 0.8.0
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.7.0
42
+ version: 0.8.0
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.2.11
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!