Will apparently has some stale branches for this, which should be merged before we port to TpContactListManager (Bug #28199).
Will, any chance you could find these branches? If they're not ready for merge, I could pick them up - I'll have to do similar work for TpBaseContactList anyway.
It's cunningly hidden at http://git.collabora.co.uk/?p=user/wjt/telepathy-gabble-wjt.git;a=shortlog;h=refs/heads/roster-sucks
It's against 0.8 but it probably shouldn't be.
"Don't leak an array of lol" could use a better commit message.
I though "Correctly default contacts on 'subscribe' to offline." had been merged already but apparently it was just languishing in git.
I separated some of the commits up to make the diffs reviewable. I'm now happy with the sanity of smcv/roster - are you? If so, I'll merge.
Thanks, merged for 0.9.13.