Commit 98d200bd8b64a6a5d1aa81b7bc9175a951c591c8

Authored by Henry Schreiner
Committed by Henry Schreiner
1 parent a393e353

chore: move to main

.appveyor.yml
... ... @@ -2,7 +2,7 @@ version: 2.1.1.{build}
2 2  
3 3 branches:
4 4 only:
5   - - master
  5 + - main
6 6 - v1
7 7  
8 8 install:
... ...
.github/workflows/build.yml
... ... @@ -2,7 +2,6 @@ name: Build
2 2 on:
3 3 push:
4 4 branches:
5   - - master
6 5 - main
7 6 - v*
8 7 tags:
... ...
.github/workflows/tests.yml
... ... @@ -2,7 +2,6 @@ name: Tests
2 2 on:
3 3 push:
4 4 branches:
5   - - master
6 5 - main
7 6 - v*
8 7 pull_request:
... ...
.travis.yml
... ... @@ -6,7 +6,7 @@ dist: trusty
6 6 # Include tags starting with v and a digit
7 7 branches:
8 8 only:
9   - - master
  9 + - main
10 10 - /^v\d/
11 11  
12 12 cache:
... ... @@ -104,7 +104,7 @@ deploy:
104 104 keep_history: false
105 105 local_dir: ${TRAVIS_BUILD_DIR}/html
106 106 on:
107   - branch: master
  107 + branch: main
