Releases: cloudflare/workerd
Releases · cloudflare/workerd
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
v1.20230214.0
What's Changed
- Cleanup PumpToReader further by @jasnell in #355
- Store kj::Exception in PumpToReader rather than jsg::Value by @jasnell in #356
- Take Worker::Lock by reference when constructing a Worker::Actor by @bcaimano in #332
- Add initial issue template for workers-types issues by @lrapoport-cf in #354
- EW-7213: Fixup too strict checking of pipe lock status by @jasnell in #360
- Extend and harden crypto api error handling by @fhanau in #362
- Add Node.js Compat utils implementation by @jasnell in #347
- Extend Message and MessageBatch types by @w-kuhn in #366
- Disable linting for now on node/util.ts by @jasnell in #370
- Fix KVNamespace get() types when passing KVNamespaceGetOptions by @mhart in #369
- Report js exceptions from alarm handlers in traces by @bcaimano in #358
- Cleanup: Use LOG_EXCEPTION for fail open fallback failures by @bcaimano in #368
- Make IoContext checking stricter for streams. by @jasnell in #367
- Implement headers.getSetCookie() by @jasnell in #321
- Bump compatibility date to
2023-02-14
for release by @mrbbot in #376
New Contributors
- @lrapoport-cf made their first contribution in #354
- @w-kuhn made their first contribution in #366
Full Changelog: v1.20230209.0...v1.20230214.0
v1.20230209.0
What's Changed
- Revert "Revert "node compatibility typescript infrastructure"" by @mikea in #273
- Redirect spec flag by @edevil in #278
- simple test-fixture by @mikea in #263
- Fix streams regression when enqueuing a single buffer multiple times by @jasnell in #279
- Clear root context frame under lock by @jasnell in #284
- Use an IoOwn to hold the WritableStreamSink in PumpToReader by @jasnell in #281
- Add Email types by @nelsonjsduarte in #277
- macos: Allow compiling on catalina to ventura by @dio in #276
- add missing header by @mikea in #291
- Remove limitation on maximum number of keys in write operations by @bcaimano in #261
- fix email info declaration by @edevil in #289
- Clarify
workers-types
README by @penalosa in #287 - Allow an isolate to have a simple random uuid by @jasnell in #280
- types: add Pub/Sub types by @elithrar in #295
- Make PumpToReader stay on its own IoContext by @harrishancock in #298
- ReadableStream pumpto should be js errors not internal errors by @jasnell in #268
- Temporarily disable the built-in module compile cache by @jasnell in #271
- stack-trace symbolizer using llvm-symbolizer subprocess by @mikea in #297
- Neuter the EncodedAsyncOutputStream on end/abort by @harrishancock in #308
- v8Str: add support for char arrays by @edevil in #307
- Revert "stack-trace symbolizer using llvm-symbolizer subprocess" by @ObsidianMinor in #310
- Update R2/KJ to avoid mod-after-put when using ArrayBuffer by @jasnell in #309
- test-fixture: make main module customizable; send http requests by @mikea in #299
- use node bundle by @mikea in #300
- Fix two obscure bugs I ran into while testing by @kentonv in #274
- Revert "Update R2/KJ to avoid mod-after-put when using ArrayBuffer" by @kentonv in #314
- Add
2022-10-31
and2022-11-30
types entrypoints and diagram by @mrbbot in #317 - reland stack-trace symbolizer with ekam protection by @mikea in #318
- Improve fetch spec compliance for Request/Response by @jasnell in #301
- Disallow
/
in TCP socketsconnect
. by @dom96 in #322 - Bugfix: Assert upon counted deletes not muted deletes in actor cache … by @bcaimano in #328
- Adds a catch-all experimental compatibility flag for incremental work by @jasnell in #312
- Add experimental
getExisting
method to DurableObjectNamespace by @xortive in #323 - Actually block use of
Request.integrity
. by @kentonv in #333 - Simplify and refine async context tracking by @jasnell in #282
- Move initial Node.js polyfills to workerd by @jasnell in #334
- Wrap TransformStream algorithms with JSG_VISITABLE_LAMBDA by @jasnell in #336
- Optimize single-batch delete flushes in ActorCache by @a-robinson in #338
- Allow workerd inspector client to be fully trusted by @jasnell in #329
- Add workerd:compatibility-flags internal built-in module by @jasnell in #326
- Reject TCP socket
closed
promise when proxy rejects connections. by @dom96 in #335 - Change ActorCache backpressure to be based on dirty bytes rather than… by @bretthoerner in #342
- Add Node.js Compat Buffer implementation by @jasnell in #340
- Add Node.js Compat assert implementation by @jasnell in #346
- Refactor JSG exception decoding, add relevant test cases by @fhanau in #348
- node-compat: eslint test by @mikea in #345
- Remove limit on total entries in a DurableObjectTransaction by @bcaimano in #325
- Reset readable state when canceled by @jasnell in #349
- Fixup buggy URLSearchParams iterators by @jasnell in #353
- Bump compatibility date for release by @penalosa in #357
New Contributors
- @nelsonjsduarte made their first contribution in #277
- @dio made their first contribution in #276
- @elithrar made their first contribution in #295
- @fhanau made their first contribution in #348
Full Changelog: v1.20230115.0...v1.20230209.0
v1.20230115.0
What's Changed
- Overrides for TypeScript definition generation from JSG RTTI by @mrbbot in #133
- Generate an exportable and ambient version of the TypeScript types by @penalosa in #136
- Generate multiple types, one for each compatibility date that changes type signatures by @penalosa in #137
- add byteStreamFactory to worker interface by @edevil in #169
- Publish to NPM via CI by @penalosa in #166
- Document the runtime dependencies of
workerd
by @penalosa in #170 - Add support for TypeScript-only definitions by @mrbbot in #168
- Add overrides for Analytics Engine by @jimhawkridge in #172
- Improve implementation of DOMException by @jasnell in #159
- Implements API for connecting to TCP servers in workers by @dom96 in #162
- call setEventInfo() for custom events by @edevil in #175
- fix context.now() when handling a trace by @edevil in #177
- [R2] multipart bindings by @Frederik-Baetens in #154
- set event info in custom event by @edevil in #179
- Puts TCP sockets behind a compatibility flag. by @dom96 in #180
- During testing the GC will run after every test. by @Warfields in #173
- Fix
Request
andReadableStream
overrides by @mrbbot in #178 - Provide a way to determine if a durable object is broken from errors by @bcaimano in #151
- Types: Pull parameter names from header files by @penalosa in #165
- NPM release improvements by @penalosa in #182
- Add scripts tags to Trace Workers by @zebp in #188
workers types
npm release by @penalosa in #183- Add missing type check for internal module by @jasnell in #193
- Update for Cap'n Proto allowCancellation change. by @kentonv in #187
- Revert "
workers types
npm release (#183)" by @jasnell in #202 - Add action to block merging if PR labeled
needs-internal-pr
by @jasnell in #203 - Add support for Queue events to trace workers by @a-robinson in #196
- return null upon R2 conditonal put failure by @Frederik-Baetens in #213
- Update sockets to use new pipelining support in capnproto. by @harrishancock in #214
- Use externalized strings for built-in js/ts modules by @jasnell in #201
- Implements RpcWorkerInterface::connect. by @dom96 in #192
- Support non-"IoOwn"ed 'OutgoingFactory's in Fetcher by @ObsidianMinor in #215
- Add optional locationHint parameter to Durable Objects
get()
by @bretthoerner in #221 - Switch from EmbedderHeapTracer to cppgc by @kentonv in #199
- Fix crash in isolate shutdown from recent GC changes. by @kentonv in #225
- Add sendBatch definition to @cloudflare/workers-types by @OilyLime in #223
- Fix overridden Jaeger span duration by @jclee in #195
- Experimental code cache for built-in js/ts modules by @jasnell in #204
- Update hex checks to ignore Fullwidth ASCII characters by @vickykont in #227
- Properly handle JS exceptions in promise rejection callback. by @kentonv in #231
- Fix UAF in InputGate::Waiter by @harrishancock in #232
- Implement missing Worker::Isolate::SubrequestClient::connect. by @dom96 in #233
- Enforce WorkerInterface::connect to be implemented in all subclasses. by @dom96 in #234
- Introduce move-inhibiting version of KJ_DISALLOW_COPY by @harrishancock in #236
- Hide
connect()
function entirely when the flag is not enabled. by @kentonv in #239 - Fix
tsl
typo and comment about address validation by @kentonv in #238 - Added annotation to denote if a flag is experimental by @Warfields in #235
- [bazel] updating js dependencies by @mikea in #245
- Add support for Durable Object jurisdictional subnamespaces by @bretthoerner in #242
- Improve representation of trace spans. by @kentonv in #141
- Cleanup: Take out jsg error throwing functions by @bcaimano in #241
- Rename nodejs compat flag to remove version by @jasnell in #247
- Fix
waitUntil
types to accept anyPromise
as opposed to justPromise<void>
by @mrbbot in #191 - Remove no-longer-used Jaeger code and Protobuf dependency by @kentonv in #248
- thin-lto optimized build configuration by @mikea in #250
- Use
kj::uint
to fix macOS builds by @mrbbot in #251 - Refactor out ReadableStreamJsSource by @jasnell in #226
- Gracefully drain process on SIGTERM. by @kentonv in #244
- Add macOS to PR CI by @mrbbot in #252
- new event info type email by @edevil in #249
- Use tcmalloc for memory allocation. by @kentonv in #253
- Revert "Gracefully drain process on SIGTERM." by @byule in #255
- remove lto clang override by @mikea in #254
- Recommend alternative to bazel clean in README.md by @pcj in #256
- Clear URLSearchParam ref to URL when URL destroyed by @jasnell in #257
- node compatibility typescript infrastructure by @mikea in #258
- Revert "node compatibility typescript infrastructure" by @mikea in #262
- Initial implementation of async context tracking by @jasnell in #208
- node compatibility typescript infrastructure by @mikea in #264
- Fix MacOS build by not using tcmalloc. by @kentonv in #267
- fix content-type param extraction by @edevil in #260
- Revert "node compatibility typescript infrastructure" by @harrishancock in #269
- Revert "Revert "Gracefully drain process on SIGTERM."" by @kentonv in #265
- bumping capnproto by @mikea in #272
- Refactors Sockets closed promise handling. by @dom96 in #237
- Use service name as service worker script name by @mrbbot in #190
- Revert reverts of types parameter names (#165) and types
npm
release (#183) by @mrbbot in #220 - Validate addresses passed to
connect
. by @dom96 in #266 - Bump compatibility date to
2023-01-15
to trigger release by @mrbbot in #275
New Contributors
- @jimhawkridge made their first contribution in #172
- @ObsidianMinor made their first contribution in #215
- @bretthoerner made their first contribution in #221
- @OilyLime made their first contribution in #223
- @jclee made their first contribution in #195
- @vickykont made their first contribution in #227
- @byule made their first contribution in #255
- @pcj made their first contribution in #256
Full Changelog: v1.20221108.0...v1.20230115.0
v1.20221108.0
What's Changed
- Rename BUILD -> BUILD.bazel by @kentonv in #1
- Fix clang 11 and make icudata embed portable by @kentonv in #3
- macOS Support by @mrbbot in #6
- Update runtime name in workerd.capnp comments by @jasnell in #5
- Add simple hello world sample by @jasnell in #4
- Implement kqueue-based FileWatcher for MacOS by @kentonv in #7
- Mention full XCode install requirement on macOS and soften WSL ver. by @dom96 in #10
- Add banner to README by @neynah in #9
- Synchronize changes with upstream repo. by @kentonv in #14
- Tweak the readme a bit by @kentonv in #13
- Various cleanups. by @kentonv in #19
- Support Durable Objects (in-memory only, for testing) by @kentonv in #15
- Add --experimental CLI flag, require it to enable experimental features. by @kentonv in #21
- Fix broken link to workerd.capnp in README.md. by @kentonv in #22
- Fix refresh_compile_commands target. by @kentonv in #18
- macOS x86 Support by @mrbbot in #24
- Publish to NPM by @penalosa in #23
- Support Linux ARM64 by @penalosa in #26
- TODO(launch) -> TODO(beta) by @kentonv in #25
- Add durable objects chat demo as a sample. by @kentonv in #27
- Add
npx
/wrangler
instructions toREADME.md
by @mrbbot in #28 - docs: Fix KJ style guide & tour links in jsg readme by @rschristian in #42
- Add static file-serving example. by @kentonv in #37
- VS Code defaults by @mikea in #34
- chore(readme): fix typo by @millsp in #36
- jsg rtti: adding explicit Configuration parameter everywhere by @mikea in #38
- Enable CLA Assistant on this repo by @larcher in #55
- Sync changes from internal repo for the last time. by @kentonv in #63
- Disable CLA Assistant locking PR's by @larcher in #65
- chore: fix comments by @spacewander in #67
- Updated README with instructions to clean build cache. by @jonasclaes in #59
- jsg rtti: move implementation types to a separate enum by @mikea in #35
- move R2HttpMetadata clone impl to r2-bucket.c++ by @Frederik-Baetens in #71
- Enable WebSocket Compression in
workerd
by @MellowYarker in #69 - Initial support for devtools inspector protocol by @jasnell in #17
- Revert recent streams backpressure tee refactor by @harrishancock in #78
- Add CODEOWNERS by @kentonv in #81
- Cleanup: Do not log tunneled exceptions that cause alarm retries by @bcaimano in #80
- Move coCapture() to libkj by @harrishancock in #82
- Fix build by @harrishancock in #84
- Remove ArrayPtr from list of supported jsg wrapping types by @a-robinson in #79
- adding created() event to IsolateObserver by @mikea in #90
- jsg: dynamic imports by @mikea in #88
- Add LockTiming::waitingForOtherIsolate() by @harrishancock in #95
- Add dispatchNamespace to TraceItem by @zebp in #75
- Fixup streams bugs by @jasnell in #85
- rtti: symbol table to lookup structures by @mikea in #66
- Fixing a typo by @Warfields in #97
- jsg: using Lock instead of isolate in modules code by @mikea in #94
- add nodeCompatExperimental feature flag by @mikea in #89
- jsg: fix rtti use-after-free by @mikea in #99
- Clarify the chat demo unique keys are examples by @kentonv in #98
- Add compatibility dates for streams flags by @jasnell in #86
- Add way to determine if alarm retry limit shouldn't be applied by @xortive in #100
- Fixup use-after-free error in streams tee by @jasnell in #102
- Add explicit flush to Durable Object storage interface by @bcaimano in #87
- jsg: adding long long types to rtti by @mikea in #106
- Use explicit int64_t in jaeger-test TagValue by @mhart in #109
- Automatic TypeScript definition generation from JSG RTTI by @mrbbot in #110
- Fixup ref cycle in streams PipeLocks by @jasnell in #111
- Revert: Automatic TypeScript definition generation from JSG RTTI (#110) by @jasnell in #112
- Add more Jaeger spans to Worker constructor by @harrishancock in #114
- jsg: allow user modules to override built ins by @mikea in #115
- Fixup atLeast calculations for partially filled byob reads by @jasnell in #116
- Wrap the WritableStream controller in a kj::Own by @jasnell in #118
- add toJSON implementation for R2Checksums by @Frederik-Baetens in #103
- Fixup premature close state on ReadableStreamJsSource by @jasnell in #120
- Improvements to streams spec compliance and edge cases by @jasnell in #122
- Change internal error to user facing error on writer double close by @jasnell in #128
- Emit different error if a non-actor is looking for a class entrypoint by @bcaimano in #132
- Automatic TypeScript definition generation from JSG RTTI by @mrbbot in #113
- Improved support for readAtLeast byob reads by @jasnell in #126
- Delete CODEOWNERS by @koeninger in #139
- Add an ability to inject an arbitrary set of headers to KV requests by @vlovich in #135
- Remove obsolete invalid assert by @jasnell in #144
- Revert "Add an ability to inject an arbitrary set of headers to KV re… by @harrishancock in #145
- Small typo fix in comment by @vlovich in #127
- Request compression when calling
new WebSocket()
by default by @MellowYarker in #131 - Add explicit shutdown to ActorCache when the Worker::Actor is shutdown by @bcaimano in #134
- Add baseline enforcement within the runtime by @vlovich in #140
- Remove
id
parameter from IsolateObserver::created() by @harrishancock in #148 - Add an ability to inject an arbitrary set of headers to KV requests by @vlovich in #150
- Enable built-in modules to import internal modules by @jasnell in #149
- Cleanup KV HttpClient construction by @vlovich in #152
- Cleanup: Don't pass
Tracer
toWorkerEntrypoint::construct()
. by @kentonv in #142 - Bump compatibility date for release by @penalosa in #161
- add bytestream to context by @edevil in #160
- Use a remote bazel cache to speed up builds by @penalosa in #153
- Run the bazel cache worker on a zone to increase upload limits by @penalosa in #163
- GitHub Actions workflow for automatic releases by @penalosa in #164
New Contributors
- @kentonv made their first contribution in #1
- @dom96 made their first contribution in #10
- @neynah made their first contribution in #9
- @rschristian made their first contribution in https://github.com/cloudflar...