Files
ruff/playground
renovate[bot] 7857566b3d Update NPM Development dependencies (#29165)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@cloudflare/workers-types](https://redirect.github.com/cloudflare/workerd)
| [`5.20260831.1` →
`5.20260907.1`](https://renovatebot.com/diffs/npm/@cloudflare%2fworkers-types/5.20260831.1/5.20260907.1)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@cloudflare%2fworkers-types/5.20260907.1?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@cloudflare%2fworkers-types/5.20260831.1/5.20260907.1?slim=true)
|
|
[@types/react-dom](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom)
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom))
| [`19.2.5` →
`19.2.7`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.2.5/19.2.7)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/19.2.7?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/19.2.5/19.2.7?slim=true)
|
| [oxlint](https://oxc.rs/docs/guide/usage/linter)
([source](https://redirect.github.com/oxc-project/oxc/tree/HEAD/npm/oxlint))
| [`1.80.0` →
`1.81.0`](https://renovatebot.com/diffs/npm/oxlint/1.80.0/1.81.0) |
![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/1.81.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/1.80.0/1.81.0?slim=true)
|
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk)
([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler))
| [`4.127.1` →
`4.129.0`](https://renovatebot.com/diffs/npm/wrangler/4.127.1/4.129.0) |
![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/4.129.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/4.127.1/4.129.0?slim=true)
|

---

### Release Notes

<details>
<summary>cloudflare/workerd (@&#8203;cloudflare/workers-types)</summary>

###
[`v5.20260907.1`](https://redirect.github.com/cloudflare/workerd/compare/23263780e6ba38c7f230497a6abc1a4ff72124fb...beb7bd5c370d898e5ea81947aaa80ba5f48cd47e)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/23263780e6ba38c7f230497a6abc1a4ff72124fb...beb7bd5c370d898e5ea81947aaa80ba5f48cd47e)

###
[`v5.20260906.1`](https://redirect.github.com/cloudflare/workerd/compare/dd8133e9b9656fb39f1434247a80aa7a249ee204...23263780e6ba38c7f230497a6abc1a4ff72124fb)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/dd8133e9b9656fb39f1434247a80aa7a249ee204...23263780e6ba38c7f230497a6abc1a4ff72124fb)

###
[`v5.20260905.1`](https://redirect.github.com/cloudflare/workerd/compare/8352890424bcb8634cca60c1b41034431acd7331...dd8133e9b9656fb39f1434247a80aa7a249ee204)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/8352890424bcb8634cca60c1b41034431acd7331...dd8133e9b9656fb39f1434247a80aa7a249ee204)

###
[`v5.20260904.1`](https://redirect.github.com/cloudflare/workerd/compare/b73ce3ae105c35bafaaad864095079524573a465...8352890424bcb8634cca60c1b41034431acd7331)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/b73ce3ae105c35bafaaad864095079524573a465...8352890424bcb8634cca60c1b41034431acd7331)

###
[`v5.20260903.1`](https://redirect.github.com/cloudflare/workerd/compare/9f3941ff63c8fde2bb60e93e8e340219c8607588...b73ce3ae105c35bafaaad864095079524573a465)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/9f3941ff63c8fde2bb60e93e8e340219c8607588...b73ce3ae105c35bafaaad864095079524573a465)

###
[`v5.20260902.1`](https://redirect.github.com/cloudflare/workerd/compare/1eab471843f52c63c98fb3ee57c135fc1cd5f27a...9f3941ff63c8fde2bb60e93e8e340219c8607588)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/1eab471843f52c63c98fb3ee57c135fc1cd5f27a...9f3941ff63c8fde2bb60e93e8e340219c8607588)

###
[`v5.20260901.1`](https://redirect.github.com/cloudflare/workerd/compare/8865ba5020d8aad77a961c4cd36f79a9d4d70232...1eab471843f52c63c98fb3ee57c135fc1cd5f27a)

[Compare
Source](https://redirect.github.com/cloudflare/workerd/compare/8865ba5020d8aad77a961c4cd36f79a9d4d70232...1eab471843f52c63c98fb3ee57c135fc1cd5f27a)

</details>

<details>
<summary>oxc-project/oxc (oxlint)</summary>

###
[`v1.81.0`](https://redirect.github.com/oxc-project/oxc/blob/HEAD/npm/oxlint/CHANGELOG.md#1810---2026-08-31)

[Compare
Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v1.80.0...oxlint_v1.81.0)

##### 📚 Documentation

-
[`d5be037`](https://redirect.github.com/oxc-project/oxc/commit/d5be037)
linter/typescript/switch-exhaustiveness-check: Clarify default case
comment pattern
([#&#8203;26100](https://redirect.github.com/oxc-project/oxc/issues/26100))
(camc314)

</details>

<details>
<summary>cloudflare/workers-sdk (wrangler)</summary>

###
[`v4.129.0`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#41290)

[Compare
Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@4.128.0...wrangler@4.129.0)

##### Minor Changes

-
[#&#8203;15460](https://redirect.github.com/cloudflare/workers-sdk/pull/15460)
[`93d72a5`](https://redirect.github.com/cloudflare/workers-sdk/commit/93d72a5772cce74d9f5657d6989efe89cc10dfbb)
Thanks [@&#8203;QnJ1c2kNCg](https://redirect.github.com/QnJ1c2kNCg)! -
Support gzip compression for JSON Pipelines sinks

Pipelines is in open beta. `wrangler pipelines sinks create` and the
interactive setup flow now pass the selected JSON compression to the
Pipelines API. JSON sinks accept `uncompressed` or `gzip`, while Parquet
retains its existing compression options and `zstd` default.

-
[#&#8203;15358](https://redirect.github.com/cloudflare/workers-sdk/pull/15358)
[`d2d8eea`](https://redirect.github.com/cloudflare/workers-sdk/commit/d2d8eeaa4c49479c05b351471f870abab7d2c032)
Thanks [@&#8203;pombosilva](https://redirect.github.com/pombosilva)! -
Add a `--json` flag to the `wrangler workflows` commands

Every `wrangler workflows` command now accepts `--json`, which emits the
raw API payload instead of the human-readable rendering. The formatted
output remains the default, so existing usage is unaffected:

  `wrangler workflows instances list my-workflow --json`

The JSON output carries raw values rather than a serialisation of the
formatted view: ISO timestamps instead of locale-formatted dates, plain
status strings instead of emojified labels, and no presentation-only
derived fields.

##### Patch Changes

-
[#&#8203;15469](https://redirect.github.com/cloudflare/workers-sdk/pull/15469)
[`d40a634`](https://redirect.github.com/cloudflare/workers-sdk/commit/d40a634f970971bbcba01a8ac201fd3526b3e5fe)
Thanks
[@&#8203;dependabot](https://redirect.github.com/apps/dependabot)! -
Update dependencies of "miniflare", "wrangler"

  The following dependency versions have been updated:

| Dependency | From | To |
|
------------------------------------------------------------------------
| ------------- | ------------- |
|
[@&#8203;cloudflare/workers-types](https://redirect.github.com/cloudflare/workers-types)
| ^5.20260831.1 | ^5.20260902.1 |
| workerd | 1.20260831.1 | 1.20260902.1 |

-
[#&#8203;15481](https://redirect.github.com/cloudflare/workers-sdk/pull/15481)
[`7c1b2a6`](https://redirect.github.com/cloudflare/workers-sdk/commit/7c1b2a600a02a8978d97786af4c7098216c31c4d)
Thanks
[@&#8203;dependabot](https://redirect.github.com/apps/dependabot)! -
Update dependencies of "miniflare", "wrangler"

  The following dependency versions have been updated:

| Dependency | From | To |
|
------------------------------------------------------------------------
| ------------- | ------------- |
|
[@&#8203;cloudflare/workers-types](https://redirect.github.com/cloudflare/workers-types)
| ^5.20260902.1 | ^5.20260903.1 |
| workerd | 1.20260902.1 | 1.20260903.1 |

-
[#&#8203;15472](https://redirect.github.com/cloudflare/workers-sdk/pull/15472)
[`f6fb347`](https://redirect.github.com/cloudflare/workers-sdk/commit/f6fb347e0cbaa20479468bffa336fe371b7f24cb)
Thanks [@&#8203;emily-shen](https://redirect.github.com/emily-shen)! -
Tolerate missing permissions during `wrangler delete` cleanup checks

`wrangler delete` now warns and continues when it cannot inspect Worker
dependencies or clean up legacy Workers Sites KV namespaces because of
missing permissions. The Worker delete request itself still fails
normally if the token cannot delete the Worker.

-
[#&#8203;15472](https://redirect.github.com/cloudflare/workers-sdk/pull/15472)
[`f6fb347`](https://redirect.github.com/cloudflare/workers-sdk/commit/f6fb347e0cbaa20479468bffa336fe371b7f24cb)
Thanks [@&#8203;emily-shen](https://redirect.github.com/emily-shen)! -
Tolerate missing resource permissions during resource provisioning

When Wrangler cannot check whether a bound resource exists because the
API returns a 403, it now skips automatic provisioning for that resource
type and continues the deploy. The deploy may still fail later if the
resource is missing.

-
[#&#8203;15476](https://redirect.github.com/cloudflare/workers-sdk/pull/15476)
[`dc24057`](https://redirect.github.com/cloudflare/workers-sdk/commit/dc24057e13580a3cd3e3b917b8659ad5c1e85e50)
Thanks
[@&#8203;christhorwarth](https://redirect.github.com/christhorwarth)! -
Fix remote development with static assets for API tokens using granular
Worker permissions

Wrangler now creates Workers.dev preview sessions through the
Worker-scoped endpoint and derives the preview hostname from the session
response. This avoids requiring account-level Workers subdomain access.

- Updated dependencies
\[[`00a9f2f`](https://redirect.github.com/cloudflare/workers-sdk/commit/00a9f2f87bb1319ed96b41fe5d9be5503445d2c0),
[`1dba24a`](https://redirect.github.com/cloudflare/workers-sdk/commit/1dba24a1ecf770a98b36c218cb77e26c7701be49),
[`d40a634`](https://redirect.github.com/cloudflare/workers-sdk/commit/d40a634f970971bbcba01a8ac201fd3526b3e5fe),
[`7c1b2a6`](https://redirect.github.com/cloudflare/workers-sdk/commit/7c1b2a600a02a8978d97786af4c7098216c31c4d)]:
  - <miniflare@5.20260903.0-alpha>

###
[`v4.128.0`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#41280)

[Compare
Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@4.127.1...wrangler@4.128.0)

##### Minor Changes

-
[#&#8203;15454](https://redirect.github.com/cloudflare/workers-sdk/pull/15454)
[`dbbb795`](https://redirect.github.com/cloudflare/workers-sdk/commit/dbbb795c47ff663857b605b484c63730e1e3ff45)
Thanks [@&#8203;jamesopstad](https://redirect.github.com/jamesopstad)! -
Move binding utilities into `@cloudflare/workers-utils`

Binding conversion, printing, and local-development validation are now
exported from `@cloudflare/workers-utils` so they can be shared by
Wrangler, the Cloudflare Vite plugin, and other consumers.

The corresponding exports have been removed from
`@cloudflare/deploy-helpers`. Consumers should import them directly from
`@cloudflare/workers-utils` instead.

Wrangler's `unstable_printBindings` API now accepts the bindings and an
options object instead of five positional parameters.

-
[#&#8203;15353](https://redirect.github.com/cloudflare/workers-sdk/pull/15353)
[`87a7acf`](https://redirect.github.com/cloudflare/workers-sdk/commit/87a7acf197629f5bf16bb38a2e411dc6c21339e0)
Thanks [@&#8203;pombosilva](https://redirect.github.com/pombosilva)! -
Add `--date-start` and `--date-end` filters to `wrangler workflows
instances list`

  You can now narrow an instance listing to a creation-time window:

`wrangler workflows instances list my-workflow --date-start 2026-01-01
--date-end 2026-01-31`

Either flag can be used independently. Both accept an ISO 8601 date or
timestamp and are normalised to UTC before being sent, so a date-only
value such as `2026-01-01` works as well as a full
`2026-01-01T13:00:00Z`. The bounds are inclusive and compose with the
existing `--status` filter.

-
[#&#8203;15379](https://redirect.github.com/cloudflare/workers-sdk/pull/15379)
[`ea28cc3`](https://redirect.github.com/cloudflare/workers-sdk/commit/ea28cc33e5d39031e9bf512e17f3a57cccbd3f46)
Thanks
[@&#8203;ibbykhazanchi](https://redirect.github.com/ibbykhazanchi)! -
Add query string redaction to Workers observability configuration

Set `observability.redact_query_string` in `wrangler.json` or
`observability.redactQueryString` in the experimental
`cloudflare.config.ts` format to remove query strings from request URLs
in logs and traces.

-
[#&#8203;14915](https://redirect.github.com/cloudflare/workers-sdk/pull/14915)
[`707cb6f`](https://redirect.github.com/cloudflare/workers-sdk/commit/707cb6f22bd8685bce7d1dfa0b53853057200eee)
Thanks [@&#8203;longlho](https://redirect.github.com/longlho)! - Include
exact raw and gzip-compressed Worker bundle sizes in structured `deploy`
and `version-upload` output.

##### Patch Changes

-
[#&#8203;15436](https://redirect.github.com/cloudflare/workers-sdk/pull/15436)
[`200780f`](https://redirect.github.com/cloudflare/workers-sdk/commit/200780faa81ab5e58bc656e2d21a20fdd3a4b725)
Thanks
[@&#8203;dependabot](https://redirect.github.com/apps/dependabot)! -
Update dependencies of "miniflare", "wrangler"

  The following dependency versions have been updated:

| Dependency | From | To |
|
------------------------------------------------------------------------
| ------------- | ------------- |
|
[@&#8203;cloudflare/workers-types](https://redirect.github.com/cloudflare/workers-types)
| ^5.20260828.1 | ^5.20260831.1 |
| workerd | 1.20260828.1 | 1.20260831.1 |

-
[#&#8203;15406](https://redirect.github.com/cloudflare/workers-sdk/pull/15406)
[`b3f2628`](https://redirect.github.com/cloudflare/workers-sdk/commit/b3f26289a735279e463fb4802d4a4481cfaaac71)
Thanks [@&#8203;james-elicx](https://redirect.github.com/james-elicx)! -
Reduce the installed bundle sizes of Wrangler and Miniflare

Wrangler now resolves bundled workspace dependencies from source during
monorepo builds so unused exports can be removed. Miniflare, its shared
CLI and container dependencies now use granular
`@cloudflare/workers-utils` entry points instead of loading the package
barrel, reducing the raw Wrangler and Miniflare artifacts by 6.16 MiB
(31.4%) and 1.06 MiB (22.9%) respectively without changing runtime
behavior or installed dependencies.

-
[#&#8203;15398](https://redirect.github.com/cloudflare/workers-sdk/pull/15398)
[`1809c5e`](https://redirect.github.com/cloudflare/workers-sdk/commit/1809c5edadfd4a93e6733dab77ca67305c8d6c97)
Thanks [@&#8203;james-elicx](https://redirect.github.com/james-elicx)! -
Reduce Wrangler's published package size

Stop including the unused build metafile in the npm package, reducing
its unpacked size by approximately 3.1 MiB.

-
[#&#8203;15382](https://redirect.github.com/cloudflare/workers-sdk/pull/15382)
[`b3fb2bf`](https://redirect.github.com/cloudflare/workers-sdk/commit/b3fb2bf0d9e43b126738a63ba168ba1e2807e7e8)
Thanks [@&#8203;Om-singhaI](https://redirect.github.com/Om-singhaI)! -
Skip the skills install status lookup when telemetry is disabled

Telemetry events include a `currentAgentSkillsInstalled` property, and
computing it can query the GitHub API. The lookup used to start before
the telemetry permission was checked, so users who opted out via
`WRANGLER_SEND_METRICS`, `DO_NOT_TRACK`, or `send_metrics` in their
Wrangler config still triggered network requests on behalf of telemetry.
The dispatcher now checks the permission first and only performs the
lookup when telemetry is enabled.

- Updated dependencies
\[[`200780f`](https://redirect.github.com/cloudflare/workers-sdk/commit/200780faa81ab5e58bc656e2d21a20fdd3a4b725),
[`b3f2628`](https://redirect.github.com/cloudflare/workers-sdk/commit/b3f26289a735279e463fb4802d4a4481cfaaac71),
[`87a7acf`](https://redirect.github.com/cloudflare/workers-sdk/commit/87a7acf197629f5bf16bb38a2e411dc6c21339e0)]:
  - <miniflare@5.20260831.0-alpha>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 4am on Wednesday"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMzQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEzNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-10-07 09:43:58 -04:00
..
2025-05-03 19:49:15 +02:00
2025-05-03 19:49:15 +02:00

playground

In-browser playground for Ruff. Available https://play.ruff.rs/.

Getting started

Use npm 11.10.0 or newer so that the dependency cooldown in .npmrc is enforced.

Install the NPM dependencies with npm ci --ignore-scripts, and run the development server with npm start --workspace ruff-playground or npm start --workspace ty-playground. You may need to restart the server after making changes to Ruff or ty to re-build the WASM module.

To run the datastore, which is based on Workers KV, run npm ci --ignore-scripts and npm start -- --local from the ./playground/api directory to use the locked Wrangler CLI. The datastore is only required to generate shareable URLs for code snippets. The development datastore does not require Cloudflare authentication or login, but in turn only persists data locally.

Architecture

The playground is implemented as a single-page React application powered by Vite, with the editor experience itself powered by Monaco.

The playground stores state in localStorage, but supports persisting code snippets to a persistent datastore based on Workers KV and exposed via a Cloudflare Worker.

The playground design is originally based on Tailwind Play, with additional inspiration from the Biome Playground.

Known issues

Stack overflows

If you see stack overflows in the playground, build the WASM module in release mode: npm run --workspace ty-playground build:wasm.