mirror of
				https://github.com/alecthomas/chroma.git
				synced 2025-10-30 23:57:49 +02:00 
			
		
		
		
	This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [biome](https://redirect.github.com/biomejs/biome) | | patch | `2.2.5` -> `2.2.6` | | [esbuild](https://redirect.github.com/evanw/esbuild) | | patch | `0.25.10` -> `0.25.11` | | [go](https://redirect.github.com/golang/go) | | patch | `1.25.1` -> `1.25.3` | | [go](https://go.dev/) ([source](https://redirect.github.com/golang/go)) | toolchain | patch | `1.25.1` -> `1.25.3` | | [uv](https://redirect.github.com/astral-sh/uv) | | minor | `0.8.23` -> `0.9.2` | --- ### Release Notes <details> <summary>biomejs/biome (biome)</summary> ### [`v2.2.6`](https://redirect.github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.2.6): Biome CLI v2.2.6 #### 2.2.6 ##### Patch Changes - [#​7071](https://redirect.github.com/biomejs/biome/pull/7071) [`a8e7301`](a8e73018a8) Thanks [@​ptkagori](https://redirect.github.com/ptkagori)! - Added the [`useQwikMethodUsage`](https://biomejs.dev/linter/rules/use-qwik-method-usage) lint rule for the Qwik domain. This rule validates Qwik hook usage. Identifiers matching `useXxx` must be called only within serialisable reactive contexts (for example, inside `component$`, route loaders/actions, or within other Qwik hooks), preventing common Qwik antipatterns. **Invalid:** ```js // Top-level hook call is invalid. const state = useStore({ count: 0 }); function helper() { // Calling a hook in a non-reactive function is invalid. const loc = useLocation(); } ``` **Valid:** ```js component$(() => { const state = useStore({ count: 0 }); // OK inside component$. return <div>{state.count}</div>; }); const handler = $(() => { const loc = useLocation(); // OK inside a $-wrapped closure. console.log(loc.params); }); ``` - [#​7685](https://redirect.github.com/biomejs/biome/pull/7685) [`52071f5`](52071f54bc) Thanks [@​denbezrukov](https://redirect.github.com/denbezrukov)! - Fixed [#​6981](https://redirect.github.com/biomejs/biome/issues/6981): The [NoUnknownPseudoClass](https://biomejs.dev/linter/rules/no-unknown-pseudo-class/) rule no longer reports local pseudo-classes when CSS Modules are used. - [#​7640](https://redirect.github.com/biomejs/biome/pull/7640) [`899f7b2`](899f7b28ec) Thanks [@​arendjr](https://redirect.github.com/arendjr)! - Fixed [#​7638](https://redirect.github.com/biomejs/biome/issues/7638): [`useImportExtensions`](https://biomejs.dev/linter/rules/use-import-extensions/) no longer emits diagnostics on valid import paths that end with a query or hash. ##### Example ```js // This no longer warns if `index.css` exists: import style from "../theme/index.css?inline"; ``` - [#​7071](https://redirect.github.com/biomejs/biome/pull/7071) [`a8e7301`](a8e73018a8) Thanks [@​ptkagori](https://redirect.github.com/ptkagori)! - Added the [`useQwikValidLexicalScope`](https://biomejs.dev/linter/rules/use-qwik-valid-lexical-scope) rule to the Qwik domain. This rule helps you avoid common bugs in Qwik components by checking that your variables and functions are declared in the correct place. **Invalid:** ```js // Invalid: state defined outside the component's lexical scope. let state = useStore({ count: 0 }); const Component = component$(() => { return ( <button onClick$={() => state.count++}>Invalid: {state.count}</button> ); }); ``` **Valid:** ```js // Valid: state initialised within the component's lexical scope and captured by the event. const Component = component$(() => { const state = useStore({ count: 0 }); return <button onClick$={() => state.count++}>Valid: {state.count}</button>; }); ``` - [#​7620](https://redirect.github.com/biomejs/biome/pull/7620) [`5beb1ee`](5beb1eefe1) Thanks [@​Netail](https://redirect.github.com/Netail)! - Added the rule [`useDeprecatedDate`](https://biomejs.dev/linter/rules/use-deprecated-date/), which makes a deprecation date required for the graphql `@deprecated` directive. ##### Invalid ```graphql query { member @​deprecated(reason: "Use `members` instead") { id } } ``` ##### Valid ```graphql query { member @​deprecated(reason: "Use `members` instead", deletionDate: "2099-12-25") { id } } ``` - [#​7709](https://redirect.github.com/biomejs/biome/pull/7709) [`d6da4d5`](d6da4d5a27) Thanks [@​siketyan](https://redirect.github.com/siketyan)! - Fixed [#​7704](https://redirect.github.com/biomejs/biome/issues/7704): The [`useExhaustiveDependencies`](https://biomejs.dev/linter/rules/use-exhaustive-dependencies/) rule now correctly adds an object dependency when its method is called within the closure. For example: ```js function Component(props) { useEffect(() => { props.foo(); }, []); } ``` will now be fixed to: ```js function Component(props) { useEffect(() => { props.foo(); }, [props]); } ``` - [#​7624](https://redirect.github.com/biomejs/biome/pull/7624) [`309ae41`](309ae41c1a) Thanks [@​lucasweng](https://redirect.github.com/lucasweng)! - Fixed [#​7595](https://redirect.github.com/biomejs/biome/issues/7595): [`noUselessEscapeInString`](https://biomejs.dev/linter/rules/no-useless-escape-in-string/) no longer reports `$\{` escape in template literals. - [#​7665](https://redirect.github.com/biomejs/biome/pull/7665) [`29e4229`](29e422939f) Thanks [@​ryan-m-walker](https://redirect.github.com/ryan-m-walker)! - Fixed [#​7619](https://redirect.github.com/biomejs/biome/issues/7619): Added support for parsing the CSS `:state()` pseudo-class. ```css custom-selector:state(checked) { } ``` - [#​7608](https://redirect.github.com/biomejs/biome/pull/7608) [`41df59b`](41df59bfc6) Thanks [@​ritoban23](https://redirect.github.com/ritoban23)! - Fixed [#​7604](https://redirect.github.com/biomejs/biome/issues/7604): the `useMaxParams` rule now highlights parameter lists instead of entire function bodies. This provides more precise error highlighting. Previously, the entire function was highlighted; now only the parameter list is highlighted, such as `(a, b, c, d, e, f, g, h)`. - [#​7643](https://redirect.github.com/biomejs/biome/pull/7643) [`459a6ac`](459a6aca67) Thanks [@​daivinhtran](https://redirect.github.com/daivinhtran)! - Fixed [#​7580](https://redirect.github.com/biomejs/biome/issues/7580): Include plugin in summary report #### What's Changed - chore: add .zed to gitignore by [@​daivinhtran](https://redirect.github.com/daivinhtran) in [#​7634](https://redirect.github.com/biomejs/biome/pull/7634) - fix(lint/noUselessEscapeInString): avoid false positive for ${ escape in template literals by [@​lucasweng](https://redirect.github.com/lucasweng) in [#​7624](https://redirect.github.com/biomejs/biome/pull/7624) - fix(lint): only highlight function names in useMaxParams rule by [@​ritoban23](https://redirect.github.com/ritoban23) in [#​7608](https://redirect.github.com/biomejs/biome/pull/7608) - docs: add Polish translation of Biome README by [@​SzymCode](https://redirect.github.com/SzymCode) in [#​7630](https://redirect.github.com/biomejs/biome/pull/7630) - fix(linter): `useImportExtensions` handles queries and hashes by [@​arendjr](https://redirect.github.com/arendjr) in [#​7640](https://redirect.github.com/biomejs/biome/pull/7640) - ci: breakdown benchmarks by [@​ematipico](https://redirect.github.com/ematipico) in [#​7641](https://redirect.github.com/biomejs/biome/pull/7641) - chore: upgrade to rust 1.90.0 by [@​ematipico](https://redirect.github.com/ematipico) in [#​7642](https://redirect.github.com/biomejs/biome/pull/7642) - fix(css\_parser): add support for parsing :state() ([#​7619](https://redirect.github.com/biomejs/biome/issues/7619)) by [@​ryan-m-walker](https://redirect.github.com/ryan-m-walker) in [#​7665](https://redirect.github.com/biomejs/biome/pull/7665) - fix(cli): include plugin rule in summary report by [@​daivinhtran](https://redirect.github.com/daivinhtran) in [#​7643](https://redirect.github.com/biomejs/biome/pull/7643) - feat(qwik): add useQwikMethodUsage & useQwikValidLexicalScope by [@​ptkagori](https://redirect.github.com/ptkagori) in [#​7071](https://redirect.github.com/biomejs/biome/pull/7071) - fix: replace domains polyfill.io to Cloudflare by [@​You-saku](https://redirect.github.com/You-saku) in [#​7678](https://redirect.github.com/biomejs/biome/pull/7678) - feat(biome\_graphql\_analyze): implement `useDeprecatedDate` by [@​Netail](https://redirect.github.com/Netail) in [#​7620](https://redirect.github.com/biomejs/biome/pull/7620) - chore(deps): update dependency [@​types/node](https://redirect.github.com/types/node) to v22.18.8 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7686](https://redirect.github.com/biomejs/biome/pull/7686) - chore(deps): update github-actions by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7687](https://redirect.github.com/biomejs/biome/pull/7687) - chore(deps): update rust crate regex to 1.11.3 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7689](https://redirect.github.com/biomejs/biome/pull/7689) - chore(deps): update rust crate quote to 1.0.41 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7688](https://redirect.github.com/biomejs/biome/pull/7688) - chore(deps): update dependency eslint to v9.37.0 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7691](https://redirect.github.com/biomejs/biome/pull/7691) - chore(deps): update rust crate serde to 1.0.228 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7690](https://redirect.github.com/biomejs/biome/pull/7690) - fix(css\_analyze): handle CSS Modules pseudo-class 'local' in NoUnknownPseudoClass rule ([#​6981](https://redirect.github.com/biomejs/biome/issues/6981)) by [@​denbezrukov](https://redirect.github.com/denbezrukov) in [#​7685](https://redirect.github.com/biomejs/biome/pull/7685) - chore(deps): update pnpm to v10.18.0 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7693](https://redirect.github.com/biomejs/biome/pull/7693) - chore(deps): update taiki-e/install-action action to v2.62.21 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7692](https://redirect.github.com/biomejs/biome/pull/7692) - chore(deps): update rust crate camino to 1.2.1 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7694](https://redirect.github.com/biomejs/biome/pull/7694) - fix(deps): update rust crates by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7562](https://redirect.github.com/biomejs/biome/pull/7562) - fix(lint/useExhaustiveDependencies): correct fix for method calls by [@​siketyan](https://redirect.github.com/siketyan) in [#​7709](https://redirect.github.com/biomejs/biome/pull/7709) - chore(deps): update dependency [@​types/node](https://redirect.github.com/types/node) to v22.18.10 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7738](https://redirect.github.com/biomejs/biome/pull/7738) - chore(deps): update rust crate libc to 0.2.177 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7740](https://redirect.github.com/biomejs/biome/pull/7740) - chore(deps): update rust crate ureq to 3.1.2 - autoclosed by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7741](https://redirect.github.com/biomejs/biome/pull/7741) - ci: release by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​7637](https://redirect.github.com/biomejs/biome/pull/7637) - chore(deps): update github-actions by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7736](https://redirect.github.com/biomejs/biome/pull/7736) #### New Contributors - [@​ritoban23](https://redirect.github.com/ritoban23) made their first contribution in [#​7608](https://redirect.github.com/biomejs/biome/pull/7608) - [@​SzymCode](https://redirect.github.com/SzymCode) made their first contribution in [#​7630](https://redirect.github.com/biomejs/biome/pull/7630) - [@​You-saku](https://redirect.github.com/You-saku) made their first contribution in [#​7678](https://redirect.github.com/biomejs/biome/pull/7678) **Full Changelog**: <https://github.com/biomejs/biome/compare/@biomejs/biome@2.2.5...@​biomejs/biome@2.2.6> </details> <details> <summary>evanw/esbuild (esbuild)</summary> ### [`v0.25.11`](https://redirect.github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#02511) [Compare Source](https://redirect.github.com/evanw/esbuild/compare/v0.25.10...v0.25.11) - Add support for `with { type: 'bytes' }` imports ([#​4292](https://redirect.github.com/evanw/esbuild/issues/4292)) The [import bytes](https://redirect.github.com/tc39/proposal-import-bytes) proposal has reached stage 2.7 in the TC39 process, which means that although it isn't quite recommended for implementation, it's generally approved and ready for validation. Furthermore it has already been implemented by [Deno](https://docs.deno.com/examples/importing_bytes/) and [Webpack](https://redirect.github.com/webpack/webpack/pull/19928). So with this release, esbuild will also add support for this. It behaves exactly the same as esbuild's existing [`binary` loader](https://esbuild.github.io/content-types/#binary). Here's an example: ```js import data from './image.png' with { type: 'bytes' } const view = new DataView(data.buffer, 0, 24) const width = view.getInt32(16) const height = view.getInt32(20) console.log('size:', width + '\xD7' + height) ``` - Lower CSS media query range syntax ([#​3748](https://redirect.github.com/evanw/esbuild/issues/3748), [#​4293](https://redirect.github.com/evanw/esbuild/issues/4293)) With this release, esbuild will now transform CSS media query range syntax into equivalent syntax using `min-`/`max-` prefixes for older browsers. For example, the following CSS: ```css @​media (640px <= width <= 960px) { main { display: flex; } } ``` will be transformed like this with a target such as `--target=chrome100` (or more specifically with `--supported:media-range=false` if desired): ```css @​media (min-width: 640px) and (max-width: 960px) { main { display: flex; } } ``` </details> <details> <summary>golang/go (go)</summary> ### [`v1.25.3`](https://redirect.github.com/golang/go/compare/go1.25.2...go1.25.3) ### [`v1.25.2`](https://redirect.github.com/golang/go/compare/go1.25.1...go1.25.2) </details> <details> <summary>astral-sh/uv (uv)</summary> ### [`v0.9.2`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#092) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.9.1...0.9.2) Released on 2025-10-10. ##### Python - Add CPython 3.9.24. - Add CPython 3.10.19. - Add CPython 3.11.14. - Add CPython 3.12.12. ##### Enhancements - Avoid inferring check URLs for pyx in `uv publish` ([#​16234](https://redirect.github.com/astral-sh/uv/pull/16234)) - Add `uv tool list --show-python` ([#​15814](https://redirect.github.com/astral-sh/uv/pull/15814)) ##### Documentation - Add missing "added in" to new environment variables in reference ([#​16217](https://redirect.github.com/astral-sh/uv/pull/16217)) ### [`v0.9.1`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#091) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.9.0...0.9.1) Released on 2025-10-09. ##### Enhancements - Log Python choice in `uv init` ([#​16182](https://redirect.github.com/astral-sh/uv/pull/16182)) - Fix `pylock.toml` config conflict error messages ([#​16211](https://redirect.github.com/astral-sh/uv/pull/16211)) ##### Configuration - Add `UV_UPLOAD_HTTP_TIMEOUT` and respect `UV_HTTP_TIMEOUT` in uploads ([#​16040](https://redirect.github.com/astral-sh/uv/pull/16040)) - Support `UV_WORKING_DIRECTORY` for setting `--directory` ([#​16125](https://redirect.github.com/astral-sh/uv/pull/16125)) ##### Bug fixes - Allow missing `Scripts` directory ([#​16206](https://redirect.github.com/astral-sh/uv/pull/16206)) - Fix handling of Python requests with pre-releases in ranges ([#​16208](https://redirect.github.com/astral-sh/uv/pull/16208)) - Preserve comments on version bump ([#​16141](https://redirect.github.com/astral-sh/uv/pull/16141)) - Retry all HTTP/2 errors ([#​16038](https://redirect.github.com/astral-sh/uv/pull/16038)) - Treat deleted Windows registry keys as equivalent to missing ones ([#​16194](https://redirect.github.com/astral-sh/uv/pull/16194)) - Ignore pre-release Python versions when a patch version is requested ([#​16210](https://redirect.github.com/astral-sh/uv/pull/16210)) ##### Documentation - Document why uv discards upper bounds on `requires-python` ([#​15927](https://redirect.github.com/astral-sh/uv/pull/15927)) - Document uv version environment variables were added in ([#​15196](https://redirect.github.com/astral-sh/uv/pull/15196)) ### [`v0.9.0`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#090) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.8.23...0.9.0) Released on 2025-10-07. This breaking release is primarily motivated by the release of Python 3.14, which contains some breaking changes (we recommend reading the ["What's new in Python 3.14"](https://docs.python.org/3/whatsnew/3.14.html) page). uv may use Python 3.14 in cases where it previously used 3.13, e.g., if you have not pinned your Python version and do not have any Python versions installed on your machine. While we think this is uncommon, we prefer to be cautious. We've included some additional small changes that could break workflows. See our [Python 3.14](https://astral.sh/blog/python-3.14) blog post for some discussion of features we're excited about! There are no breaking changes to [`uv_build`](https://docs.astral.sh/uv/concepts/build-backend/). If you have an upper bound in your `[build-system]` table, you should update it. ##### Breaking changes - **Python 3.14 is now the default stable version** The default Python version has changed from 3.13 to 3.14. This applies to Python version installation when no Python version is requested, e.g., `uv python install`. By default, uv will use the system Python version if present, so this may not cause changes to general use of uv. For example, if Python 3.13 is installed already, then `uv venv` will use that version. If no Python versions are installed on a machine and automatic downloads are enabled, uv will now use 3.14 instead of 3.13, e.g., for `uv venv` or `uvx python`. This change will not affect users who are using a `.python-version` file to pin to a specific Python version. - **Allow use of free-threaded variants in Python 3.14+ without explicit opt-in** ([#​16142](https://redirect.github.com/astral-sh/uv/pull/16142)) Previously, free-threaded variants of Python were considered experimental and required explicit opt-in (i.e., with `3.14t`) for usage. Now uv will allow use of free-threaded Python 3.14+ interpreters without explicit selection. The GIL-enabled build of Python will still be preferred, e.g., when performing an installation with `uv python install 3.14`. However, e.g., if a free-threaded interpreter comes before a GIL-enabled build on the `PATH`, it will be used. This change does not apply to free-threaded Python 3.13 interpreters, which will continue to require opt-in. - **Use Python 3.14 stable Docker images** ([#​16150](https://redirect.github.com/astral-sh/uv/pull/16150)) Previously, the Python 3.14 images had an `-rc` suffix, e.g., `python:3.14-rc-alpine` or `python:3.14-rc-trixie`. Now, the `-rc` suffix has been removed to match the stable [upstream images](https://hub.docker.com/_/python). The `-rc` images tags will no longer be updated. This change should not break existing workflows. - **Upgrade Alpine Docker image to Alpine 3.22** Previously, the `uv:alpine` Docker image was based on Alpine 3.21. Now, this image is based on Alpine 3.22. The previous image can be recovered with `uv:alpine3.21` and will continue to be updated until a future release. - **Upgrade Debian Docker images to Debian 13 "Trixie"** Previously, the `uv:debian` and `uv:debian-slim` Docker images were based on Debian 12 "Bookworm". Now, these images are based on Debian 13 "Trixie". The previous images can be recovered with `uv:bookworm` and `uv:bookworm-slim` and will continue to be updated until a future release. - **Fix incorrect output path when a trailing `/` is used in `uv build`** ([#​15133](https://redirect.github.com/astral-sh/uv/pull/15133)) When using `uv build` in a workspace, the artifacts are intended to be written to a `dist` directory in the workspace root. A bug caused workspace root determination to fail when the input path included a trailing `/` causing the `dist` directory to be placed in the child directory. This bug has been fixed in this release. For example, `uv build child/` is used, the output path will now be in `<workspace root>/dist/` rather than `<workspace root>/child/dist/`. ##### Python - Add CPython 3.14.0 - Add CPython 3.13.8 ##### Enhancements - Don't warn when a dependency is constrained by another dependency ([#​16149](https://redirect.github.com/astral-sh/uv/pull/16149)) ##### Bug fixes - Fix `uv python upgrade / install` output when there is a no-op for one request ([#​16158](https://redirect.github.com/astral-sh/uv/pull/16158)) - Surface pinned-version hint when `uv tool upgrade` can’t move the tool ([#​16081](https://redirect.github.com/astral-sh/uv/pull/16081)) - Ban pre-release versions in `uv python upgrade` requests ([#​16160](https://redirect.github.com/astral-sh/uv/pull/16160)) - Fix `uv python upgrade` replacement of installed binaries on pre-release to stable ([#​16159](https://redirect.github.com/astral-sh/uv/pull/16159)) ##### Documentation - Update `uv pip compile` args in `layout.md` ([#​16155](https://redirect.github.com/astral-sh/uv/pull/16155)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), 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/alecthomas/chroma). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>