v0.3.1
Chore
- git pull fix
- move few helper method to impl
- unimplemented error on other subcommands
- update LICENSE owners & lint
Documentation
- add library links
- fix overide sole contributor values
New Features
-
Enhance SSH Key Handling and Git Push Functionality
- Improved SSH key handling by adding the
homecrate to determine the user's home directory and fixing ssh-agent lifecycle issues. - Added support for force-with-lease via git CLI, enhancing the push functionality.
- Implemented persistent ssh-agent with a fixed socket and avoided duplicate agents.
- SSH passphrase support
- Improve force-with-lease logic
- Enhanced error messages and remote determination for better user experience.
- Updated authentication workflow to support passphrase and personal access tokens (PAT).
- Extracted authentication logic from git_clone, git_pull and git_push
and refactored it to a auth module.
- Improved SSH key handling by adding the
-
Improve rule efficiency and add Rust 1.88 support
This commit introduces several changes to improve the efficiency of rules and updates the Rust version to 1.88.- Updated Rust version to 1.88 in Cargo.toml.
- Added combined boolean expressions across multiple files.
-
Refactor to rig-core and validate commit message
Switches from google-generative-ai-rs to rig-core for commit
message generation. Adds ValidateConventionalCommit tool for
prompting an LLM to generate commit messages, and removes
google-generative-ai-rs and related dependencies.This resolves issues with response handling.
-
IT setup
-
Refactor file size checks, add install target
This commit refactors the way file sizes are checked and
introduces an install target in the Makefile.- Reduced default max large file size to 2MiB
- Increased default max repo size to 128MiB
- Increased default cumulative staged file size to 32MiB
- Added directory size calculation to
get_path_size - Added an install target to Makefile
-
Add pre-commit hook and file size checks
This commit introduces a pre-commit hook to run formatting and
linting, and implements a check to ensure that files staged are not too large to
prevent performance issues with Git.- Added a
precommit-fixtarget to the Makefile to run cargo fmt and clippy. - Implemented a rule to check staged file sizes.
- Added file size rule to push action to prevent pushing large files.
- Added a
-
Use constants for default file size limits
This commit introduces constants for default maximum file and repository sizes, and uses these constants in the relevant rules, improving maintainability and configurability.
Bug Fixes
- fix class of bugs which occurs on empty repo with no commit (repo.head())
added rule of remotes exists - fix clippy issue
- remove unnecessary check of unstaged files
- resolve nitpicks
- replace force with force_with_lease
- strip .git suffix from cloned repository folder names
Other
-
cargo sort
-
upgrade package
-
remove codecov integration
-
Improve large file detection and LFS suggestion
This commit fixes the following issues:- Fixes a bug where capture group 2 would error if it didn't exist.
- Changes the NoLargeFile rule level to "error" to ensure that large files are not committed.
- Enhances large file detection to consider both individual file size and total size of staged/modified files.
- Improves the suggestion messages for using Git LFS, including instructions for tracking files by extension or specific files.
- Adds automatic LFS tracking by extension to .gitattributes.
Refactor
- simplify error handling in GitStatus methods
Commit Statistics
- 26 commits contributed to the release over the course of 63 calendar days.
- 64 days passed between releases.
- 24 commits were understood as conventional.
- 1 unique issue was worked on: #7
Commit Details
view details
- #7
- Enhance SSH Key Handling and Git Push Functionality (71760eb)
- Uncategorized
- Git pull fix (e0cd371)
- Improve rule efficiency and add Rust 1.88 support (18ab7a4)
- Refactor to rig-core and validate commit message (886e05e)
- Cargo sort (7fa30f5)
- Simplify error handling in GitStatus methods (02492a4)
- Move few helper method to impl (8eae1be)
- Refactor error handling in Git event modules (9b9786e)
- IT setup (562f838)
- Fix class of bugs which occurs on empty repo with no commit (repo.head()) (af08bbb)
- Fix clippy issue (1fc4d3c)
- Upgrade package (a8b37f7)
- Unimplemented error on other subcommands (4435aba)
- Update LICENSE owners & lint (261ccfe)
- Remove codecov integration (2d435c1)
- Remove unnecessary check of unstaged files (1684ada)
- Resolve nitpicks (e543f19)
- Replace force with force_with_lease (2dea085)
- Strip .git suffix from cloned repository folder names (3670d97)
- Add library links (c4ce388)
- Refactor file size checks, add install target (dcd50c9)
- Improve large file detection and LFS suggestion (66531db)
- Add pre-commit hook and file size checks (ecbf6af)
- Use constants for default file size limits (c74a22c)
- Fix overide sole contributor values (3dbf649)
- Fix broken image in ARCHITECTURE.md (750b25f)