Skip to content

Commit

Permalink
Release 0.72.3 (#12932)
Browse files Browse the repository at this point in the history
* [FIX] Version check update notification (#12905)

* [FIX] cannot reset password (#12903)

* Update debug.js

* Temporary hotfix solution for the resetpassword issue

* fix temporary my_message extra data (#12914)

* [FIX] CAS Login not working with renamed users (#12860)

* Fixed invalid emails being marked as verified

* Changed CAS login to support renamed users

* Fixed issue that prevented download from user data when a room no longer existed (#12829)

* [FIX] Lost icons (#12913)

[FIX] Some icons were missing

* Crowd sync fix (#12930)

[FIX] Crowd sync was being stopped when a user was not found

* Fix padding for message box in embedded layout (#12556)

* Bump version to 0.72.3
  • Loading branch information
rodrigok committed Dec 12, 2018
1 parent 5da8364 commit 65747ce
Show file tree
Hide file tree
Showing 15 changed files with 817 additions and 636 deletions.
2 changes: 1 addition & 1 deletion .docker/Dockerfile.rhel
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM registry.access.redhat.com/rhscl/nodejs-8-rhel7

ENV RC_VERSION 0.72.2
ENV RC_VERSION 0.72.3

MAINTAINER buildmaster@rocket.chat

Expand Down
80 changes: 80 additions & 0 deletions .github/history.json
Original file line number Diff line number Diff line change
Expand Up @@ -21758,6 +21758,86 @@
]
}
]
},
"0.72.3": {
"pull_requests": [
{
"pr": "12556",
"title": "[FIX] Padding for message box in embedded layout",
"userLogin": "tassoevan",
"milestone": "0.72.3",
"contributors": [
"tassoevan"
]
},
{
"pr": "12930",
"title": "[FIX] Crowd sync was being stopped when a user was not found",
"userLogin": "piotrkochan",
"milestone": "0.72.3",
"contributors": [
"piotrkochan",
"web-flow",
"rodrigok"
]
},
{
"pr": "12913",
"title": "[FIX] Some icons were missing",
"userLogin": "tassoevan",
"milestone": "0.72.3",
"contributors": [
"tassoevan"
]
},
{
"pr": "12829",
"title": "[FIX] User data download fails when a room has been deleted.",
"userLogin": "Hudell",
"milestone": "0.72.3",
"contributors": [
"Hudell"
]
},
{
"pr": "12860",
"title": "[FIX] CAS Login not working with renamed users",
"userLogin": "Hudell",
"milestone": "0.72.3",
"contributors": [
"Hudell"
]
},
{
"pr": "12914",
"title": "[FIX] Stream of my_message wasn't sending the room information",
"userLogin": "ggazzo",
"milestone": "0.72.3",
"contributors": [
"ggazzo"
]
},
{
"pr": "12903",
"title": "[FIX] cannot reset password",
"userLogin": "ggazzo",
"milestone": "0.72.3",
"contributors": [
"ggazzo",
"web-flow",
"Hudell"
]
},
{
"pr": "12905",
"title": "[FIX] Version check update notification",
"userLogin": "rodrigok",
"milestone": "0.72.3",
"contributors": [
"rodrigok"
]
}
]
}
}
}
4 changes: 2 additions & 2 deletions .sandstorm/sandstorm-pkgdef.capnp
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ const pkgdef :Spk.PackageDefinition = (

appTitle = (defaultText = "Rocket.Chat"),

appVersion = 118, # Increment this for every release.
appVersion = 119, # Increment this for every release.

appMarketingVersion = (defaultText = "0.72.2"),
appMarketingVersion = (defaultText = "0.72.3"),
# Human-readable representation of appVersion. Should match the way you
# identify versions of your app in documentation and marketing.

Expand Down
2 changes: 1 addition & 1 deletion .travis/snap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ elif [[ $TRAVIS_TAG ]]; then
RC_VERSION=$TRAVIS_TAG
else
CHANNEL=edge
RC_VERSION=0.72.2
RC_VERSION=0.72.3
fi

echo "Preparing to trigger a snap release for $CHANNEL channel"
Expand Down
25 changes: 25 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,29 @@

# 0.72.3
`2018-12-12 · 8 🐛 · 5 👩‍💻👨‍💻`

### 🐛 Bug fixes

- Padding for message box in embedded layout ([#12556](https://github.com/RocketChat/Rocket.Chat/pull/12556))
- Crowd sync was being stopped when a user was not found ([#12930](https://github.com/RocketChat/Rocket.Chat/pull/12930) by [@piotrkochan](https://github.com/piotrkochan))
- Some icons were missing ([#12913](https://github.com/RocketChat/Rocket.Chat/pull/12913))
- User data download fails when a room has been deleted. ([#12829](https://github.com/RocketChat/Rocket.Chat/pull/12829))
- CAS Login not working with renamed users ([#12860](https://github.com/RocketChat/Rocket.Chat/pull/12860))
- Stream of my_message wasn't sending the room information ([#12914](https://github.com/RocketChat/Rocket.Chat/pull/12914))
- cannot reset password ([#12903](https://github.com/RocketChat/Rocket.Chat/pull/12903))
- Version check update notification ([#12905](https://github.com/RocketChat/Rocket.Chat/pull/12905))

### 👩‍💻👨‍💻 Contributors 😍

- [@piotrkochan](https://github.com/piotrkochan)

### 👩‍💻👨‍💻 Core Team 🤓

- [@Hudell](https://github.com/Hudell)
- [@ggazzo](https://github.com/ggazzo)
- [@rodrigok](https://github.com/rodrigok)
- [@tassoevan](https://github.com/tassoevan)

# 0.72.2
`2018-12-10 · 2 🐛 · 1 👩‍💻👨‍💻`

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "Rocket.Chat",
"description": "The Ultimate Open Source WebChat Platform",
"version": "0.72.2",
"version": "0.72.3",
"author": {
"name": "Rocket.Chat",
"url": "https://rocket.chat/"
Expand Down
22 changes: 19 additions & 3 deletions packages/rocketchat-cas/server/cas_server.js
Original file line number Diff line number Diff line change
Expand Up @@ -160,19 +160,35 @@ Accounts.registerLoginHandler(function(options) {
_.each(attr_map, function(source, int_name) {
// Source is our String to interpolate
if (_.isString(source)) {
let replacedValue = source;
_.each(ext_attrs, function(value, ext_name) {
source = source.replace(`%${ ext_name }%`, ext_attrs[ext_name]);
replacedValue = replacedValue.replace(`%${ ext_name }%`, ext_attrs[ext_name]);
});

int_attrs[int_name] = source;
logger.debug(`Sourced internal attribute: ${ int_name } = ${ source }`);
if (source !== replacedValue) {
int_attrs[int_name] = replacedValue;
logger.debug(`Sourced internal attribute: ${ int_name } = ${ replacedValue }`);
} else {
logger.debug(`Sourced internal attribute: ${ int_name } skipped.`);
}
}
});
}

// Search existing user by its external service id
logger.debug(`Looking up user by id: ${ result.username }`);
// First, look for a user that has logged in from CAS with this username before
let user = Meteor.users.findOne({ 'services.cas.external_id': result.username });
if (!user) {
// If that user was not found, check if there's any CAS user that is currently using that username on Rocket.Chat
// With this, CAS login will continue to work if the user is renamed on both sides and also if the user is renamed only on Rocket.Chat.
const username = new RegExp(`^${ result.username }$`, 'i');
user = Meteor.users.findOne({ 'services.cas.external_id': { $exists: true }, username });
if (user) {
// Update the user's external_id to reflect this new username.
Meteor.users.update(user, { $set: { 'services.cas.external_id': result.username } });
}
}

if (user) {
logger.debug(`Using existing user for '${ result.username }' with id: ${ user._id }`);
Expand Down
28 changes: 13 additions & 15 deletions packages/rocketchat-crowd/server/crowd.js
Original file line number Diff line number Diff line change
Expand Up @@ -131,15 +131,13 @@ export class CROWD {
logger.info('Sync started...');

users.forEach(function(user) {

let username = user.hasOwnProperty('crowd_username') ? user.crowd_username : user.username;
logger.info('Syncing user', username);

try {
logger.info('Syncing user', username);

const crowdUser = self.fetchCrowdUser(username);
let crowdUser = null;

self.syncDataToUser(crowdUser, user._id);
try {
crowdUser = self.fetchCrowdUser(username);
} catch (error) {
logger.debug(error);
logger.error('Could not sync user with username', username);
Expand All @@ -148,17 +146,17 @@ export class CROWD {
logger.info('Attempting to find for user by email', email);

const response = self.crowdClient.searchSync('user', `email=" ${ email } "`);
if (response.users && response.users.length === 1) {
username = response.users[0].name;
logger.info('User found. Syncing user', username);

const crowdUser = self.fetchCrowdUser(response.users[0].name);

self.syncDataToUser(crowdUser, user._id);
} else {
throw new Error('User does not exist or email is not unique');
if (!response || response.users.length === 0) {
logger.warning('Could not find user in CROWD with username or email:', username, email);
return;
}
username = response.users[0].name;
logger.info('User found. Syncing user', username);

crowdUser = self.fetchCrowdUser(response.users[0].name);
}

self.syncDataToUser(crowdUser, user._id);
});
}

Expand Down
2 changes: 1 addition & 1 deletion packages/rocketchat-lib/rocketchat.info
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"version": "0.72.2"
"version": "0.72.3"
}
12 changes: 11 additions & 1 deletion packages/rocketchat-lib/server/lib/debug.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,17 @@ const wrapMethods = function(name, originalHandler, methodsMap) {
const args = name === 'ufsWrite' ? Array.prototype.slice.call(originalArgs, 1) : originalArgs;
logger.method(name, '-> userId:', Meteor.userId(), ', arguments: ', args);

this.unblock();
// Temporary solution for a hotfix while we investigate the underlying issue.
const methodBlackList = [
'resetPassword',
'verifyEmail',
'resetPasswordWithTOTP',
];

if (methodBlackList.indexOf(name) < 0) {
this.unblock();
}

const result = originalHandler.apply(this, originalArgs);
end();
return result;
Expand Down
Loading

0 comments on commit 65747ce

Please sign in to comment.