Compare commits

...
22 Commits
Author SHA1 Message Date
Lauri Ojansivu b40e6caa4d v9.04 2026-05-01 14:17:01 +03:00
Lauri Ojansivu 2a3aa981d2 Upgrade to MongoDB 7.0.32 at Windows Bundle docs.
Thanks to MongoDB developers !
2026-05-01 14:14:06 +03:00
Lauri Ojansivu 653c61081a Update version script.
Thanks to xet7 !
2026-05-01 14:06:11 +03:00
Lauri Ojansivu cc3b5cb8c6 Updated ChangeLog. 2026-05-01 13:57:30 +03:00
Lauri Ojansivu df153dcc56 Revert Incomplete Fix "Show on Minicard" board card preference lost after upgrading from 8.74 to 8.98
Thanks to and xet7 !

Opens #6301
2026-05-01 13:56:16 +03:00
Lauri Ojansivu 5878c80fa6 Updated ChangeLog. 2026-05-01 13:47:46 +03:00
Lauri Ojansivu d04beea6f8 Fix: Added space between Card Number and Card Title at Minicard and Opened Card.
Thanks to xet7 !
2026-05-01 13:44:59 +03:00
Lauri Ojansivu d160d985c9 Updated ChangeLog. 2026-05-01 13:37:04 +03:00
Lauri Ojansivu f0a25358b4 Fix "Show on Minicard" board card preference lost after upgrading from 8.74 to 8.98 by changing back to original database field names without suffix OnMinicard.
Thanks to brlin-tw and xet7 !

Fixes #6301
2026-05-01 13:31:01 +03:00
Lauri Ojansivu 36e1753f89 Updated ChangeLog. 2026-05-01 12:53:45 +03:00
Lauri Ojansivu 9defe9681b Fix Cannot delete card checklist title, by removing "Delete" and "Convert to Card" that belong to Checklist Items only. Checklist Menu already has Delete Checklist.
Thanks to xet7 !

