Changelog
2.31.0 (2025-06-26)
Features
Bug Fixes
2.30.0 (2025-06-07)
Features
2.29.1 (2025-05-23)
Bug Fixes
Documentation
sample: Add samples for topic and subscription SMTs (#1386) (4d072e0)
Update documentation for JavaScriptUDF to indicate that the
message_id
metadata field is optional instead of required (#1380) (be90054)
2.29.0 (2025-03-19)
Features
Add REST Interceptors which support reading metadata (4363179)
Add support for opt-in debug logging (4363179)
Deprecate
enabled
field for message transforms and adddisabled
field (4363179)
Bug Fixes
Allow logs to propagate upstream for caplog testing (#1374) (fa39b0e)
Fix typing issue with gRPC metadata when key ends in -bin (4363179)
Documentation
A comment for field
code
in message.google.pubsub.v1.JavaScriptUDF
is changed (4363179)Add samples and test for ingestion from Kafka sources (#1354) (820f986)
Deprecate
enabled
field for message transforms and adddisabled
field (4363179)samples: Increase example max_bytes setting for cloud storage subscriptions to encourage more performant subscribe (#1324) (cb760a7)
2.28.0 (2025-01-30)
Features
Bug Fixes
2.27.3 (2025-01-24)
Bug Fixes
2.27.2 (2025-01-06)
Bug Fixes
2.27.1 (2024-11-08)
Bug Fixes
2.27.0 (2024-11-02)
Features
Bug Fixes
2.26.1 (2024-10-10)
Documentation
2.26.0 (2024-10-09)
Features
2.25.2 (2024-09-30)
Documentation
2.25.1 (2024-09-29)
Bug Fixes
2.25.0 (2024-09-28)
Features
2.24.0 (2024-09-24)
Features
Bug Fixes
2.23.1 (2024-09-09)
Bug Fixes
2.23.0 (2024-07-29)
Features
2.22.0 (2024-07-06)
Features
Add service_account_email for export subscriptions (ec0cc34)
Add use_topic_schema for Cloud Storage Subscriptions (ec0cc34)
2.21.5 (2024-06-20)
Bug Fixes
- Allow Protobuf 5.x (a369f04)
2.21.4 (2024-06-18)
Documentation
2.21.3 (2024-06-10)
Bug Fixes
Race condition where future callbacks invoked before client is in paused state (#1145) (d12bac6)
Suppress warnings caused during pytest runs (#1189) (cd51149)
Typecheck errors in samples/snippets/subscriber.py (#1186) (3698450)
2.21.2 (2024-05-30)
Bug Fixes
2.21.1 (2024-04-04)
Bug Fixes
2.21.0 (2024-03-26)
Features
2.20.3 (2024-03-21)
Documentation
2.20.2 (2024-03-15)
Documentation
samples: Add Create Topic with Kinesis IngestionDataSourceSettings Sample (#1120) (83dc9ff)
samples: Update Topic with Kinesis Ingestion Settings (#1123) (e0e2d83)
2.20.1 (2024-03-06)
Bug Fixes
2.20.0 (2024-03-05)
Features
Documentation
- samples: Correct type and description of
timeout
parameter in subscriber quickstart (#1051) (141a473)
2.19.8 (2024-03-05)
Bug Fixes
2.19.7 (2024-02-24)
Bug Fixes
2.19.6 (2024-02-23)
Bug Fixes
2.19.5 (2024-02-22)
Bug Fixes
2.19.4 (2024-02-09)
Bug Fixes
2.19.3 (2024-02-08)
Bug Fixes
2.19.2 (2024-02-08)
Bug Fixes
- Unit test failures in https://github.com/googleapis/python-pubsu… (#1074) (3c6d128)
2.19.1 (2024-02-02)
Documentation
- samples: Swap writer and reader schema to correct places (265f410)
2.19.0 (2023-12-10)
Features
Add
use_table_schema
field to BigQueryConfig (#1035) (ac6d912)Introduce compatibility with native namespace packages (#1024) (0432420)
Bug Fixes
2.18.4 (2023-09-09)
Documentation
2.18.3 (2023-08-18)
Bug Fixes
2.18.2 (2023-08-07)
Bug Fixes
2.18.1 (2023-07-26)
Documentation
2.18.0 (2023-07-12)
Features
Bug Fixes
Documentation
2.17.1 (2023-05-23)
Documentation
2.17.0 (2023-05-12)
Features
2.16.1 (2023-05-05)
Bug Fixes
Documentation
2.16.0 (2023-04-06)
Features
Documentation
2.15.2 (2023-03-20)
Documentation
2.15.1 (2023-03-14)
Bug Fixes
2.15.0 (2023-02-22)
Features
Add google.api.method.signature to update methods (3dd43d6)
Add temporary_failed_ack_ids to ModifyAckDeadlineConfirmation (3dd43d6)
Bug Fixes
Add service_yaml_parameters to py_gapic_library BUILD.bazel targets (3dd43d6)
Documentation
Clarify BigQueryConfig PERMISSION_DENIED state (3dd43d6)
Clarify subscription description (3dd43d6)
Fix Pull description (3dd43d6)
Fix PullResponse description (3dd43d6)
Replacing HTML code with Markdown (3dd43d6)
Update Pub/Sub topic retention limit from 7 days to 31 days (3dd43d6)
2.14.1 (2023-02-08)
Bug Fixes
- Add context manager return types (4f690b9)
Documentation
Add documentation for enums (4f690b9)
Mark revision_id in CommitSchemaRevisionRequest as deprecated (#861) (09b846d)
2.14.0 (2023-01-18)
Features
2.13.12 (2023-01-06)
Bug Fixes
deps: Require google-api-core >=1.34.0, >=2.11.0 (060f00b)
Drop usage of pkg_resources (060f00b)
Fix timeout default values (060f00b)
Documentation
- samples: Snippetgen should call await on the operation coroutine before calling result (060f00b)
2.13.11 (2022-11-11)
Bug Fixes
2.13.10 (2022-10-14)
Bug Fixes
Miscellaneous Chores
- release as 2.13.10 (34f022b)
2.13.8 (2022-10-03)
Bug Fixes
2.13.7 (2022-09-22)
Bug Fixes
2.13.6 (2022-08-11)
Bug Fixes
deps: require proto-plus >= 1.22.0 (260bd18)
set stream_ack_deadline to max_duration_per_lease_extension or 60 s, set ack_deadline to min_duration_per_lease_extension or 10 s (#760) (4444129)
Update stream_ack_deadline with ack_deadline (#763) (e600ad8)
2.13.5 (2022-08-10)
Documentation
2.13.4 (2022-07-15)
Bug Fixes
2.13.3 (2022-07-13)
Bug Fixes
2.13.2 (2022-07-08)
Bug Fixes
2.13.1 (2022-07-07)
Bug Fixes
2.13.0 (2022-06-06)
Features
Bug Fixes
Documentation
2.12.1 (2022-05-11)
Bug Fixes
Documentation
2.12.0 (2022-04-06)
Features
Bug Fixes
process ErrorInfo / GRPC errors for ack/modack only when exactly-once delivery is enabled (#626) (cc1953b)
2.11.0 (2022-03-09)
Features
retry temporary GRPC statuses for ack/modack/nack when exactly-once delivery is enabled (#607) (a91bed8)
return singleton success future for exactly-once methods in Message (#608) (253ced2)
Bug Fixes
deps: require google-api-core>=1.31.5, >=2.3.2 (#600) (1608b7f)
deps: require proto-plus>=1.15.0 (1608b7f)
2.10.0 (2022-03-04)
Features
Bug Fixes
refactor client classes for safer type checking (#552) (7f705be)
resolve DuplicateCredentialArgs error when using credentials_file (8ca8cf2)
Samples
samples: create subscription with filtering enabled #580
samples: handle empty response in sync pull samples #586
samples: sample for receiving messages with exactly-once delivery enabled #588
samples: create subscription with exactly once delivery #592 (https://github.com/googleapis/python-pubsub/pull/588
Documentation
add autogenerated code snippets (aa3754c)
Docs have inconsistent default values for max_latency and max_bytes (#572) (d136dfd)
2.9.0 (2021-11-10)
Features
Bug Fixes
add ‘dict’ annotation type to ‘request’ (b72522a)
deps: drop packaging dependency (290b9c5)
deps: require google-api-core >= 1.28.0 (290b9c5)
improper types in pagers generation (2ad639d)
Documentation
2.8.0 (2021-09-02)
Features
Documentation
2.7.1 (2021-08-13)
Bug Fixes
2.7.0 (2021-07-24)
Features
Add
always_use_jwt_access
. (1f30ef7)Add method signature for
Subscriber.Pull
without the deprecatedreturn_immediately
field. (1f30ef7)Add subscription properties to streaming pull response. (1f30ef7)
Support self-signed JWT flow for service accounts. (1f30ef7)
Bug Fixes
Dependencies
2.6.1
07-05-2021 10:33 PDT
Dependencies
Documentation
- Adjust samples for publishing with error handler and flow control. (#433)
Internal / Testing Changes
2.6.0 (2021-06-17)
Features
Bug Fixes
ACK deadline set for received messages can be too low (#416) (e907f6e)
threads can skip the line in publisher flow controller (#422) (ef89f55)
Documentation
2.5.0 (2021-05-18)
Features
Bug Fixes
2.4.2
05-06-2021 23:50 PDT
Implementation Changes
Fix memory leak when publishing messages. (#406)
Do not crash if distribution cannot be found when extracting semantic version. (#393)
Emit a warning if
return_immediately
is set with synchronous pull. (#355)Regenerate GAPIC layer with latest changes, use explicit default timeouts. (#345)
Documentation
Add additional info on
use_legacy_flow_control
parameter. (#301)Remove EXPERIMENTAL tag for ordering keys in
publisher/client.py
. (#324)Fix
create_topic()
call in README. (#360)Generate PyPI token in secrets manager, fix spacing in docs (via synth). (#384)
Add
SECURITY.md
. (#401)
Internal / Testing Changes
Require 100% unit test coverage (via synth). (#359)
Bump test coverage to 100%. (#364)
Fix streaming pull close unit test flakiness. (#361)
Pass explicit credentials in all unit tests creating clients. (#369)
Fix flaky test for blocking pull shutdown. (#378)
Add missing licence header. (#377)
2.4.1 (2021-03-30)
Bug Fixes
Move
await_msg_callbacks
flag tosubscribe()
method, fixing a regression in Pub/Sub Lite client. (#320) (d40d027)SSL error when using the client with the emulator. (#297) (83db672)
Implementation Changes
(samples) Bump the max_time to 10 minutes for a flaky test. (#311) (e2678d4), closes #291
(samples) Mark delivery attempts test as flaky. (#326) (5a97ef1)
(samples) Mitigate flakiness in subscriber_tests. (#304) (271a385)
(samples) Retry
InternalServerError
in dead letter policy test. (#329) (34c9b11), closes #321
Documentation
Remove EXPERIMENTAL tag for ordering keys in
types.py
. (#323) (659cd7a)Remove EXPERIMENTAL tag from
Schema
service (via synth). (#307) (ad85202)
2.4.0
02-22-2021 05:02 PST
Implementation Changes
New Features
- Add graceful streaming pull shutdown. (#292)
Documentation
- Update samples with using the subscriber client as a context manager. (#254)
2.3.0 (2021-02-08)
Features
Bug Fixes
client version missing from the user agent header (#275) (b112f4f)
Don’t open the google.cloud package by adding pubsub.py (#269) (542d79d)
Modify synth.py to update grpc transport options (#266) (41dcd30)
2.2.0 (2020-11-16)
Features
Add dead lettering max delivery attempts argument (#236) (7687ae5)
Enable server side flow control by default with the option to turn it off (#231) (94d738c)
Bug Fixes
Documentation
2.1.0
09-21-2020 02:19 PDT
Implementation Changes
New Features
- Regenerate the client lib to pick new mtls env (via synth). (#197)
Documentation
Internal / Testing Changes
- Update CODEOWNERS. (#193)
2.0.0
09-11-2020 05:03 PDT
Implementation Changes
- Transition the library to microgenerator. (#158) This is a breaking change that introduces several method signature changes and drops support for Python 2.7 and 3.5.
Documentation
Add samples for using ordering keys. (#156)
Remove extra white space in delivery attempt sample. (#159)
Internal / Testing Changes
- Fix flaky sequencer unit tests. (#187)
1.7.0 (2020-07-13)
This is the last release that supports Python 2.7 and 3.5.
New Features
Dependencies
Documentation
Add pubsub/cloud-client samples from the common samples repo (with commit history). (#151)
Add flow control section to publish overview. (#129) (acc19eb)
Add a link to Pub/Sub filtering language public documentation to
pubsub.proto
. (#121) (8802d81)
1.6.1 (2020-06-30)
Documentation
1.6.0 (2020-06-09)
Features
Bug Fixes
Documentation
Clarify that Schedulers shouldn’t be used with multiple SubscriberClients (#100) (cf9e87c)
Fix update subscription/snapshot/topic samples (#113) (e62c38b)
Internal / Testing Changes
Re-generated service implementaton using synth: removed experimental notes from the RetryPolicy and filtering features in anticipation of GA, added DetachSubscription (experimental) (#114) (0132a46)
Incorporate will_accept() checks into publish() (#108) (6c7677e)
1.5.0 (2020-05-04)
Features
add methods for listing snapshots (via synth) (#66) (4ce898e)
send client id with StreamingPullRequest (#58) (9f8acfa), closes #62
1.4.3 (2020-04-16)
Bug Fixes
1.4.2 (2020-03-25)
Bug Fixes
update generated retry timings for publish and pull rpcs via synth (#43) (4f7fe85)
use client_options.api_endpoint parameter instead of ignoring it (#59) (56b8d7b), closes #61
1.4.1 (2020-03-23)
Bug Fixes
1.4.0 (2020-03-06)
Features
1.3.1 (2020-02-28)
Bug Fixes
1.3.0 (2020-02-20)
Features
1.2.0 (2020-02-05)
Features
pubsub: add delivery attempt property to message object received by user code (#10205) (a0937c1)
add
StreamingPullRequest.client_id
field (via synth) (199d56a)
Bug Fixes
pubsub: handle None in on response callback (#9982) (6596c4b)
replace unsafe six.PY3 with PY2 for better future compatibility with Python 4 (#10081) (975c1ac)
1.1.0
12-09-2019 18:51 PST
Implementation Changes
Update client configurations (via synth). (#9784)
Include request overhead when computing publish batch size overflow. (#9911)
Split large (mod)ACK requests into smaller ones. (#9594)
Fix messages delivered multiple times despite a long ACK deadline. (#9525)
Update batching and flow control parameters to be same as the other client libraries. (#9597)
Add
StreamingPullManager._should_terminate
. (#9335)
New Features
- Add stop method. (#9365)
Dependencies
- Add Python 2 sunset banner to documentation. (#9036)
Documentation
- Change spacing in docs templates (via synth). (#9759)
Internal / Testing Changes
1.0.2
09-30-2019 11:57 PDT
Implementation Changes
- Streaming pull shouldn’t need
subscriptions.get
permission (#9360).
1.0.1
09-27-2019 07:01 PDT
Implementation Changes
- Set default stream ACK deadline to subscriptions’. (#9268)
Documentation
Fix intersphinx reference to requests. (#9294)
Link to correct TimeoutError in futures docs. (#9216)
Internal / Testing Changes
- Adjust messaging RPC timeout settings (via synth). #9279
1.0.0
08-29-2019 09:27 PDT
Implementation Changes
Add ‘ReceivedMessage.delivery_attempt’ field (via synth). (#9098)
Remove send/recv msg size limit, update docstrings (via synth). (#8964)
Documentation
Update docstrings for client kwargs and fix return types uris (#9037)
Remove CI for gh-pages, use googleapis.dev for api_core refs. (#9085)
Remove compatability badges from READMEs. (#9035)
Internal / Testing Changes
- Add dead-letter-policy field in preparation for its implementation (via synth) (#9078)
0.45.0
07-31-2019 02:03 PDT
Implementation Changes
- Remove deprecated methods and settings (#8836)
Documentation
0.44.0
07-29-2019 04:28 PDT
Implementation Changes
- PubSub: Deprecate several FlowControl settings and things in Message class (#8796)
Documentation
- Pub/Sub: document regional endpoint (