Compare commits

...
63 Commits
Author SHA1 Message Date
Lauri Ojansivu d5ea44a760 v4.95 2021-02-08 23:44:03 +02:00
Lauri Ojansivu 0638d43cae Updated translations. 2021-02-08 23:42:41 +02:00
Lauri Ojansivu c5d133aaff Updated ChangeLog. 2021-02-08 23:39:47 +02:00
Lauri Ojansivu 067c2a6fe0 Merge branch 'mfilser-master' 2021-02-08 23:35:59 +02:00
Lauri Ojansivu 9e73a72b8b Merge branch 'master' of https://github.com/mfilser/wekan into mfilser-master 2021-02-08 23:27:39 +02:00
Lauri Ojansivu ae23b7611d Updated ChangeLog. 2021-02-08 23:04:19 +02:00
Lauri Ojansivu e34a284036 Updated release scripts. 2021-02-08 23:00:35 +02:00
Martin Filser 116aae0828 Deleting a linked card blocked the parent board to load #3540 2021-02-08 21:42:16 +01:00
Lauri Ojansivu f33c31aa83 Removed extra unneeded text from ChangeLog. 2021-02-08 22:30:35 +02:00
Lauri Ojansivu c7a742d1de Updated ChangeLog. 2021-02-08 22:21:52 +02:00
Lauri Ojansivu d0df3a2915 Updated release scripts. 2021-02-08 22:16:55 +02:00
Lauri Ojansivu 1c494803b0 Updated dependencies. 2021-02-08 22:10:30 +02:00
Lauri Ojansivu 0bd0a70564 Fix typo. 2021-02-08 21:56:45 +02:00
Lauri Ojansivu 5cd6470358 v4.94 2021-02-08 21:47:37 +02:00
Lauri Ojansivu a7d0576736 Updated translations. 2021-02-08 21:41:57 +02:00
Lauri Ojansivu 76e9e2076e Updated ChangeLog. 2021-02-08 21:38:57 +02:00
Lauri Ojansivu dcec5b5cb0 Update release scripts.
Thanks to xet7 !
2021-02-08 21:37:04 +02:00
Lauri Ojansivu b4352ada27 Updated dependencies.
Thanks to developers of dependencies !
2021-02-08 21:30:17 +02:00
Lauri Ojansivu 76047e5351 Updated ChangeLog. 2021-02-08 21:12:28 +02:00
Lauri Ojansivu 60fedad3fe Fixed lint.
Thanks to xet7 !
2021-02-08 21:11:13 +02:00
Lauri Ojansivu d57eb6a2fc Fixed Board does not load, by disabling Custom Fields sorting.
Thanks to marcungeschikts, olivierlambert and xet7 !

Fixes #3540
2021-02-08 21:08:36 +02:00
Lauri Ojansivu c33d39f5d0 Updated ChangeLog. 2021-02-08 19:48:07 +02:00
Lauri Ojansivu 81aa17f3f0 Merge pull request #3545 from mfilser/settings-show_cards_count_broken_at_mobile_view
Settings, "Show cards count" now works at mobile view too
2021-02-08 19:45:40 +02:00
Martin Filser 8475201db8 Settings, "Show cards count" now shows also 1 card 2021-02-08 18:22:55 +01:00
Martin Filser 40907ef1d8 Settings, "Show cards count" max value now endless
- there could be users who want to enter moren than 99
2021-02-08 18:22:55 +01:00
Martin Filser b79fc53265 Settings, "Show cards count" keyboard input possible 2021-02-08 18:22:55 +01:00
Lauri Ojansivu 2972351e79 Updated ChangeLog. 2021-02-08 19:03:16 +02:00
Lauri Ojansivu c82de08886 Merge pull request #3544 from jrsupplee/issue-3539
Fix bug in adding new users #3539
2021-02-08 19:01:41 +02:00
Lauri Ojansivu 7806945965 Comment out multi arch. 2021-02-08 18:57:16 +02:00
John R. Supplee 9a6a0b0047 Fix bug in adding new users
New `importUsernames` was not being parsed into an array before
calling `setCreateUser()`

