diff --git a/.circleci/setartname.sh b/.circleci/setartname.sh index e61fd52f1a41..acfdb3e032e6 100644 --- a/.circleci/setartname.sh +++ b/.circleci/setartname.sh @@ -15,7 +15,7 @@ elif [[ $CIRCLE_TAG =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then else SNAP_CHANNEL=edge RC_RELEASE=develop - RC_VERSION=0.66.0-develop + RC_VERSION="$(npm run version --silent)" fi export SNAP_CHANNEL diff --git a/.circleci/snap.sh b/.circleci/snap.sh index 38850daa1938..190358750bae 100644 --- a/.circleci/snap.sh +++ b/.circleci/snap.sh @@ -16,12 +16,12 @@ echo -e "Tag: $CIRCLE_TAG\r\nBranch: $CIRCLE_BRANCH\r\nBuild: $CIRCLE_BUILD_NUM\ git clone -b $SNAP_CHANNEL git+ssh://rocket.chat.buildmaster@git.launchpad.net/rocket.chat launchpad # Rarely will change, but just incase we copy it all -cp -r resources buildinfo launchpad/ -sed s/#{RC_VERSION}/$RC_VERSION/ snapcraft.yaml > launchpad/snapcraft.yaml +cp -r resources buildinfo snap launchpad/ +sed s/#{RC_VERSION}/$RC_VERSION/ snap/snapcraft.yaml > launchpad/snap/snapcraft.yaml sed s/#{RC_VERSION}/$RC_VERSION/ resources/prepareRocketChat > launchpad/resources/prepareRocketChat cd launchpad -git add resources snapcraft.yaml buildinfo +git add resources snap buildinfo # Set commit author details git config user.email "buildmaster@rocket.chat" diff --git a/.circleci/update-releases.sh b/.circleci/update-releases.sh index 4e133c304fed..3d831115b441 100644 --- a/.circleci/update-releases.sh +++ b/.circleci/update-releases.sh @@ -5,3 +5,6 @@ IFS=$'\n\t' curl -X POST \ -H "X-Update-Token: ${UPDATE_TOKEN}" \ https://releases.rocket.chat/update + +# Makes build fail if the release isn't there +curl --fail https://releases.rocket.chat/$RC_VERSION/info diff --git a/.docker/Dockerfile.rhel b/.docker/Dockerfile.rhel index 84af85903b92..07ae78cd2ba6 100644 --- a/.docker/Dockerfile.rhel +++ b/.docker/Dockerfile.rhel @@ -1,6 +1,6 @@ FROM registry.access.redhat.com/rhscl/nodejs-8-rhel7 -ENV RC_VERSION 0.72.0-develop +ENV RC_VERSION 0.73.0-develop MAINTAINER buildmaster@rocket.chat diff --git a/.eslintignore b/.eslintignore index 4aaa092258b2..a557dee6c2f5 100644 --- a/.eslintignore +++ b/.eslintignore @@ -10,7 +10,6 @@ packages/rocketchat-livechat/.app/.meteor packages/rocketchat-livechat/assets/rocketchat-livechat.min.js packages/rocketchat-livechat/assets/rocket-livechat.js packages/rocketchat_theme/client/minicolors/jquery.minicolors.js -packages/rocketchat_theme/client/minicolors/jquery.minicolors.js packages/rocketchat_theme/client/vendor/ packages/rocketchat-ui/client/lib/customEventPolyfill.js packages/rocketchat-ui/client/lib/Modernizr.js diff --git a/.eslintrc b/.eslintrc index 427e6d39adff..5b79d7417304 100644 --- a/.eslintrc +++ b/.eslintrc @@ -2,45 +2,61 @@ "extends": ["@rocket.chat/eslint-config"], "parser": "babel-eslint", "globals": { + "__meteor_bootstrap__" : false, "__meteor_runtime_config__" : false, "AccountBox" : false, - "AgentUsers" : false, + "alerts" : false, "Apps" : false, "Assets" : false, - "browser" : false, + "AudioRecorder" : false, + "CachedChatSubscription" : false, "ChatMessage" : false, "ChatMessages" : false, + "chatMessages" : false, "ChatRoom" : false, "ChatSubscription" : false, - "Department" : false, + "chrome" : false, + "cordova" : false, + "device" : false, + "DynamicCss" : false, + "facebookConnectPlugin" : false, "FileUpload" : false, - "getNextAgent" : false, + "fileUpload" : false, + "fileUploadHandler" : false, + "fireGlobalEvent" : false, "handleError" : false, "getAvatarUrlFromUsername" : false, - "LivechatCustomField" : false, - "LivechatDepartment" : false, - "LivechatDepartmentAgents" : false, - "livechatManagerRoutes" : true, - "LivechatMonitoring" : false, - "LivechatPageVisited" : false, - "LivechatTrigger" : false, - "Logger" : false, + "getAvatarSuggestionForUser" : false, + "globals" : true, + "JitsiMeetExternalAPI" : false, + "jscolor" : false, + "KonchatNotification" : false, + "language_names" : true, + "msgStream" : false, + "MsgTyping" : false, "modal" : false, + "Modernizr" : false, + "menu" : false, "Npm" : false, + "openRoom" : false, + "OnePassword" : false, "Package" : false, - "parentCall" : false, + "popout" : false, + "popover" : false, + "readMessage" : false, "RocketChat" : true, + "roomExit" : true, "RoomHistoryManager" : false, "RoomManager" : false, - "ServiceConfiguration" : false, + "RoomRoles" : false, + "Servers" : false, "Settings" : false, "SideNav" : false, - "t" : false, - "TimeSync" : false, - "toastr" : false, - "Trigger" : false, - "Triggers" : false, - "visitor" : false, + "TAPi18next" : false, + "toolbarSearch" : false, + "TwitterConnect" : false, + "updateAvatarOfUsername" : false, + "UserRoles" : false, "VideoRecorder" : false, "VRecDialog" : false } diff --git a/.github/changelog.js b/.github/changelog.js deleted file mode 100644 index 438d194d23ab..000000000000 --- a/.github/changelog.js +++ /dev/null @@ -1,116 +0,0 @@ -/* eslint no-var: 0, object-shorthand: 0, prefer-template: 0 */ - -'use strict'; -var readFile = require('fs').readFileSync; -var resolve = require('path').resolve; -var gitUrl = 'https://github.com/RocketChat/Rocket.Chat'; - -var parserOpts = { - headerPattern: /^(\[([A-z]+)\] )?(.*)$/m, - headerCorrespondence: [ - 'stype', - 'type', - 'subject' - ], - mergePattern: /^Merge pull request #(.*) from .*$/, - mergeCorrespondence: ['pr'] - // noteKeywords: ['BREAKING CHANGE', 'BREAKING CHANGES'], - // revertPattern: /^revert:\s([\s\S]*?)\s*This reverts commit (\w*)\./, - // revertCorrespondence: ['header', 'hash'], - // mergePattern: /^Merge pull request #(\d+) from (.*)$/, - // mergeCorrespondence: ['id', 'source'] -}; - -var LABELS = { - BREAK: { - title: 'BREAKING CHANGES', - collapse: false - }, - NEW: { - title: 'New Features', - collapse: false - }, - FIX: { - title: 'Bug Fixes', - collapse: false - }, - DOC: { - title: 'Documentation', - collapse: true - }, - OTHER: { - title: 'Others', - collapse: true - } -}; - -var sort = Object.keys(LABELS); - -var writerOpts = { - transform: function(commit) { - if (!commit.pr) { - return; - } - - // console.log(commit); - commit.type = (commit.type || 'OTHER').toUpperCase(); - if (LABELS[commit.type] == null) { - return; - } - - commit.pr_url = gitUrl + '/pull/' + commit.pr; - - var issues = []; - - if (typeof commit.hash === 'string') { - commit.hash = commit.hash.substring(0, 7); - } - - if (typeof commit.subject === 'string') { - // GitHub issue URLs. - commit.subject = commit.subject.replace(/#([0-9]+)/g, function(_, issue) { - issues.push(issue); - return '[#' + issue + '](' + gitUrl + '/issues/' + issue + ')'; - }); - // GitHub user URLs. - commit.subject = commit.subject.replace(/@([a-zA-Z0-9_]+)/g, '[@$1](https://github.com/$1)'); - } - - // remove references that already appear in the subject - commit.references = commit.references.filter(function(reference) { - if (issues.indexOf(reference.issue) === -1) { - return true; - } - - return false; - }); - - return commit; - }, - groupBy: 'type', - commitGroupsSort: function(a, b) { - return sort.indexOf(a.title) > sort.indexOf(b.title); - }, - finalizeContext: function(context) { - context.commitGroups.forEach(function(group) { - Object.assign(group, LABELS[group.title.toUpperCase()]); - }); - - // console.log(context); - return context; - }, - commitsSort: ['subject'] -}; - -writerOpts.mainTemplate = readFile(resolve(__dirname, 'templates/template.hbs'), 'utf-8'); -writerOpts.headerPartial = readFile(resolve(__dirname, 'templates/header.hbs'), 'utf-8'); -writerOpts.commitPartial = readFile(resolve(__dirname, 'templates/commit.hbs'), 'utf-8'); -writerOpts.footerPartial = readFile(resolve(__dirname, 'templates/footer.hbs'), 'utf-8'); - -module.exports = { - gitRawCommitsOpts: { - merges: null - }, - parserOpts: parserOpts, - writerOpts: writerOpts -}; diff --git a/.github/history-manual.json b/.github/history-manual.json index 0c7ee9199a54..d3783a7b48e2 100644 --- a/.github/history-manual.json +++ b/.github/history-manual.json @@ -12,7 +12,7 @@ "userLogin": "rodrigok", "contributors": [] }], - "0.72.0": [{ + "0.72.0-rc.0": [{ "title": "[BREAK] Support for Cordova (Rocket.Chat Legacy app) has reached End-of-life, support has been discontinued", "userLogin": "sampaiodiego", "contributors": [] diff --git a/.github/history.json b/.github/history.json index 516833eb61c0..94af4750486c 100644 --- a/.github/history.json +++ b/.github/history.json @@ -20365,6 +20365,1279 @@ ] } ] + }, + "0.71.1": { + "node_version": "8.11.3", + "npm_version": "5.6.0", + "pull_requests": [ + { + "pr": "12499", + "title": "Release 0.71.1", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12487", + "title": "[FIX] Email sending with GDPR user data", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + } + ] + }, + "0.72.0-rc.0": { + "pull_requests": [ + { + "pr": "12684", + "title": "LingoHub based on develop", + "userLogin": "engelgabriel", + "milestone": "0.72.0", + "contributors": [ + "rodrigok" + ] + }, + { + "pr": "12309", + "title": "[NEW] Add permission to enable personal access token to specific roles", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12563", + "title": "[IMPROVE] Improve unreads and unreadsFrom response, prevent it to be equal null", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12483", + "title": "[NEW] Option to reset e2e key", + "userLogin": "Hudell", + "milestone": "0.72.0", + "contributors": [ + "Hudell", + "web-flow", + "engelgabriel" + ] + }, + { + "pr": "12633", + "title": "[FIX] Fixed Anonymous Registration", + "userLogin": "wreiske", + "milestone": "0.72.0", + "contributors": [ + "wreiske", + "web-flow", + "engelgabriel", + "rodrigok" + ] + }, + { + "pr": "12105", + "title": "[IMPROVE] Add rooms property in user object, if the user has the permission, with rooms roles", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12682", + "title": "Convert rocketchat-mail-messages to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12679", + "title": " Convert rocketchat-livestream to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12675", + "title": "[IMPROVE] border-radius to use --border-radius", + "userLogin": "engelgabriel", + "milestone": "0.72.0", + "contributors": [ + "engelgabriel", + "web-flow" + ] + }, + { + "pr": "12677", + "title": "[FIX] high cpu usage ~ svg icon", + "userLogin": "ph1p", + "contributors": [ + null, + "ph1p" + ] + }, + { + "pr": "12374", + "title": "Added \"npm install\" to quick start for developers", + "userLogin": "wreiske", + "milestone": "0.72.0", + "contributors": [ + "wreiske", + "web-flow" + ] + }, + { + "pr": "12651", + "title": "[NEW] /api/v1/spotlight: return joinCodeRequired field for rooms", + "userLogin": "cardoso", + "milestone": "0.72.0", + "contributors": [ + "cardoso", + "web-flow" + ] + }, + { + "pr": "12678", + "title": "Convert rocketchat-ldap to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12674", + "title": "Convert rocketchat-issuelinks to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12670", + "title": "Convert rocketchat-integrations to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12672", + "title": "Convert rocketchat-irc to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12671", + "title": "Convert rocketchat-internal-hubot to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12665", + "title": "Convert rocketchat-importer-hipchat-enterprise to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12669", + "title": "Convert rocketchat-importer-slack-users to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12666", + "title": " Convert rocketchat-importer-slack to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12661", + "title": "Convert rocketchat-iframe-login to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12662", + "title": "Convert rocketchat-importer to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12663", + "title": "Convert rocketchat-importer-csv to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12664", + "title": "Convert rocketchat-importer-hipchat to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12659", + "title": "Convert rocketchat-highlight-words to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12657", + "title": "Convert rocketchat-grant to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12658", + "title": "Convert rocketchat-graphql to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12564", + "title": "[IMPROVE] Update the 'keyboard shortcuts' documentation", + "userLogin": "nicolasbock", + "milestone": "0.72.0", + "contributors": [ + "nicolasbock", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "12643", + "title": "[FIX] Fix favico error", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12649", + "title": "Convert rocketchat-google-vision to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12650", + "title": "Removed RocketChatFile from globals", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12623", + "title": "[NEW] New API Endpoints for the new version of JS SDK", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "engelgabriel", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "12647", + "title": "Added imports for global variables in rocketchat-google-natural-language package", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12646", + "title": "Convert rocketchat-gitlab to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12644", + "title": "Convert rocketchat-file to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12642", + "title": "Convert rocketchat-github-enterprise to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12645", + "title": "Fix: Add email dependency in package.js", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12561", + "title": "[IMPROVE] Add new acceptable header for Livechat REST requests", + "userLogin": "renatobecker", + "milestone": "0.72.0", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "12599", + "title": "Convert rocketchat-custom-sounds to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12641", + "title": "Fix crowd error with import of SyncedCron", + "userLogin": "rodrigok", + "milestone": "0.72.0", + "contributors": [ + "rodrigok" + ] + }, + { + "pr": "12605", + "title": "Convert emoji-emojione to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12607", + "title": "Convert rocketchat-favico to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12604", + "title": " Convert rocketchat-emoji-custom to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12632", + "title": "[FIX] Condition to not render PDF preview", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "12606", + "title": "Convert rocketchat-error-handler to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12601", + "title": "Convert rocketchat-drupal to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12596", + "title": "Convert rocketchat-crowd to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12603", + "title": "Convert rocketchat-emoji to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12625", + "title": "Fix users.setAvatar endpoint tests and logic", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12616", + "title": "[IMPROVE] Atlassian Crowd settings and option to sync user data", + "userLogin": "rodrigok", + "milestone": "0.72.0", + "contributors": [ + null, + "rodrigok", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "12583", + "title": "[DOCS] Remove Cordova links, include F-Droid download button and few other adjustments", + "userLogin": "rafaelks", + "contributors": [ + "rafaelks", + "web-flow" + ] + }, + { + "pr": "12600", + "title": "Convert rocketchat-dolphin to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12594", + "title": " Convert rocketchat-channel-settings to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12595", + "title": "Convert rocketchat-cors to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12618", + "title": "[IMPROVE] CircleCI to use MongoDB 4.0 for testing", + "userLogin": "engelgabriel", + "milestone": "0.72.0", + "contributors": [ + "engelgabriel", + "web-flow" + ] + }, + { + "pr": "12614", + "title": "[FIX] Admin styles", + "userLogin": "engelgabriel", + "milestone": "0.72.0", + "contributors": [ + "engelgabriel" + ] + }, + { + "pr": "12602", + "title": "[FIX] Admin styles", + "userLogin": "engelgabriel", + "milestone": "0.72.0", + "contributors": [ + "engelgabriel" + ] + }, + { + "pr": "9336", + "title": "[FIX] Change registration message when user need to confirm email", + "userLogin": "karlprieb", + "milestone": "0.72.0", + "contributors": [ + "karlprieb", + "tassoevan", + "ggazzo", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "12570", + "title": "[FIX] Import missed file in rocketchat-authorization", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12558", + "title": "[FIX] Prevent subscriptions and calls to rooms events that the user is not participating", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12382", + "title": "[IMPROVE] Japanese translations", + "userLogin": "ura14h", + "contributors": [ + "ura14h", + "web-flow" + ] + }, + { + "pr": "12525", + "title": "[IMPROVE] Add CTRL modifier for keyboard shortcut", + "userLogin": "nicolasbock", + "milestone": "0.72.0", + "contributors": [ + "nicolasbock" + ] + }, + { + "pr": "12530", + "title": "Convert rocketchat-autotranslate to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12537", + "title": "Convert rocketchat-channel-settings-mail-messages to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12538", + "title": "Convert rocketchat-colors to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12532", + "title": "Convert rocketchat-cas to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12531", + "title": "Convert rocketchat-bot-helpers to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12529", + "title": "Convert rocketchat-autolinker to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12523", + "title": "Convert rocketchat-authorization to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12547", + "title": "[NEW] Setting to configure robots.txt content", + "userLogin": "Hudell", + "contributors": [ + "Hudell" + ] + }, + { + "pr": "12539", + "title": "[FIX] Wrong test case for `users.setAvatar` endpoint", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "sampaiodiego" + ] + }, + { + "pr": "12536", + "title": "[FIX] Spotlight method being called multiple times", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12524", + "title": "Fix CSS import order", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12518", + "title": "[FIX] German translation for for API_EmbedIgnoredHosts label", + "userLogin": "mbrodala", + "milestone": "0.72.0", + "contributors": [ + "mbrodala" + ] + }, + { + "pr": "12426", + "title": "Remove template for feature requests as issues", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "12451", + "title": "Fix punctuation, spelling, and grammar", + "userLogin": "imronras", + "milestone": "0.72.0", + "contributors": [ + "imronras", + "web-flow" + ] + }, + { + "pr": "12522", + "title": "[IMPROVE] Ignore non-existent Livechat custom fields on Livechat API", + "userLogin": "renatobecker", + "milestone": "0.72.0", + "contributors": [ + "renatobecker", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12507", + "title": "[FIX] Handle all events for enter key in message box", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12378", + "title": "[NEW] Make Livechat's widget draggable", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12408", + "title": "[FIX] Fix wrong parameter in chat.delete endpoint and add some test cases", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12452", + "title": "[IMPROVE] Emoji search on messageBox behaving like emojiPicker's search (#9607)", + "userLogin": "vinade", + "milestone": "0.72.0", + "contributors": [ + "vinade" + ] + }, + { + "pr": "12521", + "title": "Convert rocketchat-assets to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12510", + "title": "Convert rocketchat-api to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12506", + "title": "Convert rocketchat-analytics to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12503", + "title": "Convert rocketchat-action-links to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12501", + "title": "Convert rocketchat-2fa to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12495", + "title": "Convert meteor-timesync to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12491", + "title": "Convert meteor-autocomplete package to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12486", + "title": "Convert meteor-accounts-saml to main module structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12485", + "title": "Convert chatpal search package to modular structure", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12467", + "title": "Removal of TAPi18n and TAPi18next global variables", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto" + ] + }, + { + "pr": "12433", + "title": "Removal of Template, Blaze, BlazeLayout, FlowRouter, DDPRateLimiter, Session, UAParser, Promise, Reload and CryptoJS global variables", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto", + "web-flow" + ] + }, + { + "pr": "12410", + "title": "Removal of Match, check, moment, Tracker and Mongo global variables", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "MarcosSpessatto", + "web-flow" + ] + }, + { + "pr": "12377", + "title": "Removal of EJSON, Accounts, Email, HTTP, Random, ReactiveDict, ReactiveVar, SHA256 and WebApp global variables", + "userLogin": "rodrigok", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12371", + "title": "Removal of Meteor global variable", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12468", + "title": "[BREAK] Update to Meteor to 1.8", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "12509", + "title": "Fix ES translation", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12487", + "title": "[FIX] Email sending with GDPR user data", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12471", + "title": "[IMPROVE] German translations", + "userLogin": "mrsimpson", + "contributors": [ + "mrsimpson", + "web-flow" + ] + }, + { + "pr": "12470", + "title": "LingoHub based on develop", + "userLogin": "engelgabriel", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "12397", + "title": "[FIX] Manage own integrations permissions check", + "userLogin": "ggazzo", + "milestone": "0.72.0", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "12411", + "title": "[FIX] stream room-changed", + "userLogin": "ggazzo", + "milestone": "0.72.0", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "12457", + "title": "[FIX] Emoji picker is not in viewport on small screens", + "userLogin": "ramrami", + "milestone": "0.72.0", + "contributors": [ + "ramrami" + ] + }, + { + "pr": "12400", + "title": "[IMPROVE] Limit the number of typing users shown (#8722)", + "userLogin": "vinade", + "contributors": [ + "vinade", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "12406", + "title": "[FIX] `Disabled` word translation to Spanish", + "userLogin": "Ismaw34", + "contributors": [ + "Ismaw34", + "web-flow" + ] + }, + { + "pr": "12260", + "title": "[FIX] `Disabled` word translation to Chinese", + "userLogin": "AndreamApp", + "milestone": "0.72.0", + "contributors": [ + "AndreamApp", + "web-flow" + ] + }, + { + "pr": "12465", + "title": "Update npm dependencies", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12440", + "title": "Fix: Developers not being able to debug root files in VSCode", + "userLogin": "mrsimpson", + "contributors": [ + "mrsimpson" + ] + }, + { + "pr": "12453", + "title": "[FIX] Correct roomName value in Mail Messages (#12363)", + "userLogin": "vinade", + "milestone": "0.72.0", + "contributors": [ + "vinade" + ] + }, + { + "pr": "12460", + "title": "Merge master into develop & Set version to 0.72.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "Hudell" + ] + }, + { + "pr": "12499", + "title": "Release 0.71.1", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12487", + "title": "[FIX] Email sending with GDPR user data", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + } + ] + }, + "0.72.0-rc.1": { + "pull_requests": [ + { + "pr": "12712", + "title": "Fix some Ukrainian translations", + "userLogin": "zdumitru", + "milestone": "0.72.0", + "contributors": [ + "zdumitru", + "web-flow" + ] + }, + { + "pr": "12713", + "title": "[FIX] Update caret position on insert a new line in message box", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12714", + "title": "[IMPROVE] Allow apps to update persistence by association", + "userLogin": "marceloschmidt", + "contributors": [ + "marceloschmidt", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12708", + "title": "Improve: Add missing translation keys.", + "userLogin": "ura14h", + "milestone": "0.72.0", + "contributors": [ + "ura14h", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12705", + "title": "Bump Apps Engine to 1.3.0", + "userLogin": "rodrigok", + "milestone": "0.72.0", + "contributors": [ + "rodrigok", + "web-flow" + ] + }, + { + "pr": "12699", + "title": "Fix: Exception when registering a user with gravatar", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto", + "engelgabriel", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "12637", + "title": "[FIX] DE translation for idle-time-limit", + "userLogin": "pfuender", + "milestone": "0.72.0", + "contributors": [ + null, + "engelgabriel", + "web-flow", + "pfuender" + ] + }, + { + "pr": "12707", + "title": "Fix: Fix tests by increasing window size", + "userLogin": "MarcosSpessatto", + "milestone": "0.72.0", + "contributors": [ + "MarcosSpessatto" + ] + }, + { + "pr": "12680", + "title": "[IMPROVE] Add more methods to deal with rooms via Rocket.Chat.Apps", + "userLogin": "marceloschmidt", + "milestone": "0.72.0", + "contributors": [ + "marceloschmidt" + ] + }, + { + "pr": "12692", + "title": "[IMPROVE] Better query for finding subscriptions that need a new E2E Key", + "userLogin": "Hudell", + "milestone": "0.72.0", + "contributors": [ + "Hudell" + ] + } + ] + }, + "0.72.0-rc.2": { + "pull_requests": [ + { + "pr": "12741", + "title": "Update Apps Engine to 1.3.1", + "userLogin": "rodrigok", + "milestone": "0.72.0", + "contributors": [ + "rodrigok" + ] + }, + { + "pr": "12736", + "title": "Regression: Expand Administration sections by toggling section title", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12737", + "title": "Regression: Fix Safari detection in PDF previewing", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12735", + "title": "Regression: Account pages layout", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "12729", + "title": "Regression: Inherit font-family for message box", + "userLogin": "tassoevan", + "milestone": "0.72.0", + "contributors": [ + "tassoevan" + ] + } + ] + }, + "0.72.0": { + "pull_requests": [ + { + "pr": "12499", + "title": "Release 0.71.1", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "12487", + "title": "[FIX] Email sending with GDPR user data", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + } + ] } } } \ No newline at end of file diff --git a/.github/templates/commit.hbs b/.github/templates/commit.hbs deleted file mode 100755 index 1781268b2777..000000000000 --- a/.github/templates/commit.hbs +++ /dev/null @@ -1,40 +0,0 @@ -{{!-- pr reference --}}- {{#if pr}}[#{{pr}}]({{pr_url}}){{/if}} - -{{~!-- subject --}} {{subject}} - -{{~!-- commit references --}} -{{~#if references~}} - , closes - {{~#each references}} {{#if @root.linkReferences~}} - [ - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}}]( - {{~#if @root.repository}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if this.repository}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}} - {{~else}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~/if}} - {{~else}} - {{~@root.repoUrl}} - {{~/if}}/ - {{~@root.issue}}/{{this.issue}}) - {{~else}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}} - {{~/if}}{{/each}} -{{~/if}} - diff --git a/.github/templates/footer.hbs b/.github/templates/footer.hbs deleted file mode 100755 index 2aa774f53674..000000000000 --- a/.github/templates/footer.hbs +++ /dev/null @@ -1,11 +0,0 @@ -{{#if noteGroups}} -{{#each noteGroups}} - -### {{title}} - -{{#each notes}} -* {{#if commit.scope}}**{{commit.scope}}:** {{/if}}{{text}} -{{/each}} -{{/each}} - -{{/if}} diff --git a/.github/templates/header.hbs b/.github/templates/header.hbs deleted file mode 100755 index 313fd6528043..000000000000 --- a/.github/templates/header.hbs +++ /dev/null @@ -1,26 +0,0 @@ - -{{#if isPatch~}} - ## -{{~else~}} - # -{{~/if}} {{#if @root.linkCompare~}} - [{{version}}]( - {{~#if @root.repository~}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~else}} - {{~@root.repoUrl}} - {{~/if~}} - /compare/{{previousTag}}...{{currentTag}}) -{{~else}} - {{~version}} -{{~/if}} -{{~#if title}} "{{title}}" -{{~/if}} -{{~#if date}} ({{date}}) -{{/if}} diff --git a/.github/templates/template.hbs b/.github/templates/template.hbs deleted file mode 100755 index 0705b78e3a3e..000000000000 --- a/.github/templates/template.hbs +++ /dev/null @@ -1,22 +0,0 @@ -{{> header}} - -{{#each commitGroups}} - -{{#if collapse}} -
-{{title}} -{{else}} -### {{title}} -{{/if}} - -{{#each commits}} -{{> commit root=@root}} -{{/each}} -{{#if collapse}} -
-{{/if}} - -{{/each}} -{{> footer}} - - diff --git a/.meteor/packages b/.meteor/packages index 32f6caec5229..b77a8aa4096c 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -16,7 +16,7 @@ check@1.3.1 ddp-rate-limiter@1.0.7 ddp-common@1.4.0 dynamic-import@0.5.0 -ecmascript@0.12.0 +ecmascript@0.12.3 ejson@1.1.0 email@1.2.3 fastclick@1.0.13 @@ -32,7 +32,7 @@ reactive-dict@1.2.1 reactive-var@1.0.11 reload@1.2.0 service-configuration@1.0.11 -session@1.1.8 +session@1.2.0 shell-server@0.4.0 spacebars standard-minifier-js@2.4.0 @@ -82,7 +82,6 @@ rocketchat:importer-hipchat-enterprise rocketchat:importer-slack rocketchat:importer-slack-users rocketchat:integrations -rocketchat:internal-hubot rocketchat:irc rocketchat:issuelinks rocketchat:katex @@ -139,7 +138,6 @@ rocketchat:streamer rocketchat:theme rocketchat:tokenpass rocketchat:tooltip -rocketchat:tutum rocketchat:ui rocketchat:ui-account rocketchat:ui-admin @@ -202,3 +200,4 @@ rocketchat:bigbluebutton rocketchat:mailmessages juliancwirko:postcss littledata:synced-cron +rocketchat:utils \ No newline at end of file diff --git a/.meteor/release b/.meteor/release index e76dedee10d0..2299ae70d955 100644 --- a/.meteor/release +++ b/.meteor/release @@ -1 +1 @@ -METEOR@1.8 +METEOR@1.8.0.1 diff --git a/.meteor/versions b/.meteor/versions index 1117dea6c248..447e1583da9c 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -9,7 +9,7 @@ accounts-twitter@1.4.2 aldeed:simple-schema@1.5.4 allow-deny@1.1.0 autoupdate@1.5.0 -babel-compiler@7.2.1 +babel-compiler@7.2.3 babel-runtime@1.3.0 base64@1.0.11 binary-heap@1.0.11 @@ -17,7 +17,7 @@ blaze@2.3.3 blaze-html-templates@1.1.2 blaze-tools@1.0.10 boilerplate-generator@1.6.0 -caching-compiler@1.2.0 +caching-compiler@1.2.1 caching-html-compiler@1.1.3 callback-hook@1.1.0 cfs:http-methods@0.0.32 @@ -32,10 +32,10 @@ ddp-rate-limiter@1.0.7 ddp-server@2.2.0 deepwell:bootstrap-datepicker2@1.3.0 deps@1.0.12 -diff-sequence@1.1.0 +diff-sequence@1.1.1 dispatch:run-as-user@1.1.1 -dynamic-import@0.5.0 -ecmascript@0.12.1 +dynamic-import@0.5.1 +ecmascript@0.12.3 ecmascript-runtime@0.7.0 ecmascript-runtime-client@0.8.0 ecmascript-runtime-server@0.7.1 @@ -54,7 +54,7 @@ google-oauth@1.2.6 hot-code-push@1.0.4 html-tools@1.0.11 htmljs@1.0.11 -http@1.4.1 +http@1.4.2 id-map@1.1.0 inter-process-messaging@0.1.0 jalik:ufs@0.7.5 @@ -73,7 +73,7 @@ konecty:change-case@2.3.0 konecty:delayed-task@1.0.0 konecty:mongo-counter@0.0.5_3 konecty:multiple-instances-status@1.1.0 -konecty:user-presence@2.2.0 +konecty:user-presence@2.3.0 launch-screen@1.1.1 less@2.8.0 littledata:synced-cron@1.5.1 @@ -88,14 +88,14 @@ meteor-developer-oauth@1.2.1 meteorhacks:inject-initial@1.0.4 meteorhacks:meteorx@1.4.1 meteorspark:util@0.2.0 -minifier-css@1.4.0 +minifier-css@1.4.1 minifier-js@2.4.0 minimongo@1.4.5 mizzao:autocomplete@0.5.1 mizzao:timesync@0.3.4 mobile-experience@1.0.5 mobile-status-bar@1.0.14 -modern-browsers@0.1.2 +modern-browsers@0.1.3 modules@0.13.0 modules-runtime@0.10.3 mongo@1.6.0 @@ -109,8 +109,8 @@ nimble:restivus@0.8.12 nooitaf:colors@1.1.2_1 npm-bcrypt@0.9.3 npm-mongo@3.1.1 -oauth@1.2.5 -oauth1@1.2.1 +oauth@1.2.7 +oauth1@1.2.2 oauth2@1.2.1 observe-sequence@1.0.16 ordered-dict@1.1.0 @@ -177,7 +177,6 @@ rocketchat:importer-hipchat-enterprise@1.0.0 rocketchat:importer-slack@0.0.1 rocketchat:importer-slack-users@1.0.0 rocketchat:integrations@0.0.1 -rocketchat:internal-hubot@0.0.1 rocketchat:irc@0.0.1 rocketchat:issuelinks@0.0.1 rocketchat:katex@0.0.1 @@ -240,7 +239,6 @@ rocketchat:streamer@1.0.1 rocketchat:theme@0.0.1 rocketchat:tokenpass@0.0.1 rocketchat:tooltip@0.0.1 -rocketchat:tutum@0.0.1 rocketchat:ui@0.1.0 rocketchat:ui-account@0.1.0 rocketchat:ui-admin@0.1.0 @@ -252,6 +250,7 @@ rocketchat:ui-message@0.1.0 rocketchat:ui-sidenav@0.1.0 rocketchat:ui-vrecord@0.0.1 rocketchat:user-data-download@1.0.0 +rocketchat:utils@0.0.1 rocketchat:version@1.0.0 rocketchat:version-check@0.0.1 rocketchat:videobridge@0.2.0 @@ -260,7 +259,7 @@ rocketchat:webrtc@0.0.1 rocketchat:wordpress@0.0.1 routepolicy@1.1.0 service-configuration@1.0.11 -session@1.1.8 +session@1.2.0 sha@1.0.9 shell-server@0.4.0 simple:json-routes@2.1.0 @@ -283,7 +282,7 @@ twitter-oauth@1.2.0 ui@1.0.13 underscore@1.0.10 url@1.2.0 -webapp@1.7.0 +webapp@1.7.2 webapp-hashing@1.0.9 yasaricli:slugify@0.0.7 yasinuslu:blaze-meta@0.3.3 diff --git a/.sandstorm/sandstorm-pkgdef.capnp b/.sandstorm/sandstorm-pkgdef.capnp index 36cee0e3e2b7..df5cd046d526 100644 --- a/.sandstorm/sandstorm-pkgdef.capnp +++ b/.sandstorm/sandstorm-pkgdef.capnp @@ -19,9 +19,9 @@ const pkgdef :Spk.PackageDefinition = ( appTitle = (defaultText = "Rocket.Chat"), - appVersion = 112, # Increment this for every release. + appVersion = 117, # Increment this for every release. - appMarketingVersion = (defaultText = "0.72.0-develop"), + appMarketingVersion = (defaultText = "0.73.0-develop"), # Human-readable representation of appVersion. Should match the way you # identify versions of your app in documentation and marketing. diff --git a/.scripts/set-version.js b/.scripts/set-version.js index 5a7f89653fc7..0016f95e8f5a 100644 --- a/.scripts/set-version.js +++ b/.scripts/set-version.js @@ -84,8 +84,6 @@ git.status() .then((data) => writeFile(file, data.replace(pkgJson.version, version))))); }) .then(() => - // execSync('conventional-changelog --config .github/changelog.js -i HISTORY.md -s'); - inquirer.prompt([{ type: 'confirm', message: 'Commit files?', diff --git a/.scripts/version.js b/.scripts/version.js index cd18c6711439..79f523ab48da 100644 --- a/.scripts/version.js +++ b/.scripts/version.js @@ -1,5 +1,3 @@ -/* eslint object-shorthand: 0, prefer-template: 0 */ - const path = require('path'); let pkgJson = {}; diff --git a/.snapcraft/resources/Caddyfile b/.snapcraft/resources/Caddyfile index ce07ab1e2ef9..23299c1d2b7e 100644 --- a/.snapcraft/resources/Caddyfile +++ b/.snapcraft/resources/Caddyfile @@ -1,5 +1,5 @@ -http://:8080 -proxy / localhost:3000 { +_caddy-url_ +proxy / localhost:_port_ { websocket transparent } diff --git a/.snapcraft/resources/initcaddy b/.snapcraft/resources/initcaddy index f52cb80de8a2..b55d20de02b3 100755 --- a/.snapcraft/resources/initcaddy +++ b/.snapcraft/resources/initcaddy @@ -1,3 +1,46 @@ -#!/bin/sh -cp $SNAP/bin/Caddyfile $SNAP_DATA/Caddyfile -echo "Replace $SNAP_DATA/Caddyfile with your own to customize reverse proxy" +#!/bin/bash + +# Config options for Caddyfile +#options="site path port" +options="caddy-url port" + +refresh_opt_in_config() { +# replace an option inside the config file. + opt=$1 + value="$2" + if $(grep -q "_${opt}_" $Caddyfile); then + sed "s,_${opt}_,$value," $Caddyfile 2>/dev/null > ${Caddyfile}.new + mv -f ${Caddyfile}.new $Caddyfile 2>/dev/null + else + echo "Fail to update $opt in Caddyfile" + fi +} + +create_caddyfile(){ +# Copy template to config Caddyfile +cp $SNAP/bin/Caddyfile $SNAP_DATA/Caddyfile +} + +update_caddyfile(){ +# Config file path for Caddyfile +Caddyfile=$SNAP_DATA/Caddyfile + +# Iterate through the config options array +for opt in $options + do + # Use snapctl to get the value registered by the snap set command + refresh_opt_in_config $opt $(snapctl get $opt) +done +} + +caddy="$(snapctl get caddy)" +if [[ $caddy == "disable" ]]; then + echo "Caddy is not enabled, please set caddy-url= and caddy=enable" + exit 1 +fi + +create_caddyfile +update_caddyfile + +echo "Your URL was successfully configured - Please restart rocketchat and caddy services to apply configuration changes" + diff --git a/.snapcraft/resources/startRocketChat b/.snapcraft/resources/startRocketChat index 50d257b4515c..b39e22742a73 100755 --- a/.snapcraft/resources/startRocketChat +++ b/.snapcraft/resources/startRocketChat @@ -16,10 +16,20 @@ function start_rocketchat { export NODE_ENV=production export BABEL_CACHE_DIR=/tmp export ROOT_URL=http://localhost - export PORT=3000 - export MONGO_URL=mongodb://localhost:27017/parties - export MONGO_OPLOG_URL=mongodb://localhost:27017/local + export PORT="$(snapctl get port)" + export MONGO_URL="$(snapctl get mongo-url)" + export MONGO_OPLOG_URL="$(snapctl get mongo-oplog-url)" export Accounts_AvatarStorePath=$SNAP_COMMON/uploads + siteurl="$(snapctl get siteurl)" + if [ -n "$siteurl" ]; then + export OVERWRITE_SETTING_Site_Url=$siteurl + fi + + for filename in $SNAP_COMMON/*.env; do + while read env_var; do + export "$env_var" + done < $filename + done node $SNAP/main.js } diff --git a/.snapcraft/snap/hooks/configure b/.snapcraft/snap/hooks/configure new file mode 100755 index 000000000000..3f2a606e7f11 --- /dev/null +++ b/.snapcraft/snap/hooks/configure @@ -0,0 +1,122 @@ +#!/bin/bash + +export PATH="$SNAP/usr/sbin:$SNAP/usr/bin:$SNAP/sbin:$SNAP/bin:$PATH" +export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SNAP/lib:$SNAP/usr/lib:$SNAP/lib/x86_64-linux-gnu:$SNAP/usr/lib/x86_64-linux-gnu" +export LD_LIBRARY_PATH=$SNAP_LIBRARY_PATH:$LD_LIBRARY_PATH + +# Obtain caddyurl value +caddyurl="$(snapctl get caddy-url)" +# Validate it +#caddyurl_regex='^https?:\/\/([0-9A-Za-z\.-]+){1,}(\.[a-z\.]{2,6})?([\/\da-z\.-]+)?$' #(supporting path) +caddyurl_regex='^https?:\/\/([0-9A-Za-z\.-]+){1,}(\.[a-z\.]{2,6})?$' +if [ -n "$caddyurl" ]; then + if ! [[ $caddyurl =~ $caddyurl_regex ]]; then + echo "\"$caddyurl\" is not a valid url" >&2 + exit 1 + fi +#else +# if [[ $siteurl =~ ^http: ]] && [[ $siteurl =~ ^http:\/\/([0-9A-Za-z\.-]+){1,}?(\.[a-z\.]{2,6})?\/([\/\da-z\.-]+){1,}$ ]]; then +# path=${siteurl#http://*/} +# site=${siteurl#"http://"} +# site=${site%%/*} +# site=http://$site +# elif [[ $siteurl =~ ^https: ]] && [[ $siteurl =~ ^https:\/\/([0-9A-Za-z\.-]+){1,}?(\.[a-z\.]{2,6})?\/([\/\da-z\.-]+){1,}$ ]]; then +# path=${siteurl#https://*/} +# site=${siteurl#"https://"} +# site=${site%%/*} +# site=https://$site +# else +# path="" +# site=$siteurl +# fi +# snapctl set path=$path +# snapctl set site=$site +fi + +# Obtain caddy value +caddy="$(snapctl get caddy)" +# Validate it +caddy_regex='((enable)|(disable))' +if ! [[ $caddy =~ $caddy_regex ]]; then + echo "\"$caddy_regex\" is not a valid, set to enable or disable" >&2 + exit 1 +else + if [[ $caddy == enable ]]; then + caddyurl="$(snapctl get caddy-url)" + if [ -z "$caddyurl" ]; then + echo "You tried to enable caddy but caddy-url is not set yet, please set up caddy-url first and then enable caddy again" >&2 + snapctl set caddy=disable + exit 1 + else + snapctl set siteurl=$caddyurl + fi + else + siteurl="$(snapctl get siteurl)" + if [ -n "$siteurl" ]; then + snapctl set siteurl= + fi + fi +fi + +# Obtain port value +port="$(snapctl get port)" +# Validate it +port_regex='^([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$' +if ! [[ $port =~ $port_regex ]]; then + echo "\"$port\" is not a valid port" >&2 + exit 1 +fi + +# Obtain mongourl value +mongourl="$(snapctl get mongo-url)" +# Validate it +mongourl_regex='^mongodb:\/\/([0-9A-Za-z\.\-\_]+){1,}(([a-z\.\-\_]+){2,6})?(:[0-9]{2,5})?\/([0-9A-Za-z\_\-]+)$' +if ! [[ $mongourl =~ $mongourl_regex ]] ; then + echo "\"$mongourl\" is not a valid url" >&2 + exit 1 +fi + +# Obtain mongooplogurl value +mongooplogurl="$(snapctl get mongo-oplog-url)" +# Validate it +mongooplogurl_regex='^mongodb:\/\/([0-9A-Za-z\.\-\_]+){1,}(([a-z\.\-\_]+){2,6})?(:[0-9]{2,5})?\/local$' +if ! [[ $mongooplogurl =~ $mongooplogurl_regex ]] ; then + echo "\"$mongooplogurl\" is not a valid url" >&2 + exit 1 +fi + +# Obtain site protocol +https="$(snapctl get https)" +# Validate it +https_regex='((enable)|(disable))' +if ! [[ $https =~ $https_regex ]]; then + echo "\"$https\" should be enable or disable" >&2 + exit 1 +else + if [[ $https == enable ]] && [[ $caddyurl =~ ^http: ]]; then + echo "Error: You enabled https but your site URL starts with http, disabling https ..." + snapctl set https=disable + exit 1 + elif [[ $https == enable ]] && [[ $caddyurl =~ ^https: ]]; then + domain=${caddyurl#"https://"} + domain=${domain%%/*} + pubip=$(dig $domain |grep -A1 ";; ANSWER SECTION:" |tail -1 | awk '{print $5}') + if [ -z "$pubip" ]; then + echo "Error: Can't resove DNS query for $domain, check your DNS configuration, disabling https ..." + snapctl set https=disable + exit 1 + else + ip=$(curl ipinfo.io/ip 2>/dev/null) + if [[ $ip != $pubip ]]; then + echo "Error: Your public IP doesn't match the one resolved for caddy-url, disabling https ..." + snapctl set https=disable + exit 1 + fi + fi + elif [[ $https == enable ]] && [ -z "$caddyurl" ]; then + echo "Error: You enabled https but your site URL is empty, please set caddy-url=, disabling https ..." + snapctl set https=disable + exit 1 + fi +fi + diff --git a/.snapcraft/snap/hooks/install b/.snapcraft/snap/hooks/install new file mode 100755 index 000000000000..9a78145595ec --- /dev/null +++ b/.snapcraft/snap/hooks/install @@ -0,0 +1,16 @@ +#!/bin/bash + +# Initialize the CADDY_URL to a default +snapctl set caddy=disable + +# Initialize the PORT to a default +snapctl set port=3000 + +# Initialize the MONGO_URL to a default +snapctl set mongo-url=mongodb://localhost:27017/parties + +# Initialize the MONGO_OPLOG_URL to a default +snapctl set mongo-oplog-url=mongodb://localhost:27017/local + +# Initialize the protocol to a default +snapctl set https=disable diff --git a/.snapcraft/snapcraft.yaml b/.snapcraft/snap/snapcraft.yaml similarity index 90% rename from .snapcraft/snapcraft.yaml rename to .snapcraft/snap/snapcraft.yaml index 50354f7afa7f..ae99be479245 100644 --- a/.snapcraft/snapcraft.yaml +++ b/.snapcraft/snap/snapcraft.yaml @@ -22,7 +22,7 @@ apps: daemon: simple plugs: [network, network-bind] rocketchat-caddy: - command: env LC_ALL=C caddy -conf=$SNAP_DATA/Caddyfile -host=localhost:8080 + command: env LC_ALL=C caddy -conf=$SNAP_DATA/Caddyfile daemon: simple plugs: [network, network-bind] mongo: @@ -36,6 +36,9 @@ apps: plugs: [network] initcaddy: command: env LC_ALL=C initcaddy +hooks: + configure: + plugs: [network] parts: node: plugin: dump @@ -95,3 +98,12 @@ parts: organize: caddy: bin/caddy after: [mongodb] + hooks: + plugin: nil + stage-packages: + - dnsutils + - curl + prime: + - usr + - lib + diff --git a/.travis/snap.sh b/.travis/snap.sh index 85340afd94ea..59ac8dc62fc0 100755 --- a/.travis/snap.sh +++ b/.travis/snap.sh @@ -17,7 +17,7 @@ elif [[ $TRAVIS_TAG ]]; then RC_VERSION=$TRAVIS_TAG else CHANNEL=edge - RC_VERSION=0.72.0-develop + RC_VERSION=0.73.0-develop fi echo "Preparing to trigger a snap release for $CHANNEL channel" diff --git a/HISTORY.md b/HISTORY.md index dc82ffc88323..26a2996f3a71 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,4 +1,202 @@ +# 0.72.0 +`2018-11-27 · 1 ️️️⚠️ · 6 🎉 · 16 🚀 · 22 🐛 · 79 🔍 · 25 👩‍💻👨‍💻` + +### ⚠️ BREAKING CHANGES + +- Update to Meteor to 1.8 ([#12468](https://github.com/RocketChat/Rocket.Chat/pull/12468)) + +### 🎉 New features + +- Add permission to enable personal access token to specific roles ([#12309](https://github.com/RocketChat/Rocket.Chat/pull/12309)) +- Option to reset e2e key ([#12483](https://github.com/RocketChat/Rocket.Chat/pull/12483)) +- /api/v1/spotlight: return joinCodeRequired field for rooms ([#12651](https://github.com/RocketChat/Rocket.Chat/pull/12651)) +- New API Endpoints for the new version of JS SDK ([#12623](https://github.com/RocketChat/Rocket.Chat/pull/12623)) +- Setting to configure robots.txt content ([#12547](https://github.com/RocketChat/Rocket.Chat/pull/12547)) +- Make Livechat's widget draggable ([#12378](https://github.com/RocketChat/Rocket.Chat/pull/12378)) + +### 🚀 Improvements + +- Improve unreads and unreadsFrom response, prevent it to be equal null ([#12563](https://github.com/RocketChat/Rocket.Chat/pull/12563)) +- Add rooms property in user object, if the user has the permission, with rooms roles ([#12105](https://github.com/RocketChat/Rocket.Chat/pull/12105)) +- border-radius to use --border-radius ([#12675](https://github.com/RocketChat/Rocket.Chat/pull/12675)) +- Update the 'keyboard shortcuts' documentation ([#12564](https://github.com/RocketChat/Rocket.Chat/pull/12564) by [@nicolasbock](https://github.com/nicolasbock)) +- Add new acceptable header for Livechat REST requests ([#12561](https://github.com/RocketChat/Rocket.Chat/pull/12561)) +- Atlassian Crowd settings and option to sync user data ([#12616](https://github.com/RocketChat/Rocket.Chat/pull/12616)) +- CircleCI to use MongoDB 4.0 for testing ([#12618](https://github.com/RocketChat/Rocket.Chat/pull/12618)) +- Japanese translations ([#12382](https://github.com/RocketChat/Rocket.Chat/pull/12382) by [@ura14h](https://github.com/ura14h)) +- Add CTRL modifier for keyboard shortcut ([#12525](https://github.com/RocketChat/Rocket.Chat/pull/12525) by [@nicolasbock](https://github.com/nicolasbock)) +- Ignore non-existent Livechat custom fields on Livechat API ([#12522](https://github.com/RocketChat/Rocket.Chat/pull/12522)) +- Emoji search on messageBox behaving like emojiPicker's search (#9607) ([#12452](https://github.com/RocketChat/Rocket.Chat/pull/12452) by [@vinade](https://github.com/vinade)) +- German translations ([#12471](https://github.com/RocketChat/Rocket.Chat/pull/12471)) +- Limit the number of typing users shown (#8722) ([#12400](https://github.com/RocketChat/Rocket.Chat/pull/12400) by [@vinade](https://github.com/vinade)) +- Allow apps to update persistence by association ([#12714](https://github.com/RocketChat/Rocket.Chat/pull/12714)) +- Add more methods to deal with rooms via Rocket.Chat.Apps ([#12680](https://github.com/RocketChat/Rocket.Chat/pull/12680)) +- Better query for finding subscriptions that need a new E2E Key ([#12692](https://github.com/RocketChat/Rocket.Chat/pull/12692)) + +### 🐛 Bug fixes + +- Fixed Anonymous Registration ([#12633](https://github.com/RocketChat/Rocket.Chat/pull/12633) by [@wreiske](https://github.com/wreiske)) +- high cpu usage ~ svg icon ([#12677](https://github.com/RocketChat/Rocket.Chat/pull/12677) by [@ph1p](https://github.com/ph1p)) +- Fix favico error ([#12643](https://github.com/RocketChat/Rocket.Chat/pull/12643)) +- Condition to not render PDF preview ([#12632](https://github.com/RocketChat/Rocket.Chat/pull/12632)) +- Admin styles ([#12614](https://github.com/RocketChat/Rocket.Chat/pull/12614)) +- Admin styles ([#12602](https://github.com/RocketChat/Rocket.Chat/pull/12602)) +- Change registration message when user need to confirm email ([#9336](https://github.com/RocketChat/Rocket.Chat/pull/9336) by [@karlprieb](https://github.com/karlprieb)) +- Import missed file in rocketchat-authorization ([#12570](https://github.com/RocketChat/Rocket.Chat/pull/12570)) +- Prevent subscriptions and calls to rooms events that the user is not participating ([#12558](https://github.com/RocketChat/Rocket.Chat/pull/12558)) +- Wrong test case for `users.setAvatar` endpoint ([#12539](https://github.com/RocketChat/Rocket.Chat/pull/12539)) +- Spotlight method being called multiple times ([#12536](https://github.com/RocketChat/Rocket.Chat/pull/12536)) +- German translation for for API_EmbedIgnoredHosts label ([#12518](https://github.com/RocketChat/Rocket.Chat/pull/12518) by [@mbrodala](https://github.com/mbrodala)) +- Handle all events for enter key in message box ([#12507](https://github.com/RocketChat/Rocket.Chat/pull/12507)) +- Fix wrong parameter in chat.delete endpoint and add some test cases ([#12408](https://github.com/RocketChat/Rocket.Chat/pull/12408)) +- Manage own integrations permissions check ([#12397](https://github.com/RocketChat/Rocket.Chat/pull/12397)) +- stream room-changed ([#12411](https://github.com/RocketChat/Rocket.Chat/pull/12411)) +- Emoji picker is not in viewport on small screens ([#12457](https://github.com/RocketChat/Rocket.Chat/pull/12457) by [@ramrami](https://github.com/ramrami)) +- `Disabled` word translation to Spanish ([#12406](https://github.com/RocketChat/Rocket.Chat/pull/12406) by [@Ismaw34](https://github.com/Ismaw34)) +- `Disabled` word translation to Chinese ([#12260](https://github.com/RocketChat/Rocket.Chat/pull/12260) by [@AndreamApp](https://github.com/AndreamApp)) +- Correct roomName value in Mail Messages (#12363) ([#12453](https://github.com/RocketChat/Rocket.Chat/pull/12453) by [@vinade](https://github.com/vinade)) +- Update caret position on insert a new line in message box ([#12713](https://github.com/RocketChat/Rocket.Chat/pull/12713)) +- DE translation for idle-time-limit ([#12637](https://github.com/RocketChat/Rocket.Chat/pull/12637) by [@pfuender](https://github.com/pfuender)) + +
+🔍 Minor changes + +- LingoHub based on develop ([#12684](https://github.com/RocketChat/Rocket.Chat/pull/12684)) +- Convert rocketchat-mail-messages to main module structure ([#12682](https://github.com/RocketChat/Rocket.Chat/pull/12682)) +- Convert rocketchat-livestream to main module structure ([#12679](https://github.com/RocketChat/Rocket.Chat/pull/12679)) +- Added "npm install" to quick start for developers ([#12374](https://github.com/RocketChat/Rocket.Chat/pull/12374) by [@wreiske](https://github.com/wreiske)) +- Convert rocketchat-ldap to main module structure ([#12678](https://github.com/RocketChat/Rocket.Chat/pull/12678)) +- Convert rocketchat-issuelinks to main module structure ([#12674](https://github.com/RocketChat/Rocket.Chat/pull/12674)) +- Convert rocketchat-integrations to main module structure ([#12670](https://github.com/RocketChat/Rocket.Chat/pull/12670)) +- Convert rocketchat-irc to main module structure ([#12672](https://github.com/RocketChat/Rocket.Chat/pull/12672)) +- Convert rocketchat-internal-hubot to main module structure ([#12671](https://github.com/RocketChat/Rocket.Chat/pull/12671)) +- Convert rocketchat-importer-hipchat-enterprise to main module structure ([#12665](https://github.com/RocketChat/Rocket.Chat/pull/12665)) +- Convert rocketchat-importer-slack-users to main module structure ([#12669](https://github.com/RocketChat/Rocket.Chat/pull/12669)) +- Convert rocketchat-importer-slack to main module structure ([#12666](https://github.com/RocketChat/Rocket.Chat/pull/12666)) +- Convert rocketchat-iframe-login to main module structure ([#12661](https://github.com/RocketChat/Rocket.Chat/pull/12661)) +- Convert rocketchat-importer to main module structure ([#12662](https://github.com/RocketChat/Rocket.Chat/pull/12662)) +- Convert rocketchat-importer-csv to main module structure ([#12663](https://github.com/RocketChat/Rocket.Chat/pull/12663)) +- Convert rocketchat-importer-hipchat to main module structure ([#12664](https://github.com/RocketChat/Rocket.Chat/pull/12664)) +- Convert rocketchat-highlight-words to main module structure ([#12659](https://github.com/RocketChat/Rocket.Chat/pull/12659)) +- Convert rocketchat-grant to main module structure ([#12657](https://github.com/RocketChat/Rocket.Chat/pull/12657)) +- Convert rocketchat-graphql to main module structure ([#12658](https://github.com/RocketChat/Rocket.Chat/pull/12658)) +- Convert rocketchat-google-vision to main module structure ([#12649](https://github.com/RocketChat/Rocket.Chat/pull/12649)) +- Removed RocketChatFile from globals ([#12650](https://github.com/RocketChat/Rocket.Chat/pull/12650)) +- Added imports for global variables in rocketchat-google-natural-language package ([#12647](https://github.com/RocketChat/Rocket.Chat/pull/12647)) +- Convert rocketchat-gitlab to main module structure ([#12646](https://github.com/RocketChat/Rocket.Chat/pull/12646)) +- Convert rocketchat-file to main module structure ([#12644](https://github.com/RocketChat/Rocket.Chat/pull/12644)) +- Convert rocketchat-github-enterprise to main module structure ([#12642](https://github.com/RocketChat/Rocket.Chat/pull/12642)) +- Fix: Add email dependency in package.js ([#12645](https://github.com/RocketChat/Rocket.Chat/pull/12645)) +- Convert rocketchat-custom-sounds to main module structure ([#12599](https://github.com/RocketChat/Rocket.Chat/pull/12599)) +- Fix crowd error with import of SyncedCron ([#12641](https://github.com/RocketChat/Rocket.Chat/pull/12641)) +- Convert emoji-emojione to main module structure ([#12605](https://github.com/RocketChat/Rocket.Chat/pull/12605)) +- Convert rocketchat-favico to main module structure ([#12607](https://github.com/RocketChat/Rocket.Chat/pull/12607)) +- Convert rocketchat-emoji-custom to main module structure ([#12604](https://github.com/RocketChat/Rocket.Chat/pull/12604)) +- Convert rocketchat-error-handler to main module structure ([#12606](https://github.com/RocketChat/Rocket.Chat/pull/12606)) +- Convert rocketchat-drupal to main module structure ([#12601](https://github.com/RocketChat/Rocket.Chat/pull/12601)) +- Convert rocketchat-crowd to main module structure ([#12596](https://github.com/RocketChat/Rocket.Chat/pull/12596)) +- Convert rocketchat-emoji to main module structure ([#12603](https://github.com/RocketChat/Rocket.Chat/pull/12603)) +- Fix users.setAvatar endpoint tests and logic ([#12625](https://github.com/RocketChat/Rocket.Chat/pull/12625)) +- [DOCS] Remove Cordova links, include F-Droid download button and few other adjustments ([#12583](https://github.com/RocketChat/Rocket.Chat/pull/12583)) +- Convert rocketchat-dolphin to main module structure ([#12600](https://github.com/RocketChat/Rocket.Chat/pull/12600)) +- Convert rocketchat-channel-settings to main module structure ([#12594](https://github.com/RocketChat/Rocket.Chat/pull/12594)) +- Convert rocketchat-cors to main module structure ([#12595](https://github.com/RocketChat/Rocket.Chat/pull/12595)) +- Convert rocketchat-autotranslate to main module structure ([#12530](https://github.com/RocketChat/Rocket.Chat/pull/12530)) +- Convert rocketchat-channel-settings-mail-messages to main module structure ([#12537](https://github.com/RocketChat/Rocket.Chat/pull/12537)) +- Convert rocketchat-colors to main module structure ([#12538](https://github.com/RocketChat/Rocket.Chat/pull/12538)) +- Convert rocketchat-cas to main module structure ([#12532](https://github.com/RocketChat/Rocket.Chat/pull/12532)) +- Convert rocketchat-bot-helpers to main module structure ([#12531](https://github.com/RocketChat/Rocket.Chat/pull/12531)) +- Convert rocketchat-autolinker to main module structure ([#12529](https://github.com/RocketChat/Rocket.Chat/pull/12529)) +- Convert rocketchat-authorization to main module structure ([#12523](https://github.com/RocketChat/Rocket.Chat/pull/12523)) +- Fix CSS import order ([#12524](https://github.com/RocketChat/Rocket.Chat/pull/12524)) +- Remove template for feature requests as issues ([#12426](https://github.com/RocketChat/Rocket.Chat/pull/12426)) +- Fix punctuation, spelling, and grammar ([#12451](https://github.com/RocketChat/Rocket.Chat/pull/12451) by [@imronras](https://github.com/imronras)) +- Convert rocketchat-assets to main module structure ([#12521](https://github.com/RocketChat/Rocket.Chat/pull/12521)) +- Convert rocketchat-api to main module structure ([#12510](https://github.com/RocketChat/Rocket.Chat/pull/12510)) +- Convert rocketchat-analytics to main module structure ([#12506](https://github.com/RocketChat/Rocket.Chat/pull/12506)) +- Convert rocketchat-action-links to main module structure ([#12503](https://github.com/RocketChat/Rocket.Chat/pull/12503)) +- Convert rocketchat-2fa to main module structure ([#12501](https://github.com/RocketChat/Rocket.Chat/pull/12501)) +- Convert meteor-timesync to main module structure ([#12495](https://github.com/RocketChat/Rocket.Chat/pull/12495)) +- Convert meteor-autocomplete package to main module structure ([#12491](https://github.com/RocketChat/Rocket.Chat/pull/12491)) +- Convert meteor-accounts-saml to main module structure ([#12486](https://github.com/RocketChat/Rocket.Chat/pull/12486)) +- Convert chatpal search package to modular structure ([#12485](https://github.com/RocketChat/Rocket.Chat/pull/12485)) +- Removal of TAPi18n and TAPi18next global variables ([#12467](https://github.com/RocketChat/Rocket.Chat/pull/12467)) +- Removal of Template, Blaze, BlazeLayout, FlowRouter, DDPRateLimiter, Session, UAParser, Promise, Reload and CryptoJS global variables ([#12433](https://github.com/RocketChat/Rocket.Chat/pull/12433)) +- Removal of Match, check, moment, Tracker and Mongo global variables ([#12410](https://github.com/RocketChat/Rocket.Chat/pull/12410)) +- Removal of EJSON, Accounts, Email, HTTP, Random, ReactiveDict, ReactiveVar, SHA256 and WebApp global variables ([#12377](https://github.com/RocketChat/Rocket.Chat/pull/12377)) +- Removal of Meteor global variable ([#12371](https://github.com/RocketChat/Rocket.Chat/pull/12371)) +- Fix ES translation ([#12509](https://github.com/RocketChat/Rocket.Chat/pull/12509)) +- LingoHub based on develop ([#12470](https://github.com/RocketChat/Rocket.Chat/pull/12470)) +- Update npm dependencies ([#12465](https://github.com/RocketChat/Rocket.Chat/pull/12465)) +- Fix: Developers not being able to debug root files in VSCode ([#12440](https://github.com/RocketChat/Rocket.Chat/pull/12440)) +- Merge master into develop & Set version to 0.72.0-develop ([#12460](https://github.com/RocketChat/Rocket.Chat/pull/12460)) +- Fix some Ukrainian translations ([#12712](https://github.com/RocketChat/Rocket.Chat/pull/12712) by [@zdumitru](https://github.com/zdumitru)) +- Improve: Add missing translation keys. ([#12708](https://github.com/RocketChat/Rocket.Chat/pull/12708) by [@ura14h](https://github.com/ura14h)) +- Bump Apps Engine to 1.3.0 ([#12705](https://github.com/RocketChat/Rocket.Chat/pull/12705)) +- Fix: Exception when registering a user with gravatar ([#12699](https://github.com/RocketChat/Rocket.Chat/pull/12699)) +- Fix: Fix tests by increasing window size ([#12707](https://github.com/RocketChat/Rocket.Chat/pull/12707)) +- Update Apps Engine to 1.3.1 ([#12741](https://github.com/RocketChat/Rocket.Chat/pull/12741)) +- Regression: Expand Administration sections by toggling section title ([#12736](https://github.com/RocketChat/Rocket.Chat/pull/12736)) +- Regression: Fix Safari detection in PDF previewing ([#12737](https://github.com/RocketChat/Rocket.Chat/pull/12737)) +- Regression: Account pages layout ([#12735](https://github.com/RocketChat/Rocket.Chat/pull/12735)) +- Regression: Inherit font-family for message box ([#12729](https://github.com/RocketChat/Rocket.Chat/pull/12729)) + +
+ +### 👩‍💻👨‍💻 Contributors 😍 + +- [@AndreamApp](https://github.com/AndreamApp) +- [@Ismaw34](https://github.com/Ismaw34) +- [@imronras](https://github.com/imronras) +- [@karlprieb](https://github.com/karlprieb) +- [@mbrodala](https://github.com/mbrodala) +- [@nicolasbock](https://github.com/nicolasbock) +- [@pfuender](https://github.com/pfuender) +- [@ph1p](https://github.com/ph1p) +- [@ramrami](https://github.com/ramrami) +- [@ura14h](https://github.com/ura14h) +- [@vinade](https://github.com/vinade) +- [@wreiske](https://github.com/wreiske) +- [@zdumitru](https://github.com/zdumitru) + +### 👩‍💻👨‍💻 Core Team 🤓 + +- [@Hudell](https://github.com/Hudell) +- [@MarcosSpessatto](https://github.com/MarcosSpessatto) +- [@cardoso](https://github.com/cardoso) +- [@engelgabriel](https://github.com/engelgabriel) +- [@ggazzo](https://github.com/ggazzo) +- [@marceloschmidt](https://github.com/marceloschmidt) +- [@mrsimpson](https://github.com/mrsimpson) +- [@rafaelks](https://github.com/rafaelks) +- [@renatobecker](https://github.com/renatobecker) +- [@rodrigok](https://github.com/rodrigok) +- [@sampaiodiego](https://github.com/sampaiodiego) +- [@tassoevan](https://github.com/tassoevan) + +# 0.71.1 +`2018-10-31 · 1 🐛 · 1 🔍 · 1 👩‍💻👨‍💻` + +### Engine versions +- Node: `8.11.3` +- NPM: `5.6.0` + +### 🐛 Bug fixes + +- Email sending with GDPR user data ([#12487](https://github.com/RocketChat/Rocket.Chat/pull/12487)) + +
+🔍 Minor changes + +- Release 0.71.1 ([#12499](https://github.com/RocketChat/Rocket.Chat/pull/12499)) + +
+ +### 👩‍💻👨‍💻 Core Team 🤓 + +- [@sampaiodiego](https://github.com/sampaiodiego) + # 0.71.0 `2018-10-27 · 2 ️️️⚠️ · 5 🎉 · 5 🚀 · 21 🐛 · 8 🔍 · 20 👩‍💻👨‍💻` diff --git a/LIMITATION_OF_RESPONSIBILITY.md b/LIMITATION_OF_RESPONSIBILITY.md new file mode 100644 index 000000000000..f451e30c7128 --- /dev/null +++ b/LIMITATION_OF_RESPONSIBILITY.md @@ -0,0 +1,19 @@ +## WARNING to ROCKET.CHAT USERS + +Rocket.Chat is open source software. Anyone in the world can download and run a Rocket.Chat server at any time. + +As a user of Rocket.Chat, someone with a Rocket.Chat account, you need to be aware that you may be using a Rocket.Chat server that is operated by arbitrary businesses, groups or individuals with no relationship to Rocket.Chat Technologies Corp. + +In particular: + +- Rocket.Chat Technologies Corp. do not have access to these servers. +- Rocket.Chat Technologies Corp. do not and cannot control or regulate how these servers are operated. +- Rocket.Chat Technologies Corp. cannot access, determine or regulate any contents or information flow on these servers. + +## IMPORTANT + +For total transparency, Rocket.Chat Technologies Corp. owns and operates only ONE publicly available Rocket.Chat server in the world. The server that Rocket.Chat Technologies Corp. operates can only be accessed at: + +https://open.rocket.chat + +Any other Rocket.Chat server you access is not operated by Rocket.Chat Technologies Corp. and is subjected to the usage warning above. diff --git a/README.md b/README.md index 361a9afd2a89..91f26b9ef607 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,7 @@ * [Hyper.sh](#hypersh) * [WeDeploy](#wedeploy) * [D2C.io](#d2cio) + * [Syncloud.org](#syncloudorg) * [About Rocket.Chat](#about-rocketchat) * [In the News](#in-the-news) * [Features](#features) @@ -231,6 +232,11 @@ Deploy Rocket.Chat stack to your server with [D2C](https://d2c.io/). Scale with [![Deploy](https://github.com/mastappl/images/blob/master/deployTo.png)](https://panel.d2c.io/?import=https://github.com/d2cio/rocketchat-stack/archive/master.zip/) +## Syncloud.org +Run Rocket.Chat on your easy to use personal device. + +[![Deploy](https://syncloud.org/images/logo_min.svg)](https://syncloud.org) + # About Rocket.Chat Rocket.Chat is a Web Chat Server, developed in JavaScript, using the [Meteor](https://www.meteor.com/install) fullstack framework. @@ -408,6 +414,13 @@ meteor npm install meteor npm start ``` +In order to debug the server part use [meteor debugging](https://docs.meteor.com/commandline.html#meteordebug). You should use Chrome for best debugging experience: + +```sh +meteor debug +``` +You'll find a nodejs icon in the developer console. + If you are not a developer and just want to run the server - see [deployment methods](https://rocket.chat/docs/installation/paas-deployments/). ## Branching Model @@ -424,7 +437,7 @@ If you want to help, send an email to support at rocket.chat to be invited to th ## How to Contribute -Already a JavaScript developer? Familiar with Meteor? [Pick an issue](https://github.com/RocketChat/Rocket.Chat/labels/contrib%3A%20easy), push a PR and instantly become a member of Rocket.Chat's international contributors community. +Already a JavaScript developer? Familiar with Meteor? [Pick an issue](https://github.com/RocketChat/Rocket.Chat/labels/contrib%3A%20easy), push a PR and instantly become a member of Rocket.Chat's international contributors community. For more information, check out our [Contributing Guide](.github/CONTRIBUTING.md) and our [Official Documentation for Contributors](https://rocket.chat/docs/contributing/). A lot of work has already gone into Rocket.Chat, but we have much bigger plans for it! diff --git a/client/methods/updateMessage.js b/client/methods/updateMessage.js index ddcdae14c49d..c329ad762afa 100644 --- a/client/methods/updateMessage.js +++ b/client/methods/updateMessage.js @@ -1,6 +1,7 @@ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; import { TimeSync } from 'meteor/mizzao:timesync'; +import { t } from 'meteor/rocketchat:utils'; import _ from 'underscore'; import moment from 'moment'; import toastr from 'toastr'; diff --git a/client/notifications/notification.js b/client/notifications/notification.js index 52d7083b2350..bb406e8ab86a 100644 --- a/client/notifications/notification.js +++ b/client/notifications/notification.js @@ -1,8 +1,8 @@ -/* globals KonchatNotification, fireGlobalEvent, readMessage, CachedChatSubscription */ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { Session } from 'meteor/session'; +import { KonchatNotification, fireGlobalEvent, readMessage, CachedChatSubscription } from 'meteor/rocketchat:ui'; // Show notifications and play a sound for new messages. // We trust the server to only send notifications for interesting messages, e.g. direct messages or diff --git a/client/notifications/updateAvatar.js b/client/notifications/updateAvatar.js index 28d7cb3dba74..b03d115ffddb 100644 --- a/client/notifications/updateAvatar.js +++ b/client/notifications/updateAvatar.js @@ -1,5 +1,5 @@ -/* globals updateAvatarOfUsername */ import { Meteor } from 'meteor/meteor'; +import { updateAvatarOfUsername } from 'meteor/rocketchat:ui'; Meteor.startup(function() { RocketChat.Notifications.onLogged('updateAvatar', function(data) { diff --git a/client/notifications/updateUserState.js b/client/notifications/updateUserState.js index 9144bce0fdc7..84cbaf9af6a6 100644 --- a/client/notifications/updateUserState.js +++ b/client/notifications/updateUserState.js @@ -1,5 +1,5 @@ -/* globals fireGlobalEvent */ import { Meteor } from 'meteor/meteor'; +import { fireGlobalEvent } from 'meteor/rocketchat:ui'; /* fire user state change globally, to listen on desktop electron client */ Meteor.startup(function() { diff --git a/client/routes/router.js b/client/routes/router.js index 9d80c73ee9fd..8f1dfd711038 100644 --- a/client/routes/router.js +++ b/client/routes/router.js @@ -1,4 +1,3 @@ -/* globals KonchatNotification */ import { Meteor } from 'meteor/meteor'; import { Accounts } from 'meteor/accounts-base'; import { Tracker } from 'meteor/tracker'; @@ -6,6 +5,7 @@ import { Blaze } from 'meteor/blaze'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { BlazeLayout } from 'meteor/kadira:blaze-layout'; import { Session } from 'meteor/session'; +import { KonchatNotification } from 'meteor/rocketchat:ui'; import s from 'underscore.string'; Blaze.registerHelper('pathFor', function(path, kw) { diff --git a/client/startup/i18n.js b/client/startup/i18n.js index 61ca1031914e..d2f01ec88207 100644 --- a/client/startup/i18n.js +++ b/client/startup/i18n.js @@ -1,8 +1,8 @@ -/* globals isRtl */ import { Meteor } from 'meteor/meteor'; import { ReactiveVar } from 'meteor/reactive-var'; import { Tracker } from 'meteor/tracker'; import { TAPi18n } from 'meteor/tap:i18n'; +import { isRtl } from 'meteor/rocketchat:utils'; import moment from 'moment'; const currentLanguage = new ReactiveVar(); diff --git a/client/startup/startup.js b/client/startup/startup.js index cf2c1eea246b..e5602cd19313 100644 --- a/client/startup/startup.js +++ b/client/startup/startup.js @@ -1,8 +1,9 @@ -/* globals UserPresence, fireGlobalEvent */ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; import { Session } from 'meteor/session'; import { TimeSync } from 'meteor/mizzao:timesync'; +import { UserPresence } from 'meteor/konecty:user-presence'; +import { fireGlobalEvent } from 'meteor/rocketchat:ui'; import toastr from 'toastr'; import hljs from 'highlight.js'; import 'highlight.js/styles/github.css'; diff --git a/client/startup/unread.js b/client/startup/unread.js index 5580c0635bf7..03bae2b49253 100644 --- a/client/startup/unread.js +++ b/client/startup/unread.js @@ -1,9 +1,9 @@ -/* globals fireGlobalEvent, readMessage, favico, menu */ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { Session } from 'meteor/session'; import { Favico } from 'meteor/rocketchat:favico'; +import { fireGlobalEvent, readMessage } from 'meteor/rocketchat:ui'; Meteor.startup(function() { Tracker.autorun(function() { @@ -77,8 +77,8 @@ Meteor.startup(function() { const unread = Session.get('unread'); fireGlobalEvent('unread-changed', unread); - if (favico) { - favico.badge(unread, { + if (window.favico) { + window.favico.badge(unread, { bgColor: typeof unread !== 'number' ? '#3d8a3a' : '#ac1b1b', }); } diff --git a/imports/message-read-receipt/client/room.js b/imports/message-read-receipt/client/room.js index 89f61ccab43a..4a28ed022b02 100644 --- a/imports/message-read-receipt/client/room.js +++ b/imports/message-read-receipt/client/room.js @@ -1,3 +1,5 @@ +import { t } from 'meteor/rocketchat:utils'; + RocketChat.MessageAction.addButton({ id: 'receipt-detail', icon: 'info-circled', diff --git a/imports/personal-access-tokens/client/personalAccessTokens.html b/imports/personal-access-tokens/client/personalAccessTokens.html index 31a0e7e3adab..a707a270cf93 100644 --- a/imports/personal-access-tokens/client/personalAccessTokens.html +++ b/imports/personal-access-tokens/client/personalAccessTokens.html @@ -1,30 +1,22 @@