Releases: cloudflare/workerd
Releases · cloudflare/workerd
v1.20240223.0
What's Changed
- Pin workerd local dev python package version numbers to match deployment by @garrettgu10 in #1707
- Log a warning message for long running storage operations when flushing by @Frederik-Baetens in #1693
- Revert "Revert "Add toStringTag value on JSG resource types"" by @garrettgu10 in #1714
- Expand CODEOWNERS by @fhanau in #1713
- Revert "Revert "Revert "Add toStringTag value on JSG resource types""" by @garrettgu10 in #1721
- Separate JsObject and JsMap by @jasnell in #1715
- Update supported compatibility date by @garrettgu10 in #1722
Full Changelog: v1.20240222.0...v1.20240223.0
v1.20240222.0
What's Changed
- Python: add some tests by @hoodmane in #1634
- [CI] Update action versions, fix deprecation warnings and silence progress messages by @fhanau in #1646
- Implement heap snapshot memory tracking for scheduled, sockets, sql by @jasnell in #1643
- Automatically run webgpu tests if enable_experimental_webgpu is enabled by @fhanau in #1569
- Use
IncomingRequestCfProperties
in PagesEventContext
by @mrbbot in #1638 - Fixup gc tracing in EventTarget by @jasnell in #1648
- Add heap snapshot memory tracker to api/trace.h by @jasnell in #1647
- Add heap snapshot memory tracking for analytics engine and websocket by @jasnell in #1650
- Replace KJ_IF_MAYBE with KJ_IF_SOME in hibernatable-web-socket.c++ by @jasnell in #1649
- Refactor JSRPC to prepare for capability-based RPC by @kentonv in #1617
- Add heap snapshot memory tracker to pyodide by @jasnell in #1655
- Add heap snapshot memory tracker for crypto by @jasnell in #1654
- Add heap snapshot memory tracker to api/url.h by @jasnell in #1652
- Python: add support for subdirectory structure by @hoodmane in #1635
- Revert "Fixup gc tracing in EventTarget" by @kentonv in #1653
- Reduce server-test runtime from >3min to <1.5s. by @kentonv in #1659
- Removes old Socket::close implementation. by @dom96 in #1660
- Add jsg::MemoryTracker docs to jsg/readme by @jasnell in #1661
- Python/fastapi: Update asgi.py to pass request environment by @hoodmane in #1644
- Python: update to Pyodide 0.26.0a1 / Python 3.12 by @hoodmane in #1645
- Update rules_python to use 3.12 by @hoodmane in #1667
- D1: Adding
.raw({columnNames})
types and tests for.run()
by @geelen in #1672 - Revert "Revert "Add implementations for getPreferredExtensions"" by @MellowYarker in #1668
- Update to pyodide 0.26.0a2 by @hoodmane in #1676
- Extend UUID API by @jp4a50 in #1683
- JSRPC: Service bindings and stateless class syntax by @kentonv in #1658
- Ignore unimplemented resource type properties in
util.inspect()
by @mrbbot in #1679 - Add v8 patch to preserve async context for custom thenables by @jasnell in #1665
- Add support for the standard
byob
min read option by @jasnell in #1688 - Cleanup: Split compatibility-date.capnp into its own capnp_library. by @kentonv in #1684
- Add toStringTag value on JSG resource types by @garrettgu10 in #1607
- Account for the canceler having been nulled out. by @jasnell in #1678
- Default the new byob reader option to kj::none by @jasnell in #1695
- Revert "Add toStringTag value on JSG resource types" by @mikea in #1700
- Remove log line about addEventListener in modules scripts. by @kentonv in #1702
- Set alarm timeout to 15 minutes by @jqmmes in #1680
- Cancel pending reads and writes on releaseLock by @jasnell in #1690
- v8 12.2 update by @mikea in #1694
- Implements artifact store for Python. by @dom96 in #1670
- JSRPC: Support passing RPC stubs across other RPCs by @kentonv in #1692
- Fixup importing built-ins from module "subdirectories" by @jasnell in #1682
- Add compat flag to enable AsyncLocalStorage separately by @jasnell in #1706
- D1: allow binding 'true' and 'false' by converting to 1 or 0 by @geelen in #1677
- Build
kv-asset-handler
before running Miniflare tests by @mrbbot in #1710 - [CI] Reduce Windows debug binary size by @fhanau in #1619
- Bump supported compatibility date. by @jp4a50 in #1712
Full Changelog: v1.20240208.0...v1.20240222.0
v1.20240208.0
What's Changed
- [bazel] Do not compile wd_cc_library by default by @fhanau in #1512
- Simplify "named intercept" by @kentonv in #1585
- Revert "Try to take lock when delivering websocket events" by @mikea in #1593
- sqlite: don't count rows written to temporary (ephemeral) tables by @smerritt in #1594
- [bazel] Mark param_extractor{_bin} as no-downstream by @fhanau in #1596
- Add implementations for getPreferredExtensions by @MellowYarker in #1507
- Implement MemoryTracker for Heap Snapshots by @jasnell in #1584
- Accept module names with and without a .py extension. by @dom96 in #1597
- Give WS a strong ref to
InputGate::CriticalSection
by @MellowYarker in #1591 - Check lower bound returned by atoi() by @garrettgu10 in #1603
- Move python-entrypoint.js into a top level Capnp constant by @hoodmane in #1599
- Fix GC visitation in stream readers and writers by @kentonv in #1606
- [nfc] dependency updates, expand usage of bazel implementation_deps by @fhanau in #1583
- Adding resultsFormat to d1-api.ts to fix .raw() bug by @geelen in #1586
- [CI] Use limited debug info on Linux-{asan,debug} CI runs by @fhanau in #1615
- Avoid false-positives in content-type text warning by @jasnell in #1616
- Switch to using kj::GlobFilter by @jasnell in #1613
- Clean up builtin-wasm-modules autogate (used for Python) by @dom96 in #1620
- Await actor alarm deletion cache flush outputGate when alarm succeeds by @jqmmes in #1601
- Update for http-over-capnp refactor. by @kentonv in #1588
- Cleanup EventTarget::NativeHandler by @jasnell in #1621
- Python: Only pass metadata that we need by @hoodmane in #1600
- Python: Share Python interpreter across requests by @hoodmane in #1609
- Fix two spots I missed in #1606. by @kentonv in #1623
- Python: Pass the env parameter into handlers by @hoodmane in #1610
- Consolidate entropy source impls into a single source by @jasnell in #1614
- Implement heap snapsnot memory tracking for Event, EventTarget by @jasnell in #1605
- Fix unchecked malloc by @garrettgu10 in #1602
- Implement memory tracking for Blob/File/Streams by @jasnell in #1608
- Implement memory tracking for handful of classes by @jasnell in #1625
- Revert "Add implementations for getPreferredExtensions" by @MellowYarker in #1626
- Disallow file extension-less Python modules. by @dom96 in #1624
- Remove
#pragma once
from memory.c++ by @justin-mp in #1629 - Revert "Consolidate entropy source impls into a single source" by @dom96 in #1633
- Revert "[bazel] Do not compile wd_cc_library by default" by @mikea in #1628
- Implement heap snapshot memorytracker for http types by @jasnell in #1631
- Limit alarm handler walltime to 15minutes by @jqmmes in #1622
- Implement heap snapshot memory tracker for r2 by @jasnell in #1636
- Update supported-compatibility-date.txt for 2024-02-08 release by @fhanau in #1641
New Contributors
- @garrettgu10 made their first contribution in #1603
Full Changelog: v1.20240129.0...v1.20240208.0
v1.20240129.0
What's Changed
- Explicitly mark jsg::Lock disallowed as coroutine param by @jasnell in #1548
- Implements embedding of Python packages in workerd. by @dom96 in #1543
- Implements support for Python in workerd.capnp by @dom96 in #1530
- Update to v8 12.1 by @jasnell in #1552
- Update Python packages to include fastapi. by @dom96 in #1557
- Update following a handful of v8 pending deprecations by @jasnell in #1554
- Improve
ReadableStream
type for email message by @niquenen in #1506 - Remove explicitly unimplemented importScripts by @jasnell in #1556
- Remove unnecessary coroutine from streams/compression.c++ by @jasnell in #1564
- Refactor jsg::V8StackScope into callback-based API by @jasnell in #1560
- [nfc] Update bazel to 7.0.1, clean up git-based dependencies and related documentation by @fhanau in #1559
- Update to zlib 1.3.1, switch to fetching from GitHub by @fhanau in #1568
- Improve streams ReadPendingScope cleanup by @jasnell in #1545
- Increase size limit for inspector protocol messages. by @kentonv in #1573
- Bump jinja2 from 3.1.2 to 3.1.3 in /build/deps by @dependabot in #1571
- Refactor IoContext::Scope and ThreadScope into callback-based API by @jasnell in #1565
- Python: Set up read only file system backed by packages tar by @hoodmane in #1555
- Add support for hibernatable websocket tracing by @xortive in #709
- Refactor js.enterContextScope() to JSG_WITHIN_CONTEXT_SCOPE macro by @jasnell in #1574
- Await connection and flush before closing socket. by @dom96 in #1532
- Add support for counting invocations of now() by @ohodson in #1380
- Finish up last remaining v8::Context::Scope usage by @jasnell in #1575
- Add comment to explain CppHeap deprecation warnings by @jasnell in #1577
- Get fastapi working the rest of the way by @hoodmane in #1566
- Remove IsolateShutdownScope by @jasnell in #1578
- Update pyodide to 0.25.0 by @hoodmane in #1576
- Add expectedLength for JS streams by @jasnell in #1579
- Set backpressure by default on JS-backed TransformStream by @jasnell in #1581
- Don't embed Python packages in workerd. by @dom96 in #1580
- Release Jan 29th, 2024 by @Warfields in #1589
New Contributors
- @niquenen made their first contribution in #1506
- @dependabot made their first contribution in #1571
Full Changelog: v1.20240117.0...v1.20240129.0
v1.20240117.0
What's Changed
- Provide WebSocket ready state constants to follow the Web IDL definition by @bcaimano in #1393
- Update README for SQLite patches. by @smerritt in #1495
- Add support for bazel7 by @fhanau in #1385
- Ensure
this
is correct in js rpc calls by @jasnell in #1502 - Remove deprecated API from modules.h by @jasnell in #1498
- fix ECDH JWK key imports do not check alg by @jasnell in #1503
- Introduce configurable pbkdf2 iteration limit by @jasnell in #1471
- [nfc] bazel cleanup, fix warnings on Windows, use http_archive where possible by @fhanau in #1509
- Clarify error message when disallowed operations are called within global scope by @irvinebroque in #1510
- [nfc] Assorted bazel cleanup by @fhanau in #1499
- Change KJ_THREADLOCAL_PTR to thread_local. by @kentonv in #1511
- Upgrade to Xcode 15, avoid duplicate unwind info on x86 macOS by @fhanau in #1496
- Catch and log JsExceptionThrown when resolving/rejecting by @jasnell in #1514
- Clarify that script version IDs are optional. by @jp4a50 in #1493
- Remove the jsg::V8System decl from worker.h by @jasnell in #1517
- Remove old customer-specific hack from workerd. by @jasnell in #1518
- Port a handful of HTMLRewriter tests from the internal repo by @jasnell in #1519
- Implements Python langchain support by @dom96 in #1524
- Intentionally break arm builds to test internal CI notifications by @mrbbot in #1525
- Revert "Intentionally break arm builds to test internal CI notifications" by @mrbbot in #1527
- Enable event timeout for hibernatable web sockets by @jqmmes in #628
- Roll V8, remove unused compat flags arg by @fhanau in #1526
- Implements
opened
attribute in Socket by @dom96 in #1377 - Implements automated aiohttp patching for Python. by @dom96 in #1531
- Enforce message size limit for JS RPC by @MellowYarker in #1536
- Decrease JS RPC message limit to 1MiB by @MellowYarker in #1538
- Add getTags() for websocket hibernation by @MellowYarker in #1233
- Try to take lock when delivering websocket events by @MellowYarker in #1537
- Multiple fixups in preparation for v8 12.1 by @jasnell in #1534
- Update capnproto to get new WebSocket closing behavior by @smerritt in #1544
- Reorder JS RPC message size exception by @MellowYarker in #1542
- Verify close() works in ws close handler by @MellowYarker in #1535
- Update supported-compatibility-date.txt for 2024.1.18 release by @harrishancock in #1546
Full Changelog: v1.20231218.0...v1.20240117.0
v1.20231218.0
What's Changed
- 2023-12-06 Update Rust crates, brotli by @fhanau in #1478
- Move logic from
wd_ts_bundle
towd_js_bundle
by @hoodmane in #1479 - Work around overly-aggressive ASAN poisoning in cppgc. by @kentonv in #1480
- Experimental perfetto support for workerd by @jasnell in #1446
- 1467 again to hopefully get CI moving by @dom96 in #1484
- Start moving V8Inspector related stuff out of worker.c++ by @jasnell in #1481
- More perfetto instrumentation and fixes by @jasnell in #1486
- Fixup perfetto trace labels for WorkerdApi by @jasnell in #1485
- Implement experimental module fallback service for testing by @jasnell in #1423
- Update capnproto to b652cf8 by @1000hz in #1487
- Replace scriptVersionId with scriptVersion object in worker trace events by @jp4a50 in #1476
- [Vectorize] Update types to allow filtering metadata for equality by @ndisidore in #1470
- Add
#if
guards toASAN_UNPOISON_MEMORY_REGION
and#include
by @mrbbot in #1490 - Convert script version ID capnp representation to UUID. by @jp4a50 in #1491
- Implement
abortAllDurableObjects()
function by @mrbbot in #1489 - Additional minor cleanups for worker.h by @jasnell in #1488
- Introduces Pyodide bootstrap files. by @dom96 in #1492
- Durable Object RPC stub (name interceptor) by @MellowYarker in #1311
- JS RPC for Durable Objects by @MellowYarker in #1028
- Upgrade to macOS 13 runner and switch to LLVM 15 on Linux by @fhanau in #1308
- Update supported-compatibility-date.txt for 2023.12.18 release by @harrishancock in #1494
Full Changelog: v1.20231206.0...v1.20231218.0
v1.20231206.0
What's Changed
- webgpu: implement copyTextureToBuffer() by @edevil in #1425
- Fix workers-types release version by @DaniFoldi in #1431
- Fix multiple waits on maybeClosureWaitable by @jasnell in #1427
- webgpu: Implemented more command encoder methods by @edevil in #1434
- Implements autogate framework. by @dom96 in #1426
- inspector: simplify locking to avoid deadlock by @ohodson in #1415
- Port internal Response.json tests to wd-test by @jasnell in #1433
- Autogate fixes and improvements. by @dom96 in #1436
- Update dawn2 by @edevil in #1441
- Log warnings directly to
stderr
locally by @mrbbot in #1444 - Cleanup a handful of workerd/io headers by @jasnell in #1437
- Move some function implementations out of hibernatable-web-socket.h by @jasnell in #1450
- Minor cleanups in basics.h/c++ by @jasnell in #1448
- Some minor cleanup of hibernation-manager headers by @jasnell in #1449
- Update dev container's node version by @ndisidore in #1447
- Add script version to worker trace events. by @jp4a50 in #1445
- Move autogate from server to util by @hoodmane in #1443
- Fix ubsan warnings, apply additional hardening for Date parsing by @fhanau in #1451
- Update to V8 12.0 by @fhanau in #1438
- Move some function impls out of the web-socket header by @jasnell in #1452
- Move WeakIsolateRef out to templated util by @jasnell in #1456
- Simplify autogates config and optimise autogate storage. by @dom96 in #1457
- Consolidate multiple defs/impls of WeakRef by @jasnell in #1461
- Multiple minor worker.h related cleanups by @jasnell in #1454
- Allow internal builtin modules to be implemented with webassembly by @hoodmane in #1402
- Move AlarmFulfiller impl out of worker.h by @jasnell in #1455
- Move WorkerEntrypoint definition out of header by @jasnell in #1453
- [Vectorize] Fix (and test) compatibility flag loading in Vectorize by @ndisidore in #1458
- Allow builtin data modules by @hoodmane in #1459
- Decompose io-context.h/c++ into multiple headers/c++ files by @jasnell in #1460
- webgpu: tidy build script by @edevil in #1465
- Remove unnecessary includes from form-data.{c++,h}. by @jasnell in #1466
- Address long-standing todo to rename ApiIsolate by @jasnell in #1462
- Persist the actorId for ActorSqliteHooks by @jasnell in #1474
- Move ActorIdFactory/ActorId out to separate header by @jasnell in #1473
- Cleanup some includes in api/global-scope.h by @jasnell in #1475
- Update supported-compatibility-date.txt for 2023-12-06 release by @fhanau in #1477
New Contributors
Full Changelog: v1.20231121.0...v1.20231206.0
v1.20231121.0
What's Changed
- Revert "Flush and await Socket connection before resolving Socket.close()." by @jp4a50 in #1412
- Add vscode task to generate local doxygen API docs by @jasnell in #1411
- Fixup HeapSnapshot cleanup by @jasnell in #1413
- webgpu: implement render pass encoder by @edevil in #1414
- Implement unsafe.newAsyncFunction for unsafe eval binding by @jasnell in #1417
- Refactor out supportedCompatibilityDate by @taylorlee in #1416
- Update capnp and push release by @kentonv in #1424
New Contributors
- @taylorlee made their first contribution in #1416
Full Changelog: v1.20231114.0...v1.20231121.0
v1.20231030.0
What's Changed
- webgpu: implement more api objects related to rendering by @edevil in #1341
- upgrade rust toolchain to 1.72.1 by @fhanau in #1331
- Enable windows-debug github runner by @ohodson in #1347
- Implement navigator.sendBeacon by @jasnell in #1265
- Revised the extension sample README.md by @0xakihiko in #1350
- Add
wrangler
team to CODEOWNERS by @penalosa in #1351 - Use shared linkage for benchmarks by @fhanau in #1336
- Adds JSG_NAMED_INTERCEPT by @jasnell in #1288
- Extends
IsolateObserver
to include reporting of internal exceptions by @jasnell in #1353 - Only use -gsimple-template-names with clang by @ohodson in #1352
- Log Actor ID on V8 deserialization errors by @justin-mp in #1354
- Port FormData tests from internal to workerd by @jasnell in #1355
- Update release workflow by @penalosa in #1357
- Assorted CI dependency cleanup by @fhanau in #1359
- Temporarily disable Node-style logging for service workers by @mrbbot in #1364
- Update compatibility-date.capnp by @penalosa in #1363
New Contributors
- @0xakihiko made their first contribution in #1350
- @justin-mp made their first contribution in #1354
Full Changelog: v1.20231025.0...v1.20231030.0
v1.20231025.0
What's Changed
- webgpu: Adding more objects by @edevil in #1325
- Create CODEOWNERS by @kflansburg in #1267
- Add back "Configure download mirrors" step to test.tml by @ohodson in #1337
- Replace a straggling KJ_IF_MAYBE with KJ_IF_SOME by @ohodson in #1339
- Implement an
UnsafeEval
binding by @jasnell in #1338 - Zero out raw key data when freed by @jasnell in #1340
- Fix Node-like
console.log()
ing when spawning from Node by @mrbbot in #1343 - Clean up warnings on Windows/with LLVM16 by @fhanau in #1342
- Bump compatibility date to
2023-10-25
for release by @mrbbot in #1345
Full Changelog: v1.20231023.0...v1.20231025.0