Skip to content

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 26 Jun 19:25
· 352 commits to main since this release

Welcome to release v0.4.0 of dvs!

Available packages:

  • dvs_0.4.0_linux_amd64.tar.gz - Tarball for x86_64

Installation (Generic Linux - tar.gz):

tar -xzf dvs_0.4.0_linux_amd64.tar.gz
sudo mv dvs /usr/local/bin/

Build Information:

  • Built on AlmaLinux 8 (glibc 2.28) for broad compatibility
  • Binaries are dynamically linked against glibc 2.28+

Verify Installation:

dvs --version

Checksums:
See checksums.txt for SHA256 checksums of all artifacts.

What's Changed

  • More by @Keats in #1
  • Add barebone r-package by @CGMossa in #3
  • Use shell globbing for CLI + allow either glob or list of path for ad… by @Keats in #6
  • Update docs + unexport some private stuff by @Keats in #10
  • Added exact wrappers to the CLI commands by @CGMossa in #5
  • Data frames as output by @CGMossa in #11
  • Allow multiple patterns by @CGMossa in #13
  • fix incremental compilation in dvs-rpkg by @CGMossa in #16
  • Remove globbing from lib by @Keats in #17
  • New things by @Keats in #20
  • Change date format for metadata file by @Keats in #31
  • Add files to gitignore when adding them to dvs by @Keats in #29
  • Automatically compress files in storage by @Keats in #32
  • Audit by @Keats in #30
  • design notes and misc tweaks by @dpastoor in #34
  • Updating miniextendr scaffolding by @CGMossa in #38
  • Cache hashes by @Keats in #35
  • Add filters to dvs status by @Keats in #40
  • chore: fix the install-cli recipe by @CGMossa in #43
  • Default to blake3 for local - non overridable by @Keats in #41
  • Finish add by @Keats in #42
  • chore: alexandria-cli gitignore and Cargo.lock update by @CGMossa in #53
  • Parallel get and status by @Keats in #45
  • Reject files outside of project dir by @Keats in #50
  • Handle out of project error in one place by @Keats in #63
  • Specs by @Keats in #66
  • Fix save to not read by @Keats in #68
  • Add CI by @Keats in #72
  • Fix dvs-rpkg bindings to match current dvs API by @CGMossa in #71
  • Update miniextendr bindings by @CGMossa in #75
  • adjust dvs-rpkg scaffolding again by @CGMossa in #87
  • dvs-rpkg: full CLI feature parity by @CGMossa in #88
  • Remove dead AC_SUBSTs and TARNAME vars from configure.ac by @CGMossa in #90
  • Add fixes by @Keats in #84
  • Log init action by @Keats in #89
  • Thread pool v2 by @CGMossa in #85
  • bump version to 0.3.0 by @CGMossa in #73
  • warn: storage within root by @CGMossa in #74
  • fix rpkg lib name and add rustdocs by @CGMossa in #94
  • add rv install test and fix CRAN path deps by @CGMossa in #95
  • Allow passing paths to dvs status by @Keats in #97
  • Table output for dvs status by @Keats in #93
  • Error on init on already init storage by @Keats in #92
  • Ensure other group members can read/edit audit log by @Keats in #91
  • Use tibble for data-frame outputs by @CGMossa in #99
  • Update rpkg scaffolding to match miniextendr template by @CGMossa in #101
  • Use columnar serde DataFrame for dvs_status by @CGMossa in #102
  • Allow checking progress via callbacks by @Keats in #103
  • fix: add TAR_FORCE_LOCAL to tar calls in configure.ac by @CGMossa in #106
  • R package: use cli C API for progress bars by @CGMossa in #105
  • Add R-native thread control via dvs.num_threads option by @CGMossa in #100
  • R package cleanup: scaffolding sync, vendor tooling, ui tests by @CGMossa in #107
  • Remove LFS, track vendor.tar.xz as regular file by @CGMossa in #109
  • Add path filtering to dvs_status R binding by @CGMossa in #110
  • fix ui tests: datasets recipe, anomaly detection by @CGMossa in #108
  • [codex] Cache extracted rpkg vendor dir in CI by @CGMossa in #112
  • Replace boolean flags with MatchArg enums in R bindings by @CGMossa in #111
  • Update miniextendr: inline match.arg defaults by @CGMossa in #113
  • Rebuild vendor.tar.xz for offline build fix by @CGMossa in #114
  • Freeze Cargo.toml and Cargo.lock for offline builds by @CGMossa in #115
  • Rebuild vendor.tar.xz without macOS xattr warnings by @CGMossa in #116
  • Remove configure vendor-tarball repack, rebuild xattr-free tarball by @CGMossa in #117
  • Add dvs_bytes S3 class, format_byte_size, and dvs_version by @CGMossa in #119
  • dvs: gate anyhow! import behind cfg(unix) by @CGMossa in #121
  • dvs-rpkg: add --force to just vendor and rebuild tarball by @CGMossa in #120
  • dvs-rpkg: upgrade miniextendr scaffolding by @CGMossa in #123
  • dvs-rpkg: drop dead tools/vendor-crates.R by @CGMossa in #124
  • dvs-rpkg: upgrade miniextendr scaffolding to flat vendor paths by @CGMossa in #126
  • ci: regenerate inst/vendor.tar.xz in CI instead of tracking it by @CGMossa in #125
  • dvs-rpkg / dvs-cli parity fixes by @CGMossa in #128
  • ci: restrict test matrix to linux only by @CGMossa in #130
  • dvs-rpkg: auto-vendor on downstream git install by @CGMossa in #132
  • dvs-rpkg: use git dep for dvs so isolated installs work by @CGMossa in #133
  • fix: accept absolute paths in resolve_paths_for_get (closes #136) by @CGMossa in #138
  • add_time as POSIXct: store jiff::Timestamp in core, surface in R by @CGMossa in #134
  • ci: add release workflow for the R package (source tarball with vendored deps) by @CGMossa in #137
  • dvs-cli: format status size with dvs::format_size by @CGMossa in #142
  • Restore specs.md by @Keats in #146
  • rpkg: always return tibbles; format sizes via pillar by @CGMossa in #148
  • dvs: fix panic in status/add/get for empty repos by @CGMossa in #150
  • dvs-cli: prefix top-level errors with "Error:" by @CGMossa in #151
  • Always return stored_size in AddDetail by @Keats in #156
  • dvs-cli: right-align size column in status table by @CGMossa in #143
  • rpkg: follow up #156 — stored_size is always u64, drop stale branch pin by @CGMossa in #157
  • rpkg: simplify new_dvs_bytes, add test_support module, 2.5 GiB round-trip test by @CGMossa in #158
  • chore: run fmt-all by @CGMossa in #160
  • dvs-rpkg: document glob path-separator semantics by @CGMossa in #159
  • fix: helpful error when dvs add gets a directory without --glob by @CGMossa in #162
  • chore(rpkg): drop feat/columnar-with-column branch pin from miniextendr by @CGMossa in #163
  • chore(ui): rollup of UI test conventions, say()/PS4 traces, print(width=Inf), and just ui-publish by @CGMossa in #166
  • chore: track .alx/ project config and exclude .alexandria-cli from workspace by @CGMossa in #165
  • fix(ui): suppress > say lines from set -x output by @CGMossa in #168
  • chore(ui): add tree views to main.sh + main_status.sh fixtures by @CGMossa in #169
  • chore(rpkg): refresh scaffolding via minirextendr upgrade by @CGMossa in #171
  • fix(rpkg): correctness fixes and FFI smoke for all four install tests by @CGMossa in #173
  • feat(rpkg): add detect-features.R and document DVS_FEATURES → CARGO_FEATURES rename by @CGMossa in #172
  • ci(rpkg): wire install-tarball FFI smoke into release workflow + add rpkg-test-install recipe by @CGMossa in #174
  • ci(release): smoke-test built binary + clarify tag guard by @CGMossa in #176
  • feat(rpkg): route Rust core logs to R + WorkerPump-based progress by @CGMossa in #182
  • feat(just): add install-all umbrella recipe by @CGMossa in #186
  • feat(ui): add main_log.sh logging consistency test by @CGMossa in #185
  • Revert "fix: helpful error when dvs add gets a directory without --gl… by @Keats in #175
  • chore(just): drop recursive from ui_names by @CGMossa in #187
  • fix(rpkg): show all compression choices in dvs_init_impl formal by @CGMossa in #191
  • chore(rpkg): update documentation by @CGMossa in #190
  • spec: require dvs core to be free of CLI/R-package concerns by @CGMossa in #195
  • docs: add CLI and R package install instructions to README by @CGMossa in #196
  • chore(rpkg): drop stale module-level comment from lib.rs by @CGMossa in #197
  • chore(ui): trace output cleanup — say/set-x/subshell filters by @CGMossa in #198
  • feat(ui): add main_cli_help.sh — clap option-ordering test by @CGMossa in #188
  • docs(spec): drop untracked from file-state model (4 → 3 states) by @CGMossa in #199
  • docs(spec): misc cleanups — whitespace, capitalization, three-cmd glob by @CGMossa in #201
  • docs(spec): refresh CLI --help blocks for init/add/get/status by @CGMossa in #202
  • docs(rpkg): give dvs_version a title so it gets a man page by @CGMossa in #206
  • feat(threads): observable priority chain + verifier script by @CGMossa in #183
  • docs(spec): remaining audit edits (errors, init/add/get/status text + R signatures, audit-log JSON, threading) by @CGMossa in #149
  • docs(spec): sync help/signatures + corrections from claim audit by @CGMossa in #215
  • fix(rpkg): show progress bar only in interactive sessions (closes #118) by @CGMossa in #214
  • docs(spec): add high-level conventions — paths, NULL defer by @CGMossa in #200
  • feat(core): lift storage-inside-repo guard into dvs::init (closes #131) by @CGMossa in #213
  • fix(audit): store timestamp as jiff::Timestamp (closes #135) by @CGMossa in #211
  • feat(core+cli): add --recursive to dvs get by @CGMossa in #203
  • feat(rpkg): expose --recursive in dvs_get by @CGMossa in #204
  • feat(ui): main_recursive.sh — walkthrough for --recursive across add/get/status by @CGMossa in #205
  • docs(spec): status does not accept --glob (#218) by @CGMossa in #221
  • docs(rpkg): drop stale param signatures from CLAUDE.md exports table by @CGMossa in #234
  • docs(audit): document that an empty file filter returns the whole log by @CGMossa in #224
  • fix(status): cwd-scope a bare --glob; document the flag (#218) by @CGMossa in #228
  • Quick error by @Keats in #240
  • docs(spec): adopt fail-fast all-or-nothing for add/get (#240) by @CGMossa in #241
  • chore(deps): hoist uuid v4 feature to the workspace dependency by @CGMossa in #246
  • chore(deps): align rpkg crate deps with the dvs library versions by @CGMossa in #249
  • test(rpkg): fix nested-path fixture and recursive-get expectation in test-get.R by @CGMossa in #247
  • chore(rpkg): bump dvs pin to adopt #240 fail-fast add/get by @CGMossa in #245
  • Canonicalize paths for config by @Keats in #251
  • docs(spec): status drops non-matching paths silently by @CGMossa in #250
  • chore(rpkg): re-scaffold against latest miniextendr (baf9ba86) by @CGMossa in #207
  • ui: add main_threads.sh walkthrough by @CGMossa in #209
  • rpkg: depend on in-repo dvs core by path (drop the git pin) by @CGMossa in #252
  • ci(rpkg): include dvs core source in the vendor cache key by @CGMossa in #254
  • rpkg: dvs_init returns config as a single-row tibble by @CGMossa in #170
  • chore(rpkg): add rpkg-sync recipe by @CGMossa in #253
  • chore(rpkg): skip 3-way merge of generated artifacts via .gitattributes by @CGMossa in #255

New Contributors

Full Changelog: https://github.com/A2-ai/dvs2/commits/v0.4.0