Download Latest Version wekan-11.72-s390x.zip (286.8 MB)
Email in envelope

Get an email when there's a new version of wekan

Home / v11.19
Name Modified Size InfoDownloads / Week
Parent folder
wekan-11.19-armv6.zip 2026-08-28 223.9 MB
wekan-11.19-armv6.zip.sha256sum 2026-08-28 88 Bytes
wekan-11.19-ppc64le.zip 2026-08-28 236.9 MB
wekan-11.19-ppc64le.zip.sha256sum 2026-08-28 90 Bytes
wekan-11.19-armv7.zip 2026-08-28 223.0 MB
wekan-11.19-armv7.zip.sha256sum 2026-08-28 88 Bytes
wekan-11.19-armhf.zip 2026-08-28 222.9 MB
wekan-11.19-armhf.zip.sha256sum 2026-08-28 88 Bytes
wekan-11.19-sandstorm.spk 2026-08-28 142.7 MB
wekan-11.19-mac-x64.zip 2026-08-28 192.5 MB
wekan-11.19-mac-x64.zip.sha256sum 2026-08-28 90 Bytes
wekan-11.19-win-arm64.zip 2026-08-28 209.6 MB
wekan-11.19-win-arm64.zip.sha256sum 2026-08-28 92 Bytes
wekan-11.19-win64.zip 2026-08-28 220.2 MB
wekan-11.19-win64.zip.sha256sum 2026-08-28 88 Bytes
WeKan-11.19-x86_64.AppImage.sha256sum 2026-08-28 94 Bytes
WeKan-11.19-aarch64.AppImage 2026-08-28 186.8 MB
WeKan-11.19-aarch64.AppImage.md5sum 2026-08-28 63 Bytes
WeKan-11.19-aarch64.AppImage.sha256sum 2026-08-28 95 Bytes
WeKan-11.19-x86_64.AppImage 2026-08-28 189.9 MB
WeKan-11.19-x86_64.AppImage.md5sum 2026-08-28 62 Bytes
wekan-11.19-mac-arm64.zip 2026-08-28 227.7 MB
wekan-11.19-mac-arm64.zip.sha256sum 2026-08-28 92 Bytes
wekan-11.19-i386.zip 2026-08-28 229.4 MB
wekan-11.19-i386.zip.sha256sum 2026-08-28 87 Bytes
wekan-11.19-amd64.zip 2026-08-28 230.8 MB
wekan-11.19-amd64.zip.sha256sum 2026-08-28 88 Bytes
wekan-11.19-arm64.zip 2026-08-28 231.7 MB
wekan-11.19-arm64.zip.sha256sum 2026-08-28 88 Bytes
README.md 2026-08-28 10.3 kB
v11.19 source code.tar.gz 2026-08-28 42.0 MB
v11.19 source code.zip 2026-08-28 43.6 MB
Totals: 32 Items   3.1 GB 0

Binaries in these bundles

Each bundle carries a Node.js, a FerretDB and the MongoDB Database Tools. Which source has a given CPU varies from release to release - nodejs.org builds some architectures, unofficial-builds others, and the wekan/node-patches build the ones neither of them does - and not every source publishes a checksum. This is what went into this release, and which downloads were checked against a published SHA256.

Bundle Binary From Version Checked SHA256
amd64 FerretDB wekan/FerretDB v1.62.0 verified 42b6031e48a6a44c…
amd64 Node.js nodejs.org v24.20.0 verified 2f2c0da162318f0d…
arm64 FerretDB wekan/FerretDB v1.62.0 verified 930b33cbc83b35cb…
arm64 Node.js nodejs.org v24.20.0 verified 5f4ddab610c1ab20…

A row saying no checksum published is not a failed check - it is a source that publishes nothing to check against. Those are the ones worth fixing at the source.

v11.19 2026-08-28 WeKan ® release

In short: HostnameBleed regression coverage now checks documented hostnames as exact parsed tokens, resolving two follow-up CodeQL findings in test-only code. Test-matrix reliability covers resumed profile languages, speech scrolling, local Node discovery and bounded reusable AppImage jobs. Translations now merge valid Transifex human work over local fills without uploading machine translations as human, and recover human values displaced after mass filling. The table below is carried over from the release under this one, and is refilled from each build's provenance.tsv when this release is made.

Platform Binary From Version SHA256
amd64 Node.js nodejs.org v24.19.0 14b342e71204f811bde6153be8e04b62aef63c236fef92b55f9c83154b409647
amd64 FerretDB wekan/FerretDB v1.53.0 eae1f0a8f73bfc979738bfff7284d40fd1bc55de2cc56514721fc155c3624f7d
arm64 Node.js nodejs.org v24.19.0 01443c1e1a29e531ccad5a46fefa6df490d2189c49f7955904aecdbb0fe86fdc
arm64 FerretDB wekan/FerretDB v1.53.0 bdc50caee3ac28495b42d2130b94a042a9dd6d3a38f732cac02b648f36c891da
mac-arm64 Node.js nodejs.org v24.19.0 3f1cf157479c1480352083105e13faf9d008ede98e7e157746b6df940d197b94
mac-arm64 FerretDB wekan/FerretDB v1.53.0 cb14ffe93e285903e5a8a9c1821687ddb5b8a979a11c584bf4af534b272c6d3e
mac-x64 Node.js nodejs.org v24.19.0 d35e95230f46f6f0751df497c56622c6735e05d5e1fb1630996a005b9d328fe4
mac-x64 FerretDB wekan/FerretDB v1.53.0 d97dfa9afa60aa05f25384327de82efe7b71d958ed24c1f66618284294a65cd3