Issue #3539
2021-02-08 18:48:59 +02:00
Lauri Ojansivu e0c94e3cbb Updated translations. 2021-02-08 17:27:03 +02:00
Lauri Ojansivu 9f328bdee3 Removed duplicate words from translations. 2021-02-08 14:24:15 +02:00
Lauri Ojansivu 7a96adf957 Removed duplicate word from translations.
Thanks to translators!
2021-02-06 17:02:56 +02:00
Lauri Ojansivu 2111e19d59 v4.93 2021-02-06 15:34:39 +02:00
Lauri Ojansivu d93cf08a27 Updated translations. 2021-02-06 15:27:31 +02:00
Lauri Ojansivu a24b64f7ca Updated ChangeLog. 2021-02-06 15:24:04 +02:00
Lauri Ojansivu 625577f145 Merge pull request #3533 from mfilser/master
Notifications, enable line wrapping #3527
2021-02-06 15:22:25 +02:00
Martin Filser e13fa0d2d1 Notifications, enable line wrapping #3527 2021-02-06 12:46:06 +01:00
Lauri Ojansivu d470281a5e Updated ChangeLog. 2021-02-06 12:54:00 +02:00
Lauri Ojansivu 6021438e2e Merge pull request #3532 from mfilser/master
Red line below the avatar now correctly on FireFox #3515
2021-02-06 12:52:17 +02:00
Lauri Ojansivu 737b425aca Try to fix Snap. 2021-02-06 12:51:31 +02:00
Martin Filser d2a35453ef Red line below the avatar now correctly on FireFox #3515 2021-02-06 11:26:10 +01:00
Lauri Ojansivu 77160a76e8 Update rebuild-wekan.sh 2021-02-06 11:13:32 +02:00
Lauri Ojansivu f012a67182 Updated dependencies. 2021-02-06 11:03:18 +02:00
Lauri Ojansivu 2c5e4fad79 Try to fix Snap: Added Typescript. 2021-02-06 10:52:58 +02:00
Lauri Ojansivu 1486f5f620 Try to fix Snap. 2021-02-06 10:26:34 +02:00
Lauri Ojansivu eb1209cb00 Updated ChangeLog. 2021-02-06 08:02:31 +02:00
Lauri Ojansivu bcdaf77a9c Updated Ubuntu base image in Dockerfile. 2021-02-06 08:00:28 +02:00
Lauri Ojansivu e8e97838ef Updated translations. 2021-02-06 00:49:09 +02:00
Lauri Ojansivu bec3f309bd Updated ChangeLog. 2021-02-06 00:43:41 +02:00
Lauri Ojansivu 39bfbbbe0a Merge pull request #3530 from messagerie-melanie2/master
Add the ability to call get_user operation with username
2021-02-06 00:41:05 +02:00
Lauri Ojansivu 57a98e7a5d Updated ChangeLog. 2021-02-06 00:24:44 +02:00
Lauri Ojansivu ea697f2238 Fixed file permissions. Thanks to xet7 ! Fixes #3524, fixes meteor/meteor#11314 2021-02-06 00:18:07 +02:00
magicbelette fd20a9218f Add the ability to call get_user operation with username 2021-02-05 19:58:24 +01:00
Lauri Ojansivu b47794cbc1 Try to fix Docker. 2021-02-03 18:56:44 +02:00
Lauri Ojansivu c3ce44562e Try to fix Docker builds by deleting package-lock.json , see
https://stackoverflow.com/questions/53732973/npm-err-404-not-found-har-validator5-1-2

Thanks to xet7 !

Related #3524
2021-02-03 16:26:21 +02:00
Lauri Ojansivu 4f7803c384 Try to fix Docker builds.
Thanks to xet7 !

Related #3524
2021-02-03 16:07:01 +02:00
Lauri Ojansivu 6e313d1760 Merge branch 'master' of github.com:wekan/wekan 2021-02-03 15:47:22 +02:00
Lauri Ojansivu 0f7a8a25ad Updated ChangeLog. 2021-02-03 15:47:05 +02:00
Lauri Ojansivu c692b7847b Merge pull request #3526 from jrsupplee/fix-3
Fix bug in `uniqueTitle`
2021-02-03 15:46:53 +02:00
Lauri Ojansivu 207893fee8 Merge pull request #3525 from jrsupplee/pull-3519
Set the language on `TAPi18n` when user selects language
2021-02-03 15:41:59 +02:00
John R. Supplee 9ec3574ff6 Fix bug in uniqueTitle
`uniqueTitle` was returning a numbered title even when not necessary
2021-02-03 14:03:33 +02:00
John R. Supplee b0522836e6 Set the language on TAPi18n when user selects language
When the `TAPi18n` initialization code was removed from an `autorun()`
it no longer is rerun when a user's profile language is changed.
2021-02-03 12:20:29 +02:00
99 changed files with 63008 additions and 60589 deletions

No files matched your search

