Skip to content

Fix ignore rule parsing and loading edge cases - #2715

Merged
Widthdom merged 9 commits into
mainfrom
fix-issue1620-1621-1653-1657-1658
May 31, 2026
Merged

Fix ignore rule parsing and loading edge cases#2715
Widthdom merged 9 commits into
mainfrom
fix-issue1620-1621-1653-1657-1658

Conversation

@Widthdom

Copy link
Copy Markdown
Owner

Summary

  • Fix .gitignore / .cdidxignore leading-whitespace parsing so comments and patterns match Git-style behavior.
  • Document .cdidxignore discovery, syntax, and precedence in the user guide and CLI help.
  • Harden ignore-file loading against exists/read TOCTOU windows, permission-denied ignore files, and expensive ignore-pattern regexes.

Validation

  • dotnet test tests/CodeIndex.Tests/CodeIndex.Tests.csproj --filter "FullyQualifiedName~FileIndexerTests" -p:UseSharedCompilation=false
  • dotnet run --project tools/CodeIndex.Changelog -- check
  • dotnet build CodeIndex.sln -c Release -p:UseSharedCompilation=false

Documentation and changelog

  • Updated USER_GUIDE.md
  • Updated DEVELOPER_GUIDE.md
  • Added changelog fragments:
    • changelog.d/unreleased/1620.fixed.md
    • changelog.d/unreleased/1621.docs.md
    • changelog.d/unreleased/1653.fixed.md
    • changelog.d/unreleased/1657.fixed.md
    • changelog.d/unreleased/1658.fixed.md

Review

  • Attempted required Codex adversarial review with codex exec review --base origin/main.
  • The review command was interrupted by the Codex usage limit before completion.

Follow-up candidates

Fixes #1620
Fixes #1621
Fixes #1653
Fixes #1657
Fixes #1658

@Widthdom
Widthdom marked this pull request as ready for review May 31, 2026 04:58
@Widthdom
Widthdom merged commit d30a2a6 into main May 31, 2026
10 checks passed
@Widthdom
Widthdom deleted the fix-issue1620-1621-1653-1657-1658 branch May 31, 2026 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment