* Lifecycle integration tests.
Signed-off-by: dblock <[email protected]>
* Added a test that makes sure the slash is properly encoded.
Signed-off-by: dblock <[email protected]>
* Added more tests for signer and _make_path.
Signed-off-by: Nathalie Jonathan <[email protected]>
* Prevent AIOHttpConnection from encoding the url a second time.
Signed-off-by: Nathalie Jonathan <[email protected]>
---------
Signed-off-by: dblock <[email protected]>
Signed-off-by: Nathalie Jonathan <[email protected]>
Co-authored-by: dblock <[email protected]>
* Upgrade syntax with pyupgrade --py38-plus
Signed-off-by: Hugo van Kemenade <[email protected]>
* Convert to f-strings with flynt
Signed-off-by: Hugo van Kemenade <[email protected]>
* Format with Black
Signed-off-by: Hugo van Kemenade <[email protected]>
* Remove redundant mock backport dependency
Signed-off-by: Hugo van Kemenade <[email protected]>
* isort imports
Signed-off-by: Hugo van Kemenade <[email protected]>
* Add changelog entry
Signed-off-by: Hugo van Kemenade <[email protected]>
---------
Signed-off-by: Hugo van Kemenade <[email protected]>
* Don't create universal wheel for Python 3 only
Signed-off-by: Hugo van Kemenade <[email protected]>
* Update Black target version to match min Python supported
Signed-off-by: Hugo van Kemenade <[email protected]>
* Upgrade files using six to Python 3 syntax
Signed-off-by: Hugo van Kemenade <[email protected]>
* Remove redundant six dependency
Signed-off-by: Hugo van Kemenade <[email protected]>
* Format with Black
Signed-off-by: Hugo van Kemenade <[email protected]>
* Add changelog entry
Signed-off-by: Hugo van Kemenade <[email protected]>
---------
Signed-off-by: Hugo van Kemenade <[email protected]>
* Introduced service time metrics to opensearch-py client
Signed-off-by: saimedhi <[email protected]>
* Introduced service time metrics to opensearch-py client
Signed-off-by: saimedhi <[email protected]>
* Introduced service time metrics to opensearch-py client
Signed-off-by: saimedhi <[email protected]>
* Added service time metrics
Signed-off-by: saimedhi <[email protected]>
---------
Signed-off-by: saimedhi <[email protected]>
Signed-off-by: Sai Medhini Reddy Maryada <[email protected]>
* Fix string/tuple/no auth on AsyncHttpConnection class. Fixes#283
Signed-off-by: dannosaur <[email protected]>
* Update for PR comments. Add tests.
Signed-off-by: dannosaur <[email protected]>
* Moving tests to its own file.
Also had to install asynctest into the dev-requirements to get access to the context managers necessary to mock out aiohttp.
Signed-off-by: dannosaur <[email protected]>
* Update CHANGELOG
Signed-off-by: dannosaur <[email protected]>
* Linter fixes. Add license text to new file.
Signed-off-by: dannosaur <[email protected]>
* Move AsyncContextManagerMock to utils package for future re-use
Signed-off-by: dannosaur <[email protected]>
* Lint
Signed-off-by: dannosaur <[email protected]>
* Refactor async tests - remove asynctest package
Signed-off-by: dannosaur <[email protected]>
* Switch out to using aiounittest for async testing prior to py3.8
Signed-off-by: dannosaur <[email protected]>
* Use RequestContextManager from opensearchpy._asycn._extra_imports
Signed-off-by: dannosaur <[email protected]>
* Simplify test somewhat, move to `test_async` since all other async tests are ignored on runners <3.6
Signed-off-by: dannosaur <[email protected]>
* Lint
Signed-off-by: dannosaur <[email protected]>
---------
Signed-off-by: dannosaur <[email protected]>
Signed-off-by: Daniel (dB.) Doubrovkine <[email protected]>
Co-authored-by: Daniel (dB.) Doubrovkine <[email protected]>
* Fix DeprecationWarning raised by urllib3 1.26.13
urllib3 has started to emit a DeprecationWarning whenever
HTTPResponse.getheaders() is called since version 1.26.13.
This changes the one place where this is done to instead use
HTTPResponse.headers instead, which is the recommend way of retrieving
the headers going forwards.
Signed-off-by: Jeppe Fihl-Pearson <[email protected]>
* Add CHANGELOG entry
Signed-off-by: Jeppe Fihl-Pearson <[email protected]>
Signed-off-by: Jeppe Fihl-Pearson <[email protected]>
* Check OpenSSL environment variables before defaulting to certifi
Signed-off-by: Roger Aiudi <[email protected]>
* Fix formatting
Signed-off-by: Roger Aiudi <[email protected]>
* Moved CA_CERTS to the base Connection module
Signed-off-by: Roger Aiudi <[email protected]>
* Updated requests Connection to use common CA_CERTS by default
Signed-off-by: Roger Aiudi <[email protected]>
* Pass nox linting
Signed-off-by: Roger Aiudi <[email protected]>
* Update CHANGELOG.md and USER_GUIDE.md
Signed-off-by: Roger Aiudi <[email protected]>
* Updated AIOHttpConnection to only load CA_CERTS if verify_certs is True
Signed-off-by: Roger Aiudi <[email protected]>
* Added test cases for CA_CERTS handling in each Connection implementation
Signed-off-by: Roger Aiudi <[email protected]>
* Move CA cert handling to Connection.default_ca_certs()
Add test cases for the different CA cert configurations
Signed-off-by: Roger Aiudi <[email protected]>
* Update actions to test unsupported Python versions on ubuntu-20.04
Signed-off-by: Roger Aiudi <[email protected]>
* Fix Python versions being interpreted as floats
Signed-off-by: Roger Aiudi <[email protected]>
* Workaround Monkeypatch not available on old pytest versions
Signed-off-by: Roger Aiudi <[email protected]>
Signed-off-by: Roger Aiudi <[email protected]>
Co-authored-by: Harsha Vamsi Kalluri <[email protected]>
Some OpenSearch REST APIs will return a Content-Type of text/plain for certain
status codes which will trigger logging when the response is not parsable as
JSON. Checking the content-type first avoids this error.
This frequently happens with 401s, which occurs when we rotate user keys.
The input that triggers this behaviour can be triggered with `curl`:
```
$ curl -k -u"admin:wrong" -w"\n%{http_code}\n%{content_type}\n" https://localhost:9200/_cluster/health
Unauthorized
401
text/plain; charset=UTF-8
```
Signed-off-by: Trevor McCulloch <[email protected]>