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.
const
constructor to ByteStream
.BrowserClient
from blob
to arraybuffer
.String
or Uri
to be passed now require a Uri
.body
and encoding
argument to Client.delete
. This is only breaking for implementations which override that method.IOStreamedResponse
which includes the ability to detach the socket. When sending a request with an IOClient
the response will be an IOStreamedResponse
.package:async
.'content-type'
header in MultipartRequest
.Client
factory constructor is now usable anywhere that dart:io
or dart:html
are available, and will give you an IoClient
or BrowserClient
respectively.package:http/http.dart
import is now safe to use on the web (or anywhere that either dart:io
or dart:html
are available).IoClient
directly, you will need to import the new package:http/io_client.dart
import. This is typically only necessary if you are passing a custom HttpClient
instance to the constructor, in which case you are already giving up support for web.stack_trace
package.async
2.0.0.MultipartRequest
. This is more compatible with server quirks.dart:io
everywhere.dart:mirrors
.Content-Transfer-Encoding
for multipart chunks.http_parser
3.0.0.http/testing.dart
.http_parser
2.0.0.Require Dart SDK >= 1.9.0
Eliminate many uses of Chain.track
from the stack_trace
package.
http_parser
1.0.0.Client.patch
shortcut method and a matching top-level patch
method.BrowserClient.withCredentials
property.unittest
.stack_trace
.IOClient
class which wraps a dart:io
HttpClient
.BrowserClient
.The package no longer depends on dart:io
. The BrowserClient
class in package:http/browser_client.dart
can now be used to make requests on the browser.
Change MultipartFile.contentType
from dart:io
's ContentType
type to http_parser
's MediaType
type.
Exceptions are now of type ClientException
rather than dart:io
's HttpException
.
Make BaseRequest.contentLength
and BaseResponse.contentLength
use null
to indicate an unknown content length rather than -1.
The contentLength
parameter to new BaseResponse
is now named rather than positional.
Make request headers case-insensitive.
Make MultipartRequest
more closely adhere to browsers' encoding conventions.