9b7cbd5244d15ad8c154bbea640233c1f770e25f
- Fix all 96 doctest failures across 20 files by adding hidden imports and proper test setup (68 pass, 33 intentionally ignored) - Fix set_item_tags: wrap in transaction and replace item.id.unwrap() with proper error handling - Fix get_items_matching: replace N+1 per-item meta queries with batch get_meta_for_items() call - Fix get_item_matching: apply meta filtering instead of ignoring the parameter - Remove duplicate doc comment in store_meta - Remove dead code files: plugin.rs, plugins.rs, binary_detection.rs (never declared as modules) - Apply cargo fmt formatting fixes - Add keep.db to .gitignore
Keep - Temporary File Management with Compression and Metadata
Keep is a command-line tool for managing temporary files with automatic compression, metadata generation, and querying capabilities. It supports various compression algorithms and metadata plugins for rich item inspection.
Features
- Store and Retrieve: Save content with automatic compression and retrieve by ID or tags.
- Compression Support: Built-in support for LZ4, GZip, and more via external programs (BZip2, XZ, ZStd).
- Metadata Plugins: Automatic extraction of file type, digests, hostname, user info, and custom metadata.
- Filtering: Apply filters (head, tail, grep, etc.) when retrieving content.
- Querying: List, search, and diff items with flexible formatting.
- REST API Server: Optional HTTP server for programmatic access.
- Modular Design: Extensible via plugins for compression, metadata, and filtering.
Installation
Languages
Rust
99.5%
Shell
0.3%
Dockerfile
0.2%