Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f1c962fbbc | ||
|
|
5d79c231ed | ||
|
|
972f0481e5 | ||
|
|
49781aae17 | ||
|
|
51f22f48dc | ||
|
|
a64381153f | ||
|
|
10280966ac | ||
|
|
16ad6bf9fc | ||
|
|
1aa5c23bba | ||
|
|
9216a69c05 | ||
|
|
7b2cff4c5e | ||
|
|
bf42958059 | ||
|
|
1deccf2f4b | ||
|
|
57755ef413 | ||
|
|
c2cf850179 | ||
|
|
67838ae29e | ||
|
|
4d22477477 | ||
|
|
96b5ed1df6 | ||
|
|
b9ec43c0f7 | ||
|
|
8a0899a819 | ||
|
|
e390852a67 | ||
|
|
c4083c23d6 | ||
|
|
bdc751ac24 | ||
|
|
0e23975964 | ||
|
|
ad53414c4d | ||
|
|
23e01130e9 | ||
|
|
f779c35d0e |
No files matched your search
@@ -10,6 +10,47 @@ Note:
|
||||
|
||||
[How to upgrade WeKan](https://github.com/wekan/wekan/issues/4585)
|
||||
|
||||
# v6.78 2023-02-28 WeKan ® release
|
||||
|
||||
This release fixes the following CRITICAL SECURITY ISSUES:
|
||||
|
||||
- [Try to fix some security issue](https://github.com/wekan/wekan/commit/5d79c231ed3cfc09636ab678b3f62ea9f36160f2).
|
||||
Thanks to Responsible Security Disclousure contributors and xet7.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v6.77 2023-02-27 WeKan ® release
|
||||
|
||||
This release adds the following updates:
|
||||
|
||||
- Updated release scripts
|
||||
[Part 1](https://github.com/wekan/wekan/commit/23e01130e907f0068333046dc4b88a471b781ce7),
|
||||
[Part 2](https://github.com/wekan/wekan/commit/ad53414c4d415b93e808ec88cc36af5a4741f681),
|
||||
[Part 3](https://github.com/wekan/wekan/commit/e390852a673be25e00cb397acf4dbdc5a7d2a1f9).
|
||||
Updated release scripts.
|
||||
Thanks to xet7.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
- [Fixed indentation for image size and compression in docker-compose.yml](https://github.com/wekan/wekan/pull/4846).
|
||||
Thanks to Entepotenz.
|
||||
- [Made ☰ menu buttons bigger at minicard and list, they were too hard to click when they were small](https://github.com/wekan/wekan/commit/c2cf850179ad0079d83561675b6dc2c59825cc11).
|
||||
Thanks to mohammadZahedian and xet7.
|
||||
- [Added "Move card to archive" to minicard ☰ menu](https://github.com/wekan/wekan/commit/1deccf2f4b5ba1a72bc76d5ae83858e6c50b36ae).
|
||||
Thanks to mohammadZahedian and xet7.
|
||||
- [Fix attachment migration error about avatarUrl startsWith undefined](https://github.com/wekan/wekan/commit/7b2cff4c5e7bae4971776638b680696596edc7e6).
|
||||
Thanks to xet7.
|
||||
- Try to fix attachment migrations to ostrioFiles, allow existing files to be migrated.
|
||||
[Part 1](https://github.com/wekan/wekan/commit/9216a69c0541325be6941c07d256b07627a8ec73),
|
||||
[Part 2](https://github.com/wekan/wekan/commit/16ad6bf9fc75b39e6e8cedb8a5a98ec963ccf14a).
|
||||
Thanks to xet7.
|
||||
- [MongoDB to 5 for beta Snap. MongoDB 5 does not seem to show some errors that only MongoDB 6 has](https://github.com/wekan/wekan/commit/a64381153fd762b67f2a752b590b2cdd196bcfe5).
|
||||
Thanks to xet7.
|
||||
- [Use MongoDB 5 at docker-compose.yml](https://github.com/wekan/wekan/commit/51f22f48dc916717ed6be9502dc767798692f07b).
|
||||
Thanks to xet7.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v6.76 2023-02-22 WeKan ® release
|
||||
|
||||
This release adds the following updates:
|
||||
@@ -52,6 +93,8 @@ and fixes the following bugs:
|
||||
Thanks to garciadavy.
|
||||
- [Swipebox slide background gradient of black to blue, so that back SVG images are visible](https://github.com/wekan/wekan/commit/c3577aa434ac5330d664f17d0771ff9679cced86).
|
||||
Thanks to xet7.
|
||||
- [Fix typo](https://github.com/wekan/wekan/pull/4840).
|
||||
Thanks to robert-scheck.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
|
||||
appVersion: "v6.76.0"
|
||||
appVersion: "v6.78.0"
|
||||
files:
|
||||
userUploads:
|
||||
- README.md
|
||||
|
||||
@@ -45,12 +45,12 @@
|
||||
}
|
||||
.minicard-details-menu-with-handle {
|
||||
float: right;
|
||||
font-size: 14px;
|
||||
font-size: 18px;
|
||||
padding-right: 30px;
|
||||
}
|
||||
.minicard-details-menu {
|
||||
float: right;
|
||||
font-size: 14px;
|
||||
font-size: 18px;
|
||||
}
|
||||
@media print {
|
||||
.minicard-details-menu,
|
||||
|
||||
@@ -172,6 +172,12 @@ template(name="minicardDetailsActionsPopup")
|
||||
i.fa.fa-copy
|
||||
| {{_ 'copyCardPopup-title'}}
|
||||
hr
|
||||
li
|
||||
a.js-archive
|
||||
i.fa.fa-arrow-right
|
||||
i.fa.fa-archive
|
||||
| {{_ 'archive-card'}}
|
||||
hr
|
||||
li
|
||||
a.js-move-card-to-top
|
||||
i.fa.fa-arrow-up
|
||||
|
||||
@@ -168,4 +168,9 @@ Template.minicardDetailsActionsPopup.events({
|
||||
this.move(this.boardId, this.swimlaneId, this.listId, maxOrder + 1);
|
||||
Popup.back();
|
||||
},
|
||||
'click .js-archive': Popup.afterConfirm('cardArchive', function () {
|
||||
Popup.close();
|
||||
this.archive();
|
||||
Utils.goBoardId(this.boardId);
|
||||
}),
|
||||
});
|
||||
@@ -112,6 +112,9 @@
|
||||
color: #4d4d4d;
|
||||
padding-left: 4px;
|
||||
}
|
||||
.js-open-list-menu {
|
||||
font-size: 18px;
|
||||
}
|
||||
.list-body {
|
||||
flex: 1 1 auto;
|
||||
flex-direction: column;
|
||||
|
||||
+3
-3
@@ -98,7 +98,7 @@ services:
|
||||
# Quay image does work:
|
||||
# image: quay.io/wekan/mongo:4.4.2-bionic
|
||||
# Docker Hub MongoDB image does work:
|
||||
image: mongo:6
|
||||
image: mongo:5
|
||||
#-------------------------------------------------------------------------------------
|
||||
container_name: wekan-db
|
||||
restart: always
|
||||
@@ -287,8 +287,8 @@ services:
|
||||
#---------------------------------------------------------------
|
||||
# ==== Allow to shrink attached/pasted image ====
|
||||
# https://github.com/wekan/wekan/pull/2544
|
||||
#-MAX_IMAGE_PIXEL=1024
|
||||
#-IMAGE_COMPRESS_RATIO=80
|
||||
#- MAX_IMAGE_PIXEL=1024
|
||||
#- IMAGE_COMPRESS_RATIO=80
|
||||
#---------------------------------------------------------------
|
||||
# ==== NOTIFICATION TRAY AFTER READ DAYS BEFORE REMOVE =====
|
||||
# Number of days after a notification is read before we remove it.
|
||||
|
||||
+1203
-1203
File diff suppressed because it is too large.
Load diff
+34
-29
@@ -1,4 +1,5 @@
|
||||
import escapeForRegex from 'escape-string-regexp';
|
||||
import DOMPurify from 'dompurify';
|
||||
|
||||
CardComments = new Mongo.Collection('card_comments');
|
||||
|
||||
@@ -101,39 +102,43 @@ CardComments.helpers({
|
||||
},
|
||||
|
||||
toggleReaction(reactionCodepoint) {
|
||||
|
||||
const cardCommentReactions = CardCommentReactions.findOne({cardCommentId: this._id});
|
||||
const reactions = !!cardCommentReactions ? cardCommentReactions.reactions : [];
|
||||
const userId = Meteor.userId();
|
||||
const reaction = reactions.find(r => r.reactionCodepoint === reactionCodepoint);
|
||||
|
||||
// If no reaction is set for the codepoint, add this
|
||||
if (!reaction) {
|
||||
reactions.push({ reactionCodepoint, userIds: [userId] });
|
||||
if (reactionCodepoint !== DOMPurify.sanitize(reactionCodepoint)) {
|
||||
return false;
|
||||
} else {
|
||||
|
||||
// toggle user reaction upon previous reaction state
|
||||
const userHasReacted = reaction.userIds.includes(userId);
|
||||
if (userHasReacted) {
|
||||
reaction.userIds.splice(reaction.userIds.indexOf(userId), 1);
|
||||
if (reaction.userIds.length === 0) {
|
||||
reactions.splice(reactions.indexOf(reaction), 1);
|
||||
}
|
||||
const cardCommentReactions = CardCommentReactions.findOne({cardCommentId: this._id});
|
||||
const reactions = !!cardCommentReactions ? cardCommentReactions.reactions : [];
|
||||
const userId = Meteor.userId();
|
||||
const reaction = reactions.find(r => r.reactionCodepoint === reactionCodepoint);
|
||||
|
||||
// If no reaction is set for the codepoint, add this
|
||||
if (!reaction) {
|
||||
reactions.push({ reactionCodepoint, userIds: [userId] });
|
||||
} else {
|
||||
reaction.userIds.push(userId);
|
||||
}
|
||||
}
|
||||
|
||||
// If no reaction doc exists yet create otherwise update reaction set
|
||||
if (!!cardCommentReactions) {
|
||||
return CardCommentReactions.update({ _id: cardCommentReactions._id }, { $set: { reactions } });
|
||||
} else {
|
||||
return CardCommentReactions.insert({
|
||||
boardId: this.boardId,
|
||||
cardCommentId: this._id,
|
||||
cardId: this.cardId,
|
||||
reactions
|
||||
});
|
||||
// toggle user reaction upon previous reaction state
|
||||
const userHasReacted = reaction.userIds.includes(userId);
|
||||
if (userHasReacted) {
|
||||
reaction.userIds.splice(reaction.userIds.indexOf(userId), 1);
|
||||
if (reaction.userIds.length === 0) {
|
||||
reactions.splice(reactions.indexOf(reaction), 1);
|
||||
}
|
||||
} else {
|
||||
reaction.userIds.push(userId);
|
||||
}
|
||||
}
|
||||
|
||||
// If no reaction doc exists yet create otherwise update reaction set
|
||||
if (!!cardCommentReactions) {
|
||||
return CardCommentReactions.update({ _id: cardCommentReactions._id }, { $set: { reactions } });
|
||||
} else {
|
||||
return CardCommentReactions.insert({
|
||||
boardId: this.boardId,
|
||||
cardCommentId: this._id,
|
||||
cardId: this.cardId,
|
||||
reactions
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+24
-22
@@ -13,35 +13,37 @@ if (Meteor.isServer) {
|
||||
export async function isFileValid(fileObj, mimeTypesAllowed, sizeAllowed, externalCommandLine) {
|
||||
let isValid = true;
|
||||
|
||||
if (mimeTypesAllowed.length) {
|
||||
const mimeTypeResult = await FileType.fromFile(fileObj.path);
|
||||
if (Meteor.settings.public.ostrioFilesMigrationInProgress !== "true") {
|
||||
if (mimeTypesAllowed.length) {
|
||||
const mimeTypeResult = await FileType.fromFile(fileObj.path);
|
||||
|
||||
const mimeType = (mimeTypeResult ? mimeTypeResult.mime : fileObj.type);
|
||||
const baseMimeType = mimeType.split('/', 1)[0];
|
||||
const mimeType = (mimeTypeResult ? mimeTypeResult.mime : fileObj.type);
|
||||
const baseMimeType = mimeType.split('/', 1)[0];
|
||||
|
||||
isValid = mimeTypesAllowed.includes(mimeType) || mimeTypesAllowed.includes(baseMimeType + '/*') || mimeTypesAllowed.includes('*');
|
||||
isValid = mimeTypesAllowed.includes(mimeType) || mimeTypesAllowed.includes(baseMimeType + '/*') || mimeTypesAllowed.includes('*');
|
||||
|
||||
if (!isValid) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " - mimetype " + mimeType);
|
||||
if (!isValid) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " - mimetype " + mimeType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (isValid && sizeAllowed && fileObj.size > sizeAllowed) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " - size " + fileObj.size);
|
||||
isValid = false;
|
||||
}
|
||||
|
||||
if (isValid && externalCommandLine) {
|
||||
await asyncExec(externalCommandLine.replace("{file}", '"' + fileObj.path + '"'));
|
||||
isValid = fs.existsSync(fileObj.path);
|
||||
|
||||
if (!isValid) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " has been deleted externally");
|
||||
if (isValid && sizeAllowed && fileObj.size > sizeAllowed) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " - size " + fileObj.size);
|
||||
isValid = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (isValid) {
|
||||
console.debug("Validation of uploaded file successful: file " + fileObj.path);
|
||||
if (isValid && externalCommandLine) {
|
||||
await asyncExec(externalCommandLine.replace("{file}", '"' + fileObj.path + '"'));
|
||||
isValid = fs.existsSync(fileObj.path);
|
||||
|
||||
if (!isValid) {
|
||||
console.log("Validation of uploaded file failed: file " + fileObj.path + " has been deleted externally");
|
||||
}
|
||||
}
|
||||
|
||||
if (isValid) {
|
||||
console.debug("Validation of uploaded file successful: file " + fileObj.path);
|
||||
}
|
||||
}
|
||||
|
||||
return isValid;
|
||||
|
||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v6.76.0",
|
||||
"version": "v6.78.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v6.76.0",
|
||||
"version": "v6.78.0",
|
||||
"description": "Open-Source kanban",
|
||||
"private": true,
|
||||
"repository": {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<title>Wekan REST API v6.76</title>
|
||||
<title>Wekan REST API v6.78</title>
|
||||
|
||||
<style>
|
||||
</style>
|
||||
@@ -1558,7 +1558,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
|
||||
<ul class="toc-list-h1">
|
||||
|
||||
<li>
|
||||
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v6.76">Wekan REST API v6.76</a>
|
||||
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v6.78">Wekan REST API v6.78</a>
|
||||
|
||||
</li>
|
||||
|
||||
@@ -2161,7 +2161,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
|
||||
<div class="page-wrapper">
|
||||
<div class="dark-box"></div>
|
||||
<div class="content">
|
||||
<h1 id="wekan-rest-api">Wekan REST API v6.76</h1>
|
||||
<h1 id="wekan-rest-api">Wekan REST API v6.78</h1>
|
||||
<blockquote>
|
||||
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
|
||||
</blockquote>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
swagger: '2.0'
|
||||
info:
|
||||
title: Wekan REST API
|
||||
version: v6.76
|
||||
version: v6.78
|
||||
description: |
|
||||
The REST API allows you to control and extend Wekan with ease.
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ rm -rf bundle
|
||||
rm wekan-$1-arm64.zip
|
||||
#rm wekan-$1.zip
|
||||
#wget https://releases.wekan.team/wekan-$1.zip
|
||||
7z x wekan-$1.zip
|
||||
7z x wekan-$1-amd64.zip
|
||||
|
||||
(cd bundle/programs/server && chmod u+w *.json && cd node_modules/fibers && node build.js)
|
||||
#cd ../../../..
|
||||
|
||||
@@ -15,9 +15,7 @@ sudo npm -g uninstall node-pre-gyp
|
||||
sudo npm -g install @mapbox/node-pre-gyp
|
||||
rm -rf bundle
|
||||
rm wekan-$1-ppc64le.zip
|
||||
#rm wekan-$1.zip
|
||||
#wget https://releases.wekan.team/wekan-$1.zip
|
||||
7z x wekan-$1.zip
|
||||
7z x wekan-$1-amd64.zip
|
||||
|
||||
(cd bundle/programs/server && chmod u+w *.json && cd node_modules/fibers && node build.js)
|
||||
#cd ../../../..
|
||||
|
||||
@@ -29,8 +29,8 @@ rm -rf bundle
|
||||
rm wekan-$1-s390x.zip
|
||||
|
||||
#rm wekan-$1.zip
|
||||
#wget https://releases.wekan.team/wekan-$1.zip
|
||||
7za x wekan-$1.zip
|
||||
#wget https://releases.wekan.team/wekan-$1-amd64.zip
|
||||
7za x wekan-$1-amd64.zip
|
||||
|
||||
(cd bundle/programs/server && chmod u+w *.json && cd node_modules/fibers && node build.js)
|
||||
#cd ../../../..
|
||||
|
||||
@@ -6,11 +6,11 @@ ECHO 1) Deleting old bundle
|
||||
CALL DEL /F /S /Q bundle
|
||||
|
||||
ECHO 2) Downloading new WeKan.zip
|
||||
CALL DEL wekan-%1.zip
|
||||
CALL wget https://releases.wekan.team/wekan-%1.zip
|
||||
CALL DEL wekan-%1-amd64.zip
|
||||
CALL wget https://releases.wekan.team/wekan-%1-amd64.zip
|
||||
|
||||
ECHO 3) Unarchiving new WeKan
|
||||
CALL 7z x wekan-%1.zip
|
||||
CALL 7z x wekan-%1-amd64.zip
|
||||
|
||||
ECHO 4) Reinstalling bcrypt
|
||||
cmd /c "CD bundle\programs\server\npm\node_modules\meteor\accounts-password && npm remove bcrypt && npm install bcrypt"
|
||||
|
||||
+1
-1
@@ -11,4 +11,4 @@ fi
|
||||
mkdir ~/rel$1
|
||||
mv ~/repos/wekan/wekan-$1*.zip /home/wekan/rel$1/
|
||||
mv ~/Julkinen/wekan-$1*.zip /home/wekan/rel$1/
|
||||
mv /home/wekan/repos/wekan/.build/wekan-$1.zip /home/wekan/rel$1/wekan-$1-amd64.zip
|
||||
mv /home/wekan/repos/wekan/.build/wekan-$1-amd64.zip /home/wekan/rel$1/wekan-$1-amd64.zip
|
||||
@@ -3,16 +3,16 @@ sudo apt-get -y install parallel
|
||||
./releases/rebuild-release.sh
|
||||
#./releases/delete-phantomjs.sh
|
||||
cd ~/repos/wekan/.build
|
||||
zip -r wekan-$1.zip bundle
|
||||
zip -r wekan-$1-amd64.zip bundle
|
||||
|
||||
{
|
||||
scp ~/repos/wekan/releases/build-bundle-arm64.sh a:/home/wekan/
|
||||
scp ~/repos/wekan/releases/build-bundle-s390x.sh s:/home/linux1/
|
||||
#scp ~/repos/wekan/releases/build-bundle-ppc64el.sh o:/home/ubuntu/
|
||||
scp ~/repos/wekan/releases/release-x2.sh x2:/data/websites/
|
||||
scp wekan-$1.zip x2:/data/websites/releases.wekan.team/
|
||||
scp wekan-$1.zip a:/home/wekan/
|
||||
scp wekan-$1.zip s:/home/linux1/
|
||||
scp wekan-$1-amd64.zip x2:/data/websites/releases.wekan.team/
|
||||
scp wekan-$1-amd64.zip a:/home/wekan/
|
||||
scp wekan-$1-amd64.zip s:/home/linux1/
|
||||
#scp wekan-$1.zip o:/home/ubuntu/
|
||||
} | parallel -k
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ meteor-spk pack wekan-$1.spk
|
||||
spk publish wekan-$1.spk
|
||||
|
||||
# Upload spk to https://releases.wekan.team/sandstorm/
|
||||
scp wekan-$1.spk x2:/var/websites/releases.wekan.team/public/sandstorm/
|
||||
scp wekan-$1.spk x2:/data/websites/releases.wekan.team/dev/sandstorm/
|
||||
|
||||
# Delete old temporary build directory
|
||||
rm -rf ~/repos/wekan/.meteor-spk
|
||||
+8
-21
@@ -8,51 +8,38 @@ if [ $# -ne 2 ]
|
||||
fi
|
||||
|
||||
echo "Release: x64"
|
||||
cd /data/websites/releases.wekan.team/public
|
||||
cd /data/websites/releases.wekan.team
|
||||
mkdir -p /data/websites/old-releases
|
||||
mv wekan-$1.zip /data/websites/old-releases/
|
||||
#mv SHA256SUMS.txt x64-SHA256SUMS.txt
|
||||
#cat x64-SHA256SUMS.txt | grep -v wekan-$1.zip > SHA256SUMS.txt
|
||||
#rm x64-SHA256SUMS.txt
|
||||
cp wekan-$2.zip wekan-latest-x64.zip
|
||||
mv wekan-$1-amd64.zip /data/websites/old-releases/
|
||||
cp wekan-$2-amd64.zip wekan-latest-amd64.zip
|
||||
cp wekan-$2-amd64.zip wekan-$2.zip
|
||||
sha256sum wekan-*.zip > SHA256SUMS.txt
|
||||
|
||||
echo "Release: x64 windows"
|
||||
cd /data/websites/releases.wekan.team/public/windows
|
||||
cd /data/websites/releases.wekan.team/windows
|
||||
mkdir -p /data/websites/old-releases/windows
|
||||
mv wekan-$1-amd64-windows.zip /data/websites/old-releases/windows/
|
||||
#sha256sum wekan-$2-amd64-windows.zip >> SHA256SUMS.txt
|
||||
#mv SHA256SUMS.txt x64-windows-SHA256SUMS.txt
|
||||
#cat x64-windows-SHA256SUMS.txt | grep -v wekan-$1-amd64-windows.zip > SHA256SUMS.txt
|
||||
#rm x64-windows-SHA256SUMS.txt
|
||||
cp wekan-$2-amd64-windows.zip wekan-latest-amd64-windows.zip
|
||||
sha256sum wekan-*.zip > SHA256SUMS.txt
|
||||
|
||||
echo "Release: arm64"
|
||||
cd /data/websites/releases.wekan.team/public/raspi3
|
||||
cd /data/websites/releases.wekan.team/raspi3
|
||||
mkdir -p /data/websites/old-releases/raspi3/
|
||||
mv wekan-$1-arm64.zip /data/websites/old-releases/raspi3/
|
||||
#sha256sum wekan-$2-arm64.zip >> SHA256SUMS.txt
|
||||
#mv SHA256SUMS.txt arm64-SHA256SUMS.txt
|
||||
#cat arm64-SHA256SUMS.txt | grep -v wekan-$1-arm64.zip > SHA256SUMS.txt
|
||||
#rm arm64-SHA256SUMS.txt
|
||||
cp wekan-$2-arm64.zip wekan-latest-arm64.zip
|
||||
sha256sum wekan-*.zip > SHA256SUMS.txt
|
||||
|
||||
echo "Release: s390x"
|
||||
cd /data/websites/releases.wekan.team/public/s390x
|
||||
cd /data/websites/releases.wekan.team/s390x
|
||||
mkdir -p /data/websites/old-releases/s390x
|
||||
mv wekan-$1-s390x.zip /data/websites/old-releases/s390x/
|
||||
#sha256sum wekan-$2-s390x.zip >> SHA256SUMS.txt
|
||||
#mv SHA256SUMS.txt s390x-SHA256SUMS.txt
|
||||
#cat s390x-SHA256SUMS.txt | grep -v wekan-$1-s390x.zip > SHA256SUMS.txt
|
||||
#rm s390x-SHA256SUMS.txt
|
||||
cp wekan-$2-s390x.zip wekan-latest-s390x.zip
|
||||
sha256sum wekan-*.zip > SHA256SUMS.txt
|
||||
|
||||
# OpenPower MiniCloud is discontinued, no ppc64le build server
|
||||
#echo "Release: ppc64le"
|
||||
#cd /data/websites/releases.wekan.team/public/ppc64le
|
||||
#cd /data/websites/releases.wekan.team/ppc64le
|
||||
#mkdir -p /data/websites/old-releases/ppc64le
|
||||
#mv wekan-$1-ppc64le.zip /data/websites/old-releases/ppc64le/
|
||||
#sha256sum wekan-$2-ppc64le.zip >> SHA256SUMS.txt
|
||||
|
||||
+1
-1
@@ -14,4 +14,4 @@ fi
|
||||
scp a:/home/wekan/wekan-$1-arm64.zip .
|
||||
|
||||
# 3) Upload arm64 release to download server
|
||||
scp wekan-$1-arm64.zip x2:/data/websites/releases.wekan.team/public/raspi3/
|
||||
scp wekan-$1-arm64.zip x2:/data/websites/releases.wekan.team/raspi3/
|
||||
+1
-1
@@ -14,4 +14,4 @@ fi
|
||||
scp o:/home/ubuntu/wekan-$1-ppc64le.zip .
|
||||
|
||||
# 3) Upload ppc64le release to download server
|
||||
scp wekan-$1-ppc64le.zip x2:/data/websites/releases.wekan.team/public/ppc64le/
|
||||
scp wekan-$1-ppc64le.zip x2:/data/websites/releases.wekan.team/ppc64le/
|
||||
+1
-1
@@ -14,4 +14,4 @@ fi
|
||||
scp s:/home/linux1/wekan-$1-s390x.zip .
|
||||
|
||||
# 3) Upload s390x release to download server
|
||||
scp wekan-$1-s390x.zip x2:/data/websites/releases.wekan.team/public/s390x/
|
||||
scp wekan-$1-s390x.zip x2:/data/websites/releases.wekan.team/s390x/
|
||||
+1
-1
@@ -11,4 +11,4 @@ if [ $# -ne 1 ]
|
||||
fi
|
||||
|
||||
# 2) Upload windows release to download server
|
||||
scp ../../Julkinen/wekan-$1-amd64-windows.zip x2:/data/websites/releases.wekan.team/public/windows/
|
||||
scp ../../Julkinen/wekan-$1-amd64-windows.zip x2:/data/websites/releases.wekan.team/windows/
|
||||
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
|
||||
appTitle = (defaultText = "Wekan"),
|
||||
# The name of the app as it is displayed to the user.
|
||||
|
||||
appVersion = 676,
|
||||
appVersion = 678,
|
||||
# Increment this for every release.
|
||||
|
||||
appMarketingVersion = (defaultText = "6.76.0~2023-02-22"),
|
||||
appMarketingVersion = (defaultText = "6.78.0~2023-02-28"),
|
||||
# Human-readable presentation of the app version.
|
||||
|
||||
minUpgradableAppVersion = 0,
|
||||
|
||||
+14
-8
@@ -1246,6 +1246,7 @@ Migrations.add('add-card-details-show-lists', () => {
|
||||
});
|
||||
|
||||
Migrations.add('migrate-attachments-collectionFS-to-ostrioFiles', () => {
|
||||
Meteor.settings.public.ostrioFilesMigrationInProgress = "true";
|
||||
AttachmentsOld.find().forEach(function(fileObj) {
|
||||
const newFileName = fileObj.name();
|
||||
const storagePath = Attachments.storagePath({});
|
||||
@@ -1306,9 +1307,11 @@ Migrations.add('migrate-attachments-collectionFS-to-ostrioFiles', () => {
|
||||
|
||||
readStream.pipe(writeStream);
|
||||
});
|
||||
Meteor.settings.public.ostrioFilesMigrationInProgress = "false";
|
||||
});
|
||||
|
||||
Migrations.add('migrate-avatars-collectionFS-to-ostrioFiles', () => {
|
||||
Meteor.settings.public.ostrioFilesMigrationInProgress = "true";
|
||||
AvatarsOld.find().forEach(function(fileObj) {
|
||||
const newFileName = fileObj.name();
|
||||
const storagePath = Avatars.storagePath({});
|
||||
@@ -1361,14 +1364,16 @@ Migrations.add('migrate-avatars-collectionFS-to-ostrioFiles', () => {
|
||||
'original',
|
||||
'/',
|
||||
);
|
||||
if (user.profile.avatarUrl.startsWith(old_url)) {
|
||||
// Set avatar url to new url
|
||||
Users.direct.update(
|
||||
{ _id: user._id },
|
||||
{ $set: { 'profile.avatarUrl': new_url } },
|
||||
noValidate,
|
||||
);
|
||||
console.log('User avatar updated: ', user._id, new_url);
|
||||
if (user.profile.avatarUrl !== undefined) {
|
||||
if (user.profile.avatarUrl.startsWith(old_url)) {
|
||||
// Set avatar url to new url
|
||||
Users.direct.update(
|
||||
{ _id: user._id },
|
||||
{ $set: { 'profile.avatarUrl': new_url } },
|
||||
noValidate,
|
||||
);
|
||||
console.log('User avatar updated: ', user._id, new_url);
|
||||
}
|
||||
}
|
||||
});
|
||||
fileObj.remove();
|
||||
@@ -1384,6 +1389,7 @@ Migrations.add('migrate-avatars-collectionFS-to-ostrioFiles', () => {
|
||||
|
||||
readStream.pipe(writeStream);
|
||||
});
|
||||
Meteor.settings.public.ostrioFilesMigrationInProgress = "false";
|
||||
});
|
||||
|
||||
Migrations.add('migrate-attachment-drop-index-cardId', () => {
|
||||
|
||||
+6
-6
@@ -1,5 +1,5 @@
|
||||
name: wekan
|
||||
version: '6.76'
|
||||
version: '6.78'
|
||||
base: core20
|
||||
summary: Open Source kanban
|
||||
description: |
|
||||
@@ -65,8 +65,8 @@ apps:
|
||||
|
||||
parts:
|
||||
mongodb:
|
||||
#source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-5.0.14.tgz
|
||||
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.4.tgz
|
||||
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-5.0.14.tgz
|
||||
#source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.4.tgz
|
||||
plugin: dump
|
||||
stage-packages:
|
||||
- libssl1.1
|
||||
@@ -169,9 +169,9 @@ parts:
|
||||
# Cleanup
|
||||
mkdir .build
|
||||
cd .build
|
||||
wget https://github.com/wekan/wekan/releases/download/v6.76/wekan-6.76-amd64.zip
|
||||
unzip wekan-6.76-amd64.zip
|
||||
rm wekan-6.76-amd64.zip
|
||||
wget https://github.com/wekan/wekan/releases/download/v6.78/wekan-6.78-amd64.zip
|
||||
unzip wekan-6.78-amd64.zip
|
||||
rm wekan-6.78-amd64.zip
|
||||
cd ..
|
||||
##cd .build/bundle
|
||||
##find . -type d -name '*-garbage*' | xargs rm -rf
|
||||
|
||||
Reference in new issue
Block a user