Skip to content

Releases: cloudflare/workers-sdk

wrangler@2.0.1

09 May 11:46
6834010
Compare
Choose a tag to compare

Patch Changes

wrangler@2.0.0

08 May 20:26
68ddad5
Compare
Choose a tag to compare

Major Changes

  • #928 7672f99 Thanks @threepointone! - ⛅️ Wrangler 2.0.0

    Wrangler 2.0 is a full rewrite. Every feature has been improved, while retaining as much backward compatibility as we could. We hope you love it. It'll only get better.

wrangler@0.0.34

08 May 16:20
893ed38
Compare
Choose a tag to compare

Patch Changes

  • #926 7b38a7c Thanks @threepointone! - polish: show paths of created files with wrangler init

    This patch modifies the terminal when running wrangler init, to show the proper paths of files created during it (like package.json, tsconfig.json, etc etc). It also fixes a bug where we weren't detecting the existence of src/index.js for a named worker before asking to create it.

wrangler@0.0.33

08 May 13:54
18adf1a
Compare
Choose a tag to compare

Patch Changes

  • #924 3bdba63 Thanks @threepointone! - fix: withwrangler init, test for existence of package.json/ tsconfig.json / .git in the right locations

    When running wrangler.init, we look for the existence of package.json, / tsconfig.json / .git when deciding whether we should create them ourselves or not. Because name can be a relative path, we had a bug where we don't starting look from the right directory. We also had a bug where we weren't even testing for the existence of the .git directory correctly. This patch fixes that initial starting location, tests for .git as a directory, and correctly decides when to create those files.

wrangler@0.0.32

08 May 12:55
596d5b2
Compare
Choose a tag to compare

Patch Changes

  • #922 e2f9bb2 Thanks @threepointone! - feat: offer to create a git repo when calling wrangler init

    Worker projects created by wrangler init should also be managed by source control (popularly, git). This patch adds a choice in wrangler init to make the created project into a git repository.

    Additionally, this fixes a bug in our tests where mocked confirm() and prompt() calls were leaking between tests.

    Closes #847

wrangler@0.0.31

07 May 21:41
f584ae6
Compare
Choose a tag to compare

Patch Changes

  • #916 4ef5fbb Thanks @petebacondarwin! - fix: display and error and help for wrangler init --site

    The --site option is no longer supported.
    This change adds information about how to create a new Sites project
    by cloning a repository.
    It also adds links to the Worker Sites and Cloudflare Pages docs.

  • #908 f8dd31e Thanks @threepointone! - fix: fix isolate prewarm logic for wrangler dev

    When calling wrangler dev, we make a request to a special URL that "prewarms" the isolate running our Worker so that we can attach devtools etc to it before actually making a request. We'd implemented it wrongly, and because we'd silenced its errors, we weren't catching it. This patch fixes the logic (based on wrangler 1.x's implementation) and enables logging errors when the prewarm request fails.

    As a result, profiling starts working again as expected. Fixes #907

  • #919 13078e1 Thanks @threepointone! - fix: don't crash when tail event is null

    Sometime the "event" on a tail can be null. This patch makes sure we don't crash when that happens. Fixes #918

  • #913 dfeed74 Thanks @threepointone! - polish: add a deprecation warning to --inspect on dev

    We have a blogposts and docs that says you need to pass --inspect to use devtools and/or profile your Worker. In wrangler v2, we don't need to pass the flag anymore. Using it right now will throw an error, so this patch makes it a simple warning instead.

  • #916 4ef5fbb Thanks @petebacondarwin! - fix: add some space after the CLI help message when there is an error

  • #920 57cf221 Thanks @threepointone! - chore: don't minify bundles

    When errors in wrangler happen, it's hard to tell where the error is coming from in a minified bundle. This patch removes the minification. We still set process.env.NODE_ENV = 'production' in the bundle so we don't run dev-only paths in things like React.

    This adds about 2 mb to the bundle, but imo it's worth it.

  • #916 4ef5fbb Thanks @petebacondarwin! - fix: update the generate command to provide better deprecation messaging

  • #914 9903526 Thanks @sidharthachatterjee! - fix: Ensure getting git branch doesn't fail on Windows

  • #917 94d3d6d Thanks @GregBrimble! - fix: Hit correct endpoint for 'wrangler pages publish'

  • #910 fe0344d Thanks @taylorlee! - fix: support preview buckets for r2 bindings

    Allows wrangler2 to perform preview & dev sessions with a different bucket than the published worker's binding.

    This matches kv's preview_id behavior, and brings the wrangler2 implementation in sync with wrangler1.

