acryl-datahub-actions 1.3.1.4__py3-none-any.whl → 1.3.1.5rc1__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: acryl-datahub-actions
3
- Version: 1.3.1.4
3
+ Version: 1.3.1.5rc1
4
4
  Summary: An action framework to work with DataHub real time changes.
5
5
  Home-page: https://docs.datahub.com/
6
6
  License: Apache-2.0
@@ -21,201 +21,201 @@ Classifier: Environment :: MacOS X
21
21
  Classifier: Topic :: Software Development
22
22
  Requires-Python: >=3.9
23
23
  Description-Content-Type: text/markdown
24
- Requires-Dist: h11>=0.16
25
- Requires-Dist: click-default-group
26
- Requires-Dist: typing-inspect
27
- Requires-Dist: toml>=0.10.0
28
- Requires-Dist: progressbar2
29
- Requires-Dist: azure-identity==1.21.0
24
+ Requires-Dist: ratelimit
30
25
  Requires-Dist: python-dateutil>=2.8.0
31
- Requires-Dist: aws-msk-iam-sasl-signer-python==1.0.2
32
- Requires-Dist: stackprinter
33
- Requires-Dist: click>=6.0.0
26
+ Requires-Dist: acryl-datahub[datahub-kafka]==1.3.1.5rc1
34
27
  Requires-Dist: entrypoints
35
- Requires-Dist: httpcore>=1.0.9
36
- Requires-Dist: pydantic<3.0.0,>=2.0.0
28
+ Requires-Dist: azure-identity==1.21.0
37
29
  Requires-Dist: PyYAML
30
+ Requires-Dist: toml>=0.10.0
38
31
  Requires-Dist: tenacity
39
- Requires-Dist: ratelimit
32
+ Requires-Dist: progressbar2
40
33
  Requires-Dist: prometheus-client
41
- Requires-Dist: acryl-datahub[datahub-kafka]==1.3.1.4
34
+ Requires-Dist: click-default-group
35
+ Requires-Dist: pydantic<3.0.0,>=2.0.0
36
+ Requires-Dist: httpcore>=1.0.9
37
+ Requires-Dist: typing-inspect
38
+ Requires-Dist: stackprinter
39
+ Requires-Dist: h11>=0.16
40
+ Requires-Dist: click>=6.0.0
41
+ Requires-Dist: aws-msk-iam-sasl-signer-python==1.0.2
42
42
  Provides-Extra: base
43
- Requires-Dist: click-default-group; extra == "base"
44
- Requires-Dist: toml>=0.10.0; extra == "base"
45
- Requires-Dist: progressbar2; extra == "base"
46
43
  Requires-Dist: python-dateutil>=2.8.0; extra == "base"
47
- Requires-Dist: stackprinter; extra == "base"
48
- Requires-Dist: click>=6.0.0; extra == "base"
49
44
  Requires-Dist: entrypoints; extra == "base"
50
45
  Requires-Dist: PyYAML; extra == "base"
46
+ Requires-Dist: toml>=0.10.0; extra == "base"
51
47
  Requires-Dist: tenacity; extra == "base"
48
+ Requires-Dist: progressbar2; extra == "base"
52
49
  Requires-Dist: prometheus-client; extra == "base"
50
+ Requires-Dist: click-default-group; extra == "base"
51
+ Requires-Dist: stackprinter; extra == "base"
52
+ Requires-Dist: click>=6.0.0; extra == "base"
53
53
  Provides-Extra: kafka
54
- Requires-Dist: click-default-group; extra == "kafka"
55
- Requires-Dist: toml>=0.10.0; extra == "kafka"
56
- Requires-Dist: progressbar2; extra == "kafka"
57
54
  Requires-Dist: python-dateutil>=2.8.0; extra == "kafka"
58
- Requires-Dist: confluent-kafka[schemaregistry]; extra == "kafka"
59
- Requires-Dist: stackprinter; extra == "kafka"
60
- Requires-Dist: click>=6.0.0; extra == "kafka"
61
55
  Requires-Dist: entrypoints; extra == "kafka"
62
56
  Requires-Dist: PyYAML; extra == "kafka"
57
+ Requires-Dist: toml>=0.10.0; extra == "kafka"
63
58
  Requires-Dist: tenacity; extra == "kafka"
59
+ Requires-Dist: progressbar2; extra == "kafka"
64
60
  Requires-Dist: prometheus-client; extra == "kafka"
