patch release for recent fixes (#1241)

updates for patch release

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
Philip Top
2025-10-25 12:53:47 -07:00
committed by GitHub
parent 8b1d067374
commit 8ddadd7cea
16 changed files with 86 additions and 23 deletions

View File

@@ -18,7 +18,9 @@
"contributions": [
"bug",
"doc",
"code"
"code",
"example",
"platform"
]
},
{
@@ -29,7 +31,9 @@
"contributions": [
"bug",
"doc",
"code"
"code",
"example",
"platform"
]
},
{

View File

@@ -12,6 +12,8 @@ jobs:
single-header:
name: Single header
runs-on: ubuntu-latest
permissions:
contents: write # Grant write permission for contents to upload artifacts
steps:
- uses: actions/checkout@v4
with:

View File

@@ -6,6 +6,9 @@ on:
- main
pull_request:
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest

View File

@@ -10,6 +10,9 @@ concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
quick_fuzz1:
name: quickfuzz1

View File

@@ -45,12 +45,10 @@ repos:
args: [--prose-wrap=always]
- repo: https://github.com/markdownlint/markdownlint
rev: v0.12.0
rev: v0.13.0
hooks:
- id: markdownlint
args: ["--style=scripts/mdlint_style.rb"]
# Uncomment on macOS - Apple has deprecated Ruby, so macOS is stuck on 2.6
# language_version: 3.1.2
args: [-s, ./scripts/.markdownlintrc]
# - repo: local
# hooks:

View File

@@ -2,6 +2,25 @@
## Unreleased
## Version 2.6.1
Patch fixing some compile issues in specific situations in the recent release,
and a potential segmentation fault from specially crafted config files
### Added
- Added CI tests for install and package management on macos-arm64 [#1238][]
### Fixed
- Fixed incorrect links to validator examples. [#1239][]
- Fixed incorrect inclusion of definition for extra validators [#1238][]
- Fixed fuzz generated failure from crafted files introduced in recent release
[#1238][]
[#1238]: https://github.com/CLIUtils/CLI11/pull/1238
[#1239]: https://github.com/CLIUtils/CLI11/pull/1239
## Version 2.6.0
This version adds finer grained control of when option callbacks are executed,

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.14...4.0)
cmake_minimum_required(VERSION 3.14...4.1)
# Note: this is a header only library. If you have an older CMake than 3.14,
# just add the CLI11/include directory and that's all you need to do.

View File

@@ -1579,7 +1579,7 @@ int wmain(int argc, wchar_t *argv[]) {
```
3\. Retrieve arguments yourself by using Windows APIs like
[`CommandLineToArgvW`](https://learn.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-commandlinetoargvw)
[CommandLineToArgvW](https://learn.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-commandlinetoargvw)
and pass them to CLI. This is what the library is doing under the hood in
`ensure_utf8`.

View File

@@ -12,7 +12,7 @@
#define CLI11_VERSION_MAJOR 2
#define CLI11_VERSION_MINOR 6
#define CLI11_VERSION_PATCH 0
#define CLI11_VERSION "2.6.0"
#define CLI11_VERSION_PATCH 1
#define CLI11_VERSION "2.6.1"
// [CLI11:version_hpp:end]

View File

@@ -72,12 +72,12 @@ if use_precompiled
'CLI11',
'src/Precompile.cpp',
include_directories : CLI11_inc,
cpp_args : ['-DCLI11_COMPILE'],
cpp_args : ['-DCLI11_COMPILE -DCLI11_ENABLE_EXTRA_VALIDATORS=1'],
install : true,
)
pkg = import('pkgconfig')
pkg.generate(libcli11, extra_cflags: ['-DCLI11_COMPILE'])
pkg.generate(libcli11, extra_cflags: ['-DCLI11_COMPILE -DCLI11_ENABLE_EXTRA_VALIDATORS=1'])
install_headers(cli11_headers, subdir: 'CLI')
else

41
scripts/.markdownlintrc Normal file
View File

@@ -0,0 +1,41 @@
rule "MD001" # header levels increment by 1
rule "MD002" # first header should be a top level header
rule "MD003", :style => :atx # header style - atx
rule "MD004", :style => :dash # unordered list style - dash
#rule "MD005" # don't allow inconsistent indentation for list items managed by prettier
rule "MD006" # consider starting bulleted lists at the beginning of the line
#rule "MD007", :indent => 2 # unordered list indentation should be 4 spaces managed by prettier
rule "MD009" # trailing spaces not allowed
rule "MD010" # hard tabs not allowed
rule "MD011" # alert on reversed link syntax
rule "MD012" # alert on multiple consecutive blank lines
#rule "MD013" # line length should be no more than 80 characters
#rule "MD014" # dollars signs not before commands w/o showing output
rule "MD018" # must have space after header style
rule "MD019" # no multiple spaces after header style
rule "MD020" # no multiple spaces inside hashes on closed atx style headers
rule "MD021" # multiple spaces inside hashes on closed atx style headers
rule "MD022" # headers should be surrounded by blank lines
rule "MD023" # headers must start at the beginning of the line
rule "MD024", :allow_different_nesting => true # no multiple same level headers with same content
rule "MD025" # only 1 level 1 header
rule "MD026", :punctuation => '.,;:' # no trailing punctuation in headers
rule "MD027" # no multiple spaces after blockquote symbol
rule "MD028" # no blank lines within blockquote
#rule "MD029", :style => :ordered # ordered list item prefix, should be ordered
#rule "MD030", :ul_single => 1, :ol_single => 1, :ul_multi => 1, :ol_multi => 3 # spaces after list markers, controlled by prettier
rule "MD031" # fenced code blocks need line surrounding
#rule "MD032" # lists should be surrounded by line # handled by prettier markdown formatting
#rule "MD033", :allowed_elements => 'a, em, strong, code, del, ins, sup, sub' # no inline HTML except these elements
#rule "MD034" # no raw url
rule "MD035", :style => '---' # horizontal rule style - ---
#rule "MD036" # emphasis used instead of strong emphasis
rule "MD037" # no spaces inside emphasis markers
rule "MD038" # spaces inside code span markers
rule "MD039" # no spaces inside link text brackets
rule "MD040" # fenced code blocks should have a language specified
rule "MD041" # first line should be a top level header
#rule "MD042" # no empty links
rule "MD046", :style => :fenced # code block style - fenced
rule "MD047" # files should end with a single newline character
#rule "MD048" # code fence style consistency

View File

@@ -1,9 +0,0 @@
all
exclude_rule 'MD013' # Line length
exclude_rule 'MD033' # Inline HTML
exclude_rule 'MD034' # Bare URL (for now)
rule 'MD026', punctuation: '.,;:!' # Trailing punctuation in header (& in this case)
rule 'MD029', style: :ordered
rule 'MD007', indent: 2

View File

@@ -58,6 +58,7 @@ cc_test(
"OptionTypeTest",
"SimpleTest",
"SetTest",
"NumericTypeTest",
"TransformTest",
"CreationTest",
"SubcommandTest",

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.14...4.0)
cmake_minimum_required(VERSION 3.14...4.1)
project(CLI11-find-package-test)

View File

@@ -43,6 +43,7 @@ testnames = [
['HelpersTest', {}],
['ConfigFileTest', {}],
['OptionTypeTest', {}],
['NumericTypeTest', {}],
['SimpleTest', {}],
['AppTest', {}],
['SetTest', {}],

View File

@@ -1,4 +1,4 @@
project('mesonTest', ['cpp'], default_options: ['cpp_std=c++11'])
project('mesonTest', ['cpp'], default_options: ['cpp_std=c++14'])
cli11_dep = dependency('CLI11')