google-cloud-pubsub 2.27.0__tar.gz → 2.27.2__tar.gz

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.
Files changed (121) hide show
  1. {google_cloud_pubsub-2.27.0/google_cloud_pubsub.egg-info → google_cloud_pubsub-2.27.2}/PKG-INFO +2 -1
  2. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_batch/thread.py +5 -1
  3. {google_cloud_pubsub-2.27.0/google/pubsub_v1 → google_cloud_pubsub-2.27.2/google/pubsub}/gapic_version.py +1 -1
  4. {google_cloud_pubsub-2.27.0/google/pubsub → google_cloud_pubsub-2.27.2/google/pubsub_v1}/gapic_version.py +1 -1
  5. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2/google_cloud_pubsub.egg-info}/PKG-INFO +2 -1
  6. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google_cloud_pubsub.egg-info/requires.txt +3 -0
  7. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/setup.py +1 -0
  8. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/system.py +2 -2
  9. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/batch/test_thread.py +10 -3
  10. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/test_publisher_client.py +7 -0
  11. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/LICENSE +0 -0
  12. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/MANIFEST.in +0 -0
  13. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/README.rst +0 -0
  14. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub/__init__.py +0 -0
  15. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/__init__.py +0 -0
  16. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/exceptions.py +0 -0
  17. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/futures.py +0 -0
  18. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/open_telemetry/__init__.py +0 -0
  19. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/open_telemetry/context_propagation.py +0 -0
  20. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/open_telemetry/publish_message_wrapper.py +0 -0
  21. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/open_telemetry/subscribe_opentelemetry.py +0 -0
  22. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/proto/pubsub.proto +0 -0
  23. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/proto/schema.proto +0 -0
  24. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/__init__.py +0 -0
  25. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_batch/__init__.py +0 -0
  26. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_batch/base.py +0 -0
  27. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_sequencer/__init__.py +0 -0
  28. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_sequencer/base.py +0 -0
  29. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_sequencer/ordered_sequencer.py +0 -0
  30. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/_sequencer/unordered_sequencer.py +0 -0
  31. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/client.py +0 -0
  32. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/exceptions.py +0 -0
  33. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/flow_controller.py +0 -0
  34. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/publisher/futures.py +0 -0
  35. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/__init__.py +0 -0
  36. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/__init__.py +0 -0
  37. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/dispatcher.py +0 -0
  38. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/heartbeater.py +0 -0
  39. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/helper_threads.py +0 -0
  40. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/histogram.py +0 -0
  41. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/leaser.py +0 -0
  42. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/messages_on_hold.py +0 -0
  43. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/requests.py +0 -0
  44. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/_protocol/streaming_pull_manager.py +0 -0
  45. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/client.py +0 -0
  46. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/exceptions.py +0 -0
  47. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/futures.py +0 -0
  48. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/message.py +0 -0
  49. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/subscriber/scheduler.py +0 -0
  50. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/cloud/pubsub_v1/types.py +0 -0
  51. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub/__init__.py +0 -0
  52. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub/py.typed +0 -0
  53. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/__init__.py +0 -0
  54. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/gapic_metadata.json +0 -0
  55. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/py.typed +0 -0
  56. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/__init__.py +0 -0
  57. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/__init__.py +0 -0
  58. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/async_client.py +0 -0
  59. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/client.py +0 -0
  60. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/pagers.py +0 -0
  61. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/transports/__init__.py +0 -0
  62. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/transports/base.py +0 -0
  63. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/transports/grpc.py +0 -0
  64. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/transports/grpc_asyncio.py +0 -0
  65. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/publisher/transports/rest.py +0 -0
  66. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/__init__.py +0 -0
  67. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/async_client.py +0 -0
  68. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/client.py +0 -0
  69. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/pagers.py +0 -0
  70. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/transports/__init__.py +0 -0
  71. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/transports/base.py +0 -0
  72. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/transports/grpc.py +0 -0
  73. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/transports/grpc_asyncio.py +0 -0
  74. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/schema_service/transports/rest.py +0 -0
  75. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/__init__.py +0 -0
  76. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/async_client.py +0 -0
  77. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/client.py +0 -0
  78. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/pagers.py +0 -0
  79. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/transports/__init__.py +0 -0
  80. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/transports/base.py +0 -0
  81. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/transports/grpc.py +0 -0
  82. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/transports/grpc_asyncio.py +0 -0
  83. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/services/subscriber/transports/rest.py +0 -0
  84. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/types/__init__.py +0 -0
  85. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/types/pubsub.py +0 -0
  86. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google/pubsub_v1/types/schema.py +0 -0
  87. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google_cloud_pubsub.egg-info/SOURCES.txt +0 -0
  88. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google_cloud_pubsub.egg-info/dependency_links.txt +0 -0
  89. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google_cloud_pubsub.egg-info/not-zip-safe +0 -0
  90. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/google_cloud_pubsub.egg-info/top_level.txt +0 -0
  91. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/scripts/fixup_pubsub_v1_keywords.py +0 -0
  92. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/setup.cfg +0 -0
  93. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/__init__.py +0 -0
  94. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/__init__.py +0 -0
  95. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/gapic/__init__.py +0 -0
  96. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/gapic/pubsub_v1/__init__.py +0 -0
  97. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/gapic/pubsub_v1/test_publisher.py +0 -0
  98. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/gapic/pubsub_v1/test_schema_service.py +0 -0
  99. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/gapic/pubsub_v1/test_subscriber.py +0 -0
  100. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/conftest.py +0 -0
  101. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/batch/test_base.py +0 -0
  102. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/sequencer/test_ordered_sequencer.py +0 -0
  103. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/sequencer/test_unordered_sequencer.py +0 -0
  104. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/test_flow_controller.py +0 -0
  105. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/test_futures_publisher.py +0 -0
  106. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/publisher/test_publish_message_wrapper.py +0 -0
  107. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_dispatcher.py +0 -0
  108. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_futures_subscriber.py +0 -0
  109. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_heartbeater.py +0 -0
  110. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_helper_threads.py +0 -0
  111. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_histogram.py +0 -0
  112. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_leaser.py +0 -0
  113. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_message.py +0 -0
  114. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_messages_on_hold.py +0 -0
  115. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_scheduler.py +0 -0
  116. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_streaming_pull_manager.py +0 -0
  117. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_subscribe_opentelemetry.py +0 -0
  118. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/subscriber/test_subscriber_client.py +0 -0
  119. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/pubsub_v1/test_futures.py +0 -0
  120. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/test_packaging.py +0 -0
  121. {google_cloud_pubsub-2.27.0 → google_cloud_pubsub-2.27.2}/tests/unit/test_pubsub.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: google-cloud-pubsub
