Compare commits

...
30 Commits
Author SHA1 Message Date
Lauri Ojansivu edbc8ed92b v7.82 2025-02-24 20:21:33 +02:00
Lauri Ojansivu 07e9ec0617 Updated ChangeLog. 2025-02-24 15:12:07 +02:00
Lauri Ojansivu 18d0fa4327 Fixed building WeKan. Updated dompurify. Forked Meteor 2.14 version of meteor-node-stubs to update elliptic.
Thanks to delopers of depedencies and xet7 !

Fixes #5694
2025-02-24 14:56:54 +02:00
Lauri Ojansivu 666ee84033 Updated dependencies.
Thanks to developes of dependencies "
2025-02-23 15:55:20 +02:00
Lauri Ojansivu 120642f47d Updated ChangeLog. 2025-02-21 21:22:14 +02:00
Lauri Ojansivu 148b81262d Updated requirements at docs.
Thanks to mueller-ma !

Fixes #5692
2025-02-21 21:12:28 +02:00
Lauri Ojansivu c41467f76e Merge pull request #5691 from wekan/dependabot/npm_and_yarn/dompurify-3.2.4
Bump dompurify from 2.5.6 to 3.2.4
2025-02-15 15:47:49 +02:00
dependabot[bot] c83e83b8b1 Bump dompurify from 2.5.6 to 3.2.4
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.5.6 to 3.2.4.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/2.5.6...3.2.4)

---
updated-dependencies:
- dependency-name: dompurify
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-15 08:58:49 +00:00
Lauri Ojansivu 563a508e26 Added missing ) character.
Thanks to xet7 !
2025-02-11 22:12:57 +02:00
Lauri Ojansivu 1d8347cc23 Merge pull request #5682 from salleman33/devel
Update metrics.js
2025-02-11 17:28:33 +02:00
salleman 874abf2c41 Update metrics.js
Add possibility to use a token in place of ipaddress to access metrics route
2025-02-11 12:06:23 +01:00
Lauri Ojansivu 3e18f820ea v7.81 2025-02-07 16:13:52 +02:00
Lauri Ojansivu b571f1c953 Upgraded to MongoDB 6.0.20 at Snap Candidate.
Thanks to MongoDB developers!
2025-02-07 16:11:48 +02:00
Lauri Ojansivu fd69c7ceb8 Updated ChangeLog. 2025-02-05 04:41:42 +02:00
Lauri Ojansivu d15faa1890 Updated ChangeLog. 2025-01-29 14:15:31 +02:00
Lauri Ojansivu 0c7e12c5e7 Added Meteor 3.1 learning course to docs.
Thanks to producer of learning course !
2025-01-29 14:13:21 +02:00
Lauri Ojansivu 36a3077853 Fix misspelling of hours at env variable setting LDAP_BACKGROUND_SYNC_INTERVAL.
Thanks to hubermam !

Fixes #5665
2025-01-29 14:09:31 +02:00
Lauri Ojansivu 51bc23dbd9 Updated ChangeLog. 2025-01-29 13:40:34 +02:00
Lauri Ojansivu 0b1e0bd395 Fixed env variable METRICS_ACCEPTED_IP_ADDRESS to be same as at docs.
Thanks to salleman33 !

Fixes #5671
2025-01-29 13:38:40 +02:00
Lauri Ojansivu 151aafd114 Updated ChangeLog. 2025-01-29 10:23:12 +02:00
Lauri Ojansivu 16c8a65a1c Updated ChangeLog. 2025-01-29 10:22:08 +02:00
Lauri Ojansivu f3133e9cd8 Merge pull request #5670 from wekan/dependabot/github_actions/docker/build-push-action-6.13.0
Bump docker/build-push-action from 6.12.0 to 6.13.0
2025-01-29 10:14:55 +02:00
dependabot[bot] de84aa7674 Bump docker/build-push-action from 6.12.0 to 6.13.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.12.0 to 6.13.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/67a2d409c0a876cbe6b11854e3e25193efe4e62d...ca877d9245402d1537745e0e356eab47c3520991)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-27 20:17:17 +00:00
Lauri Ojansivu 1bdbfe86bb Merge pull request #5663 from wekan/dependabot/github_actions/helm/chart-releaser-action-1.7.0
Bump helm/chart-releaser-action from 1.6.0 to 1.7.0
2025-01-21 22:44:23 +02:00
Lauri Ojansivu 397b9f439e Merge pull request #5662 from wekan/dependabot/github_actions/docker/build-push-action-6.12.0
Bump docker/build-push-action from 6.11.0 to 6.12.0
2025-01-21 22:44:12 +02:00
dependabot[bot] 261e0aee0f Bump helm/chart-releaser-action from 1.6.0 to 1.7.0
Bumps [helm/chart-releaser-action](https://github.com/helm/chart-releaser-action) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/helm/chart-releaser-action/releases)
- [Commits](https://github.com/helm/chart-releaser-action/compare/v1.6.0...v1.7.0)

---
updated-dependencies:
- dependency-name: helm/chart-releaser-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 20:02:15 +00:00
dependabot[bot] a6d9bde658 Bump docker/build-push-action from 6.11.0 to 6.12.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.11.0 to 6.12.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/b32b51a8eda65d6793cd0494a773d4f6bcef32dc...67a2d409c0a876cbe6b11854e3e25193efe4e62d)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 20:02:13 +00:00
Lauri Ojansivu 8d0a07e1a8 Updated translations. 2025-01-19 23:06:23 +02:00
Lauri Ojansivu 659615e6f2 Merge pull request #5658 from wekan/dependabot/github_actions/docker/build-push-action-6.11.0
Bump docker/build-push-action from 6.10.0 to 6.11.0
2025-01-15 12:18:49 +02:00
dependabot[bot] 9f0b82c0d5 Bump docker/build-push-action from 6.10.0 to 6.11.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.10.0 to 6.11.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/48aba3b46d1b1fec4febb7c5d0c644b249a11355...b32b51a8eda65d6793cd0494a773d4f6bcef32dc)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 20:55:32 +00:00
23 changed files with 317 additions and 231 deletions

