Releases: antgroup/hugescm
Releases · antgroup/hugescm
v0.23.0
[0.23.0] - 2026-04-22
Added
- Hot Diff/Show Commands: Add
hot diffandhot showcommands for viewing differences in git repositories - Interactive Diff Navigation: Add
--navflag tozeta diffandzeta showcommands for built-in interactive diff viewer with syntax highlighting - Advanced Viewport Module: Import feature-rich viewport component with text wrapping, selection, and filtering capabilities
- MultiBar Progress: Rewrite progress bar component using
bubbles/progresswith concurrent multi-bar rendering and EWMA speed tracking - LOONG64 Support: Enable builds for LoongArch64 architecture
Changed
- Patch View Improvements:
- Refactor patchview module with improved navigation mode
- Add LRU cache for syntax highlighting (up to 1000 entries)
- Remove standalone word-diff in favor of integrated nav mode
- Enhance diff theme and rendering
- TUI Enhancements:
- Switch to custom viewport implementation for better control
- Optimize pager rendering performance
- Improve word diff performance
- Code Cleanup:
- Remove legacy
diffformat.gomodule (287 lines removed) - Code tidy and refactoring across multiple modules
- Remove legacy
Fixed
- Fix double close issue in
writeCredentialsfor keyring file storage - Harden keyring file storage with atomic writes and lock handling
- Fix
truncatePathin hot commands - Fix pager status bar space display
- Fix multi
-mflag handling in commit command - Fix small bug in diferenco module
Dependencies
- Updated:
charm.land/bubbletea/v2from v2.0.2 to v2.0.6charm.land/lipgloss/v2from v2.0.2 to v2.0.3golang.org/x/cryptofrom v0.49.0 to v0.50.0golang.org/x/netfrom v0.52.0 to v0.53.0golang.org/x/sysfrom v0.42.0 to v0.43.0golang.org/x/termfrom v0.41.0 to v0.42.0golang.org/x/textfrom v0.35.0 to v0.36.0
- Added:
github.com/zeebo/xxh3v1.1.0 for fast hashing - Removed:
github.com/vbauerster/mpb/v8(replaced by custom MultiBar implementation)
What's Changed
- build: bump the golang-org group with 4 updates by @dependabot[bot] in #159
- build: bump charm.land/bubbletea/v2 from 2.0.5 to 2.0.6 by @dependabot[bot] in #160
Full Changelog: v0.22.0...v0.23.0
v0.22.0
What's Changed
Added
- FastCDC Chunking: Implement FastCDC (Content-Defined Chunking) algorithm for AI model storage optimization, supporting Safetensors format (
#7) - Word Diff: Support simple word-level diff in
zeta diffandzeta showcommands - Secure Keyring Storage: Add keyring support for secure credential storage
- macOS: Keychain integration
- Windows: Windows Credential Manager integration
- Linux: File-based storage backend
- Network Filesystem Warning: Automatically detect and warn about network filesystems (NFS, Ceph, SMB) with highlighted filesystem names
Changed
- TUI Framework Migration: Switch from custom survey module to
charmbracelet/huhfor better terminal UI experience (removed 10,000+ lines of legacy code) - Improved Table Rendering: Replace
go-prettywithbubbletea tablefor better TUI rendering inzeta hotcommands - Enhanced Pager: Add space key support for page navigation in TUI pager
- Diferenco Improvements:
- Add
namefield toFileStat - Add
Format()method toPatch - Optimize
MergeParallelimplementation - Improve
SplitWordsalgorithm - Enhance Myers diff algorithm
- Add
- Performance Optimizations:
- Optimize worktree operations
- Improve commit decoding efficiency
- Enhance system proxy detection accuracy
Fixed
- Fix multiple keyring issues on Windows and Unix platforms
- Fix panic in
wildmatchpattern matching - Fix tree cache corruption issues
- Fix missing context in commit walker
- Fix zlib handling edge cases
- Fix split words boundary issues
- Fix trace color display
- build: bump github.com/BurntSushi/toml from 1.5.0 to 1.6.0 by @dependabot[bot] in #133
- build: bump github.com/godbus/dbus/v5 from 5.2.1 to 5.2.2 by @dependabot[bot] in #136
- build: bump golang.org/x/sys from 0.39.0 to 0.40.0 in the golang-org group by @dependabot[bot] in #137
- build: bump the golang-org group with 2 updates by @dependabot[bot] in #138
- build: bump github.com/klauspost/compress from 1.18.2 to 1.18.3 by @dependabot[bot] in #140
- build: bump github.com/dgraph-io/ristretto/v2 from 2.3.0 to 2.4.0 by @dependabot[bot] in #141
- build: bump github.com/golang-jwt/jwt/v5 from 5.3.0 to 5.3.1 by @dependabot[bot] in #142
- build: bump github.com/charmbracelet/bubbles from 0.21.0 to 0.21.1 by @dependabot[bot] in #143
- build: bump golang.org/x/sys from 0.40.0 to 0.41.0 in the golang-org group by @dependabot[bot] in #144
- build: bump the golang-org group with 4 updates by @dependabot[bot] in #145
- build: bump github.com/klauspost/compress from 1.18.3 to 1.18.4 by @dependabot[bot] in #146
- build: bump github.com/charmbracelet/bubbles from 0.21.1 to 1.0.0 by @dependabot[bot] in #147
- build: bump golang.org/x/net from 0.50.0 to 0.51.0 in the golang-org group by @dependabot[bot] in #149
- build: bump github.com/ProtonMail/go-crypto from 1.3.0 to 1.4.0 by @dependabot[bot] in #150
- build: bump github.com/ProtonMail/go-crypto from 1.4.0 to 1.4.1 by @dependabot[bot] in #157
Full Changelog: v0.21.0...v0.22.0
v0.21.0 small bugfix
What's Changed
- build: bump github.com/jedib0t/go-pretty/v6 from 6.7.2 to 6.7.3 by @dependabot[bot] in #125
- build: bump golang.org/x/crypto from 0.44.0 to 0.45.0 in the golang-org group by @dependabot[bot] in #126
- build: bump github.com/jedib0t/go-pretty/v6 from 6.7.3 to 6.7.5 by @dependabot[bot] in #127
- build: bump actions/checkout from 5 to 6 by @dependabot[bot] in #128
- build: bump the golang-org group with 6 updates by @dependabot[bot] in #130
- build: bump github.com/jedib0t/go-pretty/v6 from 6.7.5 to 6.7.7 by @dependabot[bot] in #132
Full Changelog: v0.20.1...v0.21.0
v0.20.1 small change and bugfix
Full Changelog: v0.20.0...v0.20.1
Release v0.20.0 hot co support -X
What's Changed
- build: bump golang.org/x/net from 0.43.0 to 0.44.0 in the golang-org group by @dependabot[bot] in #110
- build: bump github.com/charmbracelet/bubbletea from 1.3.9 to 1.3.10 by @dependabot[bot] in #111
- build: bump golang.org/x/net from 0.44.0 to 0.45.0 in the golang-org group by @dependabot[bot] in #113
- build: bump github.com/danieljoos/wincred from 1.2.2 to 1.2.3 by @dependabot[bot] in #112
- build: bump github.com/jedib0t/go-pretty/v6 from 6.6.8 to 6.6.9 by @dependabot[bot] in #116
Full Changelog: v0.19.1...v0.20.0
Release v0.19.1 Introducing the hot command
About the introduced hot command
hot command is a Git repository governance tool that we integrated into HugeSCM, supporting many scenarios:
- Find large files with
hot size (raw size)/hot az (compressed size). - Use
hot removeto quickly delete committed secrets and rewrite history. - Interactively remove large files with
hot smart, which combines thesizeandremovecommands (e.g.,hot smart -L20m). - Migrate the repository's object format between
SHA1andSHA256withhot mc. - Clean up stale refs with
hot prune-refs (by prefix)orhot expire-refs (by age & merged status). Usehot scan-refsto review their status. - Linearize repository history (i.e., remove all merge commits) with
hot unbranch. - Create an orphan branch from a specific commit using
hot unbranch -K1 master -Tnew-branch. It keeps recent history, ideal for open-sourcing or history resets. - Use
hot catto inspect Git objects (commit/tree/tag/blob). It outputscommit/tree/tagas JSON (--json) and intelligently hexdumps binary blobs.
Here's some more help information:
Usage: hot <command> [flags]
hot - Git repositories maintenance tool
Flags:
-h, --help Show context-sensitive help
-V, --verbose Make the operation more talkative
-v, --version Show version number and quit
--debug Enable debug mode; analyze timing
Commands:
cat Provide contents or details of repository objects
stat View repository status
size Show repositories size and large files
remove Remove files in repository and rewrite history
smart Interactive mode to clean repository large files
graft Interactive mode to clean repository large files (Grafting mode)
mc Migrate a repository to the specified object format
unbranch Linearize repository history
prune-refs Prune refs by prefix
scan-refs Scan references in a local repository
expire-refs Clean up expired references
snapshot Create a snapshot commit for the worktree
az Analyze repository large files
co EXPERIMENTAL: Clones a repository into a newly created directory
Run "hot <command> --help" for more information on a command.eg:
hot cat HEAD:docs/images/blob.pnghot statMigrate Git repository object format from SHA1 to SHA256:
hot mc https://github.com/antgroup/hugescm.gitAbout zeta update
- Add EXPERIMENTAL command
cherry-pick,revert - zeta cat use pager when found less (or other PAGER)
What's Changed
- build: bump actions/setup-go from 5 to 6 by @dependabot[bot] in #107
- build: bump the golang-org group with 4 updates by @dependabot[bot] in #106
- build: bump golang.org/x/crypto from 0.41.0 to 0.42.0 in the golang-org group by @dependabot[bot] in #108
Full Changelog: v0.18.3...v0.19.1
Release v0.19.0 Introducing the hot command
About the introduced hot command
hot command is a Git repository governance tool that we integrated into HugeSCM, supporting many scenarios:
- Find large files with
hot size (raw size)/hot az (compressed size). - Use
hot removeto quickly delete committed secrets and rewrite history. - Interactively remove large files with
hot smart, which combines thesizeandremovecommands (e.g.,hot smart -L20m). - Migrate the repository's object format between
SHA1andSHA256withhot mc. - Clean up stale refs with
hot prune-refs (by prefix)orhot expire-refs (by age & merged status). Usehot scan-refsto review their status. - Linearize repository history (i.e., remove all merge commits) with
hot unbranch. - Create an orphan branch from a specific commit using
hot unbranch -K1 master -Tnew-branch. It keeps recent history, ideal for open-sourcing or history resets. - Use
hot catto inspect Git objects (commit/tree/tag/blob). It outputscommit/tree/tagas JSON (--json) and intelligently hexdumps binary blobs.
Here's some more help information:
Usage: hot <command> [flags]
hot - Git repositories maintenance tool
Flags:
-h, --help Show context-sensitive help
-V, --verbose Make the operation more talkative
-v, --version Show version number and quit
--debug Enable debug mode; analyze timing
Commands:
cat Provide contents or details of repository objects
stat View repository status
size Show repositories size and large files
remove Remove files in repository and rewrite history
smart Interactive mode to clean repository large files
graft Interactive mode to clean repository large files (Grafting mode)
mc Migrate a repository to the specified object format
unbranch Linearize repository history
prune-refs Prune refs by prefix
scan-refs Scan references in a local repository
expire-refs Clean up expired references
snapshot Create a snapshot commit for the worktree
az Analyze repository large files
co EXPERIMENTAL: Clones a repository into a newly created directory
Run "hot <command> --help" for more information on a command.eg:
hot cat HEAD:docs/images/blob.pnghot statMigrate Git repository object format from SHA1 to SHA256:
hot mc https://github.com/antgroup/hugescm.gitAbout zeta update
- Add EXPERIMENTAL command
cherry-pick,revert - zeta cat use pager when found less (or other PAGER)
What's Changed
- build: bump the golang-org group with 5 updates by @dependabot[bot] in #102
- build: bump github.com/dgraph-io/ristretto/v2 from 2.2.0 to 2.3.0 by @dependabot[bot] in #103
- build: bump github.com/stretchr/testify from 1.10.0 to 1.11.0 by @dependabot[bot] in #104
Full Changelog: v0.18.3...v0.19.0
Release v0.18.3
What's Changed
- build: bump the golang-org group with 4 updates by @dependabot[bot] in #98
- build: bump the golang-org group with 2 updates by @dependabot[bot] in #99
- build: bump github.com/klauspost/cpuid/v2 from 2.2.11 to 2.3.0 by @dependabot[bot] in #100
Full Changelog: v0.18.2...v0.18.3
Release v0.18.2
What's Changed
- build: bump github.com/klauspost/cpuid/v2 from 2.2.10 to 2.2.11 by @dependabot in #97
Bugfix
- Fix log --order-top
Full Changelog: v0.18.1...v0.18.2
Release v0.18.1
What's Changed
- build: bump github.com/go-sql-driver/mysql from 1.9.2 to 1.9.3 by @dependabot in #96
- Fix mimetype BUG
Full Changelog: v0.18.0...v0.18.1