Skip to content

docs: correct stale facts in README for 0.4.1 - #15

Merged
jwinarske merged 1 commit into
mainfrom
jw/readme-facts
Aug 14, 2026
Merged

docs: correct stale facts in README for 0.4.1#15
jwinarske merged 1 commit into
mainfrom
jw/readme-facts

Conversation

@jwinarske

Copy link
Copy Markdown
Contributor

The README is the pub.dev landing page, and several claims had drifted from the code. Every figure below was checked against the tree, not estimated.

Claim Was Is
Install snippet appstream_dart: ^0.2.2 ^0.4.1
Status Production-Ready (v0.2.2) (v0.4.1)
Tests 185/185 (140 C++ + 45 Dart) 194/194 (149 C++ + 45 Dart)
Tree root appstream/ (pre-0.2.1 rename) appstream_dart/
Tree entry dart_api_dl.c dart_api_dl.cpp
bindings.dart "FFI bindings + library loading" @Native bindings, native-asset resolved
Prerequisites Clang 17+ Clang 18+
CI "8+ configurations" 9 jobs, incl. a Debug/Release x asan/ubsan matrix

Also adds the missing scripts/ entry to the tree.

The install snippet is the one that actually bites — it's the line people copy, and it pointed three releases back.

On the compiler floor: the README contradicted itself, saying Clang 18+ in Quick start and Clang 17+ in Prerequisites. include/expected_polyfill.h notes std::expected needs Clang 19+, and CHANGELOG 0.2.1 added the polyfill specifically for Clang 18, so 18 is the version actually supported and tested. 17 appears to have been aspirational.

Sources: ctest -N reports 149, dart test reports 45, and parsing ci.yml yields 9 jobs.

Verification

clang-tidy clean, clang-format run last via scripts/format.sh, 149/149 C++ and 45/45 Dart tests, dart analyze --fatal-infos clean, dart pub publish --dry-run 0 warnings.

The README is the pub.dev landing page, and several of its claims had
drifted from the code:

- The install snippet advertised `appstream_dart: ^0.2.2`, three releases
  behind. That is the line people copy.
- Status and test count were equally old: 194 tests now pass (149 C++ and
  45 Dart), not 185.
- The project tree was rooted at `appstream/`, the name before the 0.2.1
  rename, listed `dart_api_dl.c` where the file is now `.cpp`, described
  bindings.dart as doing "library loading" after 0.4.1 moved that to the
  native-asset table, and omitted scripts/.
- Prerequisites claimed Clang 17+, but expected_polyfill.h notes that
  std::expected needs Clang 19+ and the polyfill was added for Clang 18,
  so 18 is the floor that is actually supported. The Quick start section
  already said 18+, so the two sections disagreed.
- The CI description said "8+ configurations"; there are 9 jobs, one of
  which is a Debug/Release x asan/ubsan matrix.

Every figure was checked against the tree rather than estimated: ctest
reports 149, dart test reports 45, and the workflow parses to 9 jobs.

Verified: clang-tidy clean, clang-format run last via scripts/format.sh,
149/149 C++ and 45/45 Dart tests, dart analyze --fatal-infos clean.
@jwinarske
jwinarske merged commit ad8c469 into main Aug 14, 2026
12 checks passed
@jwinarske
jwinarske deleted the jw/readme-facts branch August 14, 2026 17:36
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.

1 participant