google-cloud-asset 1.0.2 → 1.1.4

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: 8da15ab8be4f6216d68c64f5a3a68c06d4697b423e83bcb9de45f4042a7e2e23
4
- data.tar.gz: b81753e643df39e3631cc037c4772b9a3c58bebeb5dc9fc54634c9cdf9d0ff97
3
+ metadata.gz: 794f8a549e1bd639a3441f0e4277e98357a7586b8955dc307d308f1d4c184dec
4
+ data.tar.gz: 37230be2d2c53909d013bef02c0a364ddb438db00c3a45cfc34693222f234704
5
5
  SHA512:
6
- metadata.gz: 43ce8138ed4cf94514705432c2ccdfd108f708adc4b4dba7df0bb252a94be1d5d948558be39e3ea0f69ece729d8b877fa563b165a1afe9a4a24b03ec3e6b6be8
7
- data.tar.gz: 0262abb2047d3afa99d9eb0fdd51c6ead8ce0748aa53d20c32bfbae5859c821757e233061e21c064ab69f96945f2873e9f3e9b23bb84eef324668bcc3d712d12
6
+ metadata.gz: ea37162ed26467402ec1c1e4f0be2de9855a69fab60b73c209240d3829bcabe17419c0fa0f95dde3ff94765405f2a9d2da27ef5bd390da380d888ef03f93853d
7
+ data.tar.gz: 56e1e3bb40964d3adb43b8ef424551d82648c9ee33d6bc98676a2b6f63a126568681397237e81f503654bd83fc37c5964de37c2e46886bfee6ac10998fffaedd
data/MIGRATING.md CHANGED
@@ -29,6 +29,10 @@ To summarize:
29
29
  resource paths. These paths are now instance methods on the client objects,
30
30
  and are also available in a separate paths module. See