3
- Version: 2.27.0
3
+ Version: 2.27.2
4
4
  Summary: Google Cloud Pub/Sub API client library
5
5
  Home-page: https://github.com/googleapis/python-pubsub
6
6
  Author: Google LLC
@@ -28,6 +28,7 @@ Requires-Dist: google-auth<3.0.0dev,>=2.14.1
28
28
  Requires-Dist: google-api-core[grpc]!=2.0.*,!=2.1.*,!=2.10.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,<3.0.0dev,>=1.34.0
29
29
  Requires-Dist: proto-plus<2.0.0dev,>=1.22.0
30
30
  Requires-Dist: proto-plus<2.0.0dev,>=1.22.2; python_version >= "3.11"
31
+ Requires-Dist: proto-plus<2.0.0dev,>=1.25.0; python_version >= "3.13"
31
32
  Requires-Dist: protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<6.0.0dev,>=3.20.2
32
33
  Requires-Dist: grpc-google-iam-v1<1.0.0dev,>=0.12.4
33
34
  Requires-Dist: grpcio-status>=1.33.2
@@ -24,6 +24,7 @@ from datetime import datetime
24
24
  from opentelemetry import trace
25
25
  import google.api_core.exceptions
26
26
  from google.api_core import gapic_v1
27
+ from google.auth import exceptions as auth_exceptions
27
28
 
28
29
  from google.cloud.pubsub_v1.publisher import exceptions
29
30
  from google.cloud.pubsub_v1.publisher import futures
@@ -342,7 +343,10 @@ class Batch(base.Batch):
342
343
  )
343
344
  span.set_attribute(key="messaging.message.id", value=message_id)
344
345
  wrapper.end_create_span()
345
- except google.api_core.exceptions.GoogleAPIError as exc:
346
+ except (
347
+ google.api_core.exceptions.GoogleAPIError,
348
+ auth_exceptions.TransportError,
349
+ ) as exc:
346
350
  # We failed to publish, even after retries, so set the exception on
347
351
  # all futures and exit.
348
352
  self._status = base.BatchStatus.ERROR
@@ -13,4 +13,4 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- __version__ = "2.27.0" # {x-release-please-version}
16
+ __version__ = "2.27.2" # {x-release-please-version}
@@ -13,4 +13,4 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- __version__ = "2.27.0" # {x-release-please-version}
16
+ __version__ = "2.27.2" # {x-release-please-version}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: google-cloud-pubsub
3
- Version: 2.27.0
3
+ Version: 2.27.2
4
4
  Summary: Google Cloud Pub/Sub API client library
5
5
  Home-page: https://github.com/googleapis/python-pubsub
6
6
  Author: Google LLC
@@ -28,6 +28,7 @@ Requires-Dist: google-auth<3.0.0dev,>=2.14.1
28
28
  Requires-Dist: google-api-core[grpc]!=2.0.*,!=2.1.*,!=2.10.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,<3.0.0dev,>=1.34.0
29
29
  Requires-Dist: proto-plus<2.0.0dev,>=1.22.0
30
30
  Requires-Dist: proto-plus<2.0.0dev,>=1.22.2; python_version >= "3.11"
31
+ Requires-Dist: proto-plus<2.0.0dev,>=1.25.0; python_version >= "3.13"
31
32
  Requires-Dist: protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<6.0.0dev,>=3.20.2
32
33
  Requires-Dist: grpc-google-iam-v1<1.0.0dev,>=0.12.4
