Skip to content

Releases: lukeed/worktop

v0.8.0-next.18

18 Jan 19:16
Compare
Choose a tag to compare
v0.8.0-next.18 Pre-release
Pre-release

Breaking

  • Changed matching behavior of optional wildcard routes (eg; /books/*?): 0f4d4a6
    See regexparam@3.0 release notes for more info.

  • Changed the context.params wildcard value key from "wild" to "*": d770b39
    See regexparam@3.0 release notes for more info.

    API.add('GET', '/foo/*', (req, context) => {
    -- let value = context.params.wild;
    ++ let value = context.params['*'];
    });

Full Changelog: v0.8.0-next.16...v0.8.0-next.18

v0.8.0-next.16

18 Jan 19:02
Compare
Choose a tag to compare
v0.8.0-next.16 Pre-release
Pre-release

Patches


Full Changelog: v0.8.0-next.15...v0.8.0-next.16

v0.8.0-next.15

17 Apr 17:53
Compare
Choose a tag to compare
v0.8.0-next.15 Pre-release
Pre-release

Patches

  • Add types conditions for "exports" map (#175): bdc0695
  • fix(cfw): fix structuredClone typo (#163): 406f5e3
    Thank you @leader22
  • fix(cfw): add structuredClone and queueMicrotask types: 4f251a4
  • fix(cfw): add HTMLRewriter types: 1bb1e7e
  • fix(cfw): declare Headers.getAll method signature: 3f8c224

Chores


Full Changelog: v0.8.0-next.14...v0.8.0-next.15

v0.8.0-next.14

10 May 21:44
Compare
Choose a tag to compare
v0.8.0-next.14 Pre-release
Pre-release

Breaking

  • (worktop/cfw.kv): Only allow JSON data for Entity (#161): d8b0d1b
    See linked PR for explainer

Patches

  • (worktop/cfw.kv): Ensure internal Cache entity keys are URL-friendly: d1f9d5c
  • (worktop/cfw.kv): Accept type-argument in Entity definition: 6f47542

Chores


Full Changelog: v0.8.0-next.13...v0.8.0-next.14

v0.8.0-next.13

25 Apr 19:18
Compare
Choose a tag to compare
v0.8.0-next.13 Pre-release
Pre-release

Features

Patches

Chores


Full Changelog: v0.8.0-next.12...v0.8.0-next.13

v0.8.0-next.12

02 Mar 06:12
Compare
Choose a tag to compare
v0.8.0-next.12 Pre-release
Pre-release

Patches

  • (worktop/cfw): Do not pass ctx parameter thru to run directly: 235d800

v0.8.0-next.11

02 Mar 06:11
Compare
Choose a tag to compare
v0.8.0-next.11 Pre-release
Pre-release

Features

  • (worktop/cfw): Add Module.Service type interface: 2f5dd4d
    Definition provided for the Workers Services beta

v0.8.0-next.10

10 Jan 21:10
Compare
Choose a tag to compare
v0.8.0-next.10 Pre-release
Pre-release

Breaking

IMPORTANT
There are several breaking changes in this release.
Going forward, worktop is a platform agnostic framework, offering a core set of modules that will work anywhere that supports the core set of Web APIs that are necessary. At time of this release, this includes Cloudflare Workers, Service Workers (web), and Deno. Adding Node.js support is planned for a near-future release.

As part of this, worktop needed to rearrange β€” aka separate β€” the Cloudflare-specific methods & TypeScript interfaces away from the core modules and move them into namespaced submodules specific to Cloudflare. This pattern will be followed for other platforms with their own platform-specific types and/or behaviors, too.

For example, as shown below, the worktop/kv module has been renamed to worktop/cfw.kv because it belongs to (and only works with) Cloudflare. Similarly, there's a worktop/ws core module, which includes shared WebSocket utility, but there are also the woktop/deno.ws and worktop/cfw.ws modules, which include implementations specific to Deno and Cloudflare, respectively.

It is highly recommended you follow along #125, #132, #134, and #139 for more information and explanations.

  • (worktop/cache): Generalize worktop/cache module (#139): 985150b
    Add a cache argument to the lookup, save, and sync methods.
    Note: Existing users can use worktop/cfw.cache for a drop-in replacement.

  • (worktop/ws): Move the listen method & CF-specific types to the new worktop/cfw.ws module (#134): 504328d
    Previously, the worktop/ws module had Cloudflare-specific information within it.
    It's now general-purpose and all Cloudflare-specific contents have been moved to the (new) worktop/cfw.ws module. See #133 for more info

  • Rename worktop/kv to worktop/cfw.kv: abf3d8a

  • Rename worktop/kv.assets to worktop/cfw.kv.assets: 78ab152

  • Rename worktop/durable to worktop/cfw.durable: 92339d3

  • (worktop/sw): Removed reply and listen; use start instead.

  • (worktop/cache): Removed reply and listen; use start instead.

  • (worktop/module): Deleted. See worktop/cfw instead.

  • (worktop/ws): Move WebSocketPair global type to worktop/cfw module: 9572f22

  • (worktop): Move CronEvent to worktop/cfw module: e3af56c

  • (worktop): Move Bindings to worktop/cfw module: 88f7d93

Features

  • Adds Deno support via the new worktop/deno module: 5bae9a5
    Offers a start export which can run a worktop Router in Deno Deploy or a standard Deno runtime.

  • Add worktop/deno.ws module: 91d8e73
    A WebSocket module specifically for the Deno environment; see #133

  • Add worktop/cfw.cache module (#139): 3f516de
    A module for the Cache API specifically for the Cloudflare environment.

Patches

  • (worktop/sw): Ensure ctx.waitUntil is forwarded: 61a558f
    In Cloudflare environment, the previous ...ctx destructure hid the waitUntil & passThrough methods.

Full Changelog: v0.8.0-next.9...v0.8.0-next.10

v0.8.0-next.9

30 Dec 16:20
Compare
Choose a tag to compare
v0.8.0-next.9 Pre-release
Pre-release

Patches

  • (durable): Correct state.blockConcurrencyWhile types & usage (#116, #120 ): 1f9e34f
    Thank you @ConProgramming~!
  • (cache): Do not cache a Response with a 101 status code (#121): 9457785
  • (router): Mark the context parameter within Initializer as optional (#120): ce6872b
  • (cors) Remove origin scope hoisting (#118): 88f0433

Chores


Full Changelog: v0.8.0-next.8...v0.8.0-next.9

v0.8.0-next.8

07 Nov 01:46
Compare
Choose a tag to compare
v0.8.0-next.8 Pre-release
Pre-release

Features


Full Changelog: v0.8.0-next.6...v0.8.0-next.8