Skip to content
This repository has been archived by the owner on Sep 13, 2023. It is now read-only.

Releases: killercup/quicli

v0.4.0

06 Dec 20:04
Compare
Choose a tag to compare

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.

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

03 Oct 14:46
d33f696
Compare
Choose a tag to compare

Changed

  • Updated failure to 0.1.2 and use iter_cause() to silence deprecation warnings

0.3.0

10 Jun 11:03
d2ad07c
Compare
Choose a tag to compare

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.
  • 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
    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,
    }

0.2.0

11 Feb 09:35
Compare
Choose a tag to compare

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,

0.1.4

09 Feb 21:55
Compare
Choose a tag to compare

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

0.1.3 (yanked)

01 Feb 13:09
Compare
Choose a tag to compare
  • 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

0.1.2

28 Jan 20:06
cb962e8
Compare
Choose a tag to compare

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

0.1.1

22 Jan 10:11
Compare
Choose a tag to compare

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

0.1.0

22 Jan 10:11
Compare
Choose a tag to compare

Added

  • main! macro
  • Re-exports of failure, serde, structopt
  • Commit Message generator example
  • read/write file functions