Skip to main content

CoreHTTP Library for Python

Project description

Core HTTP shared client library for Python

corehttp provides shared exceptions and modules for Python SDK client libraries.

Getting started

Typically, you will not need to install corehttp, as it will be installed when you install one of the client libraries using it.

Transports

To use corehttp, you will need to choose a transport implementation. corehttp provides the following transports:

Synchronous transports:

  • RequestsTransport - A synchronous transport based on the Requests library.
  • HttpXTransport - An synchronous transport based on the HTTPX library.

Asynchronous transports:

  • AioHttpTransport - An asynchronous transport based on the aiohttp library.
  • AsyncHttpXTransport - An asynchronous transport based on the HTTPX library.

Each transport has its own dependencies, which you can install using the corehttp extras:

# Install individually.
pip install corehttp[requests]
pip install corehttp[aiohttp]
pip install corehttp[httpx]

# Install multiple.
pip install corehttp[requests,httpx]

If no transports are specified, corehttp will default to using RequestsTransport for synchronous pipeline requests and AioHttpTransport for asynchronous pipeline requests.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Release History

1.0.0b2 (2023-11-14)

Features Added

  • Added the initial implementation of the HTTPX transport. #32813

Breaking Changes

  • Removed requests as a default dependency of corehttp. This is now an "extras" dependency and can be installed via corehttp[requests]. #32813
  • Renamed the aio extra to aiohttp. #32813

Bugs Fixed

  • Fixed an issue with multipart/form-data in the async transport where data was not getting encoded into the request body. #32473
  • Fixed an issue with connection_verify, connection_cert, and connection_timeout not being propagated to underlying transports. #33057
  • Fixed an issue with the aiohttp transport not using SSL by default. #33057

Other Changes

  • Added extras for httpx. #32813

1.0.0b1 (2023-10-18)

  • Initial Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

corehttp-1.0.0b2.tar.gz (105.2 kB view details)

Uploaded Source

Built Distribution

corehttp-1.0.0b2-py3-none-any.whl (102.7 kB view details)

Uploaded Python 3

File details

Details for the file corehttp-1.0.0b2.tar.gz.

File metadata

  • Download URL: corehttp-1.0.0b2.tar.gz
  • Upload date:
  • Size: 105.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: RestSharp/106.13.0.0

File hashes

Hashes for corehttp-1.0.0b2.tar.gz
Algorithm Hash digest
SHA256 74349f6c87882ebfd2c1fd6de1b94aed508b5c74ad2704dd0d54762c6f49f760
MD5 024b88c44987495287c8fa638e65c124
BLAKE2b-256 25d3189acebbd72cca6415f33d7b37d87c6a3c029218f65b20ef8d030736a6b0

See more details on using hashes here.

File details

Details for the file corehttp-1.0.0b2-py3-none-any.whl.

File metadata

  • Download URL: corehttp-1.0.0b2-py3-none-any.whl
  • Upload date:
  • Size: 102.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: RestSharp/106.13.0.0

File hashes

Hashes for corehttp-1.0.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 3f4d402b87a9133b129b0cfef3877d4d6dc78236f0547d2733d8221d6bc2ab07
MD5 1ccce4b4b344a9637af8aa0e83e1386e
BLAKE2b-256 aa84a88185536f6f60e6c2fc173127feda80369cdd5b83f4b8e9b256825ee1bc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page