0.8.0 – 2017-05-20
More information about this release can be found on the 0.8.0 milestone.
- Add UserAgentBuilder to provide more control over generated User-Agent
- Include _validate_certificate in the lits of picked attributes on the
- Fix backwards incompatibility in get_encodings_from_content
0.7.1 – 2017-02-13
More information about this release can be found on the 0.7.1 milestone.
- Fixed monkey-patching for the AppEngineAdapter.
- Make it easier to disable certificate verification when monkey-patching
- Handle multipart/form-data bodies without a trailing CRLF.
0.7.0 – 2016-07-21
More information about this release can be found on the 0.7.0 milestone.
- Add BaseUrlSession to allow developers to have a session that has a
“Base” URL. See the documentation for more details and examples.
- Split the logic of stream_response_to_file into two separate functions:
- get_download_file_path to generate the file name from the Response.
- stream_response_to_file which will use get_download_file_path if
- Fixed the issue for people using very old versions of Requests where they
would see an ImportError from requests_toolbelt._compat when trying to
0.6.2 – 2016-05-10
- When passing a timeout via Requests, it was not appropriately translated to
the timeout that the urllib3 code was expecting.
0.6.1 – 2016-05-05
- Remove assertion about request URLs in the AppEngineAdapter.
- Prevent pip from installing requests 3.0.0 when that is released until we
are ready to handle it.
0.6.0 – 2016-01-27
More information about this release can be found on the 0.6.0 milestone.
- Add AppEngineAdapter to support developers using Google’s AppEngine
platform with Requests.
- Add GuessProxyAuth class to support guessing between Basic and Digest
Authentication for proxies.
- Ensure that proxies use the correct TLS version when using the
- Fix an AttributeError when using the HTTPProxyDigestAuth class.
- Drop testing support for Python 3.2. virtualenv and pip have stopped
supporting it meaning that it is harder to test for this with our CI
infrastructure. Moving forward we will make a best-effort attempt to
support 3.2 but will not test for it.
0.5.1 – 2015-12-16
More information about this release can be found on the 0.5.1 milestone.
- Now papers over the differences in requests’ super_len function from
versions prior to 2.9.0 and versions 2.9.0 and later.
0.5.0 – 2015-11-24
More information about this release can be found on the milestone
- The tee submodule was added to requests_toolbelt.downloadutils. It
allows you to iterate over the bytes of a response while also writing them
to a file. The tee.tee function, expects you to pass an open file
object, while tee.tee_to_file will use the provided file name to open
the file for you.
- Added a new parameter to requests_toolbelt.utils.user_agent that allows
the user to specify additional items.
- Added nested form-data helper,
- Added the ForgetfulCookieJar to requests_toolbelt.cookies.
- Added utilities for dumping the information about a request-response cycle
- Implemented the API described in the requests_toolbelt.threaded module
docstring, i.e., added requests_toolbelt.threaded.map as an available
- Now papers over the API differences in versions of requests installed from
system packages versus versions of requests installed from PyPI.
- Allow string types for SourceAddressAdapter.
0.4.0 – 2015-04-03
For more information about this release, please see milestone 0.4.0
on the project’s page.
- A naive implemenation of a thread pool is now included in the toolbelt. See
the docs in docs/threading.rst or on Read The Docs.
- The StreamingIterator now accepts files (such as sys.stdin) without
a specific length and will properly stream them.
- The MultipartEncoder now accepts exactly the same format of fields as
requests’ files parameter does. In other words, you can now also pass in
extra headers to add to a part in the body. You can also now specify a
custom Content-Type for a part.
- An implementation of HTTP Digest Authentication for Proxies is now included.
- A transport adapter that allows a user to specify a specific Certificate
Fingerprint is now included in the toolbelt.
- A transport adapter that simplifies how users specify socket options is now
- A transport adapter that simplifies how users can specify TCP Keep-Alive
options is now included in the toolbelt.
- Deprecated functions from requests.utils are now included and
- An authentication tool that allows users to specify how to authenticate to
several different domains at once is now included.
- A function to save streamed responses to disk by analyzing the
Content-Disposition header is now included in the toolbelt.
- The MultipartEncoder will now allow users to upload files larger than
4GB on 32-bit systems.
- The MultipartEncoder will now accept empty unicode strings for form
0.3.1 – 2014-06-23
- Fix the fact that 0.3.0 bundle did not include the StreamingIterator
0.3.0 – 2014-05-21
- Complete rewrite of MultipartEncoder fixes bug where bytes were lost in
- MultipartDecoder to accept multipart/form-data response bodies and
parse them into an easy to use object.
- SourceAddressAdapter to allow users to choose a local address to bind
- GuessAuth which accepts a username and password and uses the
WWW-Authenticate header to determine how to authenticate against a
- MultipartEncoderMonitor wraps an instance of the MultipartEncoder
and keeps track of how many bytes were read and will call the provided
- StreamingIterator will wrap an iterator and stream the upload instead of
chunk it, provided you also provide the length of the content you wish to
0.2.0 – 2014-02-24
- Add ability to tell MultipartEncoder which encoding to use. By default
it uses ‘utf-8’.
- Fix #10 - allow users to install with pip
- Fix #9 - Fix MultipartEncoder#to_string so that it properly handles file
objects as fields
0.1.2 – 2014-01-19
- At some point during development we broke how we handle normal file objects.
Thanks to @konomae this is now fixed.
0.1.1 – 2014-01-19
- Handle io.BytesIO-like objects better
0.1.0 – 2014-01-18
- Add initial implementation of the streaming MultipartEncoder
- Add initial implementation of the user_agent function
- Add the SSLAdapter