Skip to content

Releases: git-ents/git-metadata

git-metadata: v0.4.1

18 May 00:08
f50724f

Choose a tag to compare

0.4.1 (2026-05-17)

chore

Documentation

  • Add code of conduct (62cdabd)
  • Add contribution guide (cb240be)
  • Add note for testers in README (f219c20)
  • Add reference to code of conduct in README (f71c62d)
  • Add reference to contribution guide in README (34502d5)

git-metadata: v0.4.0

17 May 03:19
e67f30c

Choose a tag to compare

0.4.0 (2026-05-17)

Features

  • Add -a/--all flag to list subcommand (8fed577)
  • Add Edit and Merge CLI subcommands (eb21231)
  • Add Executor::merge for 3-way merge of metadata refs (eb21231)
  • Add Executor::read_blob_at for reading blob entries (eb21231)
  • Add edit and merge subcommands (eb21231)

Bug Fixes

  • Make object a keyword argument in add, remove, and edit subcommands (2b88890)

git-metadata: v0.3.0

17 May 02:58
git-metadata-v0.3.0
707cba4

Choose a tag to compare

0.3.0 (2026-05-16)

Features

  • metadata validates input and ref-target shape (dbeb94c)
  • Accept optional author signature in Ledger::create (cb4d735), closes #10
  • Add --author-name and --author-email to create subcommand (cb4d735)
  • Add --link <rev> to add (resolved permalink, peels tags) (8499883)
  • Add --link-ref <name> to add (unresolved ref name as blob) (8499883)
  • Add AlreadyExists, InvalidRootType, FanoutPathConflict errors (dbeb94c)
  • Add ContentAddressable and Pointer traits (677936a)
  • Add DEFAULT_FANOUT constant (82f6a4f)
  • Add Error::UnexpectedKind variant (d57c2ba)
  • Add Executor::repo() accessor (8ac3697)
  • Add Executor::stale() read-only counterpart to prune (8ac3697)
  • Add InvalidFanoutDepth and FanoutFind error variants (82f6a4f)
  • Add list <object> subcommand (replaces old show flat output) (ce0fc2a)
  • Add message: Option<&str> to MetadataRepository::metadata_delete (8ac3697)
  • Add message: Option<&str> to MetadataRepository::metadata (8ac3697)
  • Add message/author params to Executor::upsert, import, remove (8ac3697)
  • Add Metadata::id and Metadata::data accessors (0c8fb44)
  • Add Metadata::id and Metadata::data accessors (9757be5)
  • Add tree::remove_leaf helper that prunes empty intermediates (8764905)
  • Add TreeId newtype with From<gix::Tree> and From<TreeId> for gix::ObjectId (f5d5c88)
  • Add Tx::with_message() builder; default commit message is "store: commit transaction" (d57c2ba)
  • Add CLI (ff68888)
  • Add Error::FanoutDepthConflict variant (a77bc5d)
  • Add FileMode enum (Blob, Executable, Tree, Commit) (c72b96c)
  • Add git-db crate to workspace (e2ed0fc)
  • Add global --force flag used by add, copy, and man-page generation (676d45a)
  • Add IdStrategy::CommitOid for commit-OID-keyed entity refs (31c8dc3), closes #6
  • Add Mutation::Pin for inserting entries that reference existing objects (c72b96c)
  • Add optional author override to Ledger::create (cb4d735)
  • Add print_tree_entry helper in main.rs (4f09287)
  • Add store abstractions (260820f)
  • Add validate_metadata_tree to MetadataRepository trait (a77bc5d)
  • Enable gix tree-editor feature for structural sharing (bf946a9)
  • Implement ContentAddressable, Ref, and Transaction over gix (7949943)
  • Implement Executor::upsert (0c8fb44)
  • Implement Executor::upsert (333a29f)
  • Implement find_metadata (0c8fb44)
  • Implement find_metadata (119791d)
  • Implement metadata_default_ref returning refs/metadata/commits (82f6a4f)
  • Implement metadata_delete and add tree::remove_leaf (0c8fb44)
  • Implement metadata_delete and add tree::remove_leaf (8764905)
  • Implement metadata, mirror libgit2 notes shape (0c8fb44)
  • Implement metadata, mirror libgit2 notes shape (dbeb94c)
  • Implement compile_patterns and tree_is_empty helpers (7269b52)
  • Implement Executor::copy (7269b52)
  • Implement Executor::remove with glob-pattern matching (7269b52)
  • Implement Executor::remove, stale, copy, prune (7269b52)
  • Implement Executor::stale and Executor::prune (7269b52)
  • Implement Executor::upsert using tree::insert_leaf directly (7302605)
  • Implement Executor::upsert; parameterize insert_leaf over leaf_kind (0c8fb44)
  • Implement Executor::upsert; parameterize insert_leaf over leaf_kind (7302605)
  • Implement Store and Tx for phase 1 transaction (bf946a9)
  • Install nextest via taiki-e/install-action@nextest (8b9181f)
  • Make list show flat tree entries and show render a tree (ce0fc2a)
  • Open editor for add when no content is provided interactively (2a7cd53)
  • Print man page path on write and require --force to overwrite (676d45a)
  • Read .fanout depth blob in metadatas (82f6a4f)
  • Read committer identity from git config via repo.committer(), falling back to generic defaults (d57c2ba)
  • Render show output as a tree via termtree (ce0fc2a)
  • Require .fanout depth in metadata trees and document MetadataRepository (0c8fb44)
  • Require .fanout depth in metadata trees and document MetadataRepository (82f6a4f)
  • Rework add to support --link/--link-ref; make --path optional ([849988...
Read more

git-metadata: v0.3.0-rc.2

16 May 17:30
3e4e487

Choose a tag to compare

Pre-release

0.3.0-rc.2 (2026-05-16)

Features

  • metadata validates input and ref-target shape (dbeb94c)
  • Accept optional author signature in Ledger::create (cb4d735), closes #10
  • Add --author-name and --author-email to create subcommand (cb4d735)
  • Add --link <rev> to add (resolved permalink, peels tags) (8499883)
  • Add --link-ref <name> to add (unresolved ref name as blob) (8499883)
  • Add AlreadyExists, InvalidRootType, FanoutPathConflict errors (dbeb94c)
  • Add ContentAddressable and Pointer traits (677936a)
  • Add DEFAULT_FANOUT constant (82f6a4f)
  • Add Error::UnexpectedKind variant (d57c2ba)
  • Add Executor::repo() accessor (8ac3697)
  • Add Executor::stale() read-only counterpart to prune (8ac3697)
  • Add InvalidFanoutDepth and FanoutFind error variants (82f6a4f)
  • Add list <object> subcommand (replaces old show flat output) (ce0fc2a)
  • Add message: Option<&str> to MetadataRepository::metadata_delete (8ac3697)
  • Add message: Option<&str> to MetadataRepository::metadata (8ac3697)
  • Add message/author params to Executor::upsert, import, remove (8ac3697)
  • Add Metadata::id and Metadata::data accessors (0c8fb44)
  • Add Metadata::id and Metadata::data accessors (9757be5)
  • Add tree::remove_leaf helper that prunes empty intermediates (8764905)
  • Add TreeId newtype with From<gix::Tree> and From<TreeId> for gix::ObjectId (f5d5c88)
  • Add Tx::with_message() builder; default commit message is "store: commit transaction" (d57c2ba)
  • Add CLI (ff68888)
  • Add Error::FanoutDepthConflict variant (a77bc5d)
  • Add FileMode enum (Blob, Executable, Tree, Commit) (c72b96c)
  • Add git-db crate to workspace (e2ed0fc)
  • Add global --force flag used by add, copy, and man-page generation (676d45a)
  • Add IdStrategy::CommitOid for commit-OID-keyed entity refs (31c8dc3), closes #6
  • Add Mutation::Pin for inserting entries that reference existing objects (c72b96c)
  • Add optional author override to Ledger::create (cb4d735)
  • Add print_tree_entry helper in main.rs (4f09287)
  • Add store abstractions (260820f)
  • Add validate_metadata_tree to MetadataRepository trait (a77bc5d)
  • Enable gix tree-editor feature for structural sharing (bf946a9)
  • Implement ContentAddressable, Ref, and Transaction over gix (7949943)
  • Implement Executor::upsert (0c8fb44)
  • Implement Executor::upsert (333a29f)
  • Implement find_metadata (0c8fb44)
  • Implement find_metadata (119791d)
  • Implement metadata_default_ref returning refs/metadata/commits (82f6a4f)
  • Implement metadata_delete and add tree::remove_leaf (0c8fb44)
  • Implement metadata_delete and add tree::remove_leaf (8764905)
  • Implement metadata, mirror libgit2 notes shape (0c8fb44)
  • Implement metadata, mirror libgit2 notes shape (dbeb94c)
  • Implement compile_patterns and tree_is_empty helpers (7269b52)
  • Implement Executor::copy (7269b52)
  • Implement Executor::remove with glob-pattern matching (7269b52)
  • Implement Executor::remove, stale, copy, prune (7269b52)
  • Implement Executor::stale and Executor::prune (7269b52)
  • Implement Executor::upsert using tree::insert_leaf directly (7302605)
  • Implement Executor::upsert; parameterize insert_leaf over leaf_kind (0c8fb44)
  • Implement Executor::upsert; parameterize insert_leaf over leaf_kind (7302605)
  • Implement Store and Tx for phase 1 transaction (bf946a9)
  • Install nextest via taiki-e/install-action@nextest (8b9181f)
  • Make list show flat tree entries and show render a tree (ce0fc2a)
  • Open editor for add when no content is provided interactively (2a7cd53)
  • Print man page path on write and require --force to overwrite (676d45a)
  • Read .fanout depth blob in metadatas (82f6a4f)
  • Read committer identity from git config via repo.committer(), falling back to generic defaults (d57c2ba)
  • Render show output as a tree via termtree (ce0fc2a)
  • Require .fanout depth in metadata trees and document MetadataRepository (0c8fb44)
  • Require .fanout depth in metadata trees and document MetadataRepository (82f6a4f)
  • Rework add to support --link/--link-ref; make --path optional ([8499883](https://github.com/git-ents/git-metadata/commit/...
Read more

git-metadata: v0.2.1

08 May 03:07
git-metadata-v0.2.1
160284d

Choose a tag to compare

0.2.1 (2026-03-20)

Miscellaneous Chores

git-metadata: v0.3.0-rc.1

08 May 03:07
git-metadata-v0.3.0-rc.1
4c3d662

Choose a tag to compare

Pre-release

0.3.0-rc.1 (2026-03-26)

Features

  • Implement relation operations in git-metadata (7725be8)

Bug Fixes

  • Apply clippy suggestions (search_is_some in tests, fmt in main.rs) (6f83928)
  • Handle slash in link keys and batch prune commits in git-metadata (a37fb3e)

git-metadata: v0.2.0

13 Mar 02:54
dc47c1b

Choose a tag to compare

0.2.0 (2026-03-12)

Features

  • Add MetadataIndex::metadata (fd7b179)
  • Add MetadataIndex::metadata_commit (fd7b179)

git-metadata: v0.1.0

11 Mar 04:35
161af60

Choose a tag to compare

0.1.0 (2026-03-11)

⚠ BREAKING CHANGES

  • metadata_remove no longer takes MetadataOptions

Features

  • Add executor (exe) and CLI implementation (10d9c07)
  • Add initial trait method and accompanying implementation (c4ed9f8)
  • Add man generation to CLI (275207f)
  • Add metadata trait method definitions (30ef2eb)
  • Add metadata trait method implementations (30ef2eb)
  • Auto-detect fanout depth on read and remove (bd86065)
  • Glob matching for remove patterns (*, **, prefix match) (4cf0d90)
  • Path-based metadata API following git-notes semantics (4cf0d90)
  • Resolve revisions (HEAD, refs, short OIDs) in all object arguments (4cf0d90)

Bug Fixes

  • Auto-detect fanout depth and correct shard level semantics (bd86065)
  • Correct release-please manifest package key (88f4ec1)
  • Remove cargo-workspace plugin for single-crate repo (1d19a7d)
  • Shard-level default changed from 2 to 1 (git-notes compatible) (bd86065)