Fixes #5827
2026-05-01 12:49:08 +03:00
Lauri Ojansivu 2bb6999656 Updated ChangeLog. 2026-05-01 12:35:10 +03:00
Lauri Ojansivu 309b488861 Fix can not edit checklist title.
Thanks to xet7 !
2026-05-01 12:33:04 +03:00
Lauri Ojansivu 67192cf5c4 Updates 2026-04-30 02:36:05 +03:00
Lauri Ojansivu c84473ae43 v9.03 2026-04-29 00:57:29 +03:00
Lauri Ojansivu f6328937c9 Merge pull request #6321 from KhaoulaMaleh/fix/access
feat: add missing board‑attachments API endpoint (fix #6319)
2026-04-28 23:50:45 +03:00
KhaoulaMaleh 80db2517fd fixing access 2026-04-28 21:39:47 -11:00
Lauri Ojansivu 918bd0b6b5 Updated ChangeLog. 2026-04-28 20:41:20 +03:00
Lauri Ojansivu e22f422615 Update version script. Part 2.
Thanks to xet7 !
2026-04-28 20:40:19 +03:00
Lauri Ojansivu 1826f51664 Updated ChangeLog. 2026-04-28 20:37:12 +03:00
Lauri Ojansivu e547be9ab8 Update version script.
Thanks to xet7 !
2026-04-28 20:35:32 +03:00
Lauri Ojansivu 89140f1fee Updates 2026-04-28 20:08:08 +03:00
14 changed files with 118 additions and 26 deletions

No files matched your search

+38
View File
@@ -26,6 +26,44 @@ Versions:
- WeKan 8.00-8.06 had wrong raw database directory setting /var/snap/wekan/common/wekan and some cards were not visible,
it was fixed at WeKan 8.07 where database directory is back to /var/snap/wekan/common and all cards are visible.
# v9.04 2026-05-01 WeKan ® release
This release adds the following updates:
- [Upgrade to MongoDB 7.0.32. Update version script.](https://github.com/wekan/wekan/commit/653c61081a8d9306fb0b152f6a3a497c2607a1cf).
Thanks to MongoDB developers and xet7.
- [Upgrade to MongoDB 7.0.32 at Helm Chart](https://github.com/wekan/charts/commit/c55e9d3a130a7d259681185561b2741a64a8353e).
Thanks to MongoDB developers.
- [Upgrade to MongoDB 7.0.32 at Windows Bundle docs](https://github.com/wekan/wekan/commit/2a3aa981d2ba02ec87981e3af843811e31328fea).
Thanks to MongoDB developers.
and fixes the following bugs:
- [Fix can not edit checklist title](https://github.com/wekan/wekan/commit/309b488861c29b4d74262f099ee11329f6d151c7).
Thanks to xet7.
- [Fix Cannot delete card checklist title, by removing "Delete" and "Convert to Card" that belong to Checklist Items only. Checklist Menu already has Delete Checklist](https://github.com/wekan/wekan/commit/9defe9681b8091eec3037872882d0894fbdeeb20).
Thanks to rileybroberts and xet7.
- [Fix: Added space between Card Number and Card Title at Minicard and Opened Card](https://github.com/wekan/wekan/commit/d04beea6f8797856806ee63df6cd30a0c6446bd5).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v9.03 2026-04-29 WeKan ® release
This release adds the following new features:
- [Add missing board‑attachments API endpoint](https://github.com/wekan/wekan/pull/6321).
Thanks to KhaoulaMaleh.
and adds the following updates:
- Update version script.
[Part 1](https://github.com/wekan/wekan/commit/e547be9ab81f6a880954b3e34fc3b5e3edc8efc5),
[Part 2](https://github.com/wekan/wekan/commit/e22f4226151d54593d11ad8040cd46c39435ce5b).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v9.02 2026-04-28 WeKan ® release
This release fixes the following bugs:
+1 -1
View File
@@ -7,7 +7,7 @@ LABEL org.opencontainers.image.source="https://github.com/wekan/wekan"
# TARGETARCH and TARGETVARIANT are automatically provided by Docker Buildx
ARG TARGETARCH
ARG TARGETVARIANT
ARG VERSION=9.02
ARG VERSION=9.04
ARG DEBIAN_FRONTEND=noninteractive
ENV BUILD_DEPS="apt-utils gnupg wget bzip2 g++ curl libarchive-tools build-essential git ca-certificates python3 unzip"
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v9.02.0"
appVersion: "v9.04.0"
files:
userUploads:
- README.md
+1 -1
View File
@@ -66,7 +66,7 @@ template(name="cardDetails")
+viewer
if currentBoard.allowsCardNumber
span.card-number
| ##{getCardNumber}
| ##{getCardNumber}  
= getTitle
if isWatching
i.card-details-watch
+14 -1
View File
@@ -34,7 +34,7 @@ template(name="checklists")
template(name="checklistDetail")
.js-checklist.checklist.nodragscroll
+inlinedForm(classNames="js-edit-checklist-title" checklist = checklist)
+editChecklistItemForm(checklist = checklist)
+editChecklistForm(checklist = checklist)
else
.checklist-title
span
@@ -85,6 +85,19 @@ template(name="addChecklistItemForm")
label.toggle-label(for="toggleNewlineBecomesNewChecklistItemOriginOrder")
| {{_ 'originOrder'}}
template(name="editChecklistForm")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
span.copied-tooltip {{_ 'copied'}}
textarea.js-edit-checklist-item(rows='1' autofocus dir="auto")
if $eq type 'item'
= item.title
else
= checklist.title
.edit-controls.clearfix
button.primary.confirm.js-submit-edit-checklist-item-form(type="submit") {{_ 'save'}}
a.fa.fa-times-thin.js-close-inlined-form(title="{{_ 'close-edit-checklist-item'}}")
span(title=createdAt) {{ displayDate createdAt }}
template(name="editChecklistItemForm")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
span.copied-tooltip {{_ 'copied'}}
+5 -2
View File
@@ -135,8 +135,11 @@ Template.checklists.events({
event.preventDefault();
const textarea = tpl.find('textarea.js-edit-checklist-item');
const title = textarea.value.trim();
const checklist = Template.currentData().checklist;
checklist.setTitle(title);
const formData = Blaze.getData(event.currentTarget) || Blaze.getData(event.target);
const checklist = formData?.checklist;
if (checklist) {
checklist.setTitle(title);
}
},
'submit .js-add-checklist-item'(event, tpl) {
event.preventDefault();
+1 -1
View File
@@ -74,7 +74,7 @@ template(name="minicard")
+viewer
if showCardNumber
span.card-number
| ##{getCardNumber}
| ##{getCardNumber}  
= getTitle
if showLabels
if labels
+4 -4
View File
@@ -10,18 +10,18 @@ This is without container (without Docker or Snap).
Right click and download files 1-4:
1. [wekan-9.02-win64.zip](https://github.com/wekan/wekan/releases/download/v9.02/wekan-9.02-win64.zip)
1. [wekan-9.04-win64.zip](https://github.com/wekan/wekan/releases/download/v9.04/wekan-9.04-win64.zip)
2. [node.exe](https://nodejs.org/dist/latest-v24.x/win-x64/node.exe)
3. [mongodb-windows-x86_64-7.0.31-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-7.0.31-signed.msi)
3. [mongodb-windows-x86_64-7.0.32-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-7.0.32-signed.msi)
4. [start-wekan.bat](https://raw.githubusercontent.com/wekan/wekan/main/start-wekan.bat)
5. Copy files from steps 1-4 with USB stick or DVD to offline Windows computer
6. Double click `mongodb-windows-x86_64-7.0.31-signed.msi` . In installer, uncheck downloading MongoDB compass.
6. Double click `mongodb-windows-x86_64-7.0.32-signed.msi` . In installer, uncheck downloading MongoDB compass.
7. Unzip `wekan-9.02-win64.zip` , inside it is directory `bundle`, to it copy other files:
7. Unzip `wekan-9.04-win64.zip` , inside it is directory `bundle`, to it copy other files:
```
bundle (directory)
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "wekan",
"version": "v9.02.0",
"version": "v9.04.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "wekan",
"version": "v9.01.0",
"version": "v9.03.0",
"license": "MIT",
"dependencies": {
"@aws-sdk/client-s3": "^3.1019.0",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v9.02.0",
"version": "v9.04.0",
"description": "Open-Source kanban",
"private": true,
"repository": {
+8 -5
View File
@@ -51,7 +51,6 @@ version_bump_logic() {
# 3. Update Configuration Files: MongoDB & Tools
echo "[DEBUG] Updating snapcraft.yaml and documentation..."
sedi "s|mongodb-linux-x86_64-ubuntu[0-9]\+-7\.[0-9][0-9]*\.[0-9][0-9]*|mongodb-linux-x86_64-ubuntu${UBUNTU_VER}-$MONGO_VER|g" snapcraft.yaml
sedi "s|mongodb-linux-x86_64-ubuntu[0-9]\+-7\.[0-9][0-9]*\.[0-9][0-9]*|mongodb-linux-x86_64-ubuntu${UBUNTU_VER}-$MONGO_VER|g" docs/Platforms/Propietary/Windows/Offline.md
# Ensure database tools point to the correct Ubuntu version
sedi -E "s|mongodb-database-tools-ubuntu[0-9]+-x86_64|mongodb-database-tools-ubuntu2204-x86_64|g" snapcraft.yaml
@@ -74,6 +73,8 @@ version_bump_logic() {
sedi "0,/\"version\": \"[^\"]*\"/s//\"version\": \"${PKG_VER}\"/" package-lock.json
sedi "0,/appVersion: \"[^\"]*\"/s/appVersion: \"[^\"]*\"/appVersion: \"${PKG_VER}\"/" Stackerfile.yml
sedi "2s/^version: '[^']*'/version: '${NEW_VERSION}'/" snapcraft.yaml
sedi "s|v$OLD_VERSION/|v$NEW_VERSION/|g" snapcraft.yaml
sedi "s|wekan-$OLD_VERSION-|wekan-$NEW_VERSION-|g" snapcraft.yaml
# Sandstorm Specifics
sedi "0,/appVersion = [0-9]\+/s/appVersion = [0-9]\+/appVersion = ${NEW_NO_DOTS}/" sandstorm-pkgdef.capnp
@@ -82,7 +83,7 @@ version_bump_logic() {
# Docker and Documentation
sedi "s|ARG VERSION=$OLD_VERSION|ARG VERSION=$NEW_VERSION|g" Dockerfile
sedi "s|wekan-$OLD_VERSION-|wekan-$NEW_VERSION-|g" docs/Platforms/Propietary/Windows/Offline.md
sedi "s|wekan-$OLD_VERSION|wekan-$NEW_VERSION|g" docs/Platforms/Propietary/Windows/Offline.md
sedi "s|/v$OLD_VERSION/|/v$NEW_VERSION/|g" docs/Platforms/Propietary/Windows/Offline.md
# 6. Update Wekan website (if applicable)
@@ -91,11 +92,13 @@ version_bump_logic() {
METEOR_VER=$(grep -o 'METEOR@[^ "\\]*' .meteor/release | head -1)
NPM_VER=$(grep -o 'NPM_VERSION=[^ "\\]*' Dockerfile | head -1 | cut -d= -f2 | tr -d '"')
sedi "s|MongoDB 7\\.x|MongoDB $MONGO_VER Ubuntu $UBUNTU_VER|g" "$INSTALL_PAGE"
(cd ../w/wekan.fi && git pull)
#sedi "s|MongoDB 7\\.x|MongoDB $MONGO_VER|g" "$INSTALL_PAGE"
sedi "s|<span id=\"meteor-version\">[^<]*</span>|<span id=\"meteor-version\">$METEOR_VER</span>|g" "$INSTALL_PAGE"
sedi "s|<span id=\"node-version\">[^<]*</span>|<span id=\"node-version\">v$NEW_NODE</span>|g" "$INSTALL_PAGE"
sedi "s|<span id=\"npm-version\">[^<]*</span>|<span id=\"npm-version\">$NPM_VER</span>|g" "$INSTALL_PAGE"
#sedi "s|<span id=\"node-version\">[^<]*</span>|<span id=\"node-version\">v$NEW_NODE</span>|g" "$INSTALL_PAGE"
#sedi "s|<span id=\"npm-version\">[^<]*</span>|<span id=\"npm-version\">$NPM_VER</span>|g" "$INSTALL_PAGE"
sedi "s|<span class=\"version-number\">v${OLD_VERSION}</span>|<span class=\"version-number\">v${NEW_VERSION}</span>|g" "$INSTALL_PAGE"
(cd ../w/wekan.fi && git add --all && git commit -m "Updates" && git push)
fi
echo "--- Version bump complete ---"
+2 -2
View File
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
appVersion = 902,
appVersion = 904,
# Increment this for every release.
appMarketingVersion = (defaultText = "9.02~2026-04-28"),
appMarketingVersion = (defaultText = "9.04~2026-05-01"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+35
View File
@@ -335,6 +335,41 @@ WebApp.handlers.use('/api/attachment/upload', async (req, res, next) => {
sendErrorResponse(res, 401, error.message);
}
});
// Board attachments endpoint (legacy)
WebApp.handlers.use('/api/boards/:boardId/attachments', async (req, res, next) => {
if (req.method !== 'GET') {
return next();
}
try {
const userId = await authenticateApiRequest(req);
const boardId = req.params.boardId;
const board = await ReactiveCache.getBoard(boardId);
if (!board || !board.isBoardMember(userId)) {
return sendErrorResponse(res, 403, 'You do not have permission to access this board');
}
const query = { 'meta.boardId': boardId };
const attachments = await ReactiveCache.getAttachments(query);
const attachmentList = attachments.map(attachment => {
const strategy = fileStoreStrategyFactory.getFileStrategy(attachment, 'original');
return {
attachmentId: attachment._id,
fileName: attachment.name,
fileSize: attachment.size,
fileType: attachment.type,
storageBackend: strategy.getStorageName(),
boardId: attachment.meta.boardId,
swimlaneId: attachment.meta.swimlaneId,
listId: attachment.meta.listId,
cardId: attachment.meta.cardId,
createdAt: attachment.uploadedAt,
isImage: attachment.isImage
};
});
sendJsonResponse(res, 200, { success: true, attachments: attachmentList, count: attachmentList.length });
} catch (error) {
sendErrorResponse(res, 401, error.message);
}
});
// Copy attachment endpoint
WebApp.handlers.use('/api/attachment/copy', async (req, res, next) => {
+5 -5
View File
@@ -1,5 +1,5 @@
name: wekan
version: '9.02'
version: '9.04'
base: core24
summary: Open Source kanban
description: |
@@ -78,7 +78,7 @@ apps:
parts:
mongodb:
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-7.0.31.tgz
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-7.0.32.tgz
plugin: dump
stage-packages:
- libssl3
@@ -135,9 +135,9 @@ parts:
rm -rf .build
mkdir .build
cd .build
wget https://github.com/wekan/wekan/releases/download/v9.02/wekan-9.02-amd64.zip
unzip wekan-9.02-amd64.zip
rm wekan-9.02-amd64.zip
wget https://github.com/wekan/wekan/releases/download/v9.04/wekan-9.04-amd64.zip
unzip wekan-9.04-amd64.zip
rm wekan-9.04-amd64.zip
# Fix: bcrypt 5.0.1 (Meteor accounts-password) ships node-addon-api@3
# which fails to compile on Node.js 24. Replace with bcrypt 6.0.0.
BCRYPT_DIR="bundle/programs/server/npm/node_modules/meteor/accounts-password/node_modules/bcrypt"