Install & Compatibility
Where this runs
tested against v2.1.5 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 33MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 3.0s · import 0.000s · 34MB
32MB installed
● package 32MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
IgnoreParser
✓ from igittigitt import IgnoreParser
✗ from igittigitt import IgnoreRules
IncludeParser
✓ from igittigitt import IncludeParser
igittigitt
✓ from igittigitt import igittigitt
Create IgnoreRules, add rules, and test paths.
from igittigitt import IgnoreRules
rules = IgnoreRules()
rules.parse_rule_string('*.pyc')
assert rules.is_ignored('foo.pyc') == True
Debug
Known issues
gotchaIgnoreRules.is_ignored expects a path relative to the gitignore rules, not an absolute path. Using absolute paths may produce incorrect results.fixProvide relative paths, e.g., 'src/main.py' instead of '/home/user/project/src/main.py'.
affects: all
gotchaPattern matching behavior differs from git: igittigitt does not handle negated patterns (leading '!') correctly in all edge cases. Double-check complex .gitignore files.fixTest your patterns with both igittigitt and git check-ignore to ensure consistency.
affects: <2.2.0 (if released)
deprecatedThe function 'parse_gitignore' returns a dict, not an IgnoreRules object. Many users expect IgnoreRules from it.fixUse IgnoreRules directly: rules = IgnoreRules(); rules.parse_file('.gitignore'). affects: all
Upgrade
Version history
2.1.5latest on PyPI · released Oct 16, 2024
Audit
Dependencies
No dependency data recorded yet.