* feature(urllib3): add urllib3 client
* test(urllib3): test urllib3 client
* test(urllib3): update http test for urllib3
* test(urllib3): use urllib3 client instead of curl
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* style(urllib3): remove unused imports
* style(urllib3): fix pre-commit errors
* ci(urllib3): remove pycurl dependency
* docs(urllib3): add docs
* style(urllib3): fix failing gh-workflow py3.8
* style(urllib3): add mention of ProxyManager
* style(urllib3): fix pre-commit issues
* style(pycurl): remove curl-related code
* feat(urllib3): add missing request features (header, auth, ssl, proxy, redirects)
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(urllib3): improve styling
* test(urllib3): add new tests
* fix(urllib3): fix request auth
* fix(aws): validate certificate on request
* style(): add missing exports
* feat(aws): add ssl certificate verification from boto
* feat(urllib): try to use certifi.where() if request.ca_certs are not provided
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* ci(pydocstyle): add missing docstring in public class
* test(urllib3): improve test case
* ci(pydocstyle): fix multi-line docstring summary should start at the first line
* feat(urllib3): remove assert_hostname
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* test(boto): add test for get_cert_path returning .pem file path
* test(urllib3): add test for _get_pool_key_parts method
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Asif Saif Uddin <auvipy@gmail.com>
Co-authored-by: Tomer Nosrati <tomer.nosrati@gmail.com>
* Add transports based on Azure PaaS
This pull request adds two new transport implementations:
- `azurestoragequeues` is implemented on top of Azure Storage
Queues [1]. This offers a simple but scalable and low-cost PaaS
transport for Celery users in Azure. The transport is intended to be
used in conjunction with the Azure Block Blob Storage backend [2].
- `azureservicebus` is implemented on top of Azure Service Bus [3] and
offers PaaS support for more demanding Celery workloads in Azure. The
transport is intended to be used in conjunction with the Azure
CosmosDB backend [4].
This pull request was created together with @ankurokok, @dkisselev,
@evandropaula, @martinpeck and @michaelperel.
[1] https://azure.microsoft.com/en-us/services/storage/queues/
[2] https://github.com/celery/celery/pull/4685
[3] https://azure.microsoft.com/en-us/services/service-bus/
[4] https://github.com/celery/celery/pull/4720
* Exclude Azure transports from code coverage
There is test coverage for the transports but the tests require Azure
credentials to run (passed via environment variables) so codecov doesn't
exercise them.
* Remove env vars to configure transport
* Remove abbreviations