apache-airflow-providers-http 4.4.1rc1__tar.gz → 4.4.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 (23) hide show
  1. {apache-airflow-providers-http-4.4.1rc1/apache_airflow_providers_http.egg-info → apache-airflow-providers-http-4.4.2}/PKG-INFO +22 -7
  2. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/README.rst +19 -3
  3. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/__init__.py +1 -1
  4. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/get_provider_info.py +1 -0
  5. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/hooks/http.py +22 -30
  6. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/operators/http.py +1 -1
  7. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2/apache_airflow_providers_http.egg-info}/PKG-INFO +22 -7
  8. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/requires.txt +1 -1
  9. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/pyproject.toml +6 -5
  10. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/setup.cfg +4 -5
  11. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/setup.py +1 -1
  12. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/LICENSE +0 -0
  13. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/MANIFEST.in +0 -0
  14. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/NOTICE +0 -0
  15. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/hooks/__init__.py +0 -0
  16. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/operators/__init__.py +0 -0
  17. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/sensors/__init__.py +0 -0
  18. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/airflow/providers/http/sensors/http.py +0 -0
  19. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/SOURCES.txt +0 -0
  20. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/dependency_links.txt +0 -0
  21. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/entry_points.txt +0 -0
  22. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/not-zip-safe +0 -0
  23. {apache-airflow-providers-http-4.4.1rc1 → apache-airflow-providers-http-4.4.2}/apache_airflow_providers_http.egg-info/top_level.txt +0 -0
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-http
3
- Version: 4.4.1rc1
3
+ Version: 4.4.2
4
4
  Summary: Provider for Apache Airflow. Implements apache-airflow-providers-http package
5
5
  Home-page: https://airflow.apache.org/
6
6
  Download-URL: https://archive.apache.org/dist/airflow/providers
7
7
  Author: Apache Software Foundation
8
8
  Author-email: dev@airflow.apache.org
9
9
  License: Apache License 2.0
10
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/
10
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/
11
11
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
12
12
  Project-URL: Source Code, https://github.com/apache/airflow
13
13
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
@@ -21,13 +21,12 @@ Classifier: Intended Audience :: System Administrators
21
21
  Classifier: Framework :: Apache Airflow
22
22
  Classifier: Framework :: Apache Airflow :: Provider
23
23
  Classifier: License :: OSI Approved :: Apache Software License
24
- Classifier: Programming Language :: Python :: 3.7
25
24
  Classifier: Programming Language :: Python :: 3.8
26
25
  Classifier: Programming Language :: Python :: 3.9
27
26
  Classifier: Programming Language :: Python :: 3.10
28
27
  Classifier: Programming Language :: Python :: 3.11
29
28
  Classifier: Topic :: System :: Monitoring
30
- Requires-Python: ~=3.7
29
+ Requires-Python: ~=3.8
31
30
  Description-Content-Type: text/x-rst
32
31
  License-File: LICENSE
33
32
  License-File: NOTICE
@@ -53,7 +52,7 @@ License-File: NOTICE
53
52
 
54
53
  Package ``apache-airflow-providers-http``
55
54
 
56
- Release: ``4.4.1rc1``
55
+ Release: ``4.4.2``
57
56
 
58
57
 
59
58
  `Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__
@@ -66,7 +65,7 @@ This is a provider package for ``http`` provider. All classes for this provider
66
65
  are in ``airflow.providers.http`` python package.
67
66
 
68
67
  You can find package information and changelog for the provider
69
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/>`_.
68
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/>`_.
70
69
 
71
70
 
72
71
  Installation
@@ -76,7 +75,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
76
75
  for the minimum Airflow version supported) via
77
76
  ``pip install apache-airflow-providers-http``
78
77
 
79
- The package supports the following python versions: 3.7,3.8,3.9,3.10,3.11
78
+ The package supports the following python versions: 3.8,3.9,3.10,3.11
80
79
 
81
80
  Requirements
82
81
  ------------
@@ -117,6 +116,22 @@ PIP package Version required
117
116
  Changelog
118
117
  ---------
119
118
 
119
+ 4.4.2
120
+ .....
121
+
122
+ .. note::
123
+ This release dropped support for Python 3.7
124
+
125
+ Misc
126
+ ~~~~
127
+
128
+ * ``Add note about dropping Python 3.7 for providers (#32015)``
129
+
130
+ .. Below changes are excluded from the changelog. Move them to
131
+ appropriate section above if needed. Do not delete the lines(!):
132
+ * ``Improve docstrings in providers (#31681)``
133
+ * ``Add D400 pydocstyle check - Providers (#31427)``
134
+
120
135
  4.4.1
121
136
  .....
122
137
 
@@ -19,7 +19,7 @@
19
19
 
20
20
  Package ``apache-airflow-providers-http``
21
21
 
22
- Release: ``4.4.1rc1``
22
+ Release: ``4.4.2``
23
23
 
24
24
 
25
25
  `Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__
