Compare commits

...
9 Commits
Author SHA1 Message Date
Lauri Ojansivu 7e13d09c3c v4.99 2021-02-25 09:26:27 +02:00
Lauri Ojansivu 71c0c62ee8 Updated translations. 2021-02-25 09:21:20 +02:00
Lauri Ojansivu c599e60e75 Updated ChangeLog. 2021-02-25 09:18:23 +02:00
Lauri Ojansivu f2241ba3de Updated to Meteor 2.1
Thanks to Meteor developers!
2021-02-25 09:16:49 +02:00
Lauri Ojansivu 85fb240b69 Updated ChangeLog. 2021-02-25 09:16:09 +02:00
Lauri Ojansivu 71725f1b26 Fixed CRITICAL SECURITY ISSUE of SMTP password visible to Admin at
Admin Panel by using browser inspect to see behind asterisks.

Thanks to Georg Krause and xet7 !
2021-02-25 09:02:23 +02:00
Lauri Ojansivu 64d4c3f971 Updated ChangeLog. 2021-02-24 20:51:46 +02:00
Lauri Ojansivu 4c24b042d0 Updated ChangeLog. 2021-02-24 20:26:01 +02:00
Lauri Ojansivu a43736b5c6 Update wekan/releases/up.sh script: Can not build ppc64le version because
OpenPower Minicloud is having emergency maintenance.

Thanks to xet7 !
2021-02-24 20:23:23 +02:00
13 changed files with 231 additions and 8863 deletions

No files matched your search

