universal_io
Cross-platform 'dart:io' that adds browser support for HttpClient and some other "dart:io" APIs.
2.3.1
2.8M downloads/mo
#227 most downloaded on pub.dev
dart-io-packages/universal_io
What this package is like to depend on
Last release 9 months ago
16 Nov 2025
Ships unpredictably
gaps range from 8 days to 2.5 years
Most releases are documented
notes for 29 of 36 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
39 releases · first in 2018
3 releases in the last 12 months
see the full history below
Release timeline
39 releases · Dec 2018 to Nov 2025Releases
latest 39-
2.3.116 Nov 2025 -
2.3.016 Nov 2025Release notes
Open source →- Makes BrowserHttpClient WASM compatible by making it use "dart:js_interop" rather than "dart:html".
- Fixes various bugs.
- Adds
Platform.lineTerminator. - Lowers minimum SDK constraint to 3.6.
-
2.2.315 Nov 2025 -
2.2.201 Jun 2023 -
2.2.115 May 2023 -
2.2.017 Feb 2023Release notes
Open source →- Refactoring, better documentation, and some additional APIs in BrowserHttpClient.
-
2.1.016 Feb 2023Release notes
Open source →- Removes lots of unnecessary stuff.
- This has some breaking changes, but it's unlikely that anyone is using the removed stuff. The package continues to follow the Dart SDK "dart:io" API.
- Removes lots of unnecessary stuff.
-
2.0.516 Feb 2023 -
2.0.402 Apr 2021 -
2.0.326 Mar 2021 -
2.0.225 Mar 2021 -
2.0.115 Mar 2021 -
2.0.004 Mar 2021 -
2.0.0-nullsafety.211 Jan 2021 pre-release -
2.0.0-nullsafety.111 Jan 2021 pre-releaseRelease notes
Open source →- Improves documentation.
- Improves BrowserHttpClientException messages.
- Deprecates libraries prefer_sdk/io.dart and prefer_universal/io.dart. Developers should import just io.dart.
- Improves documentation.
-
2.0.0-nullsafety.011 Jan 2021 pre-releaseRelease notes
Open source →- The first null-safe version.
- Makes changes in BrowserHttpClient / BrowserHttpClientRequest API:
- The property for enabling credentials mode is now
browserCredentialsMode. The default isfalse. - The property for setting response type is now
browserResponseType("arraybuffer", "text", etc.). By default, if HTTP request header "Accept" contains only text MIMEs ("text/plain", etc.), this package uses responseType "text". - HTTP client now has
onBrowserHttpClientRequestClosefor using your own logic for settingbrowserResponseType.
- The property for enabling credentials mode is now
- Removes IO adapter API.
- Makes changes in BrowserHttpClient / BrowserHttpClientRequest API:
- The first null-safe version.
-
1.0.202 Jan 2021Release notes
Open source →- Fixes issue #11 (InternetAddress
parameter).
- Fixes issue #12 (CORS credentials mode). Eliminates legacy, complicated behavior. Developers should choose either omit or include. Improves error messages and documentation related to it.
- Replaces MD5/SHA1 implementations used by some of the source code copied from dart:io. It now uses package:crypto instead of implementations copied from dart:io.
- Fixes issue #11 (InternetAddress
parameter).
-
1.0.124 Feb 2020Nothing published for this version
-
1.0.017 Feb 2020Release notes
Open source →- Implements recent changes in 'dart:io' (Dart SDK 2.8).
- HttpDriver is replaced by 'dart:io' HttpOverrides.
- FileSystemDriver is replaced by 'dart:io' IOOverrides.
- Various other driver APIs are renamed or removed.
- BrowserLikeHttpClientRequest is now BrowserHttpClientRequest.
- BrowserHttpClientRequest implementation is improved.
- Implements recent changes in 'dart:io' (Dart SDK 2.8).
-
0.8.608 Jan 2020 -
0.8.518 Dec 2019Release notes
Open source →- Raised minimum SDK to 2.6 and upgraded dependencies.
- Changed how CORS credentials mode is enabled. It was previously enabled with a header, but now we introduced subclasses for HttpClient and HttpClientRequest. This is a breaking change, but we decided not to bump the major version number.
- Improved analysis and test settings.
- Raised minimum SDK to 2.6 and upgraded dependencies.
-
0.8.409 Sep 2019Release notes
Open source →- Added 'prefer_sdk/io.dart' and 'prefer_universal/io.dart' libraries for dealing with conditional
export issues.
- Library 'package:universal_io/io.dart' now exports SDK version by default.
- Added 'prefer_sdk/io.dart' and 'prefer_universal/io.dart' libraries for dealing with conditional
export issues.
-
0.8.308 Sep 2019Release notes
Open source →- Replaced IP address parsing with the new Uri.parseIPv4Address / Uri.parseIPv6Address.
- Fixed missing HTTP status codes.
- Replaced IP address parsing with the new Uri.parseIPv4Address / Uri.parseIPv6Address.
-
0.8.207 Sep 2019 -
0.8.124 Jul 2019 -
0.8.024 Jul 2019Release notes
Open source →- Updated classes to Dart 2.5. See Dart SDK documentation about the changes.
- Various APIs now return
Uint8Listinstead ofList<int>. Examples:File,Socket,HttpClientResponse. - Various other breaking changes such as
Cookieconstructor.
- Various APIs now return
- Updated classes to Dart 2.5. See Dart SDK documentation about the changes.
-
0.7.308 Jul 2019Release notes
Open source →- Fixed the following error thrown by the Dart build system in some cases: "Unsupported conditional import of dart:io found in universal_io|lib/io.dart".
-
0.7.211 Jun 2019 -
0.7.111 Jun 2019 -
0.7.010 Jun 2019 -
0.6.009 Jun 2019 -
0.5.108 Jun 2019 -
0.5.008 Jun 2019Release notes
Open source →- Fixed various bugs.
- Re-organized source code.
- Eliminated dependencies by doing IP parsing in this package.
- Improved the test suite for drivers.
- Fixed various bugs.
-
0.4.031 May 2019Nothing published for this version
-
0.3.031 May 2019Nothing published for this version
-
0.2.031 May 2019Nothing published for this version
-
0.1.118 Feb 2019Nothing published for this version
-
0.1.018 Feb 2019Nothing published for this version
-
0.0.104 Dec 2018Nothing published for this version