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.
Install from PyPI,
pip install pybiocfilecachefrom 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 filefrom pybiocfilecache import BiocFileCache, CacheConfig
from datetime import timedelta
from pathlib import Path
# Create custom configuration
config = CacheConfig(
    cache_dir=Path("cache_directory"),
    cleanup_interval=timedelta(days=7),
)
# Initialize cache with configuration
cache = BiocFileCache(config=config)# 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")# Get cache statistics
stats = cache.get_stats()
print(stats)
# Clean up expired resources
removed_count = cache.cleanup()
# Purge entire cache
cache.purge()