COOL TC meeting minutes: 2026-06-10

Present:

  • Stephan, Adria, Noel, Caolan, Leif, Andras, Michael M, Tomaz, Szymon, Miklos

Completed action items

Pending action items

Release Engineering update (Andras)

  • Monorepo status

    • CI~~– complete, only the fuzzer is under testing now, it broke this week

      • was enable, then disabled – to try to get it into the best shape first
    • then github online.git: refer to gerrit

      • just have a README.md and nothing else in the main branch (?)

      • AI: remove ~everything (all code) there, except the README (Andras)

        • allows a workflow for pushing helm-chart pieces to various servers

        • The repo will continue to live, but only for the helm chart + docker + a few other bits.

  • **Releases **(Andras)

    • CODE 26.04.1 is out, released earlier this week

      • development can continue on main branch

      • distro/collabora/co-26.04 branch is created in case we have to release again for CODE 26.04.1 (and also for CODA)

    • Compact Websocket URL doesn’t work with old Apache reverse proxy configuration

      • added a remark to the release notes – but rather a difficult situation.

      • Sysadmins need to update their config (of the reverse proxy)

      • AI: add in fallback server URL support, and fall-back if the socket fails to connect to horror-style URLs – and note in red in the admin console (Caolan)

Junit tests (Noel)

  • Currently lokit distro config disables java, so all is well on CI

  • But JunitTest_svtools_unoapi started to fail, do we care?

  • Right now, they are bitrotting (Noel)

  • Multiple types here (Stephan)

    • mechanical checking of the UNO API, not really useful → can be removed.

      • These use a template file / data-driven bits
        not entirely sure how it worked, exclude lists etc.
    • more free-form “complex” tests, might be more useful; could be re-written in something else.

    • This morning ran fine for Stephan – as long as still there keeping them alive.

    • Could get rid of the “unoapi” ones, and leave the “complex” ones alone (Stephan)

