master Changelog 0.2 === - 0.2.5 Move some important utilities to GitVersion The same will probably be done with GitUtils#getRelativePath, moving those to file-utils when it is created. - 0.2.4 Additional code cleanup - 0.2.3 Fix access issues with GitVersion sealed permissions - 0.2.2 Recover with an empty GitVersion in non-strict mode - 0.2.1 Throw GitVersionException instead if not in a Git repository This allows this error to be recoverable from GradleUtils, since it is expected for GitVersionExceptions to be caught and potentially recoverable (i.e. using temporary fake versions such as 0.0.0), while IllegalArgumentExceptions should be dealt with accordingly. - 0.2.0 The config is now the source of truth This essentially boils down to the design change that .gitversion is no longer written to by Git Version, but instead should be updated and edited by project maintainers. I might make some sort of generator in the future. Additionally: - Switched from JSON to TOML for config parsing - Locked down all API, leaving only the essentials for interacting with Git Version (net.minecraftforge.gitver.api) - Use interfaces for utility classes (mainly because I'm lazy and don't have to write as many keywords) - JGit is no longer exposed API in Git Version - Added strict mode, to allow fake version numbers to be used if necessary - `@Override` on the record parameters for IDE linting - Fixed commit counting not working for root projects - Fixed various CLI issues - Fixed some tag filtering implementation details - Now using absolute files for everything, because path resolutions 0.1 === - 0.1.3 Add usage of GitVersion with git directory and path - 0.1.2 Add some Groovy-friendly setters Ideally I need to rewrite this part of the API a little bit. For now to get the ball rolling, this is fine. - 0.1.1 Update licenses - 0.1.0 Initial commit As of right now, GitVersion is mostly a port of the Git utilities from GradleUtils and SharedActions. This is to ensure that the versioning system is consistent across all Forge projects. While not directly credited as co-authors, GitVersion was built off of the work done in GradleUtils and SharedActions by LexManos and prior Forge contributors.