33
34
  Requires-Dist: grpcio-status>=1.33.2
@@ -13,6 +13,9 @@ opentelemetry-sdk<=1.22.0
13
13
  [:python_version >= "3.11"]
14
14
  proto-plus<2.0.0dev,>=1.22.2
15
15
 
16
+ [:python_version >= "3.13"]
17
+ proto-plus<2.0.0dev,>=1.25.0
18
+
16
19
  [:python_version >= "3.8"]
17
20
  opentelemetry-api>=1.27.0
18
21
  opentelemetry-sdk>=1.27.0
@@ -42,6 +42,7 @@ dependencies = [
42
42
  "google-api-core[grpc] >= 1.34.0, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,!=2.10.*",
43
43
  "proto-plus >= 1.22.0, <2.0.0dev",
44
44
  "proto-plus >= 1.22.2, <2.0.0dev; python_version>='3.11'",
45
+ "proto-plus >= 1.25.0, < 2.0.0dev; python_version >= '3.13'",
45
46
  "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5",
46
47
  "grpc-google-iam-v1 >= 0.12.4, < 1.0.0dev",
47
48
  "grpcio-status >= 1.33.2",
@@ -468,7 +468,7 @@ def test_subscriber_not_leaking_open_sockets(
468
468
  publisher.create_topic(name=topic_path)
469
469
 
470
470
  current_process = psutil.Process()
471
- conn_count_start = len(current_process.connections())
471
+ conn_count_start = len(current_process.net_connections())
472
472
 
473
473
  # Publish a few messages, then synchronously pull them and check that
474
474
  # no sockets are leaked.
@@ -487,7 +487,7 @@ def test_subscriber_not_leaking_open_sockets(
487
487
  response = subscriber.pull(subscription=subscription_path, max_messages=3)
488
488
  assert len(response.received_messages) == 3
489
489
 
490
- conn_count_end = len(current_process.connections())
490
+ conn_count_end = len(current_process.net_connections())
491
491
 
492
492
  # To avoid flakiness, use <= in the assertion, since on rare occasions additional
493
493
  # sockets are closed, causing the == assertion to fail.
@@ -31,6 +31,7 @@ from opentelemetry.trace import SpanContext
31
31
  import google.api_core.exceptions
32
32
  from google.api_core import gapic_v1
33
33
  from google.auth import credentials
34
+ from google.auth import exceptions as auth_exceptions
34
35
  from google.cloud.pubsub_v1 import publisher
35
36
  from google.cloud.pubsub_v1 import types
36
37
  from google.cloud.pubsub_v1.publisher import exceptions
@@ -329,7 +330,14 @@ def test_blocking__commit_wrong_messageid_length():
329
330
  assert isinstance(future.exception(), exceptions.PublishError)
330
331
 
331
332
 
332
- def test_block__commmit_api_error():
333
+ @pytest.mark.parametrize(
334
+ "error",
335
+ [
336
+ (google.api_core.exceptions.InternalServerError("Internal server error"),),
337
+ (auth_exceptions.TransportError("some transport error"),),
338
+ ],
339
+ )
340
+ def test_block__commmit_api_error(error):
333
341
  batch = create_batch()
334
342
  futures = (
335
343
  batch.publish(
@@ -345,7 +353,6 @@ def test_block__commmit_api_error():
345
353
  )
346
354
 
347
355
  # Make the API throw an error when publishing.
348
- error = google.api_core.exceptions.InternalServerError("uh oh")
349
356
  patch = mock.patch.object(type(batch.client), "_gapic_publish", side_effect=error)
350
357
 
351
358
  with patch:
@@ -353,7 +360,7 @@ def test_block__commmit_api_error():
353
360
 
354
361
  for future in futures:
355
362
  assert future.done()
356
- assert future.exception() == error
363
+ assert future.exception() == error[0]
357
364
 
358
365
 
359
366
  def test_block__commmit_retry_error():
@@ -28,6 +28,8 @@ else:
28
28
 
29
29
  import pytest
30
30
  import time
31
+ from flaky import flaky
32
+ from typing import cast, Callable, Any, TypeVar
31
33
 
32
34
  from opentelemetry import trace
33
35
  from google.api_core import gapic_v1
@@ -49,6 +51,10 @@ from google.cloud.pubsub_v1.open_telemetry.publish_message_wrapper import (
49
51
  )
50
52
 
51
53
 
54
+ C = TypeVar("C", bound=Callable[..., Any])
55
+ typed_flaky = cast(Callable[[C], C], flaky(max_runs=5, min_passes=1))
56
+
57
+
52
58
  def _assert_retries_equal(retry, retry2):
53
59
  # Retry instances cannot be directly compared, because their predicates are
54
60
  # different instances of the same function. We thus manually compare their other
@@ -142,6 +148,7 @@ def test_init_w_custom_transport(creds):
142
148
  False,
143
149
  ],
144
150
  )
151
+ @typed_flaky
145
152
  def test_open_telemetry_publisher_options(creds, enable_open_telemetry):
146
153
  if sys.version_info >= (3, 8) or enable_open_telemetry is False:
147
154
  client = publisher.Client(