chore(deps): update dependency lint-staged to v16 #2614
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:
15.5.0->16.2.6Release Notes
lint-staged/lint-staged (lint-staged)
v16.2.6Compare Source
Patch Changes
33d4502Thanks @Adrian-Baran-GY! - Fix problems with--continue-on-erroroption, where tasks might have still been killed (SIGINT) when one of them failed.v16.2.5Compare Source
Patch Changes
9e02d9dThanks @iiroj! - Fix unhandled promise rejection when spawning tasks (instead of the tasks themselves failing). Previously when a task failed to spawn, lint-staged also failed and the backup stash might not have been automatically restored.v16.2.4Compare Source
Patch Changes
#1682
0176038Thanks @iiroj! - Update dependencies, including[email protected]with bug fixes.#1671
581a54eThanks @iiroj! - Speed up execution by only importing theyamldepedency if using YAML configuration files.v16.2.3Compare Source
Patch Changes
27cd541Thanks @iiroj! - When using--fail-on-changes, automatically hidden (partially) unstaged changes are no longer counted to make lint-staged fail.v16.2.2Compare Source
Patch Changes
#1667
699f95dThanks @iiroj! - The backup stash will not be dropped when using--fail-on-changesand there are errors. When reverting to original state is disabled (via--no-revertor--fail-on-changes), hidden (partially) unstaged changes are still restored automatically so that it's easier to resolve the situation manually.Additionally, the example for using the backup stash manually now uses the correct backup hash, if available:
v16.2.1Compare Source
Patch Changes
#1664
8277b3bThanks @iiroj! - The built-in TypeScript types have been updated to more closely match the implementation. Notably, the list of staged files supplied to task functions isreadonly string[]and can't be mutated. Thanks @outslept!export default { --- "*": (files: string[]) => void console.log('staged files', files) +++ "*": (files: readonly string[]) => void console.log('staged files', files) }#1654
70b9af3Thanks @iiroj! - This version has been published from GitHub Actions using Trusted Publishing for npm packages.#1659
4996817Thanks @iiroj! - Fix searching configuration files when the working directory is a subdirectory of a git repository, and there arepackage.jsonfiles in the working directory. This situation might happen when running lint-staged for a single package in a monorepo.#1654
7021f0aThanks @iiroj! - Return the caret semver range (^) to direct dependencies so that future patch and minor versions are allowed. This enables projects to better maintain and deduplicate their own transitive dependencies while not requiring direct updates to lint-staged. This was changed in 16.2.0 after the vulnerability issues withchalkanddebug, which were also removed in the same version.Given the recent vulnerabilities in the npm ecosystem, it's best to be very careful when updating dependencies.
v16.2.0Compare Source
Minor Changes
#1615
99eb742Thanks @iiroj! - Added a new option--fail-on-changesto make lint-staged exit with code 1 when tasks modify any files, making theprecommithook fail. This is similar to thegit diff --exit-codeoption. Using this flag also implies the--no-revertflag which means any changes made by tasks will be left in the working tree after failing, so that they can be manually staged and the commit tried again.#1611
cd05fd3Thanks @rlorenzo! - Added a new option--continue-on-errorso that lint-staged will run all tasks to completion even if some of them fail. By default, lint-staded will exit early on the first failure.#1637
82fcc07Thanks @iiroj! - Internal lint-staged errors are now thrown and visible in the console output. Previously they were caught with the process exit code set to 1, but not logged. This happens when, for example, there's a syntax error in the lint-staged configuration file.#1647
a5ecc06Thanks @iiroj! - Remove debug as a dependency due to recent malware issue; read more at debug-js/debug#1005. Because of this, theDEBUGenvironment variable is no longer supported — use the--debugto enable debugging#1636
8db2717Thanks @iiroj! - Added a new option--hide-unstagedso that lint-staged will hide all unstaged changes to tracked files before running tasks. The changes will be applied back after running the tasks. Note that the combination of flags--hide-unstaged --no-hide-partially-stagedisn't meaningful and behaves the same as just--hide-unstaged.Thanks to @ItsNickBarry for the idea and initial implementation in #1552.
#1648
7900b3bThanks @iiroj! - Remove lilconfig to reduce reliance on third-party dependencies. It was used to find possible config files outside of those tracked in Git, including from the parent directories. This behavior has been moved directly into lint-staged and should work about the same.Patch Changes
#1633
7f9e485Thanks @dependabot! - Bumps listr2 from 9.0.3 to 9.0.4.#1626
99d5a9bThanks @iiroj! - Due to recent phishing attacks, for example [email protected] was released with malware. To avoid lint-staged's users being at risk the direct dependencies are pinned to exact versions, instead of allowing future patch versions with the caret (^) range.#1588
035bbf2Thanks @outslept! - Increase performance by listing staged files and searching for configuration concurrently.#1645
deba3adThanks @iiroj! - Remove chalk as a dependency due to recent malware issue; read more at chalk/chalk#656.If you are having trouble with ANSI color codes when using lint-staged, you can try setting either
FORCE_COLOR=trueorNO_COLOR=trueenv variables.v16.1.6Compare Source
Patch Changes
e93578eThanks @iiroj! - Try to improve terminating of subprocess of tasks by usingSIGKILL, and only callingpidtreewhen the the main task process has a known pid.v16.1.5Compare Source
Patch Changes
4e3ce22Thanks @srsatt! - Detect the git repo's top-level directory correctly when in a worktree.v16.1.4Compare Source
Patch Changes
90b37b0Thanks @iiroj! - Add anothertypesfield topackage.jsonto make even more sure NPM detects that lint-staged includes built-in TypeScript type definitions.v16.1.3Compare Source
Patch Changes
7ea700bThanks @dword-design! - Add thetypesfield topackage.jsonto make sure NPM detects lint-staged includes built-in TypeScript type definitions.v16.1.2Compare Source
Patch Changes
#1570
a7c0c88Thanks @ItsNickBarry! - When using--diff-filterwith theDoption to include deleted staged files, lint-staged no longer tries to stage the deleted files, unless they're no longer deleted. Previously this caused an error fromgit addlikefatal: pathspec 'deleted-file' did not match any files.38f942eThanks @iiroj! - Removed an extraneous log entry that printedshouldHidePArtiallyStagedFilesto console output.v16.1.1Compare Source
Patch Changes
#1565
3686977Thanks @iiroj! - Lint-staged now explicitly warns about potential data loss when using--no-stash.#1571
02299a9Thanks @iiroj! - Function tasks (introduced in v16.0.0) only receive the staged files matching the configured glob, instead of all staged files.#1563
bc61c74Thanks @iiroj! - This version fixes incorrect behavior where unstaged changes were committed when using the--no-stashoption. This happened because--no-stashimplied--no-hide-partially-staged, meaning unstaged changes to files which also had other staged changes were added to the commit by lint-staged; this is no longer the case.The previous (incorrect) behavior can still be achieved by using both options
--no-stash --no-hide-partially-stagedat the same time.v16.1.0Compare Source
Minor Changes
#1536
e729daaThanks @iiroj! - A new flag--no-reverthas been introduced for when task modifications should be applied to the index before aborting the commit in case of errors. By default, lint-staged will clear all task modifications and revert to the original state.#1550
b27fa3fThanks @iiroj! - Lint-staged now ignores symlinks and leaves them out from the list of staged files.Patch Changes
c37dc38Thanks @iiroj! - The minimum required Node.js version is lowered to20.17following [email protected].v16.0.0Compare Source
Major Changes
#1546
158d15cThanks @iiroj! - Processes are spawned using nano-spawn instead of execa. If you are using Node.js scripts as tasks, you might need to explicitly run them withnode, especially when using Windows:{ "*.js": "node my-js-linter.js" }#1546
158d15cThanks @iiroj! - The--shellflag has been removed and lint-staged no longer supports evaluating commands directly via a shell. To migrate existing commands, you can create a shell script and invoke it instead. Lint-staged will pass matched staged files as a list of arguments, accessible via"$@​":v15.5.2Compare Source
Patch Changes
5561321Thanks @YimingIsCOLD! - Correctly handle colon (:) characters in staged filenames.v15.5.1Compare Source
Patch Changes
#1533
5d53534Thanks @iiroj! - Improve listing of staged files so that lint-staged doesn't crash when encountering an uninitialized submodule. This should result in less errors like:Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.