GNOME Bugzilla – Bug 663829
Butterfly -> Haze migration
Last modified: 2012-02-21 13:30:06 UTC
We don't want to use Butterfly any more in 3.4 (it doesn't implement ContactList and is not maintained any more). We should: - Stop using butterfly when creating a new account - Migrate butterfly accounts to haze - Ideally, migrate logs as well
(In reply to comment #0) > - Migrate butterfly accounts to haze Humm I'm not sure of the right place to do that. Ideally we should: - if users has Haze installed: create a new Haze account and remove the Butterfly one - If not, disable the Haze account (there is no point keeping a half working account) and display a message to the user telling him to install Haze in order to migrate his account. Once Haze is installed the account is migrated. My initial plan was to implement it in empathy-auth-client (I implemented it actually), catching the account when handling the SASL channel and then doing the migration. Problem is, Butterfly doesn't implement SASL! The password is still stored by MC, so my beautiful code is never called. :\ So I don't know where to put this migration code. A) In empathy-accounts: the MC4 -> MC5 migration path was there, but that means user has to open the accounts dialog in order to migrate his accounts. B) In empathy. Not great as user can now be connected and chat without having empathy running at all. C) In MC? As a plugin? Could work but won't allow us to warn user if Haze isn't installed... d) As a post upgrade package hook? We could provide a small script doing but we'll have to rely on distros to hook it properly. Other ideas?
I've done it with c) : https://bugs.freedesktop.org/show_bug.cgi?id=42814 Empathy should warn user if he still using Butterfly accounts.
(In reply to comment #0) > - Ideally, migrate logs as well This one is tricky as well. Just renaming the directory in ~/.local/share/TpLogger/logs to the new account prefix name is good enough to keep the logs (cool!). But which component should do it? MC could, but that would be pretty hacky as it's not supposed to know where is the logger storing its data. Oth, even if we add API to liblogger to do the migration MC is not going to depend on it so...
(In reply to comment #3) > (In reply to comment #0) > > - Ideally, migrate logs as well > > This one is tricky as well. Just renaming the directory in > ~/.local/share/TpLogger/logs to the new account prefix name is good enough to > keep the logs (cool!). But which component should do it? MC could, but that > would be pretty hacky as it's not supposed to know where is the logger storing > its data. > > Oth, even if we add API to liblogger to do the migration MC is not going to > depend on it so... Let's do it in the logger directly: https://bugs.freedesktop.org/show_bug.cgi?id=42917
Created attachment 201542 [details] [review] protocol-chooser: stop using Butterfly It doesn't implement any modern Telepathy API like ContactList for example and we now rely on it.
Created attachment 201543 [details] [review] Use the MSN account widget with Haze The parameters supported by the UI have the same names as the Butterfly ones so no change needed.
Created attachment 201544 [details] [review] accounts-dialog: hide the switch in butterfly accounts MC should migrate butterfly accounts. If it fails (typically because Haze isn't installed) then it disables the account. There is no point allowing user to re-enable it as it won't work properly with Empathy any way.
Created attachment 201545 [details] [review] explain why the account has been disabled
We should wait that the MC bits have been merged and released before merging those patches but they can already be reviewed.
Review of attachment 201545 [details] [review]: ::: src/empathy-accounts-dialog.c @@ +436,3 @@ + { + accounts_dialog_status_infobar_set_message (dialog, + _("This account has been disabled because it rely on an old " 'relies' 'old,'
Nothing too scary here. ++ OTOH, what happens if someone wants to start hacking on butterfly again? Will MC continuously migrate their accounts to haze?
> Review of attachment 201545 [details] [review]: > > ::: src/empathy-accounts-dialog.c > @@ +436,3 @@ > + { > + accounts_dialog_status_infobar_set_message (dialog, > + _("This account has been disabled because it rely on an old " > > 'relies' > 'old,' Thx fixed. (In reply to comment #11) > Nothing too scary here. ++ Thanks for the review. I'll land the branch once the MC patches have been merged. > OTOH, what happens if someone wants to start hacking on butterfly again? Will > MC continuously migrate their accounts to haze? Yeah. I'm ready to be convince to add a MC_USE_BUTTERFLY env variable preventing the migration but tbh I'm not sure it's worth it.(In reply to comment #10)
*** Bug 666122 has been marked as a duplicate of this bug. ***
*** Bug 668293 has been marked as a duplicate of this bug. ***
Attachment 201542 [details] pushed as 3826d72 - protocol-chooser: stop using Butterfly Attachment 201543 [details] pushed as a5da0a7 - Use the MSN account widget with Haze Attachment 201544 [details] pushed as f85fa94 - accounts-dialog: hide the switch in butterfly accounts Attachment 201545 [details] pushed as e8dae49 - explain why the account has been disabled