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.
- Added
const
constructor toByteStream
.
- Fix error handler callback type for response stream errors to avoid masking root causes.
- Add
IOStreamedResponse
which includes the ability to detach the socket. When sending a request with anIOClient
the response will be anIOStreamedResponse
. - Remove dependency on
package:async
.
- Fix a bug setting the
'content-type'
header inMultipartRequest
.
- Documentation fixes.
- Documentation fixes.
- The regular
Client
factory constructor is now usable anywhere thatdart:io
ordart:html
are available, and will give you anIoClient
orBrowserClient
respectively. - The
package:http/http.dart
import is now safe to use on the web (or anywhere that eitherdart:io
ordart:html
are available).
- In order to use or reference the
IoClient
directly, you will need to import the newpackage:http/io_client.dart
import. This is typically only necessary if you are passing a customHttpClient
instance to the constructor, in which case you are already giving up support for web.
- Use new Dart 2 constant names. This branch is only for allowing existing code to keep running under Dart 2.
- Stop depending on the
stack_trace
package.
- Declare support for
async
2.0.0.
- Remove single quote ("'" - ASCII 39) from boundary characters. Causes issues with Google Cloud Storage.
- remove boundary characters that package:http_parser cannot parse.
- Don't quote the boundary header for
MultipartRequest
. This is more compatible with server quirks.
- Fix the SDK constraint to only include SDK versions that support importing
dart:io
everywhere.
- Stop using
dart:mirrors
.
- Remove an extra newline in multipart chunks.
- Properly specify
Content-Transfer-Encoding
for multipart chunks.
- Declare compatibility with
http_parser
3.0.0.
- Fix one more strong mode warning in
http/testing.dart
.
- Fix some lingering strong mode warnings.
- Fix all strong mode warnings.
- Support
http_parser
2.0.0.
-
Require Dart SDK >= 1.9.0
-
Eliminate many uses of
Chain.track
from thestack_trace
package.
- Support
http_parser
1.0.0.
- Add a
Client.patch
shortcut method and a matching top-levelpatch
method.
- Add a
BrowserClient.withCredentials
property.
- Properly namespace an internal library name.
- Widen the version constraint on
unittest
.
- Widen the version constraint for
stack_trace
.
- Expose the
IOClient
class which wraps adart:io
HttpClient
.
- Fix a bug in handling errors in decoding XMLHttpRequest responses for
BrowserClient
.
-
The package no longer depends on
dart:io
. TheBrowserClient
class inpackage:http/browser_client.dart
can now be used to make requests on the browser. -
Change
MultipartFile.contentType
fromdart:io
'sContentType
type tohttp_parser
'sMediaType
type. -
Exceptions are now of type
ClientException
rather thandart:io
'sHttpException
.
-
Make
BaseRequest.contentLength
andBaseResponse.contentLength
usenull
to indicate an unknown content length rather than -1. -
The
contentLength
parameter tonew BaseResponse
is now named rather than positional. -
Make request headers case-insensitive.
-
Make
MultipartRequest
more closely adhere to browsers' encoding conventions.