node_interop 1.2.1
node_interop: ^1.2.1 copied to clipboard
Provides Dart bindings and utility functions for core Node.js modules.
1.2.1 #
- Add
util.callbackToCompleter(),util.invokeAsync0(), andutil.invokeAsync1()helpers to make it easier to work with Node-style callbacks.
1.2.0 #
- Added worker_threads module bindings (#84)
- Added interop for Atomics (#85)
1.1.1 #
- Added missing method definitions for TTYWriteStream.
1.1.0 #
- Added bindings for Node.js
ttymodule as well as updated Process bindings forstdout,stdinandstderrto return TTY stream types instead ofWritableandReadable.
1.0.3 #
- Removed generic annotations from Process methods per #56 (not supported by Dart yet).
- Added
util.inspectbinding.
1.0.2 #
- Clarified documentation of
dartifyregarding conversion of JS object keys (#52).
1.0.1 #
- Fixed declaration of
fs.writeSyncandfs.readSyncto returnintinstead ofvoid.
1.0.0 #
No functional changes in this version, it is published to replace obsolete 0.0.7 version on the
Pub's package homepage to improve discoverability.
Ongoing work will continue in 1.0.0-dev.* branch until it's considered stable and feature complete.
Make sure to checkout recent dev version for latest updates.
Non-breaking changes may be published to the stable track periodically.
1.0.0-dev.13.0 #
- Added
HttpsAgentOptionswith basic TLS/SSL parameters. - Breaking: createHttpsAgent() now expects instance of
HttpsAgentOptionsinstead ofHttpAgentOptions.
1.0.0-dev.12.0 #
- Fixed Console method bindings to not force
Stringarguments and allow any type. - Breaking: Updated
JsErrorconstructor definition to match Node.js documentation.
1.0.0-dev.11.0 #
- Upgraded to build_node_compilers 0.2.0
1.0.0-dev.10.0 #
- Internal changes.
1.0.0-dev.9.0 #
- Fixed analysis warnings.
1.0.0-dev.8.0 #
- Upgraded to latest build_node_compilers.
1.0.0-dev.7.0 #
- Fixed: Changed
ServerResponse.getHeaderreturn type fromStringtodynamic.
1.0.0-dev.6.0 #
- Added: binding for JS
undefinedvalue innode_interop/js.dart.
1.0.0-dev.5.0 #
- Fixed: strong mode issue in
dartifyutility function when converting plain JS objects to DartMap. Returned map is now of typeMap<String, dynamic>instead ofMap.
1.0.0-dev.4.0 #
- Fixed: strong mode issue in
promiseToFutureutility function. - Fixed: signature of
fs.realpathSync.
1.0.0-dev.3.0 #
- Added or completed bindings for following Node.js modules:
dns,events,fs,http,https,module,net,os,path,process,querystring,stream,timers,tls. - Added more examples and tests.
1.0.0-dev.2.0 #
- Completed
dnsmodule function definitions (still missing data structures).
1.0.0-dev.1.0+1 #
- Minor internal changes.
1.0.0-dev.1.0 #
Breaking changes: #
- node_interop depends on Dart 2 SDK which allows us to leverage new build_runner system and move away from Pub transformers.
- Removed Pub transformer, which means you shouldn't need it in your
pubspec.yamlanymore. Build system is now based onbuildpackage. See docs for more details. - node_interop no longer exports Dart-specific abstractions like an HTTP client
or FileSystem. These abstractions have been moved to separate packages:
node_ioandnode_http. This way node_interop now only exposes JS bindings for Node and some utility functions. - library structure is changed to map closer to built-in Node modules. There is
a separate file for each module which exposes that module's bindings,
e.g.
fs.dart,http.dart. nodeobject has been removed. Can userequireandexportsfunctions directly. There is also new convenience functionsetExport.jsPromiseToFuturerenamed topromiseToFuture.futureToJsPromiserenamed tofutureToPromise.jsObjectKeysrenamed toobjectKeys.dartifynow allows converting JSfunctionobjects.- `JsPromise
0.1.0-beta.9 #
- Added library-level
getfunction tohttp.dart.
0.1.0-beta.8+1 #
- Updated changelog.
0.1.0-beta.8 #
- Introduced new
io.dartlibrary designed to followdart:iocontract. - Breaking: renamed
HttpRequestexposed byhttp.darttoNodeHttpRequest. This is a server-side request object which will eventually be hidden from this library. It is recommended to import newio.dartwhich exposes bothHttpRequestandNodeHttpRequestobjects.
0.1.0-beta.7 #
- Fix HttpHeaders.forEach crash when called on HttpRequest.headers [#6]
0.1.0-beta.6 #
- Breaking:
- renamed
ReadableStream.nativeStreamtoReadableStream.nativeInstance - renamed
WritableStream.nativeStreamtoWritableStream.nativeInstance
- renamed
- New:
- Added
jsonStringifyandjsonParsewhich bind to nativeJSON.stringifyandJSON.parserespectively.
- Added
0.1.0-beta.5 #
- Fixed:
HttpResponse.close()failed when trying to finalize headers.
0.1.0-beta.4 #
- Made
Promise<T>a generic type. Also added definition ofThenable. onRejectedinPromise.thenis now optional.- Added explicit type to
nodevariable.
0.1.0-beta.3 #
- More updates to bindings.
- Added new
async.dartlibrary with basic implementations ofReadableStream<T>,WritableStream<T>andNodeIOSink. - Added implementations of server side
HttpRequestandHttpResponsetohttp.dart, as well some other objects likeHttpHeaders. - Added
dartifyError(JsError error)to the main library which converts from JSErrorinstances in to Dart's equivalent. - Implemented more methods in
File:openRead,openWrite,readAsBytes. - Deprecated
createJSFileintest.dartlibrary. UsecreateFileinstead.
0.1.0-beta.2 #
jsObjectToMapdeprecated. There is new helper functiondartify. See documentation for more details.- New
jsifyhelper function. - Clarified type of HTTP server
requestListener. - New
createJSFiletest util intest.dart.
0.1.0-beta.1 #
- Breaking changes:
NodePlatformis no longer exported fromnode_interop.dartlibrary.- Library-level
exportsgetter was removed. Nowexportsis a direct reference to native JS object. Replace any calls toexports.setProperty(name, value)with new API:node.export(name, value). - "http" module:
Agent,Server,AgentOptionsrenamed toHttpAgent,HttpServer,HttpAgentOptionsrespectively. - "http" module:
createAgentrenamed tocreateHttpAgent. node_interop/bindings.dartwas removed. All bindings are available through mainnode_interop/node_interop.dartimport.
- New:
- Many updates to documentation.
- Main package's library now exposes all (implemented) Node API bindings.
- New
nodelibrary object with centralized access to the Node platform and runtime information, as well as module globals likerequireandexports. - Exposed parts of "https", "tls", "dns" and "net" module bindings.
- Added HTTPS support to
NodeClientfromnode_interop/http.dart. - Updated examples.
- Gitter channel is now up: https://gitter.im/pulyaevskiy/node-interop.
0.0.7 #
- Added
node_interop/test.dartlibrary withinstallNodeModules()helper function. See dartdoc for more details.
0.0.6 #
jsObjectToMap: added null-check.- Added basic HTTP client implementation for Node, based on an interface
from 'http' package. Use with
import package:node_interop/http.dart.
0.0.5 #
- Streamlined bindings layer and exposed as it's own library. Use
import package:node_interop/bindings.dartto get access. - Added bindings for 'http' module (work in progress).
0.0.4 #
- Upgraded to
testpackage with support for running tests in Node - Implemented
NodeFileSystem.file()andFile.writeAsStringSync().
0.0.3 #
- Added bindings for
Console.
0.0.2 #
- Switched to use official
node_preamblepackage
0.0.1 #
- Initial version