Mercurial > pidgin
annotate TODO @ 15920:d7feace39800
Fix some reads of invalid memory when shutting down bonjour when there
are bonjour buddies in your buddy list. We were iterating through the
blist and removing people as we go, which meant we were deleting
bnode and then trying to access bnode->next
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Sun, 25 Mar 2007 17:04:27 +0000 |
parents | 4b5822e48b53 |
children | 361c15e0b320 |
rev | line source |
---|---|
10881 | 1 * conversation api {{{ |
2 * need to handle: {{{ | |
3 * unnamed chats | |
4 * chats with the same name as a buddy | |
11451
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
5 * this should be working now, but it needs to be kept in mind when (re-)designing |
10881 | 6 * jabber Messages (one off messages vrs a conversation with a backlog) |
7 * multiple conversations with a single buddy (jabber, with thread tag) | |
8 * bugs | |
9 }}} | |
10 * notes: {{{ | |
11 * (12:58:39) Robot101: user list always|auto|never | |
12 * topic only where supported by the protocol | |
13 * how do we log this? {{{ | |
11451
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
14 * rlaager's (NEW) proposal: {{{ |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
15 * each conversation has 1 or more logs associated with it. |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
16 * when someone joins, a new log is opened |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
17 * file based loggers should try to use hard-links in a smart way |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
18 to avoid duplicating data on disk as much as possible... |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
19 * this needs to be designed in such a way that a database logger |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
20 can handle it w/o duplication... |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
21 * TO SOLVE THESE CONCERNS, a link and/or copy function callback |
99548d90257e
[gaim-migrate @ 13690]
Richard Laager <rlaager@wiktel.com>
parents:
11415
diff
changeset
|
22 will likely need to be added |
10881 | 23 }}} |
24 }}} | |
25 }}} | |
26 }}} | |
27 * buddy list {{{ | |
28 * we have not committed any gobjectification, so this is not a blocker for 2.0.0 until we do. | |
29 * if we do, it is only a blocker to the extent that gaim needs to run. That is, we do not | |
30 *necessarily* have to gobjectifiy everything as long as we preserve functionality. | |
31 * That being said, my understanding of the signals mess says that it is probly more work to | |
32 try to do this in stages than to start it or not start it. | |
33 * This would require some sort of signal aggregation, as gobject signals are unique to the instance. | |
34 * one way to do this would be to emit the signals from a non-descript buddy object. this would | |
35 most closely mimic the current functionality | |
36 * a second way would be to actually try to aggregate them in some way. I really don't know how | |
37 possible this is, but it would allow us to do things like set a pounce on everyone in a group | |
38 or define sounds on a per-group basis. | |
39 * we could look at replacing the UI ops with signals/call backs | |
40 * bugs | |
11415
66fe476474ec
[gaim-migrate @ 13652]
Luke Schierer <lschiere@pidgin.im>
parents:
10891
diff
changeset
|
41 * wrong buddy given priority |
10881 | 42 }}} |
43 * build targets {{{ | |
44 * this is not a blocker | |
45 * we need build targets for libgaim, we need to test them, and make sure they work. | |
46 * we ought to use our own build targets to build the executable itself. | |
47 * due to the limitations of cvs, this cannot accompany moving files to other directories at this time. | |
48 }}} | |
49 * status {{{ | |
12680
134e570b3688
[gaim-migrate @ 15023]
Luke Schierer <lschiere@pidgin.im>
parents:
11451
diff
changeset
|
50 * Error messages aren't particularly usable currently. we need to be able to see the full text of |
134e570b3688
[gaim-migrate @ 15023]
Luke Schierer <lschiere@pidgin.im>
parents:
11451
diff
changeset
|
51 the error, and what account is in that error condition. |
134e570b3688
[gaim-migrate @ 15023]
Luke Schierer <lschiere@pidgin.im>
parents:
11451
diff
changeset
|
52 * No way to see accounts not in the global state. |
134e570b3688
[gaim-migrate @ 15023]
Luke Schierer <lschiere@pidgin.im>
parents:
11451
diff
changeset
|
53 * Easier access to saved states is needed. |
10881 | 54 }}} |
55 * Privacy {{{ | |
56 * this is not a blocker for 2.0.0 | |
57 * Privacy sucks. it doesn't handle many of the protocols in a way that users understand. notably | |
58 msn, but also yahoo, jabber, and icq. | |
59 * We want to sync to the server as much as possible, entirely local-only privacy is not an option | |
60 except on protocols like irc that have no server-side. | |
61 * We want to be as consistent across protocols as possible. this will require renaming things on | |
62 some protocols. | |
63 * Bleeter suggests that we create a privacy.xml, remove privacy from blist.xml. He suggests | |
64 that each protocol define certain capabilities & defaults, with accounts.xml holding exceptions | |
65 to the defaults. | |
66 }}} | |
10885
12083e75627f
[gaim-migrate @ 12583]
Luke Schierer <lschiere@pidgin.im>
parents:
10881
diff
changeset
|
67 * Perl {{{ |
10886
0ece4cf68ea6
[gaim-migrate @ 12584]
Luke Schierer <lschiere@pidgin.im>
parents:
10885
diff
changeset
|
68 * Block for 2.0.0 or remove perl: |
11415
66fe476474ec
[gaim-migrate @ 13652]
Luke Schierer <lschiere@pidgin.im>
parents:
10891
diff
changeset
|
69 * Extended testing and resolving the inevitable bugs remains. |
10886
0ece4cf68ea6
[gaim-migrate @ 12584]
Luke Schierer <lschiere@pidgin.im>
parents:
10885
diff
changeset
|
70 * Test each call to make sure it actually works |
0ece4cf68ea6
[gaim-migrate @ 12584]
Luke Schierer <lschiere@pidgin.im>
parents:
10885
diff
changeset
|
71 * Make it work with G_MODULE_BIND_LOCAL |
10885
12083e75627f
[gaim-migrate @ 12583]
Luke Schierer <lschiere@pidgin.im>
parents:
10881
diff
changeset
|
72 }}} |
10891
8175206faa3d
[gaim-migrate @ 12599]
Luke Schierer <lschiere@pidgin.im>
parents:
10890
diff
changeset
|
73 * Prefs {{{ |
12680
134e570b3688
[gaim-migrate @ 15023]
Luke Schierer <lschiere@pidgin.im>
parents:
11451
diff
changeset
|
74 * on upgrade from 1.x, the timestamp preference often gets lost. |
10891
8175206faa3d
[gaim-migrate @ 12599]
Luke Schierer <lschiere@pidgin.im>
parents:
10890
diff
changeset
|
75 }}} |
12928
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
76 * system log {{{ |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
77 * The system log minimally should tell me what _I_ do in gaim. It should (minimally) tell me about |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
78 my accounts and actions. It should thus list |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
79 * gaim start and quit |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
80 * Account connection |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
81 * account disconnection, and reason if caused by error. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
82 * account state changes, IFF we are logging that for buddies. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
83 * This might include the state message(s). |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
84 * This might be done using one or more files. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
85 * historically, the system log has also functioned to log things about buddies that do not relate |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
86 to a specific conversation. While I(luke) do not at all object to this, it could be argued that |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
87 such functionality more properly belongs in a plugin, such as the buddy state notification plugin. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
88 if we continue to implement such functionality, it could include: |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
89 * logging when a buddy signs on, including in some form what account sees that change. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
90 * logging when a buddy signs off, including in some form what account sees that change. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
91 * " " " " goes idle, " " " " " " " " " |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
92 * " " " " goes away, " " " " " " " " " |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
93 * " " " " becomes available, " " " " " " " " " |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
94 * like the logging of my own accounts, this could be done in one or more files. |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
95 * one potential downside of using multiple files is the idea that either the file's contents |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
96 duplicate information contained in the file's location/name, or that we need to manipulate |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
97 the display so as to convey that information to the user from the graphical viewer |
4b5822e48b53
[gaim-migrate @ 15281]
Luke Schierer <lschiere@pidgin.im>
parents:
12680
diff
changeset
|
98 }}} |