Skip to content

Commit 37bb6ed

Browse files
phlptppre-commit-ci[bot]henryiii
authored
update changelog for version 2.6.2 (#1297)
update changelog and readme for release 2.6.2 --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Henry Schreiner <henry.fredrick.schreiner@cern.ch>
1 parent 3c805ba commit 37bb6ed

File tree

4 files changed

+81
-17
lines changed

4 files changed

+81
-17
lines changed

CHANGELOG.md

Lines changed: 65 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,71 @@
22

33
## Unreleased
44

5+
## Version 2.6.2
6+
7+
This version adds C++20 modules support, additional controls for help output and
8+
finer grained control for extras handling and prefix command operation. Fixes
9+
compatibility issues with C++26 and Windows and a number of small issue with
10+
help output and specific combinations of options and conditions.
11+
12+
### Added
13+
14+
- Added C++20 modules support with new module files and tests. [#1286][]
15+
- Added configuration modes for extras handling: `AssumeMultipleArguments` and
16+
`AssumeSingleArgument`. [#1270][]
17+
- Added option for full install including impl headers with precompiled option.
18+
[#1252][]
19+
- Added improvements to prefix commands including `PrefixCommandMode` and
20+
separator specification. [#1266][]
21+
- Added controls for option name formatting in help output, allowing disabling
22+
of default values, flags, and type names. [#1247][]
23+
- Added refactor of Meson build system with updated version and new options.
24+
[#1280][]
25+
- Added support for Bazel 9. [#1287][]
26+
- Added module testing infrastructure. [#1255][]
27+
28+
### Changed
29+
30+
- Changed default to install impl headers even when precompiled option is
31+
selected. [#1291][]
32+
- Updated copyright dates to 2026. [#1283][]
33+
- Updated CI pipelines including Azure Pipelines and GitHub workflows.
34+
[#1267][], [#1283][]
35+
- Updated documentation and book chapters. [#1250][]
36+
37+
### Fixed
38+
39+
- Fixed extra spaces in option and app descriptions. [#1295][]
40+
- Fixed option searching to use fallthrough in parent apps. [#1292][]
41+
- Fixed C++26 template ambiguity for `std::complex`. [#1278][]
42+
- Fixed UTF-8 config filenames not supported on Windows. [#1273][]
43+
- Fixed enumeration stream output generating unconvertible strings if certain a
44+
user supplied stream conversion method was supplied [#1261][]
45+
- Fixed code simplification issues by removing use of `static std::string` which
46+
was causing some heap allocation issues when using CLI11 as part of DLL on
47+
certain operating systems [#1244][]
48+
- Fixed MISRACPP2023-25_5_2-a-1 rule violation [#1299][]
49+
50+
[#1299]: https://github.com/CLIUtils/CLI11/pull/1299
51+
[#1286]: https://github.com/CLIUtils/CLI11/pull/1286
52+
[#1270]: https://github.com/CLIUtils/CLI11/pull/1270
53+
[#1252]: https://github.com/CLIUtils/CLI11/pull/1252
54+
[#1266]: https://github.com/CLIUtils/CLI11/pull/1266
55+
[#1247]: https://github.com/CLIUtils/CLI11/pull/1247
56+
[#1280]: https://github.com/CLIUtils/CLI11/pull/1280
57+
[#1287]: https://github.com/CLIUtils/CLI11/pull/1287
58+
[#1255]: https://github.com/CLIUtils/CLI11/pull/1255
59+
[#1291]: https://github.com/CLIUtils/CLI11/pull/1291
60+
[#1283]: https://github.com/CLIUtils/CLI11/pull/1283
61+
[#1267]: https://github.com/CLIUtils/CLI11/pull/1267
62+
[#1250]: https://github.com/CLIUtils/CLI11/pull/1250
63+
[#1295]: https://github.com/CLIUtils/CLI11/pull/1295
64+
[#1292]: https://github.com/CLIUtils/CLI11/pull/1292
65+
[#1278]: https://github.com/CLIUtils/CLI11/pull/1278
66+
[#1273]: https://github.com/CLIUtils/CLI11/pull/1273
67+
[#1261]: https://github.com/CLIUtils/CLI11/pull/1261
68+
[#1244]: https://github.com/CLIUtils/CLI11/pull/1244
69+
570
## Version 2.6.1
671

772
Patch fixing some compile issues in specific situations in the recent release,
@@ -21,7 +86,6 @@ and a potential segmentation fault from specially crafted config files
2186
potential memory issues when CLI11 is used with shared libraries, this likely
2287
isn't a bug but the fix did result in smaller code size so was kept. [#1244][]
2388

24-
[#1244]: https://github.com/CLIUtils/CLI11/pull/1244
2589
[#1238]: https://github.com/CLIUtils/CLI11/pull/1238
2690
[#1239]: https://github.com/CLIUtils/CLI11/pull/1239
2791

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CLI11 2.6 Copyright (c) 2017-2026 University of Cincinnati, developed by Henry
1+
CLI11 2.6.2 Copyright (c) 2017-2026 University of Cincinnati, developed by Henry
22
Schreiner under NSF AWARD 1414736. All rights reserved.
33

44
Redistribution and use in source and binary forms of CLI11, with or without

README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -72,16 +72,16 @@ Features that were added in the last released minor version are marked with
7272
### Introduction
7373

7474
CLI11 provides all the features you expect in a powerful command line parser,
75-
with a beautiful, minimal syntax and no dependencies beyond C++11. It is header
76-
only, and comes in a single file form for easy inclusion in projects. It is easy
77-
to use for small projects, but powerful enough for complex command line
75+
with a beautiful, minimal syntax and no dependencies beyond C++11. It is
76+
header-only, and comes in a single file form for easy inclusion in projects. It
77+
is easy to use for small projects, but powerful enough for complex command line
7878
projects, and can be customized for frameworks. It is tested on [Azure][] and
7979
[GitHub Actions][actions-link], and was originally used by the [GooFit GPU
8080
fitting framework][goofit]. It was inspired by [`plumbum.cli`][plumbum] for
81-
Python. CLI11 has a user friendly introduction in this README, a more in-depth
81+
Python. CLI11 has a user-friendly introduction in this README, a more in-depth
8282
tutorial [GitBook][], as well as [API documentation][api-docs] generated by
8383
Travis. See the [changelog](./CHANGELOG.md) or [GitHub Releases][] for details
84-
for current and past releases. Also see the [Version 1.0 post][], [Version 1.3
84+
on current and past releases. Also see the [Version 1.0 post][], [Version 1.3
8585
post][], [Version 1.6 post][], or [Version 2.0 post][] for more information.
8686

8787
You can be notified when new releases are made by subscribing to
@@ -115,7 +115,7 @@ An acceptable CLI parser library should be all of the following:
115115
- Ability to add a configuration file (`TOML`, `INI`, or custom format), and
116116
produce it as well.
117117
- Produce real values that can be used directly in code, not something you have
118-
pay compute time to look up, for HPC applications.
118+
to pay compute time to look up, for HPC applications.
119119
- Work with common types, simple custom types, and extensible to exotic types.
120120
- Permissively licensed.
121121

@@ -172,20 +172,20 @@ this library:
172172
suggested close matches.
173173
- Autocomplete: This might eventually be added to both Plumbum and CLI11, but it
174174
is not supported yet.
175-
- While not recommended, CLI11 does now support non standard option names such
175+
- While not recommended, CLI11 does now support non-standard option names such
176176
as `-option`. This is enabled through `allow_non_standard_option_names()`
177177
modifier on an app.
178178

179179
## Install
180180

181-
To use, the most common methods are described here additional methods and
181+
To use, the most common methods are described here, additional methods and
182182
details are available at [installation][]:
183183

184184
- All-in-one local header: Copy `CLI11.hpp` from the [most recent
185185
release][github releases] into your include directory, and you are set. This
186186
is combined from the source files for every release. This includes the entire
187187
command parser library, but does not include separate utilities (like `Timer`,
188-
`AutoTimer`). The utilities are completely self contained and can be copied
188+
`AutoTimer`). The utilities are completely self-contained and can be copied
189189
separately.
190190
- All-in-one global header: Like above, but copying the file to a shared folder
191191
location like `/opt/CLI11`. Then, the C++ include path has to be extended to
@@ -1126,8 +1126,8 @@ option_groups. These are:
11261126
executes after the first argument of an application is processed. See
11271127
[Subcommand callbacks](#callbacks) for some additional details.
11281128
- `.allow_extras()`: Do not throw an error if extra arguments are left over.
1129-
- `.allow_extras(CLI::ExtrasMode)`: Specify the method of handling unrecognized
1130-
arguments.
1129+
- `.allow_extras(CLI::ExtrasMode)`: 🆕 Specify the method of handling
1130+
unrecognized arguments.
11311131
- `CLI::ExtrasMode::Error`: generate an error on unrecognized argument. Same
11321132
as `.allow_extras(false)`.
11331133
- `CLI::ExtrasMode::ErrorImmediately`: generate an error immediately on
@@ -1151,8 +1151,8 @@ option_groups. These are:
11511151
remaining_arg list. It is ideal for allowing your app or subcommand to be a
11521152
"prefix" to calling another app. Can be called with a `bool` value to turn on
11531153
or off
1154-
- `.prefix_command(CLI::PrefixCommandMode)`: specify the prefix_command mode to
1155-
use. `PrefixCommandMode::on` and `PrefixCommandMode::off` are the same as
1154+
- `.prefix_command(CLI::PrefixCommandMode)`: 🆕 specify the prefix_command mode
1155+
to use. `PrefixCommandMode::on` and `PrefixCommandMode::off` are the same as
11561156
`prefix_command(true)` or `prefix_command(false)`. Calling with
11571157
`PrefixCommandMode::separator_only` will only trigger prefix command mode by
11581158
the use of the subcommand separator `--` other unrecognized arguments would be

include/CLI/Version.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
#define CLI11_VERSION_MAJOR 2
1414
#define CLI11_VERSION_MINOR 6
15-
#define CLI11_VERSION_PATCH 1
16-
#define CLI11_VERSION "2.6.1"
15+
#define CLI11_VERSION_PATCH 2
16+
#define CLI11_VERSION "2.6.2"
1717

1818
// [CLI11:version_hpp:end]

0 commit comments

Comments
 (0)