Changelog History
-
v0.4.0 Changes
December 06, 2018๐ This release is only compatible with Rust 1.31.0 and later.
โ Added
- The
CliResult
type alias was added as an easy to write type to be used as an return type inmain
functions. It uses theexitfailure
crate internally. - The
remove_dir_all
function that works as expected on all platforms.
โ Removed
- ๐ The
Result
type alias has been removed from the prelude.
To migrate from 0.3, please replace
Result<$X>
withResult<$X, Error>
.- Structopt is no longer re-exported.
To migrate from 0.3, please add
structopt = "0.2"
to yourCargo.toml
, and adduse structopt::StructOpt;
to your source files.- ๐ The
main!
macro has been removed. It was the cause of much confusion and was originally introduced to work around the lack of support for using the?
operator in themain
function.
To migrate from 0.3, you should use a regular
main
function likefn main() -> CliResult { Ok(()) }
. You'll need to returnOk(())
at the end to indicate the program was successful.To get access to your CLI arguments, use
let args = Cli::from_args();
(adjust theCli
name with the name of your struct that derivesStructOpt
.)To enable logging, it is easiest to add the line
args.verbosity.setup_env_logger(&env!("CARGO_PKG_NAME"))?;
right after the previous one loading the CLI arguments. You can also initialize a custom logger with the right log level directly by accessingargs.verbosity.log_level()
. - The
-
v0.3.1 Changes
October 03, 2018๐ Changed
- โก๏ธ Updated failure to 0.1.2 and use
iter_cause()
to silence deprecation warnings
- โก๏ธ Updated failure to 0.1.2 and use
-
v0.3.0 Changes
June 10, 20180.3.0 - 2018-06-10
โ Added
- The full code of the example projects from the guides is now also available in
the repository'sexamples/
directory. - 0๏ธโฃ A
full-throttle
feature was added and is enabled by default. Most
dependencies are now optional and only available when this feature (or the
dependency itself) is enabled. In practice, this means you can easily opt-out
0๏ธโฃ of default quicli features and only enable what you need.
๐ Fixed
- ๐ฆ Verbosity flag works for hyphenated package names
๐ Changed
prelude::LoggerBuiler
has been renamed toprelude::LoggerBuilder
๐จ Now prints all causes after printing error in
main!
โก๏ธ Update rayon to 1.0
We now use the new clap-verbosity-flag crate for adding that
-v
flag:#[derive(Debug, StructOpt)]struct Cli { #[structopt(flatten)] verbosity: Verbosity, }
- The full code of the example projects from the guides is now also available in
-
v0.2.0 Changes
February 11, 2018๐ Fixed
- The verbosity flag of the
main!
macro now actually works! (#45)
๐ Changed
โฌ๏ธ Upgrade structopt to 0.2:
- No need to add structopt to you dependencies anymore (just delete the line in the
Cargo.toml
) - Their handling of "occurrences of" parameters changed, so, for verbosity you now need to write:
#[structopt(long = "verbosity", short = "v", parse(from_occurrences))] verbosity: u8,
- No need to add structopt to you dependencies anymore (just delete the line in the
- The verbosity flag of the
-
v0.1.4 Changes
February 09, 2018๐ Changed
- โช Reverts "
main!
now uses the more permissivestd::result::Result
enum andstd::error::Error
trait." from 0.1.3 which broke existing code
- โช Reverts "
-
v0.1.3 Changes
February 01, 2018๐ Changed
main!
now uses the more permissivestd::result::Result
enum andstd::error::Error
trait.- ๐ Fixed a bunch of typos in the docs (thanks everyone!)
- Extended the Getting Started guide
-
v0.1.2 Changes
January 28, 2018โ Added
- A website with guides!
glob
create_dir
- Re-export Rayon traits
- Export
Result
type alias using failure's Error
โ Removed
- All the examples are now guides
๐ Changed
- ๐ฒ
main!
now sets up logging in all cases - ๐ Use buffered reading/writing in fs functions
-
v0.1.1 Changes
January 22, 2018โ Added
- ๐ฒ Re-export log macros
- Automatically set up env_logger in main!
- ๐ฒ
main!
parameter for Cli struct and its logging level field - ๐ Readme fixes
- ๐ฆ Expose fs module
-
v0.1.0 Changes
January 22, 2018โ Added
main!
macro- Re-exports of failure, serde, structopt
- Commit Message generator example
- read/write file functions
๐ [Unreleased]: https://github.com/killercup/quicli/compare/v0.4.0...HEAD