LockerProject / Locker

Locker - the "me" platform
http://lockerproject.org/
BSD 3-Clause "New" or "Revised" License
1.07k stars 123 forks source link

disconnecting and reconnecting with different twitter account doesn't work #832

Closed smurthas closed 12 years ago

smurthas commented 12 years ago

It's possible that it extends beyond twitter, and might not be limited to switching accounts, but that was the case in which is occurred.

mdz commented 12 years ago

I can't reproduce this.

On sandbox (build 587), I tried disconnecting and reconnecting Twitter. Everything seemed to work, and after refreshing #Settings-Connections my Twitter username appeared. New links appeared in the links demo, and in the log I see activity:

21 Feb 17:14:44 - info: processing synclet data from tweet://twitter/timeline?id=twitter of length 4 21 Feb 17:14:44 - info: total of 3+0+0 and threshold 50 so setting tolerance to 1 21 Feb 17:14:44 - info: Synclet mentions starting for twitter 21 Feb 17:14:44 - info: [mongo] Tue Feb 21 17:14:44 [conn52] info DFM::findAll(): extent 0:31e000 was empty, skipping ahead. ns:locker.alinks_queue 21 Feb 17:14:45 - info: Synclet mentions finished for twitter timing 4 21 Feb 17:14:45 - info: total of 0+0+0 and threshold 50 so setting tolerance to 1 21 Feb 17:14:45 - info: Synclet related starting for twitter 21 Feb 17:15:47 - info: Synclet related finished for twitter timing 132 21 Feb 17:15:48 - info: processing synclet data from related://twitter/related?id=twitter of length 26 21 Feb 17:15:48 - info: total of 2+23+0 and threshold 50 so setting tolerance to 1 21 Feb 17:15:48 - info: Synclet tweet starting for twitter 21 Feb 17:15:48 - info: Synclet tweet finished for twitter timing 65 21 Feb 17:15:48 - info: total of 0+0+0 and threshold 50 so setting tolerance to 1

smurthas commented 12 years ago

Did you reconnect with a different twitter account (sorry, typo in the title, fixed now)?

mdz commented 12 years ago

I did not, I'll try that.

mdz commented 12 years ago

I tried reconnecting to a different account. The old Twitter username still appeared on #Settings-Connections, which was confusing, but otherwise it seemed to work. The links coming in appear to be from the new account.

smurthas commented 12 years ago

I'm going to try to repro this. If I can't, I'll close it.

kristjan commented 12 years ago

What should this behavior be of authing a new Twitter account?

othiym23 commented 12 years ago

I think the Principle of Least Surprise dictates that if you deauth, your data should be left alone, and if you reauth using the same handle, then just add the new data. If you auth with a different handle, though, start from a clean slate by nuking the old data.

There is a separate issue, which should be captured via a feature request / another issue, which is that it would be very useful to be able to connect multiple accounts from the same service.

othiym23 commented 12 years ago

Because the profile data is saved on the auth object, it should be a matter of ensuring that the auth object is completely removed from me.json on the new auth to make sure the proper profile settings get changed.

smurthas commented 12 years ago

I was able to repro this. I can investigate. I disconnected my personal account, and connected singly's account and still had the same profile and the synclets ran but didn't pull in any new contacts.

mdz commented 12 years ago

Could the profile mismatch cause problems like in #899?

smurthas commented 12 years ago

Sure could.

mdz commented 12 years ago

@kristjan makes a good point that we should figure out what to do with the old data in this case. I can't think of a better solution than asking the locker owner what to do. If they accidentally connected the wrong account, they'll probably want to clear it out, but if they're migrating to a new account, they'll want to keep the old data.

kristjan commented 12 years ago

I'm perfectly happy leaving that decision for when someone brings it up. By default, I think everything Locker does should be only cumulative.

On Wed, Mar 14, 2012 at 5:24 PM, Matt Zimmerman < reply@reply.github.com

wrote:

@kristjan makes a good point that we should figure out what to do with the old data in this case. I can't think of a better solution than asking the locker owner what to do. If they accidentally connected the wrong account, they'll probably want to clear it out, but if they're migrating to a new account, they'll want to keep the old data.


Reply to this email directly or view it on GitHub: https://github.com/LockerProject/Locker/issues/832#issuecomment-4511503

mdz commented 12 years ago

Fair enough, @kristjan. We should make sure that we store enough state that we could go back and cleanly remove the old data if someone requests it.

kristjan commented 12 years ago

Sound smart. If we're not, it wouldn't hurt to store a source parameter with every piece of data. Something like twitter/username in this case.

On Wed, Mar 14, 2012 at 5:36 PM, Matt Zimmerman < reply@reply.github.com

wrote:

Fair enough, @kristjan. We should make sure that we store enough state that we could go back and cleanly remove the old data if someone requests it.


Reply to this email directly or view it on GitHub: https://github.com/LockerProject/Locker/issues/832#issuecomment-4511670

smurthas commented 12 years ago

This ended up getting fixed in https://github.com/LockerProject/Locker/commit/d73ef39d4d952630f01608d2bd2ac35afc62a9fe