Skip to main content

Python bindings for FFF (Fast File Finder)

Project description

fff-search

Python bindings for FFF (Fast File Finder), built with PyO3 and Maturin. Install with pip install fff-search; import as fff.

Requirements

  • Python >= 3.10
  • Rust toolchain (to build the native extension)
  • uv (recommended)

Development setup

cd packages/fff-python
uv sync --all-extras
uv run maturin develop --release

Running tests

cd packages/fff-python
uv run pytest -v

Standalone example

cd packages/fff-python
uv run python examples/basic.py .

Basic usage

from fff import FileFinder

with FileFinder("/path/to/project", watch=False) as finder:
    finder.wait_for_scan_blocking(timeout_ms=5000)
    print(f"Indexed under {finder.base_path}")

    result = finder.search("main")
    if result:
        print(f"Showing {len(result)} of {result.total_matched} matches")
    for item, score in zip(result.items, result.scores):
        print(f"{item.relative_path}: {score.total}")

Async usage

wait_for_scan is a coroutine that polls the scan status and yields to the event loop, so it never blocks other tasks. Use wait_for_scan_blocking from synchronous code.

import asyncio
from fff import FileFinder

async def main():
    with FileFinder("/path/to/project", watch=False) as finder:
        await finder.wait_for_scan(timeout_ms=5000)
        result = finder.search("main")
        print(result)

asyncio.run(main())

Building wheels

cd packages/fff-python
uv run maturin build --release

The produced wheel is abi3 compatible with Python 3.10+.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fff_search-0.9.6.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fff_search-0.9.6-cp310-abi3-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10+Windows x86-64

fff_search-0.9.6-cp310-abi3-manylinux_2_38_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.38+ x86-64

fff_search-0.9.6-cp310-abi3-manylinux_2_38_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.38+ ARM64

fff_search-0.9.6-cp310-abi3-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

fff_search-0.9.6-cp310-abi3-macosx_10_12_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file fff_search-0.9.6.tar.gz.

File metadata

  • Download URL: fff_search-0.9.6.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fff_search-0.9.6.tar.gz
Algorithm Hash digest
SHA256 d20cc2928b106272163377416a9f521b4c5ebb0971e09cc7d8a3a651baae304d
MD5 6c1beb598defb57db26b15ede7c5e1a2
BLAKE2b-256 a2a908b59a16e6b508be86210b27c4d0830ac3625744fc4c205929f9a52c33ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6.tar.gz:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fff_search-0.9.6-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: fff_search-0.9.6-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fff_search-0.9.6-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 44b8a923a4dd7acadef03ba07eca658c134e68d8117329ca2f90f22cf8feebeb
MD5 c266b638657808fbd9252790c6c5f1e0
BLAKE2b-256 25d554aac5ea6093edb1eabbb13906ebb2a4afaa2f56f53f4e5dc1145de8b462

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6-cp310-abi3-win_amd64.whl:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fff_search-0.9.6-cp310-abi3-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for fff_search-0.9.6-cp310-abi3-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 963e9830ad07d8580f350a3000953d5288737592373e0603a0510e6a287aa446
MD5 38fe0db7741b49a9d472c1f91d72d2a7
BLAKE2b-256 3ab75f563627176508015e32d0d15da46acd26c2272e480309cd887e99cb6554

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6-cp310-abi3-manylinux_2_38_x86_64.whl:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fff_search-0.9.6-cp310-abi3-manylinux_2_38_aarch64.whl.

File metadata

File hashes

Hashes for fff_search-0.9.6-cp310-abi3-manylinux_2_38_aarch64.whl
Algorithm Hash digest
SHA256 d5c253f5b413550dcc76a5baf1f5ee150ffa2e85bb9a2d6e5dc0cb4108399d4e
MD5 a2e27efb6f88d00583be1d4e759a13ae
BLAKE2b-256 a072cf251c086199e50274dc8c1801f1d145880a4009900456f1d6ca30b1d513

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6-cp310-abi3-manylinux_2_38_aarch64.whl:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fff_search-0.9.6-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fff_search-0.9.6-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8c54f82d981f7f3ba9def45980a7556866320fde84cb4ce6250d60ec74953e7a
MD5 70f21136ca43c18b98b54d7a214952c7
BLAKE2b-256 402a25ae77be1c882745d851855f88c54373a66c4f4d1f9ebdaf86c4116a9edb

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fff_search-0.9.6-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fff_search-0.9.6-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7020358dbeccc09ff72c4a634b7f10930938f290ff1c76ccc0bc7b0b9dbcbb72
MD5 02cf1b94fbb80e27a608767cb91b093c
BLAKE2b-256 f9da94a9cf5a33c16c08788bb69afb4883a1f5629c362578fd02aa1eb58e2618

See more details on using hashes here.

Provenance

The following attestation bundles were made for fff_search-0.9.6-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yaml on dmtrKovalenko/fff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page