TODO 9.79 KB
Newer Older
Per Cederqvist's avatar
Per Cederqvist committed
1
2
3
4
5
6
7
8
This file attempts to list the things that need to be done on this
server.

Before the next release
=======================

These are show-stoppers that prevent a new release.

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
* Newline terminates requests.  Check that a wording similar to that
  in 1509862 is present in Protocol-A.texi.

* An asynchronous message is sent to everybody when a secret
  conference changes its name.  That is an unacceptable leak of
  sensitive information. (990788, 2804846)

* Check change-what-am-i-doing very carefully.  According to 915974
  and 916257 there may be a bug in it, but that is pure speculation.

* disconnect(0) should disconnect the current session. (806239)

* Should we really retain deleted aux-items indefinitely? (3490203)

* Should the error message be named conference-zero or
  zero-conference? (Protocol-A.texi)

David Byers's avatar
David Byers committed
26
27
28
29
* Remove the man pages for lyskomd.

* Add the dbck reference to the lyskomd manual. Remove the man pages.

30
31
32
33
* Should the conference supervisor be able to set the secret bit of a
  membership type? Probably yes.

* Missing test cases in 03.exp
David Byers's avatar
David Byers committed
34
35

* 89=create-person should probably not do an automatic login.  (Wasn't
36
37
  this discussed in KOM?  Yes it was, in 3267591, but there are no
  surviving comments.  Did anybody object? /ceder)
David Byers's avatar
David Byers committed
38
39
40

    I think the current behavior is so deeply entrenched that we
    shouldn't change the it. Leave it alone.
Per Cederqvist's avatar
Per Cederqvist committed
41

42
43
    I still think it would be better to remove the automatic login,
    but you might be able to persuade me differently.  /ceder
Per Cederqvist's avatar
Per Cederqvist committed
44
45
46

* Test the code for memory leaks.

David Byers's avatar
David Byers committed
47
* Improve the file format for local-to-global.c.
Per Cederqvist's avatar
Per Cederqvist committed
48

Per Cederqvist's avatar
Per Cederqvist committed
49
50
* Improve the file format for local-to-global.c.  Warning: this will
  cause an incompatible change in the database format.
Per Cederqvist's avatar
Per Cederqvist committed
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71

* Merge all changes done to prot-A.txt into Protocol-A.texi.

* Document 103=local_to_global

* Document 104=map_created_texts

* Use libisc 1.0.

* Update/rewrite README.

* Fix aux-item 13, 14 and 15 according to 3228006 and 3228045.

* Fix the node structure of Protocol-A.texi (3228867).

* Document aux-items for mail import/export. (3229403)

* Check that Async 13 is sent at the proper times (see 79208).

* Integrate doc/Bugrapporter into this document.

Per Cederqvist's avatar
Per Cederqvist committed
72
73
* The protocol revision section of Protocol-A.info is incomplete.

David Byers's avatar
David Byers committed
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
* Check that texinfo.tex is included in a proper place by automake.




* Fix dbck so that it can repair Member<->Membership inconsistencies.

  DONE. Needs to be tested though.

* Implement a test suite that tests all calls successfully at least
  once.

  RESOLVED.

* Should the error message be named conference-zero or
  zero-conference? (Protocol-A.texi)

  RESOLVED: conference-zero

* 52=get-unread-confs should ignore conferences where you are a
  passive member.

    DONE.

Per Cederqvist's avatar
Per Cederqvist committed
98
99
* ceder thinks that the sender of a BCC recipient group should be
  allowed to see it, so that the sender can see when the recipient has
Per Cederqvist's avatar
Per Cederqvist committed
100
  read the text. (3380375, 3381048)
Per Cederqvist's avatar
Per Cederqvist committed
101

David Byers's avatar
David Byers committed
102
103
  RESOLVED.

Per Cederqvist's avatar
Per Cederqvist committed
104
* ceder suspects that a BCC recipient group should be visible to anybody
Per Cederqvist's avatar
Per Cederqvist committed
105
106
107
  that may become a member of the BCC recipient (as opposed to all
  members and all administrators), lest everybody starts to be passive
  members of every conference just to be able to see BCC recipients.
Per Cederqvist's avatar
Per Cederqvist committed
108
  (3380375, 3381048)
Per Cederqvist's avatar
Per Cederqvist committed
109

David Byers's avatar
David Byers committed
110
111
  RESOLVED.

Per Cederqvist's avatar
Per Cederqvist committed
112

113

Per Cederqvist's avatar
Per Cederqvist committed
114
115
116
117
118
119
As soon as possible

High priority, but they can wait until after the next release.

* Proof-read Protocol-A.texi.

120
121
122
123
124
125
126
* Consider implementing aux-infos that are the "reverse" of a Mark, of
  the aux-info faq-text, of a presentation, et c.  Once that is done,
  the mark_text field of the Text_stat can be removed.  More
  importantly, it can easily be seen which conference a text is a
  presentation for (et c).  We also get more redundancy that dbck can
  use. (3490225)

127
128
129
130
131
132
* Consider implementing an aux-info that causes comments of a text, or
  of all texts written by the author, to get a bcc-recpt to the
  authors letterbox.  Make sure that this bcc-recpt is not the only
  thing that makes it possible for the person to read the
  text. (3381984, 3382009) 

Per Cederqvist's avatar
Per Cederqvist committed
133
134
135
136
* Define and implement asynchronous messages for cache inconsitency.

* Add a checksum on each object in the database.

Per Cederqvist's avatar
Per Cederqvist committed
137
138
139
140
141
142
* The text-mass file should contain some redundancy.  At a minimum, it
  should store the text number and text length of each text, so that
  there is absolutely no risk that the wrong text is displayed.  (That
  has acutally happened more than once due to faulty hardware or
  operating systems--we should do better.)

