Skip to main content

File based cache for resources and metadata

Reason this release was yanked:

deprecation

Project description

Project generated with PyScaffold PyPI-Server Unit tests

pyBiocFileCache

pyBiocFileCache is a Python package that provides a robust file caching system with resource validation, cache size management, file compression, and resource tagging. Compatible with BiocFileCache R package.

Installation

Install from PyPI,

pip install pybiocfilecache

Quick Start

from pybiocfilecache import BiocFileCache

# Initialize cache
cache = BiocFileCache("path/to/cache/directory")

# Add a file to cache
resource = cache.add("myfile", "path/to/file.txt")

# Retrieve a file from cache
resource = cache.get("myfile")

# Use the cached file
print(resource.rpath)  # Path to cached file

Advanced Usage

Configuration

from pybiocfilecache import BiocFileCache, CacheConfig
from datetime import timedelta
from pathlib import Path

# Create custom configuration
config = CacheConfig(
    cache_dir=Path("cache_directory"),
    max_size_bytes=1024 * 1024 * 1024,  # 1GB
    cleanup_interval=timedelta(days=7),
    compression=True
)

# Initialize cache with configuration
cache = BiocFileCache(config=config)

Resource Management

# Add file with tags and expiration
from datetime import datetime, timedelta

resource = cache.add(
    "myfile",
    "path/to/file.txt",
    tags=["data", "raw"],
    expires=datetime.now() + timedelta(days=30)
)

# List resources by tag
resources = cache.list_resources(tag="data")

# Search resources
results = cache.search("myfile", field="rname")

# Update resource
cache.update("myfile", "path/to/new_file.txt")

# Remove resource
cache.remove("myfile")

Cache Statistics and Maintenance

# Get cache statistics
stats = cache.get_stats()
print(stats)

# Clean up expired resources
removed_count = cache.cleanup()

# Purge entire cache
cache.purge()

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

pybiocfilecache-0.5.1.tar.gz (28.1 kB view details)

Uploaded Source

Built Distribution

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

pyBiocFileCache-0.5.1-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file pybiocfilecache-0.5.1.tar.gz.

File metadata

  • Download URL: pybiocfilecache-0.5.1.tar.gz
  • Upload date:
  • Size: 28.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.20

File hashes

Hashes for pybiocfilecache-0.5.1.tar.gz
Algorithm Hash digest
SHA256 72fbd4ffb52a7bced0418638b468c8efcef906f2f49ef0ef505a0bb0dd47c97e
MD5 81db34a65cf8c27a31dacaa41a7bbb0e
BLAKE2b-256 628d9dd09c539520d7c0472a280aad39d6975698294602084546e25fbc4c1da6

See more details on using hashes here.

File details

Details for the file pyBiocFileCache-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pyBiocFileCache-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ad3ba977ed6bee60069cf60cff8fa93625955ea6ab56a03c39526ba88a2d4848
MD5 0ec97eee1f86add03777ae3c7dbffa1e
BLAKE2b-256 2402387c26725382735c219a2383a52e1b3b6f8b285967b7bfcfc0b4d74ce11f

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