+1 -1
View File
@@ -52,7 +52,6 @@ mquandalle:autofocus
ongoworks:speakingurl
raix:handlebar-helpers
tap:i18n
http@1.4.2
# UI components
blaze
@@ -145,3 +144,4 @@ rajit:bootstrap3-datepicker-zh-cn
rajit:bootstrap3-datepicker-zh-tw
staringatlights:fast-render
spacebars
jkuester:http
+1
View File
@@ -76,6 +76,7 @@ http@1.4.3
id-map@1.1.0
idmontie:migrations@1.0.3
inter-process-messaging@0.1.1
jkuester:http@2.0.1
jquery@1.11.11
kadira:blaze-layout@2.3.0
kadira:dochead@1.5.0
+72
View File
@@ -1,3 +1,75 @@
# v4.95 2021-02-08 Wekan release
This release adds back the following features:
- [Added back Custom Fields sorting, because it now does not prevent loading boards](https://github.com/wekan/wekan/pull/3547).
Thanks to mfilser.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/1c494803b091d987e26ccb783432434e7fee15a5).
Thanks to xet7.
- [Fix typo](https://github.com/wekan/wekan/commit/0bd0a70564d3dda67706deb1bbfbd1d5a96f811f).
Thanks to xet7.
- Updated release scripts
[Part 1](https://github.com/wekan/wekan/commit/d0df3a2915d08b255d7ab92f9bcac195a1e7f442),
[Part 2](https://github.com/wekan/wekan/commit/e34a2840366351c0e069515ac2210db3911dbc0f).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v4.94 2021-02-08 Wekan release
This release adds the following new features:
- [Settings, "Show cards count" now works at mobile view too](https://github.com/wekan/wekan/pull/3545).
Thanks to mfilser.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/b4352ada27545fadc425ca7024532aede3cc1a6f).
Thanks to developers of dependencies.
- [Update release scripts](https://github.com/wekan/wekan/commit/dcec5b5cb05ac9e0dfae8f360def169f5f9b6fa2).
Thanks to xet7.
and fixes the following bugs:
- [Fix bug in adding new users](https://github.com/wekan/wekan/pull/3544).
Thanks to jrsupplee.
- [Fixed Board does not load, by disabling Custom Fields sorting](https://github.com/wekan/wekan/commit/d57eb6a2fc73c7b25c957ad42b5f7a06f680e1a1).
Thanks to marcungeschikts, olivierlambert and xet7.
- [Fixed lint](https://github.com/wekan/wekan/commit/60fedad3fe384a2b0652941e57ecaa5fc4b7897a).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# 4.93 2021-02-06 Wekan release
This release adds the following new features:
- [Add the ability to call get_user operation with username](https://github.com/wekan/wekan/pull/3530).
Thanks to magicbelette.
and adds the following updates:
- [Updated Ubuntu base image in Dockerfile](https://github.com/wekan/wekan/commit/bcdaf77a9c675530cfa21d038e8abd7c62aef70d).
Thanks to Ubuntu and xet7.
and fixes the following bugs:
- [Set the language on `TAPi18n` when user selects language](https://github.com/wekan/wekan/pull/3525).
Thanks to jrsupplee.
- [Fix bug in `uniqueTitle`](https://github.com/wekan/wekan/pull/3526).
Thanks to jrsupplee.
- [Fixed file permissions in build scripts](https://github.com/wekan/wekan/commit/ea697f2238842893953dee76bed03ffd5b4a107e).
Thanks to xet7.
- [Red line below the avatar now correctly on FireFox](https://github.com/wekan/wekan/pull/3532).
Thanks to mfilser.
- [Notifications, enable line wrapping](https://github.com/wekan/wekan/pull/3533).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v4.92 2021-02-03 Wekan release
This release adds the following improvements:
+6 -4
View File
@@ -1,4 +1,4 @@
FROM quay.io/wekan/ubuntu:groovy-20201125.2
FROM quay.io/wekan/ubuntu:groovy-20210115
LABEL maintainer="wekan"
# 2020-12-03:
@@ -274,11 +274,12 @@ RUN \
mkdir -p /home/wekan/.npm && \
chown wekan --recursive /home/wekan/.npm /home/wekan/.config /home/wekan/.meteor && \
#gosu wekan:wekan /home/wekan/.meteor/meteor add standard-minifier-js && \
chmod u+w *.json && \
gosu wekan:wekan npm install && \
gosu wekan:wekan /home/wekan/.meteor/meteor build --directory /home/wekan/app_build && \
cp /home/wekan/app/fix-download-unicode/cfs_access-point.txt /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
#cp /home/wekan/app/fix-download-unicode/cfs_access-point.txt /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
#rm /home/wekan/app_build/bundle/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs && \
chown wekan /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
#chown wekan /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
#Removed binary version of bcrypt because of security vulnerability that is not fixed yet.
#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac
#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c
@@ -291,10 +292,11 @@ RUN \
#find . -name "*phantomjs*" | xargs rm -rf && \
#
cd /home/wekan/app_build/bundle/programs/server/ && \
chmod u+w *.json && \
gosu wekan:wekan npm install && \
#gosu wekan:wekan npm install bcrypt && \
# Remove legacy webbroser bundle, so that Wekan works also at Android Firefox, iOS Safari, etc.
rm -rf /home/wekan/app_build/bundle/programs/web.browser.legacy && \
rm -rf /home/wekan/app_build/bundle/programs/web.browser.legacy && \
mv /home/wekan/app_build/bundle /build && \
\
# Put back the original tar
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v4.92.0"
appVersion: "v4.95.0"
files:
userUploads:
- README.md
-1
View File
@@ -90,7 +90,6 @@ template(name="minicard")
.minicard-assignees.js-minicard-assignees
each getAssignees
+userAvatar(userId=this)
hr(class="assigneehr" title="{{_ 'assignee'}}")
if getMembers
.minicard-members.js-minicard-members
+3 -5
View File
@@ -166,17 +166,15 @@
.minicard-assignees
float: right
margin-left: 5px
.assigneehr
border-top: 1px solid red
margin-bottom: 4px
border-bottom: 1px solid red
margin-bottom: 4px
.member
float: right
border-radius: 50%
height: 28px
width: @height
margin: 0px 0px 4px 0px
margin-bottom: 4px
.assignee
float: right
+1 -1
View File
@@ -82,7 +82,7 @@ BlazeComponent.extendComponent({
showCardsCountForList(count) {
const limit = this.limitToShowCardsCount();
return limit > 0 && count > limit;
return limit >= 0 && count > limit;
},
events() {
+2 -2
View File
@@ -11,7 +11,7 @@ template(name="header")
a(href="{{pathFor 'home'}}")
span.fa.fa-home
ul
ul.header-quick-access-list
if currentList
each currentBoard.lists
li(class="{{#if $.Session.equals 'currentList' _id}}current{{/if}}")
@@ -41,7 +41,7 @@ template(name="header")
a(href="{{pathFor 'home'}}")
span.fa.fa-home
| {{_ 'all-boards'}}
ul
ul.header-quick-access-list
//li
// a(href="{{pathFor 'public'}}")
// span.fa.fa-globe
+1 -1
View File
@@ -113,7 +113,7 @@
a:hover, a.is-active
color: white
ul
ul.header-quick-access-list
transition: opacity 0.2s
overflow-x: auto
overflow-y: hidden
@@ -29,10 +29,7 @@
color: #bbb
.details
.activity
display: flex
a.member
margin: 0px 0px 0px 0px
padding: 0px
+3 -3
View File
@@ -567,9 +567,9 @@ Template.newUserPopup.events({
const isAdmin = templateInstance.find('.js-profile-isadmin').value.trim();
const isActive = templateInstance.find('.js-profile-isactive').value.trim();
const email = templateInstance.find('.js-profile-email').value.trim();
const importUsernames = templateInstance
.find('.js-import-usernames')
.value.trim();
const importUsernames = Users.parseImportUsernames(
templateInstance.find('.js-import-usernames').value,
);
Meteor.call(
'setCreateUser',
+27 -18
View File
@@ -31,30 +31,39 @@ BlazeComponent.extendComponent({
},
archivedCards() {
return Cards.find({
archived: true,
boardId: Session.get('currentBoard'),
}, {
sort: { archivedAt: -1, modifiedAt: -1 },
});
return Cards.find(
{
archived: true,
boardId: Session.get('currentBoard'),
},
{
sort: { archivedAt: -1, modifiedAt: -1 },
},
);
},
archivedLists() {
return Lists.find({
archived: true,
boardId: Session.get('currentBoard'),
}, {
sort: { archivedAt: -1, modifiedAt: -1 },
});
return Lists.find(
{
archived: true,
boardId: Session.get('currentBoard'),
},
{
sort: { archivedAt: -1, modifiedAt: -1 },
},
);
},
archivedSwimlanes() {
return Swimlanes.find({
archived: true,
boardId: Session.get('currentBoard'),
}, {
sort: { archivedAt: -1, modifiedAt: -1 },
});
return Swimlanes.find(
{
archived: true,
boardId: Session.get('currentBoard'),
},
{
sort: { archivedAt: -1, modifiedAt: -1 },
},
);
},
cardIsInArchivedList() {
-1
View File
@@ -9,7 +9,6 @@ avatar-radius = 50%
float: left
height: 30px
width: @height
margin: 0 4px 4px 0
cursor: pointer
user-select: none
z-index: 1
+1 -1
View File
@@ -143,7 +143,7 @@ template(name="changeSettingsPopup")
label.bold.clear
i.fa.fa-sort-numeric-asc
| {{_ 'show-cards-minimum-count'}}
input#show-cards-count-at.inline-input.left(type="number" value="#{showCardsCountAt}" min="0" max="99" onkeydown="return false")
input#show-cards-count-at.inline-input.left(type="number" value="#{showCardsCountAt}" min="-1")
label.bold.clear
i.fa.fa-calendar
| {{_ 'start-day-of-week'}}
+12 -1
View File
@@ -213,6 +213,7 @@ Template.changeLanguagePopup.events({
'profile.language': this.tag,
},
});
TAPi18n.setLanguage(this.tag);
event.preventDefault();
},
});
@@ -270,6 +271,13 @@ Template.changeSettingsPopup.helpers({
});
Template.changeSettingsPopup.events({
'keypress/paste #show-cards-count-at'() {
let keyCode = event.keyCode;
let charCode = String.fromCharCode(keyCode);
let regex = new RegExp('[-0-9]');
let ret = regex.test(charCode);
return ret;
},
'click .js-toggle-desktop-drag-handles'() {
currentUser = Meteor.user();
if (currentUser) {
@@ -292,7 +300,7 @@ Template.changeSettingsPopup.events({
},
'click .js-apply-user-settings'(event, templateInstance) {
event.preventDefault();
const minLimit = parseInt(
let minLimit = parseInt(
templateInstance.$('#show-cards-count-at').val(),
10,
);
@@ -301,6 +309,9 @@ Template.changeSettingsPopup.events({
10,
);
const currentUser = Meteor.user();
if (isNaN(minLimit) || minLimit < -1) {
minLimit = -1;
}
if (!isNaN(minLimit)) {
if (currentUser) {
Meteor.call('changeLimitToShowCardsCount', minLimit);
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+3 -3
View File
@@ -928,7 +928,7 @@
"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 with a comment containing *text*.",
"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*",
@@ -936,8 +936,8 @@
"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*",
"globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
"globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which which were created *n* days ago",
"globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which which were modified *n* days ago",
"globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
"globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
"globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
"globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
"globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+954 -953
View File
File diff suppressed because it is too large. Load diff
+5 -1
View File
@@ -1287,7 +1287,11 @@ Boards.uniqueTitle = title => {
},
);
return `${base} [${num + 1}]`;
if (num > 0) {
return `${base} [${num + 1}]`;
}
return title;
};
Boards.userSearch = (
+7 -2
View File
@@ -702,7 +702,9 @@ Cards.helpers({
const definitions = CustomFields.find({
boardIds: { $in: [this.boardId] },
}).fetch();
if (!definitions) {
return {};
}
// match right definition to each field
if (!this.customFields) return [];
const ret = this.customFields.map(customField => {
@@ -731,11 +733,14 @@ Cards.helpers({
definition,
};
});
// at linked cards custom fields definition is not found
ret.sort(
(a, b) =>
a.definition !== undefined &&
b.definition !== undefined &&
a.definition.name !== undefined &&
b.definition.name !== undefined &&
a.definition.name.localeCompare(b.definition.name),
a.definition.name.localeCompare(b.definition.name)
);
return ret;
},
+7 -3
View File
@@ -1460,13 +1460,18 @@ if (Meteor.isServer) {
*
* @description Only the admin user (the first user) can call the REST API.
*
* @param {string} userId the user ID
* @param {string} userId the user ID or username
* @return_type Users
*/
JsonRoutes.add('GET', '/api/users/:userId', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const id = req.params.userId;
let id = req.params.userId;
let user = Meteor.users.findOne({ _id: id });
if (!user) {
user = Meteor.users.findOne({ username: id });
id = user._id;
}
// get all boards where the user is member of
let boards = Boards.find(
@@ -1485,7 +1490,6 @@ if (Meteor.isServer) {
return u;
});
const user = Meteor.users.findOne({ _id: id });
user.boards = boards;
JsonRoutes.sendResult(res, {
code: 200,
+2167 -1505
View File
File diff suppressed because it is too large. Load diff
+8 -5
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v4.92.0",
"version": "v4.95.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
@@ -40,13 +40,12 @@
},
"homepage": "https://wekan.github.io",
"devDependencies": {
"babel-eslint": "^10.1.0",
"eslint": "^5.16.0",
"eslint": "^7.19.0",
"eslint-config-meteor": "0.0.9",
"eslint-config-prettier": "^3.6.0",
"eslint-import-resolver-meteor": "^0.4.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-meteor": "^5.1.0",
"eslint-plugin-meteor": "^7.2.2",
"eslint-plugin-prettier": "^3.3.1",
"lint-staged": "^7.3.0",
"pre-commit": "^1.2.2",
@@ -55,13 +54,15 @@
},
"dependencies": {
"@babel/core": "^7.12.10",
"@babel/eslint-parser": "^7.12.13",
"@babel/runtime": "^7.12.5",
"@root/request": "^1.7.0",
"@typescript-eslint/parser": "^4.14.2",
"ajv": "^7.0.4",
"babel-runtime": "^6.26.0",
"bcrypt": "^5.0.0",
"bson": "^4.2.2",
"bunyan": "^1.8.15",
"core-js": "^3.8.3",
"es6-promise": "^4.2.4",
"exceljs": "^4.2.0",
"fibers": "^5.0.0",
@@ -77,7 +78,9 @@
"page": "^1.11.5",
"papaparse": "^5.3.0",
"qs": "^6.9.6",
"source-map-resolve": "^0.6.0",
"source-map-support": "^0.5.19",
"typescript": "^4.1.3",
"xss": "^1.0.8"
}
}
+4149 -2644
View File
File diff suppressed because it is too large. Load diff
+2 -2
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v4.92
version: v4.95
description: |
The REST API allows you to control and extend Wekan with ease.
@@ -2262,7 +2262,7 @@ paths:
- name: user
in: path
description: |
the user ID
the user ID or username
type: string
required: true
produces:
+17 -12
View File
@@ -22,7 +22,7 @@ do
if [[ "$OSTYPE" == "linux-gnu" ]]; then
echo "Linux";
# Debian, Ubuntu, Mint
sudo apt-get install -y build-essential gcc g++ make git curl wget npm
sudo apt-get install -y build-essential gcc g++ make git curl wget npm p7zip-full
# npm nodejs
#sudo npm -g install npm
#curl -0 -L https://npmjs.org/install.sh | sudo sh
@@ -78,24 +78,29 @@ do
#fi
#cd ..
#sudo chown -R $(id -u):$(id -g) $HOME/.npm $HOME/.meteor
rm -rf node_modules .meteor/local
rm -rf node_modules .meteor/local .build
chmod u+w *.json
npm install
rm -rf .build
meteor build .build --directory
#cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js
# Remove legacy webbroser bundle, so that Wekan works also at Android Firefox, iOS Safari, etc.
rm -rf .build/bundle/programs/web.browser.legacy
#Removed binary version of bcrypt because of security vulnerability that is not fixed yet.
#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac
#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c
#cd ~/repos/wekan/.build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt
#rm -rf node_modules/bcrypt
#meteor npm install bcrypt
cd .build/bundle/programs/server
rm -rf node_modules
chmod u+w *.json
npm install
#meteor npm install bcrypt
cd ../../../..
# Cleanup
cd .build/bundle
find . -type d -name '*-garbage*' | xargs rm -rf
find . -name '*phantom*' | xargs rm -rf
find . -name '.*.swp' | xargs rm -f
find . -name '*.swp' | xargs rm -f
cd ../..
# Add fibers multi arch
#cd .build/bundle/programs/server/node_modules/fibers/bin
#curl https://releases.wekan.team/fibers-multi.7z -o fibers-multi.7z
#7z x fibers-multi.7z
#rm fibers-multi.7z
#cd ../../../../../../..
echo Done.
break
;;
+32 -5
View File
@@ -1,12 +1,39 @@
## Wekan release scripts
Sorry about the mess. I try to cleanup it sometime.
Release process, for example version 4.94:
1) Build x64 bundle and upload to x2/a/s/o:
===========================================
./release.sh 4.94
2) Build bundles at servers
===========================
arm64:
ssh a
./maintainer-make-release-a.sh 4.94
s390x:
ssh s
./maintainer-make-release-s.sh 4.94
openpower:
ssh o
./maintainer-make-release-o.sh 4.94
3) Download bundles and upload to x2 releases:
==============================================
./releases/up.sh
4) At x2, do release:
=====================
ssh x2
cd /var/snap/wekan/common
./release-x2.sh 4.93 4.94
I usually use these:
- release.sh
- release-sandstorm.sh
- release-snap.sh
https://github.com/wekan/wekan-snap/wiki/Making-releases-from-source
https://github.com/wekan/wekan-maintainer/wiki/Building-Wekan-for-Sandstorm
+4
View File
@@ -0,0 +1,4 @@
#!/bin/bash
sudo sandstorm stop
sudo systemctl disable sandstorm
+13
View File
@@ -0,0 +1,13 @@
#!/bin/bash
echo "INSTALLING WEKAN SANDSTORM VERSION RELATED FILES:"
sudo apt-get -y install p7zip-full wget curl
cd ~
wget https://releases.wekan.team/meteor-spk/projects.7z
7z x projects.7z
rm projects.7z
echo "export PATH=$PATH:~/projects/meteor-spk/meteor-spk-0.5.1" >> ~/.bashrc
source ~/.bashrc
echo "INSTALL DEV VERSION OF SANDSTORM:"
curl https://install.sandstorm.io | bash
cd ~/repos/wekan
+40
View File
@@ -0,0 +1,40 @@
#!/bin/bash
# This script is only for Wekan maintainer to
# convert x64 bundle to arm64 bundle.
cd ~/repos
rm -rf bundle
unzip wekan-$1.zip
sudo chown wekan:wekan bundle -R
sudo apt -y install libcurl4-openssl-dev
sudo rm -f /home/wekan/repos/bundle/programs/server/node_modules/.bin/node-pre-gyp
sudo rm -f /home/wekan/repos/bundle/programs/server/node_modules/.bin/node-gyp
sudo rm -rf /home/wekan/repos/bundle/programs/server/npm/node_modules/meteor/lucasantoniassi_accounts-lockout/node_modules/.phantomjs-prebuilt-garbage-*
sudo rm -rf /home/wekan/repos/bundle/programs/server/node_modules/.bin/*
sudo rm -rf /home/wekan/repos/bundle/programs/server/node_modules/node-pre-gyp/node_modules/.bin/*
sudo rm -rf /home/wekan/repos/bundle/programs/server/node_modules/node-gyp/node_modules/.bin/*
sudo rm -rf /home/wekan/repos/bundle/programs/server/npm/node_modules/meteor/ostrio_files/node_modules/request-libcurl/.node_modules-garbage*
cd bundle/programs/server
chmod u+w *.json
npm uninstall fibers node-gyp node-pre-gyp
npm install node-gyp@5.0.4 node-pre-gyp fibers
npm install
npm uninstall fibers node-gyp node-pre-gyp
npm install node-pre-gyp
npm install fibers
npm install node-gyp@5.0.4
cd /home/wekan/repos/bundle
find . -type d -name '*-garbage*' | xargs rm -rf
find . -name '*phantom*' | xargs rm -rf
find . -name '.*.swp' | xargs rm -f
find . -name '*.swp' | xargs rm -f
cd /home/wekan/repos
zip -r wekan-$1-arm64.zip bundle
+17
View File
@@ -0,0 +1,17 @@
cd /home/ubuntu
rm -rf bundle
#wget https://releases.wekan.team/wekan-$1.zip
unzip wekan-$1.zip
cd /home/ubuntu/bundle/programs/server
chmod u+w *.json
cd /home/ubuntu/bundle/programs/server/node_modules/fibers
node build.js
cd /home/ubuntu
cp -pR /home/ubuntu/node-fibers/bin/linux-ppc64-72-glibc bundle/programs/server/node_modules/fibers/bin/
cd bundle
find . -type d -name '*-garbage*' | xargs rm -rf
find . -name '*phantom*' | xargs rm -rf
find . -name '.*.swp' | xargs rm -f
find . -name '*.swp' | xargs rm -f
cd ..
zip -r wekan-$1-ppc64le.zip bundle
+16
View File
@@ -0,0 +1,16 @@
cd /home/linux1
rm -rf bundle
unzip wekan-$1.zip
cd /home/linux1/bundle/programs/server
chmod u+w *.json
cd /home/linux1/bundle/programs/server/node_modules/fibers
node build.js
cd /home/linux1
#cp -pR /home/linux1/node-fibers/bin/linux-s390x-83-glibc bundle/programs/server/node_modules/fibers/bin/
cd bundle
find . -type d -name '*-garbage*' | xargs rm -rf
find . -name '*phantom*' | xargs rm -rf
find . -name '.*.swp' | xargs rm -f
find . -name '*.swp' | xargs rm -f
cd ..
zip -r wekan-$1-s390x.zip bundle
+9 -8
View File
@@ -1,16 +1,17 @@
cd ~/repos/wekan
sudo apt -y install parallel
sudo apt-get -y install parallel
./releases/rebuild-release.sh
#./releases/delete-phantomjs.sh
cd ~/repos/wekan/.build
zip -r wekan-$1.zip bundle
#{
# scp wekan-$1.zip x2:/var/snap/wekan/common/releases.wekan.team/
# scp wekan-$1.zip a:/home/wekan/repos/ && ssh a ' sudo npm -g install npm' && ssh a './maintainer-make-release.sh $1' && scp a:/home/wekan/repos/wekan-$1-arm64.zip . && scp wekan-$1-arm64.zip x2:/var/snap/wekan/common/releases.wekan.team/raspi3/
# scp wekan-$1.zip s:/home/linux1/ && ssh s 'sudo npm -g install npm ' && ssh s './maintainer-make-release.sh $1' && scp s:/home/linux1/wekan-$1-s390x.zip . && scp wekan-$1-s390x.zip x2:/var/snap/wekan/common/releases.wekan.team/s390x/
# scp wekan-$1.zip openpower:/home/ubuntu/ && ssh openpower './maintainer-make-release.sh $1' && scp openpower:/home/ubuntu/wekan-$1-ppc64le.zip . && scp wekan-$1-ppc64le.zip x2:/var/snap/wekan/common/releases.wekan.team/ppc64le/
# sudo systemctl enable sandstorm && sudo sandstorm start && rm -rf ~/sandbuild && sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp && mkdir -p ~/sandbuild && cp -pR ~/repos/wekan ~/sandbuild/ && rm -rf ~/sandbuild/wekan/.meteor-spk && cd ~/sandbuild/wekan/.build/bundle/programs/server && npm install node-gyp node-pre-gyp fibers && cd ~/sandbuild/wekan && meteor-spk pack wekan-$1.spk && spk publish wekan-$1.spk && cd ~/repos/wekan && sudo sandstorm stop && sudo systemctl disable sandstorm && cd ~/repos/wekan
#} | parallel -k
{
scp wekan-$1.zip x2:/var/snap/wekan/common/releases.wekan.team/
scp wekan-$1.zip a:/home/wekan/repos/
scp wekan-$1.zip s:/home/linux1/
scp wekan-$1.zip o:/home/ubuntu/
} | parallel -k
cd ..
echo "Bundle uploaded to x2/a/s/o."
+15 -10
View File
@@ -13,19 +13,24 @@ WEKANDIR=/home/wekan/repos/wekan
# Ensure sudo access
sudo echo .
rm -rf ~/repos/wekan/.meteor-spk
sudo systemctl enable sandstorm
sudo sandstorm start
sudo sandstorm update
# Build Sandstorm
cd $REPODIR
rm -rf $WEKANDIR
git clone git@github.com:wekan/wekan.git
cd $WEKANDIR
sudo n 12.20.1
sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp
#cd $REPODIR
#rm -rf $WEKANDIR
#git clone git@github.com:wekan/wekan.git
#cd $WEKANDIR
#sudo n 12.20.1
#sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp
# Build Wekan
./releases/rebuild-release.sh
cd .build/bundle/programs/server
npm install node-gyp node-pre-gyp fibers
#./releases/rebuild-release.sh
#cd .build/bundle/programs/server
#npm install node-gyp node-pre-gyp fibers
cd $WEKANDIR
# Build Sandstorm
meteor-spk pack wekan-$1.spk
#spk publish wekan-$1.spk
spk publish wekan-$1.spk
rm -rf ~/repos/wekan/.meteor-spk
#scp wekan-$1.spk x2:/var/snap/wekan/common/releases.wekan.team/
+37
View File
@@ -0,0 +1,37 @@
#!/bin/bash
## Syntax: ./release.sh oldversion newversion
## Example: ./release.sh 3.87 3.88
echo "Release: x64"
cd releases.wekan.team
mv wekan-$1.zip /data2/old-releases/
sha256sum wekan-$2.zip >> SHA256SUMS.txt
mv SHA256SUMS.txt ../x64-SHA256SUMS.txt
cat ../x64-SHA256SUMS.txt | grep -v wekan-$1.zip > SHA256SUMS.txt
cd ..
echo "Release: arm64"
cd releases.wekan.team/raspi3
mv wekan-$1-arm64.zip /data2/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
cd ../..
echo "Release: s390x"
cd releases.wekan.team/s390x
mv wekan-$1-s390x.zip /data2/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
cd ../..
echo "Release: ppc64le"
cd releases.wekan.team/ppc64le
mkdir -p /data2/old-releases/ppc64le
mv wekan-$1-ppc64le.zip /data2/old-releases/ppc64le/
sha256sum wekan-$2-ppc64le.zip >> SHA256SUMS.txt
mv SHA256SUMS.txt ../../ppc64le-SHA256SUMS.txt
cat ../../ppc64le-SHA256SUMS.txt | grep -v wekan-$1-ppc64le.zip > SHA256SUMS.txt
cd ../..
+2
View File
@@ -0,0 +1,2 @@
scp a:/home/wekan/repos/wekan-$1-arm64.zip .
scp wekan-$1-arm64.zip x2:/var/snap/wekan/common/releases.wekan.team/raspi3/
+2
View File
@@ -0,0 +1,2 @@
scp o:/home/ubuntu/wekan-$1-ppc64le.zip .
scp wekan-$1-ppc64le.zip x2:/var/snap/wekan/common/releases.wekan.team/ppc64le/
+2
View File
@@ -0,0 +1,2 @@
scp s:/home/linux1/wekan-$1-s390x.zip .
scp wekan-$1-s390x.zip x2:/var/snap/wekan/common/releases.wekan.team/s390x/
Executable
+9
View File
@@ -0,0 +1,9 @@
#!/bin/bash
sudo apt-get -y install parallel
{
~/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 = 492,
appVersion = 495,
# Increment this for every release.
appMarketingVersion = (defaultText = "4.92.0~2021-02-03"),
appMarketingVersion = (defaultText = "4.95.0~2021-02-08"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+26 -117
View File
@@ -97,150 +97,59 @@ parts:
- execstack
- nodejs
- npm
- p7zip-full
stage-packages:
- libfontconfig1
override-build: |
echo "Cleaning environment first"
rm -rf ~/.meteor ~/.npm /usr/local/lib/node_modules
# Create the OpenAPI specification
rm -rf .build
## Use Meteor 1.8.x on Snap
#rm -rf .meteor
#mv .snap-meteor-1.8/.meteor .
#mv .snap-meteor-1.8/package.json .
#mv .snap-meteor-1.8/package-lock.json .
## Meteor 1.9.x has changes to Buffer() => Buffer.alloc(), so reverting those
#mv .snap-meteor-1.8/cfs_access-point.txt fix-download-unicode/
#mv .snap-meteor-1.8/export.js models/
#mv .snap-meteor-1.8/wekanCreator.js models/
#mv .snap-meteor-1.8/ldap.js packages/wekan-ldap/server/ldap.js
#mv .snap-meteor-1.8/oidc_server.js packages/wekan-oidc/oidc_server.js
rm -rf .snap-meteor-1.8
#mkdir -p .build/python
#cd .build/python
#git clone --depth 1 -b master https://github.com/Kronuz/esprima-python
#cd esprima-python
#python3 setup.py install
#cd ../../..
#mkdir -p ./public/api
#python3 ./openapi/generate_openapi.py --release $(git describe --tags --abbrev=0) > ./public/api/wekan.yml
# we temporary need api2html and mkdirp
#npm install -g api2html@0.3.0
#npm install -g mkdirp
#api2html -c ./public/logo-header.png -o ./public/api/wekan.html ./public/api/wekan.yml
#npm uninstall -g mkdirp
#npm uninstall -g api2html
# Node Fibers 100% CPU usage issue:
# https://github.com/wekan/wekan-mongodb/issues/2#issuecomment-381453161
# https://github.com/meteor/meteor/issues/9796#issuecomment-381676326
# https://github.com/sandstorm-io/sandstorm/blob/0f1fec013fe7208ed0fd97eb88b31b77e3c61f42/shell/server/00-startup.js#L99-L129
# Also see beginning of wekan/server/authentication.js
# import Fiber from "fibers";
# Fiber.poolSize = 1e9;
# OLD: Download node version 8.12.0 prerelease build => Official node 8.12.0 has been released
# Description at https://releases.wekan.team/node.txt
##echo "375bd8db50b9c692c0bbba6e96d4114cd29bee3770f901c1ff2249d1038f1348 node" >> node-SHASUMS256.txt.asc
##curl https://releases.wekan.team/node -o node
# Verify Fibers patched node authenticity
##echo "Fibers 100% CPU issue patched node authenticity:"
##grep node node-SHASUMS256.txt.asc | shasum -a 256 -c -
##rm -f node-SHASUMS256.txt.asc
##chmod +x node
##mv node `which node`
# DOES NOT WORK: paxctl fix.
# Removed from build-packages: - paxctl
#echo "Applying paxctl fix for alpine linux: https://github.com/wekan/wekan/issues/1303"
#paxctl -mC `which node`
#echo "Installing npm"
#curl -L https://www.npmjs.com/install.sh | sh
echo "Installing meteor"
curl https://install.meteor.com/ -o install_meteor.sh
#sed -i "s|RELEASE=.*|RELEASE=\"1.8.1-beta.0\"|g" install_meteor.sh
chmod +x install_meteor.sh
sh install_meteor.sh
rm install_meteor.sh
# REPOS BELOW ARE INCLUDED TO WEKAN REPO
#if [ ! -d "packages" ]; then
# mkdir packages
#fi
#if [ ! -d "packages/kadira-flow-router" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/wekan/flow-router.git kadira-flow-router
# cd ..
#fi
#if [ ! -d "packages/meteor-useraccounts-core" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/meteor-useraccounts/core.git meteor-useraccounts-core
# sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' meteor-useraccounts-core/package.js
# cd ..
#fi
#if [ ! -d "packages/meteor-accounts-cas" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-cas.git meteor-accounts-cas
# cd ..
#fi
#if [ ! -d "packages/wekan-ldap" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/wekan/wekan-ldap.git
# cd ..
#fi
#if [ ! -d "packages/wekan-scrollbar" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/wekan/wekan-scrollbar.git
# cd ..
#fi
#if [ ! -d "packages/wekan_accounts-oidc" ]; then
# cd packages
# git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-oidc.git
# mv meteor-accounts-oidc/packages/switch_accounts-oidc wekan-accounts-oidc
# mv meteor-accounts-oidc/packages/switch_oidc wekan-oidc
# rm -rf meteor-accounts-oidc
# cd ..
#fi
#if [ ! -d "packages/markdown" ]; then
# cd packages
# git clone --depth 1 -b master --recurse-submodules https://github.com/wekan/markdown.git
# cd ..
#fi
rm -rf .build
meteor add standard-minifier-js --allow-superuser
meteor npm install --allow-superuser
meteor npm install --allow-superuser --save babel-runtime
chmod u+w *.json
npm install
meteor build .build --directory --allow-superuser
cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js
#Removed binary version of bcrypt because of security vulnerability that is not fixed yet.
#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac
#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c
#cd .build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt
#rm -rf node_modules/bcrypt
#meteor npm install --save bcrypt
# Change from npm-bcrypt directory back to .build/bundle/programs/server directory.
#cd ../../../../
# Remove legacy webbroser bundle, so that Wekan works also at Android Firefox, iOS Safari, etc.
rm -rf .build/bundle/programs/web.browser.legacy
# Change to directory .build/bundle/programs/server
cd .build/bundle/programs/server
chmod u+w *.json
npm install
npm install --allow-superuser --save babel-runtime
#meteor npm install --save bcrypt
# Change back to Wekan source directory
cd ../../../..
# Cleanup
cd .build/bundle
find . -type d -name '*-garbage*' | xargs rm -rf
find . -name '*phantom*' | xargs rm -rf
find . -name '.*.swp' | xargs rm -f
find . -name '*.swp' | xargs rm -f
cd ../..
# Add fibers multi arch
cd .build/bundle/programs/server/node_modules/fibers/bin
curl https://releases.wekan.team/fibers-multi.7z -o fibers-multi.7z
7z x fibers-multi.7z
rm fibers-multi.7z
cd ../../../../../../..
# Copy to Snap
cp -r .build/bundle/* $SNAPCRAFT_PART_INSTALL/
cp .build/bundle/.node_version.txt $SNAPCRAFT_PART_INSTALL/
rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/wekan
rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
# Delete phantomjs that is in accounts-lockout
rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/lucasantoniassi_accounts-lockout/node_modules/phantomjs-prebuilt
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/lucasantoniassi_accounts-lockout/node_modules/phantomjs-prebuilt
# Delete temporary files
rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/tar/lib/.mkdir.js.swp
rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/tar/lib/.mkdir.js.swp
#rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
#rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp
# Meteor 1.8.x additional .swp remove
rm -f $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
# Delete fibers for other archs
rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/fibers/bin/linux-ia32*
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/fibers/bin/linux-ia32*
# ostrio tmp remove
rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/ostrio_files/node_modules/request-libcurl/.node_modules-garbage*
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/ostrio_files/node_modules/request-libcurl/.node_modules-garbage*
organize:
README: README.wekan