No files matched your search

+1 -1
View File
@@ -55,7 +55,7 @@ jobs:
# Build and push Docker image with Buildx (don't push on PR)
# https://github.com/docker/build-push-action
- name: Build and push Docker image
uses: docker/build-push-action@48aba3b46d1b1fec4febb7c5d0c644b249a11355
uses: docker/build-push-action@ca877d9245402d1537745e0e356eab47c3520991
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
+1 -1
View File
@@ -25,6 +25,6 @@ jobs:
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
uses: helm/chart-releaser-action@v1.7.0
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
+52
View File
@@ -15,6 +15,58 @@ Fixing other platforms In Progress.
[How to upgrade WeKan](https://github.com/wekan/wekan/issues/4585)
# v7.82 2025-02-24 WeKan ® release
This release adds the following new features:
- [Add possibility to use a token in place of ipaddress to access metrics route](https://github.com/wekan/wekan/pull/5682).
Thanks to salleman33.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/pull/5691).
Thanks to dependabot.
- [Updated requirements at docs](https://github.com/wekan/wekan/commit/148b81262d0d143460e881d645fefa6740aae40d).
Thanks to mueller-ma.
- [Updated dependencies](https://github.com/wekan/wekan/commit/666ee8403388f7d5e1a30cf0e53bc46a70bf1c40).
Thanks to developes of dependencies.
- [Fixed building WeKan. Updated dompurify. Forked Meteor 2.14 version of meteor-node-stubs to update elliptic](https://github.com/wekan/wekan/commit/18d0fa43275cd2955dd6416213e316ca08a62255).
Thanks to developers of depedencies and xet7.
and fixes the following bugs:
- [Added missing ) character](https://github.com/wekan/wekan/commit/563a508e269be87eb713e2888409525e1ba82001).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.81 2025-02-07 WeKan ® release
This release adds the following new features:
- [Helm Chart: Added secretManaged value for enabling or disabling the creation of secret by Helm](https://github.com/wekan/charts/pull/39).
Thanks to salleman33.
and adds the following updates:
- [Updated Docker Actions](https://github.com/wekan/wekan/pull/5670).
Thanks to dependabot.
- [Added Meteor 3.1 learning course to docs](https://github.com/wekan/wekan/commit/0c7e12c5e7f322bdbaaa61100e66153dd0b92e4d).
Thanks to producer of learning course.
- [Upgraded to MongoDB 6.0.20 at Snap Candidate](https://github.com/wekan/wekan/commit/b571f1c9530b899db75bf28a03c18277a9b77cb8).
Thanks to MongoDB developers.
and fixes the following bugs:
- [Fixed env variable METRICS_ACCEPTED_IP_ADDRESS to be same as at docs](https://github.com/wekan/wekan/commit/0b1e0bd39569175668c195b63dde91bf0e6f1b24).
Thanks to salleman33.
- [Fixed misspelling of hours at env variable setting LDAP_BACKGROUND_SYNC_INTERVAL](https://github.com/wekan/wekan/commit/36a307785369337a788499065f64175971878930).
Thanks to hubermam.
- [Helm Chart: Restore pod security context in deployment](https://github.com/wekan/charts/pull/40).
Thanks to adalinesimonian.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.80 2025-01-12 WeKan ® release
This release fixes the following bugs:
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v7.80.0"
appVersion: "v7.82.0"
files:
userUploads:
- README.md
+6 -2
View File
@@ -577,10 +577,14 @@ services:
# If the sync of the users should be done in the background
#- LDAP_BACKGROUND_SYNC=false
#
# At which interval does the background task sync.
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hour
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
# At which interval does the background task sync in milliseconds.
# Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
- LDAP_BACKGROUND_SYNC_INTERVAL=''
#
#- LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
#
+6 -2
View File
@@ -575,10 +575,14 @@ services:
# If the sync of the users should be done in the background
#- LDAP_BACKGROUND_SYNC=false
#
# At which interval does the background task sync.
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hour
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
# At which interval does the background task sync in milliseconds.
# Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
- LDAP_BACKGROUND_SYNC_INTERVAL=''
#
#- LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
#
+4
View File
@@ -1,3 +1,7 @@
## Learning Course: Your First Meteor 3.1 Application
- https://www.youtube.com/watch?v=aFZzBb2oRi8&list=PLKKckIyt2nF863eP16mvVgWKR4JDyJoKy
## Meteor 3 Example Code
- https://github.com/fredmaiaarantes/simpletasks
+1 -8
View File
@@ -1,8 +1 @@
Wekan works on x64. There is not yet version for [Raspberry Pi](https://github.com/wekan/wekan/issues/1053).
Wekan requires MongoDB 3.2.x . For other requirements and versions see [VirtualBox scripts](https://github.com/wekan/wekan-maintainer/tree/master/virtualbox) or [Dockerfile](https://github.com/wekan/wekan/blob/main/Dockerfile).
Known bugs with other versions:
- Node 6.x: 100% CPU usage.
- MongoDB 3.4.x: Wekan crashes when uploading attachment.
- [Hardened kernel prevents creating new Wekan boards at Sandstorm](https://github.com/wekan/wekan/issues/1398)
WeKan Requiremens are at https://wekan.github.io/install/
+35 -7
View File
@@ -52,7 +52,15 @@ sudo snap set wekan ldap-authentication-userdn='CN=LDAP-User,OU=Service Accounts
sudo snap set wekan ldap-authentication-password='<password>'
sudo snap set wekan ldap-log-enabled='true'
sudo snap set wekan ldap-background-sync='true'
sudo snap set wekan ldap-background-sync-interval='every 1 minute'
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#sudo snap set wekan ldap-background-sync-interval='every 1 hours'
# At which interval does the background task sync in milliseconds.
# If not in use, Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
#sudo snap set wekan ldap-background-sync-interval=''
sudo snap set wekan ldap-background-sync-interval='every 1 hours'
sudo snap set wekan ldap-background-sync-keep-existant-users-updated='true'
sudo snap set wekan ldap-background-sync-import-new-users='true'
sudo snap set wekan ldap-encryption='false'
@@ -100,7 +108,15 @@ snap set wekan ldap-basedn='dc=example,dc=com'
snap set wekan ldap-background-sync='true'
snap set wekan ldap-background-sync-keep-existant-users-updated='true'
snap set wekan ldap-background-sync-import-new-users='true'
snap set wekan ldap-background-sync-interval='Every 1 minute'
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#sudo snap set wekan ldap-background-sync-interval='every 1 hours'
# At which interval does the background task sync in milliseconds.
# If not in use, Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
#sudo snap set wekan ldap-background-sync-interval=''
snap set wekan ldap-background-sync-interval='every 1 hours'
snap set wekan ldap-merge-existing-users='true'
snap set wekan ldap-user-search-field='uid'
snap set wekan ldap-user-search-filter='(&(objectclass=person))'
@@ -121,7 +137,15 @@ sudo snap set wekan ldap-authentication-password='********'
sudo snap set wekan ldap-authentication-userdn='cn=admin,dc=*******,dc=lan'
sudo snap set wekan ldap-background-sync='true'
sudo snap set wekan ldap-background-sync-import-new-users='true'
sudo snap set wekan ldap-background-sync-interval='Every 1 minute'
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#sudo snap set wekan ldap-background-sync-interval='every 1 hours'
# At which interval does the background task sync in milliseconds.
# If not in use, Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
#sudo snap set wekan ldap-background-sync-interval=''
sudo snap set wekan ldap-background-sync-interval='every 1 hours'
sudo snap set wekan ldap-basedn='dc=*****,dc=lan'
sudo snap set wekan ldap-email-field='mail'
sudo snap set wekan ldap-enable='true'
@@ -316,10 +340,14 @@ services:
# LDAP_BACKGROUND_SYNC : If the sync of the users should be done in the background
# example : LDAP_BACKGROUND_SYNC=true
- LDAP_BACKGROUND_SYNC=false
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync
# example : LDAP_BACKGROUND_SYNC_INTERVAL='every 15 minutes'
# for more info: http://bunkat.github.io/later/parsers.html#text
- LDAP_BACKGROUND_SYNC_INTERVAL='every 1 hour'
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
# At which interval does the background task sync in milliseconds.
# Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
- LDAP_BACKGROUND_SYNC_INTERVAL=''
# LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
# example : LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
- LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
+42 -2
View File
@@ -1,7 +1,12 @@
- At some cases [Hardened kernel may prevent creating new Wekan boards at Sandstorm](https://github.com/wekan/wekan/issues/1398)
# Sandstorm at Debian and Ubuntu
### Sandstorm CloudFlare DNS settings
Sandstorm works when configured to full domain, with CloudFlare SSL/TLS, with Caddy.
Not subdomain, not sub-url, and not with Let's Encrypt that AFAIK does not support wildcard SSL/TLS.
Source: https://github.com/sandstorm-io/sandstorm/issues/3714#issuecomment-2366866243
For me, it works at CloudFlare DNS using TLS Strict checking and DNS setting clicking to orange cloud icon to make TLS proxy with Origin certificate, that is at /etc/caddy/certs/example.com.pem with above private key and below cert.
@@ -13,17 +18,52 @@ DNS records:
```
Caddyfile, proxy to KVM VM that is running Debian and Sandstorm:
```
# Full domain where Sandstorm login is. Not subdomain. Not sub-url.
*.example.com example.com {
tls {
load /etc/caddy/certs
alpn http/1.1
}
# If KVM VM, it's IP address:
#reverse_proxy 123.123.123.123:80
# Localhost port 81, when not in KVM VM
reverse_proxy 127.0.0.1:81
}
reverse_proxy 123.123.123.123:80
blog.somecompany.com {
tls {
load /etc/caddy/certs
alpn http/1.1
}
# Blog hosted at Sandstorm WordPress
reverse_proxy 127.0.0.1:81
}
othercompany.com {
tls {
load /etc/caddy/certs
alpn http/1.1
}
# Website hosted at Sandstorm Hacker CMS
reverse_proxy 127.0.0.1:81
}
```
At /opt/sandstorm/sandstorm.conf is domain, http port etc.
If having Sandstorm inside of KVM VM: https://github.com/wekan/wekan/blob/main/docs/Platforms/FOSS/Snap/Many-Snaps-on-LXC.md
At /opt/sandstorm/sandstorm.conf is domain where Sandstorm login is, http port etc.
```
SERVER_USER=sandstorm
PORT=81
MONGO_PORT=6081
BIND_IP=127.0.0.1
BASE_URL=https://example.com
WILDCARD_HOST=*.example.com
UPDATE_CHANNEL=dev
ALLOW_DEV_ACCOUNTS=false
SMTP_LISTEN_PORT=25
#SANDCATS_BASE_DOMAIN=sandcats.io
#HTTPS_PORT=443
```
Some related info at:
https://github.com/wekan/wekan/wiki/Caddy-Webserver-Config
@@ -520,6 +520,15 @@ services:
# https://bunkat.github.io/later/parsers.html#text
#- LDAP_BACKGROUND_SYNC_INTERVAL='every 1 hour'
#
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#- LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
# At which interval does the background task sync in milliseconds.
# Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
- LDAP_BACKGROUND_SYNC_INTERVAL=''
#
# LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
# example : LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
#- LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
+4 -4
View File
@@ -10,19 +10,19 @@ This is without container (without Docker or Snap).
Right click and download files 1-4:
1. [wekan-7.80-amd64-windows.zip](https://github.com/wekan/wekan/releases/download/v7.80/wekan-7.80-amd64-windows.zip)
1. [wekan-7.82-amd64-windows.zip](https://github.com/wekan/wekan/releases/download/v7.82/wekan-7.82-amd64-windows.zip)
2. [node.exe](https://nodejs.org/dist/latest-v14.x/win-x64/node.exe)
3. [mongodb-windows-x86_64-6.0.19-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.19-signed.msi)
3. [mongodb-windows-x86_64-6.0.20-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.20-signed.msi)
4. [start-wekan.bat](https://raw.githubusercontent.com/wekan/wekan/main/start-wekan.bat)
5. Copy files from steps 1-4 with USB stick or DVD to offline Windows computer
6. Double click `mongodb-windows-x86_64-6.0.19-signed.msi` . In installer, uncheck downloading MongoDB compass.
6. Double click `mongodb-windows-x86_64-6.0.20-signed.msi` . In installer, uncheck downloading MongoDB compass.
7. Unzip `wekan-7.80-amd64-windows.zip` , inside it is directory `bundle`, to it copy other files:
7. Unzip `wekan-7.82-amd64-windows.zip` , inside it is directory `bundle`, to it copy other files:
```
bundle (directory)
+21 -21
View File
@@ -107,7 +107,7 @@
"add-label": "Ajouter une étiquette",
"add-list": "Ajouter une liste",
"add-after-list": "Ajouter après la liste",
"add-members": "Assigner des participants",
"add-members": "Ajouter des participants",
"added": "Ajouté le",
"addMemberPopup-title": "Participants",
"memberPopup-title": "Préférence du participant",
@@ -139,7 +139,7 @@
"templates": "Modèles",
"template-container": "Conteneur de modèles",
"add-template-container": "Ajouter un conteneur de modèles",
"assign-member": "Affecter un participant",
"assign-member": "Attribuer à un participant",
"attached": "joint",
"attachment": "Pièce jointe",
"attachment-delete-pop": "La suppression d'une pièce jointe est définitive. Cela est irréversible.",
@@ -199,7 +199,7 @@
"card-edit-labels": "Gérer les étiquettes",
"card-edit-members": "Gérer les participants",
"card-labels-title": "Modifier les étiquettes de la carte.",
"card-members-title": "Assigner ou supprimer des participants à la carte.",
"card-members-title": "Ajouter ou supprimer des participants du tableau à la carte.",
"card-start": "Début",
"card-start-on": "Commence le",
"cardAttachmentsPopup-title": "Ajouter depuis",
@@ -310,7 +310,7 @@
"no-comments": "Aucun commentaire",
"no-comments-desc": "Ne peut pas voir les commentaires et les activités.",
"worker": "Travailleur",
"worker-desc": "Peut seulement déplacer des cartes, s'assigner à une carte et la commenter.",
"worker-desc": "Peut seulement déplacer des cartes, s'attribuer une carte et la commenter.",
"computer": "Ordinateur",
"confirm-subtask-delete-popup": "Êtes-vous sûr de vouloir supprimer la sous-tâche ?",
"confirm-checklist-delete-popup": "Êtes-vous sûr de vouloir supprimer la check-list ?",
@@ -437,8 +437,8 @@
"filter-no-label": "Aucune étiquette",
"filter-member-label": "Filtrer par participant",
"filter-no-member": "Aucun participant",
"filter-assignee-label": "Filtrer par personne en charge",
"filter-no-assignee": "Pas de personne en charge",
"filter-assignee-label": "Filtrer par intervenant",
"filter-no-assignee": "Pas d'intervenant",
"filter-custom-fields-label": "Filtrer par champs personnalisés",
"filter-no-custom-fields": "Pas de champs personnalisés",
"filter-show-archive": "Montrer les listes archivées",
@@ -471,9 +471,9 @@
"import-board-instruction-about-errors": "Si une erreur survient en important le tableau, il se peut que l'import ait fonctionné, et que le tableau se trouve sur la page \"Tous les tableaux\".",
"import-json-placeholder": "Collez ici les données JSON valides",
"import-csv-placeholder": "Déposez ici vos données valides CSV/TSV",
"import-map-members": "Assigner des participants",
"import-members-map": "Le tableau que vous venez d'importer contient des participants. Veuillez assigner les participants que vous souhaitez importer à vos utilisateurs.",
"import-members-map-note": "Note: les participants ne concordant pas seront assignés à l'utilisateur courant.",
"import-map-members": "Faire correspondre les participants",
"import-members-map": "Le tableau que vous venez d'importer contient des participants. Veuillez faire correspondre les participants que vous souhaitez importer à vos utilisateurs.",
"import-members-map-note": "Note: les participants ne concordant pas seront attribués à l'utilisateur courant.",
"import-show-user-mapping": "Contrôler l'assignation des participants",
"import-user-select": "Sélectionnez l'utilisateur existant que vous voulez associer à ce participant",
"importMapMembersAddPopup-title": "Sélectionner le participant",
@@ -581,13 +581,13 @@
"set-wip-limit-value": "Définit une limite maximale au nombre de cartes de cette liste",
"setWipLimitPopup-title": "Définir la limite WIP",
"shortcut-add-self": "S'ajouter à la carte courante",
"shortcut-assign-self": "Affecter cette carte à vous-même",
"shortcut-assign-self": "S'attribuer cette carte",
"shortcut-autocomplete-emoji": "Auto-complétion des emoji",
"shortcut-autocomplete-members": "Auto-complétion des participants",
"shortcut-clear-filters": "Retirer tous les filtres",
"shortcut-close-dialog": "Fermer la boîte de dialogue",
"shortcut-filter-my-cards": "Filtrer mes cartes",
"shortcut-filter-my-assigned-cards": "Filtrer mes cartes assignées",
"shortcut-filter-my-assigned-cards": "Filtrer mes cartes attribuées",
"shortcut-show-shortcuts": "Afficher cette liste de raccourcis",
"shortcut-toggle-filterbar": "Afficher/Masquer la barre latérale des filtres",
"shortcut-toggle-searchbar": "Afficher/Masquer la barre latérale de recherche",
@@ -610,7 +610,7 @@
"has-spenttime-cards": "A des cartes avec du temps passé",
"time": "Temps",
"title": "Titre",
"toggle-assignees": "Changer les personnes en charge 1-9 sur les cartes (par ordre d'ajout au tableau)",
"toggle-assignees": "Changer les intervenants 1-9 sur une carte (par ordre d'ajout au tableau)",
"toggle-labels": "Afficher/Masquer les étiquettes 1-9 sur les cartes. La sélection multiple ajoute les étiquettes 1-9",
"remove-labels-multiselect": "La multi-sélection supprime les étiquettes 1-9",
"tracking": "Suivi",
@@ -729,7 +729,7 @@
"setCardActionsColorPopup-title": "Choisissez une couleur",
"setSwimlaneColorPopup-title": "Choisissez une couleur",
"setListColorPopup-title": "Choisissez une couleur",
"assigned-by": "Assigné par",
"assigned-by": "Attribué par",
"requested-by": "Demandé par",
"card-sorting-by-number": "Tri numérique des cartes",
"board-delete-notice": "La suppression est définitive. Vous perdrez toutes les listes, cartes et actions associées à ce tableau.",
@@ -928,8 +928,8 @@
"accounts-allowUserDelete": "Autoriser les utilisateurs à supprimer leur compte",
"hide-minicard-label-text": "Cacher l'étiquette de la mini-carte",
"show-desktop-drag-handles": "Voir les poignées de déplacement du bureau",
"assignee": "Personne en charge",
"cardAssigneesPopup-title": "Personne en charge",
"assignee": "Intervenant",
"cardAssigneesPopup-title": "Intervenant",
"addmore-detail": "Ajouter une description plus détaillée",
"show-on-card": "Afficher sur la carte",
"show-on-minicard": "Afficher sur la mini-carte",
@@ -1023,7 +1023,7 @@
"operator-user-abbrev": "@",
"operator-member": "participant",
"operator-member-abbrev": "m",
"operator-assignee": "personne en charge",
"operator-assignee": "intervenant",
"operator-assignee-abbrev": "a",
"operator-creator": "créateur",
"operator-status": "statut",
@@ -1054,7 +1054,7 @@
"predicate-checklist": "check-list",
"predicate-start": "début",
"predicate-end": "fin",
"predicate-assignee": "personne en charge",
"predicate-assignee": "intervenant",
"predicate-member": "participant",
"predicate-public": "public",
"predicate-private": "privé",
@@ -1079,13 +1079,13 @@
"globalSearch-instructions-operator-comment": "`__operator_comment__:<texte>` - cartes dont le commentaire contient *<texte>*.",
"globalSearch-instructions-operator-label": "`__operator_label__:<couleur>` `__operator_label__:<nom>` - cartes qui ont une étiquette correspondant à *<couleur>* ou à *<nom>*.",
"globalSearch-instructions-operator-hash": "`__operator_label_abbrev__<nom|couleur>` - raccourci pour `__operator_label__:<couleur>` ou `__operator_label__:<nom>`",
"globalSearch-instructions-operator-user": "`__operator_user__:<nom>` - cartes où l'utilisateur <nom> est *participant* ou est *en charge*.",
"globalSearch-instructions-operator-user": "`__operator_user__:<nom>` - cartes où l'utilisateur <nom> est *participant* ou *intervenant*.",
"globalSearch-instructions-operator-at": "`__operator_user_abbrev__nom` - raccourci pour `__operator_user__:<nom>`",
"globalSearch-instructions-operator-member": "`__operator_member__:<nom>` - cartes pour lesquelles l'utilisateur *<nom>* est *participant*",
"globalSearch-instructions-operator-assignee": "`__operator_assignee__:<nom>` - cartes *assignées* à l'utilisateur *<nom>*",
"globalSearch-instructions-operator-assignee": "`__operator_assignee__:<nom>` - cartes *attribuées* à l'utilisateur *<nom>*",
"globalSearch-instructions-operator-creator": "`__operator_creator__:<utilisateur>` - cartes dont le créateur est *<utilisateur>*",
"globalSearch-instructions-operator-org": "`__operator_org__:<display name|short name>` - cartes appartenant à un tableau assigné à l'organisation *<name>*",
"globalSearch-instructions-operator-team": "`__operator_team__:<display name|short name>` - cartes appartenant à un tableau assigné à l'équipe *<name>*",
"globalSearch-instructions-operator-org": "`__operator_org__:<display name|short name>` - cartes appartenant à un tableau attribué à l'organisation *<name>*",
"globalSearch-instructions-operator-team": "`__operator_team__:<display name|short name>` - cartes appartenant à un tableau attribué à l'équipe *<name>*",
"globalSearch-instructions-operator-due": "`__operator_due__:<n>` - cartes qui arrive à échéance dans moins de *<n>* jours à partir d'aujourd'hui.\n`__operator_due__:__predicate_overdue__` liste toutes les cartes ayant passé la date d'échéance.",
"globalSearch-instructions-operator-created": "`__operator_created__:<n>` - cartes qui ont été créées il y a *<n>* jours ou moins",
"globalSearch-instructions-operator-modified": "`__operator_modified__:<n>` - cartes qui ont été modifiées il y a *<n>* jours ou moins",
+6 -6
View File
@@ -49,7 +49,7 @@
"activity-archived": "%s Arşive taşındı",
"activity-attached": "%s içine %s ekledi",
"activity-created": "%s öğesini oluşturdu",
"activity-changedListTitle": "renamed list to %s",
"activity-changedListTitle": "Liste adı %syapıldı",
"activity-customfield-created": "%s adlı özel alan yaratıldı",
"activity-excluded": "%s içinden %s çıkarttı",
"activity-imported": "%s kaynağından %s öğesini %s öğesinin içine taşıdı",
@@ -86,10 +86,10 @@
"add-card": "Kart Ekle",
"add-card-to-top-of-list": "Listenin Başına Kart Ekle",
"add-card-to-bottom-of-list": "Listenin Sonuna Kart Ekle",
"setListWidthPopup-title": "Set Widths",
"set-list-width": "Set Widths",
"set-list-width-value": "Set Min & Max Widths (pixels)",
"list-width-error-message": "List widths must be integers greater than 100",
"setListWidthPopup-title": "Genişlik Ata",
"set-list-width": "Genişlik Ata",
"set-list-width-value": "En Az & En Çok Genişlik (piksel) Ata ",
"list-width-error-message": "Liste genişliği 100'den büyük sayısal bir değer olmalı",
"keyboard-shortcuts-enabled": "Keyboard shortcuts enabled. Click to disable.",
"keyboard-shortcuts-disabled": "Keyboard shortcuts disabled. Click to enable.",
"setSwimlaneHeightPopup-title": "Kulvar Uzunluğunu Ayarla",
@@ -300,7 +300,7 @@
"color-white": "beyaz",
"color-yellow": "sarı",
"unset-color": "Seçilmemiş",
"comments": "Comments",
"comments": "Yorumlar",
"comment": "Yorum",
"comment-placeholder": "Yorum Yaz",
"comment-only": "Sadece yorum",
+31 -6
View File
@@ -2,13 +2,38 @@ import { Meteor } from 'meteor/meteor';
import Users from '../users';
function acceptedIpAddress(ipAddress) {
const trustedIpAddress = process.env.WEKAN_METRICS_ACCEPTED_IP_ADDRESS;
const trustedIpAddress = process.env.METRICS_ACCEPTED_IP_ADDRESS;
return (
trustedIpAddress !== undefined &&
trustedIpAddress.split(',').includes(ipAddress)
);
}
function accessToken(req) {
const valid_token = process.env.METRICS_ACCESS_TOKEN;
let token;
if (req.headers && req.headers.authorization) {
var parts = req.headers.authorization.split(" ");
if (parts.length === 2) {
var scheme = parts[0];
var credentials = parts[1];
if (/^Bearer$/i.test(scheme)) {
token = credentials;
}
}
}
if (!token && req.query && req.query.access_token) {
token = req.query.access_token;
}
return (
token !== undefined &&
valid_token !== undefined &&
token == valid_token
);
}
const getBoardTitleWithMostActivities = (dateWithXdaysAgo, nbLimit) => {
return Promise.await(
Activities.rawCollection()
@@ -48,8 +73,8 @@ Meteor.startup(() => {
// const ipAddress = req.socket.remoteAddress
// }
// List of trusted ip adress will be found in environment variable "WEKAN_METRICS_ACCEPTED_IP_ADDRESS" (separeted with commas)
if (acceptedIpAddress(ipAddress)) {
// List of trusted ip adress will be found in environment variable "METRICS_ACCEPTED_IP_ADDRESS" (separeted with commas)
if (acceptedIpAddress(ipAddress) || (accessToken(req))) {
let metricsRes = '';
let resCount = 0;
//connected users
@@ -170,12 +195,12 @@ Meteor.startup(() => {
metricsRes +=
'# Top 10 boards with most activities dated 30 days ago\n';
//Get top 10 table with most activities in current month
//Get top 10 table with most activities in current month
const boardTitleWithMostActivities = getBoardTitleWithMostActivities(
dateWithXdaysAgo,
xdays,
);
const boardWithMostActivities = boardTitleWithMostActivities.map(
(board) => board.lookup[0].title,
);
@@ -185,7 +210,7 @@ Meteor.startup(() => {
`wekan_top10BoardsWithMostActivities{n="${title}"} ${
index + 1
}` + '\n';
});
});
res.writeHead(200); // HTTP status
res.end(metricsRes);
+77 -156
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v7.80.0",
"version": "v7.82.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -108,6 +108,12 @@
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.63.tgz",
"integrity": "sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ=="
},
"@types/trusted-types": {
"version": "2.0.7",
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz",
"integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==",
"optional": true
},
"@wekanteam/dragscroll": {
"version": "git+https://github.com/wekan/dragscroll.git#6ea215c8cdbde9362ecba8ffb72ce9f9fde842d2",
"from": "git+https://github.com/wekan/dragscroll.git"
@@ -600,9 +606,12 @@
}
},
"dompurify": {
"version": "2.5.6",
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.5.6.tgz",
"integrity": "sha512-zUTaUBO8pY4+iJMPE1B9XlO2tXVYIcEA4SNGtvDELzTSCQO7RzH+j7S180BmhmJId78lqGU2z19vgVx2Sxs/PQ=="
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz",
"integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==",
"requires": {
"@types/trusted-types": "^2.0.7"
}
},
"domutils": {
"version": "2.8.0",
@@ -1373,16 +1382,15 @@
"integrity": "sha512-SBbbYWvFYvsxHVL+q6ZB8lT3rp2LSvfALD2V52H+MGH2IgJsevy0VtXRkRG0EsUewwOaDTIKBn9DlD8HQ3GSwg=="
},
"meteor-node-stubs": {
"version": "1.2.12",
"resolved": "https://registry.npmjs.org/meteor-node-stubs/-/meteor-node-stubs-1.2.12.tgz",
"integrity": "sha512-mzp3KI2aGNDhFlCVXPd0pfMr2z9A5vl1AqEgV13/z7AgKwcbd2X+ymE6tpSAMkrrQb40PU9PC2B59bCb6XkAaw==",
"version": "git+https://github.com/wekan/meteor-node-stubs.git#4f2609bc4d9d700ff79424ad4ed8dbf1f06666cb",
"from": "git+https://github.com/wekan/meteor-node-stubs.git",
"requires": {
"@meteorjs/crypto-browserify": "^3.12.1",
"assert": "^2.1.0",
"browserify-zlib": "^0.2.0",
"buffer": "^5.7.1",
"console-browserify": "^1.2.0",
"constants-browserify": "^1.0.0",
"crypto-browserify": "^3.12.0",
"domain-browser": "^4.23.0",
"elliptic": "^6.6.0",
"events": "^3.3.0",
@@ -1398,46 +1406,19 @@
"string_decoder": "^1.3.0",
"timers-browserify": "^2.0.12",
"tty-browserify": "0.0.1",
"url": "^0.11.4",
"url": "^0.11.3",
"util": "^0.12.5",
"vm-browserify": "^1.1.2"
},
"dependencies": {
"@meteorjs/crypto-browserify": {
"version": "3.12.1",
"bundled": true,
"requires": {
"browserify-cipher": "^1.0.1",
"browserify-sign": "^4.2.3",
"create-ecdh": "^4.0.4",
"create-hash": "^1.2.0",
"create-hmac": "^1.1.7",
"diffie-hellman": "^5.0.3",
"hash-base": "~3.0.4",
"inherits": "^2.0.4",
"pbkdf2": "^3.1.2",
"public-encrypt": "^4.0.3",
"randombytes": "^2.1.0",
"randomfill": "^1.0.4"
},
"dependencies": {
"hash-base": {
"version": "3.0.4",
"bundled": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
}
}
}
},
"asn1.js": {
"version": "4.10.1",
"version": "5.4.1",
"bundled": true,
"requires": {
"bn.js": "^4.0.0",
"inherits": "^2.0.1",
"minimalistic-assert": "^1.0.0"
"minimalistic-assert": "^1.0.0",
"safer-buffer": "^2.1.0"
},
"dependencies": {
"bn.js": {
@@ -1513,64 +1494,23 @@
}
},
"browserify-sign": {
"version": "4.2.3",
"version": "4.2.2",
"bundled": true,
"requires": {
"bn.js": "^5.2.1",
"browserify-rsa": "^4.1.0",
"create-hash": "^1.2.0",
"create-hmac": "^1.1.7",
"elliptic": "^6.5.5",
"hash-base": "~3.0",
"elliptic": "^6.5.4",
"inherits": "^2.0.4",
"parse-asn1": "^5.1.7",
"readable-stream": "^2.3.8",
"parse-asn1": "^5.1.6",
"readable-stream": "^3.6.2",
"safe-buffer": "^5.2.1"
},
"dependencies": {
"bn.js": {
"version": "5.2.1",
"bundled": true
},
"hash-base": {
"version": "3.0.4",
"bundled": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
}
},
"readable-stream": {
"version": "2.3.8",
"bundled": true,
"requires": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
"isarray": "~1.0.0",
"process-nextick-args": "~2.0.0",
"safe-buffer": "~5.1.1",
"string_decoder": "~1.1.1",
"util-deprecate": "~1.0.1"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"bundled": true
}
}
},
"string_decoder": {
"version": "1.1.1",
"bundled": true,
"requires": {
"safe-buffer": "~5.1.0"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"bundled": true
}
}
}
}
},
@@ -1598,14 +1538,12 @@
"bundled": true
},
"call-bind": {
"version": "1.0.7",
"version": "1.0.5",
"bundled": true,
"requires": {
"es-define-property": "^1.0.0",
"es-errors": "^1.3.0",
"function-bind": "^1.1.2",
"get-intrinsic": "^1.2.4",
"set-function-length": "^1.2.1"
"get-intrinsic": "^1.2.1",
"set-function-length": "^1.1.1"
}
},
"cipher-base": {
@@ -1624,10 +1562,6 @@
"version": "1.0.0",
"bundled": true
},
"core-util-is": {
"version": "1.0.3",
"bundled": true
},
"create-ecdh": {
"version": "4.0.4",
"bundled": true,
@@ -1665,13 +1599,30 @@
"sha.js": "^2.4.8"
}
},
"define-data-property": {
"version": "1.1.4",
"crypto-browserify": {
"version": "3.12.0",
"bundled": true,
"requires": {
"es-define-property": "^1.0.0",
"es-errors": "^1.3.0",
"gopd": "^1.0.1"
"browserify-cipher": "^1.0.0",
"browserify-sign": "^4.0.0",
"create-ecdh": "^4.0.0",
"create-hash": "^1.1.0",
"create-hmac": "^1.1.0",
"diffie-hellman": "^5.0.0",
"inherits": "^2.0.1",
"pbkdf2": "^3.0.3",
"public-encrypt": "^4.0.0",
"randombytes": "^2.0.0",
"randomfill": "^1.0.3"
}
},
"define-data-property": {
"version": "1.1.1",
"bundled": true,
"requires": {
"get-intrinsic": "^1.2.1",
"gopd": "^1.0.1",
"has-property-descriptors": "^1.0.0"
}
},
"define-properties": {
@@ -1711,7 +1662,7 @@
"bundled": true
},
"elliptic": {
"version": "6.6.0",
"version": "6.6.1",
"bundled": true,
"requires": {
"bn.js": "^4.11.9",
@@ -1724,22 +1675,11 @@
},
"dependencies": {
"bn.js": {
"version": "4.12.0",
"version": "4.12.1",
"bundled": true
}
}
},
"es-define-property": {
"version": "1.0.0",
"bundled": true,
"requires": {
"get-intrinsic": "^1.2.4"
}
},
"es-errors": {
"version": "1.3.0",
"bundled": true
},
"events": {
"version": "3.3.0",
"bundled": true
@@ -1764,10 +1704,9 @@
"bundled": true
},
"get-intrinsic": {
"version": "1.2.4",
"version": "1.2.2",
"bundled": true,
"requires": {
"es-errors": "^1.3.0",
"function-bind": "^1.1.2",
"has-proto": "^1.0.1",
"has-symbols": "^1.0.3",
@@ -1782,10 +1721,10 @@
}
},
"has-property-descriptors": {
"version": "1.0.2",
"version": "1.0.1",
"bundled": true,
"requires": {
"es-define-property": "^1.0.0"
"get-intrinsic": "^1.2.2"
}
},
"has-proto": {
@@ -1882,10 +1821,6 @@
"which-typed-array": "^1.1.11"
}
},
"isarray": {
"version": "1.0.0",
"bundled": true
},
"md5.js": {
"version": "1.3.5",
"bundled": true,
@@ -1918,7 +1853,7 @@
"bundled": true
},
"object-inspect": {
"version": "1.13.2",
"version": "1.13.1",
"bundled": true
},
"object-is": {
@@ -1952,25 +1887,14 @@
"bundled": true
},
"parse-asn1": {
"version": "5.1.7",
"version": "5.1.6",
"bundled": true,
"requires": {
"asn1.js": "^4.10.1",
"browserify-aes": "^1.2.0",
"evp_bytestokey": "^1.0.3",
"hash-base": "~3.0",
"pbkdf2": "^3.1.2",
"safe-buffer": "^5.2.1"
},
"dependencies": {
"hash-base": {
"version": "3.0.4",
"bundled": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
}
}
"asn1.js": "^5.2.0",
"browserify-aes": "^1.0.0",
"evp_bytestokey": "^1.0.0",
"pbkdf2": "^3.0.3",
"safe-buffer": "^5.1.1"
}
},
"path-browserify": {
@@ -1992,10 +1916,6 @@
"version": "0.11.10",
"bundled": true
},
"process-nextick-args": {
"version": "2.0.1",
"bundled": true
},
"public-encrypt": {
"version": "4.0.3",
"bundled": true,
@@ -2019,10 +1939,10 @@
"bundled": true
},
"qs": {
"version": "6.13.0",
"version": "6.11.2",
"bundled": true,
"requires": {
"side-channel": "^1.0.6"
"side-channel": "^1.0.4"
}
},
"querystring-es3": {
@@ -2065,16 +1985,18 @@
"version": "5.2.1",
"bundled": true
},
"safer-buffer": {
"version": "2.1.2",
"bundled": true
},
"set-function-length": {
"version": "1.2.2",
"version": "1.1.1",
"bundled": true,
"requires": {
"define-data-property": "^1.1.4",
"es-errors": "^1.3.0",
"function-bind": "^1.1.2",
"get-intrinsic": "^1.2.4",
"define-data-property": "^1.1.1",
"get-intrinsic": "^1.2.1",
"gopd": "^1.0.1",
"has-property-descriptors": "^1.0.2"
"has-property-descriptors": "^1.0.0"
}
},
"setimmediate": {
@@ -2090,13 +2012,12 @@
}
},
"side-channel": {
"version": "1.0.6",
"version": "1.0.4",
"bundled": true,
"requires": {
"call-bind": "^1.0.7",
"es-errors": "^1.3.0",
"get-intrinsic": "^1.2.4",
"object-inspect": "^1.13.1"
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
}
},
"stream-browserify": {
@@ -2136,11 +2057,11 @@
"bundled": true
},
"url": {
"version": "0.11.4",
"version": "0.11.3",
"bundled": true,
"requires": {
"punycode": "^1.4.1",
"qs": "^6.12.3"
"qs": "^6.11.2"
}
},
"util": {
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v7.80.0",
"version": "v7.82.0",
"description": "Open-Source kanban",
"private": true,
"repository": {
@@ -28,7 +28,7 @@
"ajv": "^6.12.6",
"bcryptjs": "^2.4.3",
"bson": "^4.5.2",
"dompurify": "^2.5.6",
"dompurify": "^3.2.4",
"es6-promise": "^4.2.4",
"escape-string-regexp": "^5.0.0",
"fibers": "^5.0.3",
@@ -44,7 +44,7 @@
"markdown-it-emoji": "^2.0.0",
"markdown-it-mathjax3": "^4.3.2",
"meteor-accounts-t9n": "^2.6.0",
"meteor-node-stubs": "^1.2.12",
"meteor-node-stubs": "https://github.com/wekan/meteor-node-stubs.git",
"minio": "^7.1.3",
"moment": "^2.29.4",
"os": "^0.1.2",
+3 -3
View File
@@ -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 v7.80</title>
<title>Wekan REST API v7.82</title>
<style>
</style>
@@ -1549,7 +1549,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 v7.80">Wekan REST API v7.80</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v7.82">Wekan REST API v7.82</a>
</li>
@@ -2068,7 +2068,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 v7.80</h1>
<h1 id="wekan-rest-api">Wekan REST API v7.82</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: v7.80
version: v7.82
description: |
The REST API allows you to control and extend Wekan with ease.
+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 = 780,
appVersion = 782,
# Increment this for every release.
appMarketingVersion = (defaultText = "7.80.0~2025-01-12"),
appMarketingVersion = (defaultText = "7.82.0~2025-02-24"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+5 -5
View File
@@ -1,5 +1,5 @@
name: wekan
version: '7.80'
version: '7.82'
base: core20
summary: Open Source kanban
description: |
@@ -65,7 +65,7 @@ apps:
parts:
mongodb:
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.19.tgz
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.20.tgz
plugin: dump
stage-packages:
- libssl1.1
@@ -170,9 +170,9 @@ parts:
# Cleanup
mkdir .build
cd .build
wget https://github.com/wekan/wekan/releases/download/v7.80/wekan-7.80-amd64.zip
unzip wekan-7.80-amd64.zip
rm wekan-7.80-amd64.zip
wget https://github.com/wekan/wekan/releases/download/v7.82/wekan-7.82-amd64.zip
unzip wekan-7.82-amd64.zip
rm wekan-7.82-amd64.zip
cd ..
##cd .build/bundle
##find . -type d -name '*-garbage*' | xargs rm -rf
+3
View File
@@ -459,6 +459,9 @@ REM # example : LDAP_BACKGROUND_SYNC=true
REM SET LDAP_BACKGROUND_SYNC=false
REM # LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
REM # The format must be as specified in:
REM # https://bunkat.github.io/later/parsers.html#text
REM SET LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
REM # At which interval does the background task sync in milliseconds.
REM # Leave this unset, so it uses default, and does not crash.
REM # https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
+3
View File
@@ -385,6 +385,9 @@
#export LDAP_BACKGROUND_SYNC=false
#
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# The format must be as specified in:
# https://bunkat.github.io/later/parsers.html#text
#export LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
# At which interval does the background task sync in milliseconds.
# Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722