61
+ Requires-Dist: click-default-group; extra == "kafka"
62
+ Requires-Dist: stackprinter; extra == "kafka"
63
+ Requires-Dist: confluent-kafka[schemaregistry]; extra == "kafka"
64
+ Requires-Dist: click>=6.0.0; extra == "kafka"
65
65
  Provides-Extra: executor
66
- Requires-Dist: click-default-group; extra == "executor"
67
- Requires-Dist: toml>=0.10.0; extra == "executor"
68
- Requires-Dist: progressbar2; extra == "executor"
69
- Requires-Dist: acryl-executor==0.3.2; extra == "executor"
70
66
  Requires-Dist: python-dateutil>=2.8.0; extra == "executor"
71
- Requires-Dist: stackprinter; extra == "executor"
72
- Requires-Dist: click>=6.0.0; extra == "executor"
73
67
  Requires-Dist: entrypoints; extra == "executor"
74
68
  Requires-Dist: PyYAML; extra == "executor"
69
+ Requires-Dist: toml>=0.10.0; extra == "executor"
75
70
  Requires-Dist: tenacity; extra == "executor"
71
+ Requires-Dist: progressbar2; extra == "executor"
72
+ Requires-Dist: acryl-executor==0.3.2; extra == "executor"
76
73
  Requires-Dist: prometheus-client; extra == "executor"
74
+ Requires-Dist: click-default-group; extra == "executor"
75
+ Requires-Dist: stackprinter; extra == "executor"
76
+ Requires-Dist: click>=6.0.0; extra == "executor"
77
77
  Provides-Extra: slack
78
- Requires-Dist: click-default-group; extra == "slack"
79
- Requires-Dist: toml>=0.10.0; extra == "slack"
80
- Requires-Dist: progressbar2; extra == "slack"
81
78
  Requires-Dist: python-dateutil>=2.8.0; extra == "slack"
82
- Requires-Dist: slack-bolt>=1.15.5; extra == "slack"
83
- Requires-Dist: stackprinter; extra == "slack"
84
- Requires-Dist: click>=6.0.0; extra == "slack"
85
79
  Requires-Dist: entrypoints; extra == "slack"
86
80
  Requires-Dist: PyYAML; extra == "slack"
81
+ Requires-Dist: toml>=0.10.0; extra == "slack"
87
82
  Requires-Dist: tenacity; extra == "slack"
83
+ Requires-Dist: progressbar2; extra == "slack"
88
84
  Requires-Dist: prometheus-client; extra == "slack"
85
+ Requires-Dist: click-default-group; extra == "slack"
86
+ Requires-Dist: stackprinter; extra == "slack"
87
+ Requires-Dist: click>=6.0.0; extra == "slack"
88
+ Requires-Dist: slack-bolt>=1.15.5; extra == "slack"
89
89
  Provides-Extra: teams
90
- Requires-Dist: click-default-group; extra == "teams"
91
- Requires-Dist: toml>=0.10.0; extra == "teams"
92
- Requires-Dist: progressbar2; extra == "teams"
93
90
  Requires-Dist: python-dateutil>=2.8.0; extra == "teams"
94
- Requires-Dist: stackprinter; extra == "teams"
95
- Requires-Dist: click>=6.0.0; extra == "teams"
96
91
  Requires-Dist: entrypoints; extra == "teams"
97
92
  Requires-Dist: PyYAML; extra == "teams"
93
+ Requires-Dist: toml>=0.10.0; extra == "teams"
98
94
  Requires-Dist: tenacity; extra == "teams"
95
+ Requires-Dist: progressbar2; extra == "teams"
99
96
  Requires-Dist: pymsteams>=0.2.2; extra == "teams"
100
97
  Requires-Dist: prometheus-client; extra == "teams"
98
+ Requires-Dist: click-default-group; extra == "teams"
99
+ Requires-Dist: stackprinter; extra == "teams"
100
+ Requires-Dist: click>=6.0.0; extra == "teams"
101
101
  Provides-Extra: tag-propagation
102
- Requires-Dist: click-default-group; extra == "tag-propagation"
103
- Requires-Dist: toml>=0.10.0; extra == "tag-propagation"
104
- Requires-Dist: progressbar2; extra == "tag-propagation"
105
102
  Requires-Dist: python-dateutil>=2.8.0; extra == "tag-propagation"
106
- Requires-Dist: stackprinter; extra == "tag-propagation"
107
- Requires-Dist: click>=6.0.0; extra == "tag-propagation"
108
103
  Requires-Dist: entrypoints; extra == "tag-propagation"