@@ -32,7 +32,7 @@ This is a provider package for ``http`` provider. All classes for this provider
32
32
  are in ``airflow.providers.http`` python package.
33
33
 
34
34
  You can find package information and changelog for the provider
35
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/>`_.
35
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/>`_.
36
36
 
37
37
 
38
38
  Installation
@@ -42,7 +42,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
42
42
  for the minimum Airflow version supported) via
43
43
  ``pip install apache-airflow-providers-http``
44
44
 
45
- The package supports the following python versions: 3.7,3.8,3.9,3.10,3.11
45
+ The package supports the following python versions: 3.8,3.9,3.10,3.11
46
46
 
47
47
  Requirements
48
48
  ------------
@@ -83,6 +83,22 @@ PIP package Version required
83
83
  Changelog
84
84
  ---------
85
85
 
86
+ 4.4.2
87
+ .....
88
+
89
+ .. note::
90
+ This release dropped support for Python 3.7
91
+
92
+ Misc
93
+ ~~~~
94
+
95
+ * ``Add note about dropping Python 3.7 for providers (#32015)``
96
+
97
+ .. Below changes are excluded from the changelog. Move them to
98
+ appropriate section above if needed. Do not delete the lines(!):
99
+ * ``Improve docstrings in providers (#31681)``
100
+ * ``Add D400 pydocstyle check - Providers (#31427)``
101
+
86
102
  4.4.1
87
103
  .....
88
104
 
@@ -28,7 +28,7 @@ import packaging.version
28
28
 
29
29
  __all__ = ["__version__"]
30
30
 
31
- __version__ = "4.4.1"
31
+ __version__ = "4.4.2"
32
32
 
33
33
  try:
34
34
  from airflow import __version__ as airflow_version
@@ -29,6 +29,7 @@ def get_provider_info():
29
29
  "description": "`Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__\n",
30
30
  "suspended": False,
31
31
  "versions": [
32
+ "4.4.2",
32
33
  "4.4.1",
33
34
  "4.4.0",
34
35
  "4.3.0",
@@ -36,8 +36,7 @@ if TYPE_CHECKING:
36
36
 
37
37
 
38
38
  class HttpHook(BaseHook):
39
- """
40
- Interact with HTTP servers.
39
+ """Interact with HTTP servers.
41
40
 
42
41
  :param method: the API method to be called
43
42
  :param http_conn_id: :ref:`http connection<howto/connection:http>` that has the base
@@ -89,8 +88,7 @@ class HttpHook(BaseHook):
89
88
  # headers may be passed through directly or in the "extra" field in the connection
90
89
  # definition
91
90
  def get_conn(self, headers: dict[Any, Any] | None = None) -> requests.Session:
92
- """
93
- Returns http session for use with requests
91
+ """Create a Requests HTTP session.
94
92
 
95
93
  :param headers: additional headers to be passed through as a dictionary
96
94
  """
@@ -131,8 +129,7 @@ class HttpHook(BaseHook):
131
129
  extra_options: dict[str, Any] | None = None,
132
130
  **request_kwargs: Any,
133
131
  ) -> Any:
134
- r"""
135
- Performs the request
132
+ r"""Perform the request.
136
133
 
137
134
  :param endpoint: the endpoint to be called i.e. resource/v1/query?
138
135
  :param data: payload to be uploaded or request parameters
@@ -169,11 +166,11 @@ class HttpHook(BaseHook):
169
166
  return self.run_and_check(session, prepped_request, extra_options)
170
167
 
171
168
  def check_response(self, response: requests.Response) -> None:
172
- """
173
- Checks the status code and raise an AirflowException exception on non 2XX or 3XX
174
- status codes
169
+ """Check the status code and raise on failure.
175
170
 
176
- :param response: A requests response object
171
+ :param response: A requests response object.
172
+ :raise AirflowException: If the response contains a status code not
173
+ in the 2xx and 3xx range.
177
174
  """
178
175
  try:
179
176
  response.raise_for_status()
@@ -188,9 +185,7 @@ class HttpHook(BaseHook):
188
185
  prepped_request: requests.PreparedRequest,
189
186
  extra_options: dict[Any, Any],
190
187
  ) -> Any:
191
- """
192
- Grabs extra options like timeout and actually runs the request,
193
- checking for the result
188
+ """Grab extra options, actually run the request, and check the result.
194
189
 
195
190
  :param session: the session to be used to execute the request
196
191
  :param prepped_request: the prepared request generated in run()
@@ -227,10 +222,10 @@ class HttpHook(BaseHook):
227
222
  raise ex
228
223
 
229
224
  def run_with_advanced_retry(self, _retry_args: dict[Any, Any], *args: Any, **kwargs: Any) -> Any:
230
- """
231
- Runs Hook.run() with a Tenacity decorator attached to it. This is useful for
232
- connectors which might be disturbed by intermittent issues and should not
233
- instantly fail.
225
+ """Run the hook with retry.
226
+
227
+ This is useful for connectors which might be disturbed by intermittent
228
+ issues and should not instantly fail.
234
229
 
235
230
  :param _retry_args: Arguments which define the retry behaviour.
236
231
  See Tenacity documentation at https://github.com/jd/tenacity
@@ -252,13 +247,13 @@ class HttpHook(BaseHook):
252
247
  return self._retry_obj(self.run, *args, **kwargs)
253
248
 
254
249
  def url_from_endpoint(self, endpoint: str | None) -> str:
255
- """Combine base url with endpoint"""
250
+ """Combine base url with endpoint."""
256
251
  if self.base_url and not self.base_url.endswith("/") and endpoint and not endpoint.startswith("/"):
257
252
  return self.base_url + "/" + endpoint
258
253
  return (self.base_url or "") + (endpoint or "")
259
254
 
260
255
  def test_connection(self):
261
- """Test HTTP Connection"""
256
+ """Test HTTP Connection."""
262
257
  try:
263
258
  self.run()
264
259
  return True, "Connection successfully tested"
@@ -267,8 +262,7 @@ class HttpHook(BaseHook):
267
262
 
268
263
 
269
264
  class HttpAsyncHook(BaseHook):
270
- """
271
- Interact with HTTP servers using Python Async.
265
+ """Interact with HTTP servers asynchronously.
272
266
 
273
267
  :param method: the API method to be called
274
268
  :param http_conn_id: http connection id that has the base
@@ -307,14 +301,14 @@ class HttpAsyncHook(BaseHook):
307
301
  headers: dict[str, Any] | None = None,
308
302
  extra_options: dict[str, Any] | None = None,
309
303
  ) -> ClientResponse:
310
- r"""
311
- Performs an asynchronous HTTP request call
304
+ """Perform an asynchronous HTTP request call.
312
305
 
313
- :param endpoint: the endpoint to be called i.e. resource/v1/query?
314
- :param data: payload to be uploaded or request parameters
315
- :param headers: additional headers to be passed through as a dictionary
306
+ :param endpoint: Endpoint to be called, i.e. ``resource/v1/query?``.
307
+ :param data: Payload to be uploaded or request parameters.
308
+ :param headers: Additional headers to be passed through as a dict.
316
309
  :param extra_options: Additional kwargs to pass when creating a request.
317
- For example, ``run(json=obj)`` is passed as ``aiohttp.ClientSession().get(json=obj)``
310
+ For example, ``run(json=obj)`` is passed as
311
+ ``aiohttp.ClientSession().get(json=obj)``.
318
312
  """
319
313
  extra_options = extra_options or {}
320
314
 
@@ -399,9 +393,7 @@ class HttpAsyncHook(BaseHook):
399
393
  await asyncio.sleep(self.retry_delay)
400
394
 
401
395
  def _retryable_error_async(self, exception: ClientResponseError) -> bool:
402
- """
403
- Determines whether or not an exception that was thrown might be successful
404
- on a subsequent attempt.
396
+ """Determine whether an exception may successful on a subsequent attempt.
405
397
 
406
398
  It considers the following to be retryable:
407
399
  - requests_exceptions.ConnectionError
@@ -31,7 +31,7 @@ if TYPE_CHECKING:
31
31
 
32
32
  class SimpleHttpOperator(BaseOperator):
33
33
  """
34
- Calls an endpoint on an HTTP system to execute an action
34
+ Calls an endpoint on an HTTP system to execute an action.
35
35
 
36
36
  .. seealso::
37
37
  For more information on how to use this operator, take a look at the guide:
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-http
3
- Version: 4.4.1rc1
3
+ Version: 4.4.2
4
4
  Summary: Provider for Apache Airflow. Implements apache-airflow-providers-http package
5
5
  Home-page: https://airflow.apache.org/
6
6
  Download-URL: https://archive.apache.org/dist/airflow/providers
7
7
  Author: Apache Software Foundation
8
8
  Author-email: dev@airflow.apache.org
9
9
  License: Apache License 2.0
10
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/
10
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/
11
11
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
12
12
  Project-URL: Source Code, https://github.com/apache/airflow
13
13
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
@@ -21,13 +21,12 @@ Classifier: Intended Audience :: System Administrators
21
21
  Classifier: Framework :: Apache Airflow
22
22
  Classifier: Framework :: Apache Airflow :: Provider
23
23
  Classifier: License :: OSI Approved :: Apache Software License
24
- Classifier: Programming Language :: Python :: 3.7
25
24
  Classifier: Programming Language :: Python :: 3.8
26
25
  Classifier: Programming Language :: Python :: 3.9
27
26
  Classifier: Programming Language :: Python :: 3.10
28
27
  Classifier: Programming Language :: Python :: 3.11
29
28
  Classifier: Topic :: System :: Monitoring
30
- Requires-Python: ~=3.7
29
+ Requires-Python: ~=3.8
31
30
  Description-Content-Type: text/x-rst
32
31
  License-File: LICENSE
33
32
  License-File: NOTICE
@@ -53,7 +52,7 @@ License-File: NOTICE
53
52
 
54
53
  Package ``apache-airflow-providers-http``
55
54
 
56
- Release: ``4.4.1rc1``
55
+ Release: ``4.4.2``
57
56
 
58
57
 
59
58
  `Hypertext Transfer Protocol (HTTP) <https://www.w3.org/Protocols/>`__
@@ -66,7 +65,7 @@ This is a provider package for ``http`` provider. All classes for this provider
66
65
  are in ``airflow.providers.http`` python package.
67
66
 
68
67
  You can find package information and changelog for the provider
69
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/>`_.
68
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/>`_.
70
69
 
71
70
 
72
71
  Installation
@@ -76,7 +75,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
76
75
  for the minimum Airflow version supported) via
77
76
  ``pip install apache-airflow-providers-http``
78
77
 
79
- The package supports the following python versions: 3.7,3.8,3.9,3.10,3.11
78
+ The package supports the following python versions: 3.8,3.9,3.10,3.11
80
79
 
81
80
  Requirements
82
81
  ------------
@@ -117,6 +116,22 @@ PIP package Version required
117
116
  Changelog
118
117
  ---------
119
118
 
119
+ 4.4.2
120
+ .....
121
+
122
+ .. note::
123
+ This release dropped support for Python 3.7
124
+
125
+ Misc
126
+ ~~~~
127
+
128
+ * ``Add note about dropping Python 3.7 for providers (#32015)``
129
+
130
+ .. Below changes are excluded from the changelog. Move them to
131
+ appropriate section above if needed. Do not delete the lines(!):
132
+ * ``Improve docstrings in providers (#31681)``
133
+ * ``Add D400 pydocstyle check - Providers (#31427)``
134
+
120
135
  4.4.1
121
136
  .....
122
137
 
@@ -1,5 +1,5 @@
1
1
  aiohttp
2
- apache-airflow>=2.4.0.dev0
2
+ apache-airflow>=2.4.0
3
3
  asgiref
4
4
  requests>=2.26.0
5
5
  requests_toolbelt
@@ -26,6 +26,9 @@ target-version = ['py37', 'py38', 'py39', 'py310']
26
26
  requires = ['setuptools==67.2.0']
27
27
  build-backend = "setuptools.build_meta"
28
28
 
29
+ [project]
30
+ requires-python = ">=3.8"
31
+
29
32
  [tool.ruff]
30
33
  typing-modules = ["airflow.typing_compat"]
31
34
  line-length = 110
@@ -35,12 +38,10 @@ extend-exclude = [
35
38
  "airflow/providers/google/ads/_vendor/*",
36
39
  # The files generated by stubgen aren't 100% valid syntax it turns out, and we don't ship them, so we can
37
40
  # ignore them in ruff
38
- "airflow/providers/common/sql/*/*.pyi"
41
+ "airflow/providers/common/sql/*/*.pyi",
42
+ "airflow/migrations/versions/*.py"
39
43
  ]
40
44
 
41
- # TODO: Bump to Python 3.8 when support for Python 3.7 is dropped in Airflow.
42
- target-version = "py37"
43
-
44
45
  extend-select = [
45
46
  "I", # Missing required import (auto-fixable)
46
47
  "UP", # Pyupgrade
@@ -53,7 +54,7 @@ extend-select = [
53
54
  "D106",
54
55
  "D2",
55
56
  "D3",
56
- # "D400", WIP: see #31135
57
+ "D400",
57
58
  # "D401", # Not enabled by ruff, but we don't want it
58
59
  "D402",
59
60
  "D403",
@@ -21,14 +21,13 @@ classifiers =
21
21
  Framework :: Apache Airflow
22
22
  Framework :: Apache Airflow :: Provider
23
23
  License :: OSI Approved :: Apache Software License
24
- Programming Language :: Python :: 3.7
25
24
  Programming Language :: Python :: 3.8
26
25
  Programming Language :: Python :: 3.9
27
26
  Programming Language :: Python :: 3.10
28
27
  Programming Language :: Python :: 3.11
29
28
  Topic :: System :: Monitoring
30
29
  project_urls =
31
- Documentation=https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.1/
30
+ Documentation=https://airflow.apache.org/docs/apache-airflow-providers-http/4.4.2/
32
31
  Bug Tracker=https://github.com/apache/airflow/issues
33
32
  Source Code=https://github.com/apache/airflow
34
33
  Slack Chat=https://s.apache.org/airflow-slack
@@ -41,14 +40,14 @@ python_tag = py3
41
40
  [options]
42
41
  zip_safe = False
43
42
  include_package_data = True
44
- python_requires = ~=3.7
43
+ python_requires = ~=3.8
45
44
  packages = find:
46
45
  setup_requires =
47
46
  setuptools
48
47
  wheel
49
48
  install_requires =
50
49
  aiohttp
51
- apache-airflow>=2.4.0.dev0
50
+ apache-airflow>=2.4.0
52
51
  asgiref
53
52
  requests>=2.26.0
54
53
  requests_toolbelt
@@ -61,6 +60,6 @@ apache_airflow_provider =
61
60
  packages = airflow.providers.http
62
61
 
63
62
  [egg_info]
64
- tag_build = rc1
63
+ tag_build =
65
64
  tag_date = 0
66
65
 
@@ -26,7 +26,7 @@
26
26
 
27
27
  from setuptools import find_namespace_packages, setup
28
28
 
29
- version = "4.4.1"
29
+ version = "4.4.2"
30
30
 
31
31
 
32
32
  def do_setup():