Skip to content

fix(cpp): align the ANTLR4 compatibility bound with the enforced range - #965

Merged
ColinLeeo merged 1 commit into
developfrom
colin/antlr4-compatibility-bound
Sep 17, 2026
Merged

ColinLeeo merged 1 commit into
developfrom
colin/antlr4-compatibility-bound

Conversation

@ColinLeeo

@ColinLeeo ColinLeeo commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

ANTLR4Dependency.cmake accepts system ANTLR4 versions from 4.9.3 up to but excluding 4.13.0, because the C++ runtime shipped by 4.13 and newer requires C++17 while TsFile still builds as C++11/14.

The documentation and the dependency test did not reflect that boundary: both READMEs advertised an upper bound of 5.0.0 and the test fixture marked 5.0.0 as the incompatible version. A regression that widened the accepted range would therefore pass the test suite.

Update the two READMEs and pin the incompatible fixture to 4.13.0 so the boundary itself is covered.

History

  • feat(cpp): refactor dependency sourcing and extend codec compatibility #905 introduced the dependency-sourcing framework with TSFILE_ANTLR4_NEXT_INCOMPATIBLE_VERSION = "5.0.0", and both READMEs documented that same bound, so code and docs agreed at the time.
  • Feature/tsfile dataframe runtime #911 narrowed the enforced bound to 4.13.0 - the C++ runtime shipped by ANTLR4 4.13 and newer requires C++17, while TsFile's public baseline is C++11 - but only the CMake variable and its comment were updated. The two READMEs and the dependency test kept 5.0.0.
  • This PR removed that inconsistency by aligning the documented bound and the test fixture with the range the build actually enforces.

ANTLR4Dependency.cmake accepts system ANTLR4 versions from 4.9.3 up to but
excluding 4.13.0, because the C++ runtime shipped by 4.13 and newer requires
C++17 while TsFile still builds as C++11/14.

The documentation and the dependency test did not reflect that boundary: both
READMEs advertised an upper bound of 5.0.0 and the test fixture marked 5.0.0 as
the incompatible version. A regression that widened the accepted range would
therefore pass the test suite.

Update the two READMEs and pin the incompatible fixture to 4.13.0 so the
boundary itself is covered.
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.96%. Comparing base (8fdbc49) to head (a35c072).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #965   +/-   ##
========================================
  Coverage    63.95%   63.96%           
========================================
  Files          758      758           
  Lines        53253    53253           
  Branches      8445     8445           
========================================
+ Hits         34060    34061    +1     
+ Misses       17530    17529    -1     
  Partials      1663     1663           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ColinLeeo
ColinLeeo merged commit 9391fc1 into develop Sep 17, 2026
39 checks passed
@ColinLeeo
ColinLeeo deleted the colin/antlr4-compatibility-bound branch September 17, 2026 09:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants