rignore
Python Bindings for the ignore crate
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has no security vulnerabilities, carries a permissive MIT license, and offers a genuine performance advantage for directory traversal with gitignore support. The medium install friction (compiled wheels) is standard for Rust-backed packages and well-mitigated by broad platform coverage. Install it if you need fast, gitignore-aware directory walking; skip it if you only traverse small trees or don't need ignore rule support.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or later; precompiled wheels available for common platforms (x86_64, ARM, RISC-V, etc.) but installation falls back to source build on unsupported architectures.
- Medium install friction due to compiled wheels for multiple platforms and Python versions (3.10, 3.11+).
- Actively maintained with recent releases; no runtime dependencies simplifies deployment.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, provided you include the license notice.
last release 2026-08-04 (10 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 41,971,802 downloads/mo, #663 on PyPI
Alternatives
Verify before relying
import rignore
for file_path in rignore.walk("/path/to/directory"):
print(file_path)
# With options:
for file_path in rignore.walk("/path", read_git_ignore=True, max_depth=5):
print(file_path)- Whether the package handles symlink loops safely when follow_links=True
- Performance comparison baseline against standard os.walk() or pathlib for typical use cases
- Behavior of filter_entry callback signature and exception handling during traversal
What it is and what it does
rignore wraps the Rust ignore crate to provide fast directory traversal from Python. It walks a directory tree while respecting .gitignore rules, .ignore files, and custom ignore patterns. The main entry point is the walk() function, which returns an iterator of file paths and accepts optional parameters to control behavior: whether to respect git ignore files, follow symlinks, limit traversal depth or file size, apply custom filters, and more.
The package targets developers who need efficient directory scanning in Python, especially those working with large codebases or build systems where respecting version control ignore rules is important. It has no runtime dependencies and runs on Python 3.8+, with precompiled wheels for most common platforms. The Rust implementation provides significant speed advantages over pure Python alternatives, particularly for large directory structures.
Use it for
- Build tools and linters that need to traverse source trees while respecting .gitignore rules
- File indexing or search utilities that must efficiently walk large directory hierarchies
- Development tools that filter files based on git ignore patterns and custom rules
- Backup or sync utilities that need to exclude ignored files and directories
- Code analysis tools that require fast, gitignore-aware directory enumeration
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has no security vulnerabilities, carries a permissive MIT license, and offers a genuine performance advantage for directory traversal with gitignore support. The medium install friction (compiled wheels) is standard for Rust-backed packages and well-mitigated by broad platform coverage. Install it if you need fast, gitignore-aware directory walking; skip it if you only traverse small trees or don't need ignore rule support.
Install
rignore on PyPI
Before you install
Medium install friction due to compiled wheels for multiple platforms and Python versions (3.10, 3.11+). Actively maintained with recent releases; no runtime dependencies simplifies deployment.
Requires Python 3.8 or later; precompiled wheels available for common platforms (x86_64, ARM, RISC-V, etc.) but installation falls back to source build on unsupported architectures.
License in practice
MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, provided you include the license notice.
Quickstart
import rignore
for file_path in rignore.walk("/path/to/directory"):
print(file_path)
# With options:
for file_path in rignore.walk("/path", read_git_ignore=True, max_depth=5):
print(file_path)
Verify before relying
- Whether the package handles symlink loops safely when follow_links=True
- Performance comparison baseline against standard os.walk() or pathlib for typical use cases
- Behavior of filter_entry callback signature and exception handling during traversal
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 10 days since the last release |
| First released | |
| Downloads | 41,971,802 / month, #663 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: Rust |
Evidence: rignore-0.8.1-cp310-cp310-macosx_10_12_x86_64.whl; rignore-0.8.1-cp310-cp310-macosx_11_0_arm64.whl; rignore-0.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; rignore-0.8.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; rignore-0.8.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; rignore-0.8.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl; rignore-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; rignore-0.8.1-cp310-cp310-manylinux_2_31_riscv64.whl; rignore-0.8.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl; rignore-0.8.1-cp310-cp310-musllinux_1_2_aarch64.whl; rignore-0.8.1-cp310-cp310-musllinux_1_2_armv7l.whl; rignore-0.8.1-cp310-cp310-musllinux_1_2_i686.whl; rignore-0.8.1-cp310-cp310-musllinux_1_2_x86_64.whl; rignore-0.8.1-cp310-cp310-win32.whl; rignore-0.8.1-cp310-cp310-win_amd64.whl; rignore-0.8.1-cp311-cp311-macosx_10_12_x86_64.whl; rignore-0.8.1-cp311-cp311-macosx_11_0_arm64.whl; rignore-0.8.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; rignore-0.8.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; rignore-0.8.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “fast directory walk gitignore”
- rignoreProvides fast directory traversal with support for .gitignore rules…
- ignore-pythonProvides fast recursive directory traversal with automatic filtering…
- py-walkFilters filesystem paths using gitignore-style pattern matching,…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Provides fast recursive directory traversal with automatic filtering based on .gitignore, .ignore files, and glob patterns by binding to the Rust ignore crate.
Filters filesystem paths using gitignore-style pattern matching, allowing you to walk directories with include/exclude rules or test individual paths against patterns.
However, if you expect active bug fixes or compatibility updates as Git evolves, consider whether the dormant status (657 days since last release) aligns with your…
Parses `.gitignore` files according to Git's specification and checks whether file paths match the ignore rules, with support for caching and custom ignore file sources.
A high-performance grep-compatible command-line search tool with Rust-backed execution, GPU acceleration support, and intelligent routing via AST/NLP analysis.
However, verify the license terms before use—the metadata does not clarify licensing.
Walk filesystem paths while respecting .gitignore rules, and execute functions on found files using a process pool for parallelism.
Install it if you need .gitignore-aware file discovery with built-in parallelism; skip it if you need active maintenance or ongoing feature development.
Downloads and installs common .gitignore templates for various programming languages and frameworks directly from the command line.
See also scandir · gitignorant · igittigitt · gitmatch