sentry-arroyo 2.20.4__py3-none-any.whl → 2.20.6__py3-none-any.whl

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.
@@ -22,7 +22,7 @@ class _StrategyGuardAfter(BasicStrategy[TStrategyPayload]):
22
22
  def submit(self, message: BasicMessage[TStrategyPayload]) -> None:
23
23
  for partition, offset in message.committable.items():
24
24
  if self.__committable.setdefault(partition, offset) > offset:
25
- logger.warn(
25
+ logger.warning(
26
26
  "Submitted a message with committable {%s: %s}, "
27
27
  "but we already submitted a message with a higher offset before.\n\n"
28
28
  "Either Arroyo has a bug, or you are writing a custom "
@@ -94,7 +94,7 @@ class Unfold(
94
94
  self.__next_step.submit(message)
95
95
  self.__pending.popleft()
96
96
  except MessageRejected:
97
- pass
97
+ break
98
98
 
99
99
  def poll(self) -> None:
100
100
  self.__flush()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sentry-arroyo
3
- Version: 2.20.4
3
+ Version: 2.20.6
4
4
  Summary: Arroyo is a Python library for working with streaming data.
5
5
  Home-page: https://github.com/getsentry/arroyo
6
6
  Author: Sentry
@@ -23,7 +23,7 @@ arroyo/processing/strategies/batching.py,sha256=s89xC6lQpBseEaApu1iNTipXGKeO95OM
23
23
  arroyo/processing/strategies/buffer.py,sha256=7s-tmXOMKlmvElZ6GKLOTjqTAfrrjS7AU_4b_kDHi7s,7066
24
24
  arroyo/processing/strategies/commit.py,sha256=F5QtYHA4nLeNWHCLFlVQTNCw2PpgTzX8HDDmhs-voLM,1413
25
25
  arroyo/processing/strategies/filter.py,sha256=dzx9BaIVigxFGfsrNYAWJYTDCanIp3RiV91_dNHF5cc,4873
26
- arroyo/processing/strategies/guard.py,sha256=oC3XhyvYUg5CvSosUTXrCw9iA_hmN6EH2Lr-lpeOkI8,4875
26
+ arroyo/processing/strategies/guard.py,sha256=W2Nsy8LW6RWYPh-_ReljR8_lkPgipOG8LhtDR-DDlto,4878
27
27
  arroyo/processing/strategies/healthcheck.py,sha256=fEVB516nZVZWvZLzi4_ImaE6F7QQQJIymW6HgiUYUSA,1775
28
28
  arroyo/processing/strategies/noop.py,sha256=BtWkC93QpZCKAB4qTsXLaqrYsllE1Olp6mY2YeuK9ag,726
29
29
  arroyo/processing/strategies/produce.py,sha256=v1mJv5rbyXal7ESIfsihbTGW-vZ0_niJnBgdqcA-zHQ,4619
@@ -31,7 +31,7 @@ arroyo/processing/strategies/reduce.py,sha256=xv9bYisgHHyS8fVD1PdGi4TJsaK-4RAhME
31
31
  arroyo/processing/strategies/run_task.py,sha256=MGe2UcIWN7FkPc9plKzRVUNbZ7Sk0jWjw1z2vVOFI_I,2160
32
32
  arroyo/processing/strategies/run_task_in_threads.py,sha256=f1sb2AG-BLz11X78jfhtERIkdFogrV8vtdT3pyJdkx0,6144
33
33
  arroyo/processing/strategies/run_task_with_multiprocessing.py,sha256=jNb_e3hcXDlnLE0XCgVjbLHXrob8V53aPGeMWtu4ToI,34417
34
- arroyo/processing/strategies/unfold.py,sha256=8sMEXReS0Pc-8MpHF_qiRUmiPfF2vaNe5_PGreF-3-Q,4230
34
+ arroyo/processing/strategies/unfold.py,sha256=bi47pwmKGT0Irsx0HdB7Bhc5hb-yYqLF_xcv3g1ewTk,4231
35
35
  arroyo/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
36
  arroyo/utils/clock.py,sha256=r2EMO4nL5qIb1xnAd1sTAk2yK1UltyUi04lk5BqWKIc,944
37
37
  arroyo/utils/codecs.py,sha256=x-8SJK0GLTOH4c_k24K97JPjBckxyQJcSpgoEViGUy0,541
@@ -46,7 +46,7 @@ examples/transform_and_produce/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
46
46
  examples/transform_and_produce/batched.py,sha256=st2R6qTneAtV0JFbKP30Ti3sJDYj8Jkbmta9JckKdZU,2636
47
47
  examples/transform_and_produce/script.py,sha256=8kSMIjQNqGYEVyE0PvrfJh-a_UYCrJSstTp_De7kyyg,2306
48
48
  examples/transform_and_produce/simple.py,sha256=H7xqxItjl4tx34wVW5dy6mB9G39QucAtxkJSBzVmjgA,1637
49
- sentry_arroyo-2.20.4.dist-info/licenses/LICENSE,sha256=0Ng3MFdEcnz0sVD1XvGBBzbavvNp_7OAM5yVObB46jU,10829
49
+ sentry_arroyo-2.20.6.dist-info/licenses/LICENSE,sha256=0Ng3MFdEcnz0sVD1XvGBBzbavvNp_7OAM5yVObB46jU,10829
50
50
  tests/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
51
  tests/backends/mixins.py,sha256=sfNyE0VTeiD3GHOnBYl-9urvPuURI2G1BWke0cz7Dvc,20445
52
52
  tests/backends/test_commit.py,sha256=iTHfK1qsBxim0XwxgMvNNSMqDUMEHoYkYBDcgxGBFbs,831
@@ -67,12 +67,12 @@ tests/processing/strategies/test_reduce.py,sha256=crPFtGp7cyD8QOsmfVsyYh8KLOTzb8
67
67
  tests/processing/strategies/test_run_task.py,sha256=bWIy4U6QyOBtqdiJdGLMAadlEME-W2aE_ZzDbU_BsGo,2805
68
68
  tests/processing/strategies/test_run_task_in_threads.py,sha256=5nwzF1iV6MTK1xETzWvMEOwAcZWrMOQaIPSWbiAjKFo,1457
69
69
  tests/processing/strategies/test_run_task_with_multiprocessing.py,sha256=iy4etaU9WLa8AfMIFUXRnS70Dj7jlpotIX7s-BhTWH0,21914
70
- tests/processing/strategies/test_unfold.py,sha256=iPXVTyLgqOFhqHXFp3Yq99Mutmh6dg0m9J2VA8npV_w,1788
70
+ tests/processing/strategies/test_unfold.py,sha256=mbC4XhT6GkJRuC7vPR0h7jqwt4cu20q7Z114EJ6J9mQ,2009
71
71
  tests/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
72
  tests/utils/test_concurrent.py,sha256=Gwdzym2UZ1HO3rhOSGmzxImWcLFygY8P7MXHT3Q0xTE,455
73
73
  tests/utils/test_metrics.py,sha256=bI0EtGgPokMQyEqX58i0-8zvLfxRP2nWaWr2wLMaJ_o,917
74
74
  tests/utils/test_retries.py,sha256=AxJLkXWeL9AjHv_p1n0pe8CXXJp24ZQIuYBHfNcmiz4,3075
75
- sentry_arroyo-2.20.4.dist-info/METADATA,sha256=tRL7TYGXmTOXfZ1JxIAfomysREcZMkqyTlsnSAu3qnY,2200
76
- sentry_arroyo-2.20.4.dist-info/WHEEL,sha256=L0N565qmK-3nM2eBoMNFszYJ_MTx03_tQ0CQu1bHLYo,91
77
- sentry_arroyo-2.20.4.dist-info/top_level.txt,sha256=DVdMZKysL_iIxm5aY0sYgZtP5ZXMg9YBaBmGQHVmDXA,22
78
- sentry_arroyo-2.20.4.dist-info/RECORD,,
75
+ sentry_arroyo-2.20.6.dist-info/METADATA,sha256=d9kyjf-g8Wu1M0MJgI-6-OKrIqzQjGcDZDnuhC1hCas,2200
76
+ sentry_arroyo-2.20.6.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
77
+ sentry_arroyo-2.20.6.dist-info/top_level.txt,sha256=DVdMZKysL_iIxm5aY0sYgZtP5ZXMg9YBaBmGQHVmDXA,22
78
+ sentry_arroyo-2.20.6.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.0.1)
2
+ Generator: setuptools (78.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -49,6 +49,13 @@ def test_message_rejected() -> None:
49
49
  call(Message(Value(0, {}, NOW))),
50
50
  ]
51
51
 
52
+ # poll again, to show that it does not block (regression)
53
+ strategy.poll()
54
+ assert next_step.submit.call_args_list == [
55
+ call(Message(Value(0, {}, NOW))),
56
+ call(Message(Value(0, {}, NOW))),
57
+ ]
58
+
52
59
  # clear the side effect, both messages should be submitted now
53
60
  next_step.submit.reset_mock(side_effect=True)
54
61