• .gitlab-ci-unix.yml

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Jul 17 03:04:32 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/43cc4d49f3c0feb9a651d4ed
    Modified Files:
    .gitlab-ci-unix.yml
    Log Message:
    CI: fail the door test jobs when they run no tests at all

    ctest's default for an empty test set is to print "No tests were found!!!"
    and exit 0, so a test step that runs nothing passes. Both door jobs that
    run tests could do this, which makes the guard quietly conditional on
    wiring it cannot see: rename TERMGFX_TESTS or SYNCRETRO_TESTS, or let the
    -D stop taking effect, and ctest reports success having executed nothing.

    This is not hypothetical. The [termgfx] job ran ctest against a tree whose
    test target did not exist yet and was green for its first several
    pipelines, reporting a passing test step that had run zero tests -- the
    exact failure the step exists to catch, in the step meant to catch it.

    Pass --no-tests=error so an empty set is a failure (ctest exits 8). Both
    jobs already use --test-dir, added in the same CMake 3.20 as this flag, so
    it costs no new version floor. The [termgfx] job's ctest is spelled like syncretro's while here, rather than cd-ing into the build dir.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Jul 17 21:23:33 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/d1946415d2583bd2fbe9d215
    Modified Files:
    .gitlab-ci-unix.yml
    Log Message:
    CI: run the xpdev mixer regression test in the test stage

    Add an [xpdev-test] test-stage job that builds xpdev and mixertest from
    source and runs "make test" (nonzero exit == failure), so the
    xp_mixer_pull gapless-drain fix cannot silently regress. It needs the
    [xpdev] build job for ordering and, where valgrind is available, runs the regression under the leak checker (--error-exitcode=1). Skipped on cross-compiled targets, whose foreign-arch binary the runner cannot run.

    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net