Skip to main content

Filesystem git filter for Peagen

Project description

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri_gitfilter_file


Swarmauri Git Filter File

Filesystem backed git filter for Peagen.

FileFilter combines the FileStorageAdapter storage backend with the GitFilterBase helpers from swarmauri_base. The filter stores git-cleaned objects beneath a local directory, deduplicating each payload by its SHA-256 digest and retrieving the bytes on smudge.

Installation

Install the package with your preferred Python packaging tool:

pip install swarmauri_gitfilter_file
poetry add swarmauri_gitfilter_file
uv pip install swarmauri_gitfilter_file

Usage

FileFilter.from_uri accepts file:// URIs and resolves them to the directory where objects will be stored. You can also instantiate FileFilter directly by passing an output_dir.

import tempfile
from pathlib import Path

from swarmauri_gitfilter_file import FileFilter

with tempfile.TemporaryDirectory() as tmpdir:
    uri = Path(tmpdir).as_uri()
    filt = FileFilter.from_uri(uri)
    oid = filt.clean(b"hello")
    assert oid.startswith("sha256:")
    assert filt.smudge(oid) == b"hello"

The returned object identifier includes the sha256: prefix, matching the digest used to deduplicate objects on disk.

Want to help?

If you want to contribute to swarmauri-sdk, read up on our guidelines for contributing that will help you get started.

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

swarmauri_gitfilter_file-0.3.0.dev31.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file swarmauri_gitfilter_file-0.3.0.dev31.tar.gz.

File metadata

  • Download URL: swarmauri_gitfilter_file-0.3.0.dev31.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_gitfilter_file-0.3.0.dev31.tar.gz
Algorithm Hash digest
SHA256 ab57fb924f6a03c4e8bc9a85ec0a62b45e0954893c01839992c7ac6bc4cb38e3
MD5 a78d59f2263a9979fe8797a4bd8004c6
BLAKE2b-256 06d0711c1f47886a855e87081f3886264745025ead91f04f2d1d5a95e5800910

See more details on using hashes here.

File details

Details for the file swarmauri_gitfilter_file-0.3.0.dev31-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_gitfilter_file-0.3.0.dev31-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_gitfilter_file-0.3.0.dev31-py3-none-any.whl
Algorithm Hash digest
SHA256 65e70601c59f46f957fd5c64dd0838e294dbc59fcb869a6c80e4c8dec7724b29
MD5 b0d0f526b21996ade6bb55290697fc6d
BLAKE2b-256 8cc55165f267c869fc07f60ceb345aa80e8f29b39d257ceb8396a75adc97ccc5

See more details on using hashes here.

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