Releases: cloudflare/workerd
Releases · cloudflare/workerd
v1.20230518.0
What's Changed
- Warn if URLSearchParams has() or delete() are called with multiple args by @jasnell in #635
- Remove assert in websocket hibernation release by @MellowYarker in #648
- [nfc] clean up bazelrc warnings by @fhanau in #647
- Add some hardening on jsg::Data move constructor. by @kentonv in #653
- Improve debug logging for SQLite by @kentonv in #655
- Throw a nice error when using sockets in fiddle mode. by @dom96 in #651
- Clarify helloworld config sockets comment by @nhynes in #650
- Update Dynamic Dispatch Types by @kflansburg in #642
- default botmanagement fields should not contain ja3Hash by @jasnell in #654
- Adds cloudflare:sockets module types. by @dom96 in #657
- Implement Node.js compat KeyObject asymmetricKeyType property by @jasnell in #656
- Revisiting SQL limits by @geelen in #660
- Implement Node.js crypto KeyObject asymmetricKeyDetails by @jasnell in #658
- Fail WorkerEntrypoint::connect with a JSG error by @dom96 in #640
- Fixups in PumpToReader by @jasnell in #649
- Reject closeFulfiller with jsg exception instead of KJ_EXCEPTION. by @dom96 in #667
- Move owned WebSocket back to api::WebSocket on final hibernation event by @MellowYarker in #664
- Add debugging for jsg::Data move operator= by @jasnell in #662
- Fixes assert due to Flush in WritableStreamInternalController. by @dom96 in #672
- Update compatibility-date for release by @penalosa in #668
New Contributors
Full Changelog: v1.20230512.0...v1.20230518.0
v1.20230512.0
What's Changed
- Propagate the AsyncContextFrame for dynamic imports by @jasnell in #634
- Implement AbortSignal.any by @jasnell in #636
- SQLite: Support explicit transaction API. by @kentonv in #643
- Fix use-after-free when constructing
QueueMessage
on Windows by @mrbbot in #644 - Add back
#include <compare>
tojsg/string.h
by @mrbbot in #646 - Bump compatibility date to
2023-05-12
for release by @mrbbot in #645
Full Changelog: v1.20230511.0...v1.20230512.0
v1.20230511.0
What's Changed
- workerd add tests that can be debugged within vscode by @ohodson in #576
- Update bazel and capnproto, remove redundant zlib workaround by @fhanau in #568
- Update README.md and docs/vscode.md by @ohodson in #578
- Add Node.js Compat module type by @jasnell in #564
- Remove temporary botManagement logging, add defaults by @jasnell in #571
- [nfc] extracting io:observer and io:worker-interface libraries by @mikea in #581
- [nfc] moving jsg exception handling code together by @mikea in #583
- Move some common definitions to streams/common.h by @jasnell in #476
- Fix npm release workflow download paths by @mrbbot in #588
- Partially revert #568, fixing mac compilation by @fhanau in #580
- Actor instances should keep a strong reference to their request tracker by @bcaimano in #584
- Allowing sum/total SQL functions by @geelen in #593
- Allowing sum/total SQL functions by @geelen in #592
- Add support for multiple and weak etags in R2 bindings by @Frederik-Baetens in #563
- Fix error message when startTls isn't enabled by @dom96 in #594
- Exceptions from fetch handlers should wait for output gate. by @kentonv in #585
- Windows build all fix and arch neutral paths in vscode launch goals by @ohodson in #589
- Tweaks for SQLite CPU limiting by @kentonv in #598
- Rename
trace
handler totail
by @vickykont in #573 - Update to include changes to support startTls with http-over-capnp. by @dom96 in #498
- Fix more mistakes in SQLite allowlist. by @kentonv in #602
- Allow actors to call themselves, potentially recreating them as necessary by @xortive in #469
- Add node.js compat streams split2 example by @jasnell in #597
- Implement performance.now/timeOrigin by @jasnell in #603
- Remove experimental flag from Node.js streams by @jasnell in #596
- Add Node.js compat path module by @jasnell in #599
- Cleanups/improvements to streams/queue.h/c++ by @jasnell in #590
- Additional notes on using vscode for workerd development by @ohodson in #610
- Fixes internal sockets typescript typing file. by @dom96 in #612
- Add mechanism to inject a JWT + account name by @OilyLime in #577
- Cleanup: Simplify sentry logging macros by @bcaimano in #535
- performance.now() must return excatly what Date.now() returns. by @kentonv in #617
- Automatically wrap SQLite usage in transactions and respect OutputGate. by @kentonv in #609
- Node compat: Implement crypto primes by @fhanau in #554
- Modify SQLite allowlists and limits as needed for D1. by @kentonv in #619
- Setting SQLITE_LIMIT_VARIABLE_NUMBER to 100 by @geelen in #620
- Deprecate tcp_sockets_support compat flag. by @dom96 in #601
- IoContext: Add ability get and set the trace span captured in the current async context by @jclee in #604
- node-compat: use @types/node types instead of DOM by @mikea in #591
- [nfc] Clean up includes, refactor bazel dependencies by @fhanau in #618
- [nfc] Some initial prep work for the node.js crypto impl by @jasnell in #613
- Implement global origin property by @ohodson in #622
- WebSocket Hibernation Manager by @MellowYarker in #449
- Fixup built-in module import from submodule by @jasnell in #625
- Implement crypto.pbkdf2 by @fhanau in #611
- Add Node.js crypto KeyObject JS api by @jasnell in #616
- LOG_ERROR_PERIODICALLY() would not log in the first hour after system boot. by @kentonv in #626
- Simplify gopher.js TCP sockets sample by @dom96 in #623
- Resolves nits in Sockets allowHalfOpen implementation. by @dom96 in #615
- Use IoOwn instead of Own in Socket. by @dom96 in #633
- Fix hibernatable websocket disconnect bug by @MellowYarker in #630
- [nfc] Add github action to block merging fixup commits by @jasnell in #632
- Add basic impl for Node.js KeyObject equals by @jasnell in #629
- Soft fail if
workerd
npm
postinstall
script fails by @mrbbot in #639 - Report port each socket is listening on when ready by @mrbbot in #638
- Add basic impl for Node.js SecretKeyObject by @jasnell in #631
- Implement Durable Object alarms in workerd by @xortive in #605
- Bump compatibility date to
2023-05-11
for release by @mrbbot in #641
New Contributors
Full Changelog: v1.20230419.0...v1.20230511.0
v1.20230419.0
What's Changed
- bazel: fix resources paths to work correctly from external repo by @mikea in #512
- Assorted
npm
release fixes by @mrbbot in #515 - Add basic WASM example by @kflansburg in #492
- Temporarily disable request.cf.botManagement logging by @jclee in #524
- Additional work for #487 by @Warfields in #523
- bazel: remove remote download arguments because of build problems by @mikea in #522
- Bugfix: WebSockets can already be released when we finish pumping by @bcaimano in #499
- Add compilation fix for zlib by @ohodson in #530
- Wrapped bindings by @mikea in #413
- SQL JS API bindings by @kentonv in #513
- wasm compilation observer by @mikea in #511
- Disable V8/ICU whole-archive flag, improving file size by @fhanau in #477
- Fix request.cf's botManagement.score description by @punkeel in #533
- Move implementation of queue bindings into workerd by @a-robinson in #541
- Provide compressed release artifacts by @fhanau in #525
- [bazel] Enable dead code stripping on macOS by @fhanau in #537
- Misc changes for SRS by @kentonv in #486
- Add macros to throw in debug builds and log in production by @bcaimano in #534
- workerd: make debugging in vscode work by @ohodson in #507
- Provide Crypto/Compression API errors where safe, fix macOS compiler warning by @fhanau in #529
- Manually tell V8 where the stack starts whenever we enter it. by @kentonv in #544
- Ignore disturbed status of ReadableStream when detaching for startTls. by @dom96 in #485
- Do not sanitize internal error messages in jsg::annotateBroken() by @bcaimano in #542
- Move trace info async storage key from IoContext to Worker::Isolate by @jclee in #547
- Implement Secure Curves API by @fhanau in #500
- Add requested comments / debug checks on V8StackScope. by @kentonv in #546
- Move implementation of queue event handler into workerd by @a-robinson in #543
- fix use-after-move by @mikea in #552
- initialize Promise::markedAsHandled by @mikea in #553
- jsg::Lock cleanup by @jclee in #551
- A couple of minor improvements to AsyncContextFrame::StorageKey by @jasnell in #540
- Fix two issues with SQL API by @kentonv in #557
- Add method to unset actor request ref tracker by @MellowYarker in #555
- Support calling the queue() handler of a worker via a service binding by @a-robinson in #545
- Update Linux dependencies in README.md by @ohodson in #561
- Moves global TCP socket
connect
tocloudflare:sockets
module. by @dom96 in #559 - SQLite: Allow setting VFS device characteristics. by @kentonv in #565
- Improve SQLite security by @kentonv in #514
- types: add types for WfP Dispatch Namespaces by @KianNH in #387
- Partial revert of 'Disable V8 whole-archive flag, improving binary size' by @ohodson in #548
- Account for botManagement proxy in structuredClone by @jasnell in #566
- Use cloudflare TS bundle in workerd-api. by @dom96 in #569
- Add the Node.js streams toWeb/fromWeb adapters by @jasnell in #567
- wd_js_bundle nested modules fix by @mikea in #574
- Socket's connect API now takes a secureTransport enum instead of bool. by @dom96 in #570
- Add Node.js compat stream/consumers, stream/promises, stream/web by @jasnell in #575
- Add experimental flags to experimental types entrypoint by @penalosa in #550
- WritableStream is now flushed prior to startTls. by @dom96 in #572
- Eliminate Impl indirection in WriterLocked/ReaderLocked by @jasnell in #556
- Simplify Windows setup and build by @ohodson in #560
- Bump compatibility date to
2023-04-19
for release by @mrbbot in #549
New Contributors
- @kflansburg made their first contribution in #492
- @punkeel made their first contribution in #533
Full Changelog: v1.20230404.0...v1.20230419.0
v1.20230404.0
What's Changed
- Setup the base for a new event for websockets with hibernation. by @jqmmes in #343
- Implement URL.canParse by @jasnell in #460
- Use non-deprecated v8 Detach API by @jasnell in #462
- Log accesses to the request.cf.botManagement property by @jasnell in #374
- Fix Socket's WorkerInterface Lifetime by @Warfields in #466
- Define program-wide Rust flags in .bazelrc by @fhanau in #454
- Capture request trace info in async contexts by @jclee in #400
- Implements startTls for TCP sockets. by @dom96 in #440
- Create runtime-apis.md by @irvinebroque in #470
- Capture the current AsyncContextFrame when Response is created by @jasnell in #467
- Update compat date in samples, add flags to README by @KianNH in #429
- module registry observer by @mikea in #450
- types related to mail sending by @edevil in #459
- Implement backpressure signaling for IdentityTransformStream writable by @jasnell in #473
- Even more streams tests by @jasnell in #461
- Fix a typo in readme of npm types by @ferhatelmas in #458
- workerd: update to v8 to 11.2.214.9 by @ohodson in #478
- Initial impl of Node.js crypto by @jasnell in #457
- Add strict
R2Objects
types by @mrbbot in #472 - Increase Analytics Engine index byte limit 32 -> 96 by @harrishancock in #481
- Use WeakRef to owning AllReaderBase in ReadableImpl by @jasnell in #475
- Add strict Durable Object
jurisdiction
/locationHint
types by @mrbbot in #471 - Improve UsvStringIterator performance by @jasnell in #484
- Refactor / cleanup sqlite integration by @kentonv in #455
- Provide hooks to implement and customize SQLite locking. by @kentonv in #422
- EW-7262: Fix hang when trying to
connect
to localhost by @ohodson in #468 - Macros to periodically warn by @vlovich in #482
- add Cloudflare TS module by @edevil in #494
- refactor: extract createBinding function by @mikea in #496
- refactor: extract createBindingValue fn for a single binding by @mikea in #495
- Remove possiblity of underflows from loop variables by @Warfields in #487
- Web crypto: Fix JWK key import for ECDH and RSA-OAEP, minor cleanup by @fhanau in #493
- Add native support for Windows by @mrbbot in #452
- Publish native Windows builds to npm by @mrbbot in #502
- bazel: extract wd_ts_bundle rule to reduce boilerplate by @mikea in #497
- built-in bundles in workerd config by @mikea in #463
- bazel: try not to download intermediate artifacts if possible by @mikea in #503
- Use
.exe
extension in Windows npm releases by @mrbbot in #505 - Switch
--remote_download_minimal
to--remote_download_toplevel
by @mrbbot in #509 - Bump compatibility date to
2023-04-04
for release by @mrbbot in #510
New Contributors
- @jqmmes made their first contribution in #343
- @irvinebroque made their first contribution in #470
- @ferhatelmas made their first contribution in #458
Full Changelog: v1.20230321.0...v1.20230404.0
v1.20230321.0
What's Changed
- Disallow importing public ECDH keys with non-empty usage by @fhanau in #433
- Remove unused
Body
type parameter fromEmailMessage
by @mrbbot in #431 - boringssl update by @mikea in #434
- Breaking out trace and thread-scopes by @Warfields in #436
- Implements TLS support for TCP sockets (with default TLS settings). by @dom96 in #414
- Move RequestTracker into workerd and use it in Worker::Actor by @xortive in #417
- Switch to api.ast.json.gz instead of api.ast.json by @ohodson in #441
- Support bundling raw JavaScript in built-in bundles by @jasnell in #428
- Polyfill internal process.nextTick for Node.js compat by @jasnell in #425
- Add disk usage info to test plan by @ohodson in #443
- use bazel6 by @mikea in #361
- bazel: Reuse sandbox directories by @fhanau in #439
- Add initial port of Node.js Compat Streams by @jasnell in #418
- Split build and test steps in test action by @ohodson in #447
- Update to V8 11.0.226.19 by @ohodson in #437
- Add more Node.js compat streams tests by @jasnell in #451
- More Node.js Streams Tests by @jasnell in #453
- Fixup
cf
types by @mrbbot in #438 - Bump compatibility date to
2023-03-21
for release by @mrbbot in #465
New Contributors
Full Changelog: v1.20230307.0...v1.20230321.0
v1.20230307.0
What's Changed
- Add initial minimal set of node:assert tests by @jasnell in #396
- Fix npm install and direct npm download in post-install by @mrbbot in #408
- Add missing
--define:WORKERD_VERSION
toBuild node-shim
step by @mrbbot in #409 - Add
default
exports fornode:{buffer,events}
and removeassert
export onnode:assert
by @mrbbot in #364 - Remove experimental guard from node.js compat buffer and assert by @jasnell in #406
- Add Node.js Compat StringDecoder by @jasnell in #407
- Allow specifying usages when importing public ECDH key, deriveBits/deriveKey refactor by @fhanau in #415
- [nfc] allow non-generated files in api bundles by @mikea in #427
- Implements Socket allowHalfOpen option. by @dom96 in #410
- Bump compatibility date to
2023-03-07
for release by @mrbbot in #430
Full Changelog: v1.20230228.0...v1.20230307.0
v1.20230228.0
What's Changed
- types: add botManagement.detectionIds to cf.d.ts by @KianNH in #344
- Cleanup: Use LOG_EXCEPTION for storage failures in actor cache by @bcaimano in #386
- Improve Webcrypto error handling, resolve several internal errors and add clarifying comments by @fhanau in #382
- Reset WebSocket outgoing message status in a single continuation by @bcaimano in #379
- Implement URLSearchParams size getter by @jasnell in #304
- Initial port of Node.js buffer tests and fixes by @jasnell in #385
- Add support for deflate-raw and check for trailing or incomplete data in Compression Streams by @fhanau in #398
- Clear owner ref on WritableStreamJsController cleanup by @jasnell in #401
- Bump compatibility date to
2023-02-28
for release by @mrbbot in #405
New Contributors
Full Changelog: v1.20230221.0...v1.20230228.0
v1.20230221.0
What's Changed
- Add
workerd test
for running unit tests under workerd by @kentonv in #341 - Allow Durable Objects to be stored persistently on local disk using SQLite by @kentonv in #302
- Relax overly strict IoContext checking for ReadableStreams by @jasnell in #384
- Make TransformStreamDefaultController more robust by @jasnell in #378
- Adopt proposed new Node.js AsyncLocalStorage apis to replace AsyncResource use cases by @jasnell in #331
- Bump compatibility date to
2023-02-21
for release by @mrbbot in #394
Full Changelog: v1.20230215.0...v1.20230221.0
v1.20230215.0
What's Changed
- Change TCP Socket's
connect
to take a SocketAddress struct. by @dom96 in #373 - Remove the $experimental attribute on the nodejs_compat flag by @jasnell in #375
- Allow setAlarm to be invoked in Durable Object constructors by @bcaimano in #372
- Use JSG_READONLY_PROTOTYPE_PROPERTY in sockets. by @dom96 in #377
- Add compatibility flag for dynamic dispatch exception tunneling behavior by @a-robinson in #365
- Add a script to repeatably generate
linux-arm64
anddarwin-arm64
builds by @penalosa in #380 - Bump compatibility date for release by @penalosa in #381
Full Changelog: v1.20230214.0...v1.20230215.0