Update minimatch to v10.2.4 and fix NodeJS.Timer type compatibility#1165
Draft
v-abhishera wants to merge 1 commit intomasterfrom
Draft
Update minimatch to v10.2.4 and fix NodeJS.Timer type compatibility#1165v-abhishera wants to merge 1 commit intomasterfrom
v-abhishera wants to merge 1 commit intomasterfrom
Conversation
Author
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
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.
Description:
Summary
Updates
minimatchfrom v3.1.5 to v10.2.4 and addresses compatibility issues for Windows path handling and newer@types/nodeversions.Changes
minimatchfrom^3.1.5to^10.2.4@types/minimatchdevDependency (types are now bundled in minimatch v5+)windowsPathsNoEscapesupport across internal.ts, task.ts, and mock-task.ts to preserve Windows backslash-as-path-separator behaviorNodeJS.Timertype in toolrunner.ts — replaced deprecatedNodeJS.TimerwithReturnType<typeof setTimeout>for compatibility with@types/node@20+5.3.0Why
minimatch v3 is outdated and unmaintained. Starting from v5, minimatch treats
\as a glob escape character instead of a path separator. This breaks Windows path matching (e.g.,C:\src\*.js). ThewindowsPathsNoEscape: trueoption is now auto-applied on Windows to restore the expected behavior.The
NodeJS.Timertype was deprecated in newer@types/node. Tasks compiled with@types/node@20or@types/node@24would encounter type errors when resolving the task-lib's.tssource files.Backward Compatibility
windowsPathsNoEscapeis only auto-set on Windows when not explicitly provided by the callerTesting
npm packfrom_build/and tested against DockerV2 and AzureFileCopyV6 taskRisk
Low — On Windows, the new option restores identical behavior to minimatch v3. On Linux/macOS, nothing changed. No existing task sets
windowsPathsNoEscape, so the auto-default always applies.Files Changed
minimatch, removed@types/minimatch, version bumpwindowsPathsNoEscapeto interface, clone function,_getFindInfoFromPattern()windowsPathsNoEscapeto interface, defaults,match(),findMatch(),filter()windowsPathsNoEscapeto interfaceNodeJS.Timer→ReturnType<typeof setTimeout>