Ever wanted to know just how angry your commits are? Look no further
2020-05-13
A patch release to update the documentation and make docs.rs
build with all
features enabled.
fea9645fca
] - Update metadata for docs.rs build, release v0.8.1b2fc2fcd58
] - Update README, CHANGELOG2020-05-13
Entirely a behind the scenes release, this is so that downstream users can properly use the features that they require:
json
: Turns on Serde serialization of the repo datatable
: Turns on printing a prettified table to stdout
b05911cbd9
] - Release v0.8.0-lib8e4745f94b
] - Properly feature gate featuresf2ece8a634
] - Add READMEs for the individual workspace members5e8cf95e7a
] - Update CI, README for workspacea194a4d4d6
] - Fix CI error2c58f3939f
] - Split into workspacec44b1a63bc
] - Update changelog, installation instructions in README2020-05-12
This is a fairly large structural overhaul; mostly from having gotten a fair bit more experience programming in Rust. Notable changes in this release include:
On the other end binaries are now automatically created for all major platforms, tests are run on both stable and nightly and we've transitioned to using GitHub Actions instead of TravisCI.
9cf642e1cd
] - Update the documentation02836d39c8
] - Start splitting into features for the future2f1cae9bdf
] - Use GH Actions Badge instead of Travis6442b684f4
] - Update tests5b4b257197
] - Remove unused methodac6e891324
] - Fix total curse values being wrong7db0b523f8
] - Fix some words slipping through due to newlinesa0435c6b30
] - Move to TabWriter to print output6130210600
] - Move reading commits etc into Repo::new()d9f5571627
] - Restructure app a bit8358880979
] - Add test repo, start refactoring app5bf3d245bf
] - Remove indicatif, simply print a message and clear it41dc63dd0c
] - Move to GitHub Actions for CI, update license665eb3d536
] - Add totals to table, refactor type signatures slightly6116a1efa5
] - Remove curse struct, not needed anymoreb4d9536549
] - Remove wang and knob from wordlist, too common to be cursesc1870b7c50
] - Print everything as a table4dd3161415
] - Updated dependencies, fixed lints and refactored to work with new versions49e8156c19
] - A really, really hacky and stupid ugly way to print things in columns251852b97c
] - Add some documentationdd597771f6
] - Output information in tables instead of pretty printing it as a stringf1a541cb05
] - Add option to only display information about the repo, omitting authors59d99940bf
] - Add struct for curses2018-12-27
This release adds progress bars when running git-anger-management
. Useful when
parsing commits in larger repositories as this will show the elapsed time, time
remaining etc. The rest of the changes are behind-the-scenes stuff, updated
dependencies and updated to the latest Rust edition (2018).
53e31ad5a8
] - Update README to include asciinema "video" of output4f0a873733
] - Update CLI struct to use newer StructOpt changes27937aced4
] - Update to Rust 20183b441d666b
] - Update Travis configurationdb5c363fe5
] - Update dependencies544204594f
] - Remove version-sync from dev-dependenciese9348326cd
] - Add progress bars to CLI to track progressce0b7678ec
] - Move magic commands to below documentation, add a few more deny things2018-11-09
This release focuses on performance, even though it might be fairly minor. We switched the standard library version of HashMap and HashSet to the ones implemented in hashbrown, switched to using lazy_static
since it doesn't require unsafe
code anymore and switched to using LTO=thin
for releases, all giving us some minor speed boosts. You can see more in the git commits for the respective changes. We also added documentation and also display total counts of naughty words across all authors in the repository.
21fd6a5d33
] - Document all the things, ensure it will forever be documented4e2d1fa786
] - Make sure the version number is always up to date1b663923ad
] - Initial pass at writing documentation22c851a22c
] - Use LTO=thin when running a release version, even more minor speedupscde15774c3
] - Refactor whole thing into several files, library and binary99488db4f6
] - Use lazy_static to lazily create curses, minor speedups again6ce95329fc
] - Include Cargo.lock since this is a binary application92646d638c
] - Use hashbrown instead of std::{HashMap, HashSet} for minor speedupsb0284df3cf
] - Fix Clippy lintd2b66c882e
] - Show curses per repo and not just per authorb2c074db76
] - Change update_occurrence so that it doesn't copy strings4ae3a8235f
] - Use if let on both author and commit messagecb090b909d
] - Refactor adding commits to a vec to be in their own little scope0a77ad1a2f
] - Remove badge because crates.io doesn't work with travis.com2018-10-18
Thanks to everyone who chimed in on both reddit and on GitHub for helping! Especially Darren Tsung, whose pull request has shown me so much new stuff that I haven't learned yet. I've applied some of the suggestions from him making the code more readable and added a verbosity flag and removed some unneeded words from the word list.
fda389c4d9
] - Update version of git-anger-managemente29428bd5a
] - Update changelogd0ccfaff2c
] - Fix failing CI due to formatting19bb81d936
] - Add verbosity flag8be2eca194
] - Match against what directory to look from, neate1ab587700
] - More suggestions from #18f34037514
] - Minor removal of extra stupid words45c328ca9b
] - Use split_into_clean_words() from #1f255dca68c
] - Format code7d7c595c37
] - Minor cleanups and refactorings7d63834b84
] - Refactor author initializationd60bf41e32
] - Remove functions where you can directly update values6fabb676bb
] - We can just derive PartialEq, no need for our own implementationfeb2db45c3
] - Add a struct for the repo being counted585f7a1674
] - Fix wrong ordering on counting commits1ca19cbf2d
] - Implement Display for Author, add counters for commits/curses2018-10-15
Though this is the third minor release it's the first where I consider it to be an actual working program. It's silly and simple, but it works. See the README for more details.
9cd6f2fc08
] - Update README39eb4538d4
] - Format files and fix Clippy lintsa55ab9463f
] - Add structopt, you can now see commits in arbitrary directoriesc6c58342fb
] - Add an even worse example to the README [ci skip]c8f6f2baee
] - Add crates.io version [ci skip]03403bf6a2
] - Update README, set to version 0.2.04af31796e9
] - Create function to clean out characters from wordse06432cdd5
] - Format, run and apply Clippy02949f153a
] - Format code with rustfmt395a6171d8
] - Walk the commits, find the authors, see if they've been naughtyb4b14ec2e8
] - Create a bunch of methods for the Author struct4fcd0cafa0
] - Implement equality check between two authors2409bb20bb
] - Walk the commit tree for authors13df37c940
] - Implement Author::new() and derive debug3ee891179a
] - You know what, I'm silly, this function can be a single lineee47d63b9b
] - Add and test function that update an occurrence19dda6b122
] - Test filter_occurrences13bedeb584
] - Key in occurrences is now &str, create function to filter out wordsebc19cd855
] - Test naughty_word function, make it take a slice and not a Vec03e8d8186f
] - Refactor out loop into it's own naughty word function86849b2afb
] - Add license, rename, update Cargo.toml, silence warningsbdfa8d8b7f
] - Update .travis.yml file34f94a5d3c
] - Never, ever, write unsafe code8b36a76aca
] - Make CI fail on warnings00402fefb5
] - Add README [ci skip]8406e217b1
] - Add Travis CI configuration, .gitignore filee6dc313f84
] - Add a actual swear words list, not something I made up myselfd3c83b7b77
] - Add struct for Authors that curse06ea3b3a51
] - Format with rustfmt, filter out occurrences that never happen25ce3ad93b
] - Add structopt once we want to make this into a program52fb070a1f
] - Open the current directory as a git repository475c2efb63
] - Add a bunch of curse words6840a70e5c
] - Add git2 as a dependency5329b2e938
] - In the beginning there was darkness...