+1 -1
View File
@@ -1 +1 @@
METEOR@2.0
METEOR@2.1
+20
View File
@@ -1,3 +1,21 @@
# v4.99 2021-02-25 Wekan release
This release fixes the following CRITICAL SECURITY ISSUES:
- [Fixed SMTP password visible to Admin at Admin Panel by using browser inspect
to see behind asterisks](https://github.com/wekan/wekan/commit/71725f1b262b385162b2544f10658a0bc22f6b41).
Thanks to Georg Krause and xet7.
and adds the following updates:
- [Update wekan/releases/up.sh script: Can not build ppc64le version because OpenPower Minicloud
is having emergency maintenance](https://github.com/wekan/wekan/commit/a43736b5c6196c65770d8ae17af927406dce2c43).
Thanks to xet7.
- [Updated to Meteor 2.1](https://github.com/wekan/wekan/commit/f2241ba3de82e393161ee1c456e1a947c6bdb5fc).
Thanks to Meteor developers.
Thanks to above GitHub users for their contributions and translators for their translations.
# v4.98 2021-02-24 Wekan release
This release adds the following CRITICAL SECURITY FIXES:
@@ -9,6 +27,8 @@ and adds the following new features:
- [Added sort feature for viewing of cards](https://github.com/wekan/wekan/pull/3586).
Thanks to ednamaeG.
- [Made sort cards feature translatable](https://github.com/wekan/wekan/commit/09a13ef75f478b0fc02ae3cdbfe918367664aa0c).
Thanks to xet7.
and fixes the following bugs:
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v4.98.0"
appVersion: "v4.99.0"
files:
userUploads:
- README.md
+1 -1
View File
@@ -97,7 +97,7 @@ template(name='email')
li.smtp-form
.title {{_ 'smtp-password'}}
.form-group
input.wekan-form-control#mail-server-password(type="password", placeholder="{{_ 'password'}}" value="{{currentSetting.mailServer.password}}")
input.wekan-form-control#mail-server-password(type="password", placeholder="{{_ 'password'}}" value="")
li.smtp-form
.title {{_ 'smtp-tls'}}
.form-group
+5 -5
View File
@@ -920,8 +920,8 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "チェックリスト",
"predicate-public": "public",
"predicate-private": "private",
"predicate-public": "公開",
"predicate-private": "非公開",
"operator-unknown-error": "%sは演算子ではありません",
"operator-number-expected": "演算子 __operator__ には数値の指定が必要ですが、「__value__」が入力されました",
"operator-sort-invalid": "sort of '%s' is invalid",
@@ -949,15 +949,15 @@
"globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - アーカイブ済みのカード",
"globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - アーカイブされていないカード",
"globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - 終了したカード",
"globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
"globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
"globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - 公開されたボードのカード",
"globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - 非公開のボードのカード",
"globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
"globalSearch-instructions-notes-1": "複数の演算子を指定できます。",
"globalSearch-instructions-notes-2": "同じ演算子はOR条件になります。複数の条件のいずれかに一致したカードが検索されます。`__operator_list__:有効 __operator_list__:対応不要` の場合、リスト名が *有効* または *対応不要* のカードが検索されます。",
"globalSearch-instructions-notes-3": "異なる演算子はAND条件になります。異なる演算子すべてに一致したカードのみが検索されます。`__operator_list__:有効 __operator_label__:赤` は、*有効* のリストの中の *赤* のラベルのカードのみが検索されます。",
"globalSearch-instructions-notes-3-2": "日数指定は数値、または`__predicate_week__`、`__predicate_month__`、`__predicate_quarter__`、`__predicate_year__`を使用します。",
"globalSearch-instructions-notes-4": "テキスト検索では大文字と小文字は区別されません。",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"globalSearch-instructions-notes-5": "デフォルトではアーカイブされたカードは検索されません。 ",
"link-to-search": "この検索へのリンク",
"excel-font": "Arial",
"number": "数値",
+42 -42
View File
@@ -322,8 +322,8 @@
"error-user-notAllowSelf": "不允許對自己執行此操作",
"error-user-notCreated": "該使用者未能成功新增",
"error-username-taken": "這個使用者名稱已被使用",
"error-orgname-taken": "This organization name is already taken",
"error-teamname-taken": "This team name is already taken",
"error-orgname-taken": "這個組織名稱已被使用\n ",
"error-teamname-taken": "這個團隊名稱已被使用\n ",
"error-email-taken": "Email 已被使用",
"export-board": "匯出看板",
"export-board-json": "匯出看板為JSON格式",
@@ -386,7 +386,7 @@
"import-csv-placeholder": "貼上您有效的 CSV/TSV 資料至此",
"import-map-members": "複製成員",
"import-members-map": "您匯入的看板有一些成員,請複製這些成員到您匯入的用戶。",
"import-members-map-note": "Note: Unmapped members will be assigned to the current user.",
"import-members-map-note": "備註: 未對應的成員將分配給目前使用者。",
"import-show-user-mapping": "核對複製的成員",
"import-user-select": "選擇現有使用者作為成員",
"importMapMembersAddPopup-title": "選擇成員",
@@ -533,7 +533,7 @@
"custom-login-logo-link-url": "自訂登入商標連結網址",
"text-below-custom-login-logo": "登入商標下方文字",
"username": "使用者名稱",
"import-usernames": "Import Usernames",
"import-usernames": "匯入使用者名稱",
"view-it": "檢視",
"warn-list-archived": "警告: 卡片位在封存的清單中",
"watch": "追蹤",
@@ -905,41 +905,41 @@
"operator-modified": "已修改",
"operator-sort": "排序",
"operator-comment": "評論",
"operator-has": "has",
"operator-has": "擁有",
"predicate-archived": "已封存",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
"predicate-week": "week",
"predicate-month": "month",
"predicate-quarter": "quarter",
"predicate-year": "year",
"predicate-ended": "已結束",
"predicate-all": "全部",
"predicate-overdue": "逾期",
"predicate-week": "周",
"predicate-month": "月",
"predicate-quarter": "季",
"predicate-year": "年",
"predicate-due": "至",
"predicate-modified": "已修改",
"predicate-created": "已建立",
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "清單",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s不是執行者",
"operator-number-expected": "operator __operator__ expected a number, got '__value__'",
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
"next-page": "Next Page",
"previous-page": "Previous Page",
"predicate-attachment": "附件",
"predicate-description": "描述",
"predicate-checklist": "待辦清單",
"predicate-public": "公開",
"predicate-private": "私有",
"operator-unknown-error": "%s不是運算子",
"operator-number-expected": "運算子__operator__預期是數字,但得到 '__value__'",
"operator-sort-invalid": "某種\"%s\"無效",
"operator-status-invalid": "\"%s\"是無效狀態",
"operator-has-invalid": "%s是無效的存在檢查",
"next-page": "下一頁",
"previous-page": "上一頁",
"heading-notes": "筆記",
"globalSearch-instructions-heading": "搜尋指引",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-description": "搜索可以包括運算子以優化搜索結果。通過冒號分隔的運算子名稱和值來指定運算子。例如,運算子指定 `list:Blocked` 則會將搜索範圍限制在名為 *Blocked* 的清單中。如果值包含空格或特殊字符,則必須將其用引號標記(例如,`__operator_list__:\"To Review\"`)。",
"globalSearch-instructions-operators": "可用的執行者:",
"globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
"globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
"globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
"globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
"globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
"globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
"globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
"globalSearch-instructions-operator-board": "`__operator_board__:title` - 看板上符合指定標題的卡片",
"globalSearch-instructions-operator-list": "`__operator_list__:title` - 清單中符合指定標題的卡片",
"globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - 泳道流程圖內符合指定標題的卡片",
"globalSearch-instructions-operator-comment": "`__operator_comment__:text` - 註解包含 *text* 的卡片",
"globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - 符合特定標籤顏色或標籤名稱的卡片",
"globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - `__operator_label__:label` 的簡寫",
"globalSearch-instructions-operator-user": "`__operator_user__:username` - 成員或代理人是指定使用者的卡片",
"globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
"globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
"globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
@@ -955,19 +955,19 @@
"globalSearch-instructions-notes-1": "將會指定給多位執行者",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
"globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
"globalSearch-instructions-notes-3-2": "天數可以用整數指定或使用 `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` , `__predicate_year__`",
"globalSearch-instructions-notes-4": "英文搜尋忽略大小寫",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "連結到此搜尋",
"excel-font": "Arial",
"number": "數字",
"label-colors": "Label Colors",
"label-names": "Label Names",
"archived-at": "archived at",
"sort-cards": "Sort Cards",
"cardsSortPopup-title": "Sort Cards",
"due-date": "Due Date",
"title-alphabetically": "Title (Alphabetically)",
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)"
"label-colors": "標籤顏色",
"label-names": "標籤名稱",
"archived-at": "封存於",
"sort-cards": "排序卡片",
"cardsSortPopup-title": "排序卡片",
"due-date": "到期日",
"title-alphabetically": "標題 (按字母順序)",
"created-at-newest-first": "創建於(最新優先)",
"created-at-oldest-first": "創建於(最早優先)"
}
+138 -8805
View File
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v4.98.0",
"version": "v4.99.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
+2 -2
View File
@@ -1524,7 +1524,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 v4.98">Wekan REST API v4.98</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v4.99">Wekan REST API v4.99</a>
</li>
@@ -2047,7 +2047,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 v4.98</h1>
<h1 id="wekan-rest-api">Wekan REST API v4.99</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 -1
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v4.98
version: v4.99
description: |
The REST API allows you to control and extend Wekan with ease.
+5 -1
View File
@@ -2,8 +2,12 @@
sudo apt-get -y install parallel
# Can not build ppc64le version because
# OpenPower Minicloud is having
# emergency maintenance.
# ~/repos/wekan/releases/up-o.sh $1
{
~/repos/wekan/releases/up-a.sh $1
~/repos/wekan/releases/up-s.sh $1
~/repos/wekan/releases/up-o.sh $1
} | parallel -k
+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 = 498,
appVersion = 499,
# Increment this for every release.
appMarketingVersion = (defaultText = "4.98.0~2021-02-24"),
appMarketingVersion = (defaultText = "4.99.0~2021-02-25"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+12 -1
View File
@@ -31,7 +31,18 @@ Meteor.publish('mailServer', function() {
if (!Match.test(this.userId, String)) return [];
const user = Users.findOne(this.userId);
if (user && user.isAdmin) {
return Settings.find({}, { fields: { mailServer: 1 } });
return Settings.find(
{},
{
fields: {
'mailServer.host': 1,
'mailServer.port': 1,
'mailServer.username': 1,
'mailServer.enableTLS': 1,
'mailServer.from': 1,
},
},
);
}
return [];
});