This release fixes the following SECURITY ISSUES found by GitHub CodeQL code scanning:

It compares hostname examples as exact parsed tokens. Thanks to GitHub CodeQL code scanning and xet7. CodeQL alerts [#437] and [#438] reported incomplete URL substring sanitization in the HostnameBleed regression test. The findings were limited to fixed test data: no request, user input or runtime application path reached these assertions. Parsing the example list and comparing its complete tokens avoids ambiguous URL substring checks while retaining positive coverage and a negative check for the wildcard lookalikes that the original HostnameBleed fix rejects.

and improves the following developer tooling:

Test matrix - local tool discovery and bounded workflows keep every stage running against the intended versions.

The WeKan matrix covers resumed languages, speech scrolling and AppImage timeouts reliably. Thanks to xet7. Persisted profile languages now apply reactively when a stored login finishes resuming, so Chinese and Japanese accessibility checks observe the user's real locale instead of the browser default. The speech-command regression gives its focusable list a deterministic overflow boundary before testing Page Down. GitHub does not allow `timeout-minutes` on a job that calls a reusable workflow, so the release guard now recognizes that syntax and separately proves every job inside the called AppImage workflow has its own timeout. The previously unbounded release lookup and publishing jobs are limited to 15 and 30 minutes.
Tests retain an installed local Node across Dockerfile version bumps. Thanks to xet7. The test runner previously added only the exact Node version named by the Dockerfile to `PATH`. When that version had just advanced beyond the toolchain already downloaded under `.tools`, the plain import stage could not find Node and Playwright version discovery silently selected its obsolete 1.60 fallback for dependencies that required 1.62.1. It now selects the newest installed architecture-matching local Node until setup downloads the exact release. A regression pins the fallback, version-aware ordering and exported path used by every subsequent test stage.

and improves the translation workflow:

Translation precedence - human work stays preferred without trusting wrong-language or provenance-unknown values.

Transifex human translations safely take precedence over local fills. Thanks to translators and xet7. The pull previously treated every committed non-English value as human and force-pushed restored languages, so direct machine/LLM fills could be uploaded to Transifex under false provenance. It also compared against `HEAD`, allowing an uncommitted local fill to be lost before the merge saw it. The workflow now snapshots the complete pre-pull tree, keeps each valid target-language Transifex value, and restores the snapshot wherever Transifex returns English or malformed code tokens. Nothing is pushed automatically. Known Russian-seeded Mongolian values are rejected even though both languages use Cyrillic, and protected `@PH…@` markers are restored without discarding the surrounding human prose. The interrupted pull merged 47 non-English human values across 29 locale files and four new source keys into eleven English variants. All available local fallbacks remain; the result has zero detected wrong-script values, placeholder markers or local translations lost to English.
Pre-fill human translations displaced by bad Transifex values return. Thanks to translators and xet7. A history audit compared every non-English value at the final pre-mass-fill boundary with the current locale files. Of 31 differences, seventeen are newer valid Spanish, Kinyarwanda or Traditional Chinese human translations and remain preferred. Fourteen older human values had regressed: Breton, Occitan, Volapük, Walloon, Wolof and Tamazight received French; Welsh retained an English word; Xhosa gained malformed prose; and three French variants received a broken placeholder example. Those fourteen exact historical values are restored. A reproducible audit pins the reviewed boundary and keys, while the pull merge rejects the known bad fingerprints on recurrence without blocking a future corrected Transifex human translation.
Reviewed human values are restored after Transifex markers are decoded. Thanks to translators and xet7. The first corrected live pull exposed an ordering edge case: eight known bad Welsh, French and Xhosa values arrived with protected `@PH…@` markers, so their bad-value fingerprints did not exist until marker repair ran after the merge. The workflow now performs the reviewed historical-human restoration after that decoding step. The eight regressions from the run were restored, and a test pins the required stage order. A subsequent clean live run pulled all 147 Transifex locales, restored 4,976 local fallback values across 124 files, decoded 43 protected markers in 31 values and restored the eight reviewed human values. It pushed nothing, left no working-tree difference and finished with zero displaced historical translations, machine markers or detected wrong-script values.
Unsafe translation push scripts are removed. Thanks to xet7. The bulk, single-locale and English-copy helpers all force-pushed complete local locale files to Transifex. Because those files intentionally combine human work with direct machine/LLM fallbacks, the helpers could publish provenance-unknown values as human translations and overwrite newer community work. Removing them makes the supported workflow pull-only for target translations; the separate English-source upload remains available. Regression coverage rejects any translation shell script that invokes a target-translation push and also pins the intentional source-only command.

Thanks to above GitHub users for their contributions and translators for their translations.

Source: README.md, updated 2026-08-28