All Versions
Latest Version
Avg Release Cycle
40 days
Latest Release
2024 days ago

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 in main functions. It uses the exitfailure 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> with Result<$X, Error>.

    • Structopt is no longer re-exported.

    To migrate from 0.3, please add structopt = "0.2" to your Cargo.toml, and add use 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 the main function.

    To migrate from 0.3, you should use a regular main function like fn main() -> CliResult { Ok(()) }. You'll need to return Ok(()) at the end to indicate the program was successful.

    To get access to your CLI arguments, use let args = Cli::from_args(); (adjust the Cli name with the name of your struct that derives StructOpt.)

    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 accessing args.verbosity.log_level().

  • v0.3.1 Changes

    October 03, 2018

    ๐Ÿ”„ Changed

    • โšก๏ธ Updated failure to 0.1.2 and use iter_cause() to silence deprecation warnings
  • v0.3.0 Changes

    June 10, 2018

    0.3.0 - 2018-06-10

    โž• Added

    • The full code of the example projects from the guides is now also available in
      the repository's examples/ 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 to prelude::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, }
  • 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,
  • v0.1.4 Changes

    February 09, 2018

    ๐Ÿ”„ Changed

    • โช Reverts "main! now uses the more permissive std::result::Result enum and std::error::Error trait." from 0.1.3 which broke existing code
  • v0.1.3 Changes

    February 01, 2018

    ๐Ÿ”„ Changed

    • main! now uses the more permissive std::result::Result enum and std::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]: