Releases: houseabsolute/precious
v0.7.3
- The generated config for Go projects no longer uses
golangci-lint
for code formatting. Instead, it is configured to usegofumpt
. - The generated config for
golangci-lint
creates a config file named.golangci.yml
file instead ofgolangci-lint.yml
. This removes the need to pass the-C
file togolangci-lint
. - The generated config for Go projects does enable
golangci-lint
as a tidier with its--fix
flag. This is useful for applying fixes from various linters.
v0.7.2
- Added
fix
as an alias for thetidy
command. Implemented by @mmcclimon (Michael McClimon). GH #70. - Added
shell
andtoml
components forprecious config --component ...
options.
v0.7.1
- Added an
--auto
flag forprecious config init
. If this is specified thenprecious
will look at all the files in your project and generate config based on the types of files it finds. Suggested by John Vandenberg (@jayvdb). GH #67. - Fixed a bug when running
precious config init
. The--component
argument was not required, when it should require at least one. If none were given it would create an emptyprecious.toml
file. Reported by John Vandenberg (@jayvdb). GH #67. - Changed how
precious config init
generates config for Perl. Theperlimports
command is now the first one in the generated config. This is necessary becauseperlimports
may change the code in a way thatperltidy
will then change further. Runningperlimports
afterperltidy
meant that tidying Perl code could leave the code in a state where it fails linting checks. Implemented by Olaf Alders (@oalders). GH #68. - Added/cleaned up some debugging output for the new
invoke.per-x-or-y
options. Fixes GH #65 and #66.
v0.7.0
-
Added three new experimental
invoke
options:invoke.per-file-or-dir = n
invoke.per-file-or-once = n
invoke.per-dir-or-once = n
These will run the command in different ways depending on how many files or directories match the command's config. This lets you pick the fastest way to run commands that can be invoked in more than one way. For example, if you're in a large repo and have only made changes to files in a few directories,
golangci-lint
is much faster when run once per directory. But once the number of directories is large enough, it's faster to just run it once on the whole repo. -
All config keys have been changed to use dashes instead of underscores, so for example
path_args
is notpath-args
andok_exit_codes
is nowok-exit-codes
. However, the names with underscores will continue to work. I do not intend to ever deprecate the underscore version. They simply will not be used in the docs and examples. -
Fixed cases where
precious
would exit with an exit code of1
on errors that were not linting failures. Going forward, an exit code of1
should only be used for linting failures. -
precious
will now emit a warning if your config file uses any of the deprecated config keys,run_mode
andchdir
. Support for these options will be removed entirely in a future release.
v0.6.4
v0.6.3
- When running
precious config init
and asking for the Perl or Rust components,precious
would tell you to installomegasort
even though the generated config did not use it. Reported by Olaf Alders. GH #61. - If precious was run with
--staged
and a file that was staged had been deleted from the filesystem but not removed withgit rm
, it would exit with a very unhelpful error likeError: No such file or directory (os error 2)
, without any indication of what the file was. Now it will simply ignore such a deleted file, though it will log a debug-level message saying that the file is being ignored. Fixes #63.
v0.6.2
v0.6.1
- The
dev/bin/check-go-mod.sh
script created when runningprecious config init --component go
is now executable. Reported by Olaf Olders. GH #56. - The generated config for Go now excludes the
vendor
directory for all commands. Implemented by Olaf Alders. GH #57. - When running
precious config init
, it would overwrite an existing file if it was given a--path
argument, but not if the argument was left unset. Now it will always error out instead of overwriting an existing file. Reported by Olaf Alders. GH #58. - When running
precious config init --component go
agolangci-lint.yml
file will also be created. GH #59. - As of this release there are no longer binaries built for MIPS on Linux. These targets have been demoted to tier 3 support by the Rust compiler.