Pre-release for the null safety migration of this package.
Note that 0.12.3 may not be the final stable null safety release version, we reserve the right to release it as a 0.13.0 breaking change.
This release will be pinned to only allow pre-release sdk versions starting from 2.10.0-2.0.dev, which is the first version where this package will appear in the null safety allow list.
Urito be passed now require a
Client.delete. This is only breaking for implementations which override that method.
IOStreamedResponsewhich includes the ability to detach the socket. When sending a request with an
IOClientthe response will be an
Clientfactory constructor is now usable anywhere that
dart:htmlare available, and will give you an
package:http/http.dartimport is now safe to use on the web (or anywhere that either
IoClientdirectly, you will need to import the new
package:http/io_client.dartimport. This is typically only necessary if you are passing a custom
HttpClientinstance to the constructor, in which case you are already giving up support for web.
MultipartRequest. This is more compatible with server quirks.
Content-Transfer-Encodingfor multipart chunks.
Require Dart SDK >= 1.9.0
Eliminate many uses of
Chain.track from the
Client.patchshortcut method and a matching top-level
IOClientclass which wraps a
The package no longer depends on
BrowserClient class in
package:http/browser_client.dart can now be used to make requests on the browser.
ContentType type to
Exceptions are now of type
ClientException rather than
null to indicate an unknown content length rather than -1.
contentLength parameter to
new BaseResponse is now named rather than positional.
Make request headers case-insensitive.
MultipartRequest more closely adhere to browsers' encoding conventions.