Commit graph

949 commits

Author SHA1 Message Date
Kevin K
faad83fbef fix: ArgRequiredElseHelp setting now takes precedence over missing required args
Closes #362
2015-12-17 23:51:57 -05:00
Homu
27872270db Auto merge of #358 - sru:test-multiple-values, r=Vinatorul
tests(multiple_values): move tests related to multiple values

#166.

Currently, there are four different error types that indicate the same thing: `TooManyArgs`, `TooManyValues`, `TooFewValues`, `WrongNumValues`. I wasn't sure which error they give. Therefore, I just checked that it gives error, but I do not check which error it gives.
2015-12-11 02:17:19 +09:00
Sung Rim Huh
389d14ab85 tests(multiple_values): move tests related to multiple values 2015-12-10 09:09:50 -08:00
Homu
d90b48befc Auto merge of #360 - sru:errors-wrong-num-values, r=Vinatorul
fix(errors): return correct error type in WrongNumValues error builder
2015-12-11 02:07:54 +09:00
Sung Rim Huh
5ba8ba9dcc fix(errors): return correct error type in WrongNumValues error builder 2015-12-10 08:40:24 -08:00
Homu
f2e4159831 Auto merge of #356 - sru:optional-yaml-example, r=kbknapp
examples(17_yaml): conditinonally compile 17_yaml example

`cargo test` automatically compiles (but not run) examples as well. So, `cargo test` without `--features yaml` flag aborts before running tests, which IMO quite unexpected.

On the other hand, those `#[cfg(...)]` may confuse users.
2015-12-09 15:22:06 +09:00
Sung Rim Huh
575de089a3 examples(17_yaml): conditinonally compile 17_yaml example 2015-12-08 21:10:00 -08:00
Homu
82f984504a Auto merge of #357 - kbknapp:updates, r=kbknapp
Updates
2015-12-08 22:05:21 +09:00
Kevin K
99cdebc23d imp: clippy improvements 2015-12-08 05:17:30 -05:00
Kevin K
6b54ba2e45 chore: updates deps 2015-12-08 03:05:19 -05:00
Homu
41bd23300d Auto merge of #349 - kbknapp:newlines, r=Vinatorul
Newlines
2015-11-21 02:42:49 +09:00
Kevin K
b9ebc59c23 chore: increase version 2015-11-20 08:32:46 -05:00
Kevin K
c4d2b17119 fix(Errors): fixes some instances when errors are missing a final newline 2015-11-20 08:23:39 -05:00
Homu
f5f6264263 Auto merge of #347 - rnelson:fix-typo, r=Vinatorul
docs(Dependencies Tree): fixed a typo
2015-11-17 01:39:00 +09:00
Ross Nelson
71ba2da3f6 docs(Dependencies Tree): fixed a typo 2015-11-16 08:45:20 -06:00
Homu
cd13c10fa4 Auto merge of #346 - kbknapp:issue-345, r=kbknapp
fix(Errors): fixes a compiling bug when built on Windows or without t…

…he color feature

Close #345
2015-11-15 00:12:36 +09:00
Kevin K
894ad01d68 chore: adds building without default features to simulate Windows builds 2015-11-14 05:05:04 -05:00
Kevin K
03d31e71a2 chore: increase version 2015-11-14 04:53:59 -05:00
Kevin K
a35f76346f fix(Errors): fixes a compiling bug when built on Windows or without the color feature
Close #345
2015-11-14 04:51:44 -05:00
Homu
71f6daff92 Auto merge of #344 - kbknapp:issue-343, r=Vinatorul
Issue 343
2015-11-14 06:07:59 +09:00
Kevin K
e81b733064 chore: increase version 2015-11-13 09:37:24 -05:00
Kevin K
f03b88a976 fix(Required Args): fixes a bug where required args are not correctly accounted for
Closes #343
2015-11-13 09:34:26 -05:00
Homu
31692c422c Auto merge of #342 - kbknapp:readme_bug, r=kbknapp
chore: fixes a readme typo
2015-11-13 20:32:01 +09:00
Homu
61a9c66cfb Auto merge of #341 - kbknapp:v1.5, r=Vinatorul
V1.5
2015-11-13 19:04:14 +09:00
Kevin K
b3aa117dae chore: fixes a readme typo 2015-11-13 01:31:11 -05:00
Kevin K
37bfffc375 chore: increase version 2015-11-12 23:01:13 -05:00
Kevin K
3359683380 refactor(Defaults): derives traits instead of manual implementation 2015-11-12 22:43:37 -05:00
Homu
e4182ad950 Auto merge of #339 - kbknapp:cleanup, r=Vinatorul
Huge Cleanup

