Story: Build quality

Table of Contents

This page documents a story in Sprint 01. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

Goal

Bring the build's quality floor up to a level the rest of v0 can rely on: nightly memcheck running, Valgrind clean, the chosen C++ standard applied consistently, vcpkg warnings suppressed.

Status

Field Value
State DONE
Parent sprint Sprint 01
Now Story closed; nightlies green, Valgrind stable, C++ standard bumped, vcpkg warnings tamed.
Waiting on None.
Next None.
Last touched 2024-07-28

Acceptance

  • A nightly pipeline runs with memcheck enabled.
  • Valgrind runs the unit tests without crashing.
  • Unit tests appear exactly once in nightly reports (no duplicates).
  • vcpkg warnings are silenced or suppressed with a clear rationale.
  • The C++ standard is bumped to the project's chosen version.

Tasks

Task State Start End Description
Add nightly support with memcheck DONE 2024-07-05 2024-07-08 Add a nightly CI pipeline that runs the tests under memcheck.
Fix Valgrind failing to run unit tests DONE 2024-07-08 2024-07-09 Diagnose and fix the cause of Valgrind crashing during the unit-test run.
Update C++ standard DONE 2024-07-15 2024-07-15 Bump the C++ standard used across the build to the project's chosen target.

Decisions

Memcheck as the canonical nightly check
lighter than ASan + TSan permutations at this stage; we revisit once we have more threading code.
Valgrind fix on the platform side
route taken was to address the symptom in the test harness rather than patch Valgrind itself.

Out of scope

See also

Emacs 29.1 (Org mode 9.6.6)