109
104
  Requires-Dist: PyYAML; extra == "tag-propagation"
105
+ Requires-Dist: toml>=0.10.0; extra == "tag-propagation"
110
106
  Requires-Dist: tenacity; extra == "tag-propagation"
107
+ Requires-Dist: progressbar2; extra == "tag-propagation"
111
108
  Requires-Dist: prometheus-client; extra == "tag-propagation"
109
+ Requires-Dist: click-default-group; extra == "tag-propagation"
110
+ Requires-Dist: stackprinter; extra == "tag-propagation"
111
+ Requires-Dist: click>=6.0.0; extra == "tag-propagation"
112
112
  Provides-Extra: term-propagation
113
- Requires-Dist: click-default-group; extra == "term-propagation"
114
- Requires-Dist: toml>=0.10.0; extra == "term-propagation"
115
- Requires-Dist: progressbar2; extra == "term-propagation"
116
113
  Requires-Dist: python-dateutil>=2.8.0; extra == "term-propagation"
117
- Requires-Dist: stackprinter; extra == "term-propagation"
118
- Requires-Dist: click>=6.0.0; extra == "term-propagation"
119
114
  Requires-Dist: entrypoints; extra == "term-propagation"
120
115
  Requires-Dist: PyYAML; extra == "term-propagation"
116
+ Requires-Dist: toml>=0.10.0; extra == "term-propagation"
121
117
  Requires-Dist: tenacity; extra == "term-propagation"
118
+ Requires-Dist: progressbar2; extra == "term-propagation"
122
119
  Requires-Dist: prometheus-client; extra == "term-propagation"
120
+ Requires-Dist: click-default-group; extra == "term-propagation"
121
+ Requires-Dist: stackprinter; extra == "term-propagation"
122
+ Requires-Dist: click>=6.0.0; extra == "term-propagation"
123
123
  Provides-Extra: snowflake-tag-propagation
124
- Requires-Dist: click-default-group; extra == "snowflake-tag-propagation"
125
- Requires-Dist: toml>=0.10.0; extra == "snowflake-tag-propagation"
126
- Requires-Dist: progressbar2; extra == "snowflake-tag-propagation"
127
124
  Requires-Dist: python-dateutil>=2.8.0; extra == "snowflake-tag-propagation"
128
- Requires-Dist: stackprinter; extra == "snowflake-tag-propagation"
129
- Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.4; extra == "snowflake-tag-propagation"
130
- Requires-Dist: click>=6.0.0; extra == "snowflake-tag-propagation"
131
125
  Requires-Dist: entrypoints; extra == "snowflake-tag-propagation"
132
126
  Requires-Dist: PyYAML; extra == "snowflake-tag-propagation"
127
+ Requires-Dist: toml>=0.10.0; extra == "snowflake-tag-propagation"
133
128
  Requires-Dist: tenacity; extra == "snowflake-tag-propagation"
129
+ Requires-Dist: progressbar2; extra == "snowflake-tag-propagation"
134
130
  Requires-Dist: prometheus-client; extra == "snowflake-tag-propagation"
131
+ Requires-Dist: click-default-group; extra == "snowflake-tag-propagation"
132
+ Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.5rc1; extra == "snowflake-tag-propagation"
133
+ Requires-Dist: stackprinter; extra == "snowflake-tag-propagation"
134
+ Requires-Dist: click>=6.0.0; extra == "snowflake-tag-propagation"
135
135
  Provides-Extra: doc-propagation
136
- Requires-Dist: click-default-group; extra == "doc-propagation"
137
- Requires-Dist: toml>=0.10.0; extra == "doc-propagation"
138
- Requires-Dist: progressbar2; extra == "doc-propagation"
139
136
  Requires-Dist: python-dateutil>=2.8.0; extra == "doc-propagation"
140
- Requires-Dist: stackprinter; extra == "doc-propagation"
141
- Requires-Dist: click>=6.0.0; extra == "doc-propagation"
142
137
  Requires-Dist: entrypoints; extra == "doc-propagation"
143
138
  Requires-Dist: PyYAML; extra == "doc-propagation"
139
+ Requires-Dist: toml>=0.10.0; extra == "doc-propagation"
144
140
  Requires-Dist: tenacity; extra == "doc-propagation"
141
+ Requires-Dist: progressbar2; extra == "doc-propagation"
145
142
  Requires-Dist: prometheus-client; extra == "doc-propagation"
