Commit Graph

20 Commits

Author SHA1 Message Date
Simone Scarduzio
edcbd2c7d0 Add simplified SDK client API and comprehensive documentation
- Create DeltaGliderClient with user-friendly interface
- Add create_client() factory function with sensible defaults
- Implement UploadSummary dataclass with helpful properties
- Expose simplified API through main package
- Add comprehensive SDK documentation under docs/sdk/:
  - Getting started guide with installation and examples
  - Complete API reference documentation
  - Real-world usage examples for 8 common scenarios
  - Architecture deep dive explaining how DeltaGlider works
  - Automatic documentation generation scripts
- Update CONTRIBUTING.md with SDK documentation guidelines
- All tests pass and code quality checks succeed

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-23 13:44:38 +02:00
Simone Scarduzio
f08960b6c5 fix 2025-09-23 13:28:28 +02:00
Simone Scarduzio
73e450664f lint 2025-09-23 13:11:03 +02:00
Simone Scarduzio
c30609efda format 2025-09-23 08:38:27 +02:00
Simone Scarduzio
b788999072 build: Configure automatic versioning from git tags
- Use setuptools-scm for automatic version detection
- Version now automatically derived from git tags
- No need to manually update version in pyproject.toml
- Added _version.py to .gitignore

This enables automatic patch version bumping through git tags without
manually updating any configuration files.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-23 08:35:24 +02:00
Simone Scarduzio
02bce80537 absolute logo url 2025-09-23 08:13:27 +02:00
Simone Scarduzio
fb3ad0e076 refactor: Rename Leaf to DeltaSpace for semantic clarity
- Renamed Leaf class to DeltaSpace throughout the codebase
- Updated all imports, method signatures, and variable names
- Updated documentation and comments to reflect the new naming
- DeltaSpace better represents a container for delta-compressed files

The term "DeltaSpace" is more semantically accurate than "Leaf" as it
represents a space/container for managing related files with delta
compression, not a terminal node in a tree structure.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-23 08:05:20 +02:00
Simone Scarduzio
0613de9a5e format 2025-09-23 07:46:51 +02:00
Simone Scarduzio
39e3ce5567 fix 2025-09-23 07:33:07 +02:00
Simone Scarduzio
3bd545e94e ruff 2025-09-23 07:20:16 +02:00
Simone Scarduzio
42aac30b41 pypi 2025-09-23 07:19:02 +02:00
Simone Scarduzio
fcd1239f81 ci 2025-09-22 23:32:04 +02:00
Simone Scarduzio
b91c05139b fix 2025-09-22 23:27:20 +02:00
Simone Scarduzio
7ee6b67571 fix 2025-09-22 23:24:22 +02:00
Simone Scarduzio
b697e37d36 fix 2025-09-22 23:20:10 +02:00
Simone Scarduzio
7bd82fad5d xdelta website + logo 2025-09-22 23:17:24 +02:00
Simone Scarduzio
9c8c9e731a docs: Expand Python SDK documentation with comprehensive examples
- Add three methods for credential configuration (env vars, AWS profiles, explicit)
- Show complete service initialization with all adapters
- Add MinIO and Cloudflare R2 specific examples
- Include file upload, download, and verification examples
- Show how to access compression statistics
- Add advanced usage with should_use_delta() method
- Provide full import statements for clarity
2025-09-22 22:34:05 +02:00
Simone Scarduzio
9f638339b2 docs: Add detailed explanation of why xdelta3 excels at archive compression
- Explain xdelta3's block-level matching and rolling hash algorithm
- Compare with other diff algorithms (text diff, bsdiff, courgette)
- Add real-world JAR file example showing compression ratios
- Enhance file type table with 'Why It Works' column
- Clarify why archives achieve 99%+ compression
2025-09-22 22:27:43 +02:00
Simone Scarduzio
7fbf84ed6c Initial commit: DeltaGlider - S3-compatible storage with 99.9% compression
- Drop-in replacement for AWS S3 CLI (cp, ls, rm, sync commands)
- Binary delta compression using xdelta3
- Hexagonal architecture with clean separation of concerns
- Achieves 99.9% compression for versioned files
- Full test suite with 100% passing tests
- Python 3.11+ support
2025-09-22 22:21:48 +02:00
Simone Scarduzio
7562064832 Initial commit: DeltaGlider - 99.9% compression for S3 storage
DeltaGlider reduces storage costs by storing only binary deltas between
similar files. Achieves 99.9% compression for versioned artifacts.

Key features:
- Intelligent file type detection (delta for archives, direct for others)
- Drop-in S3 replacement with automatic compression
- SHA256 integrity verification on every operation
- Clean hexagonal architecture
- Full test coverage
- Production tested with 200K+ files

Case study: ReadOnlyREST reduced 4TB to 5GB (99.9% compression)
2025-09-22 15:49:31 +02:00