Wasm CI (Stephan)

  • Would need a Wasm build (something like <https://cpci.cbg.collabora.co.uk:8080/job/gerrit_cowasm_main/>) plus a “plain” build with –with-wasm-fallback=…

  • For CI we have the WASM build – just that

  • We need for something we can run – a WASM build + a COOL build – with WASM fallback parameter – to bring that into the other build.

  • We would want to build the WASM blob separately (Michael M)

  • AI: Check some run-time configuration / logic as to whether we should serve the WASM or not (Stephan)

  • AI: generate a separate WASM package in due course with the necessary blob (Adria)

Patch review

  • All changes

    • Week 24: 190(-6)
  • PRs to migrate from GitHub

    • Week 24: 26(-31)
  • New contributors since last week

    • Week 24: Azerliap, Diego Nascimento, Mylo, Sleepy Sandy, ddi
  • Top 10 reviewers since last week

    • Week 24: Miklos Vajna (70), Caolán McNamara (37), Stephan Bergmann (34), Tomaž Vajngerl (33), Noel Grandin (32), Szymon Kłos (26), Mike Kaganski (21), Darshan-Upadhyay (6), Andras Timar (5), Gökay ŞATIR (5)

Bug reporting

Jenkins / CI update (Andras)

  • Classical cypress problems are no longer that prominent

  • Had issues with the windows builds recently, Andras made lots of fixes of this today

    • now it finishes on-time; all green now.
  • Hopefully this reduces the backlog by tomorrow

  • Had an issue with the fuzzer – but has been remove again

  • Had an issue with windows capacity (Adria)

    • interoperability workload halved the CI capacity there

    • spoke with Aron Budea – who can execute this manually; we’ll do it Saturday mid-day …

    • long term solution – Mitch & Aron are getting a VM setup – and run these on the VM not the CI host.

    • Takes a long time, doesn’t use much resources

  • Mohit’s monorepo test change

  • Szymon’s monitoring: “last builds” monitoring

    • now updated the tool, it does work now (api call no longer returns 403)
  • Gerrit for online main

    • Week 24: Success rate is 34%, failed builds are 33/50

    • Looks terrible but was 18% yesterday – trend is going up …

  • Worth re-basing to get past the cypress problems.

  • A recurring & not happy state (Stephan)

    • when your job fails – have to guess if someone else addressed the issue

    • Need a good way to communicate who is fixing CI …

      • how to respond to builds being red without further overloading the setup.
    • Ask: people to announce when they are working on a known CI failure, and telling people when to re-base patches …

      • suspect lots of this work is pointless re-basing.
  • Sometimes have a commit that does nothing (Miklos)

    • Google have a status page that says whether the tree is ‘open’ or not – ie. CI state is good

    • Not just us that has this problem.

    • Could go at the top of the gerrit page – work to keep it up-to-date.

    • But it is work to keep that up to date

  • Think we need more CI power (Noel)

    • don’t think we have enough to absorb the mishaps …

    • where are we at on shared ccache etc. ? (Michael)

      • task pending for flatpak builds & ccache – should improve (Adria)

        • the bottleneck seems to be Windows capacity
    • Looking at the nodes – the windows node (Caolan)

      • waiting to configure that – perhaps double the throughput.

      • had an attempt to configure ccache on Windows (Andras)

        • modern Ccache can do that

        • or have a VM on the other physical windows box – which is idle most of the time ?

        • last week: windows was not a bottleneck – takes ~20mins

        • problem was changing the compiler configuration …

          • some used old, some used new

          • had to re-build everything; and mixed objects – couldn’t link – a big queue built up.

  • What’s next for releng

    • flatpak nightlies (Adria)

    • cypress lighthouse added to main checks. fuzzer is flaky, under review, trying to fix, plan to add new builder to not cause another bottleneck

    • fuzzer CI job

    • cleaning up remaining github jobs – to get more disk available.

    • Snap VM bits to be built in jenkins.

    • Created Collabora Office Preview on the Windows store → pending certification (Andras)

      • later to up-load builds from Jenkins automatically
  • Re-visit new hardware next week.

Crash testing (Caolan)

  • 2026-06-10 192 (-34, +0)

    • MatrixResizeGuard for ScColumn::CalcAll fix in motion

    • unshare formula cells the matrix import overwrites

  • 2026-05-31 278 (-269, +0)

    • crashtesting: defer dynamic-array resize while measuring optimal
      row height fixed, hoping to hit the bulk of those now

TTT talks

What’s cooking

  • Regina

  • Stephan

    • working on COOL extension documentation
  • Andras

    • poco is built like other 3rd party libs (engine)
  • Quikee

    • Vector rendering goodness …

    • When we save svg files – into ODF – we always create this PNG fallback

      • removed this – it’s been long enough to support that.
    • Think about natively supporting WEBP files – to avoid very slow deflate.

      • AI: check LibreOffice loads WEBP files and switch to not doing the PNG conversion (Quikee)
  • Szymon

  • Noel

    • css → cpo namespace renaming, nurse-maiding various other small cleanups through CI

      • script that does the bulk of the work – 1.5 million line diff: fun.

      • Perhaps could fixup commits we re-base across that.

    • Can this be done incrementally with writer indexing ? (Miklos)

      • could we do this step by step ?

      • eg. having a new namespace alias – cpo – resolves to com :: sun :: star – change meaning of cpo later ?

      • Move udkapi / offapi bits around …

    • Can we do the 1st step with namespaces incrementally ?

  • Miklos

  • Caolán

    • enabled that even-more-parallel cypress by default

    • a11y coverage complete

    • finalizing link control, was finished, some crashtesting, etc. finds though

    • bg save thread issue with writer grammar checker

  • Adria

    • flatpak nightlies repo

    • fuzzer job for monorepo main → improve shape

    • activated dco “signed-off-by” mandatory in commits