wrangler@0.0.30

05 May 19:02
f2b6cd9
Compare
Choose a tag to compare

Patch Changes

  • #902 daed3c3 Thanks @petebacondarwin! - fix: show error if a string option is used without a value

    Fixes #883

  • #901 b246066 Thanks @threepointone! - chore: minify bundle, don't ship sourcemaps

    We haven't found much use for sourcemaps in production, and we should probably minify the bundle anyway. This will also remove an dev only warnings react used to log.

  • #904 641cdad Thanks @GregBrimble! - feat: Adds 'assets:' loader for Pages Functions.

    This lets users and Plugin authors include a folder of static assets in Pages Functions.

    export { onRequest } from "assets:../folder/of/static/assets";

    More information in our docs.

  • #905 c57ff0e Thanks @JacobMGEvans! - chore: removed Sentry and related reporting code. Automated reporting of Wrangler errors will be reimplemented after further planning.

wrangler@0.0.29

04 May 18:58
62680f6
Compare
Choose a tag to compare

Patch Changes

  • #897 d0801b7 Thanks @threepointone! - polish: tweak the message when .dev.vars is used

    This tweaks the mssage when a .dev.vars file is used so that it doesn't imply that the user has to copy the values from it into their wrangler.toml.

  • #880 aad1418 Thanks @GregBrimble! - fix: Stop unnecessarily amalgamating duplicate headers in Pages Functions

    Previously, set-cookie multiple headers would be combined because of unexpected behavior in the spec.

  • #892 b08676a Thanks @GregBrimble! - fix: Adds the leading slash to Pages deployment manifests that the API expects, and fixes manifest generation on Windows machines.

  • #852 6283ad5 Thanks @JacobMGEvans! - feat: non-TTY check for required variables
    Added a check in non-TTY environments for account_id, CLOUDFLARE_ACCOUNT_ID and CLOUDFLARE_API_TOKEN. If account_id exists in wrangler.toml
    then CLOUDFLARE_ACCOUNT_ID is not needed in non-TTY scope. The CLOUDFLARE_API_TOKEN is necessary in non-TTY scope and will always error if missing.

    resolves #827

  • #893 5bf17ca Thanks @petebacondarwin! - fix: remove bold font from additional lines of warnings and errors

    Previously, when a warning or error was logged, the entire message
    was formatted in bold font. This change makes only the first line of
    the message bold, and the rest is formatted with a normal font.

  • #894 57c1354 Thanks @threepointone! - polish: s/DO NOT USE THIS/ Ignored

    Followup to #888, this replaces some more scary capitals with a more chill word.

  • #893 5bf17ca Thanks @petebacondarwin! - fix: add bold to the Deprecated warning title

  • #882 1ad7570 Thanks @petebacondarwin! - feat: add support for reading build time env variables from a .env file

    This change will automatically load up a .env file, if found, and apply its
    values to the current environment. An example would be to provide a specific
    CLOUDFLARE_ACCOUNT_ID value.

    Related to #190

  • #887 2bb4d30 Thanks @threepointone! - polish: accept Enter as a valid key in confirm dialogs

    Instead of logging "Unrecognised input" when hitting return/enter in a confirm dialog, we should accept it as a confirmation. This patch also makes the default choice "y" bold in the dialog.

  • #891 bae5ba4 Thanks @GregBrimble! - feat: Adds interactive prompts for the 'wrangler pages publish' and related commands.

    Additionally, those commands now read from node_modules/.cache/wrangler/pages.json to persist users' account IDs and project names.

  • #888 b77aa38 Thanks @threepointone! - polish: s/DEPRECATION/Deprecation

    This removes the scary uppercase from DEPRECATION warnings. It also moves the service environment usage warning into diagnostics instead of logging it directly.

  • #879 f694313 Thanks @petebacondarwin! - feat: read vars overrides from a local file for wrangler dev

    The vars bindings can be specified in the wrangler.toml configuration file.
    But "secret" vars are usually only provided at the server -
    either by creating them in the Dashboard UI, or using the wrangler secret command.

    It is useful during development, to provide these types of variable locally.
    When running wrangler dev we will look for a file called .dev.vars, situated
    next to the wrangler.toml file (or in the current working directory if there is no
    wrangler.toml). Any values in this file, formatted like a dotenv file, will add to
    or override vars bindings provided in the wrangler.toml.

    Related to #190