143
+ Requires-Dist: click-default-group; extra == "doc-propagation"
144
+ Requires-Dist: stackprinter; extra == "doc-propagation"
145
+ Requires-Dist: click>=6.0.0; extra == "doc-propagation"
146
146
  Provides-Extra: all
147
- Requires-Dist: click-default-group; extra == "all"
148
- Requires-Dist: toml>=0.10.0; extra == "all"
149
- Requires-Dist: progressbar2; extra == "all"
150
- Requires-Dist: acryl-executor==0.3.2; extra == "all"
151
147
  Requires-Dist: python-dateutil>=2.8.0; extra == "all"
152
- Requires-Dist: confluent-kafka[schemaregistry]; extra == "all"
153
- Requires-Dist: slack-bolt>=1.15.5; extra == "all"
154
- Requires-Dist: stackprinter; extra == "all"
155
- Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.4; extra == "all"
156
- Requires-Dist: click>=6.0.0; extra == "all"
157
148
  Requires-Dist: entrypoints; extra == "all"
158
149
  Requires-Dist: PyYAML; extra == "all"
150
+ Requires-Dist: toml>=0.10.0; extra == "all"
159
151
  Requires-Dist: tenacity; extra == "all"
152
+ Requires-Dist: progressbar2; extra == "all"
153
+ Requires-Dist: acryl-executor==0.3.2; extra == "all"
160
154
  Requires-Dist: pymsteams>=0.2.2; extra == "all"
161
155
  Requires-Dist: prometheus-client; extra == "all"
156
+ Requires-Dist: click-default-group; extra == "all"
157
+ Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.5rc1; extra == "all"
158
+ Requires-Dist: stackprinter; extra == "all"
159
+ Requires-Dist: confluent-kafka[schemaregistry]; extra == "all"
160
+ Requires-Dist: click>=6.0.0; extra == "all"
161
+ Requires-Dist: slack-bolt>=1.15.5; extra == "all"
162
162
  Provides-Extra: dev
163
- Requires-Dist: h11>=0.16; extra == "dev"
163
+ Requires-Dist: requests-mock; extra == "dev"
164
+ Requires-Dist: build; extra == "dev"
165
+ Requires-Dist: twine; extra == "dev"
166
+ Requires-Dist: tox; extra == "dev"
167
+ Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.5rc1; extra == "dev"
164
168
  Requires-Dist: typing-inspect; extra == "dev"
165
- Requires-Dist: toml>=0.10.0; extra == "dev"
169
+ Requires-Dist: types-click==0.1.12; extra == "dev"
170
+ Requires-Dist: click>=6.0.0; extra == "dev"
171
+ Requires-Dist: types-PyYAML; extra == "dev"
172
+ Requires-Dist: python-dateutil>=2.8.0; extra == "dev"
166
173
  Requires-Dist: types-six; extra == "dev"
167
- Requires-Dist: aws-msk-iam-sasl-signer-python==1.0.2; extra == "dev"
174
+ Requires-Dist: types-PyMySQL; extra == "dev"
175
+ Requires-Dist: progressbar2; extra == "dev"
176
+ Requires-Dist: click-default-group; extra == "dev"
168
177
  Requires-Dist: pydantic<3.0.0,>=2.0.0; extra == "dev"
178
+ Requires-Dist: sqlalchemy-stubs; extra == "dev"
179
+ Requires-Dist: confluent-kafka[schemaregistry]; extra == "dev"
180
+ Requires-Dist: types-cachetools; extra == "dev"
169
181
  Requires-Dist: pytest>=6.2.2; extra == "dev"
170
- Requires-Dist: prometheus-client; extra == "dev"
171
182
  Requires-Dist: mypy==1.17.1; extra == "dev"
172
- Requires-Dist: types-freezegun; extra == "dev"
173
- Requires-Dist: requests-mock; extra == "dev"
174
- Requires-Dist: types-dataclasses; extra == "dev"
175
- Requires-Dist: progressbar2; extra == "dev"
176
- Requires-Dist: azure-identity==1.21.0; extra == "dev"
177
- Requires-Dist: confluent-kafka[schemaregistry]; extra == "dev"
178
- Requires-Dist: build; extra == "dev"
183
+ Requires-Dist: types-python-dateutil; extra == "dev"
184
+ Requires-Dist: types-setuptools; extra == "dev"
185
+ Requires-Dist: aws-msk-iam-sasl-signer-python==1.0.2; extra == "dev"
179
186
  Requires-Dist: slack-bolt>=1.15.5; extra == "dev"
