From 37bfffc3753fc71decf46e4ea4f95d0bbf412489 Mon Sep 17 00:00:00 2001 From: Kevin K Date: Thu, 12 Nov 2015 23:01:13 -0500 Subject: [PATCH] chore: increase version --- CHANGELOG.md | 30 ++++++++++++++++++++++++++++++ Cargo.toml | 2 +- README.md | 25 ++++++++----------------- clap.png | Bin 18130 -> 0 bytes clap_dep_graph.png | Bin 0 -> 33798 bytes 5 files changed, 39 insertions(+), 18 deletions(-) delete mode 100644 clap.png create mode 100644 clap_dep_graph.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 4eaed546..fe7a3372 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,33 @@ + +## v1.5.0 (2015-11-13) + + +#### Bug Fixes + +* fixes a bug with required positional args in usage strings ([c6858f78](https://github.com/kbknapp/clap-rs/commit/c6858f78755f8e860204323c828c8355a066dc83)) + +#### Documentation + +* **FAQ:** updates readme with slight changes to FAQ ([a4ef0fab](https://github.com/kbknapp/clap-rs/commit/a4ef0fab73c8dc68f1b138965d1340459c113398)) + +#### Improvements + +* massive errors overhaul ([cdc29175](https://github.com/kbknapp/clap-rs/commit/cdc29175bc9c53e5b4aec86cbc04c1743154dae6)) +* **ArgMatcher:** huge refactor and deduplication of code ([8988853f](https://github.com/kbknapp/clap-rs/commit/8988853fb8825e8f841fde349834cc12cdbad081)) +* **Errors:** errors have been vastly improved ([e59bc0c1](https://github.com/kbknapp/clap-rs/commit/e59bc0c16046db156a88ba71a037db05028e995c)) +* **Traits:** refactoring some configuration into traits ([5800cdec](https://github.com/kbknapp/clap-rs/commit/5800cdec6dce3def4242b9f7bd136308afb19685)) + +#### Performance + +* **App:** + * more BTreeMap->Vec, Opts and SubCmds ([bc4495b3](https://github.com/kbknapp/clap-rs/commit/bc4495b32ec752b6c4b29719e831c043ef2a26ce)) + * changes flags BTreeMap->Vec ([d357640f](https://github.com/kbknapp/clap-rs/commit/d357640fab55e5964fe83efc3c771e53aa3222fd)) + * removed unneeded BTreeMap ([78971fd6](https://github.com/kbknapp/clap-rs/commit/78971fd68d7dc5c8e6811b4520cdc54e4188f733)) + * changes BTreeMap to VecMap in some instances ([64b921d0](https://github.com/kbknapp/clap-rs/commit/64b921d087fdd03775c95ba0bcf65d3f5d36f812)) + * removed excess clones ([ec0089d4](https://github.com/kbknapp/clap-rs/commit/ec0089d42ed715d293fb668d3a90b0db0aa3ec39)) + + + ### v1.4.7 (2015-11-03) diff --git a/Cargo.toml b/Cargo.toml index c50e5c10..8e534607 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "clap" -version = "1.4.7" +version = "1.5.0" authors = ["Kevin K. "] exclude = ["examples/*", "clap-tests/*", "tests/*", "benches/*", "*.png", "clap-perf/*"] description = "A simple to use, efficient, and full featured Command Line Argument Parser" diff --git a/README.md b/README.md index 52323411..a92cce46 100644 --- a/README.md +++ b/README.md @@ -33,22 +33,13 @@ Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) ## What's New -If you're already familiar with `clap` but just want to see some new highlights as of **1.4.6** +If you're already familiar with `clap` but just want to see some new highlights as of **1.5** -* **Major Bug Fixes in 1.4.6** We recommend everyone upgrade as soon as possible. See the [the changelog](https://github.com/kbknapp/clap-rs/blob/master/CHANGELOG.md) for details. -* Using `get_matches_safe_*` family of methods no longer exits the process when help or version is displayed, instead it returns an `ClapError` with an `error_type` field set to `ClapErrorType::HelpDisplayed` or `ClapErrorType::VersionDisplayed` respectively. You must then call `ClapError::exit` or `std::process::exit` giving you the control. -* Allows parsing without a binary name preceding (useful for daemon modes and interactive CLIs) -* `-Lvalue` style options are **now supported**! (i.e. `-L` is the short, and `value` is the value being passed. Equivalent to `-L value`). This can be combined with flag expansion. Example: `-lF2` could be parsed as `-l -F 2` where `-l` is a flag and `-F` is an option that takes a number. -* There is a **new opt-in setting** (`AppSettings::TrailingVarArg`) to allow the final positional argument to be a vararg and have `clap` not interpret the remaining arguments (i.e. useful when final argument should be a list of arguments for another command or process) -* You can now access values from an argument in a group via the group name, instead of having to check each arg name individually to find out which one was used. The same applies for checking if an arg from a group `is_present()` -* You now have the option to **not** `panic!` on invalid unicode. The `*_safe()` family of `get_matches` will return an `Err` with `ClapErrorType::InvalidUnicode`. -* You have the option to get lossy unicode values. By using the `*_lossy()` versions of the `get_matches` family of methods all invalid unicode will be replaced with `U+FFFD` and **not** `panic!` or fail parsing. -* Some documentation improvements -* A new macro has been designed by [james-darkfox](https://github.com/james-darkfox) to give the simplicity of `from_usage` methods, but the performance of the Builder Pattern. Huge thanks to him! Fair warning this is very new, and may still have some kinks and tweaks left as we experiment ;) -* Users can now print the help message programmatically using `App::write_help(io::Write)` and `App::print_help()`. -* Users can now simply print the error message to `stderr` and exit gracefully programmatically using `ClapError::exit()` -* You can now get argument matches **without** consuming your `App` struct using `App::get_matches_from_safe_borrow()` -* Some other minor bug fixes and improvements +* **huge performance boost** - parsing speed is literally half of what it used to be (and it was already fast). The following graph shows parsing speed, **to include** building the parser of valid arguments for a complex scenario with many arguments, relationships, and other restictions was parsed in ~10,000ns (~0.01 miliseconds) +!(clap Performance Graph)[https://github.com/kbknapp/clap-rs/blob/master/clap-perf/clap_perf.png] +* major refactor of code to de-dupilicate and reduce errors. This is a massive improvement and should make contributing to this project much easier. +* massive errors overhaul thanks in part to the excellent read on [Error Handling](https://doc.rust-lang.org/book/error-handling.html) by [BurntSushi](https://github.com/burntsushi) +* other minor bug fixes and improvements For full details, see [CHANGELOG.md](https://github.com/kbknapp/clap-rs/blob/master/CHANGELOG.md) @@ -515,12 +506,12 @@ The following is a list of optional `clap` features: ### Dependencies Tree -The following graphic depicts `clap`s dependency graph. +The following graphic depicts `clap`s dependency graph (generated using [cargo-grpah](https://github.com/kbknapp/cargo-graph)). * **Dashed** Line: Optional dependency * **Red** Color: **NOT** included by default (must use cargo `features` to enable) -![clap dependencies](clap.png) +![clap dependencies](clap_dep_graph.png) ### More Information diff --git a/clap.png b/clap.png deleted file mode 100644 index 398515d6eb16655a0a0d77505759b20222606c7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18130 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 K*)nO<;Qs|G1@%b) diff --git a/clap_dep_graph.png b/clap_dep_graph.png new file mode 100644 index 0000000000000000000000000000000000000000..de9e2af35fedb54b1b436118dd28de271769d92e GIT binary patch literal 33798 zcmZ_$2RN4f{|63Vwv0%UnT(2(5mLzrMM*;{WmA$BN%jgwMx-PPQK-zy-kWU6D0>z{ zvgiMG-oM}Pd7k4rj(^|dzQ5hLT-SMiKA-pdwce-yg>$Nmbewb~5{dDνcgM81T- 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