Various cleanups and refactorings, the biggest of which (so far) is error handling, although I'm not 100% sure if I'm happy with the implementation yet or not. It's a big improvement from previous versions, but I think it can get better.

~~**DO NOT MERGE**~~
2015-11-13 06:29:41 +09:00
Kevin K
e7715f1df1 chore: adds perf graphs 2015-11-12 10:16:22 -05:00
Kevin K
8202c30a96 chore: adds benches to travis for nightly 2015-11-11 10:26:05 -05:00
Kevin K
8988853fb8 imp(ArgMatcher): huge refactor and deduplication of code
Tons of code has been moved into functions, deduplicated, made much
easier to read, maintain, and understand. Comments still need to be
added, but that will happen shortly. Modules have also been moved around
to follow Rust conventions and best practices.

All functionality remains exactly the same
2015-11-11 10:26:05 -05:00
Kevin K
5800cdec6d imp(Traits): refactoring some configuration into traits
There is now an AnyArg trait which lets you (clap dev, not consumer) get
info about certain args regardless of their type. Allows more generic
and de-duplicated code
2015-11-11 08:48:34 -05:00
Kevin K
1fdecfd519 style: moves mod names to follow rust standards 2015-11-09 07:17:23 -05:00
Kevin K
f5bfb41bf1 refactor: moves value validation out of App and into Option Args 2015-11-09 03:49:20 -05:00
Kevin K
1b69ca4bee refactor: moves code for ergonomics 2015-11-09 03:48:49 -05:00
Kevin K
bf4d8417b8 style: rustfmt run 2015-11-09 02:22:12 -05:00
Kevin K
c6858f7875 fix: fixes a bug with required positional args in usage strings 2015-11-09 02:01:21 -05:00
Kevin K
447786ed8a refactor(Usage): fixes some error handling duplication 2015-11-08 09:55:02 -05:00
Kevin K
a4ef0fab73 docs(FAQ): updates readme with slight changes to FAQ 2015-11-08 09:02:08 -05:00
Kevin K
ddc650ea87 tests: adds diff to tests to find errors 2015-11-08 03:50:33 -05:00
Kevin K
bc4495b32e perf(App): more BTreeMap->Vec, Opts and SubCmds 2015-11-08 03:48:13 -05:00
Kevin K
d357640fab perf(App): changes flags BTreeMap->Vec 2015-11-08 01:50:12 -05:00
Kevin K
78971fd68d perf(App): removed unneeded BTreeMap 2015-11-08 01:08:06 -05:00
Kevin K
64b921d087 perf(App): changes BTreeMap to VecMap in some instances 2015-11-08 01:01:11 -05:00
Kevin K
111745c937 chore: updates clippy 2015-11-07 00:08:15 -05:00
Kevin K
2b6d1dc3c3 chore: dep update 2015-11-04 03:00:53 -05:00
Kevin K
cdc29175bc imp: massive errors overhaul 2015-11-03 08:26:17 -05:00
Kevin K
ea4740ca3b tests(Errors): improves error testing 2015-11-03 08:26:17 -05:00
Homu
e70b289c5e Auto merge of #338 - kbknapp:issue-335, r=Vinatorul
tests(Exit Codes): adds some formatting and exit code testing

Relates to #335 

Notably missing thing such as testing `AppSettings`
2015-11-03 20:24:58 +09:00
Homu
c070bc7c69 Auto merge of #337 - kbknapp:1.4.7, r=kbknapp
chore: increase version
2015-11-03 17:35:30 +09:00