180
- Requires-Dist: jsonpickle; extra == "dev"
181
- Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.4; extra == "dev"
187
+ Requires-Dist: ratelimit; extra == "dev"
188
+ Requires-Dist: acryl-datahub[datahub-kafka]==1.3.1.5rc1; extra == "dev"
182
189
  Requires-Dist: entrypoints; extra == "dev"
183
190
  Requires-Dist: PyYAML; extra == "dev"
184
- Requires-Dist: ruff==0.11.7; extra == "dev"
191
+ Requires-Dist: tenacity; extra == "dev"
185
192
  Requires-Dist: types-pytz; extra == "dev"
186
- Requires-Dist: click-default-group; extra == "dev"
187
- Requires-Dist: types-setuptools; extra == "dev"
188
- Requires-Dist: acryl-executor==0.3.2; extra == "dev"
189
- Requires-Dist: python-dateutil>=2.8.0; extra == "dev"
190
- Requires-Dist: types-PyYAML; extra == "dev"
191
- Requires-Dist: pytest-docker>=0.10.3; extra == "dev"
192
- Requires-Dist: deepdiff; extra == "dev"
193
- Requires-Dist: types-PyMySQL; extra == "dev"
194
- Requires-Dist: types-click==0.1.12; extra == "dev"
195
- Requires-Dist: click>=6.0.0; extra == "dev"
193
+ Requires-Dist: ruff==0.11.7; extra == "dev"
194
+ Requires-Dist: pymsteams>=0.2.2; extra == "dev"
195
+ Requires-Dist: prometheus-client; extra == "dev"
196
+ Requires-Dist: coverage>=5.1; extra == "dev"
196
197
  Requires-Dist: pytest-dependency>=0.5.1; extra == "dev"
197
- Requires-Dist: httpcore>=1.0.9; extra == "dev"
198
- Requires-Dist: tenacity; extra == "dev"
199
- Requires-Dist: ratelimit; extra == "dev"
200
- Requires-Dist: pytest-cov>=2.8.1; extra == "dev"
198
+ Requires-Dist: types-dataclasses; extra == "dev"
201
199
  Requires-Dist: types-toml; extra == "dev"
200
+ Requires-Dist: deepdiff; extra == "dev"
201
+ Requires-Dist: h11>=0.16; extra == "dev"
202
+ Requires-Dist: types-freezegun; extra == "dev"
203
+ Requires-Dist: pytest-docker>=0.10.3; extra == "dev"
204
+ Requires-Dist: azure-identity==1.21.0; extra == "dev"
202
205
  Requires-Dist: freezegun; extra == "dev"
203
- Requires-Dist: types-requests; extra == "dev"
204
- Requires-Dist: sqlalchemy-stubs; extra == "dev"
205
- Requires-Dist: types-cachetools; extra == "dev"
206
+ Requires-Dist: toml>=0.10.0; extra == "dev"
207
+ Requires-Dist: acryl-executor==0.3.2; extra == "dev"
208
+ Requires-Dist: httpcore>=1.0.9; extra == "dev"
206
209
  Requires-Dist: stackprinter; extra == "dev"
207
- Requires-Dist: types-python-dateutil; extra == "dev"
208
- Requires-Dist: pymsteams>=0.2.2; extra == "dev"
209
- Requires-Dist: twine; extra == "dev"
210
- Requires-Dist: coverage>=5.1; extra == "dev"
211
- Requires-Dist: acryl-datahub[datahub-kafka]==1.3.1.4; extra == "dev"
212
- Requires-Dist: tox; extra == "dev"
210
+ Requires-Dist: types-requests; extra == "dev"
211
+ Requires-Dist: jsonpickle; extra == "dev"
212
+ Requires-Dist: pytest-cov>=2.8.1; extra == "dev"
213
213
  Provides-Extra: integration-tests
214
214
  Requires-Dist: acryl-executor==0.3.2; extra == "integration-tests"
215
+ Requires-Dist: pymsteams>=0.2.2; extra == "integration-tests"
216
+ Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.5rc1; extra == "integration-tests"
215
217
  Requires-Dist: confluent-kafka[schemaregistry]; extra == "integration-tests"
216
218
  Requires-Dist: slack-bolt>=1.15.5; extra == "integration-tests"
