Releases: zcube/gitversion-rs
Releases · zcube/gitversion-rs
v0.2.4
Changelog
[0.2.4] - 2026-06-20
Bug Fixes
- ci: Bootstrap version via self-built binary instead of downloading previous release
- ci: Remove updatepackagefiles from build job, version managed by cargo-release
- dev: Harden gh-retag with crates.io check and robust tag handling
- dev: Use sed instead of grep -P for macOS compatibility in gh-retag
- dev: Use yq for Cargo.toml version parsing in gh-retag
- ci: Remove cargo publish from draft workflow, use release-publish.yml instead
Features
- dev: Add gh-publish recipe to publish GitHub draft release
- dev: Add gh-retag recipe to re-tag HEAD and re-trigger release CI
- release: Move crates.io publish to CI, add draft guard to gh-retag
Testing
- fixtures: Pin detached-HEAD "(no branch)" GitHubFlow version against golden
v0.2.0
Changelog
[0.2.0] - 2026-06-19
Documentation
- Translate all Korean source comments to English and rewrite README
[0.1.1] - 2026-06-17
Bug Fixes
- TrackReleaseBranches 증분 전략 수정 및 assembly-scheme·release 추적 픽스쳐 추가
- config: GitHubFlow 워크플로 main/unknown 브랜치 prevent-increment 갭 수정
- config: TrunkBased 워크플로 main/unknown prevent-increment 누락 수정
- mainline: 병합 브랜치 설정 증분 미반영 수정 및 TrunkBased 갭 픽스쳐 추가
- version: 숫자 pre-release 태그·when_branch_merged·label 갭 수정 및 픽스쳐 추가
- version: VersionSourceSemVer 정확한 계산 및 AlternativeSemanticVersion 조정 구현
- version: Version-in-branch-pattern 브랜치 separator split 구현
- version: 잘못된 next-version 파싱 실패 시 계산 에러 처리
- version: Assembly format 알 수 없는 토큰 에러 처리 및 캐시·부수효과 검증
- version: 잘못된 tag-prefix·bump-message 정규식 fail-fast 처리
- git: Detached HEAD 에서 유일 tip 브랜치를 찾아 사용
- config: Label sanitize 를 원본 SanitizeName 규칙으로 확장
- config: Next-version 정수 보정 구현(원본 setter 동작)
- config: Resolve_label 을 원본 BuildLabelPlaceholders+FormatWith 동작으로 재작성
- config: Label 의 source-branches 상속 구현(원본 BranchConfiguration.Inherit)
- config: Increment Inherit 미해결 시 임의 Patch fallback 제거(원본 None 귀결)
- version: 후보 없을 때 임의 0.0.0 안전망 제거(원본처럼 계산 에러)
- buildagent: CI 어댑터 5종 테스트 추가 및 출력 형식 원본 일치
- git: Detached HEAD 에서 reachable 브랜치로 current branch 결정
- config: Commit-message-incrementing 을 Disabled 로(self-versioning 오염 방지)
Documentation
- cache: Golden 테스트 캐시 미경유 명시 및 캐시 키 원본 일치 문서화
Features
- 워크플로 프리셋 갭 수정 및 ignore.paths 구현
- config: 설정 호환성 개선 2종
- merge: BitBucketPullv7 머지 포맷 추가 및 4-part SemVer 거부 명문화
- semver: SemanticVersionFormat(Strict/Loose) 전 파싱 경로 적용
- cli: --log 에 console 대상 지원(원본 /l console 대응)
- cli: --output 에 file 값 추가(원본 /output file 대응)
Refactoring
- Commit-message-convention(ConventionalCommits) 제거
Testing
- 픽스쳐 다양한 커밋 깊이·메시지 시나리오 추가 및 버그 수정
- 중복 태그·next-version 충돌·tag-prefix 혼재 픽스쳐 추가
- Semver·calculation·effective 단위 테스트 추가로 커버리지 향상
- 갭 검증 픽스쳐 4종 추가로 실제 기능 차이 없음 확인
- fixtures: 설정 분기 픽스쳐 4종 추가 및 fixtures.md 커버리지 문서 작성
- fixtures: 브랜치별 increment·deployment mode·assembly 분기 픽스쳐 5종 추가
- fixtures: Pre-release-weight·assembly-file-format·commit-message 분기 4종 추가
- fixtures: Label-number-pattern·increment Inherit 분기 2종 추가
- fixtures: Increment None·assembly-file-scheme None·label-number 커스텀 3종 추가
- fixtures: Assembly-file-scheme Major 등 설정 분기 3종 추가
- fixtures: Unknown 브랜치·브랜치별 deployment mode 조합 4종 추가
- fixtures: 어노테이티드 태그·+semver 변형 회귀 방지 픽스쳐 3종 추가
- fixtures: 커스텀 bump 메시지 패턴 픽스쳐 5종 추가(단일·복수 커밋)
- fixtures: Source-branches·is-source-branch-for increment 상속 검증 2종 추가
- fixtures: Mainline fallback 검토 및 mainline+custom 픽스쳐 추가
- fixtures: 설정 커버리지 매트릭스 완성 및 assembly-file PatchTag 픽스쳐 추가
- buildagent: Update-build-number 설정 반영 검증 및 false 시나리오 추가
- buildagent: EnvRun·TravisCi golden 추가 및 AppVeyor body 단위 테스트
- buildagent: GitLabCi·GitHubActions golden 추가로 15개 어댑터 전부 커버
- fixtures: Is-release/main-branch·branches.regex 커버 및 매트릭스 누락 키 보완
[0.1.0] - 2026-06-16
Bug Fixes
- Merge 메시지 전략의 base source 를 두 부모의 merge-base 로 수정
- 캐시 적중 로그를 debug 로 낮추고 로그를 stderr 로 고정
- I18n 테스트 로케일 경쟁 제거 및 MSRV 잡 정리
- Gitops 테스트에 로컬 git 신원 설정으로 브랜치 생성 실패 해결
Documentation
- Refs 전체 구현 재검토 및 CLI 호환 플래그 보강
- Https clone 의 credential helper / OS 키링 지원 명시
- 설치 가이드 추가 및 Homebrew 명령을 gitversion-rs 로 통일
- AGENTS.md 를 영문으로 재작성
Features
- Gitversion .NET을 Rust로 포팅 (gix/clap/ratatui/env_logger)
- 부분 반영 설정 7종 완전 반영 및 검증 시나리오 확장
- 빌드에이전트(CI) 통합 추가
- 파일 출력 기능 추가(AssemblyInfo, 프로젝트 파일, Wix)
- Mainline 전략(per-commit 증분 누적) 구현
- 프로젝트 파일을 실제 XML 파싱으로 갱신 + 다국어 패키지 매니페스트 지원
- 재검토로 발견한 갭 보강 — merge 포맷 8종, 라벨 env, source-branch 역매핑
- Mainline 의 merge 브랜치 순회 구현(first-parent + 증분 consolidation)
- 설정 검증 추가(branch regex 필수, source-branches 참조 검증)
- 버전 계산 결과 디스크 캐싱 구현
- 동적 원격 저장소 clone 구현(gix 순수 Rust)
- 동적 clone 의 SSH 전송 지원
- TUI 멀티탭 + 조작 기능 + 패닉 방어
- Conventional Commits 기반 증분 전략 추가
- 외부 명령 실행(exec) 훅 추가 — 버전 변수 수정 포함
- TUI 에 conventional-commit 설정·exec 훅 반영 및 편집
- TUI 설정 편집 + GitVersion.yml 영속화
- Mainline 극단 케이스 처리(inline 태그 확정 + 배포 모드별 pre-release)
- Rust-i18n 다국어화 및 README 4개 언어 지원
- CLI 헬프·about 다국어화(로케일 인식)
- 로그 파일 출력(--log/-l) 구현
Refactoring
- 전체를 gitversion-rs 로 리네이밍
Testing
- 빌드에이전트 출력 차등 테스트 추가
- 차등 테스트 fixture 생성기가 .NET GitVersion 을 자동 탐지
v0.1.1
Install
brew install zcube/tap/gitversion-rsOr download a prebuilt binary below. Archives are named gitversion-rs-v0.1.1-<target>.
Integrity verification
# checksums
sha256sum -c checksums.txt --ignore-missing
# Sigstore signature (cosign)
cosign verify-blob checksums.txt \
--bundle checksums.txt.sigstore.json \
--certificate-identity-regexp 'https://github.com/zcube/gitversion-rs/' \
--certificate-oidc-issuer https://token.actions.githubusercontent.comv0.1.0
Install
brew install zcube/tap/gitversion-rsOr download a prebuilt binary below. Archives are named gitversion-rs-v0.1.0-<target>.
Integrity verification
# checksums
sha256sum -c checksums.txt --ignore-missing
# Sigstore signature (cosign)
cosign verify-blob checksums.txt \
--bundle checksums.txt.sigstore.json \
--certificate-identity-regexp 'https://github.com/zcube/gitversion-rs/' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com