google-cloud-pubsub 1.0.2 → 2.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +16 -54
- data/CHANGELOG.md +464 -0
- data/CONTRIBUTING.md +328 -116
- data/EMULATOR.md +1 -1
- data/LOGGING.md +94 -2
- data/OVERVIEW.md +121 -68
- data/TROUBLESHOOTING.md +2 -8
- data/lib/google/cloud/pubsub/acknowledge_result.rb +79 -0
- data/lib/google/cloud/pubsub/async_publisher/batch.rb +319 -0
- data/lib/google/cloud/pubsub/async_publisher.rb +231 -156
- data/lib/google/cloud/pubsub/batch_publisher.rb +60 -30
- data/lib/google/cloud/pubsub/convert.rb +33 -7
- data/lib/google/cloud/pubsub/credentials.rb +2 -2
- data/lib/google/cloud/pubsub/errors.rb +93 -0
- data/lib/google/cloud/pubsub/flow_controller.rb +137 -0
- data/lib/google/cloud/pubsub/message.rb +45 -4
- data/lib/google/cloud/pubsub/policy.rb +3 -2
- data/lib/google/cloud/pubsub/project.rb +316 -49
- data/lib/google/cloud/pubsub/publish_result.rb +6 -1
- data/lib/google/cloud/pubsub/received_message.rb +171 -10
- data/lib/google/cloud/pubsub/retry_policy.rb +88 -0
- data/lib/google/cloud/pubsub/schema/list.rb +180 -0
- data/lib/google/cloud/pubsub/schema.rb +310 -0
- data/lib/google/cloud/pubsub/service.rb +285 -269
- data/lib/google/cloud/pubsub/snapshot/list.rb +4 -6
- data/lib/google/cloud/pubsub/snapshot.rb +5 -2
- data/lib/google/cloud/pubsub/subscriber/inventory.rb +69 -32
- data/lib/google/cloud/pubsub/subscriber/sequencer.rb +115 -0
- data/lib/google/cloud/pubsub/subscriber/stream.rb +108 -49
- data/lib/google/cloud/pubsub/subscriber/timed_unary_buffer.rb +191 -30
- data/lib/google/cloud/pubsub/subscriber.rb +155 -45
- data/lib/google/cloud/pubsub/subscription/list.rb +4 -6
- data/lib/google/cloud/pubsub/subscription/push_config.rb +55 -31
- data/lib/google/cloud/pubsub/subscription.rb +561 -77
- data/lib/google/cloud/pubsub/topic/list.rb +4 -6
- data/lib/google/cloud/pubsub/topic.rb +372 -52
- data/lib/google/cloud/pubsub/version.rb +1 -1
- data/lib/google/cloud/pubsub.rb +35 -46
- data/lib/google-cloud-pubsub.rb +21 -27
- metadata +26 -189
- data/lib/google/cloud/pubsub/v1/credentials.rb +0 -41
- data/lib/google/cloud/pubsub/v1/doc/google/iam/v1/iam_policy.rb +0 -21
- data/lib/google/cloud/pubsub/v1/doc/google/iam/v1/options.rb +0 -21
- data/lib/google/cloud/pubsub/v1/doc/google/iam/v1/policy.rb +0 -21
- data/lib/google/cloud/pubsub/v1/doc/google/protobuf/duration.rb +0 -91
- data/lib/google/cloud/pubsub/v1/doc/google/protobuf/empty.rb +0 -29
- data/lib/google/cloud/pubsub/v1/doc/google/protobuf/field_mask.rb +0 -222
- data/lib/google/cloud/pubsub/v1/doc/google/protobuf/timestamp.rb +0 -113
- data/lib/google/cloud/pubsub/v1/doc/google/pubsub/v1/pubsub.rb +0 -744
- data/lib/google/cloud/pubsub/v1/doc/google/type/expr.rb +0 -19
- data/lib/google/cloud/pubsub/v1/publisher_client.rb +0 -786
- data/lib/google/cloud/pubsub/v1/publisher_client_config.json +0 -105
- data/lib/google/cloud/pubsub/v1/subscriber_client.rb +0 -1385
- data/lib/google/cloud/pubsub/v1/subscriber_client_config.json +0 -138
- data/lib/google/cloud/pubsub/v1.rb +0 -17
- data/lib/google/pubsub/v1/pubsub_pb.rb +0 -249
- data/lib/google/pubsub/v1/pubsub_services_pb.rb +0 -211
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db206c3eab0b2c876feeb00d0e0d8de12b6c6ac60f55153c61f06973f627ac34
|
4
|
+
data.tar.gz: bed374d87a423c101703159453d1ef6724062b2c6bee7ab58276b715b95d094d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0dbec66b7af6c93d4493ddbfc8b918a661dac41aa5bfb94330169652e2da6e62682c4b22bc969f061e111950babbf7aa786bcf29305aa91f7a85438389adb87d
|
7
|
+
data.tar.gz: 0c8b9aba5a2c7ed59ed2cda8696db84e253e074468dc48a337a5992e4a695e3c40c87f023872db49565eaac4cc00fa5b0ec55db90839fd5a877fab8a38f334ce
|
data/AUTHENTICATION.md
CHANGED
@@ -55,32 +55,10 @@ code.
|
|
55
55
|
|
56
56
|
### Google Cloud Platform environments
|
57
57
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
should be written as if already authenticated.
|
62
|
-
GCE instance][gce-how-to], you add the correct scopes for the APIs you want to
|
63
|
-
access. For example:
|
64
|
-
|
65
|
-
* **All APIs**
|
66
|
-
* `https://www.googleapis.com/auth/cloud-platform`
|
67
|
-
* `https://www.googleapis.com/auth/cloud-platform.read-only`
|
68
|
-
* **BigQuery**
|
69
|
-
* `https://www.googleapis.com/auth/bigquery`
|
70
|
-
* `https://www.googleapis.com/auth/bigquery.insertdata`
|
71
|
-
* **Compute Engine**
|
72
|
-
* `https://www.googleapis.com/auth/compute`
|
73
|
-
* **Datastore**
|
74
|
-
* `https://www.googleapis.com/auth/datastore`
|
75
|
-
* `https://www.googleapis.com/auth/userinfo.email`
|
76
|
-
* **DNS**
|
77
|
-
* `https://www.googleapis.com/auth/ndev.clouddns.readwrite`
|
78
|
-
* **Pub/Sub**
|
79
|
-
* `https://www.googleapis.com/auth/pubsub`
|
80
|
-
* **Storage**
|
81
|
-
* `https://www.googleapis.com/auth/devstorage.full_control`
|
82
|
-
* `https://www.googleapis.com/auth/devstorage.read_only`
|
83
|
-
* `https://www.googleapis.com/auth/devstorage.read_write`
|
58
|
+
When running on Google Cloud Platform (GCP), including Google Compute Engine (GCE),
|
59
|
+
Google Kubernetes Engine (GKE), Google App Engine (GAE), Google Cloud Functions
|
60
|
+
(GCF) and Cloud Run, the **Project ID** and **Credentials** and are discovered
|
61
|
+
automatically. Code should be written as if already authenticated.
|
84
62
|
|
85
63
|
### Environment Variables
|
86
64
|
|
@@ -98,7 +76,8 @@ The environment variables that google-cloud-pubsub checks for project ID are:
|
|
98
76
|
1. `PUBSUB_PROJECT`
|
99
77
|
2. `GOOGLE_CLOUD_PROJECT`
|
100
78
|
|
101
|
-
The environment variables that google-cloud-pubsub checks for credentials
|
79
|
+
The environment variables that google-cloud-pubsub checks for credentials
|
80
|
+
are configured on {Google::Cloud::PubSub::Credentials}:
|
102
81
|
|
103
82
|
1. `PUBSUB_CREDENTIALS` - Path to JSON file, or JSON contents
|
104
83
|
2. `PUBSUB_KEYFILE` - Path to JSON file, or JSON contents
|
@@ -117,7 +96,8 @@ client = Google::Cloud::PubSub.new
|
|
117
96
|
|
118
97
|
### Configuration
|
119
98
|
|
120
|
-
The **Project ID** and **Credentials JSON** can be configured
|
99
|
+
The **Project ID** and the path to the **Credentials JSON** file can be configured
|
100
|
+
instead of placing them in environment variables or providing them as arguments.
|
121
101
|
|
122
102
|
```ruby
|
123
103
|
require "google/cloud/pubsub"
|
@@ -145,15 +125,6 @@ To configure your system for this, simply:
|
|
145
125
|
**NOTE:** This is _not_ recommended for running in production. The Cloud SDK
|
146
126
|
*should* only be used during development.
|
147
127
|
|
148
|
-
[gce-how-to]: https://cloud.google.com/compute/docs/authentication#using
|
149
|
-
[dev-console]: https://console.cloud.google.com/project
|
150
|
-
|
151
|
-
[enable-apis]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/enable-apis.png
|
152
|
-
|
153
|
-
[create-new-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account.png
|
154
|
-
[create-new-service-account-existing-keys]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account-existing-keys.png
|
155
|
-
[reuse-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/reuse-service-account.png
|
156
|
-
|
157
128
|
## Creating a Service Account
|
158
129
|
|
159
130
|
Google Cloud requires a **Project ID** and **Service Account Credentials** to
|
@@ -164,31 +135,22 @@ If you are not running this client within [Google Cloud Platform
|
|
164
135
|
environments](#google-cloud-platform-environments), you need a Google
|
165
136
|
Developers service account.
|
166
137
|
|
167
|
-
1. Visit the [Google
|
138
|
+
1. Visit the [Google Cloud Console](https://console.cloud.google.com/project).
|
168
139
|
1. Create a new project or click on an existing project.
|
169
|
-
1. Activate the
|
140
|
+
1. Activate the menu in the upper left and select **APIs & Services**. From
|
170
141
|
here, you will enable the APIs that your application requires.
|
171
142
|
|
172
|
-
![Enable the APIs that your application requires][enable-apis]
|
173
|
-
|
174
143
|
*Note: You may need to enable billing in order to use these services.*
|
175
144
|
|
176
145
|
1. Select **Credentials** from the side navigation.
|
177
146
|
|
178
|
-
|
179
|
-
|
180
|
-
![Create a new service account][create-new-service-account]
|
181
|
-
|
182
|
-
![Create a new service account With Existing Keys][create-new-service-account-existing-keys]
|
183
|
-
|
184
|
-
Find the "Add credentials" drop down and select "Service account" to be
|
185
|
-
guided through downloading a new JSON key file.
|
186
|
-
|
187
|
-
If you want to re-use an existing service account, you can easily generate a
|
188
|
-
new key file. Just select the account you wish to re-use, and click "Generate
|
189
|
-
new JSON key":
|
147
|
+
Find the "Create credentials" drop down near the top of the page, and select
|
148
|
+
"Service account" to be guided through downloading a new JSON key file.
|
190
149
|
|
191
|
-
|
150
|
+
If you want to re-use an existing service account, you can easily generate
|
151
|
+
a new key file. Just select the account you wish to re-use click the pencil
|
152
|
+
tool on the right side to edit the service account, select the **Keys** tab,
|
153
|
+
and then select **Add Key**.
|
192
154
|
|
193
155
|
The key file you download will be used by this library to authenticate API
|
194
156
|
requests and should be stored in a secure location.
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,469 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
+
### 2.19.0 (2024-07-09)
|
4
|
+
|
5
|
+
#### Features
|
6
|
+
|
7
|
+
* compatibility with GA releases of underlying versioned clients ([#26361](https://github.com/googleapis/google-cloud-ruby/issues/26361))
|
8
|
+
|
9
|
+
### 2.18.1 (2024-06-05)
|
10
|
+
|
11
|
+
#### Bug Fixes
|
12
|
+
|
13
|
+
* Added bigdecimal to the gem dependencies ([#26012](https://github.com/googleapis/google-cloud-ruby/issues/26012))
|
14
|
+
|
15
|
+
### 2.18.0 (2024-03-26)
|
16
|
+
|
17
|
+
#### Features
|
18
|
+
|
19
|
+
* support ingestion_data_source_settings for create_topic ([#25418](https://github.com/googleapis/google-cloud-ruby/issues/25418))
|
20
|
+
|
21
|
+
### 2.17.0 (2024-03-07)
|
22
|
+
|
23
|
+
#### Features
|
24
|
+
|
25
|
+
* Update minimum supported Ruby version to 2.7 ([#25298](https://github.com/googleapis/google-cloud-ruby/issues/25298))
|
26
|
+
|
27
|
+
### 2.16.0 (2024-01-25)
|
28
|
+
|
29
|
+
#### Features
|
30
|
+
|
31
|
+
* Support for universe_domain ([#24437](https://github.com/googleapis/google-cloud-ruby/issues/24437))
|
32
|
+
|
33
|
+
### 2.15.5 (2023-11-06)
|
34
|
+
|
35
|
+
#### Bug Fixes
|
36
|
+
|
37
|
+
* set x-goog-request-params for streaming pull request ([#23508](https://github.com/googleapis/google-cloud-ruby/issues/23508))
|
38
|
+
|
39
|
+
### 2.15.4 (2023-05-19)
|
40
|
+
|
41
|
+
#### Documentation
|
42
|
+
|
43
|
+
* Fixed broken links in authentication documentation ([#21619](https://github.com/googleapis/google-cloud-ruby/issues/21619))
|
44
|
+
|
45
|
+
### 2.15.4 (2023-05-18)
|
46
|
+
|
47
|
+
#### Documentation
|
48
|
+
|
49
|
+
* Fixed broken links in authentication documentation ([#21619](https://github.com/googleapis/google-cloud-ruby/issues/21619))
|
50
|
+
|
51
|
+
### 2.15.3 (2023-04-19)
|
52
|
+
|
53
|
+
#### Bug Fixes
|
54
|
+
|
55
|
+
* wait for successful receipt modack when exactly once delivery enabled ([#21431](https://github.com/googleapis/google-cloud-ruby/issues/21431))
|
56
|
+
|
57
|
+
### 2.15.2 (2023-03-19)
|
58
|
+
|
59
|
+
#### Bug Fixes
|
60
|
+
|
61
|
+
* make batch handle publish interval ([#20913](https://github.com/googleapis/google-cloud-ruby/issues/20913))
|
62
|
+
|
63
|
+
### 2.15.1 (2023-02-23)
|
64
|
+
|
65
|
+
#### Documentation
|
66
|
+
|
67
|
+
* Correct default value for streams ([#20485](https://github.com/googleapis/google-cloud-ruby/issues/20485))
|
68
|
+
|
69
|
+
### 2.15.0 (2023-01-22)
|
70
|
+
|
71
|
+
#### Features
|
72
|
+
|
73
|
+
* support publisher compression ([#19910](https://github.com/googleapis/google-cloud-ruby/issues/19910))
|
74
|
+
|
75
|
+
### 2.14.0 (2023-01-12)
|
76
|
+
|
77
|
+
#### Features
|
78
|
+
|
79
|
+
* Added support for schema evolution, including managing schema revisions, and schema commit and rollback ([#19981](https://github.com/googleapis/google-cloud-ruby/issues/19981))
|
80
|
+
|
81
|
+
### 2.13.0 (2022-10-18)
|
82
|
+
|
83
|
+
#### Features
|
84
|
+
|
85
|
+
* Added support for bigquery subscription ([#19221](https://github.com/googleapis/google-cloud-ruby/issues/19221))
|
86
|
+
|
87
|
+
### 2.12.1 (2022-08-21)
|
88
|
+
|
89
|
+
#### Bug Fixes
|
90
|
+
|
91
|
+
* update non EOS ack to return Success always ([#19023](https://github.com/googleapis/google-cloud-ruby/issues/19023))
|
92
|
+
|
93
|
+
### 2.12.0 (2022-08-09)
|
94
|
+
|
95
|
+
#### Features
|
96
|
+
|
97
|
+
* bump the minimum required version of pubsub v1 ([#18983](https://github.com/googleapis/google-cloud-ruby/issues/18983))
|
98
|
+
#### Bug Fixes
|
99
|
+
|
100
|
+
* honour async options of topic ([#18953](https://github.com/googleapis/google-cloud-ruby/issues/18953))
|
101
|
+
|
102
|
+
### 2.11.0 (2022-08-01)
|
103
|
+
|
104
|
+
#### Features
|
105
|
+
|
106
|
+
* create exactly once delivery enabled subscription ([#18824](https://github.com/googleapis/google-cloud-ruby/issues/18824))
|
107
|
+
* Let user register callback and get acknowledgement result ([#18702](https://github.com/googleapis/google-cloud-ruby/issues/18702))
|
108
|
+
* retry transient failures in ack/modack in timed unary buffer ([#18395](https://github.com/googleapis/google-cloud-ruby/issues/18395))
|
109
|
+
|
110
|
+
### 2.10.0 (2022-06-14)
|
111
|
+
|
112
|
+
#### Features
|
113
|
+
|
114
|
+
* introduce min_duration_per_lease_extension
|
115
|
+
|
116
|
+
### 2.9.2 (2022-04-28)
|
117
|
+
|
118
|
+
#### Bug Fixes
|
119
|
+
|
120
|
+
* ignore grpc errors on ack/modack
|
121
|
+
|
122
|
+
### 2.9.1 / 2022-01-11
|
123
|
+
|
124
|
+
#### Documentation
|
125
|
+
|
126
|
+
* Update contributing docs
|
127
|
+
* Add section on gRPC interceptors to the logging docs
|
128
|
+
|
129
|
+
### 2.9.0 / 2021-10-28
|
130
|
+
|
131
|
+
#### Features
|
132
|
+
|
133
|
+
* Expand timeout type from Integer to Numeric
|
134
|
+
* feat: Expand timeout type from Integer to Numeric. This is backwards-compatible.
|
135
|
+
* Change timeout from Integer to Numeric in Google::Cloud.pubsub
|
136
|
+
* Change timeout from Integer to Numeric in Google::Cloud#pubsub
|
137
|
+
* Change timeout from Integer to Numeric in Google::Cloud::PubSub.configure
|
138
|
+
* Change timeout from Integer to Numeric in Google::Cloud::PubSub.new
|
139
|
+
* fix: Propagate timeout to client RPC configs.
|
140
|
+
|
141
|
+
#### Documentation
|
142
|
+
|
143
|
+
* Add documentation for quota_project Configuration attribute
|
144
|
+
* Fix documentation for PubSub.configure
|
145
|
+
* Remove retries property that does not exist in code.
|
146
|
+
|
147
|
+
### 2.8.1 / 2021-09-22
|
148
|
+
|
149
|
+
#### Bug Fixes
|
150
|
+
|
151
|
+
* Change IAM and Schema client metadata hash keys to symbols
|
152
|
+
|
153
|
+
#### Documentation
|
154
|
+
|
155
|
+
* Fix typo in Emulator guide links
|
156
|
+
|
157
|
+
### 2.8.0 / 2021-08-30
|
158
|
+
|
159
|
+
#### Features
|
160
|
+
|
161
|
+
* Add Pub/Sub topic retention fields
|
162
|
+
* Add retention to Project#create_topic
|
163
|
+
* Add Topic#retention
|
164
|
+
* Add Topic#retention=
|
165
|
+
* Add Subscription#topic_retention
|
166
|
+
|
167
|
+
### 2.7.1 / 2021-07-08
|
168
|
+
|
169
|
+
#### Documentation
|
170
|
+
|
171
|
+
* Update AUTHENTICATION.md in handwritten packages
|
172
|
+
|
173
|
+
### 2.7.0 / 2021-06-15
|
174
|
+
|
175
|
+
#### Features
|
176
|
+
|
177
|
+
* Add Publisher Flow Control
|
178
|
+
* Add flow_control to async options in Project#create_topic and Project#topic
|
179
|
+
* Add FlowControlLimitError
|
180
|
+
|
181
|
+
#### Bug Fixes
|
182
|
+
|
183
|
+
* Fix Project#schema and #schemas to return full resource
|
184
|
+
* Include schema definition in default return values.
|
185
|
+
* Fix Schema#definition to return nil instead of empty string when not present.
|
186
|
+
|
187
|
+
### 2.6.1 / 2021-04-28
|
188
|
+
|
189
|
+
#### Bug Fixes
|
190
|
+
|
191
|
+
* Add final flush of pending requests to Subscriber#wait!
|
192
|
+
* fix(pubsub): Add final flush of pending requests to Subscriber#wait!
|
193
|
+
|
194
|
+
### 2.6.0 / 2021-04-19
|
195
|
+
|
196
|
+
#### Features
|
197
|
+
|
198
|
+
* Add ordering_key to Topic#publish
|
199
|
+
* Add ordering_key to BatchPublisher#publish
|
200
|
+
|
201
|
+
#### Documentation
|
202
|
+
|
203
|
+
* The immediate: false option is recommended to avoid adverse impacts on the performance of pull operations ([#11153](https://www.github.com/googleapis/google-cloud-ruby/issues/11153))
|
204
|
+
* Update Subscription#pull docs and samples to recommend immediate: false
|
205
|
+
|
206
|
+
### 2.5.0 / 2021-04-01
|
207
|
+
|
208
|
+
#### Features
|
209
|
+
|
210
|
+
* Add Schema support
|
211
|
+
* Add Schema
|
212
|
+
* Add Project#create_schema
|
213
|
+
* Add Project#schema
|
214
|
+
* Add Project#schemas (Schema::List)
|
215
|
+
* Add Project#valid_schema?
|
216
|
+
* Add schema options to Project#create_topic
|
217
|
+
* Add Topic#schema_name
|
218
|
+
* Add Topic#message_encoding
|
219
|
+
* Add Topic#message_encoding_binary?
|
220
|
+
* Add Topic#message_encoding_json?
|
221
|
+
|
222
|
+
### 2.4.0 / 2021-03-10
|
223
|
+
|
224
|
+
#### Features
|
225
|
+
|
226
|
+
* Drop support for Ruby 2.4 and add support for Ruby 3.0
|
227
|
+
|
228
|
+
### 2.3.2 / 2021-02-08
|
229
|
+
|
230
|
+
#### Bug Fixes
|
231
|
+
|
232
|
+
* Fix project option in Project#topic and Project#subscription
|
233
|
+
* Ensure that project option is used when skip_lookup is false.
|
234
|
+
* Improve documentation of topic_name, subscription_name and snapshot_name.
|
235
|
+
|
236
|
+
### 2.3.1 / 2021-01-13
|
237
|
+
|
238
|
+
#### Bug Fixes
|
239
|
+
|
240
|
+
* Update Subscription#retry_policy=
|
241
|
+
* Remove conditional RPC to fetch full resource before update.
|
242
|
+
|
243
|
+
### 2.3.0 / 2020-11-18
|
244
|
+
|
245
|
+
#### Features
|
246
|
+
|
247
|
+
* Add inventory.use_legacy_flow_control to listen options
|
248
|
+
* Add inventory.use_legacy_flow_control to Subscription#listen options
|
249
|
+
* Add Subscriber#use_legacy_flow_control?
|
250
|
+
|
251
|
+
#### Documentation
|
252
|
+
|
253
|
+
* Remove EXPERIMENTAL label from RetryPolicy docs
|
254
|
+
|
255
|
+
### 2.2.0 / 2020-11-11
|
256
|
+
|
257
|
+
#### Features
|
258
|
+
|
259
|
+
* Add Subscription#remove_dead_letter_policy
|
260
|
+
|
261
|
+
### 2.1.1 / 2020-10-26
|
262
|
+
|
263
|
+
#### Documentation
|
264
|
+
|
265
|
+
* Update deprecated attribute name limit to max_outstanding_messages
|
266
|
+
|
267
|
+
### 2.1.0 / 2020-09-17
|
268
|
+
|
269
|
+
#### Features
|
270
|
+
|
271
|
+
* quota_project can be set via library configuration ([#7630](https://www.github.com/googleapis/google-cloud-ruby/issues/7630))
|
272
|
+
* Add push_config (PushConfig) param to Topic#subscribe
|
273
|
+
* Make PushConfig constructor public.
|
274
|
+
|
275
|
+
#### Documentation
|
276
|
+
|
277
|
+
* Update sample code for on_error, at_exit, and concurrency tuning
|
278
|
+
|
279
|
+
### 2.0.0 / 2020-08-06
|
280
|
+
|
281
|
+
This is a major update that removes the "low-level" client interface code, and
|
282
|
+
instead adds the new `google-cloud-pubsub-v1` gem as a dependency.
|
283
|
+
The new dependency is a rewritten low-level client, produced by a next-
|
284
|
+
generation client code generator, with improved performance and stability.
|
285
|
+
|
286
|
+
This change should have no effect on the high-level interface that most users
|
287
|
+
will use. The one exception is that the (mostly undocumented) `client_config`
|
288
|
+
argument, for adjusting low-level parameters such as RPC retry settings on
|
289
|
+
client objects, has been removed. If you need to adjust these parameters, use
|
290
|
+
the configuration interface in `google-cloud-pubsub-v1`.
|
291
|
+
|
292
|
+
Substantial changes have been made in the low-level interfaces, however. If you
|
293
|
+
are using the low-level classes under the `Google::Cloud::PubSub::V1` module,
|
294
|
+
please review the docs for the new `google-cloud-pubsub-v1` gem. In
|
295
|
+
particular:
|
296
|
+
|
297
|
+
* Some classes have been renamed, notably the client classes themselves.
|
298
|
+
* The client constructor takes a configuration block instead of configuration
|
299
|
+
keyword arguments.
|
300
|
+
* All RPC method arguments are now keyword arguments.
|
301
|
+
|
302
|
+
### 1.10.0 / 2020-07-23
|
303
|
+
|
304
|
+
#### Features
|
305
|
+
|
306
|
+
* Add Subscription#detach and #detached?
|
307
|
+
|
308
|
+
### 1.9.0 / 2020-07-21
|
309
|
+
|
310
|
+
#### Features
|
311
|
+
|
312
|
+
* Add support for server-side flow control
|
313
|
+
|
314
|
+
### 1.8.0 / 2020-06-29
|
315
|
+
|
316
|
+
#### Features
|
317
|
+
|
318
|
+
* Add Subscription#filter
|
319
|
+
|
320
|
+
### 1.7.1 / 2020-05-28
|
321
|
+
|
322
|
+
#### Documentation
|
323
|
+
|
324
|
+
* Fix a few broken links
|
325
|
+
|
326
|
+
### 1.7.0 / 2020-05-21
|
327
|
+
|
328
|
+
#### Features
|
329
|
+
|
330
|
+
* Add Retry Policy support
|
331
|
+
* Add RetryPolicy
|
332
|
+
* Add retry_policy param to Topic#subscribe
|
333
|
+
* Add Subscription#retry_policy
|
334
|
+
* Add Subscription#retry_policy=
|
335
|
+
* Set client-scoped UUID in initial StreamingPullRequest#client_id
|
336
|
+
|
337
|
+
### 1.6.1 / 2020-05-06
|
338
|
+
|
339
|
+
#### Documentation
|
340
|
+
|
341
|
+
* Fix example in Emulator documentation
|
342
|
+
* Remove experimental notice from ReceivedMessage#delivery_attempt
|
343
|
+
* Wrap example URLs in backticks
|
344
|
+
|
345
|
+
### 1.6.0 / 2020-04-06
|
346
|
+
|
347
|
+
#### Features
|
348
|
+
|
349
|
+
* Add list_topic_snapshots and get_snapshot
|
350
|
+
* Add PublisherClient#list_topic_snapshots
|
351
|
+
* Add SubscriberClient#get_snapshot
|
352
|
+
|
353
|
+
#### Documentation
|
354
|
+
|
355
|
+
* Remove a spurious link in the low-level interface documentation.
|
356
|
+
|
357
|
+
### 1.5.0 / 2020-03-25
|
358
|
+
|
359
|
+
#### Features
|
360
|
+
|
361
|
+
* Add max_duration_per_lease_extension to Subscription#listen and Subscriber
|
362
|
+
|
363
|
+
### 1.4.0 / 2020-03-11
|
364
|
+
|
365
|
+
#### Features
|
366
|
+
|
367
|
+
* Rename Subscriber inventory methods and params
|
368
|
+
* Rename Subscriber#inventory_limit to #max_outstanding_messages
|
369
|
+
* Rename Subscriber#bytesize to #max_outstanding_bytes
|
370
|
+
* Rename Subscriber#extension to #max_total_lease_duration
|
371
|
+
* Add deprecated aliases for the original methods
|
372
|
+
* Support separate project setting for quota/billing
|
373
|
+
|
374
|
+
#### Documentation
|
375
|
+
|
376
|
+
* Update documentation in the lower-level client
|
377
|
+
|
378
|
+
### 1.3.1 / 2020-02-18
|
379
|
+
|
380
|
+
#### Bug Fixes
|
381
|
+
|
382
|
+
* Move Thread.new to end of AsyncPublisher#initialize
|
383
|
+
|
384
|
+
### 1.3.0 / 2020-02-10
|
385
|
+
|
386
|
+
#### Features
|
387
|
+
|
388
|
+
* Add support for Dead Letter Topics
|
389
|
+
* Add `dead_letter_topic` and `dead_letter_max_delivery_attempts` to `Topic#subscribe`
|
390
|
+
* Add `Subscription#dead_letter_topic` and `Subscription#dead_letter_topic=`
|
391
|
+
* Add `Subscription#dead_letter_max_delivery_attempts` and `Subscription#dead_letter_max_delivery_attempts=`
|
392
|
+
* Add `ReceivedMessage#delivery_attempt`
|
393
|
+
|
394
|
+
### 1.2.2 / 2020-02-04
|
395
|
+
|
396
|
+
#### Performance Improvements
|
397
|
+
|
398
|
+
* Add StreamingPullRequest#client_id to the lower-level API
|
399
|
+
|
400
|
+
### 1.2.1 / 2020-01-23
|
401
|
+
|
402
|
+
#### Documentation
|
403
|
+
|
404
|
+
* Update copyright year
|
405
|
+
|
406
|
+
### 1.2.0 / 2020-01-09
|
407
|
+
|
408
|
+
#### Features
|
409
|
+
|
410
|
+
* Add Subscriber inventory settings
|
411
|
+
* Add the following settings to Subscriber:
|
412
|
+
* Subscriber#inventory_limit
|
413
|
+
* Subscriber#inventory_bytesize
|
414
|
+
* Subscriber#extension
|
415
|
+
* Allow Subscription#listen inventory argument to be a hash.
|
416
|
+
* Update AsyncPublisher configuration defaults
|
417
|
+
* Update AsyncPublisher defaults to the following:
|
418
|
+
* max_bytes to 1MB, was 10MB.
|
419
|
+
* max_messages to 100, was 1,000.
|
420
|
+
* interval to 10 milliseconds, was 250 milliseconds.
|
421
|
+
* publish thread count to 2, was 4
|
422
|
+
* callback thread count to 4, was 8.
|
423
|
+
|
424
|
+
### 1.1.3 / 2019-12-18
|
425
|
+
|
426
|
+
#### Bug Fixes
|
427
|
+
|
428
|
+
* Fix MonitorMixin usage on Ruby 2.7
|
429
|
+
* Ruby 2.7 will error if new_cond is called before super().
|
430
|
+
* Make the call to super() be the first call in initialize
|
431
|
+
|
432
|
+
### 1.1.2 / 2019-11-19
|
433
|
+
|
434
|
+
#### Performance Improvements
|
435
|
+
|
436
|
+
* Update network configuration
|
437
|
+
|
438
|
+
### 1.1.1 / 2019-11-06
|
439
|
+
|
440
|
+
#### Bug Fixes
|
441
|
+
|
442
|
+
* Update minimum runtime dependencies
|
443
|
+
|
444
|
+
#### Documentation
|
445
|
+
|
446
|
+
* Update the list of GCP environments for automatic authentication
|
447
|
+
|
448
|
+
### 1.1.0 / 2019-10-23
|
449
|
+
|
450
|
+
#### Features
|
451
|
+
|
452
|
+
* Add support for Ordering Keys
|
453
|
+
* Google Cloud Pub/Sub ordering keys provide the ability to ensure related
|
454
|
+
messages are sent to subscribers in the order in which they were published.
|
455
|
+
The service guarantees that, for a given ordering key and publisher, messages
|
456
|
+
are sent to subscribers in the order in which they were published.
|
457
|
+
* Note: At the time of this release, ordering keys are not yet publicly enabled
|
458
|
+
and requires special project enablements.
|
459
|
+
* Add Google::Cloud::PubSub::Topic#enable_message_ordering! method.
|
460
|
+
* Add Google::Cloud::PubSub::Topic#message_ordering? method.
|
461
|
+
* Add ordering_key argument to Google::Cloud::PubSub::Topic#publish_async method.
|
462
|
+
* Add Google::Cloud::PubSub::Topic#resume_publish method.
|
463
|
+
* Add message_ordering argument to Google::Cloud::PubSub::Topic#subscribe method.
|
464
|
+
* Add Google::Cloud::PubSub::Subscription#message_ordering? method.
|
465
|
+
* Update Ruby dependency to minimum of 2.4.
|
466
|
+
|
3
467
|
### 1.0.2 / 2019-10-10
|
4
468
|
|
5
469
|
#### Bug Fixes
|