Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
977821d293 | ||
|
|
f4e5306181 | ||
|
|
f01b440fb7 | ||
|
|
2fd741bf54 | ||
|
|
e8522c323f | ||
|
|
def2ec46e0 | ||
|
|
4e17d5a10f | ||
|
|
dcba6909e2 | ||
|
|
fc74324d1a | ||
|
|
8bb33c53f0 | ||
|
|
236b6c3552 | ||
|
|
28e9a6ac33 | ||
|
|
f91cc25b11 | ||
|
|
6fd45ce74b | ||
|
|
b57eae14d4 | ||
|
|
12db3714f9 | ||
|
|
7a1f42fa4e | ||
|
|
74064324cf | ||
|
|
f3baa32d6c | ||
|
|
33eed50290 | ||
|
|
11d9d1c889 | ||
|
|
5a7860ac8e | ||
|
|
b13f691389 | ||
|
|
d70e876388 |
No files matched your search
@@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV \
|
||||
DEBUG=false \
|
||||
NODE_VERSION=v12.22.3 \
|
||||
NODE_VERSION=v12.22.4 \
|
||||
METEOR_RELEASE=1.10.2 \
|
||||
USE_EDGE=false \
|
||||
METEOR_EDGE=1.5-beta.17 \
|
||||
|
||||
@@ -81,7 +81,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.22.3
|
||||
node-engine: 12.22.4
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
@@ -83,7 +83,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.22.3
|
||||
node-engine: 12.22.4
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
@@ -34,3 +34,7 @@ ehthumbs.db
|
||||
.devcontainer/docker-compose.extend.yml
|
||||
.devcontainer/volumes*/
|
||||
.coverage
|
||||
|
||||
# Helm chart
|
||||
# Chart dependencies
|
||||
/helm/wekan/**/*.tgz
|
||||
+1
-1
@@ -3,7 +3,7 @@ sudo: required
|
||||
|
||||
env:
|
||||
TRAVIS_DOCKER_COMPOSE_VERSION: 1.24.0
|
||||
TRAVIS_NODE_VERSION: 12.22.3
|
||||
TRAVIS_NODE_VERSION: 12.22.4
|
||||
TRAVIS_NPM_VERSION: latest
|
||||
|
||||
before_install:
|
||||
|
||||
@@ -3,6 +3,47 @@
|
||||
Note: With Docker, please don't use latest tag. Only use release tags.
|
||||
See https://github.com/wekan/wekan/issues/3874
|
||||
|
||||
# v5.44 2021-08-03 Wekan release
|
||||
|
||||
This release adds the following updates:
|
||||
|
||||
- [Wekan v5.43](https://github.com/wekan/wekan/commit/4e17d5a10f95fcea420c794ed8b30ea18dc2a725) and v5.44 for helm.
|
||||
Thanks to xet7.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
- [Fix: Consecutive Card numbering when a card is moved to another board or copied](https://github.com/wekan/wekan/pull/3936).
|
||||
Thanks to syndimann.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v5.43 2021-08-03 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
- [Consecutive boardwise card numbering](https://github.com/wekan/wekan/pull/3935).
|
||||
Thanks to syndimann.
|
||||
|
||||
and adds the following updates:
|
||||
|
||||
- [Update Helm Chart apiVersion, pin image version](https://github.com/wekan/wekan/pulls/3933).
|
||||
This makes this Chart compatible with [flux](https://fluxcd.io)
|
||||
[helm-controller](https://fluxcd.io/docs/components/helm), which requires v2 charts.
|
||||
Thanks to varac.
|
||||
- [Wekan v5.42 for helm](https://github.com/wekan/wekan/commit/7a1f42fa4e153ff4a0fb481ca5a363ac62033b7f).
|
||||
Thanks to xet7.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v5.42 2021-08-01 Wekan release
|
||||
|
||||
This release adds the following CRITICAL SECURITY UPDATES:
|
||||
|
||||
- [Updated to Node.js v12.22.4](https://github.com/wekan/wekan/commit/b13f6913896f787e1cae485381d98345d9f8b830).
|
||||
Thanks to Node.js developers.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v5.41 2021-07-26 Wekan release
|
||||
|
||||
This release fixes the following bugs:
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV BUILD_DEPS="apt-utils libarchive-tools gnupg gosu wget curl bzip2 g++ build-essential git ca-certificates python3" \
|
||||
DEBUG=false \
|
||||
NODE_VERSION=v12.22.3 \
|
||||
NODE_VERSION=v12.22.4 \
|
||||
METEOR_RELEASE=1.10.2 \
|
||||
USE_EDGE=false \
|
||||
METEOR_EDGE=1.5-beta.17 \
|
||||
|
||||
+2
-2
@@ -4,7 +4,7 @@ FROM amd64/alpine:3.7 AS builder
|
||||
ENV QEMU_VERSION=v4.2.0-6 \
|
||||
QEMU_ARCHITECTURE=aarch64 \
|
||||
NODE_ARCHITECTURE=linux-arm64 \
|
||||
NODE_VERSION=v12.22.3 \
|
||||
NODE_VERSION=v12.22.4 \
|
||||
WEKAN_VERSION=latest \
|
||||
WEKAN_ARCHITECTURE=arm64
|
||||
|
||||
@@ -40,7 +40,7 @@ LABEL maintainer="wekan"
|
||||
# Set the environment variables (defaults where required)
|
||||
ENV QEMU_ARCHITECTURE=aarch64 \
|
||||
NODE_ARCHITECTURE=linux-arm64 \
|
||||
NODE_VERSION=v12.22.3 \
|
||||
NODE_VERSION=v12.22.4 \
|
||||
NODE_ENV=production \
|
||||
NPM_VERSION=latest \
|
||||
WITH_API=true \
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
|
||||
appVersion: "v5.41.0"
|
||||
appVersion: "v5.44.0"
|
||||
files:
|
||||
userUploads:
|
||||
- README.md
|
||||
|
||||
@@ -25,6 +25,9 @@ template(name="cardDetails")
|
||||
h2.card-details-title.js-card-title(
|
||||
class="{{#if canModifyCard}}js-open-inlined-form is-editable{{/if}}")
|
||||
+viewer
|
||||
if currentBoard.allowsCardNumber
|
||||
span.card-number
|
||||
| ##{getCardNumber}
|
||||
= getTitle
|
||||
if isWatching
|
||||
i.card-details-watch.fa.fa-eye
|
||||
|
||||
@@ -114,6 +114,12 @@ avatar-radius = 50%
|
||||
background: darken(white, 7%)
|
||||
border-bottom: 1px solid darken(white, 14%)
|
||||
|
||||
.card-number {
|
||||
color: darken(white, 30%);
|
||||
display: inline-block;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.close-card-details,
|
||||
.maximize-card-details,
|
||||
.minimize-card-details,
|
||||
|
||||
@@ -37,6 +37,9 @@ template(name="minicard")
|
||||
if getArchived
|
||||
span.linked-icon.linked-archived.fa.fa-archive
|
||||
+viewer
|
||||
if currentBoard.allowsCardNumber
|
||||
span.card-number
|
||||
| ##{getCardNumber}
|
||||
= getTitle
|
||||
if $eq 'subtext-with-full-path' currentBoard.presentParentTask
|
||||
.parent-subtext
|
||||
|
||||
@@ -114,6 +114,10 @@
|
||||
font-size:20px;
|
||||
color: #ccc;
|
||||
.minicard-title
|
||||
.card-number
|
||||
color: darken(white, 30%);
|
||||
display: inline-block;
|
||||
margin-right: 5px;
|
||||
p:last-child
|
||||
margin-bottom: 0
|
||||
.viewer
|
||||
|
||||
@@ -81,7 +81,9 @@ BlazeComponent.extendComponent({
|
||||
Utils.boardView() === 'board-view-cal' ||
|
||||
!Utils.boardView()
|
||||
)
|
||||
swimlaneId = board.getDefaultSwimline()._id;
|
||||
swimlaneId = board.getDefaultSwimline()._id;
|
||||
|
||||
const nextCardNumber = board.getNextCardNumber();
|
||||
|
||||
const _id = Cards.insert({
|
||||
title,
|
||||
@@ -93,6 +95,7 @@ BlazeComponent.extendComponent({
|
||||
sort: sortIndex,
|
||||
swimlaneId,
|
||||
type: cardType,
|
||||
cardNumber: nextCardNumber,
|
||||
linkedId,
|
||||
});
|
||||
|
||||
@@ -241,7 +244,7 @@ BlazeComponent.extendComponent({
|
||||
Boards.findOne(currentBoardId)
|
||||
.customFields()
|
||||
.fetch(),
|
||||
function(field) {
|
||||
function (field) {
|
||||
if (field.automaticallyOnCard || field.alwaysOnCard)
|
||||
arr.push({ _id: field._id, value: null });
|
||||
},
|
||||
@@ -750,17 +753,17 @@ BlazeComponent.extendComponent({
|
||||
|
||||
checkIdleTime() {
|
||||
return window.requestIdleCallback ||
|
||||
function(handler) {
|
||||
const startTime = Date.now();
|
||||
return setTimeout(function() {
|
||||
handler({
|
||||
didTimeout: false,
|
||||
timeRemaining() {
|
||||
return Math.max(0, 50.0 - (Date.now() - startTime));
|
||||
},
|
||||
});
|
||||
}, 1);
|
||||
};
|
||||
function (handler) {
|
||||
const startTime = Date.now();
|
||||
return setTimeout(function () {
|
||||
handler({
|
||||
didTimeout: false,
|
||||
timeRemaining() {
|
||||
return Math.max(0, 50.0 - (Date.now() - startTime));
|
||||
},
|
||||
});
|
||||
}, 1);
|
||||
};
|
||||
}
|
||||
|
||||
updateList() {
|
||||
|
||||
@@ -189,6 +189,13 @@ template(name="boardCardSettingsPopup")
|
||||
span
|
||||
i.fa.fa-tags
|
||||
| {{_ 'labels'}}
|
||||
div.check-div
|
||||
a.flex.js-field-has-card-number(class="{{#if allowsCardNumber}}is-checked{{/if}}")
|
||||
.materialCheckBox(class="{{#if allowsCardNumber}}is-checked{{/if}}")
|
||||
span
|
||||
i.fa.fa-hashtag
|
||||
| {{_ 'card'}}
|
||||
| {{_ 'number'}}
|
||||
div.check-div
|
||||
a.flex.js-field-has-description-title(class="{{#if allowsDescriptionTitle}}is-checked{{/if}}")
|
||||
.materialCheckBox(class="{{#if allowsDescriptionTitle}}is-checked{{/if}}")
|
||||
|
||||
@@ -776,6 +776,10 @@ BlazeComponent.extendComponent({
|
||||
return this.currentBoard.allowsComments;
|
||||
},
|
||||
|
||||
allowsCardNumber() {
|
||||
return this.currentBoard.allowsCardNumber;
|
||||
},
|
||||
|
||||
allowsDescriptionTitle() {
|
||||
return this.currentBoard.allowsDescriptionTitle;
|
||||
},
|
||||
@@ -1019,6 +1023,22 @@ BlazeComponent.extendComponent({
|
||||
this.currentBoard.allowsDescriptionTitle,
|
||||
);
|
||||
},
|
||||
'click .js-field-has-card-number'(evt) {
|
||||
evt.preventDefault();
|
||||
this.currentBoard.allowsCardNumber = !this.currentBoard
|
||||
.allowsCardNumber;
|
||||
this.currentBoard.setAllowsCardNumber(
|
||||
this.currentBoard.allowsCardNumber,
|
||||
);
|
||||
$(`.js-field-has-card-number ${MCB}`).toggleClass(
|
||||
CKCLS,
|
||||
this.currentBoard.allowsCardNumber,
|
||||
);
|
||||
$('.js-field-has-card-number').toggleClass(
|
||||
CKCLS,
|
||||
this.currentBoard.allowsCardNumber,
|
||||
);
|
||||
},
|
||||
'click .js-field-has-description-text'(evt) {
|
||||
evt.preventDefault();
|
||||
this.currentBoard.allowsDescriptionText = !this.currentBoard
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
dependencies:
|
||||
- name: mongodb
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 10.0.5
|
||||
digest: sha256:f6520f39b687cb52574ec2fda514662ce913665c0fd2391b68fdb4d2eb059497
|
||||
generated: "2021-07-27T22:16:39.945592552+02:00"
|
||||
+20
-10
@@ -1,14 +1,24 @@
|
||||
name: wekan
|
||||
version: 1.0.3
|
||||
apiVersion: v1
|
||||
apiVersion: v2
|
||||
appVersion: "5.44"
|
||||
dependencies:
|
||||
- condition: mongodb.enabled
|
||||
name: mongodb
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 10.0.x
|
||||
description: Open Source kanban
|
||||
home: https://wekan.github.io/
|
||||
home: https://wekan.github.io
|
||||
icon: https://wekan.github.io/wekan-logo.svg
|
||||
keywords:
|
||||
- kanban
|
||||
maintainers:
|
||||
- email: github@randall.cc
|
||||
name: technotaff
|
||||
- email: jiangyt.cn@gmail.com
|
||||
name: jiangytcn
|
||||
- email: varac@varac.net
|
||||
name: varac
|
||||
name: wekan
|
||||
sources:
|
||||
- https://github.com/wekan/wekan
|
||||
maintainers:
|
||||
- name: technotaff
|
||||
email: github@randall.cc
|
||||
- name: jiangytcn
|
||||
email: jiangyt.cn@gmail.com
|
||||
engine: gotpl
|
||||
type: application
|
||||
version: 1.1.0
|
||||
@@ -1,5 +0,0 @@
|
||||
dependencies:
|
||||
- name: mongodb
|
||||
version: 10.0.x
|
||||
repository: "https://charts.bitnami.com/bitnami"
|
||||
condition: mongodb.enabled
|
||||
@@ -14,7 +14,7 @@ serviceAccounts:
|
||||
##
|
||||
image:
|
||||
repository: quay.io/wekan/wekan
|
||||
tag: latest
|
||||
tag: v5.44
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
## Configuration for wekan component
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
"add-subtask": "Teilaufgabe hinzufügen",
|
||||
"add-checklist": "Checkliste hinzufügen",
|
||||
"add-checklist-item": "Element zu Checkliste hinzufügen",
|
||||
"convertChecklistItemToCardPopup-title": "Convert to Card",
|
||||
"convertChecklistItemToCardPopup-title": "in Karte konvertieren",
|
||||
"add-cover": "Cover hinzufügen",
|
||||
"add-label": "Label hinzufügen",
|
||||
"add-list": "Liste hinzufügen",
|
||||
|
||||
+2
-2
@@ -89,7 +89,7 @@
|
||||
"add-subtask": "Adicionar Sub-tarefa",
|
||||
"add-checklist": "Adicionar Lista de Verificação",
|
||||
"add-checklist-item": "Adicionar um item à lista de verificação",
|
||||
"convertChecklistItemToCardPopup-title": "Convert to Card",
|
||||
"convertChecklistItemToCardPopup-title": "Converter para Cartão",
|
||||
"add-cover": "Adicionar Capa",
|
||||
"add-label": "Adicionar Etiqueta",
|
||||
"add-list": "Adicionar Lista",
|
||||
@@ -199,7 +199,7 @@
|
||||
"poker-forty": "40",
|
||||
"poker-oneHundred": "100",
|
||||
"poker-unsure": "?",
|
||||
"poker-finish": "Finish",
|
||||
"poker-finish": "Finalizar",
|
||||
"poker-result-votes": "Votos",
|
||||
"poker-result-who": "Who",
|
||||
"poker-replay": "Replay",
|
||||
|
||||
@@ -375,6 +375,14 @@ Boards.attachSchema(
|
||||
defaultValue: true,
|
||||
},
|
||||
|
||||
allowsCardNumber: {
|
||||
/**
|
||||
* Does the board allows card numbers?
|
||||
*/
|
||||
type: Boolean,
|
||||
defaultValue: false,
|
||||
},
|
||||
|
||||
allowsActivities: {
|
||||
/**
|
||||
* Does the board allows comments?
|
||||
@@ -1056,6 +1064,26 @@ Boards.helpers({
|
||||
return result;
|
||||
},
|
||||
|
||||
getNextCardNumber() {
|
||||
const boardCards = Cards.find(
|
||||
{
|
||||
boardId: this._id
|
||||
},
|
||||
{
|
||||
sort: { cardNumber: -1 },
|
||||
limit: 1
|
||||
}
|
||||
).fetch();
|
||||
|
||||
// If no card is assigned to the board, return 1
|
||||
if (!boardCards || boardCards.length === 0) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
const maxCardNr = !!boardCards[0].cardNumber ? boardCards[0].cardNumber : 0;
|
||||
return maxCardNr + 1;
|
||||
},
|
||||
|
||||
cardsDueInBetween(start, end) {
|
||||
return Cards.find({
|
||||
boardId: this._id,
|
||||
@@ -1285,6 +1313,10 @@ Boards.mutations({
|
||||
return { $set: { allowsDescriptionTitle } };
|
||||
},
|
||||
|
||||
setAllowsCardNumber(allowsCardNumber) {
|
||||
return { $set: { allowsCardNumber } };
|
||||
},
|
||||
|
||||
setAllowsDescriptionText(allowsDescriptionText) {
|
||||
return { $set: { allowsDescriptionText } };
|
||||
},
|
||||
|
||||
@@ -470,6 +470,16 @@ Cards.attachSchema(
|
||||
optional: true,
|
||||
defaultValue: [],
|
||||
},
|
||||
cardNumber: {
|
||||
/**
|
||||
* A boardwise sequentially increasing number that is assigned
|
||||
* to every newly created card
|
||||
*/
|
||||
type: Number,
|
||||
decimal: true,
|
||||
optional: true,
|
||||
defaultValue: 0,
|
||||
},
|
||||
}),
|
||||
);
|
||||
|
||||
@@ -567,6 +577,7 @@ Cards.helpers({
|
||||
|
||||
delete this._id;
|
||||
this.boardId = boardId;
|
||||
this.cardNumber = Boards.findOne(boardId).getNextCardNumber();
|
||||
this.swimlaneId = swimlaneId;
|
||||
this.listId = listId;
|
||||
const _id = Cards.insert(this);
|
||||
@@ -1647,6 +1658,10 @@ Cards.helpers({
|
||||
}
|
||||
},
|
||||
|
||||
getCardNumber() {
|
||||
return this.cardNumber;
|
||||
},
|
||||
|
||||
getBoardTitle() {
|
||||
if (this.isLinkedCard()) {
|
||||
const card = Cards.findOne({ _id: this.linkedId });
|
||||
@@ -1975,8 +1990,12 @@ Cards.mutations({
|
||||
'_id',
|
||||
);
|
||||
|
||||
// assign the new card number from the target board
|
||||
const newCardNumber = newBoard.getNextCardNumber();
|
||||
|
||||
Object.assign(mutatedFields, {
|
||||
labelIds: newCardLabelIds,
|
||||
cardNumber: newCardNumber
|
||||
});
|
||||
|
||||
mutatedFields.customFields = this.mapCustomFieldsToBoard(newBoard._id);
|
||||
@@ -3207,6 +3226,8 @@ if (Meteor.isServer) {
|
||||
Authentication.checkAdminOrCondition(req.userId, addPermission);
|
||||
const paramListId = req.params.listId;
|
||||
const paramParentId = req.params.parentId;
|
||||
|
||||
const nextCardNumber = board.getNextCardNumber();
|
||||
const currentCards = Cards.find(
|
||||
{
|
||||
listId: paramListId,
|
||||
@@ -3229,6 +3250,7 @@ if (Meteor.isServer) {
|
||||
userId: req.body.authorId,
|
||||
swimlaneId: req.body.swimlaneId,
|
||||
sort: currentCards.count(),
|
||||
cardNumber: nextCardNumber,
|
||||
members,
|
||||
assignees,
|
||||
});
|
||||
|
||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v5.41.0",
|
||||
"version": "v5.44.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v5.41.0",
|
||||
"version": "v5.44.0",
|
||||
"description": "Open-Source kanban",
|
||||
"private": true,
|
||||
"repository": {
|
||||
|
||||
+23
-5
@@ -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 v5.41</title>
|
||||
<title>Wekan REST API v5.44</title>
|
||||
|
||||
<style>
|
||||
</style>
|
||||
@@ -1555,7 +1555,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 v5.41">Wekan REST API v5.41</a>
|
||||
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v5.44">Wekan REST API v5.44</a>
|
||||
|
||||
</li>
|
||||
|
||||
@@ -2128,7 +2128,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 v5.41</h1>
|
||||
<h1 id="wekan-rest-api">Wekan REST API v5.44</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>
|
||||
@@ -3554,6 +3554,7 @@ System.out.println(response.toString());
|
||||
<span class="hljs-attr">"allowsComments"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsDescriptionTitle"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsDescriptionText"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsCardNumber"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsActivities"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsLabels"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsCreator"</span>: <span class="hljs-literal">true</span>,
|
||||
@@ -9138,7 +9139,8 @@ System.out.println(response.toString());
|
||||
],
|
||||
<span class="hljs-attr">"linkId_gantt"</span>: [
|
||||
<span class="hljs-string">"string"</span>
|
||||
]
|
||||
],
|
||||
<span class="hljs-attr">"cardNumber"</span>: <span class="hljs-number">0</span>
|
||||
}
|
||||
</code></pre>
|
||||
<h3 id="get_card-responses">Responses</h3>
|
||||
@@ -18346,6 +18348,7 @@ UserSecurity
|
||||
<span class="hljs-attr">"allowsComments"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsDescriptionTitle"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsDescriptionText"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsCardNumber"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsActivities"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsLabels"</span>: <span class="hljs-literal">true</span>,
|
||||
<span class="hljs-attr">"allowsCreator"</span>: <span class="hljs-literal">true</span>,
|
||||
@@ -18551,6 +18554,13 @@ UserSecurity
|
||||
<td>Does the board allows description text?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>allowsCardNumber</td>
|
||||
<td>boolean</td>
|
||||
<td>true</td>
|
||||
<td>none</td>
|
||||
<td>Does the board allows card numbers?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>allowsActivities</td>
|
||||
<td>boolean</td>
|
||||
<td>true</td>
|
||||
@@ -19302,7 +19312,8 @@ UserSecurity
|
||||
],
|
||||
<span class="hljs-attr">"linkId_gantt"</span>: [
|
||||
<span class="hljs-string">"string"</span>
|
||||
]
|
||||
],
|
||||
<span class="hljs-attr">"cardNumber"</span>: <span class="hljs-number">0</span>
|
||||
}
|
||||
|
||||
</code></pre>
|
||||
@@ -19563,6 +19574,13 @@ UserSecurity
|
||||
<td>none</td>
|
||||
<td>ID of card which is the parent link in gantt view</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>cardNumber</td>
|
||||
<td>number¦null</td>
|
||||
<td>false</td>
|
||||
<td>none</td>
|
||||
<td>A boardwise sequentially increasing number that is assigned<br />to every newly created card</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h4 id="enumerated-values-3">Enumerated Values</h4>
|
||||
|
||||
+12
-1
@@ -1,7 +1,7 @@
|
||||
swagger: '2.0'
|
||||
info:
|
||||
title: Wekan REST API
|
||||
version: v5.41
|
||||
version: v5.44
|
||||
description: |
|
||||
The REST API allows you to control and extend Wekan with ease.
|
||||
|
||||
@@ -2770,6 +2770,10 @@ definitions:
|
||||
description: |
|
||||
Does the board allows description text?
|
||||
type: boolean
|
||||
allowsCardNumber:
|
||||
description: |
|
||||
Does the board allows card numbers?
|
||||
type: boolean
|
||||
allowsActivities:
|
||||
description: |
|
||||
Does the board allows comments?
|
||||
@@ -2888,6 +2892,7 @@ definitions:
|
||||
- allowsComments
|
||||
- allowsDescriptionTitle
|
||||
- allowsDescriptionText
|
||||
- allowsCardNumber
|
||||
- allowsActivities
|
||||
- allowsLabels
|
||||
- allowsCreator
|
||||
@@ -3268,6 +3273,12 @@ definitions:
|
||||
type: string
|
||||
x-nullable: true
|
||||
x-nullable: true
|
||||
cardNumber:
|
||||
description: |
|
||||
A boardwise sequentially increasing number that is assigned
|
||||
to every newly created card
|
||||
type: number
|
||||
x-nullable: true
|
||||
required:
|
||||
- archived
|
||||
- swimlaneId
|
||||
|
||||
+2
-2
@@ -18,8 +18,8 @@ REM Install chocolatey
|
||||
|
||||
choco install -y git curl python2 dotnet4.5.2 nano mongodb-3 mongoclient meteor
|
||||
|
||||
curl -O https://nodejs.org/dist/v12.22.3/node-v12.22.3-x64.msi
|
||||
call node-v12.22.3-x64.msi
|
||||
curl -O https://nodejs.org/dist/v12.22.4/node-v12.22.4-x64.msi
|
||||
call node-v12.22.4-x64.msi
|
||||
|
||||
call npm config -g set msvs_version 2015
|
||||
call meteor npm config -g set msvs_version 2015
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ do
|
||||
#curl -0 -L https://npmjs.org/install.sh | sudo sh
|
||||
#sudo chown -R $(id -u):$(id -g) $HOME/.npm
|
||||
sudo npm -g install n
|
||||
sudo n 12.22.3
|
||||
sudo n 12.22.4
|
||||
#curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
|
||||
#sudo apt-get install -y nodejs
|
||||
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
|
||||
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
|
||||
appTitle = (defaultText = "Wekan"),
|
||||
# The name of the app as it is displayed to the user.
|
||||
|
||||
appVersion = 541,
|
||||
appVersion = 544,
|
||||
# Increment this for every release.
|
||||
|
||||
appMarketingVersion = (defaultText = "5.41.0~2021-07-26"),
|
||||
appMarketingVersion = (defaultText = "5.44.0~2021-08-03"),
|
||||
# Human-readable presentation of the app version.
|
||||
|
||||
minUpgradableAppVersion = 0,
|
||||
|
||||
@@ -1061,3 +1061,42 @@ Migrations.add('add-hide-logo-by-default', () => {
|
||||
noValidateMulti,
|
||||
);
|
||||
});
|
||||
|
||||
Migrations.add('add-card-number-allowed', () => {
|
||||
Boards.update(
|
||||
{
|
||||
allowsCardNumber: {
|
||||
$exists: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
$set: {
|
||||
allowsCardNumber: false,
|
||||
},
|
||||
},
|
||||
noValidateMulti,
|
||||
);
|
||||
});
|
||||
|
||||
Migrations.add('assign-boardwise-card-numbers', () => {
|
||||
Boards.find().forEach(board => {
|
||||
let nextCardNumber = board.getNextCardNumber();
|
||||
Cards.find(
|
||||
{
|
||||
boardId: board._id,
|
||||
cardNumber: {
|
||||
$exists: false
|
||||
}
|
||||
},
|
||||
{
|
||||
sort: { createdAt: 1 }
|
||||
}
|
||||
).forEach(card => {
|
||||
Cards.update(
|
||||
card._id,
|
||||
{ $set: { cardNumber: nextCardNumber } },
|
||||
noValidate);
|
||||
nextCardNumber++;
|
||||
});
|
||||
})
|
||||
});
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
name: wekan
|
||||
version: '5.41'
|
||||
version: '5.44'
|
||||
summary: The open-source kanban
|
||||
description: |
|
||||
Wekan is an open-source and collaborative kanban board application.
|
||||
@@ -80,7 +80,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.22.3
|
||||
node-engine: 12.22.4
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set -euxo pipefail
|
||||
|
||||
BUILD_DEPS="bsdtar gnupg wget curl bzip2 python git ca-certificates perl-Digest-SHA"
|
||||
NODE_VERSION=v12.22.3
|
||||
NODE_VERSION=v12.22.4
|
||||
#METEOR_RELEASE=1.6.0.1 - for Stacksmith, meteor-1.8 branch that could have METEOR@1.8.1-beta.8 or newer
|
||||
USE_EDGE=false
|
||||
METEOR_EDGE=1.5-beta.17
|
||||
|
||||
Reference in new issue
Block a user