• .gitlab-ci.yml

    From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Fri Jul 24 23:17:57 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/1edeb70972df50b128638ce1
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    CI: build the Win32 doors

    Nothing covered the doors' MSVC builds, so three of the eight had been
    broken for a while with no pipeline to say so (128a6b52d9). One job per
    door that has an MSVC build -- the same set src\doors\build.bat calls
    buildable on Windows -- which also gives syncrpg and syncscumm their
    first CI job on any platform.

    Modelled on the .<os>-termgfx-door jobs: each door is driven through its
    own build.bat, the documented entry point that encodes its CMake flags,
    and needs nothing from the library jobs since these trees build xpdev,
    termgfx and their vendored engine as sub-targets. The Clans is the
    exception with no build.bat of its own, so it goes through the umbrella
    script, which already carries the MSBuild probe.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 13:54:22 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/aea81a371352b07322daea77
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Serialize Windows OpenSSL vcpkg build
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 17:07:08 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/aab6ab1aca4246a11ae83f3f
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Package qtmonitor Windows runtime
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 18:46:49 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b7dd87031b9baf109f743658
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Fix Windows Qt deployment options
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 19:23:02 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/f95f660ea3b82c3d410fea72
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Build qtmonitor in Win32 daily builds
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 19:23:02 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/8c795b49825d63eb92c99f8a
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Omit DirectX shader compiler from qtmonitor artifact
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Aug 6 22:40:50 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/a774e129d2a2d67c2ab38cd4
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    Build both OpenSSL variants serially in Windows CI
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Sun Aug 23 15:31:24 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b0ecff520a8d44c125bf4090
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    CI: disable MSBuild node reuse in the Windows jobs

    windows-x86 [syncscumm] fails intermittently on the vert runner with
    "MSB4166: Child node N exited prematurely", always in the same phase: the moment vcpkg's MSBuild integration fans its inline Roslyn task compiles
    across the solution's ~9 projects. The same commit went fail, fail, pass
    on three runs. One trace inlined the dead node's dump -- a MissingMethodException on System.Runtime.CompilerServices.Unsafe thrown
    out of ToolsetConfigurationReader, i.e. the node crashed reading its own MSBuild.exe.config before binding redirects applied.

    MSBuild keeps worker nodes alive for 15 minutes after a build and hands
    them back out on a handshake that covers the MSBuild version but not the environment they were started in. The runner is a shell executor running several Windows jobs concurrently under one account -- every failure
    overlapped both [syncterm-msvc] and [syncrpg] -- so a build can recruit a
    node another job left behind and inherit its toolset environment.

    Set MSBUILDDISABLENODEREUSE=1 on every Windows job that drives MSBuild,
    through a new .windows-msbuild template. Reuse only saves node startup on back-to-back builds; developer builds keep it.

    The door jobs this surfaced in were added in 1edeb70972.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KvZbcp3SQ7xt7bgpRRxvpg
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Tue Aug 25 22:05:21 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/e8f5719eb56367c330d71148
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    CI: surface MSBuild's worker-node crash dumps in the job log

    When an MSBuild worker node dies, MSBuild writes the exception to MSBuild_*.failure.txt under MSBUILDDEBUGPATH, which on this runner defaults
    to C:\WINDOWS\SystemTemp -- unreachable. Only one of the six
    windows-x86 [syncscumm] failures happened to inline its dump into the trace, and that dump is what eventually identified the bug fixed in the preceding commit. Point MSBUILDDEBUGPATH into the workspace and have after_script
    echo whatever lands there, so the next one is diagnosable from the log
    alone.

    Also corrects the MSBUILDDISABLENODEREUSE comment, which asserted that jobs recruiting each other's leftover nodes was the cause of those failures. It
    was not: they recurred with reuse disabled, and passing and failing runs had identical job overlap. The setting stays as hygiene on a shared runner.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KvZbcp3SQ7xt7bgpRRxvpg
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sat Aug 29 14:21:18 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/575d51015c2c06c7087a9ad3
    Modified Files:
    .gitlab-ci.yml
    Log Message:
    CI: publish standalone DeuceGate source bundle
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)