Adium

Ticket #8742 (closed defect: fixed)

Opened 8 months ago

Last modified 2 months ago

Address books recreates meta contacts on each launch

Reported by: jsquyres Assigned to: evands
Priority: highest Milestone: Adium X 1.3
Component: MetaContact Version: 1.2.4b2
Severity: omgwtfbbq Keywords:
Cc: Patch: None
Pending: 0

Description

Summary: if I combine certain AIM contacts in the contact list, quit Adium, and then re-launch Adium, the contacts are no longer combined. This behavior is repeatable when combining a regular AIM contact and an SMS AIM contact.

  • Adium version: 1.2b8
  • OS X version: 10.5.1 / intel (all software updates as of 4 Jan 2008)
  • Steps to reproduce:
    1. Launch Adium
    2. Pick a regular AIM contact and an SMS AIM contact; drag the SMS contact on top of the regular AIM contact
    3. Click "combine" in the resulting popup to allow Adium to combine them
    4. Notice that they are now combined in the Adium contact list
    5. Further check by double clicking on that contact and see in the resulting IM chat window that there is a drop-down menu for picking which contact to use
    6. Further check by selecting "get info" on the combined contact and see that both contacts are listed
    7. Quit Adium
    8. Re-launch Adium
    9. See in the contact list that the contacts are separate again
  • Console.app output: The only line that looks suspicious in the Console.app output is the following (I'm not sure if it's related to this issue or not -- in my testing, it only appears sometimes when re-creating the issue described in this ticket, even though the contacts-will-not-be-combined behavior is always repeatable upon Adium restart):
    1/4/08 8:36:54 AM [0x0-0x32c32c].com.adiumX.adiumX[98364] ** (process:98364): CRITICAL **: purple_buddy_icon_ref: assertion `icon != NULL' failed 
    
  • 4 screenshots are attached
    1. Initial contact list
    2. Popup window confirming combining two contacts
    3. Contact list showing combined contacts
    4. "Get info" window for the combined contacts showing both contacts (cropped to cutoff AIM account name / cell phone number)
    5. I didn't attach a screenshot showing the contact list upon Adium restart; it's the same as the initial contact list

Attachments

1-initial-contact-list.jpg (23.9 kB) - added by jsquyres on 01/04/2008 09:01:48 AM.
2-combine-confirm-window.jpg (35.2 kB) - added by jsquyres on 01/04/2008 09:02:08 AM.
3-combined-contact-list.jpg (22.0 kB) - added by jsquyres on 01/04/2008 09:02:24 AM.
4-showing-combined-contact.jpg (40.3 kB) - added by jsquyres on 01/04/2008 09:03:07 AM.
Intentionally clipped this image to keep the AIM contact name and cell phone number private

Change History

01/04/2008 09:01:48 AM changed by jsquyres

  • attachment 1-initial-contact-list.jpg added.

01/04/2008 09:02:08 AM changed by jsquyres

  • attachment 2-combine-confirm-window.jpg added.

01/04/2008 09:02:24 AM changed by jsquyres

  • attachment 3-combined-contact-list.jpg added.

01/04/2008 09:03:07 AM changed by jsquyres

  • attachment 4-showing-combined-contact.jpg added.

Intentionally clipped this image to keep the AIM contact name and cell phone number private

01/05/2008 07:16:09 PM changed by jas8522

  • pending set to 1.
  • milestone set to Needs feedback from users.

Does this only happen when one of the contacts is an SMS AIM contact? I have a few AIM/Gtalk/MSN/Bonjour (mixed combinations of those services) metacontacts and have only encountered this with Bonjour (which I believe is due to the fact that their service name changes depending on location).

01/20/2008 12:00:02 AM changed by trac-robot

  • status changed from new to closed.
  • pending deleted.

This ticket was closed automatically by the system. It was previously set to a Pending status and hasn't been updated within 14 days.

03/17/2008 11:34:31 PM changed by jsquyres

Somehow I didn't get the mail requesting the update (perhaps it went to my spam folder...).

I have only seen this happen with SMS contacts, but I have not tried it extensively with others.

03/18/2008 07:00:37 AM changed by jas8522

  • pending set to 1.

So the new summary/title should be SMS contacts do not stay combined with others? And you can reproduce this with the 1.2.4 AdiumBeta?

03/18/2008 07:00:42 AM changed by jas8522

  • status changed from closed to reopened.

03/18/2008 08:20:00 AM changed by jsquyres

  • pending deleted.

Yes, I can reproduce the problem in 1.2.4b2.

I notice that when I combined two different AIM contacts, the same thing happened (they were un-combined when I launched Adium again). The two contacts I combined were "DongInn Kim" and "Andrew Lumsdaine" in the screenshots attached to this ticket.

03/18/2008 09:20:51 AM changed by jas8522

  • summary changed from Combined contacts do not stay combined to SMS contacts do not stay combined with others.
  • component changed from Adium Core to MetaContact.
  • version changed from 1.2b8 to 1.2.4b2.
  • milestone changed from Needs feedback from users to Adium X 1.2.5.

Alright - setting summary appropriately then. I have no AIM SMS using contacts so I can't test this myself.

03/18/2008 01:03:17 PM changed by jsquyres

FWIW, if you have a cell phone that can receive text messages, you can have an AIM SMS contact -- just add an AIM buddy with +<phone number> (the AIM servers automatically translate that into an SMS message, and send SMS replies back to you via AIM -- pretty handy).

Independent confirmation of this bug would be good; it seems kinda big to have escaped this long...

(follow-up: ↓ 11 ) 03/18/2008 01:04:09 PM changed by jsquyres

BTW, notice that it also happens with non-SMS contacted; see http://trac.adiumx.com/ticket/8742#comment:5.

(follow-up: ↓ 10 ) 03/21/2008 02:00:54 PM changed by jas8522

  • pending set to 1.
  • milestone changed from Adium X 1.2.5 to Needs feedback from users.

Have you tried this with fresh prefs? I have a number of combined contacts - they stay combined. My combined contacts could be MSN-MSN or MSN-Gtalk-AIM-Yahoo and they always remain combined...

(in reply to: ↑ 9 ) 03/21/2008 08:45:16 PM changed by jsquyres

  • pending deleted.

Replying to jas8522:

Have you tried this with fresh prefs? I have a number of combined contacts - they stay combined. My combined contacts could be MSN-MSN or MSN-Gtalk-AIM-Yahoo and they always remain combined...

Yes, I just tried [again] with brand new preferences and the same problem occurs, at least with AIM+AIM/SMS contacts.

(in reply to: ↑ 8 ; follow-up: ↓ 12 ) 03/21/2008 08:51:23 PM changed by jas8522

  • milestone changed from Needs feedback from users to Adium X 1.2.5.

OK, so this does only affect metacontacts containing at least one SMS contact, which gives us a seemingly reproducible situation.

Your statement:

BTW, notice that it also happens with non-SMS contacted; see http://trac.adiumx.com/ticket/8742#comment:5.

Made me think otherwise... but if it's true that it happens with non-SMS-related metacontacts, then I cannot reproduce it...

(in reply to: ↑ 11 ) 03/21/2008 08:59:28 PM changed by jsquyres

Replying to jas8522:

OK, so this does only affect metacontacts containing at least one SMS contact, which gives us a seemingly reproducible situation. Your statement:

BTW, notice that it also happens with non-SMS contacted; see http://trac.adiumx.com/ticket/8742#comment:5.

Made me think otherwise... but if it's true that it happens with non-SMS-related metacontacts, then I cannot reproduce it...

I'm sorry, I was being lazy -- forgive me for being incomplete.

I just tried with brand new preferences (again -- new even compared to above), and tried to combine to AOL preferences (non-SMS). The same behavior occurred -- upon relaunch, the contacts were no longer combined. So it does not look specific to SMS contacts. But I don't know why I would exhibit this behavior when you do not. :-\

03/24/2008 05:05:20 PM changed by eharris

  • owner changed from nobody to eharris.
  • status changed from reopened to new.

This happens to me fairly often and is pretty annoying. I'll take it.

(follow-up: ↓ 15 ) 04/01/2008 10:40:20 AM changed by jas8522

It seems like this would be related to #9549

(in reply to: ↑ 14 ) 04/17/2008 02:41:21 AM changed by eharris

  • status changed from new to assigned.
  • severity changed from normal to omgwtfbbq.

Replying to jas8522:

It seems like this would be related to #9549

It is incredibly related, it turns out. More importantly, it's the most INSANE bug ever. Also, I know everything about it. Evan and I will have to talk about it. It's probably causing all sorts of issues with a bunch of different things -- it's huge.

04/17/2008 02:56:00 AM changed by eharris

  • priority changed from normal to highest.

04/17/2008 07:07:44 AM changed by jsquyres

Cool -- I'm not insane; it's the bug that's insane!

Glad to have reported something that was subtle and eventually validated; viva Adium!

04/28/2008 04:19:04 PM changed by evands

  • milestone changed from Adium X 1.2.5 to Adium X 1.3.

As this requires significant architectural changes to fix, potentially, I'm retargeting it to 1.3.

05/15/2008 08:37:53 AM changed by djmori

05/15/2008 05:51:00 PM changed by evands

eharris, how're you doing on this?

05/15/2008 06:06:45 PM changed by jsquyres

If you have a few minutes to describe the bug, I'm a bit curious as to why it's so insane (I'm a software developer myself). If you don't, no worries. We all greatly appreciate having such a great IM client! :-)

05/24/2008 08:32:03 PM changed by d235j

check here: http://paste.lisp.org/display/61212 (from #adium-devl on IRC (irc.freenode.net)

05/24/2008 08:33:09 PM changed by Robby

Spies!

05/29/2008 04:46:04 PM changed by zacw

  • summary changed from SMS contacts do not stay combined with others to Address books recreates meta contacts on each launch.

This subject made no sense.

06/08/2008 07:57:49 PM changed by bogo_lode

Currently, 1.3b1 has a variation. On first launch, the combine into metacontacts preference is checked and rearranges the contact list, and in the process, seems to unset any aliases you've set. On unchecking the metacontacts preference, it separates all metacontacts and renames them to the service provided name rather than any set aliases.

If you check/uncheck the main addressbook integration pref "Import contact names..." it renames the contacts and when unchecked, takes away any aliases set.

Repeatedly checking/unchecking either option eventually breaks the metacontacts somehow and they won't automatically recombine.

06/29/2008 04:48:22 PM changed by evands

  • owner changed from eharris to evands.
  • status changed from assigned to new.

#10028 made me do a whole bunch of thinking without fixing the real problem. That bothered me. I therefore extract my revenge on this ticket.

06/29/2008 05:04:02 PM changed by evands

(In [24099]) Refs #8742

  • Added -[AIContactController knownMetaContactForGroupingUIDs:forServices:], which allows prediction of what metacontact, if any, will be used by -[AIContactController groupUIDs:forServices:].
  • Replaced -[AIContactController groupUIDs:forServices:] with -[AIContactController groupUIDs:forServices:usingMetaContactHint:]. The new metaContactHint argument allows the caller to suggest a metacontact to be used if a new one would otherwise be created.

06/29/2008 05:08:59 PM changed by evands

  • status changed from new to closed.
  • resolution set to fixed.

(In [24100]) Track the metacontacts created by the address book plugin. If -[AIContactController knownMetaContactForGroupingUIDs:forServices:] returns nil, access our tracking dictionary to determine a previously-automatically-created metacontact. If we have one, suggest it as the metaContactHint in -[AIContactController groupUIDs:forServices:usingMetaContactHint:].

This lets the same metacontact be recreated, restoring its preferences and stored info. Fixes #8742.