Opened at 2005-11-08T12:17:51Z
Last modified at 2007-07-11T12:10:47Z
#9 closed defect (fixed)
Rewrite Jabber module
Reported by: | Jelmer Vernooij | Owned by: | |
---|---|---|---|
Priority: | wishlist | Milestone: | 1.2 |
Component: | Jabber | Version: | |
Keywords: | Cc: | ||
IRC client+version: | Client-independent | Operating System: | Public server |
OS version/distro: |
Description
The current Jabber module, which was inherited from gaim, needs replacement. It includes a verbatim copy of the expat XML library and the code is very hairy (uses it's own memory allocation system, for example).
Maybe use libxml2 or the built-in XML support from Glib (don't know if that's sufficient?)
Attachments (0)
Change History (17)
comment:1 Changed at 2005-11-08T12:19:54Z by
comment:2 Changed at 2005-11-08T12:20:00Z by
Component: | irc → jabber |
---|
comment:3 Changed at 2005-11-16T16:20:07Z by
Related bugs:
Possibly the showing-up-offline problem is because the person was on-line from two places and signed off one of them, the Jabber lib doesn't seem to handle this very well yet.
If anyone knows another nice Jabber lib, please post it here. I know about loudmouth, but I'm afraid it won't integrate very well. (And I don't want to depend on it as a shlib.)
comment:4 Changed at 2005-11-17T23:41:54Z by
Milestone: | → 1.1? |
---|
comment:5 Changed at 2005-12-06T17:31:36Z by
Version: | 0.99 |
---|
Marked #20 as a dupe of this one.
No idea which Jabber lib could be suitable. I wonder how hard it would be to write our own around a simple XML-lib, to keep the source small...
comment:6 Changed at 2005-12-06T17:32:16Z by
Oh yes, of course the fact that #20 is closed now means that this one can't be closed before the new lib supports groupchats. ;-)
comment:7 Changed at 2006-02-16T17:33:13Z by
Nice, I really hope this rewrite happens because the Jabber module currently lacks a couple of features that I think are essential:
- Support for setting the resource (currently hardcoded as BitlBee in jabber.c)
- Support for changing the priority (currently hardcoded Somewheretm as zero).
comment:8 Changed at 2006-02-16T19:12:11Z by
Reporter: | changed from anonymous to Jelmer Vernooij |
---|
Setting the resource is possible already. Something like jabber@…/resource. Don't know about priority.
comment:9 Changed at 2006-02-22T23:21:01Z by
I didn't know that ... can you point to any documentation on that? And is there a way to *reset* the resource once it's been set?
comment:10 Changed at 2006-04-01T14:14:11Z by
Milestone: | 1.1 → 1.2 |
---|
Oh, sorry, missed your question. No, I'm afraid there isn't, except re-adding the account.
comment:11 Changed at 2006-05-31T20:14:07Z by
Is muc support is considered to include in new jabber module?
comment:12 Changed at 2006-06-25T15:16:39Z by
I would certainly appreciate a good Jabber integration as well, because I could use BitlBee with Qunu, which I can't right now because of the missing groupchat feature.
comment:13 Changed at 2006-09-19T12:48:38Z by
I'm now working on this! I'm using the GLib XML parser code for it, plus some pretty compact piece of code that stores parse trees in memory for easier handling by the module. Wrote it during the last three days, works pretty well so far. And it's incomparably smaller than the shite we're using now. :-)
comment:14 Changed at 2006-09-24T20:13:45Z by
This is going very well now, I got some quite well-working code already.
Okay, I only tested it on my jabberd @ localhost (laptop) so far, so it needs some real-world testing, but I hope that'll come soon. :-)
comment:15 Changed at 2006-10-01T23:28:16Z by
This can now be downloaded from: http://code.bitlbee.org/wilmer/new-jabber/ (use bzr).
Tested against a few other Jabber servers now.
comment:16 Changed at 2006-10-15T10:34:22Z by
I reopened the Jabber groupchat support ticket (#20) so this ticket doesn't have to wait for the groupchats to work.
This new Jabber module might appear in a 1.1 pre-release soon...
comment:17 Changed at 2006-10-22T13:45:42Z by
Milestone: | 1.2 → 1.1 |
---|
Yeah, certainly a good plan, it's also starting to have stability problems. Mysterious crashes, that kind of things. The code's too hairy for my taste.
And it also gets rid of the Moz-licensed part of the code, which I wouldn't quite mind at all.
We have to take a look at http://iksemel.jabberstudio.org/ too BTW.