Per Cederqvist's avatar
Per Cederqvist committed
143
144
145
* Add an improved internal structure for the text_stat list to avoid a
  large fixed-size array.

146
147
* Document the mark bits. (6390, 24358, 24444, 40876, 42356, 45110,
  1111605, 2687219)
Per Cederqvist's avatar
Per Cederqvist committed
148
149
150
151
152
153
154
155
156
157

* Document the user area.

* Fix case errors in type names etc (3267160).

Nice to have/do
===============

Lower priority than the above-mentioned things.

158
159
160
161
162
163
164
* Performance enhancement: Don't emit asynchronous messages
  immediately.  Attempt to write, say, 4 KB of data at a time to the
  clients.  The server currently makes a lot of small writes.

* Performance enhancement: Don't call gettimeofday() more than once
  per atomic call.

Per Cederqvist's avatar
Per Cederqvist committed
165
166
167
* Introduced aux-items that states that "this text is the
  presentation/motd of conference so-and-so".

Per Cederqvist's avatar
Per Cederqvist committed
168
169
170
171
172
173
174
175
176
177
178
179
180
181
* Run the garb at 02:00 (configurable) rather than every 24 hours.

* get-n-unread as per 1111652.

* Some generalized way to query the server for (unread) texts with a
  certain aux-item set. (see 21415 for motivation)

* Write a "lyskomd hackers guide" (requested in 24684).

* Tree-structure for the conferences (41768).

* Don't include so much information in the Person and Conference
  structures internally in the server.  A Conference is (probably)
  used much more often than the large internal lists within it.
David Byers's avatar
David Byers committed
182

183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
* Create a "server hackers guide" and move the contents of
  doc/server.extend (and several other files in the doc directory) to
  it.  The "server hackers guide" should probably be an appendix of
  doc/lyskomd.texi.

* Improve the data base.  Text 250010 contains some ideas for a grand
  redesign.

* A better way to "list active conferences" than to get the conference
  status of every conference and sort them on the last-written field.
  According to 310351 PortaKOM had the command "Lista aktiva möten".
  We should be as good as PortaKOM in every aspect.  But see text
  3604479 which outlines a way to implement this in a client in a
  reasonably efficient way without support from the server.

* Stack-based slow searching?  See 1013917 for some ideas.

* 103=local-to-global and 34=get-map should be able to return more
  information when applied to e. g. letterboxes.  It should return
  information about all texts that ACTPERS is allowed to read.  See
  678026 and 678411 for more thoughts about this.

* Re-run the test in 775202 and see if anything can be improved.

* New version of get-text-stat (et al) where the misc-info-list is
  removed.  (1108039).

* Design and implement a few new calls so that client writers don't
  have to think about Local_text_no.  We need something along the
  lines of these calls:

    void mark_as_read(Text_no);
    Text_no first_unread(Pers_no, Conf_no);  ! (but see 1593002)

* Text parts, so that we can have both audio and text.

* Keyword support on texts.

* Keyword support on conferences (1112142, 1112200).

* Version numbering on calls? (1441352)

* Add a separate subject field (a short string) to the Text-stat.
  Problems: should the subject be restricted to ISO 8859-1?

* A possibility to ask for conferences created after a certain
  date. (1622840).  Dubious value; the new conferences should have a
  presentation.

* A documented way to store the prefered language in the common area
  of the user area (1632323).

* Check the rules for when you are allowed to change a recpt to a cc-recpt.
  (1901530, 2329667, 2329682).  (This may already be implemented -- check it.)

* It would be nice if an author could be notified whenever a text
  written by him was commented.  3381984 and 3382009 outlines a way to
  implement that using a special aux-info and automatic adding of a
  bcc-recpt by the server to the new comment.
David Byers's avatar
David Byers committed
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311

Fixed
=====

* Mention explicitly in the protocol spec that the cient cannot send
  "0 *" to the server.

    Already there.

* Fix dbck so that it can repair Member<->Membership inconsistencies.

    Done.

* Protocol-A.texi contains both INT32 and INTEGER. (3228850)

    Changed all INTEGER to INT32

* Protocol-A.texi uses mailbox and letterbox interchangeably.  Use one
  term only, or at least state explicitly that they are the same
  thing.

    Letterbox used in structures, mailbox in text. It's safe to
    replace all mailboxes with letterbox.

* String-Size is used but not defined in Protocol-A.texi. (3228850)

    Use INT32 instead

* Session-No is defined twice in Protocol-A.texi. (3228850)

    Removed second definition.

* Check the unused static function regarding aux-infos.

    Done.

* ceder thinks that the sender of a BCC recipient group should be
  allowed to see it, so that the sender can see when the recipient has
  read the text. (3380375, 3381048)

    Done.

* ceder thinks that a BCC recipient group should be visible to anybody
  that may become a member of the BCC recipient (as opposed to all
  members and all administrators), lest everybody starts to be passive
  members of every conference just to be able to see BCC recipients.
  (3380375, 3381048)

    Done.

* The redirect aux-info needs more documentation.  See FIXME comment
  in Protocol-A.texi.

    Fixed.

* Validation of aux-items.

    Regexp validation done.

* Ability to have a callback function when an aux-item is created,
  removed, changed or resurrected.  (This is according to 3053346
  critical.  Why?)

    Done.

* The Membership that is returned by 98=query-read-texts should
  include the position of the Membership.

    Whatever. Done.

David Byers's avatar
David Byers committed
312
313
314
315
316
317
318
319
320
* Write a Texinfo manual for lyskomd based on the man pages.  

    Done. Whee!


* The redirect aux-info needs more documentation.  See FIXME comment
  in Protocol-A.texi.

    Done.