Skip to content

improve exclude pattern normalization and directory pruning performance

Choose a tag to compare

@jkjitendra jkjitendra released this 08 May 16:36
d87b18b
  • Implemented pattern normalization in both the desktop app and Python exporter to seamlessly handle paths that start with the project root folder name.
  • Overhauled the Python scanner's directory traversal to use os.walk, enabling early pruning of excluded directories (like node_modules) to drastically improve scan performance.
  • Replaced Path.match() with fnmatch in the Python scanner to provide robust, multi-segment glob matching for exclude patterns.
  • Added strict validation to the Python exporter's include mode to safely reject raw or absolute patterns that attempt to escape the project root directory.
  • Updated the ExcludeRulesEditor UI text to inform users about the new automatic path normalization capabilities.
  • Expanded both the TypeScript and Python test suites with comprehensive test cases covering root-prefixed custom patterns, bare directory exclusions, nested exclusions, and normalization edge cases.