Wekan REST API v3.08
+Wekan REST API v3.11
diff --git a/public/api/wekan.yml b/public/api/wekan.yml index 1d27439e0..539b0f61e 100644 --- a/public/api/wekan.yml +++ b/public/api/wekan.yml @@ -1,7 +1,7 @@ swagger: '2.0' info: title: Wekan REST API - version: v3.08 + version: v3.11 description: | The REST API allows you to control and extend Wekan with ease. diff --git a/releases/release-bundle.sh b/releases/release-bundle.sh index 0d38c1acd..b309ee829 100755 --- a/releases/release-bundle.sh +++ b/releases/release-bundle.sh @@ -1,6 +1,6 @@ cd ~/repos/wekan ./releases/rebuild-release.sh -./releases/delete-phantomjs.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/ diff --git a/releases/release-sandstorm.sh b/releases/release-sandstorm.sh index 03ca199ca..8b5efb8a4 100755 --- a/releases/release-sandstorm.sh +++ b/releases/release-sandstorm.sh @@ -1,12 +1,12 @@ # Usage: ./release.sh 1.36 # Delete old stuff -cd ~/repos/wekan -./releases/release-cleanup.sh +#cd ~/repos/wekan +#./releases/release-cleanup.sh # Build Source -cd ~/repos/wekan -./releases/rebuild-release.sh +#cd ~/repos/wekan +#./releases/rebuild-release.sh # Build Sandstorm cd ~/repos/wekan @@ -16,6 +16,6 @@ scp wekan-$1.spk x2:/var/snap/wekan/common/releases.wekan.team/ mv wekan-$1.spk .. # Delete old stuff -cd ~/repos/wekan -./releases/release-cleanup.sh +#cd ~/repos/wekan +#./releases/release-cleanup.sh diff --git a/releases/release.sh b/releases/release.sh index 3206b7f18..72acc8605 100755 --- a/releases/release.sh +++ b/releases/release.sh @@ -1,7 +1,10 @@ # Usage: ./release.sh 1.36 +# Build Bundle +~/repos/wekan/releases/release-bundle.sh $1 + # Build Sandstorm -./release-sandstorm.sh $1 +~/repos/wekan/release-sandstorm.sh $1 # Build Snap -./release-snap.sh $1 +#./release-snap.sh $1 diff --git a/sandstorm-pkgdef.capnp b/sandstorm-pkgdef.capnp index 5611be509..e13b6e845 100644 --- a/sandstorm-pkgdef.capnp +++ b/sandstorm-pkgdef.capnp @@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = ( appTitle = (defaultText = "Wekan"), # The name of the app as it is displayed to the user. - appVersion = 310, + appVersion = 317, # Increment this for every release. - appMarketingVersion = (defaultText = "3.08.0~2019-08-07"), + appMarketingVersion = (defaultText = "3.15.0~2019-08-11"), # Human-readable presentation of the app version. minUpgradableAppVersion = 0, diff --git a/server/richer-editor-setting-helper.js b/server/richer-editor-setting-helper.js new file mode 100644 index 000000000..967d034e9 --- /dev/null +++ b/server/richer-editor-setting-helper.js @@ -0,0 +1,6 @@ +Meteor.startup(() => { + const RCCE = process.env.RICHER_CARD_COMMENT_EDITOR; + if (RCCE) { + Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR = RCCE !== 'false'; + } +}); diff --git a/snap-src/bin/config b/snap-src/bin/config index fe2860dbb..f71492cf6 100755 --- a/snap-src/bin/config +++ b/snap-src/bin/config @@ -3,7 +3,7 @@ # All supported keys are defined here together with descriptions and default values # list of supported keys -keys="DEBUG MONGO_URL MONGODB_BIND_UNIX_SOCKET MONGO_URL MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API RICHER_CARD_COMMENT_EDITOR ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURES_BEFORE ACCOUNTS_LOCKOUT_KNOWN_USERS_PERIOD ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURE_WINDOW ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURES_BERORE ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW MAX_IMAGE_PIXEL IMAGE_COMPRESS_RATIO BIGEVENTS_PATTERN NOTIFY_DUE_DAYS_BEFORE_AND_AFTER NOTIFY_DUE_AT_HOUR_OF_DAY EMAIL_NOTIFICATION_TIMEOUT CORS CORS_ALLOW_HEADERS CORS_EXPOSE_HEADERS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_LOGIN_STYLE OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT OAUTH2_ID_MAP OAUTH2_USERNAME_MAP OAUTH2_FULLNAME_MAP OAUTH2_ID_TOKEN_WHITELIST_FIELDS OAUTH2_EMAIL_MAP OAUTH2_REQUEST_PERMISSIONS LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_AUTHENTICATION LDAP_USER_AUTHENTICATION_FIELD LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LDAP_EMAIL_MATCH_ENABLE LDAP_EMAIL_MATCH_REQUIRE LDAP_EMAIL_MATCH_VERIFIED LDAP_EMAIL_FIELD LDAP_SYNC_ADMIN_STATUS LDAP_SYNC_ADMIN_GROUPS HEADER_LOGIN_ID HEADER_LOGIN_FIRSTNAME HEADER_LOGIN_LASTNAME HEADER_LOGIN_EMAIL LOGOUT_WITH_TIMER LOGOUT_IN LOGOUT_ON_HOURS LOGOUT_ON_MINUTES DEFAULT_AUTHENTICATION_METHOD" +keys="DEBUG MONGO_URL MONGODB_BIND_UNIX_SOCKET MONGO_URL MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API RICHER_CARD_COMMENT_EDITOR ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURES_BEFORE ACCOUNTS_LOCKOUT_KNOWN_USERS_PERIOD ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURE_WINDOW ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURES_BERORE ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW MAX_IMAGE_PIXEL IMAGE_COMPRESS_RATIO BIGEVENTS_PATTERN NOTIFY_DUE_DAYS_BEFORE_AND_AFTER NOTIFY_DUE_AT_HOUR_OF_DAY EMAIL_NOTIFICATION_TIMEOUT CORS CORS_ALLOW_HEADERS CORS_EXPOSE_HEADERS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_LOGIN_STYLE OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT OAUTH2_ID_MAP OAUTH2_USERNAME_MAP OAUTH2_FULLNAME_MAP OAUTH2_ID_TOKEN_WHITELIST_FIELDS OAUTH2_EMAIL_MAP OAUTH2_REQUEST_PERMISSIONS LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_AUTHENTICATION LDAP_USER_AUTHENTICATION_FIELD LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LDAP_EMAIL_MATCH_ENABLE LDAP_EMAIL_MATCH_REQUIRE LDAP_EMAIL_MATCH_VERIFIED LDAP_EMAIL_FIELD LDAP_SYNC_ADMIN_STATUS LDAP_SYNC_ADMIN_GROUPS HEADER_LOGIN_ID HEADER_LOGIN_FIRSTNAME HEADER_LOGIN_LASTNAME HEADER_LOGIN_EMAIL LOGOUT_WITH_TIMER LOGOUT_IN LOGOUT_ON_HOURS LOGOUT_ON_MINUTES DEFAULT_AUTHENTICATION_METHOD ATTACHMENTS_STORE_PATH" # default values DESCRIPTION_DEBUG="Debug OIDC OAuth2 etc. Example: sudo snap set wekan debug='true'" @@ -88,6 +88,10 @@ DESCRIPTION_ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW="Accounts lockout unkn DEFAULT_ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW="15" KEY_ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW="accounts-lockout-unknown-users-failure-window" +DESCRIPTION_ATTACHMENTS_STORE_PATH="Allow wekan ower to specify where uploaded files to store on the server instead of the mongodb" +DEFAULT_ATTACHMENTS_STORE_PATH="" +KEY_ATTACHMENTS_STORE_PATH="attachments-store-path" + DESCRIPTION_MAX_IMAGE_PIXEL="Max image pixel: Allow to shrink attached/pasted image https://github.com/wekan/wekan/pull/2544" DEFAULT_MAX_IMAGE_PIXEL="" KEY_MAX_IMAGE_PIXEL="max-image-pixel" diff --git a/snap-src/bin/wekan-help b/snap-src/bin/wekan-help index c662bf7eb..479aefdf3 100755 --- a/snap-src/bin/wekan-help +++ b/snap-src/bin/wekan-help @@ -81,6 +81,12 @@ echo -e "\t$ snap set $SNAP_NAME image-compress-ratio='80'" echo -e "Disabled:" echo -e "\t$ snap set $SNAP_NAME image-compress-ratio=''" echo -e "\n" +echo -e "Allow to set attachment upload into specified server location. Create that directory first. https://github.com/wekan/wekan/pull/2603" +echo -e "Example:" +echo -e "\t$ snap set $SNAP_NAME attachments-store-path='/var/snap/wekan/common/attachments'" +echo -e "Disabled:" +echo -e "\t$ snap set $SNAP_NAME attachments-store-path=''" +echo -e "\n" echo -e "BIGEVENTS DUE ETC NOTIFICATIONS https://github.com/wekan/wekan/pull/2541" echo -e "Big events pattern: Notify always due etc regardless of notification settings. Default: due, All: received|start|due|end, Disabled: NONE" echo -e "Default:" diff --git a/snapcraft.yaml b/snapcraft.yaml index 7347800dd..ebb21b7cf 100644 --- a/snapcraft.yaml +++ b/snapcraft.yaml @@ -104,11 +104,11 @@ parts: rm -rf ~/.meteor ~/.npm /usr/local/lib/node_modules # Delete meteor 1.8.x dependencies and # move Snap's working meteor 1.6.0.1 dependencies to be used at Wekan Snap - rm -rf .meteor - mv .meteor-1.6-snap/.meteor . - mv .meteor-1.6-snap/package.json . - mv .meteor-1.6-snap/package-lock.json . - mv .meteor-1.6-snap/rebuild-wekan.sh . + #rm -rf .meteor + #mv .meteor-1.6-snap/.meteor . + #mv .meteor-1.6-snap/package.json . + #mv .meteor-1.6-snap/package-lock.json . + #mv .meteor-1.6-snap/rebuild-wekan.sh . rm -rf .meteor-1.6-snap # Create the OpenAPI specification rm -rf .build @@ -201,6 +201,7 @@ parts: rm -rf package-lock.json .build meteor add standard-minifier-js --allow-superuser meteor npm install --allow-superuser + meteor npm install --allow-superuser --save babel-runtime 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. @@ -214,15 +215,20 @@ parts: # Change to directory .build/bundle/programs/server cd .build/bundle/programs/server npm install + npm install --allow-superuser --save babel-runtime #meteor npm install --save bcrypt # Change back to Wekan source directory cd ../../../.. cp -r .build/bundle/* $SNAPCRAFT_PART_INSTALL/ cp .build/bundle/.node_version.txt $SNAPCRAFT_PART_INSTALL/ - rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/wekan - rm $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs - rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp - rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp + 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/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 + organize: README: README.wekan prime: diff --git a/stacksmith/user-scripts/build.sh b/stacksmith/user-scripts/build.sh index c0ebf185d..2250f9bd6 100755 --- a/stacksmith/user-scripts/build.sh +++ b/stacksmith/user-scripts/build.sh @@ -80,7 +80,7 @@ cd /home/wekan/app_build/bundle/programs/server/ sudo npm install sudo chown -R wekan:wekan ./node_modules -cd /home/wekan/app_build/bundle -find . -name "*phantomjs*" | sudo xargs rm -rf +#cd /home/wekan/app_build/bundle +#find . -name "*phantomjs*" | sudo xargs rm -rf sudo mv /home/wekan/app_build/bundle /buildScroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.