chore(deps): update all dependencies - #3
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/all
branch
from
April 16, 2026 09:45
b76ad93 to
9e2e1cb
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
from
April 24, 2026 01:51
9e2e1cb to
72d445c
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
3 times, most recently
from
June 16, 2026 02:40
aa928aa to
631978e
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
2 times, most recently
from
June 23, 2026 17:27
5aaf38e to
c31b3e6
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
from
June 30, 2026 17:16
c31b3e6 to
d32a8bc
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
3 times, most recently
from
July 14, 2026 05:55
e56226b to
7ffd746
Compare
renovate
Bot
force-pushed
the
renovate/all
branch
from
July 16, 2026 14:55
7ffd746 to
b091264
Compare
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate
Bot
force-pushed
the
renovate/all
branch
from
August 20, 2026 17:42
b091264 to
0f17774
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v5→v6v6→v7v6→v73.23→3.243.23.3→3.24.1^0.27.0→^0.28.0^16.0.0→^17.0.01.94.1→1.98.0^6.0.0→^7.0.024.04→26.04Release Notes
actions/cache (actions/cache)
v6.1.0Compare Source
What's Changed
Full Changelog: actions/cache@v6...v6.1.0
v6.0.0Compare Source
What's Changed
Full Changelog: actions/cache@v5...v6.0.0
v6Compare Source
actions/checkout (actions/checkout)
v7.0.1Compare Source
v7.0.0Compare Source
v7Compare Source
actions/setup-node (actions/setup-node)
v7.0.0Compare Source
What's Changed
Enhancements:
Bug fixes:
mirrorTokeningetManifestif it's provided by @deiga in #1548Documentation updates:
Dependency update:
New Contributors
Full Changelog: actions/setup-node@v6...v7.0.0
v7Compare Source
evanw/esbuild (esbuild)
v0.28.2Compare Source
Fix tree shaking bug due to TypeScript import alias (#4507)
This release fixes a bug that could cause esbuild to incorrectly tree-shake imports that are used in a TypeScript type alias under certain circumstances. Affected code uses a TypeScript-specific
importassignment and looks something like this:Fix CSS minification bug involving
&(#4497)This release fixes a bug where esbuild's CSS minifier incorrectly removed a
&when it was unsafe to do so. Here is an example:This should match
<span class="a"><span class="b"><span class="b">yes</span></span></span>but not<span class="a"><span class="b">no</span></span>. The old output incorrectly matched both.Avoid overwriting input files without
--allow-overwrite(#4484)For example:
esbuild input.js --outfile=input.jstells esbuild to overwriteinput.jswith the output of running esbuild on it. This was supposed to already be prevented by default, but it accidentally regressed in version 0.17.0 and apparently didn't have any test coverage. The error message was being printed but the input file was still being overwritten. Oops.This release puts the original behavior back. With this release, esbuild should now actually avoid overwriting input files unless
--allow-overwriteis explicitly present. This is done by not writing out any files when a build error is encountered.Fix incorrect code generated when using top-level await (#4498)
Previously esbuild could generate code containing a syntax error in complex scenarios involving top-level await used in a dependency cycle. The problem was a missing
asyncon one or more module wrapper closures. With this release, esbuild now uses a fixed-point iteration algorithm to correctly annotate all dependencies in the cycle as needing anasyncmodule wrapper.Fix a minification bug with lowered logical assignment operators (#4508)
This release fixes a bug that could cause esbuild to generate incorrect code for logical assignment operators when lowering them to an older target environment. Specifically the lowering process requires duplicating the left-hand side, but esbuild incorrectly failed to count the duplicate as a new usage when the left-hand side is an identifier. That then caused the minifier to believe that the left-hand side was only used once and could attempt to incorrectly inline an initializer into the first usage. This bug has now been fixed:
Fix a potential deadlock when the JavaScript API is used incorrectly (#4503, #4506)
The JavaScript API runs the native esbuild executable as a long-lived child process and communicates with it over stdin/stdout/stderr. Each API request is asynchronous and the executable stays open as long as it has work to do, which is as long as either stdin is still open (meaning there may be more API requests) or there are currently requests being processed.
Previously esbuild's tracking of outstanding API requests missed decrementing a reference count in an edge case where esbuild's JavaScript API was used incorrectly and the API request returned an error. This could in some cases cause esbuild's native executable to exit with an error message about a deadlock. This release fixes the reference counting bug.
This fix was submitted by @ZuBB.
Handle target collisions (#4509)
It's possible to specify the same target engine multiple times, such as with
--target=chrome1,chrome99. This edge case wasn't anticipated and previously took the last version for the duplicated target engine instead of the minimum version (sochrome99in this case instead ofchrome1). With this release, esbuild will now pick the minimum version between all duplicated target engines.Force
.mp3files to use theaudio/mpegMIME type (#4485)MIME type detection for esbuild's data URLs uses Go's built-in MIME type detection, which is based on the MIME sniffing standard. This works correctly for MP3 files that start with the byte sequence
ID3, which is commonly the case. However, it's possible to construct valid MP3 files that do not start withID3, and that perhaps Go's built-in MIME type detection doesn't implement the "Signature for MP3 without ID3" part of the algorithm. This results in some.mp3files incorrectly using theapplication/octet-streamMIME type instead ofaudio/mpeg. With this release, esbuild will now always use theaudio/mpegMIME type for files ending in.mp3.Add a new TypeScript syntax warning
TypeScript 7 turned some previously-valid TypeScript syntax into a syntax error because it was confusing. TypeScript 6 accepts
1 + 2 as number * 3as valid syntax but confusingly converts it to(1 + 2) * 3instead of the more intuitive conversion to1 + (2 * 3). This syntax is now an error in TypeScript 7+. With this release, esbuild will now warn about the use of this syntax:See microsoft/TypeScript#63527 for more information.
Add support for formatting errors for Visual Studio (#4460)
Visual Studio has a specific style that it expects log messages to be in for them to show up in the UI when esbuild is run as a custom build step. The current log style that esbuild uses doesn't conform to this specific style.
With this release, esbuild has a new log style for Visual Studio (and other tools in the MSBuild ecosystem) that can be enabled with
--log-style=visualstudio. Here is an example log message in this style:This log style is also available via the JS and Go APIs, and can now be used with the existing
formatMessagesAPI.Fix a bug with CSS gamut mapping (#4488)
Due to a typo, the fallback colors generated for CSS colors outside of the sRGB gamut weren't correct. This release fixes the generated colors to use the intended algorithm.
This fix was submitted by @chatman-media.
v0.28.1Compare Source
Disallow
\in local development server HTTP requests (GHSA-g7r4-m6w7-qqqr)This release fixes a security issue where HTTP requests to esbuild's local development server could traverse outside of the serve directory on Windows using a
\backslash character. It happened due to the use of Go'spath.Clean()function, which only handles Unix-style/characters. HTTP requests with paths containing\are no longer allowed.Thanks to @dellalibera for reporting this issue.
Add integrity checks to the Deno API (GHSA-gv7w-rqvm-qjhr)
The previous release of esbuild added integrity checks to esbuild's npm install script. This release also adds integrity checks to esbuild's Deno install script. Now esbuild's Deno API will also fail with an error if the downloaded esbuild binary contains something other than the expected content.
Note that esbuild's Deno API installs from
registry.npmjs.orgby default, but allows theNPM_CONFIG_REGISTRYenvironment variable to override this with a custom package registry. This change means that the esbuild executable served byNPM_CONFIG_REGISTRYmust now match the expected content.Thanks to @sondt99 for reporting this issue.
Avoid inlining
usingandawait usingdeclarations (#4482)Previously esbuild's minifier sometimes incorrectly inlined
usingandawait usingdeclarations into subsequent uses of that declaration, which then fails to dispose of the resource correctly. This bug happened because inlining was done forletandconstdeclarations by avoiding doing it forvardeclarations, which no longer worked when more declaration types were added. Here's an example:Fix module evaluation when an error is thrown (#4461, #4467)
If an error is thrown during module evaluation, esbuild previously didn't preserve the state of the module for subsequent module references. This was observable if
import()orrequire()is used to import a module multiple times. The thrown error is supposed to be thrown by every call toimport()orrequire(), not just the first. With this release, esbuild will now throw the same error every time you callimport()orrequire()on a module that throws during its evaluation.Fix some edge cases around the
newoperator (#4477)Previously esbuild incorrectly printed certain edge cases involving complex expressions inside the target of a
newexpression (specifically an optional chain and/or a tagged template literal). The generated code for thenewtarget was not correctly wrapped with parentheses, and either contained a syntax error or had different semantics. These edge cases have been fixed so that they now correctly wrap thenewtarget in parentheses. Here is an example of some affected code:Fix renaming of nested
vardeclarations (#4471)This release fixes a bug where
vardeclarations in nested scopes that are hoisted up to module scope were not correctly being renamed during bundling. That could previously lead to name collisions when minification was disabled, which could potentially cause a behavior change. The bug has been fixed so that these hoisted declarations are now considered to be module-level symbols during the name collision avoidance pass.Emit
varinstead ofconstfor certain TypeScript-only constructs for ES5 (#4448)While esbuild doesn't generally support converting
consttovarfor ES5 due to nested scoping rules (which is currently a build-time error), esbuild previously incorrectly converted TypeScript-onlyimportassignment constructs into aconstdeclaration even when targeting ES5. With this release, esbuild will now usevarfor this case instead:v0.28.0Compare Source
Add support for
with { type: 'text' }imports (#4435)The import text proposal has reached stage 3 in the TC39 process, which means that it's recommended for implementation. It has also already been implemented by Deno and Bun. So with this release, esbuild also adds support for it. This behaves exactly the same as esbuild's existing
textloader. Here's an example:Add integrity checks to fallback download path (#4343)
Installing esbuild via npm is somewhat complicated with several different edge cases (see esbuild's documentation for details). If the regular installation of esbuild's platform-specific package fails, esbuild's install script attempts to download the platform-specific package itself (first with the
npmcommand, and then with a HTTP request toregistry.npmjs.orgas a last resort).This last resort path previously didn't have any integrity checks. With this release, esbuild will now verify that the hash of the downloaded binary matches the expected hash for the current release. This means the hashes for all of esbuild's platform-specific binary packages will now be embedded in the top-level
esbuildpackage. Hopefully this should work without any problems. But just in case, this change is being done as a breaking change release.Update the Go compiler from 1.25.7 to 1.26.1
This upgrade should not affect anything. However, there have been some significant internal changes to the Go compiler, so esbuild could potentially behave differently in certain edge cases:
You can read the Go 1.26 release notes for more information.
lint-staged/lint-staged (lint-staged)
v17.3.0Compare Source
Minor Changes
#1825
16b3f74- It is now possible to run multiple tasks in parallel for a single glob by configuring it with an array of tasks (which run sequentially), and then placing another array inside it (where the tasks will run in parallel). The following demonstrates the order tasks will start in:{ "*.ts": ["first", "second", ["third", "third"], "fourth"] }As a concrete example, lint-staged's own configuration is:
which means:
oxfmt --check --no-error-on-unmatched-pattern lib/index.jsoxlint --no-error-on-unmatched-pattern lib/index.js*.tsfiles are staged, runtscwithout appending any argumentsPatch Changes
15f7e53- During an in-progress merge, files that are unchanged from the branch being merged are now skipped. Technically, files are only included if there are staged changes against bothHEADandMERGE_HEAD.v17.2.0Compare Source
Minor Changes
#1823
ee156cc- The chunking of tasks based on maximum command line argument length has been re-implemented to be more precise. Now the chunking happens based on the final generated command string, instead of just the list of staged files like previously. This benefits mainly Windows platforms and function commands like:Where the spawned command is literally
"tsc"without any extra arguments. Previously, this was still chunked when a lot of files were staged. Now, it probably won't be chunked because the length of the command is just three letters.Also, native JavaScript/Node.js function tasks won't be chunked at all, when previously they were run multiple times when chunked:
v17.1.1Compare Source
Patch Changes
a626a9f- It's now possible to set--max-arg-length=Infinityto effectively disable chunking of tasks based on the number of staged files. The parsing and validation of the numeric CLI options--max-arg-lengthand--concurrencyhas been improved.v17.1.0Compare Source
Minor Changes
#1816
7568d4f- The console output of lint-staged has been simplified so that there's less interactive spinners and more explicit messages like "Started…" -> "Done!". The primary purpose of this was to removeListr2, a very large dependency.Before:
Size of
node_modules/after installing:1561.7 kBwith 29 packages.Fancy interactive spinners, but output dynamically changes:
After:
Size of
node_modules/after installing:974.0 kBwith 5 packages (37.6 % smaller, 82.7 % less transitive dependencies).Simpler but more explicit output:
Patch Changes
#1816
c19079d- Try to restore hidden unstaged changes when using--no-revert.#1818
efb23a2- Console output colors are enabled/disabled more consistently.#1818
26112a1- Failed JS function tasks now properly kill other tasks, unless--continue-on-erroris used. Previously their failure didn't affect other tasks.v17.0.8Compare Source
Patch Changes
#1809
179b437- Fix lint-staged discarding the ongoing merge conflict status (.git/MERGE_HEAD) when using the--hide-unstagedor--hide-alloptions.#1811
3d0b2c0- Fix issues with Git commands that are successful but also emit warnings tostderr, by ignoring thestderroutput completely when the process exits with code 0. This was the behavior when usingnano-spawnandexeca, but when switching totinyexecin 16.3.0 bothstdoutandstderrwere used as interleaved output.v17.0.7Compare Source
Patch Changes
e692e58- Update dependencytinyexec@^1.2.4.v17.0.6Compare Source
Patch Changes
#1803
bdf2770- Run all tests with Deno, in addition to Node.js and Bun.#1796
7508272- Fix performance regression of lint-staged v17 by going back to usinggit addto stage task modifications. This was changed togit update-index --againin v17 for less manual work, but unfortunately theupdate-indexcommand gets slower in very large Git repos.#1797
7b2505a- This version of lint-staged uses the new staged publishing for npm packages feature. Releases are already published from GitHub Actions with trusted publishing, but now an additional approval with two-factor authentication is also required.#1802
321b0a9- Downgrade dependencytinyexec@1.2.2to avoid issues in version 1.2.3.v17.0.5Compare Source
Patch Changes
1f67271- Correctly set the--max-arg-lengthdefault value based on the running platform. This controls how very long lists of staged files are split into multiple chunks.v17.0.4Compare Source
Patch Changes
#1788
f95c1f8- Another fix for making sure lint-staged adds task modifications correctly to the commit in the following cases:<file>it is staged withgit add <file>, and then committed withgit commit<file>it is committed withgit commit --allwithout explicitgit add<file>it is committed withgit commit <pathspec>without explicitgit addThere's new test cases which actually setup the Git
pre_commithook to run lint-staged and verify them. These issues started in v17.0.0 when trying to improve support for committig without having explicitly staged files.v17.0.3Compare Source
Patch Changes
06813f9Thanks @iiroj! - Fix lint-staged behavior when implicitly committing files without usinggit addby either:git commit -am "my commit message"where-a(--all) means to automatically stage all tracked modified and deleted filesgit commit -m "my commit message" .where.is an example of a pathspec where matching files will be stagedv17.0.2Compare Source
Patch Changes
88670caThanks @iiroj! - Enable immutable GitHub releasesv17.0.1Compare Source
Patch Changes
4a5664bThanks @iiroj! - Adjust GitHub Actions workflow so that automatic publishing works with signed commits.v17.0.0Compare Source
Major Changes
#1745
e244adfThanks @iiroj! - Node.js v20 is no longer supported, and the oldest supported version is now22.22.1, which is an active LTS version at the time of this release. Node.js 20 will be EOL after April 2026. Please upgrade your Node.js version!#1676
0584e0bThanks @outslept! - Lint-staged now tries to verify the installed Git version is at least2.32.0, released in 2021. If you're using an even older Git version, you need to upgrade it before running lint-staged!#1745
2dcc40aThanks @iiroj! - The dependencyyamlis now marked as optional and probably won't be installed by default. If you're using a YAML configuration file you should install the package separately:If you're using
.lintstagedrcas the config file name (without a file extension), it will be treated as a YAML file. If the content is JSON, consider renaming it to.lintstagedrc.jsonto avoid needing to installyaml.Minor Changes
#1748
809d5efThanks @iiroj! - Add new option--hide-allfor hiding all unstaged changes and untracked files, before running tasks. This makes it easier to run tools like Knip which check for unused code. Untracked files are included in the backup stash and restored automatically after running.#1759
f13045aThanks @iiroj! - Update dependencies, includingtinyexec@1.1.1to fix the following issues:#!/usr/bin/env nodeshebang (Prettier, ESLint, for example) were previously spawned using the default Node.js version configured by the version manager (the onewhich nodepoints to) on POSIX systems. Now, they will be spawned with the same version that lint-staged itself was started with.nodeexecutable available inPATHis a symlink pointing to Snap itself. The sandboxing features of Snap prevented lint-staged from spawning scripts with the#!/usr/bin/env nodeshebang, because it meant lint-staged tried to spawn Snap via the symlink. This resulted in anENOENTerror when trying to runprettier, for example. Now, since the realnodeexecutable's directory is available in thePATH, lint-staged will instead spawn the script with the realnodebinary succesfully.#1761
d3251b1Thanks @iiroj! - Lint-staged now runsgit update-index --againafter running tasks, instead ofgit add <originally staged files>. This should improve compatibility when using non-default indexes, for example when committing with a pathspecgit commit -m "message" .instead of adding files to the index.#1745
a9585acThanks @iiroj! - Removecommanderas a dependency and use the built-inparseArgsfromnode:utilto parse CLI flags.Patch Changes
#1755
c82d30bThanks @iiroj! - All tests now pass on the Bun runtime (latest).#1750
a401818Thanks @iiroj! - Remove manual handling forgit stash --keep-indexresurrecting deleted files, because the issue was fixed in Git2.23.0and lint-staged requires at least Git2.32.0.#1771
c4b8936Thanks @iiroj! - Fix documentation about multiple config files and the--cwdoption. When using it, all tasks will be run in the specified directory. For example, to run everything in the actualprocess.cwd(), uselint-staged --cwd=".".rust-lang/rust (rust)
v1.98.0Compare Source
==========================
Language
&mutwhen unsize-coercing, even in an invariant position. For example, you can now coerce aCell<&'long mut i32>to aCell<&'short mut dyn Send>. Such shortenings were already previously allowed when coercing a&mutto a&, or coercing a&to a&.invalid_runtime_symbol_definitionslint and warn-by-defaultsuspicious_runtime_symbol_definitionslintcoreruntime symbols likememcmp,memset,strlen, ... and is planned to be expanded in the next few releases.c_void_returnslint to checkcore::ffi::c_voidas a return typePlatform Support
powerpc64-unknown-linux-gnuelfv2as Tier 3aarch64-unknown-linux-pauthtestas Tier 3 targetthumbv7a-none-eabito Tier 2thumbv7a-none-eabihfto Tier 2thumbv7r-none-eabito Tier 2thumbv7r-none-eabihfto Tier 2thumbv8r-none-eabihfto Tier 2Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
Location<'_>lifetime to'staticinPanic[Hook]InfoRangeInclusive::from(legacy::RangeInclusive)ManuallyDrop'sBoxinteraction has been fixedderivemacro is available at{core,std}::derive. This was previously unintentionally stabilized in 1.96, but is now explicitly accepted as a stabilized API.{core,std}::derivewill be 1.96, and not 1.98.Stabilized APIs
str::substr_range[T]::subslice_rangecore::fmt::NumBuffer<{integer}>::format_intoSend/Sync for std::process::CommandArgs{fN}::algebraic_add{fN}::algebraic_sub{fN}::algebraic_mul{fN}::algebraic_div{fN}::algebraic_remNonZero<{integer}>::from_str_radixString::from_utf16leString::from_utf16le_lossyString::from_utf16beString::from_utf16be_lossy[T]::strip_circumfixstr::strip_circumfix](https://doConfiguration
📅 Schedule: (UTC)
🚦 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 if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.