217
- Requires-Dist: acryl-datahub[snowflake-slim]==1.3.1.4; extra == "integration-tests"
218
- Requires-Dist: pymsteams>=0.2.2; extra == "integration-tests"
219
219
  Dynamic: classifier
220
220
  Dynamic: description
221
221
  Dynamic: description-content-type
@@ -1,5 +1,5 @@
1
1
  datahub_actions/__init__.py,sha256=Pn9UTDbqYPt6jY_acE7MQIveX_Nzdfl5oGmi-Ze8CHs,647
2
- datahub_actions/_version.py,sha256=_vcRytCcexYixG4GcDRb-zlkn5jVenw_BKurlFMKTwk,336
2
+ datahub_actions/_version.py,sha256=20DRLe6b8OXfpqDG8VyphSaTXezWC6nxlLh54Ji37to,339
3
3
  datahub_actions/entrypoints.py,sha256=_6NOpKhlfXuSUdPhDpPya7d9kJmwoRGrunxcNPMQE9k,4743
4
4
  datahub_actions/action/__init__.py,sha256=KYWPHGi7sDM0DXrrXmhlR6_zhym1qNbtFhjYk1Ug6ss,579
5
5
  datahub_actions/action/action.py,sha256=ET1fpeRn6KVD9diJ9ZOObsojrN9y6Vfn4tK7jzBQKHg,1537
@@ -15,7 +15,7 @@ datahub_actions/event/event_envelope.py,sha256=x1QfDetMM7k5SLecD0Nb-duxMxKWU0rme
15
15
  datahub_actions/event/event_registry.py,sha256=bWV2n9u1n8p9Onu9G2AVgZIfOxCjaBT0pKg2eOQdaig,4663
16
16
  datahub_actions/pipeline/__init__.py,sha256=KYWPHGi7sDM0DXrrXmhlR6_zhym1qNbtFhjYk1Ug6ss,579
17
17
  datahub_actions/pipeline/pipeline.py,sha256=6Bod5W3QJNAV0kXymooBxxJVuvAYv3mpvAa6zp-9u5c,12194
18
- datahub_actions/pipeline/pipeline_config.py,sha256=ikJYdDpBv0PI0lpbtubseh8SsuK0032i4Gb6Uum2jck,2208
18
+ datahub_actions/pipeline/pipeline_config.py,sha256=PpO6DED9LD-7fwIiwp7eMDJmSmmoRbIS2OZJcVfJwy0,2225
19
19
  datahub_actions/pipeline/pipeline_context.py,sha256=RollJBpjyw_BChsPPDaXC8_t97Di5eYaAYchGcBKWjs,964
20
20
  datahub_actions/pipeline/pipeline_manager.py,sha256=vFqcq1PY2SWtWZElntWzF8P_5wgmZBqTWjE_1NiHGyY,4039
21
21
  datahub_actions/pipeline/pipeline_stats.py,sha256=p6R6y4NlaHv6MKkMkAAM5ZgMye1wRK0y6Dlk5eCmbZ8,5062
@@ -50,9 +50,9 @@ datahub_actions/plugin/action/utils/term_resolver.py,sha256=J3_u-iGFXxsGCPtaeV_p
50
50
  datahub_actions/plugin/source/__init__.py,sha256=KYWPHGi7sDM0DXrrXmhlR6_zhym1qNbtFhjYk1Ug6ss,579
51
51
  datahub_actions/plugin/source/acryl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
52
  datahub_actions/plugin/source/acryl/constants.py,sha256=f6vEsF6SdD0B1Vs90lCRglRQOCCYjiIlGanNtC7OsnY,307
53
- datahub_actions/plugin/source/acryl/datahub_cloud_event_source.py,sha256=izoNCkZa3DZwW_2wPBfVgXrfqPIFCoBUYFzw6OyIU6w,12538
53
+ datahub_actions/plugin/source/acryl/datahub_cloud_event_source.py,sha256=MA6OlR3mNx69hgprlFifVApSwuW_qOBaHQSlyD4Hm38,12730
54
54
  datahub_actions/plugin/source/acryl/datahub_cloud_events_ack_manager.py,sha256=ky15ibq5lfYdPIwufv4w92XOpp9C6cRvlhPRbJ_cs10,993
