From 57428ca656e4f6becb9d5b7bc3ed373cf17f5db7 Mon Sep 17 00:00:00 2001 From: bcoll Date: Wed, 7 Sep 2022 21:58:35 +0100 Subject: [PATCH] Bump versions to `2.8.0`, update `CHANGELOG.md` and docs --- docs/CHANGELOG.md | 94 ++++ docs/src/content/core/compatibility.md | 2 + docs/src/content/core/standards.md | 3 +- docs/src/content/developing/live-reload.md | 4 +- docs/src/content/get-started/api.md | 4 + docs/src/content/get-started/cli.md | 3 + docs/src/content/storage/sites.md | 8 +- docs/src/content/testing/ava.md | 2 +- docs/src/content/testing/jest.md | 42 ++ docs/src/content/testing/vitest.md | 376 ++++++++++++++++ package-lock.json | 424 +++++++++--------- package.json | 2 +- packages/cache/package.json | 10 +- packages/cli-parser/package.json | 8 +- packages/core/package.json | 14 +- packages/durable-objects/package.json | 14 +- packages/html-rewriter/package.json | 8 +- packages/http-server/package.json | 10 +- .../jest-environment-miniflare/package.json | 12 +- packages/kv/package.json | 6 +- packages/miniflare/README.md | 1 + packages/miniflare/package.json | 36 +- packages/miniflare/src/cli.ts | 3 +- packages/queues/package.json | 6 +- packages/r2/package.json | 6 +- packages/runner-vm/package.json | 6 +- packages/scheduler/package.json | 8 +- packages/shared-test-environment/package.json | 20 +- packages/shared-test/package.json | 12 +- packages/shared/package.json | 4 +- packages/sites/package.json | 12 +- packages/storage-file/package.json | 8 +- packages/storage-memory/package.json | 6 +- packages/storage-redis/package.json | 8 +- .../vitest-environment-miniflare/README.md | 6 +- .../vitest-environment-miniflare/package.json | 12 +- packages/watcher/package.json | 6 +- packages/web-sockets/package.json | 8 +- 38 files changed, 869 insertions(+), 345 deletions(-) create mode 100644 docs/src/content/testing/vitest.md diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 931bdb61e..6d0ee218f 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,99 @@ # 🚧 Changelog +# 2.8.0 + +## Features + +- ⚑️ Add **custom Vitest testing environment**. This behaves almost identically + to the Jest environment. However, isolated storage must be installed manually + in each test file. Call the `setupMiniflareIsolatedStorage()` global function + and use the returned `describe` function instead of the regular + `describe`/`suite` functions imported from `vitest`. See + [⚑️ Vitest Environment](https://miniflare.dev/testing/vitest) for more + details. +- 🌐 **Populate Workers Sites `__STATIC_CONTENT_MANIFEST`** with site files + instead of an empty object. Miniflare will still disable caching of Workers + Sites files to ensure the most up-to-date files are always returned. Closes + [issues #233](https://github.com/cloudflare/miniflare/issues/233), + [#326](https://github.com/cloudflare/miniflare/issues/326) and + [cloudflare/wrangler2#1632](https://github.com/cloudflare/wrangler2/issues/1632). + Thanks [@ItalyPaleAle](https://github.com/ItalyPaleAle), + [@Skye-31](https://github.com/Skye-31), + [@CraigglesO](https://github.com/CraigglesO), + [@Hexstream](https://github.com/Hexstream) and + [@PolariTOON](https://github.com/PolariTOON). +- ⏱ **Add global `getMiniflareWaitUntil()` method** and `ExecutionContext` class + to the Jest and Vitest testing environments. This can be used to `await` the + results of `waitUntil`ed `Promise`s in tests. See + [🀹️ Jest Environment](https://miniflare.dev/testing/jest#waiting-for-waituntiled-promises) + and + [⚑️ Vitest Environment](https://miniflare.dev/testing/vitest#waiting-for-waituntiled-promises) + for more details. +- ⏳ Match Web Streams implementations with Workers runtime, closes issue + [#168](https://github.com/cloudflare/miniflare/issues/168), thanks + [@leviwolfe](https://github.com/leviwolfe): + - Add support for the non-standard + [`IdentityTransformStream`](https://developers.cloudflare.com/workers/runtime-apis/streams/transformstream/#identitytransformstream) + class. + - Add support for the **`streams_enable_constructors` compatibility flag**. + `ReadableStream` and `WritableStream` constructors will throw unless this + flag is enabled. `ReadableByteStreamController`, + `ReadableStreamBYOBRequest`, `ReadableStreamDefaultController` and + `WritableStreamDefaultController` will only be included in the sandbox if + this flag is enabled. + - Add support for the **`transformstream_enable_standard_constructor` + compatibility flag**. `TransformStream` will behave like + `IdentityTransformStream` if this isn't enabled, ignoring custom + transformers. If `transformstream_enable_standard_constructor` is set, but + `streams_enable_constructors` isn't, the `TransformStream` constructor will + throw. `TransformStreamDefaultController` will only be included in the + sandbox if both flags are enabled. + - Add support for BYOB reads to the non-standard + [`FixedLengthStream`](https://developers.cloudflare.com/workers/runtime-apis/streams/transformstream/#fixedlengthstream) + class. +- πŸ‡¬πŸ‡§ Add support for **Queues**. Docs coming soonβ„’... πŸ‘€ +- πŸ™‰ Allow calls to `addEventListener`, `removeEventListener` and + `dispatchEvent` in modules mode. Please note, calling `addEventListener` with + a special event type (e.g. `fetch`, `scheduled`) will log a warning prompting + you to use the `export default` syntax. Closes + [issue #207](https://github.com/cloudflare/miniflare/issues/207), thanks + [@Electroid](https://github.com/Electroid). +- 🍟 Add experimental and highly-inaccurate request CPU time measurements. These + are not representative of deployed worker performance, should only be used for + relative comparisons, and may be removed in the future. Enable measurements + with the `--inaccurate-cpu`/`[miniflare] inaccurate_cpu`/`inaccurateCpu` + option. Closes + [issue #161](https://github.com/cloudflare/miniflare/issues/161). Thanks + [@alexandernst](https://github.com/alexandernst) and + [@y21](https://github.com/y21). +- πŸ¦„ Automatically enable watch mode when `live_reload = true` is set in + `wrangler.toml`. + +## Fixes + +- Return `Response`s with immutable headers from `fetch`es to Durable Objects + and service bindings. Closes + [issue #346](https://github.com/cloudflare/miniflare/issues/346), thanks + [@Cherry](https://github.com/Cherry). +- Fix `CryptoKey#algorithm.name` property of `NODE-ED25519` keys. Closes + [issue panva/jose#446](https://github.com/panva/jose/issues/446), thanks + [@ItalyPaleAle](https://github.com/ItalyPaleAle). +- Disable automatic insertion of `Sec-WebSocket-Protocol` header. Closes + [issue #179](https://github.com/cloudflare/miniflare/issues/179), thanks + [@aboodman](https://github.com/aboodman) and + [@grgbkr](https://github.com/grgbkr). +- Return `Content-Length` header is custom `Content-Encoding` is specified. + Closes [issue #313](https://github.com/cloudflare/miniflare/issues/313), + thanks [@vlovich](https://github.com/vlovich). +- Require `"automatic"` instead of `"auto"` for the `encodeBody` option when + constructing `Request`s. Closes + [issue #357](https://github.com/cloudflare/miniflare/issues/357), thanks + [@GregBrimble](https://github.com/GregBrimble) for + [the PR](https://github.com/cloudflare/miniflare/pull/358). +- Remove `request.cf.cacheTtl`/`request.cf.cacheTtlByStatus` support from the + Cache API to match the behaviour of the Workers runtime, which only supports + `request.cf.cacheKey`. + # 2.7.1 ## Fixes diff --git a/docs/src/content/core/compatibility.md b/docs/src/content/core/compatibility.md index 31de9d6bf..603619706 100644 --- a/docs/src/content/core/compatibility.md +++ b/docs/src/content/core/compatibility.md @@ -69,6 +69,8 @@ const mf = new Miniflare({ Specifically Miniflare supports the following flags: +- `streams_enable_constructors`/`streams_disable_constructors` +- `transformstream_enable_standard_constructor`/`transformstream_disable_standard_constructor` - [`global_navigator`/`no_global_navigator`](https://developers.cloudflare.com/workers/platform/compatibility-dates#global-navigator) - [`durable_object_fetch_requires_full_url`/`durable_object_fetch_allows_relative_url`](https://developers.cloudflare.com/workers/platform/compatibility-dates#durable-object-stubfetch-requires-a-full-url) - [`fetch_refuses_unknown_protocols`/`fetch_treats_unknown_protocols_as_http`](https://developers.cloudflare.com/workers/platform/compatibility-dates#fetch-improperly-interprets-unknown-protocols-as-http) diff --git a/docs/src/content/core/standards.md b/docs/src/content/core/standards.md index 112fc6023..4fa5dfc94 100644 --- a/docs/src/content/core/standards.md +++ b/docs/src/content/core/standards.md @@ -33,7 +33,8 @@ Miniflare supports the following Web Standards in its sandbox: `ReadableStreamDefaultController`, `ReadableStreamDefaultReader`, `TransformStream`, `TransformStreamDefaultController`, `WritableStream`, `WritableStreamDefaultController`, `WritableStreamDefaultWriter`, - `FixedLengthStream`, `CompressionStream`, `DecompressionStream` + `IdentityTransformStream`, `FixedLengthStream`, `CompressionStream`, + `DecompressionStream` - **Events:** `Event`, `EventTarget`, `AbortController`, `AbortSignal` - **Event Types:** `fetch`, `scheduled`, `unhandledrejection`, `rejectionhandled` diff --git a/docs/src/content/developing/live-reload.md b/docs/src/content/developing/live-reload.md index 511719d6f..74cb4f6f1 100644 --- a/docs/src/content/developing/live-reload.md +++ b/docs/src/content/developing/live-reload.md @@ -35,8 +35,8 @@ const mf = new Miniflare({ diff --git a/docs/src/content/get-started/api.md b/docs/src/content/get-started/api.md index 7483b8337..d42666074 100644 --- a/docs/src/content/get-started/api.md +++ b/docs/src/content/get-started/api.md @@ -411,6 +411,10 @@ const mf = new Miniflare({ globalTimers: true, // Allow setting timers outside handlers globalRandom: true, // Allow secure random generation outside handlers + acutalTime: true, // Always return current time from `Date.now()`/`new Date()` + + inaccurateCpu: true, // Log experimental, highly-inaccurate CPU time measurements with each request + host: "127.0.0.1", // Host for HTTP(S) server to listen on port: 8787, // Port for HTTP(S) server to listen on https: true, // Enable self-signed HTTPS (with optional cert path) diff --git a/docs/src/content/get-started/cli.md b/docs/src/content/get-started/cli.md index a6aeaf7ae..23e4554d6 100644 --- a/docs/src/content/get-started/cli.md +++ b/docs/src/content/get-started/cli.md @@ -275,6 +275,7 @@ Core Options: --global-random Allow secure random generation outside [boolean] handlers --actual-time Always return correct time from Date methods [boolean] + --inaccurate-cpu Log inaccurate CPU time measurements [boolean] HTTP Options: -H, --host Host for HTTP(S) server to listen on [string] @@ -416,6 +417,8 @@ actual_time = true # --actual-time global_async_io = true # --global-async-io global_timers = true # --global-timers global_random = true # --global-random +actual_time = true # --actual-time +inaccurate_cpu = true # --inaccurate-cpu [miniflare.https] key = "./key.pem" # --https-key cert = "./cert.pem" # --https-cert diff --git a/docs/src/content/storage/sites.md b/docs/src/content/storage/sites.md index 99002dd9e..30f9548c4 100644 --- a/docs/src/content/storage/sites.md +++ b/docs/src/content/storage/sites.md @@ -72,7 +72,7 @@ addEventListener("fetch", (event) => { When you enable Workers Sites, a read-only KV namespace, bound to `__STATIC_CONTENT`, is created using the file system (without key sanitisation) -as its storage. An empty object, `{}`, is bound to `__STATIC_CONTENT_MANIFEST`. -This tricks `@cloudflare/kv-asset-handler` into disabling edge caching, meaning -the most up-to-date file is always loaded from disk. Miniflare also binds this -empty object to the `__STATIC_CONTENT_MANIFEST` text module. +as its storage. Each entry in the bound `__STATIC_CONTENT_MANIFEST` object +contains a magic prefix that disables edge caching. This means the most +up-to-date file are always loaded from disk. Miniflare also binds this object to +the `__STATIC_CONTENT_MANIFEST` text module. diff --git a/docs/src/content/testing/ava.md b/docs/src/content/testing/ava.md index 6735d0d0d..7d1727656 100644 --- a/docs/src/content/testing/ava.md +++ b/docs/src/content/testing/ava.md @@ -1,5 +1,5 @@ --- -order: 1 +order: 2 --- # πŸš€ Testing with AVA diff --git a/docs/src/content/testing/jest.md b/docs/src/content/testing/jest.md index 5f0c096da..9998df8ab 100644 --- a/docs/src/content/testing/jest.md +++ b/docs/src/content/testing/jest.md @@ -296,3 +296,45 @@ test("mocks fetch", async () => { expect(text).toBe("Mocked response!"); }); ``` + +## Waiting for `waitUntil`ed `Promise`s + +To `await` the results of `waitUntil`ed `Promise`s, call the +`getMiniflareWaitUntil()` global function on a `FetchEvent`, `ScheduledEvent` or +`ExecutionContext`. This will return a `Promise` that resolves to an array of +resolved `waitUntil`ed `Promise` values: + +```js +--- +filename: src/index.js +--- +export default { + async fetch(request, env, ctx) { + ctx.waitUntil(Promise.resolve(1)); + ctx.waitUntil(Promise.resolve(2)); + ctx.waitUntil(Promise.resolve(3)); + return new Response("body"); + } +} +``` + +```js +--- +filename: test/index.spec.js +--- +import worker from "../src/index.js"; + +test("wait until", async () => { + const request = new Request("http://localhost:8787/"); + const env = getMiniflareBindings(); + const ctx = new ExecutionContext(); + + // Call module worker handler + const response = worker.fetch(request, env, ctx); + expect(await response.text()).toBe("body"); + + // Check resolved values of waitUntil'ed Promises + const waitUntils = await getMiniflareWaitUntil(ctx); + expect(waitUntils).toEqual([1, 2, 3]); +}); +``` diff --git a/docs/src/content/testing/vitest.md b/docs/src/content/testing/vitest.md new file mode 100644 index 000000000..c20307d5b --- /dev/null +++ b/docs/src/content/testing/vitest.md @@ -0,0 +1,376 @@ +--- +order: 1 +--- + +# ⚑️ Vitest Environment + +Miniflare includes a custom Vitest environment that allows you to run your unit +tests within the Miniflare sandbox. Note that Vitest 0.23.0 is required. + +## Setup + +The Miniflare environment isn't installed by default, install it and Vitest +with: + +```sh +$ npm install -D vitest-environment-miniflare vitest +``` + +In the following examples, we'll assume your `package.json` contains +`"type": "module"`, and that you're using a tool to bundle your worker. See +[⚑️ Developing with esbuild](/developing/esbuild) for an example. + +To enable the Miniflare environment, set the +[`environment` option](https://Vitestjs.io/docs/configuration#testenvironment-string) +in your Vitest configuration: + +```ts +--- +filename: vitest.config.ts +--- +import { defineConfig } from "vitest/config"; + +export default defineConfig({ + test: { + environment: "miniflare", + // Configuration is automatically loaded from `.env`, `package.json` and + // `wrangler.toml` files by default, but you can pass any additional Miniflare + // API options here: + environmentOptions: { + bindings: { KEY: "value" }, + kvNamespaces: ["TEST_NAMESPACE"], + }, + }, +}) +``` + +## Writing and Running Tests + +The Miniflare environment lets us import our worker's functions with regular +`import` syntax. We can write a test for the following worker like so: + +```js +--- +filename: src/index.js +--- +addEventListener("fetch", (event) => { + event.respondWith(handleRequest(event.request)); +}); + +// Assuming you've got a build tool that removes `export`s when you actually +// deploy your worker (e.g. https://esbuild.github.io/api/#format-iife) +export async function handleRequest(request) { + return new Response(`URL: ${request.url} KEY: ${KEY}`); +} +``` + +```js +--- +filename: test/index.spec.js +--- +import { expect, test } from "vitest"; +import { handleRequest } from "../src/index.js"; + +test("responds with url", async () => { + const req = new Request("http://localhost/"); + const res = await handleRequest(req); + expect(await res.text()).toBe("URL: http://localhost/ KEY: value"); +}); +``` + +To run this test: + +```sh +$ NODE_OPTIONS=--experimental-vm-modules npx vitest run +``` + +## Isolated Storage + +The Miniflare environment will use isolated storage for KV namespaces, caches, +and Durable Objects in each test. This essentially means any changes you make in +a test or `describe`-block are automatically undone afterwards. The isolated +storage is copied from the parent `describe`-block, allowing you to seed data in +`beforeAll` hooks. + + + +As an example, consider the following tests: + +```js +import { expect, test } from "vitest"; +const describe = setupMiniflareIsolatedStorage(); + +// Gets the array +async function get() { + const jsonValue = await TEST_NAMESPACE.get("array"); + return JSON.parse(jsonValue ?? "[]"); +} + +// Pushes an item onto the end of the array +async function push(item) { + const value = await get(); + value.push(item); + await TEST_NAMESPACE.put("array", JSON.stringify(value)); +} + +beforeAll(async () => { + await push("beforeAll"); +}); + +beforeEach(async () => { + // This runs in each tests' isolated storage environment + await push("beforeEach"); +}); + +test("test 1", async () => { + // This push(1) will only mutate the isolated environment + await push(1); + expect(await get()).toEqual(["beforeAll", "beforeEach", 1]); +}); + +test("test 2", async () => { + await push(2); + // Note that push(1) from the previous test has been "undone" + expect(await get()).toEqual(["beforeAll", "beforeEach", 2]); +}); + +describe("describe", () => { + beforeAll(async () => { + await push("describe: beforeAll"); + }); + + beforeEach(async () => { + await push("describe: beforeEach"); + }); + + test("test 3", async () => { + await push(3); + expect(await get()).toEqual([ + // All beforeAll's run before beforeEach's + "beforeAll", + "describe: beforeAll", + "beforeEach", + "describe: beforeEach", + 3, + ]); + }); + + test("test 4", async () => { + await push(4); + expect(await get()).toEqual([ + "beforeAll", + "describe: beforeAll", + "beforeEach", + "describe: beforeEach", + 4, + ]); + }); +}); +``` + +Note that bindings (e.g. variables, KV namespaces, etc) are only included in the +global scope when you're using a `service-worker` format worker. In `modules` +mode, you can use the `getMiniflareBindings` global method: + +```js +const { TEST_NAMESPACE } = getMiniflareBindings(); +``` + +Note also that storage persistence options (`kvPersist`, `cachePersist`, and +`durableObjectsPersist`) are ignored by the Miniflare Vitest environment. + +## Durable Objects + +When testing Durable Objects, Miniflare needs to run your script itself to +extract exported Durable Object classes. Miniflare should be able to auto-detect +your script from your `package.json` or `wrangler.toml` file, but you can also +set it manually in Vitest configuration: + +```js +--- +filename: src/index.mjs +--- +export class TestObject { + constructor(state) { + this.storage = state.storage; + } + + async fetch() { + const count = (await this.storage.get("count")) + 1; + this.storage.put("count", count); + return new Response(count.toString()); + } +} +``` + +```ts +--- +filename: vitest.config.ts +--- +import { defineConfig } from "vitest/config"; + +export default defineConfig({ + test: { + environment: "miniflare", + environmentOptions: { + modules: true, + scriptPath: "./src/index.mjs", + durableObjects: { + TEST_OBJECT: "TestObject", + }, + }, + }, +}) +``` + +To access Durable Object storage in tests, use the +`getMiniflareDurableObjectStorage()` global function: + +```js +import { expect, test } from "vitest"; +const describe = setupMiniflareIsolatedStorage(); + +test("increments count", async () => { + // Durable Objects requires modules mode so bindings aren't accessible via the + // global scope + const { TEST_OBJECT } = getMiniflareBindings(); + const id = TEST_OBJECT.newUniqueId(); + + // Seed Durable Object storage (isolated storage rules from above also apply) + const storage = await getMiniflareDurableObjectStorage(id); + await storage.put("count", 3); + + // Increment the count + const stub = TEST_OBJECT.get(id); + const res = await stub.fetch("http://localhost/"); + expect(await res.text()).toBe("4"); + + // Check storage updated + expect(await storage.get("count")).toBe(4); +}); +``` + + + +To immediately invoke _("flush")_ scheduled Durable Object alarms, use the +`flushMiniflareDurableObjectAlarms()` global function: + +```js +import { expect, test } from "vitest"; +const describe = setupMiniflareIsolatedStorage(); + +test("flushes alarms", async () => { + // Get Durable Object stub + const env = getMiniflareBindings(); + const id = env.TEST_OBJECT.newUniqueId(); + const stub = env.TEST_OBJECT.get(id); + + // Schedule Durable Object alarm + await stub.fetch("http://localhost/"); + + // Flush all alarms... + await flushMiniflareDurableObjectAlarms(); + // ...or specify an array of `DurableObjectId`s to flush + await flushMiniflareDurableObjectAlarms([id]); +}); +``` + +## Mocking Outbound `fetch` Requests + +Miniflare allows you to substitute custom `Response`s for `fetch()` calls using +`undici`'s +[`MockAgent` API](https://undici.nodejs.org/#/docs/api/MockAgent?id=mockagentgetorigin). +This is useful for testing workers that make HTTP requests to other services. To +obtain a correctly set-up +[`MockAgent`](https://undici.nodejs.org/#/docs/api/MockAgent?id=mockagentgetorigin), +use the `getMiniflareFetchMock()` global function. + +```js +import { expect, test } from "vitest"; +const describe = setupMiniflareIsolatedStorage(); + +test("mocks fetch", async () => { + // Get correctly set up `MockAgent` + const fetchMock = getMiniflareFetchMock(); + + // Throw when no matching mocked request is found + // (see https://undici.nodejs.org/#/docs/api/MockAgent?id=mockagentdisablenetconnect) + fetchMock.disableNetConnect(); + + // Mock request to https://example.com/thing + // (see https://undici.nodejs.org/#/docs/api/MockAgent?id=mockagentgetorigin) + const origin = fetchMock.get("https://example.com"); + // (see https://undici.nodejs.org/#/docs/api/MockPool?id=mockpoolinterceptoptions) + origin + .intercept({ method: "GET", path: "/thing" }) + .reply(200, "Mocked response!"); + + const res = await fetch("https://example.com/thing"); + const text = await res.text(); + expect(text).toBe("Mocked response!"); +}); +``` + +## Waiting for `waitUntil`ed `Promise`s + +To `await` the results of `waitUntil`ed `Promise`s, call the +`getMiniflareWaitUntil()` global function on a `FetchEvent`, `ScheduledEvent` or +`ExecutionContext`. This will return a `Promise` that resolves to an array of +resolved `waitUntil`ed `Promise` values: + +```js +--- +filename: src/index.js +--- +export default { + async fetch(request, env, ctx) { + ctx.waitUntil(Promise.resolve(1)); + ctx.waitUntil(Promise.resolve(2)); + ctx.waitUntil(Promise.resolve(3)); + return new Response("body"); + } +} +``` + +```js +--- +filename: test/index.spec.js +--- +import { expect, test } from "vitest"; +const describe = setupMiniflareIsolatedStorage(); + +import worker from "../src/index.js"; + +test("wait until", async () => { + const request = new Request("http://localhost:8787/"); + const env = getMiniflareBindings(); + const ctx = new ExecutionContext(); + + // Call module worker handler + const response = worker.fetch(request, env, ctx); + expect(await response.text()).toBe("body"); + + // Check resolved values of waitUntil'ed Promises + const waitUntils = await getMiniflareWaitUntil(ctx); + expect(waitUntils).toEqual([1, 2, 3]); +}); +``` diff --git a/package-lock.json b/package-lock.json index ece820903..f7546d65d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@miniflare/root", - "version": "2.7.1", + "version": "2.8.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@miniflare/root", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "workspaces": [ "packages/*" @@ -8687,17 +8687,17 @@ }, "packages/cache": { "name": "@miniflare/cache", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "http-cache-semantics": "^4.1.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/shared-test": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/http-cache-semantics": "^4.0.1" }, "engines": { @@ -8706,15 +8706,15 @@ }, "packages/cli-parser": { "name": "@miniflare/cli-parser", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1", + "@miniflare/shared": "2.8.0", "kleur": "^4.1.4" }, "devDependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared-test": "2.8.0", "@types/mri": "^1.1.1", "mri": "^1.1.6" }, @@ -8724,12 +8724,12 @@ }, "packages/core": { "name": "@miniflare/core", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { "@iarna/toml": "^2.2.5", - "@miniflare/shared": "2.7.1", - "@miniflare/watcher": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/watcher": "2.8.0", "busboy": "^1.6.0", "dotenv": "^10.0.0", "kleur": "^4.1.4", @@ -8738,10 +8738,10 @@ "urlpattern-polyfill": "^4.0.3" }, "devDependencies": { - "@miniflare/durable-objects": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/watcher": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/watcher": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/busboy": "^1.5.0", "@types/set-cookie-parser": "^2.4.1", "dequal": "^2.0.2" @@ -8752,18 +8752,18 @@ }, "packages/durable-objects": { "name": "@miniflare/durable-objects", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -8771,16 +8771,16 @@ }, "packages/html-rewriter": { "name": "@miniflare/html-rewriter", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "html-rewriter-wasm": "^0.4.1", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -8788,12 +8788,12 @@ }, "packages/http-server": { "name": "@miniflare/http-server", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "kleur": "^4.1.4", "selfsigned": "^2.0.0", "undici": "5.9.1", @@ -8801,7 +8801,7 @@ "youch": "^2.2.2" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/node-forge": "^0.10.4" }, "engines": { @@ -8810,23 +8810,23 @@ }, "packages/jest": { "name": "@miniflare/jest", - "version": "2.7.1", + "version": "2.8.0", "extraneous": true, "license": "MIT", "dependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1", - "miniflare": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0", + "miniflare": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "jest": "^27.2.1" }, "engines": { @@ -9822,37 +9822,37 @@ }, "packages/kv": { "name": "@miniflare/kv", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" } }, "packages/miniflare": { - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/http-server": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/r2": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/scheduler": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-file": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/cache": "2.8.0", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/http-server": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/r2": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/scheduler": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-file": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "kleur": "^4.1.4", "semiver": "^1.1.0", "source-map-support": "^0.5.20", @@ -9862,7 +9862,7 @@ "miniflare": "bootstrap.js" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/source-map-support": "^0.5.4", "open": "^8.4.0" }, @@ -9870,7 +9870,7 @@ "node": ">=16.13" }, "peerDependencies": { - "@miniflare/storage-redis": "2.7.1", + "@miniflare/storage-redis": "2.8.0", "cron-schedule": "^3.0.4", "ioredis": "^4.27.9" }, @@ -9888,13 +9888,13 @@ }, "packages/queues": { "name": "@miniflare/queues", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.7" @@ -9902,14 +9902,14 @@ }, "packages/r2": { "name": "@miniflare/r2", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1", + "@miniflare/shared": "2.8.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -9917,13 +9917,13 @@ }, "packages/runner-vm": { "name": "@miniflare/runner-vm", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -9931,15 +9931,15 @@ }, "packages/scheduler": { "name": "@miniflare/scheduler", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "cron-schedule": "^3.0.4" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -9947,14 +9947,14 @@ }, "packages/shared": { "name": "@miniflare/shared", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { "kleur": "^4.1.4", "picomatch": "^2.3.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/picomatch": "^2.3.0" }, "engines": { @@ -9963,14 +9963,14 @@ }, "packages/shared-test": { "name": "@miniflare/shared-test", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "ws": "^8.2.2" }, "engines": { @@ -9979,18 +9979,18 @@ }, "packages/shared-test-environment": { "name": "@miniflare/shared-test-environment", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0" }, "engines": { "node": ">=16.13" @@ -9998,17 +9998,17 @@ }, "packages/sites": { "name": "@miniflare/sites", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-file": "2.7.1" + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-file": "2.8.0" }, "devDependencies": { "@cloudflare/kv-asset-handler": "^0.1.3", - "@miniflare/core": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/core": "2.8.0", + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -10016,14 +10016,14 @@ }, "packages/storage-file": { "name": "@miniflare/storage-file", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -10031,13 +10031,13 @@ }, "packages/storage-memory": { "name": "@miniflare/storage-memory", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -10045,15 +10045,15 @@ }, "packages/storage-redis": { "name": "@miniflare/storage-redis", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "ioredis": "^4.27.9" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/ioredis": "^4.27.2" }, "engines": { @@ -10083,13 +10083,13 @@ }, "packages/watcher": { "name": "@miniflare/watcher", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" }, "engines": { "node": ">=16.13" @@ -10097,16 +10097,16 @@ }, "packages/web-sockets": { "name": "@miniflare/web-sockets", - "version": "2.7.1", + "version": "2.8.0", "license": "MIT", "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "undici": "5.9.1", "ws": "^8.2.2" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/ws": "^8.2.0" }, "engines": { @@ -11211,10 +11211,10 @@ "@miniflare/cache": { "version": "file:packages/cache", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/http-cache-semantics": "^4.0.1", "http-cache-semantics": "^4.1.0", "undici": "5.9.1" @@ -11223,9 +11223,9 @@ "@miniflare/cli-parser": { "version": "file:packages/cli-parser", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", "@types/mri": "^1.1.1", "kleur": "^4.1.4", "mri": "^1.1.6" @@ -11235,11 +11235,11 @@ "version": "file:packages/core", "requires": { "@iarna/toml": "^2.2.5", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/watcher": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/watcher": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/busboy": "^1.5.0", "@types/set-cookie-parser": "^2.4.1", "busboy": "^1.6.0", @@ -11254,21 +11254,21 @@ "@miniflare/durable-objects": { "version": "file:packages/durable-objects", "requires": { - "@miniflare/cache": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/cache": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "undici": "5.9.1" } }, "@miniflare/html-rewriter": { "version": "file:packages/html-rewriter", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", "html-rewriter-wasm": "^0.4.1", "undici": "5.9.1" } @@ -11276,10 +11276,10 @@ "@miniflare/http-server": { "version": "file:packages/http-server", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/node-forge": "^0.10.4", "kleur": "^4.1.4", "selfsigned": "^2.0.0", @@ -11291,45 +11291,45 @@ "@miniflare/kv": { "version": "file:packages/kv", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0" } }, "@miniflare/queues": { "version": "file:packages/queues", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0" } }, "@miniflare/r2": { "version": "file:packages/r2", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", "undici": "5.9.1" } }, "@miniflare/runner-vm": { "version": "file:packages/runner-vm", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0" } }, "@miniflare/scheduler": { "version": "file:packages/scheduler", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", "cron-schedule": "^3.0.4" } }, "@miniflare/shared": { "version": "file:packages/shared", "requires": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/picomatch": "^2.3.0", "kleur": "^4.1.4", "picomatch": "^2.3.1" @@ -11338,60 +11338,60 @@ "@miniflare/shared-test": { "version": "file:packages/shared-test", "requires": { - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "ws": "^8.2.2" } }, "@miniflare/shared-test-environment": { "version": "file:packages/shared-test-environment", "requires": { - "@miniflare/cache": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0" } }, "@miniflare/sites": { "version": "file:packages/sites", "requires": { "@cloudflare/kv-asset-handler": "^0.1.3", - "@miniflare/core": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/storage-file": "2.7.1" + "@miniflare/core": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/storage-file": "2.8.0" } }, "@miniflare/storage-file": { "version": "file:packages/storage-file", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/storage-memory": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/storage-memory": "2.8.0" } }, "@miniflare/storage-memory": { "version": "file:packages/storage-memory", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0" } }, "@miniflare/storage-redis": { "version": "file:packages/storage-redis", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "@types/ioredis": "^4.27.2", "ioredis": "^4.27.9" } @@ -11399,16 +11399,16 @@ "@miniflare/watcher": { "version": "file:packages/watcher", "requires": { - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0" } }, "@miniflare/web-sockets": { "version": "file:packages/web-sockets", "requires": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", "@types/ws": "^8.2.0", "undici": "5.9.1", "ws": "^8.2.2" @@ -14330,14 +14330,14 @@ "@jest/environment": "^28.1.0", "@jest/fake-timers": "^28.1.0", "@jest/types": "^28.1.0", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/shared-test-environment": "2.7.1", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/shared-test-environment": "2.8.0", "jest": "^28.1.0", "jest-mock": "^28.1.0", "jest-util": "^28.1.0", - "miniflare": "2.7.1", + "miniflare": "2.8.0", "react-dom": "^18.1.0" }, "dependencies": { @@ -15682,22 +15682,22 @@ "miniflare": { "version": "file:packages/miniflare", "requires": { - "@miniflare/cache": "2.7.1", - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/http-server": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/r2": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/scheduler": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-file": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/cache": "2.8.0", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/http-server": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/r2": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/scheduler": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-file": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/source-map-support": "^0.5.4", "kleur": "^4.1.4", "open": "^8.4.0", diff --git a/package.json b/package.json index 85d181422..222442578 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@miniflare/root", - "version": "2.7.1", + "version": "2.8.0", "description": "Fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", diff --git a/packages/cache/package.json b/packages/cache/package.json index 6f56e0f30..1b4e80fe6 100644 --- a/packages/cache/package.json +++ b/packages/cache/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/cache", - "version": "2.7.1", + "version": "2.8.0", "description": "Cache module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,14 +35,14 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "http-cache-semantics": "^4.1.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/shared-test": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/http-cache-semantics": "^4.0.1" } } diff --git a/packages/cli-parser/package.json b/packages/cli-parser/package.json index e5f9aab25..0d41c429d 100644 --- a/packages/cli-parser/package.json +++ b/packages/cli-parser/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/cli-parser", - "version": "2.7.1", + "version": "2.8.0", "description": "CLI option parsing module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,12 +35,12 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1", + "@miniflare/shared": "2.8.0", "kleur": "^4.1.4" }, "devDependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared-test": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared-test": "2.8.0", "@types/mri": "^1.1.1", "mri": "^1.1.6" } diff --git a/packages/core/package.json b/packages/core/package.json index b8766510e..1e8145ee8 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/core", - "version": "2.7.1", + "version": "2.8.0", "description": "Core module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -39,8 +39,8 @@ ], "dependencies": { "@iarna/toml": "^2.2.5", - "@miniflare/shared": "2.7.1", - "@miniflare/watcher": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/watcher": "2.8.0", "busboy": "^1.6.0", "dotenv": "^10.0.0", "kleur": "^4.1.4", @@ -49,10 +49,10 @@ "urlpattern-polyfill": "^4.0.3" }, "devDependencies": { - "@miniflare/durable-objects": "2.7.1", - "@miniflare/shared-test": "2.7.1", - "@miniflare/watcher": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/shared-test": "2.8.0", + "@miniflare/watcher": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "@types/busboy": "^1.5.0", "@types/set-cookie-parser": "^2.4.1", "dequal": "^2.0.2" diff --git a/packages/durable-objects/package.json b/packages/durable-objects/package.json index da8055cb8..7c5d27092 100644 --- a/packages/durable-objects/package.json +++ b/packages/durable-objects/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/durable-objects", - "version": "2.7.1", + "version": "2.8.0", "description": "Durable Objects module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,14 +35,14 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/html-rewriter/package.json b/packages/html-rewriter/package.json index 3f3cdd2a5..101a8826c 100644 --- a/packages/html-rewriter/package.json +++ b/packages/html-rewriter/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/html-rewriter", - "version": "2.7.1", + "version": "2.8.0", "description": "HTMLRewriter module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,12 +35,12 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "html-rewriter-wasm": "^0.4.1", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/http-server/package.json b/packages/http-server/package.json index 5af87cf5a..1f0aa0aa3 100644 --- a/packages/http-server/package.json +++ b/packages/http-server/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/http-server", - "version": "2.7.1", + "version": "2.8.0", "description": "HTTP server module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "kleur": "^4.1.4", "selfsigned": "^2.0.0", "undici": "5.9.1", @@ -45,7 +45,7 @@ "youch": "^2.2.2" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/node-forge": "^0.10.4" } } diff --git a/packages/jest-environment-miniflare/package.json b/packages/jest-environment-miniflare/package.json index 84d731adc..44775b33d 100644 --- a/packages/jest-environment-miniflare/package.json +++ b/packages/jest-environment-miniflare/package.json @@ -1,6 +1,6 @@ { "name": "jest-environment-miniflare", - "version": "2.7.1", + "version": "2.8.0", "description": "Jest testing environment for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test-environment": "2.7.1", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test-environment": "2.8.0", "@jest/environment": ">=27", "@jest/fake-timers": ">=27", "@jest/types": ">=27", @@ -51,11 +51,11 @@ "@jest/environment": "^28.1.0", "@jest/fake-timers": "^28.1.0", "@jest/types": "^28.1.0", - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "jest": "^28.1.0", "jest-mock": "^28.1.0", "jest-util": "^28.1.0", - "miniflare": "2.7.1", + "miniflare": "2.8.0", "react-dom": "^18.1.0" } } diff --git a/packages/kv/package.json b/packages/kv/package.json index bc75e63f5..e4a483656 100644 --- a/packages/kv/package.json +++ b/packages/kv/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/kv", - "version": "2.7.1", + "version": "2.8.0", "description": "Workers KV module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/miniflare/README.md b/packages/miniflare/README.md index a11accd29..765947253 100644 --- a/packages/miniflare/README.md +++ b/packages/miniflare/README.md @@ -106,6 +106,7 @@ Core Options: --global-timers Allow setting timers outside handlers [boolean] --global-random Allow secure random generation outside handlers [boolean] --actual-time Always return correct time from Date methods [boolean] + --inaccurate-cpu Log inaccurate CPU time measurements [boolean] HTTP Options: -H, --host Host for HTTP(S) server to listen on [string] diff --git a/packages/miniflare/package.json b/packages/miniflare/package.json index 10264308b..3b1638f56 100644 --- a/packages/miniflare/package.json +++ b/packages/miniflare/package.json @@ -1,6 +1,6 @@ { "name": "miniflare", - "version": "2.7.1", + "version": "2.8.0", "description": "Fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -46,33 +46,33 @@ "miniflare": "bootstrap.js" }, "dependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/http-server": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/r2": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/scheduler": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-file": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1", + "@miniflare/cache": "2.8.0", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/http-server": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/r2": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/scheduler": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-file": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0", "kleur": "^4.1.4", "semiver": "^1.1.0", "source-map-support": "^0.5.20", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/source-map-support": "^0.5.4", "open": "^8.4.0" }, "peerDependencies": { - "@miniflare/storage-redis": "2.7.1", + "@miniflare/storage-redis": "2.8.0", "cron-schedule": "^3.0.4", "ioredis": "^4.27.9" }, diff --git a/packages/miniflare/src/cli.ts b/packages/miniflare/src/cli.ts index c3d94f1da..baad97168 100644 --- a/packages/miniflare/src/cli.ts +++ b/packages/miniflare/src/cli.ts @@ -17,7 +17,8 @@ function suppressWarnings() { if ( warningString.startsWith("VM Modules") || warningString.startsWith("stream/web") || - warningString.startsWith("buffer.Blob") + warningString.startsWith("buffer.Blob") || + warningString.startsWith("The Ed25519") ) { return; } diff --git a/packages/queues/package.json b/packages/queues/package.json index d6adb8581..c0b11bce7 100644 --- a/packages/queues/package.json +++ b/packages/queues/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/queues", - "version": "2.7.1", + "version": "2.8.0", "description": "Workers Queues module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/r2/package.json b/packages/r2/package.json index 8bbe05513..f21d4fa14 100644 --- a/packages/r2/package.json +++ b/packages/r2/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/r2", - "version": "2.7.1", + "version": "2.8.0", "description": "Workers R2 module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,10 +35,10 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1", + "@miniflare/shared": "2.8.0", "undici": "5.9.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/runner-vm/package.json b/packages/runner-vm/package.json index 199af04af..78b6b90d7 100644 --- a/packages/runner-vm/package.json +++ b/packages/runner-vm/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/runner-vm", - "version": "2.7.1", + "version": "2.8.0", "description": "VM script runner module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/scheduler/package.json b/packages/scheduler/package.json index 5b7e0214c..aad9d2a72 100644 --- a/packages/scheduler/package.json +++ b/packages/scheduler/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/scheduler", - "version": "2.7.1", + "version": "2.8.0", "description": "Scheduler module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,11 +35,11 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "cron-schedule": "^3.0.4" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/shared-test-environment/package.json b/packages/shared-test-environment/package.json index 47a427f2f..f881d35aa 100644 --- a/packages/shared-test-environment/package.json +++ b/packages/shared-test-environment/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/shared-test-environment", - "version": "2.7.1", + "version": "2.8.0", "description": "Shared test environment utility module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,14 +35,14 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/cache": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/durable-objects": "2.7.1", - "@miniflare/html-rewriter": "2.7.1", - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/sites": "2.7.1", - "@miniflare/storage-memory": "2.7.1", - "@miniflare/web-sockets": "2.7.1" + "@miniflare/cache": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/durable-objects": "2.8.0", + "@miniflare/html-rewriter": "2.8.0", + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/sites": "2.8.0", + "@miniflare/storage-memory": "2.8.0", + "@miniflare/web-sockets": "2.8.0" } } diff --git a/packages/shared-test/package.json b/packages/shared-test/package.json index 4591b86a8..fd3665e40 100644 --- a/packages/shared-test/package.json +++ b/packages/shared-test/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@miniflare/shared-test", - "version": "2.7.1", + "version": "2.8.0", "description": "Shared testing utility module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -33,11 +33,11 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/cli-parser": "2.7.1", - "@miniflare/core": "2.7.1", - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/cli-parser": "2.8.0", + "@miniflare/core": "2.8.0", + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "ws": "^8.2.2" } } diff --git a/packages/shared/package.json b/packages/shared/package.json index 223719695..f3ef4ba85 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/shared", - "version": "2.7.1", + "version": "2.8.0", "description": "Shared utility module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -39,7 +39,7 @@ "picomatch": "^2.3.1" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/picomatch": "^2.3.0" } } diff --git a/packages/sites/package.json b/packages/sites/package.json index 98ce17c3c..33ea4652d 100644 --- a/packages/sites/package.json +++ b/packages/sites/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/sites", - "version": "2.7.1", + "version": "2.8.0", "description": "Workers Sites module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -39,13 +39,13 @@ "test/fixtures/plugin.assetHandler.modules.mjs" ], "dependencies": { - "@miniflare/kv": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/storage-file": "2.7.1" + "@miniflare/kv": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-file": "2.8.0" }, "devDependencies": { "@cloudflare/kv-asset-handler": "^0.1.3", - "@miniflare/core": "2.7.1", - "@miniflare/shared-test": "2.7.1" + "@miniflare/core": "2.8.0", + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/storage-file/package.json b/packages/storage-file/package.json index 39d162bf2..7762206dd 100644 --- a/packages/storage-file/package.json +++ b/packages/storage-file/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/storage-file", - "version": "2.7.1", + "version": "2.8.0", "description": "File-system storage module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,10 +35,10 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1" + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/storage-memory/package.json b/packages/storage-memory/package.json index 915e7359f..4f8f479ac 100644 --- a/packages/storage-memory/package.json +++ b/packages/storage-memory/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/storage-memory", - "version": "2.7.1", + "version": "2.8.0", "description": "In-memory storage module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/storage-redis/package.json b/packages/storage-redis/package.json index 32f75c5a8..b44577562 100644 --- a/packages/storage-redis/package.json +++ b/packages/storage-redis/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/storage-redis", - "version": "2.7.1", + "version": "2.8.0", "description": "Redis storage module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,12 +35,12 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1", - "@miniflare/storage-memory": "2.7.1", + "@miniflare/shared": "2.8.0", + "@miniflare/storage-memory": "2.8.0", "ioredis": "^4.27.9" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/ioredis": "^4.27.2" } } diff --git a/packages/vitest-environment-miniflare/README.md b/packages/vitest-environment-miniflare/README.md index d27a20635..6c2ead629 100644 --- a/packages/vitest-environment-miniflare/README.md +++ b/packages/vitest-environment-miniflare/README.md @@ -1,6 +1,6 @@ # `vitest-environment-miniflare` Vitest testing module for [Miniflare](https://github.com/cloudflare/miniflare): -a fun, full-featured, fully-local simulator for Cloudflare Workers. - - +a fun, full-featured, fully-local simulator for Cloudflare Workers. See +[⚑️ Vitest Environment ](https://miniflare.dev/testing/vitest) for more +details. diff --git a/packages/vitest-environment-miniflare/package.json b/packages/vitest-environment-miniflare/package.json index 545bbcfb7..626e8a806 100644 --- a/packages/vitest-environment-miniflare/package.json +++ b/packages/vitest-environment-miniflare/package.json @@ -1,6 +1,6 @@ { "name": "vitest-environment-miniflare", - "version": "2.7.1", + "version": "2.8.0", "description": "Vitest testing environment for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -36,16 +36,16 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/runner-vm": "2.7.1", - "@miniflare/shared": "2.7.1", - "@miniflare/shared-test-environment": "2.7.1" + "@miniflare/runner-vm": "2.8.0", + "@miniflare/shared": "2.8.0", + "@miniflare/shared-test-environment": "2.8.0" }, "peerDependencies": { "vitest": ">=0.23.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", - "miniflare": "2.7.1", + "@miniflare/shared-test": "2.8.0", + "miniflare": "2.8.0", "react-dom": "^18.1.0", "vitest": "^0.23.1" } diff --git a/packages/watcher/package.json b/packages/watcher/package.json index b078393dc..d6c327b47 100644 --- a/packages/watcher/package.json +++ b/packages/watcher/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/watcher", - "version": "2.7.1", + "version": "2.8.0", "description": "File-system watcher module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,9 +35,9 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/shared": "2.7.1" + "@miniflare/shared": "2.8.0" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1" + "@miniflare/shared-test": "2.8.0" } } diff --git a/packages/web-sockets/package.json b/packages/web-sockets/package.json index a2c8b87ec..336a17ec9 100644 --- a/packages/web-sockets/package.json +++ b/packages/web-sockets/package.json @@ -1,6 +1,6 @@ { "name": "@miniflare/web-sockets", - "version": "2.7.1", + "version": "2.8.0", "description": "WebSocket module for Miniflare: a fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", @@ -35,13 +35,13 @@ "extends": "../../package.json" }, "dependencies": { - "@miniflare/core": "2.7.1", - "@miniflare/shared": "2.7.1", + "@miniflare/core": "2.8.0", + "@miniflare/shared": "2.8.0", "undici": "5.9.1", "ws": "^8.2.2" }, "devDependencies": { - "@miniflare/shared-test": "2.7.1", + "@miniflare/shared-test": "2.8.0", "@types/ws": "^8.2.0" } }