jest-environment-wrangler@0.0.29

04 May 18:58
62680f6
Compare
Choose a tag to compare
jest-environment-wrangler@0.0.29

wrangler@0.0.28

03 May 23:01
21af9ad
Compare
Choose a tag to compare

Patch Changes

  • #843 da12cc5 Thanks @threepointone! - fix: site.entry-point is no longer a hard deprecation

    To make migration of v1 projects easier, Sites projects should still work, including the entry-point field (which currently errors out). This enables site.entry-point as a valid entry point, with a deprecation warning.

  • #848 0a79d75 Thanks @petebacondarwin! - polish: improve consistency of warnings and errors

    Related to #377

  • #877 97f945f Thanks @caass! - Treat the "name" parameter in wrangler init as a path.

    This means that running wrangler init . will create a worker in the current directory,
    and the worker's name will be the name of the current directory.

    You can also run wrangler init path/to/my-worker and a worker will be created at
    [CWD]/path/to/my-worker with the name my-worker,

  • #851 277b254 Thanks @threepointone! - polish: do not log the error object when refreshing a token fails

    We handle the error anyway (by doing a fresh login) which has its own logging and messaging. In the future we should add a DEBUG mode that logs all requests/errors/warnings, but that's for later.

  • #869 f1423bf Thanks @threepointone! - feat: experimental --node-compat / config.node_compat

    This adds an experimental node.js compatibility mode. It can be enabled by adding node_compat = true in wrangler.toml, or by passing --node-compat as a command line arg for dev/publish commands. This is currently powered by @esbuild-plugins/node-globals-polyfill (which in itself is powered by rollup-plugin-node-polyfills).

    We'd previously added this, and then removed it because the quality of the polyfills isn't great. We're reintroducing it regardless so we can start getting feedback on its usage, and it sets up a foundation for replacing it with our own, hopefully better maintained polyfills.

    Of particular note, this means that what we promised in https://blog.cloudflare.com/announcing-stripe-support-in-workers/ now actually works.

    This patch also addresses some dependency issues, specifically leftover entries in package-lock.json.

  • #790 331c659 Thanks @sidharthachatterjee! - feature: Adds 'wrangler pages publish' (alias 'wrangler pages deployment create') command.

  • #866 8b227fc Thanks @caass! - Add a runtime check for wrangler dev local mode to avoid erroring in environments with no AsyncLocalStorage class

    Certain runtime APIs are only available to workers during the "request context",
    which is any code that returns after receiving a request and before returning
    a response.

    Miniflare emulates this behavior by using an AsyncLocalStorage and
    checking at runtime
    to see if you're using those APIs during the request context.

    In certain environments AsyncLocalStorage is unavailable, such as in a
    webcontainer.
    This function figures out if we're able to run those "request context" checks
    and returns a set of options
    that indicate to miniflare whether to run the checks or not.

  • #829 f08aac5 Thanks @JacobMGEvans! - feat: Add validation to the name field in configuration.
    The validation will warn users that the field can only be "type string,
    alphanumeric, underscores, and lowercase with dashes only" using the same RegEx as the backend

    resolves #795 #775

  • #868 6ecb1c1 Thanks @threepointone! - feat: implement service environments + durable objects

    Now that the APIs for getting migrations tags of services works as expected, this lands support for publishing durable objects to service environments, including migrations. It also removes the error we used to throw when attempting to use service envs + durable objects.

    Fixes #739