apache-airflow-providers-http 4.11.1rc1__py3-none-any.whl → 4.12.0rc1__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.
@@ -215,7 +215,7 @@ Third party Apache 2.0 licenses
215
215
 
216
216
  The following components are provided under the Apache 2.0 License.
217
217
  See project link for details. The text of each license is also included
218
- at licenses/LICENSE-[project].txt.
218
+ at 3rd-party-licenses/LICENSE-[project].txt.
219
219
 
220
220
  (ALv2 License) hue v4.3.0 (https://github.com/cloudera/hue/)
221
221
  (ALv2 License) jqclock v2.3.0 (https://github.com/JohnRDOrazio/jQuery-Clock-Plugin)
@@ -227,7 +227,7 @@ MIT licenses
227
227
  ========================================================================
228
228
 
229
229
  The following components are provided under the MIT License. See project link for details.
230
- The text of each license is also included at licenses/LICENSE-[project].txt.
230
+ The text of each license is also included at 3rd-party-licenses/LICENSE-[project].txt.
231
231
 
232
232
  (MIT License) jquery v3.5.1 (https://jquery.org/license/)
233
233
  (MIT License) dagre-d3 v0.6.4 (https://github.com/cpettitt/dagre-d3)
@@ -243,11 +243,11 @@ The text of each license is also included at licenses/LICENSE-[project].txt.
243
243
  BSD 3-Clause licenses
244
244
  ========================================================================
245
245
  The following components are provided under the BSD 3-Clause license. See project links for details.
246
- The text of each license is also included at licenses/LICENSE-[project].txt.
246
+ The text of each license is also included at 3rd-party-licenses/LICENSE-[project].txt.
247
247
 
248
248
  (BSD 3 License) d3 v5.16.0 (https://d3js.org)
249
249
  (BSD 3 License) d3-shape v2.1.0 (https://github.com/d3/d3-shape)
250
250
  (BSD 3 License) cgroupspy 0.2.1 (https://github.com/cloudsigma/cgroupspy)
251
251
 
252
252
  ========================================================================
253
- See licenses/LICENSES-ui.txt for packages used in `/airflow/www`
253
+ See 3rd-party-licenses/LICENSES-ui.txt for packages used in `/airflow/www`
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "4.11.1"
32
+ __version__ = "4.12.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.7.0"
@@ -28,8 +28,9 @@ def get_provider_info():
28
28
  "name": "Hypertext Transfer Protocol (HTTP)",
29
29
  "description": "`Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__\n",
30
30
  "state": "ready",
31
- "source-date-epoch": 1716287966,
31
+ "source-date-epoch": 1718604867,
32
32
  "versions": [
33
+ "4.12.0",
33
34
  "4.11.1",
34
35
  "4.11.0",
35
36
  "4.10.1",
@@ -89,6 +89,8 @@ class HttpOperator(BaseOperator):
89
89
  :param tcp_keep_alive_interval: The TCP Keep Alive interval parameter (corresponds to
90
90
  ``socket.TCP_KEEPINTVL``)
91
91
  :param deferrable: Run operator in the deferrable mode
92
+ :param retry_args: Arguments which define the retry behaviour.
93
+ See Tenacity documentation at https://github.com/jd/tenacity
92
94
  """
93
95
 
94
96
  conn_id_field = "http_conn_id"
@@ -120,6 +122,7 @@ class HttpOperator(BaseOperator):
120
122
  tcp_keep_alive_count: int = 20,
121
123
  tcp_keep_alive_interval: int = 30,
122
124
  deferrable: bool = conf.getboolean("operators", "default_deferrable", fallback=False),
125
+ retry_args: dict[str, Any] | None = None,
123
126
  **kwargs: Any,
124
127
  ) -> None:
125
128
  super().__init__(**kwargs)
@@ -139,6 +142,7 @@ class HttpOperator(BaseOperator):
139
142
  self.tcp_keep_alive_count = tcp_keep_alive_count
140
143
  self.tcp_keep_alive_interval = tcp_keep_alive_interval
141
144
  self.deferrable = deferrable
145
+ self.retry_args = retry_args
142
146
 
143
147
  @property
144
148
  def hook(self) -> HttpHook:
@@ -167,7 +171,12 @@ class HttpOperator(BaseOperator):
167
171
 
168
172
  def execute_sync(self, context: Context) -> Any:
169
173
  self.log.info("Calling HTTP method")
170
- response = self.hook.run(self.endpoint, self.data, self.headers, self.extra_options)
174
+ if self.retry_args:
175
+ response = self.hook.run_with_advanced_retry(
176
+ self.retry_args, self.endpoint, self.data, self.headers, self.extra_options
177
+ )
178
+ else:
179
+ response = self.hook.run(self.endpoint, self.data, self.headers, self.extra_options)
171
180
  response = self.paginate_sync(response=response)
172
181
  return self.process_response(context=context, response=response)
173
182
 
@@ -180,7 +189,12 @@ class HttpOperator(BaseOperator):
180
189
  next_page_params = self.pagination_function(response)
181
190
  if not next_page_params:
182
191
  break
183
- response = self.hook.run(**self._merge_next_page_parameters(next_page_params))
192
+ if self.retry_args:
193
+ response = self.hook.run_with_advanced_retry(
194
+ self.retry_args, **self._merge_next_page_parameters(next_page_params)
195
+ )
196
+ else:
197
+ response = self.hook.run(**self._merge_next_page_parameters(next_page_params))
184
198
  all_responses.append(response)
185
199
  return all_responses
186
200
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-http
3
- Version: 4.11.1rc1
3
+ Version: 4.12.0rc1
4
4
  Summary: Provider package apache-airflow-providers-http for Apache Airflow
5
5
  Keywords: airflow-provider,http,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -27,8 +27,8 @@ Requires-Dist: asgiref
27
27
  Requires-Dist: requests>=2.27.0,<3
28
28
  Requires-Dist: requests_toolbelt
29
29
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
30
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-http/4.11.1/changelog.html
31
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.11.1
30
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-http/4.12.0/changelog.html
31
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.12.0
32
32
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
33
33
  Project-URL: Source Code, https://github.com/apache/airflow
34
34
  Project-URL: Twitter, https://twitter.com/ApacheAirflow
@@ -78,7 +78,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
78
78
 
79
79
  Package ``apache-airflow-providers-http``
80
80
 
81
- Release: ``4.11.1.rc1``
81
+ Release: ``4.12.0.rc1``
82
82
 
83
83
 
84
84
  `Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__
@@ -91,7 +91,7 @@ This is a provider package for ``http`` provider. All classes for this provider
91
91
  are in ``airflow.providers.http`` python package.
92
92
 
93
93
  You can find package information and changelog for the provider
94
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.11.1/>`_.
94
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.12.0/>`_.
95
95
 
96
96
  Installation
97
97
  ------------
@@ -116,4 +116,4 @@ PIP package Version required
116
116
  ===================== ==================
117
117
 
118
118
  The changelog for the provider package can be found in the
119
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-http/4.11.1/changelog.html>`_.
119
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-http/4.12.0/changelog.html>`_.
@@ -1,15 +1,15 @@
1
- airflow/providers/http/LICENSE,sha256=ywUBpKZc7Jb96rVt5I3IDbg7dIJAbUSHkuoDcF3jbH4,13569
2
- airflow/providers/http/__init__.py,sha256=p7vc42RAw0HdXmXr_G957yUSUeQhpO57ccXonPY495M,1492
3
- airflow/providers/http/get_provider_info.py,sha256=LHXHn0xrIvKNjCoLxE__41MI6qP76KI5MM2NqOED3zE,3633
1
+ airflow/providers/http/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
+ airflow/providers/http/__init__.py,sha256=jrK294-eF84O4Ui9pB0gKcNxFX0gRF2BRJC63ICMQhI,1492
3
+ airflow/providers/http/get_provider_info.py,sha256=SA-JTSoROGMsRkKn6UdCjNOLrduy4hbSCaZhaKvg3t0,3655
4
4
  airflow/providers/http/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
5
5
  airflow/providers/http/hooks/http.py,sha256=rt6gH-1RiQEobnuxAECboemhEntXOIjIWaBn-SCoW7Y,18777
6
6
  airflow/providers/http/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
7
- airflow/providers/http/operators/http.py,sha256=cAXy5UFoZ2MANFzBjpecer4NbSu2BtmvNwNU92Zgb34,17549
7
+ airflow/providers/http/operators/http.py,sha256=D_uaFftgXahh-I96AONgnYY3JrgE9fIBf9lNiWWg4G0,18206
8
8
  airflow/providers/http/sensors/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
9
9
  airflow/providers/http/sensors/http.py,sha256=LLrwCko1bqPfiRsWGvG7IVloA-YqV3DgkqqxvOP-Ac4,8109
10
10
  airflow/providers/http/triggers/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
11
11
  airflow/providers/http/triggers/http.py,sha256=Wp29_-4sUDLqoMX9FREqU64yiDAJEJaXxtmLLgk4hXM,7631
12
- apache_airflow_providers_http-4.11.1rc1.dist-info/entry_points.txt,sha256=65Rk4MYlxxtwo7y7-uNv4KS7MfoBnILhMjRQmNbRo1Q,100
13
- apache_airflow_providers_http-4.11.1rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
14
- apache_airflow_providers_http-4.11.1rc1.dist-info/METADATA,sha256=B-_cL8wZVocS6bRLAZz2pi4KveJwWpNjb4QjofHcU3c,4942
15
- apache_airflow_providers_http-4.11.1rc1.dist-info/RECORD,,
12
+ apache_airflow_providers_http-4.12.0rc1.dist-info/entry_points.txt,sha256=65Rk4MYlxxtwo7y7-uNv4KS7MfoBnILhMjRQmNbRo1Q,100
13
+ apache_airflow_providers_http-4.12.0rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
14
+ apache_airflow_providers_http-4.12.0rc1.dist-info/METADATA,sha256=ri53KGKBfdiiae7ycXo4dBKvvFx2qM21BaM7yRpK3f0,4942
15
+ apache_airflow_providers_http-4.12.0rc1.dist-info/RECORD,,