Viewing version 0.2.0. Open the latest package page.
universal_io
0.2.0Cross-platform version of 'dart:io'. Supports browser, Node.JS, and other targets.
Readme
Introduction
A Dart package that supports a subset of dart:io
In the Dart VM and Flutter, "package:universal_io/io.dart" exports the standard "dart:io". This is accomplished with conditional imports, which is an undocumented feature of Dart.
Licensed under the Apache License 2.0.
Much of the source code was adopted from the original 'dart:io' in Dart SDK, which was licensed under a BSD-style license.
Issues
- Found issues? Report them at the Github issue tracker.
- Have a fix? Create a pull request!
Getting started
1.Add dependency
In pubspec.yaml:
dependencies:
universal_io: ^1.0.0
2.Choose driver
- VM/Flutter?
- Library "package:universal_io/io.dart" will automatically export dart:io for you.
- Browser?
- BrowserIODriver is automatically used when compiling with Dart2js / devc. Most importantly, it implements HttpClient (with restrictions imposed by browsers).
- If you need things like sockets or unrestricted HttpClient, choose one of the options below.
- Chrome OS App?
- Node.JS? Google Cloud Functions?
- A backend + GRPC messaging?
Default driver behavior
- Platform
- In browser, variables are determined by browser APIs such as navigator.userAgent.
- Elsewhere (e.g. Node.JS), appears like Linux environment.
- Files
- Access to all directories and files is denied.
- InternetAddress
- Implemented using package:ip.
InternetAddress.lookupuses Google's DNS-over-HTTP servers.
- HTTP client
- In browser, HTTP client is implemented using dart:html HttpRequest (XmlHttpRequest).
- If a cross-origin request fails, error message contains a detailed description how to fix possible issues like missing cross-origin headers.
- Sockets and HTTP server
- Connecting/binding throws UnimplementedError.
Changelog
Installing
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.ir
flutter pub add 'universal_io:0.2.0'pubspec.yaml
name: universal_io
version: 0.2.0
description:
Cross-platform version of 'dart:io'. Supports browser, Node.JS, and other targets.
homepage: https://github.com/gohilla/dart-universal_io
author: terrier989 <terrier989@gmail.com>
environment:
sdk: '>=2.0.0 <3.0.0'
dependencies:
ip: ^0.1.1
meta: ^1.1.7
raw: ^0.2.0
typed_data: ^1.1.6
zone_local: ^0.1.0
dev_dependencies:
pedantic: ^1.0.0
stream_channel: any
test: ^1.4.0Version history
| Version | Published | Archive | SHA-256 |
|---|---|---|---|
| 0.0.1 | Cached · Upstream SHA-256 matched | Download | a8aa4b4f…6f259b |
| 0.1.0 | Cached · Upstream SHA-256 matched | Download | adeca974…128b76 |
| 0.1.1 | Cached · Upstream SHA-256 matched | Download | b4d0cce4…efe2b0 |
| 0.2.0 | Cached · Upstream SHA-256 matched | Download | debb79ed…36d4ee |
| 0.3.0 | Cached · Upstream SHA-256 matched | Download | 0b8f764b…a054e5 |
| 0.4.0 | Cached · Upstream SHA-256 matched | Download | 7f879f79…0ee63f |
| 0.5.0 | Cached · Upstream SHA-256 matched | Download | a185c8ca…f5f7c2 |
| 0.5.1 | Cached · Upstream SHA-256 matched | Download | 47881238…a13ab3 |
| 0.6.0 | Cached · Upstream SHA-256 matched | Download | 0465c285…30fb21 |
| 0.7.0 | Cached · Upstream SHA-256 matched | Download | 0b6ff36a…c988ef |
| 0.7.1 | Cached · Upstream SHA-256 matched | Download | 3fd33123…e947d1 |
| 0.7.2 | Cached · Upstream SHA-256 matched | Download | ab916807…e30f36 |
| 0.7.3 | Cached · Upstream SHA-256 matched | Download | 9918c2ae…d6e492 |
| 0.8.0 | Cached · Upstream SHA-256 matched | Download | 9e971384…0ffa98 |
| 0.8.1 | Cached · Upstream SHA-256 matched | Download | 39dd369c…e29abc |
| 0.8.2 | Cached · Upstream SHA-256 matched | Download | 873f9c3e…b5629f |
| 0.8.3 | Cached · Upstream SHA-256 matched | Download | 0da20598…979fb2 |
| 0.8.4 | Cached · Upstream SHA-256 matched | Download | b1c84301…3b7ec0 |
| 0.8.5 | Cached · Upstream SHA-256 matched | Download | 50a660f9…874883 |
| 0.8.6 | Cached · Upstream SHA-256 matched | Download | e700bb7c…986502 |
| 1.0.0 | Cached · Upstream SHA-256 matched | Download | 5da439c3…bddf21 |
| 1.0.1 | Cached · Upstream SHA-256 matched | Download | 2c0fa418…f6cb08 |
| 1.0.2 | Cached · Upstream SHA-256 matched | Download | 22c5875f…f9e8db |
| 2.0.0-nullsafety.0 | Cached · Upstream SHA-256 matched | Download | 2fe15fca…c8acd3 |
| 2.0.0-nullsafety.1 | Cached · Upstream SHA-256 matched | Download | 2c94fd97…a42cfa |
| 2.0.0-nullsafety.2 | Cached · Upstream SHA-256 matched | Download | ad7e7015…8099d1 |
| 2.0.0 | Cached · Upstream SHA-256 matched | Download | 6ba43dc8…75397e |
| 2.0.1 | Cached · Upstream SHA-256 matched | Download | ffb7b33e…21e456 |
| 2.0.2 | Cached · Upstream SHA-256 matched | Download | 02437682…2d832b |
| 2.0.3 | Cached · Upstream SHA-256 matched | Download | ee2ecc7c…bc6f23 |
| 2.0.4 | Cached · Upstream SHA-256 matched | Download | 79f78dda…f03cef |
| 2.0.5 | Cached · Upstream SHA-256 matched | Download | 2730b3fc…680b85 |
| 2.1.0 | Cached · Upstream SHA-256 matched | Download | 070d8fcc…745007 |
| 2.2.0 | Cached · Upstream SHA-256 matched | Download | 06866290…48005d |
| 2.2.1 | Cached · Upstream SHA-256 matched | Download | 302df7ff…d51401 |
| 2.2.2 | Cached · Upstream SHA-256 matched | Download | 1722b2dc…ba9aad |
| 2.2.3 | Cached · Upstream SHA-256 matched | Download | ba9dde5f…2edf04 |
| 2.3.0 | Cached · Upstream SHA-256 matched | Download | 6780711d…79530a |
| 2.3.1 | Cached · Upstream SHA-256 matched | Download | f63cbc48…9301e2 |
Dependencies
ip "^0.1.1"
meta "^1.1.7"
raw "^0.2.0"
typed_data "^1.1.6"
zone_local "^0.1.0"