Add feature checks for std::from_chars in CMake configuration - #328
Merged
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #328 +/- ##
==========================================
- Coverage 91.64% 91.58% -0.06%
==========================================
Files 55 55
Lines 3541 3541
Branches 1043 1043
==========================================
- Hits 3245 3243 -2
- Misses 114 115 +1
- Partials 182 183 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Owner
|
Thanks for the PR! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Credit to @Lonely-Dream for the original floating-point
std::from_charscapability-detection fix in csv-parser PR #328, which the upstream 1.1.1 fix and this integration build on.Fixes #327 and #194.
Detect floating-point
std::from_charsby compiling and linking a CMake probe, then pass its boolean result to both library targets using the upstream-ownedCLASSIFY_SCALAR_USE_STD_FLOAT_FROM_CHARSmacro. Standalone generated headers use the standard feature macro, and the explicit opt-out takes precedence.The header fix is merged upstream in vincentlaucsb/classify_scalar#2 and published as v1.1.1. This PR imports that release header byte-for-byte from commit
42652a1c0159719cb731e098e04ddc683c2d72f2; there are no csv-parser-specific edits inside the vendored header.Add a repeatable sync command and a provenance file recording the upstream commit, version, and SHA-256. CI compares the vendored bytes to the pinned upstream source. A manual “Sync classify_scalar” workflow accepts an upstream tag or commit and opens future update PRs. It uses the default workflow token, with an optional bot token for CI that starts without an approval prompt. Usage and setup are documented in
include/external/README.md.Validation: the earlier CMake fix passed all GCC 8.5, 9.5, 10.5, and 11.1 checks. The upstream 1.1.1 fix also passed those four compilers. After this sync, all four local MSVC library/generated-header smoke checks passed, remote provenance verification passed, a simulated local header modification was rejected, and actionlint/diff checks passed. The final release-tag sync is byte-identical; all four downstream GCC checks and upstream-provenance verification pass. All 36 downstream checks passed on the final commit.
Coverage-only test runs now exclude tests tagged
[stress]: the 500-iteration ThreadSafeDeque stress loop exceeded its existing 60-second deadline under gcov. Normal and sanitizer jobs continue to run it; the focused race regression remains in coverage. Verified generated CTest commands with coverage on/off and ran the stress case locally.