Registry / http-networking / ignore-python

ignore-python

JSON →
library0.3.3pypypi✓ verified 84d ago

Python bindings for the Rust `ignore` crate, providing fast, parallel filesystem traversal with gitignore-style pattern matching. Currently at version 0.3.3, released periodically. Supports Python >=3.8.

pip install ignore-python
INSTALL
IMPORT
SIG · IGNORE-PYTHON
I
ignore-python
http-networkingpythonv0.3.3
Install
1.7s avg
Import
Disk
18MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.3.3 · 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
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 20.7MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 1.7s · import 0.000s · 21MB
18MB installed
● package 18MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Walk
from ignore import Walk
import ignore
Most classes are in submodules; direct `import ignore` gives you the top-level module, not the Rust bindings.
Ignore
from ignore import Ignore
from ignore import GitIgnore
The class is called `Ignore`, not `GitIgnore`.
IgnoreFilter
from ignore import IgnoreFilter
from ignore.filter import IgnoreFilter
IgnoreFilter is exposed at the top-level; there is no `filter` submodule.
types
from ignore import types
from ignore import Types
`types` is a module, not a class; import it as a module to access enums like `FileType`.

Walks the ./src directory, respecting .gitignore rules.

from ignore import Walk walker = Walk('./src', produce_gitignore=True) for path in walker: print(path)
Debug
Known issues
gotchaThe `Walk` iterator yields `Path` objects relative to the root, not absolute paths.
fix
Use `path.resolve()` or join with root if absolute paths are needed.
affects: all
gotchaDefault behavior excludes hidden files (those starting with '.') unless `hidden=False` is passed.
fix
Pass `hidden=True` to include hidden files.
affects: all
deprecatedThe `Ignore` class constructor changed between 0.2.x and 0.3.x; now requires a `patterns` argument of type `List[str]`.
fix
Use `Ignore(patterns=['*.pyc', '__pycache__/'])` instead of `Ignore(match=['*.pyc'])`.
affects: >=0.3.0
breakingIn version 0.3.0, the `Walk` class removed the `gitignore` parameter (use `produce_gitignore` instead).
fix
Replace `Walk(path, gitignore=True)` with `Walk(path, produce_gitignore=True)`.
affects: >=0.3.0
Errors
Common errors & fixes
ImportError: cannot import name 'GitIgnore' from 'ignore'
The class is called `Ignore`, not `GitIgnore`.
fix
Use `from ignore import Ignore`.
TypeError: Ignore() takes 1 positional argument but 2 were given
The constructor signature changed in 0.3.0; `patterns` must be passed as a keyword argument.
fix
Use `Ignore(patterns=['*.pyc'])` instead of `Ignore(['*.pyc'])`.
AttributeError: module 'ignore' has no attribute 'Walk'
`import ignore` gives the top-level module, not the Rust bindings.
fix
Use `from ignore import Walk`.
Upgrade
Version history
0.3.3latest on PyPI · released Mar 10, 2026
Audit
Dependencies
ignorerequiredPython bindings rely on the Rust `ignore` crate; bundled in the package.
Agent activity
10 hits · last 30 days
node
10
Resources
ignore-python — pip install ignore-python · libregistry