55
- datahub_actions/plugin/source/acryl/datahub_cloud_events_consumer.py,sha256=hjjDNC-fcv-JVWI5oC3KA3mueFKeoQv8MZsWBtrVkkc,6144
55
+ datahub_actions/plugin/source/acryl/datahub_cloud_events_consumer.py,sha256=1j6s-uTyZcRlF74toHTrdNeVNq5MMh9_Fp8FOsV-8a0,7116
56
56
  datahub_actions/plugin/source/acryl/datahub_cloud_events_consumer_offsets_store.py,sha256=5m_VR_5yHjt4_YZEi1die5sr0ngl9dVobX10AjIodvA,3969
57
57
  datahub_actions/plugin/source/kafka/__init__.py,sha256=KYWPHGi7sDM0DXrrXmhlR6_zhym1qNbtFhjYk1Ug6ss,579
58
58
  datahub_actions/plugin/source/kafka/kafka_event_source.py,sha256=i3JqjXuAhjg0fwK99vbOH92sQHex8BzcplZDcrSclZ0,11545
@@ -75,8 +75,8 @@ datahub_actions/utils/event_util.py,sha256=VluTOeyFcot48moK9qLmYL1ADAjsau0346Ngi
75
75
  datahub_actions/utils/kafka_msk_iam.py,sha256=JWg0MBEMcsG2AmW4yXiHvH_dnnsQDIRASdlvDXGTVcI,1013
76
76
  datahub_actions/utils/name_resolver.py,sha256=uXICSpy1IUe5uyFUiRk4vDQ9_G0JytPgKPSnqMA6fZk,10540
77
77
  datahub_actions/utils/social_util.py,sha256=FI_3qDjayX9LKlDjf43QHafnOznQk3v5Vp3Xyhq-lno,5271
78
- acryl_datahub_actions-1.3.1.4.dist-info/METADATA,sha256=BIKglhe6wTJTtwymoipYsHHe7s-ScXQKkOQ0iLwOwIs,18103
79
- acryl_datahub_actions-1.3.1.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
80
- acryl_datahub_actions-1.3.1.4.dist-info/entry_points.txt,sha256=Gbvj36kOFWrsJ1meJVFB7zYgrKbIGgufOpZDurJbehU,866
81
- acryl_datahub_actions-1.3.1.4.dist-info/top_level.txt,sha256=93StcIqRM0PfcJoT06TFhcCjPnIw-CyFgBaF-4vqCKY,16
82
- acryl_datahub_actions-1.3.1.4.dist-info/RECORD,,
78
+ acryl_datahub_actions-1.3.1.5rc1.dist-info/METADATA,sha256=pjhuLQpTMB9wXwVxK8hm2jGqpPdryQZ9L8o_sfh8_m4,18124
79
+ acryl_datahub_actions-1.3.1.5rc1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
80
+ acryl_datahub_actions-1.3.1.5rc1.dist-info/entry_points.txt,sha256=Gbvj36kOFWrsJ1meJVFB7zYgrKbIGgufOpZDurJbehU,866
81
+ acryl_datahub_actions-1.3.1.5rc1.dist-info/top_level.txt,sha256=93StcIqRM0PfcJoT06TFhcCjPnIw-CyFgBaF-4vqCKY,16
82
+ acryl_datahub_actions-1.3.1.5rc1.dist-info/RECORD,,
@@ -1,6 +1,6 @@
1
1
  # Published at https://pypi.org/project/acryl-datahub-actions/.
2
2
  __package_name__ = "acryl-datahub-actions"
3
- __version__ = "1.3.1.4"
3
+ __version__ = "1.3.1.5rc1"
4
4
 
5
5
 
6
6
  def is_dev_mode() -> bool:
@@ -45,7 +45,7 @@ class FilterConfig(ConfigModel):
45
45
 
46
46
  class ActionConfig(ConfigModel):
47
47
  type: str
48
- config: Optional[dict]
48
+ config: Optional[Dict[str, Any]] = None
49
49
 
50
50
 
51
51
  class PipelineOptions(BaseModel):
@@ -62,6 +62,7 @@ class DataHubEventsSourceConfig(ConfigModel):
62
62
  consumer_id: Optional[str] = None # Used to store offset for the consumer.
63
63
  lookback_days: Optional[int] = None
64
64
  reset_offsets: Optional[bool] = False
65
+ infinite_retry: Optional[bool] = False
65
66
 
66
67
  # Time and Exit Conditions.
67
68
  kill_after_idle_timeout: bool = False
@@ -106,6 +107,7 @@ class DataHubEventSource(EventSource):
106
107
  graph=self.ctx.graph.graph,
107
108
  lookback_days=self.source_config.lookback_days,
