All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add a GH action job to check release builds #529 (@mgrachev)
- Add new check: Value without quotes #521 (tabfugnic)
- Add
dprint
andlychee
actions + CI optimization #503 (@mgrachev) - Add
stale
action #483 (@mgrachev) - Add dependabot [#472] (@mgrachev)
- Fix release builds:
aarch64-unknown-linux-musl
andaarch64-pc-windows-msvc
#531 (@mgrachev) - Add tests to verify CLI application #490 (@mgrachev)
- Move CLI commands to separate functions #489 (@mgrachev)
- Refactor check ci with all-targets arg #488 (@shapurid)
- Refactor usage of fix and compare #486 (@shapurid)
- Update
clap
#485 (@mgrachev) - Update
criterion-compare
action #484 (@mgrachev) - Refactor skip_checks with use default iterator #482 (@shapurid)
- Update
cargo-deny
config #481 (@mgrachev) - Fix clippy warnings #480 (@shapurid)
- Update dependency:
update-infromer
[#470], #493 (@mgrachev)
v3.2.0 - 2022-01-24
- Add check for new version #454 (@mgrachev)
- Support of double-quoted multiline values #453 (@DDtKey)
- Support of single-quoted multiline values #450 (@DDtKey)
- Update
cargo-deny
config #459 (@mgrachev) - Update docker build #456 (@mgrachev)
- Update dependencies #455 (@mgrachev)
- Use derive (default) instead of impl #452 (@mgrachev)
- Get rid of
Rc<FileEntry>
inLineEntry
#448 (@mgrachev) - Replace
LineEntry
with line number inWarning
#447 (@mgrachev) - Tidy up imports #446 (@mgrachev)
- Add type alias for
Result
#445 (@mgrachev) - Change edition to 2021 #444 (@mgrachev)
- Display a message on installation error #443 (@mgrachev)
- Fix falling on checking multi-line values #462 (@DDtKey)
- Detect multi-line values if they contain a
=
sign #463 (@DDtKey)
v3.1.1 - 2021-08-25
- Fix clippy warnings #437 (@mgrachev)
- Use enum instead of string for lint's identity #427 (@fabricio7p)
- Get rid of the name field in checks and fixes structs #432 (@mgrachev)
- Replace filter with unwrap on flatten #434 (@Fcukit)
v3.1.0 - 2021-06-09
- Add fixer: Substitution Key #428 (@DDtKey)
- Refactor check unit tests #421 (@mc1098)
- Add missing integration tests #420 (@gosolivs)
- Add checker: Substitution Key #414 (@de-sh)
- Print a message if the amount of checks doesn't match the amount of fixes #415 (@marcel-baur)
- Print a message "Nothing to compare" #398 (@jakecorrenti)
- Add action-hadolint #400 (@iovanom)
- Add method to get substitution keys to LineEntry #391 (@zotho)
- Added a Fix Benchmark #399 (@a4blue)
- Add benchmark for the compare function #395 (@FrancisMurillo)
- Print a message when there are no input files for fix subcommand #394 (@mdycz)
- Print a message when there are no input files #392 (@jodli)
- Add a GitHub Action to compare benchmarks #378 (@mgrachev)
- Add benchmark for the check function #376 (@mgrachev)
- Refactor hard-coded mandatory fixer #413 (@akhtariev)
- Don't fix key order for substitution variables #406 (@stygian-coffee)
- Allow unordered keys for substitution variables #401 (@Ru5ty0ne)
- Replace
String
withInto<String>
inLineEntry::new
#404 (@miDeb) - Replace String on Into for all TestDir methods #397 (@ebobrow)
- Use Rc internally to reduce memory consumption #393 (@Tom01098)
- Use
actions-rs/clippy-check
to run clippy #375 (@mgrachev) - Remove
Result
from the return type #374 (@DDtKey) - Add
.bak
extension to backup files and don't lint backup files #367 (@mstruebing) - Add
.env
explanation #363 (@henryboisdequin) - Contemplate variables containing $ character #418 (@JuanMarchetto)
v3.0.0 - 2021-01-11
- Add
compare
-command [#282] (@mstruebing) - Add colored output feature and
--no-color
flag to disable colors #307 (@Nikhil0487) - Display linted files when run #311 (@Anthuang)
- Add export prefix support #340 (@skonik)
- Add colored output for compare command #356 (@mgrachev)
- Refactoring to get rid of unnecessary heap allocations and some improvements in API ergonomics #350 (@vbrandl)
- Add benchmark to README #351 (@mgrachev)
- Fix QuoteCharacterChecker to not raise warning when quote characters are used for values with whitespaces #349 (@sebastiantoh)
- Find all problems on the first run for
KeyWithoutValue
#348 (@vbrandl) - Add commitlint action #347 (@mgrachev)
- Add cargo-deny action #346 (@mgrachev)
- Remade flags to subcommands #342 (@mgrachev)
- Changed behavior of QuoteCharacterChecker for multiline values support #341 (@artem-russkikh)
- Make an output on-the-fly #336 (@DDtKey)
v2.2.1 - 2020-10-24
- Add
.gitattributes
to improvegit diff
#330 (@DDtKey) - Add action-yamllint #317 (@vk26)
- Add default exclude list #324 (@ametalon)
- Fix bug where symlinks would cycle in recursive mode #328 (@sonro)
- Fix linter rechecking files if they were listed more than once #327 (@Aashu23)
- Added docker build step to the CI pipeline #322 (@JoeAmedeo)
- Change soon deprecated
set-env
action #320 (@marcodenisi) - Fix docker release #319 (@mgrachev)
v2.2.0 - 2020-10-12
- Add integration test for autofix #309 (@evgeniy-r)
- Add action-misspell #304 (@PurpleMyst)
- Add action-shellcheck #303 (@amd-9)
- Add fixer: UnorderedKeyFixer #261 (@evgeniy-r)
- Add backup feature and
--no-backup
flag for fixers #272 (@baile320) - Add fixer: ExtraBlankLineFixer #260 (@diggymo)
- Add fixer: DuplicatedKeyFixer #270 (@utter-step)
- Add fixer: LeadingCharacter #259 (@baile320)
- Add fixer: IncorrectDelimiter #258 (@gillespiecd)
- Add support of comments to disable checks #239 (@mgrachev)
- Add autofix for EndingBlankLine #263 (@baile320)
- Add test for two keys that only differ in case #269 (@yanakad)
- Add autofix for TrailingWhitespace #255 (@gregcline)
- Add fixer: KeyWithoutValueFixer #254 (@unexge)
- Add fixer: QuoteCharacterFixer #257 (@lensvol)
- Add fixer: SpaceCharacterFixer #253 (@DDtKey)
- Add total problems to output and
--quiet
argument #242 (@wesleimp, @mgrachev) - Add autofix feature (for LowercaseKey check) #228 (@evgeniy-r)
- Add installation CI test for Windows (via
install.sh
) #235 (@DDtKey)
- Update docs #315 (@mgrachev)
- Remove
CARGO_TERM_COLOR
from the shellcheck workflow #313 (@MusiKid) - Add
check_output
helper function for integration tests #305 (@Anthuang) - Add an additional test for
LineEntry.get_value
#306 (@vvkpd) - Update args help #299 (@mgrachev)
- Move
remove_invalid_leading_chars_test
totests
module #298 (@mgrachev) - Add command to install latest version via
Homebrew
#297 (@mgrachev) - Add
CARGO_TERM_COLOR
env variable to the actions #296 (@skippednote) - Remove code related to "Fixed/Unfixed warnings" #289 (@mgrachev)
- Refactoring integration tests #288 (@mgrachev)
- Fix a bug with fixers spawning new warnings #287 (@evgeniy-r)
- Fix a bug with
UnorderedKeyChecker
and control comments #283 (@mgrachev) - Change the line grouping for the
UnorderedKey
checker #281 (@evgeniy-r) - Fix a bug with
ExtraBlankLineFixer
and control comments #279 (@mgrachev) - Move logic for creating
LineEntry
for tests tocommon
module #280 (@mgrachev) - Simplify UnorderedKeyChecker #277 (@mgrachev)
- Partition fixed/unfixed warnings #275 (@gillespiecd)
- Add missing test for IncorrectDelimiterChecker #273 (@mgrachev)
- Add *.env to gitignore #271 (@baile320)
- Actions uses cache@v2 #262 (@gillespiecd)
- Update logic for IncorrectDelimiterCheck #267 (@baile320)
- Add tests for default implementation of Fix::fix_warnings #266 (@kilotaras)
- Modularize common.rs #264 (@gillespiecd)
v2.1.0 - 2020-07-13
- Add install.sh for provide more short way to install #220 (@DDtKey)
- Add flag to enable recursive search for
.env
files #223 (@DDtKey) - Add docs #226 (@wesleimp)
- Add Windows publishing to release workflow #211 (@DDtKey)
- Add support canonicalize path for Windows #213 (@DDtKey)
- Add build and test steps running on Windows #216 (@mgrachev)
- Add the field with a checker name to Warning #234 (@evgeniy-r)
- Remove
FileEntry::get_content_by_path
in favor offs::read_to_string
#233 (@mstruebing) - Move show-checks flag to main.rs #227 (@mgrachev)
- Fix
total_lines
in some tests #224 (@DDtKey) - Consider blank lines in
UnorderedKey
check #221 (@mgrachev) - Optimize integration tests #218 (@mgrachev)
v2.0.0 - 2020-06-15
- Add check: TrailingWhitespace #190 (@pineapplethief)
- Add an argument to show available checks #202 (@DDtKey)
- Add the ability to skip checks #178 (@mgrachev)
- Add check: ExtraBlankLine #180 (@evgeniy-r)
- Add check: EndingBlankLine #170 (@evgeniy-r)
- Add check: Quote characters #174 (@sourabhmarathe)
- Github Actions: Add caching in the CI workflow #163 (@evgeniy-r)
- Add GitHub Workflow for AUR publishing #161 (@mstruebing)
- Enable checks for outside current directory #209 (@tisorlawan)
- Refactor
EndingBlankLineChecker
: change last line check logic (addtotal_lines
toFileEntry
) #207 (@DDtKey) - Fix check (for several successive blank lines): ExtraBlankLine #208 (@evgeniy-r)
- Replace
PathBuf
withFileEntry
forLineEntry
#203 (@mgrachev) - Replace
&'static str
with&'a str
forLeadingCharacterChecker
#200 (@rossjones) - Replace
&'static str
with&'a str
forQuoteCharacterChecker
#198 (@duncandean) - Replace
&'static str
with&'a str
forEndingBlankLineChecker
#197 (@rossjones) - Replace
String
with&'a str
forUnorderedKeyChecker
#196 (@k0va1) - Replace
String
with&'a str
forSpaceCharacterChecker
#195 (@k0va1) - Replace
String
with&'a str
forLowercaseKeyChecker
#194 (@tisorlawan) - Replace
&'static str
with&'a str
forExtraBlankLineChecker
#193 (@vishalsodani) - Replace
String
with&'a str
forDuplicatedKeyChecker
#192 (@iamsaquib) - Replace
String
with&'a str
forKeyWithoutValueChecker
#177 (@mgrachev) - Fix docker image #160 (@mgrachev)
- Replace
&'static str
with&'a str
forIncorrectDelimiterChecker
#191 (@DDtKey)
v1.2.0 - 2020-04-20
- SpaceCharacter: Show check name in the message #149 (@pineapplethief)
- LeadingCharacter: Show check name in message [#144] (@michaetto)
- Rename
UnorderedKeys
check to singularUnorderedKey
#147 (@pineapplethief) - KeyWithoutValue: Show check name in the message #139 (@harshu4)
- LowercaseKey: Show check name in the message #131 (@qelphybox)
- DuplicatedKey: Show check name in message #138 (@SaMuRa1ReM1X)
- IncorrectDelimiter: Show check name in the message #146 (@undef1nd)
- Replaced kcov with grcov in Github Actions [#143] (@pmk21)
- Streamline CLI tests and split into smaller files #137 (@sonro)
- UnorderedKey: Added check name to the message #140 (@pmk21)
- Add test coverage for CLI --exclude arguments #135 (@sonro)
- Renamed check SpacesAroundEqual to SpaceCharacter #134 (@SaMuRa1ReM1X)
- Rename check DuplicatedKeys to DuplicatedKey #133 (@sonro)
- Minimizing Rust Binary Size #132 (@akirill0v)
- Remove the unwrap method and use platform native OsString to fetch the information about current directory #115 (@kanapuli)
- Use HashSet for DuplicateKeyChecker #113 (@TamasFlorin)
- Use reference for the LineEntry as part of the run method for checks #111 (@TamasFlorin)
- New CLI API: Ability to check multiple directories #99 (@mgrachev)
- Add exit with the code 0 when there are no warnings #105 (@simPod)
- Use
get
method to get result of item inVec
and use ? operator unwrap the result if it'sSome
#108 (@boybird)
v1.1.2 - 2020-03-13
- Fix --path CLI parameter not canonizing filepaths from directory path passed as argument and not working as intended as a result #97 (@pineapplethief)
- Fix incorrect delimiter check for keys contains numeric #95 (@alter369)
- Add
LineEntry.is_empty_or_comment
method to DRY and simplifyCheck.run
#94 (@pineapplethief) - Refactor
Github Actions
and reduceDocker Image size
#90 (@Macbet) - Use
Line.get_key
in all checks #89 (@pineapplethief)
v1.1.1 - 2020-02-18
v1.1.0 - 2020-01-27
- Add check: Unordered keys #72 (@mgrachev)
- Add the ability to specify the directory where to run #65 (@Louis-Lesage)
- Add check: Duplicated keys #33 (@mstruebing)
- Add exit with the code 1 on warnings found #58 (@Louis-Lesage)
- Add exclude argument to exclude specific files #49 (@mstruebing)
- Add the ability to include files to check #48 (@mgrachev)
- Add check: Spaces around equal sign #35 (@artem-russkikh)
- Add skipping of commented or empty lines #37 (@mstruebing)
- Rename
leading_space
toleading_character
and check for allowed chars #63 (@mstruebing) - Remove multiple checks of the same file #62 (@mstruebing)
- Add mutability support for checks #52 (@mgrachev)
v1.0.0 - 2020-01-01
- Add check: Keys without values #22 (@mstruebing)
- Add check: Lowercase keys #21 (@qelphybox)
- Add check: Incorrect delimiter #20 (@sonro)
- Add
Display
trait forLineEntry
#19 (@mstruebing)