108 108 condition: "$DEPLOY_MAT = yes"
109 109  
110 110 notifications:
... ...
CHANGELOG.md
... ... @@ -2,6 +2,7 @@
2 2  
3 3 ## WIP
4 4  
  5 +* Use `main` for the main branch of the repository [#657][]
5 6 * Bugfix(cmake): Enforce at least C++11 when using CMake target [#656][]
6 7 * Build: Don't run doxygen and CTest includes if a submodule [#656][]
7 8 * Build: Avoid a warning on CMake 3.22 [#656][]
... ... @@ -9,6 +10,7 @@
9 10  
10 11 [#653]: https://github.com/CLIUtils/CLI11/pull/653
11 12 [#656]: https://github.com/CLIUtils/CLI11/pull/656
  13 +[#657]: https://github.com/CLIUtils/CLI11/pull/657
12 14  
13 15 ## Version 2.1: Names and callbacks
14 16  
... ... @@ -624,7 +626,7 @@ This release focused on cleaning up the most exotic compiler warnings, fixing a
624 626  
625 627 ## Version 0.8: CLIUtils
626 628  
627   -This release moved the repository to the CLIUtils master organization.
  629 +This release moved the repository to the CLIUtils main organization.
628 630  
629 631 * Moved to CLIUtils on GitHub
630 632 * Fixed docs build and a few links
... ... @@ -659,7 +661,7 @@ Lots of cleanup and docs additions made it into this release. Parsing is simpler
659 661 * `->ignore_case()` added to subcommands, options, and `add_set_ignore_case`. Subcommands inherit setting from parent App on creation.
660 662 * Subcommands now can be "chained", that is, left over arguments can now include subcommands that then get parsed. Subcommands are now a list (`get_subcommands`). Added `got_subcommand(App_or_name)` to check for subcommands.
661 663 * Added `.allow_extras()` to disable error on failure. Parse returns a vector of leftover options. Renamed error to `ExtrasError`, and now triggers on extra options too.
662   -* Added `require_subcommand` to `App`, to simplify forcing subcommands. Do **not** do `add_subcommand()->require_subcommand`, since that is the subcommand, not the master `App`.
  664 +* Added `require_subcommand` to `App`, to simplify forcing subcommands. Do **not** do `add_subcommand()->require_subcommand`, since that is the subcommand, not the main `App`.
663 665 * Added printout of ini file text given parsed options, skips flags.
664 666 * Support for quotes and spaces in ini files
665 667 * Fixes to allow support for Windows (added Appveyor) (Uses `-`, not `/` syntax)
... ...
README.md
... ... @@ -57,7 +57,7 @@ CLI11 is a command line parser for C++11 and beyond that provides a rich feature
57 57 * [Contribute](#contribute)
58 58 * [License](#license)
59 59  
60   -Features that were added in the last released major version are marked with "๐Ÿ†•". Features only available in master are marked with "๐Ÿšง".
  60 +Features that were added in the last released major version are marked with "๐Ÿ†•". Features only available in main are marked with "๐Ÿšง".
61 61  
62 62 ## Background
63 63  
... ... @@ -604,7 +604,7 @@ There are several options that are supported on the main app and subcommands and
604 604 * `.got_subcommand(App_or_name)`: Check to see if a subcommand was received on the command line.
605 605 * `.get_subcommands(filter)`: The list of subcommands that match a particular filter function.
606 606 * `.add_option_group(name="", description="")`: Add an [option group](#option-groups) to an App, an option group is specialized subcommand intended for containing groups of options or other groups for controlling how options interact.
607   -* `.get_parent()`: Get the parent App or `nullptr` if called on master App.
  607 +* `.get_parent()`: Get the parent App or `nullptr` if called on main App.
608 608 * `.get_option(name)`: Get an option pointer by option name will throw if the specified option is not available, nameless subcommands are also searched
609 609 * `.get_option_no_throw(name)`: Get an option pointer by option name. This function will return a `nullptr` instead of throwing if the option is not available.
610 610 * `.get_options(filter)`: Get the list of all defined option pointers (useful for processing the app for custom output formats).
... ... @@ -616,7 +616,7 @@ There are several options that are supported on the main app and subcommands and
616 616 * `.parsed()`: True if this subcommand was given on the command line.
617 617 * `.count()`: Returns the number of times the subcommand was called.
618 618 * `.count(option_name)`: Returns the number of times a particular option was called.
619   -* `.count_all()`: Returns the total number of arguments a particular subcommand processed, on the master App it returns the total number of processed commands.
  619 +* `.count_all()`: Returns the total number of arguments a particular subcommand processed, on the main App it returns the total number of processed commands.
620 620 * `.name(name)`: Add or change the name.
621 621 * `.callback(void() function)`: Set the callback for an app. Either sets the `pre_parse_callback` or the `final_callback` depending on the value of `immediate_callback`. See [Subcommand callbacks](#callbacks) for some additional details.
622 622 * `.parse_complete_callback(void() function)`: Set the callback that runs at the completion of parsing. For subcommands this is executed at the completion of the single subcommand and can be executed multiple times. See [Subcommand callbacks](#callbacks) for some additional details.
... ... @@ -685,7 +685,7 @@ The subcommand method
685 685 .add_option_group(name,description)
686 686 ```
687 687  
688   -Will create an option group, and return a pointer to it. The argument for `description` is optional and can be omitted. An option group allows creation of a collection of options, similar to the groups function on options, but with additional controls and requirements. They allow specific sets of options to be composed and controlled as a collective. For an example see [range example](https://github.com/CLIUtils/CLI11/blob/master/examples/ranges.cpp). Option groups are a specialization of an App so all [functions](#subcommand-options) that work with an App or subcommand also work on option groups. Options can be created as part of an option group using the add functions just like a subcommand, or previously created options can be added through. The name given in an option group must not contain newlines or null characters.๐Ÿ†•
  688 +Will create an option group, and return a pointer to it. The argument for `description` is optional and can be omitted. An option group allows creation of a collection of options, similar to the groups function on options, but with additional controls and requirements. They allow specific sets of options to be composed and controlled as a collective. For an example see [range example](https://github.com/CLIUtils/CLI11/blob/main/examples/ranges.cpp). Option groups are a specialization of an App so all [functions](#subcommand-options) that work with an App or subcommand also work on option groups. Options can be created as part of an option group using the add functions just like a subcommand, or previously created options can be added through. The name given in an option group must not contain newlines or null characters.๐Ÿ†•
689 689  
690 690 ```cpp
691 691 ogroup->add_option(option_pointer);
... ... @@ -904,28 +904,28 @@ The API is [documented here][api-docs]. Also see the [CLI11 tutorial GitBook][gi
904 904  
905 905 Several short examples of different features are included in the repository. A brief description of each is included here
906 906  
907   -* [callback_passthrough](https://github.com/CLIUtils/CLI11/blob/master/examples/callback_passthrough.cpp): Example of directly passing remaining arguments through to a callback function which generates a CLI11 application based on existing arguments.
908   -* [custom_parse](https://github.com/CLIUtils/CLI11/blob/master/examples/custom_parse.cpp): Based on [Issue #566](https://github.com/CLIUtils/CLI11/issues/566), example of custom parser
909   -* [digit_args](https://github.com/CLIUtils/CLI11/blob/master/examples/digit_args.cpp): Based on [Issue #123](https://github.com/CLIUtils/CLI11/issues/123), uses digit flags to pass a value
910   -* [enum](https://github.com/CLIUtils/CLI11/blob/master/examples/enum.cpp): Using enumerations in an option, and the use of [CheckedTransformer](#transforming-validators)
911   -* [enum_ostream](https://github.com/CLIUtils/CLI11/blob/master/examples/enum_ostream.cpp): In addition to the contents of example enum.cpp, this example shows how a custom ostream operator overrides CLI11's enum streaming.
912   -* [formatter](https://github.com/CLIUtils/CLI11/blob/master/examples/formatter.cpp): Illustrating usage of a custom formatter
913   -* [groups](https://github.com/CLIUtils/CLI11/blob/master/examples/groups.cpp): Example using groups of options for help grouping and a the timer helper class
914   -* [inter_argument_order](https://github.com/CLIUtils/CLI11/blob/master/examples/inter_argument_order.cpp): An app to practice mixing unlimited arguments, but still recover the original order.
915   -* [json](https://github.com/CLIUtils/CLI11/blob/master/examples/json.cpp): Using JSON as a config file parser
916   -* [modhelp](https://github.com/CLIUtils/CLI11/blob/master/examples/modhelp.cpp): How to modify the help flag to do something other than default
917   -* [nested](https://github.com/CLIUtils/CLI11/blob/master/examples/nested.cpp): Nested subcommands
918   -* [option_groups](https://github.com/CLIUtils/CLI11/blob/master/examples/option_groups.cpp): Illustrating the use of option groups and a required number of options. Based on [Issue #88](https://github.com/CLIUtils/CLI11/issues/88) to set interacting groups of options
919   -* [positional_arity](https://github.com/CLIUtils/CLI11/blob/master/examples/positional_arity.cpp): Illustrating use of `preparse_callback` to handle situations where the number of arguments can determine which should get parsed, Based on [Issue #166](https://github.com/CLIUtils/CLI11/issues/166)
920   -* [positional_validation](https://github.com/CLIUtils/CLI11/blob/master/examples/positional_validation.cpp): Example of how positional arguments are validated using the `validate_positional` flag, also based on [Issue #166](https://github.com/CLIUtils/CLI11/issues/166)
921   -* [prefix_command](https://github.com/CLIUtils/CLI11/blob/master/examples/prefix_command.cpp): Illustrating use of the `prefix_command` flag.
922   -* [ranges](https://github.com/CLIUtils/CLI11/blob/master/examples/ranges.cpp): App to demonstrate exclusionary option groups based on [Issue #88](https://github.com/CLIUtils/CLI11/issues/88)
923   -* [shapes](https://github.com/CLIUtils/CLI11/blob/master/examples/shapes.cpp): Illustrating how to set up repeated subcommands Based on [gitter discussion](https://gitter.im/CLI11gitter/Lobby?at=5c7af6b965ffa019ea788cd5)
924   -* [simple](https://github.com/CLIUtils/CLI11/blob/master/examples/simple.cpp): A simple example of how to set up a CLI11 Application with different flags and options
925   -* [subcom_help](https://github.com/CLIUtils/CLI11/blob/master/examples/subcom_help.cpp): Configuring help for subcommands
926   -* [subcom_partitioned](https://github.com/CLIUtils/CLI11/blob/master/examples/subcom_partitioned.cpp): Example with a timer and subcommands generated separately and added to the main app later.
927   -* [subcommands](https://github.com/CLIUtils/CLI11/blob/master/examples/subcommands.cpp): Short example of subcommands
928   -* [validators](https://github.com/CLIUtils/CLI11/blob/master/examples/validators.cpp): Example illustrating use of validators
  907 +* [callback_passthrough](https://github.com/CLIUtils/CLI11/blob/main/examples/callback_passthrough.cpp): Example of directly passing remaining arguments through to a callback function which generates a CLI11 application based on existing arguments.
  908 +* [custom_parse](https://github.com/CLIUtils/CLI11/blob/main/examples/custom_parse.cpp): Based on [Issue #566](https://github.com/CLIUtils/CLI11/issues/566), example of custom parser
  909 +* [digit_args](https://github.com/CLIUtils/CLI11/blob/main/examples/digit_args.cpp): Based on [Issue #123](https://github.com/CLIUtils/CLI11/issues/123), uses digit flags to pass a value
  910 +* [enum](https://github.com/CLIUtils/CLI11/blob/main/examples/enum.cpp): Using enumerations in an option, and the use of [CheckedTransformer](#transforming-validators)
  911 +* [enum_ostream](https://github.com/CLIUtils/CLI11/blob/main/examples/enum_ostream.cpp): In addition to the contents of example enum.cpp, this example shows how a custom ostream operator overrides CLI11's enum streaming.
  912 +* [formatter](https://github.com/CLIUtils/CLI11/blob/main/examples/formatter.cpp): Illustrating usage of a custom formatter
  913 +* [groups](https://github.com/CLIUtils/CLI11/blob/main/examples/groups.cpp): Example using groups of options for help grouping and a the timer helper class
  914 +* [inter_argument_order](https://github.com/CLIUtils/CLI11/blob/main/examples/inter_argument_order.cpp): An app to practice mixing unlimited arguments, but still recover the original order.
  915 +* [json](https://github.com/CLIUtils/CLI11/blob/main/examples/json.cpp): Using JSON as a config file parser
  916 +* [modhelp](https://github.com/CLIUtils/CLI11/blob/main/examples/modhelp.cpp): How to modify the help flag to do something other than default
  917 +* [nested](https://github.com/CLIUtils/CLI11/blob/main/examples/nested.cpp): Nested subcommands
  918 +* [option_groups](https://github.com/CLIUtils/CLI11/blob/main/examples/option_groups.cpp): Illustrating the use of option groups and a required number of options. Based on [Issue #88](https://github.com/CLIUtils/CLI11/issues/88) to set interacting groups of options
  919 +* [positional_arity](https://github.com/CLIUtils/CLI11/blob/main/examples/positional_arity.cpp): Illustrating use of `preparse_callback` to handle situations where the number of arguments can determine which should get parsed, Based on [Issue #166](https://github.com/CLIUtils/CLI11/issues/166)
  920 +* [positional_validation](https://github.com/CLIUtils/CLI11/blob/main/examples/positional_validation.cpp): Example of how positional arguments are validated using the `validate_positional` flag, also based on [Issue #166](https://github.com/CLIUtils/CLI11/issues/166)
  921 +* [prefix_command](https://github.com/CLIUtils/CLI11/blob/main/examples/prefix_command.cpp): Illustrating use of the `prefix_command` flag.
  922 +* [ranges](https://github.com/CLIUtils/CLI11/blob/main/examples/ranges.cpp): App to demonstrate exclusionary option groups based on [Issue #88](https://github.com/CLIUtils/CLI11/issues/88)
  923 +* [shapes](https://github.com/CLIUtils/CLI11/blob/main/examples/shapes.cpp): Illustrating how to set up repeated subcommands Based on [gitter discussion](https://gitter.im/CLI11gitter/Lobby?at=5c7af6b965ffa019ea788cd5)
  924 +* [simple](https://github.com/CLIUtils/CLI11/blob/main/examples/simple.cpp): A simple example of how to set up a CLI11 Application with different flags and options
  925 +* [subcom_help](https://github.com/CLIUtils/CLI11/blob/main/examples/subcom_help.cpp): Configuring help for subcommands
  926 +* [subcom_partitioned](https://github.com/CLIUtils/CLI11/blob/main/examples/subcom_partitioned.cpp): Example with a timer and subcommands generated separately and added to the main app later.
  927 +* [subcommands](https://github.com/CLIUtils/CLI11/blob/main/examples/subcommands.cpp): Short example of subcommands
  928 +* [validators](https://github.com/CLIUtils/CLI11/blob/main/examples/validators.cpp): Example illustrating use of validators
929 929  
930 930 ## Contribute
931 931  
... ... @@ -1020,13 +1020,13 @@ CLI11 was developed at the [University of Cincinnati][] to support of the [GooFi
1020 1020  
1021 1021 [doi-badge]: https://zenodo.org/badge/80064252.svg
1022 1022 [doi-link]: https://zenodo.org/badge/latestdoi/80064252
1023   -[azure-badge]: https://dev.azure.com/CLIUtils/CLI11/_apis/build/status/CLIUtils.CLI11?branchName=master
  1023 +[azure-badge]: https://dev.azure.com/CLIUtils/CLI11/_apis/build/status/CLIUtils.CLI11?branchName=main
1024 1024 [azure]: https://dev.azure.com/CLIUtils/CLI11
1025 1025 [actions-link]: https://github.com/CLIUtils/CLI11/actions
1026 1026 [actions-badge]: https://github.com/CLIUtils/CLI11/actions/workflows/tests.yml/badge.svg
1027 1027 [repology-badge]: https://repology.org/badge/latest-versions/cli11.svg
1028 1028 [repology]: https://repology.org/project/cli11/versions
1029   -[codecov-badge]: https://codecov.io/gh/CLIUtils/CLI11/branch/master/graph/badge.svg
  1029 +[codecov-badge]: https://codecov.io/gh/CLIUtils/CLI11/branch/main/graph/badge.svg
1030 1030 [codecov]: https://codecov.io/gh/CLIUtils/CLI11
1031 1031 [gitter-badge]: https://badges.gitter.im/CLI11gitter/Lobby.svg
1032 1032 [gitter]: https://gitter.im/CLI11gitter/Lobby
... ...
azure-pipelines.yml
... ... @@ -4,11 +4,11 @@
4 4 # https://docs.microsoft.com/azure/devops/pipelines/apps/c-cpp/gcc
5 5  
6 6 trigger:
7   -- master
  7 +- main
8 8 - 'v*'
9 9  
10 10 pr:
11   -- master
  11 +- main
12 12 - 'v*'
13 13  
14 14 variables:
... ...
book/README.md
... ... @@ -28,7 +28,7 @@ Like any good command line application, help is provided. This program can be im
28 28  
29 29 [include](code/intro.cpp)
30 30  
31   -[Source code](https://github.com/CLIUtils/CLI11/blob/master/book/code/intro.cpp)
  31 +[Source code](https://github.com/CLIUtils/CLI11/blob/main/book/code/intro.cpp)
32 32  
33 33 Unlike some other libraries, this is enough to exit correctly and cleanly if help is requested or if incorrect arguments are passed. You can try this example out for yourself. To compile with GCC:
34 34  
... ... @@ -58,7 +58,7 @@ CLI11 was developed at the [University of Cincinnati][] in support of the [GooFi
58 58 [cli11tutorial]: https://cliutils.github.io/CLI11/book
59 59 [releases]: https://github.com/CLIUtils/CLI11/releases
60 60 [api docs]: https://cliutils.github.io/CLI11
61   -[readme]: https://github.com/CLIUtils/CLI11/blob/master/README.md
  61 +[readme]: https://github.com/CLIUtils/CLI11/blob/main/README.md
62 62 [nsf 1414736]: https://nsf.gov/awardsearch/showAward?AWD_ID=1414736
63 63 [university of cincinnati]: https://www.uc.edu
64 64 [plumbum]: https://plumbum.readthedocs.io/en/latest/
... ...
book/chapters/an-advanced-example.md
... ... @@ -16,7 +16,7 @@ All that's need now is the parse call. We'll print a little message after the co
16 16  
17 17 [include:"Parse"](../code/geet.cpp)
18 18  
19   -[Source code](https://github.com/CLIUtils/CLI11/tree/master/book/code/geet.cpp)
  19 +[Source code](https://github.com/CLIUtils/CLI11/tree/main/book/code/geet.cpp)
20 20  
21 21 If you compile and run:
22 22  
... ...
book/chapters/config.md
... ... @@ -195,7 +195,7 @@ Finally, set your new class as new config formatter:
195 195 app.config_formatter(std::make_shared<NewConfig>());
196 196 ```
197 197  
198   -See [`examples/json.cpp`](https://github.com/CLIUtils/CLI11/blob/master/examples/json.cpp) for a complete JSON config example.
  198 +See [`examples/json.cpp`](https://github.com/CLIUtils/CLI11/blob/main/examples/json.cpp) for a complete JSON config example.
199 199  
200 200 ### Trivial JSON configuration example
201 201  
... ...
book/chapters/flags.md
... ... @@ -97,7 +97,7 @@ The values would be used like this:
97 97  
98 98 [include:"usage"](../code/flags.cpp)
99 99  
100   -[Source code](https://github.com/CLIUtils/CLI11/tree/master/book/code/flags.cpp)
  100 +[Source code](https://github.com/CLIUtils/CLI11/tree/main/book/code/flags.cpp)
101 101  
102 102 If you compile and run:
103 103  
... ...
docs/Doxyfile
... ... @@ -1325,7 +1325,7 @@ CHM_FILE =
1325 1325 HHC_LOCATION =
1326 1326  
1327 1327 # The GENERATE_CHI flag controls if a separate .chi index file is generated
1328   -# (YES) or that it should be included in the master .chm file (NO).
  1328 +# (YES) or that it should be included in the main .chm file (NO).
1329 1329 # The default value is: NO.
1330 1330 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
1331 1331  
... ...
include/CLI/App.hpp
... ... @@ -1739,10 +1739,10 @@ class App {
1739 1739 /// Get a pointer to the version option. (const)
1740 1740 const Option *get_version_ptr() const { return version_ptr_; }
1741 1741  
1742   - /// Get the parent of this subcommand (or nullptr if master app)
  1742 + /// Get the parent of this subcommand (or nullptr if main app)
1743 1743 App *get_parent() { return parent_; }
1744 1744  
1745   - /// Get the parent of this subcommand (or nullptr if master app) (const version)
  1745 + /// Get the parent of this subcommand (or nullptr if main app) (const version)
1746 1746 const App *get_parent() const { return parent_; }
1747 1747  
1748 1748 /// Get the name of the current app
... ... @@ -2456,7 +2456,7 @@ class App {
2456 2456 }
2457 2457  
2458 2458 /// Parse "one" argument (some may eat more than one), delegate to parent if fails, add to missing if missing
2459   - /// from master return false if the parse has failed and needs to return to parent
  2459 + /// from main return false if the parse has failed and needs to return to parent
2460 2460 bool _parse_single(std::vector<std::string> &args, bool &positional_only) {
2461 2461 bool retval = true;
2462 2462 detail::Classifier classifier = positional_only ? detail::Classifier::NONE : _recognize(args.back());
... ... @@ -2731,7 +2731,7 @@ class App {
2731 2731 }
2732 2732 }
2733 2733 }
2734   - // If a subcommand, try the master command
  2734 + // If a subcommand, try the main command
2735 2735 if(parent_ != nullptr && fallthrough_)
2736 2736 return _get_fallthrough_parent()->_parse_arg(args, current_type);
2737 2737 // don't capture missing if this is a nameless subcommand
... ...
include/CLI/TypeTools.hpp
... ... @@ -36,7 +36,7 @@ constexpr enabler dummy = {};
36 36 /// A copy of enable_if_t from C++14, compatible with C++11.
37 37 ///
38 38 /// We could check to see if C++14 is being used, but it does not hurt to redefine this
39   -/// (even Google does this: https://github.com/google/skia/blob/master/include/private/SkTLogic.h)
  39 +/// (even Google does this: https://github.com/google/skia/blob/main/include/private/SkTLogic.h)
40 40 /// It is not in the std namespace anyway, so no harm done.
41 41 template <bool B, class T = void> using enable_if_t = typename std::enable_if<B, T>::type;
42 42  
... ...