108
109
  reset_offsets=self.source_config.reset_offsets,
110
+ infinite_retry=self.source_config.infinite_retry,
109
111
  )
110
112
 
111
113
  self.ack_manager = AckManager()
@@ -120,6 +122,7 @@ class DataHubEventSource(EventSource):
120
122
  graph: DataHubGraph,
121
123
  lookback_days: Optional[int],
122
124
  reset_offsets: Optional[bool],
125
+ infinite_retry: Optional[bool],
123
126
  ) -> Dict[str, DataHubEventsConsumer]:
124
127
  """
125
128
  Initialize DataHub consumers for each topic with appropriate consumer IDs.
@@ -156,6 +159,7 @@ class DataHubEventSource(EventSource):
156
159
  consumer_id=topic_consumer_id,
157
160
  lookback_days=lookback_days,
158
161
  reset_offsets=reset_offsets,
162
+ infinite_retry=infinite_retry,
159
163
  )
160
164
 
161
165
  return topic_consumers
@@ -11,9 +11,10 @@ from requests.exceptions import (
11
11
  Timeout,
12
12
  )
13
13
  from tenacity import (
14
- retry,
14
+ Retrying,
15
15
  retry_if_exception_type,
16
16
  stop_after_attempt,
17
+ stop_never,
17
18
  wait_exponential,
18
19
  )
19
20
 
@@ -49,6 +50,7 @@ class DataHubEventsConsumer:
49
50
  offset_id: Optional[str] = None,
50
51
  lookback_days: Optional[int] = None,
51
52
  reset_offsets: Optional[bool] = False,
53
+ infinite_retry: Optional[bool] = False,
52
54
  ):
53
55
  # 1) Always set self.consumer_id, even if None, so tests can assert it safely.
54
56
  self.consumer_id: Optional[str] = consumer_id
@@ -57,6 +59,9 @@ class DataHubEventsConsumer:
57
59
  self.graph: DataHubGraph = graph
58
60
  self.offset_id: Optional[str] = offset_id
59
61
  self.default_lookback_days: Optional[int] = lookback_days
62
+ self.infinite_retry: bool = (
63
+ infinite_retry if infinite_retry is not None else False
64
+ )
60
65
  self.offsets_store: Optional[
61
66
  DataHubEventsConsumerPlatformResourceOffsetsStore
62
67
  ] = None
@@ -83,14 +88,6 @@ class DataHubEventsConsumer:
83
88
  else:
84
89
  logger.debug("Starting DataHub Events Consumer with no consumer ID.")
85
90
 
86
- @retry(
87
- retry=retry_if_exception_type(
88
- (HTTPError, ConnectionError, ChunkedEncodingError, Timeout)
89
- ),
90
- wait=wait_exponential(multiplier=1, min=2, max=30),
91
- stop=stop_after_attempt(3),
92
- reraise=True,
93
- )
94
91
  def poll_events(
95
92
  self,
96
93
  topic: str,
@@ -101,6 +98,36 @@ class DataHubEventsConsumer:
101
98
  """
102
99
  Fetch events for a specific topic.
103
100
  """
101
+ stop_condition = stop_never if self.infinite_retry else stop_after_attempt(15)
102
+
103
+ retry_strategy = Retrying(
104
+ retry=retry_if_exception_type(
105
+ (HTTPError, ConnectionError, ChunkedEncodingError, Timeout)
106
+ ),
107
+ wait=wait_exponential(multiplier=1, min=2, max=60),
108
+ stop=stop_condition,
109
+ reraise=True,
110
+ )
111
+
112
+ for attempt in retry_strategy:
113
+ with attempt:
114
+ return self._poll_events_impl(
115
+ topic, offset_id, limit, poll_timeout_seconds
116
+ )
117
+
118
+ # This should never be reached due to reraise=True, but mypy needs it
119
+ raise RuntimeError("Retry strategy exhausted without returning or raising")
120
+
121
+ def _poll_events_impl(
122
+ self,
123
+ topic: str,
124
+ offset_id: Optional[str] = None,
125
+ limit: Optional[int] = None,
126
+ poll_timeout_seconds: Optional[int] = None,
127
+ ) -> ExternalEventsResponse:
128
+ """
129
+ Internal implementation of poll_events.
130
+ """
104
131
  endpoint = f"{self.base_url}/v1/events/poll"
105
132
 
106
133
  # If the caller provided an offset_id, use it; otherwise fall back to self.offset_id.