- Added the
denoV8Flags
,denoImportMapPath
,denoCachedOnly
, anddenoLockFilePath
options toDenoWorker
for the--v8-flags
,--import-map
,--cached-only
, and--lock
flags.- Thanks to @derekwheel for contributing this! (#12)
- Updated to support Deno 1.12.
- Deno 1.12 added the
MessageChannel
andMessagePort
APIs which causedMessagePort
instances to be untransferrable.
- Deno 1.12 added the
- Added the
denoUnstable
option toDenoWorker
to enable unstable Deno features.
- Updated to support Deno 1.4.
- Deno 1.4 changed their WebSocket API and so we no longer need the polyfill.
- Fixed to force the Deno subprocess to close when terminating the worker.
- Forcing the process to be killed seems to be the most reasonable in the case that we're treating these like headless browser tabs.
- When we try to gracefully kill the process, Deno might ignore it if it has things like infinite loops or open handles.
- On Linux/Unix, this means sending a
SIGKILL
signal to the Deno subprocess. - On Windows, this means using
taskkill
with the/T
and/F
options.
- Fixed to use the global
Object.hasOwnProperty()
function instead of relying on objects to have it themselves.
- Fixed to log stdout and stderr in UTF-8.
- Added the ability to get the stdout and stderr streams from the worker and choose whether to automatically log them to the console.
- Added a global WebSocket polyfill since Deno doesn't implement the WebSocket API.
- Fixed the WebSocket implementation to allow setting
binaryType
.
- Added a global WebSocket polyfill since Deno doesn't implement the WebSocket API.
- Exported MessageChannel and MessagePort.
- Added
polyfillMessageChannel()
to polyfill the MessageChannel and MessagePort objects on the global object.
- Fixed an issue where permissions were being passed incorrectly.
- Added the ability to transfer
MessagePort
instances between the host and worker.
- Added the
DenoWorker
class.- It is a Web Worker-like API that gives you the ability to run arbitrary scripts inside Deno.
- Supports the structure-clone algorithm for Maps, Sets, BigInts, ArrayBuffers, Errors, and circular object references.
- Requires that Deno be installed on the system.