Commit graph

3782 commits

Author SHA1 Message Date
Kevin K
d77048efb1 feat(usage): implement smart usage strings on errors
Closes #88
2015-04-30 12:12:44 -04:00
Kevin K
0cc2f69839 feat(arg): allow other types besides Vec for multiple value settings
Breaking Change

Instead of requiring a Vec<&str> for various Arg::*_all() and
Arg::possible_values() methods this
commit now requires a generic IntoIterator<Item=AsRef<str>> which allows
things such as constant arrays. This change requires that any
Arg::*_all() methods be changed from vec!["val", "val"] -> let vals =
["val", "val"]; some_arg.possible_values(&vals) (or vals.iter()).

Closes #87
2015-04-29 17:52:13 -04:00
Kevin K
9e6af520a3 chore(clap): increase version 2015-04-28 23:49:59 -04:00
Kevin K
1c92ed0e72 chore(docs): change makefile -> travis auto cargo doc and upload 2015-04-28 23:18:08 -04:00
Kevin K
79f7ecceaa chore(Travis-CI): update travis script to build and publish docs on successful beta build 2015-04-28 22:43:20 -04:00
Kevin K
ad4e545107 fix(from_usage): removes bug where usage strings have no help text
Creating arguments from usage strings with no help text previously
dropped the final character i.e. --flags -> --flag
This commit fixes that issue by testing if we are at the end of the
string

Closes #83
2015-04-28 22:11:20 -04:00
Kevin K.
06304bf9f5 docs(README.md): fix typos 2015-04-27 23:25:39 -04:00
Kevin K
550a2f3a05 chore(docs): rebuild docs with nightly 2015-04-27 23:20:11 -04:00
Kevin K
39d744cefd docs(groups): adds examples of ArgGroup usage 2015-04-27 23:18:58 -04:00
Kevin K
60c1b307ac docs(groups): adds documentation for ArgGroups 2015-04-27 22:52:50 -04:00
Kevin K
9a47a59fe3 chore(.travil.yml): adds support for building on rust nightly and stable 2015-04-27 21:41:17 -04:00
Kevin K
784b8c7254 chore(clap): increase version 2015-04-27 00:59:58 -04:00
Kevin K
1209a15f51 chore(docs): rebuild docs with nightly rustdoc 2015-04-27 00:57:09 -04:00
Kevin K.
c5122ae2df Merge pull request #79 from kbknapp/groups
Adds support for argument groups and bug fixes
2015-04-27 00:56:08 -04:00
Kevin K
349927bfb1 tests(run_test.py): update tests to new error msgs 2015-04-27 00:54:21 -04:00
Kevin K
4bb4c3cc07 fix(RequiredArgs): required by default args should no longer be required when their exclusions are present 2015-04-27 00:53:12 -04:00
Kevin K
09eb4d9893 feat(ArgGroups): add ability to create arg groups 2015-04-27 00:53:12 -04:00
Kevin K
cfffb45aa4 style(clap): clean commented out code 2015-04-25 23:55:42 -04:00
Kevin K
17e3f141aa refactor(args.rs): deprecate mutually_excludes* for conflicts_with* methods 2015-04-25 22:59:02 -04:00
Kevin K
ac161fa3f4 tests(run_tests.py): update for new help format 2015-04-25 22:24:06 -04:00
Kevin K
1e25abfc36 fix(help): change long help --long=long -> --long <long> 2015-04-25 22:19:09 -04:00
Kevin K
050d3de512 chore(clog): add .clog.toml file for processing changelog 2015-04-25 18:06:23 -04:00
Kevin K
fd61615d1a perf(matchedargs): remove unused vars and String->&str
This commit increases the performance a bit by using string slices
instead of owned strings. The trade off is that code previously written
to handle all the argument parsing in a speratate function and return
only the ArgMatches must be re-written to add a lifetime specifier:

Old code 'fn handle_args<'a>() -> ArgMatches<'a>' needs another lifetime
specifier added, so now 'fn handle_args<'a, 'b>() -> ArgMatches<'a, 'b>'

BREAKING CHANGE
2015-04-25 11:12:07 -04:00
Kevin K
258c97867d chore(clap): increase version 2015-04-22 16:30:45 -04:00
Kevin K
71f60cc223 chore(docs): rebuild docs with nightly rustdoc 2015-04-22 16:14:27 -04:00
Kevin K
b4758fec6f tests(main.rs): change version to new macros 2015-04-22 16:13:25 -04:00
Kevin K
b76129e9b7 fix(from_usage): fix bug causing args to not be required 2015-04-22 16:08:34 -04:00
Kevin K
d7c724dc65 tests(usage): fix typo in test variable names 2015-04-22 11:23:15 -04:00
Kevin K
dc59b12eb0 refactor(app.rs): rename more_help()->after_help() 2015-04-20 19:55:09 -04:00
Kevin K
65cc259e45 feat(apps): add ability to display additional help info after auto-gen'ed help msg 2015-04-19 20:19:21 -04:00
Kevin K.
e9e774558e docs(README.md): change crates.io badge 2015-04-19 19:20:47 -04:00
Kevin K.
0c9eddfaf2 docs(README.md): add license badge 2015-04-19 16:55:58 -04:00
Kevin K
bba6196fdc chore(clap): increase version 2015-04-19 14:42:41 -04:00
Kevin K
3bb4701b3b docs(clap): rebuild docs with new features 2015-04-19 14:40:25 -04:00
Kevin K
bb9d0c377e tests(from_usage): add tests for usage strings with tabs 2015-04-19 14:31:56 -04:00
Kevin K
4fd44181d5 fix(from_usage): tabs and spaces should be treated equally 2015-04-19 14:27:05 -04:00
Kevin K
c630969aa3 feat(macros.rs): add macro to get version from Cargo.toml 2015-04-19 14:22:03 -04:00
Kevin K
d7bf519acf chore(clap): increase version 2015-04-18 22:32:29 -04:00
Kevin K
8cb133bf73 chore(docs): rebuild docs 2015-04-18 22:30:32 -04:00
Kevin K
86e4075eb1 fix(macros.rs): fix use statements for trait impls 2015-04-18 22:23:18 -04:00
Kevin K
e7f77353b9 refactor(macros.rs): improve trait implmentation readability 2015-04-18 22:20:43 -04:00
Kevin K
31b476ca99 refactor(arg.rs): remove deprecation warnings for stable rustc 2015-04-18 13:37:01 -04:00
Kevin K
bd10dadebe chore(docs): rebuild docs after refactor 2015-04-17 17:19:10 -04:00
Kevin K.
3a1daaf957 Merge pull request #77 from kbknapp/cleanup
refactor(clap): restructure matched args for performance and dedup
2015-04-17 16:18:05 -04:00
Kevin K
14d810d072 refactor(clap): restructure matched args for performance and deduplication 2015-04-17 17:11:10 -04:00
Kevin K
f0eea9da43 chore(clap): increase version 2015-04-17 11:23:19 -04:00
Kevin K
02aa217612 chore(docs): rebuild documentation 2015-04-17 11:21:29 -04:00
Kevin K.
35d40d97b7 docs(README.md): change section of typed values to add arg_enum! macro 2015-04-17 10:46:15 -04:00
Kevin K.
489be5427e Merge pull request #76 from kbknapp/enums
feat(macros): add ability to create enums pub or priv with derives
2015-04-17 10:21:46 -04:00
Kevin K
2c499f8015 feat(macros): add ability to create enums pub or priv with derives
Err type of FromStr trait changed from &'a str->String in order
to allow showing valid values on failed parse

Breaking Change
2015-04-17 11:17:19 -04:00