Skip to content

Test Cassandra, Couchbase and KurrentDB against every supported major version - #1596

Merged
cristianrgreco merged 7 commits into
mainfrom
claude/supported-versions-remaining
Oct 14, 2026
Merged

cristianrgreco merged 7 commits into
mainfrom
claude/supported-versions-remaining

Conversation

@cristianrgreco

@cristianrgreco cristianrgreco commented Oct 12, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Last batch of bringing existing modules in line with the supported-versions rule proposed in #1587 (others: #1589, #1591, #1592, #1593, #1595): a module's tests cover the latest release of every major version the vendor still supports.

Each suite now has one IMAGES list, oldest major first and the Dockerfile image last, and runs in full against every entry with describe.each(IMAGES). Older majors are pinned to the exact tag of their latest release.

Module IMAGES Source
cassandra 4.1.12, Dockerfile (5.0) endoflife.date
kurrentdb 25.0.1 (LTS), Dockerfile (26.2) KurrentDB release schedule: LTS for two years, STS until the next release
couchbase community-7.6.2, enterprise-7.6.12 (7.6 EOL 2027-03-31), then the Dockerfile community and enterprise images endoflife.date

Notes:

  • Couchbase has two editions, so the file has two blocks, each looping over its own list: COMMUNITY_IMAGES (community-7.6.2, then the Dockerfile community image) and ENTERPRISE_IMAGES (enterprise-7.6.12, then the Dockerfile enterprise image). The two tests both editions share (connect and query, flush) live in helper functions below the blocks; the community block adds its six tests and the enterprise block the analytics test. The whole suite therefore runs on 7.6 as well: 18 container starts, up from 11. 7.6.2 is the latest community build of 7.6 and 7.6.12 the latest enterprise build.

  • KurrentDB: the vendor publishes the policy but no dated table, so the supported lines are derived from it. Its images are amd64 only, for every tag.

  • ClickHouse (all supported releases are 26.x), Weaviate (1.x) and K3s (1.x) have a single supported major, so their tests stay on the Dockerfile image and are not changed. For K3s that means only the newest Kubernetes minor is tested, although 1.35 and 1.36 are still supported.

  • Selenium: the tests used seleniarm/standalone-chromium:124.0 and seleniarm/standalone-firefox:125.0 on arm64. Those images were last pushed in April 2024, and selenium/standalone-chrome and selenium/standalone-firefox now publish arm64 themselves, so the two seleniarm lines are gone from the Dockerfile, the tests use the official images on every architecture, and the docs page lists only those.

Verification

Local, macOS arm64, Docker Desktop. Only the older lines were run locally:

Run Result
npx vitest run packages/modules/cassandra --maxConcurrency=1 -t "4.1.12" 5 passed
npx vitest run packages/modules/kurrentdb --maxConcurrency=1 -t "25.0.1" 2 passed (amd64 emulation)
npx vitest run packages/modules/couchbase --maxConcurrency=2 -t "7\.6\." 11 passed (8 on community 7.6.2, 3 on enterprise 7.6.12), 104 s
npx vitest run packages/modules/selenium --maxConcurrency=2 6 passed on arm64 with the official images
  • npm run format, npm run lint, npm run knip: clean.
  • Every inside_block marker used by the three docs pages still resolves to one block.

Left to CI: the Dockerfile images' share of each loop, Podman, Node 22 and 24, linux/amd64, and the docs build.

Test counts: cassandra 5 → 10, kurrentdb 2 → 4, couchbase 11 → 22 (18 container starts), selenium unchanged. Cassandra and KurrentDB run sequentially (concurrent: false), so their job time grows in proportion.

Baseline job times on main (run 38287125470, docker 22 / docker 24 / podman 22 / podman 24, seconds): cassandra 62/87/103/102, kurrentdb 42/42/47/41, couchbase 100/100/105/155.

Not breaking

Test files, the Selenium test Dockerfile and one docs page. No module source or exports changed.

@cristianrgreco cristianrgreco added maintenance Improvements that do not change functionality patch Backward compatible bug fix labels Oct 12, 2026
@cristianrgreco cristianrgreco changed the title Test Cassandra, ClickHouse, Couchbase, K3s, KurrentDB and Weaviate against their oldest supported versions Test Cassandra, Couchbase and KurrentDB against every supported major version Oct 13, 2026
@cristianrgreco
cristianrgreco marked this pull request as ready for review October 14, 2026 12:39
@cristianrgreco
cristianrgreco merged commit cdb1289 into main Oct 14, 2026
30 checks passed
@cristianrgreco
cristianrgreco deleted the claude/supported-versions-remaining branch October 14, 2026 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintenance Improvements that do not change functionality patch Backward compatible bug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant