This repository was archived by the owner on Mar 13, 2025. It is now read-only.
Releases: cloudflare/miniflare
Releases · cloudflare/miniflare
v1.3.1
Fixes
- Upgraded
html-rewriter-wasmto version0.3.1, fixing the return type ofElement.attributes
v1.3.0
Features
- Switched to a
lol-html-based WebAssembly implementation ofHTMLRewriterfor a more accurate simulation of the real Workers environment. See 📄 HTMLRewriter for more details. - Added HTTPS support for local development, thanks @RichiCoder1 for the suggestion (#12). See 💻 Using the CLI and 🧰 Using the API for more details.
- When using the CLI, the
--watchflag is now assumed if--build-watch-pathis set, thanks @evanderkoogh for the PR (#8) - Added source maps to
CommonJSmodule transformation
Fixes
v1.2.0
Features
- Added Redis persistence support for 📦 KV, ✨ Cache and 📌 Durable Objects
- Added support for loading scripts from
package.json, closes issue #7. See 💻 Using the CLI and ⚡️ Developing with esbuild for more details. - Added
FormDatato the sandbox, closes issue #6 - Added an automatic update checker. See 💻 Using the CLI for more details.
- 📚 Modules mode is now always enabled when specifying 📌 Durable Objects bindings
Fixes
- Fixed Windows support, closes issue #10
- Fixed issue where scripts were not reloaded correctly when editing script path in
wrangler.toml. Scripts are now always reloaded on options change.Miniflare.reloadScript()is now deprecated. You should useMiniflare.reloadOptions()instead.
v1.1.0
v1.0.0
Breaking Changes
-
The first and only argument to the
Miniflareconstructor is now an object. Scripts should be specified via thescriptoption for strings and thescriptPathoption for files:// Previous version import vm from "vm"; import { Miniflare } from "miniflare"; const mf1 = new Miniflare( new vm.Script(`addEventListener("fetch", (event) => { ... })`), { kvPersist: true } ); const mf2 = new Miniflare("script.js", { kvPersist: true });
// New version import { Miniflare } from "miniflare"; const mf1 = new Miniflare({ script: `addEventListener("fetch", (event) => { ... })`, kvPersist: true, }); const mf2 = new Miniflare({ scriptPath: "script.js", kvPersist: true, });
-
The
Miniflare.getNamespacemethod has been renamed toMiniflare.getKVNamespace -
Logged errors will now throw a
MiniflareErrorif no log is provided -
When using file system KV persistence, key names are now sanitised to replace special characters such as
:,/, and\. Reading keys containing these characters may now returnnullif a value was stored in the previous version.
Features
- Added support for 📚 Modules (requires
--experimental-vm-modulesflag) - Added support for 📌 Durable Objects
- Added support for ✉️ Web Sockets (client and server)
- Added support for 🛠 Builds (custom builds and
webpack/rustWrangler builds) - Added support for ⚙️ WebAssembly
- Added support for 📄 HTMLRewriter
- Made CLI
scriptparameter optional, it can now be inferred in some cases fromwrangler.toml - Added
hostoption (--host/-Hflag) for restricting hosts the HTTP server listens on - Added
Miniflare.disposemethod for cleaning up file watcher - Added
CF-*headers andcfobject to HTTP server requests - Added
cronproperty to ⏰ Scheduled Events - Added manual triggering for ⏰ Scheduled Events via
/.mf/scheduledHTTP endpoint - Added pretty error page powered by Youch
- Added many more tests
Fixes
- Fixed error if options object (containing
typeandcacheTtlproperties) passed as second parameter to KVgetmethod, closes issue #3 - Fixed error if
ArrayBufferpassed asdatatocrypto.subtle.digest("md5", data) - Fixed handling of
ignoreMethodoption forCachematchanddelete - Disabled edge caching when using Workers Sites, files are now always loaded from disk
- Provide
SetandWeakSetfrom Miniflare's realm to sandbox, removingPromise, so(async () => {})() instanceof Promiseevaluates totrue
v0.1.0
Initial Release
Features
- Added support for 📨 Fetch Events
- Added support for ⏰ Scheduled Events
- Added support for 🔑 Variables and Secrets
- Added support for 📦 KV
- Added support for ✨ Cache
- Added support for 🌐 Workers Sites
- Added support for 🗺 Source Maps