31
31
  [Resource Path Helpers](#resource-path-helpers) for more info.
32
+ * Previously, clients reported RPC errors by raising instances of
33
+ `Google::Gax::GaxError` and its subclasses. Now, RPC exceptions are of type
34
+ `Google::Cloud::Error` and its subclasses. See
35
+ [Handling Errors](#handling-errors) for more info.
32
36
  * Some classes have moved into different namespaces. See
33
37
  [Class Namespaces](#class-namespaces) for more info.
34
38
 
@@ -254,7 +258,7 @@ Finally, in the 1.0 client, you can also use the paths module as a convenience m
254
258
 
255
259
  New:
256
260
  ```
257
- # Bring the session_path method into the current class
261
+ # Bring the path helper methods into the current class
258
262
  include Google::Cloud::Asset::V1::AssetService::Paths
259
263
 
260
264
  def foo
@@ -269,6 +273,48 @@ def foo
269
273
  end
270
274
  ```
271
275
 
276
+ ### Handling Errors
277
+
278
+ The client reports standard
279
+ [gRPC error codes](https://github.com/grpc/grpc/blob/master/doc/statuscodes.md)
280
+ by raising exceptions. In older releases, these exceptions were located in the
281
+ `Google::Gax` namespace and were subclasses of the `Google::Gax::GaxError` base
282
+ exception class, defined in the `google-gax` gem. However, these classes were
283
+ different from the standard exceptions (subclasses of `Google::Cloud::Error`)
284
+ thrown by other client libraries such as `google-cloud-storage`.
285
+
286
+ The 1.0 client library now uses the `Google::Cloud::Error` exception hierarchy
287
+ for consistency across all the Google Cloud client libraries. In general, these
288
+ exceptions have the same name as their counterparts from older releases, but
289
+ are located in the `Google::Cloud` namespace rather than the `Google::Gax`
290
+ namespace.
291
+
292
+ Old:
293
+ ```
294
+ client = Google::Cloud::Asset.new
295
+
296
+ name = "projects/my-project/feeds/my-feed"
297
+
298
+ begin
299
+ client.get_feed name
300
+ rescue Google::Gax::Error => e
301
+ # Handle exceptions that subclass Google::Gax::Error
302
+ end
303
+ ```
304
+
305
+ New:
306
+ ```
307
+ client = Google::Cloud::Asset.asset_service
308
+
309
+ name = "projects/my-project/feeds/my-feed"
310
+
311
+ begin
312
+ client.get_feed name: name
313
+ rescue Google::Cloud::Error => e
314
+ # Handle exceptions that subclass Google::Cloud::Error
315
+ end
316
+ ```
317
+
272
318
  ### Class Namespaces
273
319
 
274
320
  In older releases, the client object was of classes with names like:
data/README.md CHANGED
@@ -6,9 +6,10 @@ A metadata inventory service that allows you to view, monitor, and analyze all y
6
6
 
7
7
  Actual client classes for the various versions of this API are defined in
8
8
  _versioned_ client gems, with names of the form `google-cloud-asset-v*`.
9
- The gem `google-cloud-asset` is a convenience wrapper library that brings the
9
+ The gem `google-cloud-asset` is the main client library that brings the
10
10
  verisoned gems in as dependencies, and provides high-level methods for
11
- constructing clients.
11
+ constructing clients. More information on versioned clients can be found below
12
+ in the section titled *Which client should I use?*.
12
13
 
13
14
  View the [Client Library Documentation](https://googleapis.dev/ruby/google-cloud-asset/latest)
14
15
  for this library, google-cloud-asset, to see the convenience methods for
@@ -18,7 +19,7 @@ client gems:
18
19
  [google-cloud-asset-v1](https://googleapis.dev/ruby/google-cloud-asset-v1/latest),
19
20
  [google-cloud-asset-v1beta1](https://googleapis.dev/ruby/google-cloud-asset-v1beta1/latest).
20
21
 
21
- See also the [Product Documentation](https://cloud.google.com/resource-manager)
22
+ See also the [Product Documentation](https://cloud.google.com/asset-inventory/)
22
23
  for more usage information.
23
24
 
24
25
  ## Quick Start
@@ -78,3 +79,61 @@ in security maintenance, and not end of life. Currently, this means Ruby 2.4
78
79
  and later. Older versions of Ruby _may_ still work, but are unsupported and not
79
80
  recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
80
81
  about the Ruby support schedule.
82
+
83
+ ## Which client should I use?
84
+
85
+ Most modern Ruby client libraries for Google APIs come in two flavors: the main
86
+ client library with a name such as `google-cloud-asset`,
87
+ and lower-level _versioned_ client libraries with names such as
88
+ `google-cloud-asset-v1`.
89
+ _In most cases, you should install the main client._
90
+
91
+ ### What's the difference between the main client and a versioned client?
92
+
93
+ A _versioned client_ provides a basic set of data types and client classes for
94
+ a _single version_ of a specific service. (That is, for a service with multiple
95
+ versions, there might be a separate versioned client for each service version.)
96
+ Most versioned clients are written and maintained by a code generator.
97
+
98
+ The _main client_ is designed to provide you with the _recommended_ client
99
+ interfaces for the service. There will be only one main client for any given
100
+ service, even a service with multiple versions. The main client includes
101
+ factory methods for constructing the client objects we recommend for most
102
+ users. In some cases, those will be classes provided by an underlying versioned
103
+ client; in other cases, they will be handwritten higher-level client objects
104
+ with additional capabilities, convenience methods, or best practices built in.
105
+ Generally, the main client will default to a recommended service version,
106
+ although in some cases you can override this if you need to talk to a specific
107
+ service version.
108
+
109
+ ### Why would I want to use the main client?
110
+
111
+ We recommend that most users install the main client gem for a service. You can
112
+ identify this gem as the one _without_ a version in its name, e.g.
113
+ `google-cloud-asset`.
114
+ The main client is recommended because it will embody the best practices for
115
+ accessing the service, and may also provide more convenient interfaces or
116
+ tighter integration into frameworks and third-party libraries. In addition, the
117
+ documentation and samples published by Google will generally demonstrate use of
118
+ the main client.
119
+
120
+ ### Why would I want to use a versioned client?
121
+
122
+ You can use a versioned client if you are content with a possibly lower-level
123
+ class interface, you explicitly want to avoid features provided by the main
124
+ client, or you want to access a specific service version not be covered by the
125
+ main client. You can identify versioned client gems because the service version
126
+ is part of the name, e.g. `google-cloud-asset-v1`.
127
+
128
+ ### What about the google-apis-<name> clients?
129
+
130
+ Client library gems with names that begin with `google-apis-` are based on an
131
+ older code generation technology. They talk to a REST/JSON backend (whereas
132
+ most modern clients talk to a [gRPC](https://grpc.io/) backend) and they may
133
+ not offer the same performance, features, and ease of use provided by more
134
+ modern clients.
135
+
136
+ The `google-apis-` clients have wide coverage across Google services, so you
137
+ might need to use one if there is no modern client available for the service.
138
+ However, if a modern client is available, we generally recommend it over the
139
+ older `google-apis-` clients.
@@ -29,13 +29,16 @@ require "google/cloud/config"
29
29
 
30
30
  # Set the default configuration
31
31
  ::Google::Cloud.configure.add_config! :asset do |config|
32
- config.add_field! :credentials, nil, match: [::String, ::Hash, ::Google::Auth::Credentials]
33
- config.add_field! :lib_name, nil, match: ::String
34
- config.add_field! :lib_version, nil, match: ::String
35
- config.add_field! :interceptors, nil, match: ::Array
36
- config.add_field! :timeout, nil, match: ::Numeric
37
- config.add_field! :metadata, nil, match: ::Hash
38
- config.add_field! :retry_policy, nil, match: [::Hash, ::Proc]
32
+ config.add_field! :endpoint, "cloudasset.googleapis.com", match: ::String
33
+ config.add_field! :credentials, nil, match: [::String, ::Hash, ::Google::Auth::Credentials]
34
+ config.add_field! :scope, nil, match: [::Array, ::String]
35
+ config.add_field! :lib_name, nil, match: ::String
36
+ config.add_field! :lib_version, nil, match: ::String
37
+ config.add_field! :interceptors, nil, match: ::Array
38
+ config.add_field! :timeout, nil, match: ::Numeric
39
+ config.add_field! :metadata, nil, match: ::Hash
40
+ config.add_field! :retry_policy, nil, match: [::Hash, ::Proc]
41
+ config.add_field! :quota_project, nil, match: ::String
39
42
  end
40
43
 
41
44
  module Google
@@ -85,8 +88,8 @@ module Google
85
88
  # The library version as recorded in instrumentation and logging.
86
89
  # * `interceptors` (*type:* `Array<GRPC::ClientInterceptor>`) -
87
90
  # An array of interceptors that are run before calls are executed.
88
- # * `timeout` (*type:* `Integer`) -
89
- # Default timeout in milliseconds.
91
+ # * `timeout` (*type:* `Numeric`) -
92
+ # Default timeout in seconds.
90
93
  # * `metadata` (*type:* `Hash{Symbol=>String}`) -
91
94
  # Additional gRPC headers to be sent with the call.
92
95
  # * `retry_policy` (*type:* `Hash`) -
@@ -107,3 +110,6 @@ module Google
107
110
  end
108
111
  end
109
112
  end
113
+
114
+ helper_path = ::File.join __dir__, "asset", "helpers.rb"
115
+ require "google/cloud/asset/helpers" if ::File.file? helper_path
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Asset
19
- VERSION = "1.0.2".freeze
19
+ VERSION = "1.1.4".freeze
20
20
  end
21
21
  end
22
22
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-asset
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-05 00:00:00.000000000 Z
11
+ date: 2021-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: google-cloud-core
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1.5'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '1.5'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: google-cloud-asset-v1
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -53,19 +39,19 @@ dependencies:
53
39
  - !ruby/object:Gem::Version
54
40
  version: '0.0'
55
41
  - !ruby/object:Gem::Dependency
56
- name: autotest-suffix
42
+ name: google-cloud-core
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '1.1'
62
- type: :development
47
+ version: '1.5'
48
+ type: :runtime
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
52
  - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '1.1'
54
+ version: '1.5'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: google-style
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -94,20 +80,6 @@ dependencies:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
82
  version: '5.14'
97
- - !ruby/object:Gem::Dependency
98
- name: minitest-autotest
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '1.0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '1.0'
111
83
  - !ruby/object:Gem::Dependency
112
84
  name: minitest-focus
113
85
  requirement: !ruby/object:Gem::Requirement
@@ -226,7 +198,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
198
  - !ruby/object:Gem::Version
227
199
  version: '0'
228
200
  requirements: []
229
- rubygems_version: 3.0.6
201
+ rubygems_version: 3.2.6
230
202
  signing_key:
231
203
  specification_version: 4
232
204
  summary: API Client library for the Cloud Asset API