Releases: github/git-sizer
Releases · github/git-sizer
Release 1.5.0
The emphasis of this release is making it easy to select exactly what references should be included in the analysis, and also to output counts of references by type (e.g., branches vs. tags vs. pull request heads).
What's new:
- Allow several options to be set via gitconfig:
sizer.jsonVersion
sizer.threshold
sizer.names
sizer.progress
- Add more reference selection options:
--no-branches
(the opposite of--branches
)--no-tags
(the opposite of--tags
)--no-remotes
(the opposite of--remotes
)--notes
/--no-notes
--stash
/--no-stash
- Allow references to be selected by prefix or by regular expression:
--include=PREFIX
,--exclude=PREFIX
--include=/REGEXP/
,--exclude=/REGEXP/
- Make it possible to define groups of references via gitconfig:
refgroup.REFGROUP.name=NAME
refgroup.REFGROUP.include=PREFIX
refgroup.REFGROUP.includeRegexp=REGEXP
refgroup.REFGROUP.exclude=PREFIX
refgroup.REFGROUP.excludeRegexp=REGEXP
- Make it possible to include/exclude references by refgroup:
--include=@REFGROUP
,--exclude=@REFGROUP
- Create some predefined refgroups:
branches
,tags
,remotes
,pulls
,changes
,notes
, andstash
. - Include, in the output, the numbers of references in each defined refgroup, including the predefined refgroups like
branches
andtags
.
Internal changes:
- Use a new
pipe
package for managing command pipelines. This fixes some error-handling paths. - Set up an action to run a linter over the code.
- Clean up a bunch of linter-reported warnings.
- Set up automated testing under Windows.
- Build with the Go 1.17.3 toolchain.
Release 1.4.0
What's new:
- Add support for building on and for Darwin:arm64.
- Change
git-sizer --help
to return success. - Allow arbitrary references to be included/excluded from the analysis.
- Use a safer method to locate the
git
executable.
Internal changes:
- Upgrade to the Go 1.16 toolchain and the use of Go modules.
- Better decouple the test and production code.
Release 1.3.0
What's new:
- Suppress the warning that
info/grafts
is deprecated - Handle commits and tags that have no log messages
- Generate better JSON output (selected using
--json-version=2
). Add:- A prose description of each quantity
- The quantity's value and units
- The prefix style that should be used for the quantity
- The "reference value" against which the value is compared
- The "level of concern", as a floating-point number
- The OID and description of the object in question, when applicable
Release 1.2.0
Changes since release 1.1.0:
- Lower the threshold for the maximum tree size to 1000
- Mention
git-annex
as another possibility (along with Git-LFS) for dealing with large files - Add a
--version
option to display the version ofgit-sizer
- Don't consider a "maximum tag depth" of 1 to be concerning
Fixes:
- Disable grafts and replace references when analyzing repository
- Change the instructions to work even if
git-sizer
is not inPATH
Release 1.1.0
Changes since release 1.0.0:
- Don't count the root tree in
MaxPathDepth
(this probably agrees better with user expectations)
Fixes:
- Fix formatting of README
- Fix failure when started from a subdirectory within the working tree or from a submodule
- Specify the minimum required Git version (which is 2.6) in the README
- Prevent a panic that could occur if one annotated tag pointed at another and they were not processed in parent→child order
- Add more automated tests
Release 1.0.0
This is the first public release of git-sizer
.