Repository navigation
Keep a **/ inside a glob class as literal members [patch] - #202
Merged
Merged
Conversation
ExpandGlobStarSegments dropped every "**/" that followed a separator, including one inside a bracket class, where it is just the members "*" and "/". For a negated class that removed characters from the excluded set, so x[!/**/] matched "x*". A "**/" inside a closed class is now skipped, using the same class boundaries as ExpandGlobClasses. Fixes #201 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017vfJW3RphV1aRzPmhMhf5m
…patch] The README API test required every overload's same-named parameter to carry the documented default. The binary-compatibility overloads from #166 have no defaults by design, so main has been red since #178. They are marked [EditorBrowsable(Never)] and are not what the README documents, so the default check now skips them. A wrong default on a visible overload still fails. Fixes #183 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017vfJW6FzBtSrY5LKUuDYce (cherry picked from commit 9328e00)
Contributor
Author
|
Generated by Claude Code |
|
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.



Fixes #201
What changed
ExpandGlobStarSegmentsadds a zero-segment expansion for each**/that follows a separator. It did this for a**/inside a bracket class too, where**/is only the members*and/. In a negated class, that removed characters from the excluded set, sox[!/**/]matched"x*", and-x[!/**/]hid items it should have kept.It now finds the closed class spans first, using
FindGlobClassEnd, the same boundary rulesExpandGlobClassesuses (a leading]is a member;!and^negate). Any**/inside a class is skipped, so it stays literal.Tests
x[!/**/],x[!a/**/],x[^/**/]don't match"x*".x[!a/**/]still rejects"xa"and accepts"xb". A positive class with**/inside still works.[a]/**/bstill expands its real globstar.-x[!/**/]keeps"x*".ReadmeTests.EveryMethodInTheReadmeApiReferenceExistsWithItsDocumentedDefaults(documented defaults forIsMatch/Filter), also fails on unmodifiedmainand is unrelated.Generated by Claude Code