Skip to content

hubvault v0.0.1

Choose a tag to compare

@HansBug HansBug released this 10 Apr 10:36
· 71 commits to main since this release

First public release

hubvault v0.0.1 is the first public release of an API-first, embedded, portable repository for local ML artifacts.

This release ships a working local repository surface with:

  • Git-like commits, trees, refs, tags, reflog, reset, and merge semantics
  • Hugging Face style file APIs for upload, download, listing, and metadata access
  • Detached download and snapshot views so read paths do not expose writable repository truth
  • A Phase 15 SQLite truth-store design centered on repo-root metadata.sqlite3
  • Chunked large-file storage with filesystem payload bytes still kept in objects/blobs/*.data and chunks/packs/*.pack
  • Public maintenance APIs and CLI commands for verification, storage analysis, garbage collection, and history squashing
  • A git-like CLI exposed as both hubvault and hv

Release hardening for v0.0.1

For this first release, the packaging and documentation surface was tightened up before tagging:

  • fixed the local make package path by adding a Python 3.7 compatible build dependency to the maintained requirement sets
  • refreshed setup.py metadata, project URLs, and package classifiers
  • switched the public documentation links to Read the Docs
  • aligned the docs index structure and Sphinx metadata for the new public docs entry point
  • refreshed the GitHub repository description, homepage, and topic tags

Current performance snapshot

Benchmark evidence is currently based on the preserved Phase 15 records under build/benchmark/phase15/, measured on Linux x86_64 with CPython 3.10.10.

Standard/full snapshot:

  • large upload: 230.69 MiB/s
  • large range read: 1113.59 MiB/s
  • cold file download: 846.98 MiB/s
  • warm file download: 13761.47 MiB/s
  • cache-heavy warm download: 19704.43 MiB/s
  • deep history listing: 15221.94 ops/s
  • recursive tree listing: 31185.03 ops/s
  • heavy non-fast-forward merge: 126.65 MiB/s
  • squash history with cleanup: 146.83 MiB/s
  • chunk threshold sweep: 74.20 MiB/s
  • small-file read-all path: 5.76 MiB/s, 1473.64 ops/s

Pressure snapshot:

  • large upload: 332.13 MiB/s
  • large range read: 910.23 MiB/s
  • cold file download: 422.80 MiB/s
  • warm file download: 637608.97 MiB/s on cache/view-hit paths
  • cache-heavy warm download: 39457.46 MiB/s

The current performance profile is clear:

  • metadata-heavy and maintenance-heavy paths improved meaningfully after the SQLite truth-store migration
  • large-range reads under pressure are stronger than the pre-migration baseline
  • the main remaining optimization targets are warm-download paths, small-file hot reads, and detached-view read-side short-circuiting

Notes

This is a 0.0.1 first release, not a stability promise. The project is already usable as a serious local artifact repository foundation, but it should still be treated as early-stage software while the hot-read path continues to be optimized.