annotate TODO @ 180:09ca6eb5c7ff noffle

[svn] * TODO,src/client.c,src/client.h,src/fetch.c,src/fetch.h,src/noffle.c: Improve error checking during fetches. A fetch is now aborted immediately if the connection times out or if an unexpected response arrives. This should fix problems with articles appearing in the wrong group, and possibly other mysterious happenings.
author bears
date Wed, 09 May 2001 12:33:43 +0100
parents 7ba337dafb2c
children fed1334d766b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
1 -------------------------------------------------------------------------------
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
2 NOFFLE Todolist
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
3 -------------------------------------------------------------------------------
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
4
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
5 Urgent
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
6 ------
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
7
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
8 * Has Client_connect resource leaks if it fails?
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
9
166
1d92abe57427 [svn] Make debug logging an option in the config file
enz
parents: 163
diff changeset
10 * Make debug logging an option in the config file instead of using
1d92abe57427 [svn] Make debug logging an option in the config file
enz
parents: 163
diff changeset
11 a compile time option. This makes it more comfortable for users helping on
1d92abe57427 [svn] Make debug logging an option in the config file
enz
parents: 163
diff changeset
12 bug searches to switch on debug logging temporarily.
1d92abe57427 [svn] Make debug logging an option in the config file
enz
parents: 163
diff changeset
13
42
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
14 Later
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
15 -----
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
16
121
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
17 * Improve performance of group database. Using GDBM is a bad choice,
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
18 better use a btree from the Berkeley db library in libc.
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
19 This will be a good time for a redesign of the group.h interface
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
20 with respect to process concurrency if the simple global locking strategy
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
21 will be changed in the future.
a0a96e1021c3 [svn] Performance of group database
enz
parents: 45
diff changeset
22
42
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
23 * Add "hostname" config option for setting the FQHN in generated message IDs.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
24
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
25 * Read timeout when running as server and automatically close if client
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
26 does not send data for a longer time.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
27
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
28 * Implement simple filter using popen or fifos.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
29
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
30 * Make compatible to latest NNTP draft.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
31
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
32 * Improve speed of online mode: Keep connection to server open for a while
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
33
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
34 * Check all in
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
35 http://mars.superlink.net/user/tal/writings/news-software-authors.html
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
36 (Use NOV library? Use inews for validating posted articles? ... )
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
37
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
38 * Store requested articles by group + number. This would allow to create
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
39 pseudo-groups (like <groupname>.requested) that contained only fully
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
40 downloaded articles in overview mode (very nice and clever
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
41 idea sent in by a user, it would make using overview mode much easier).
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
42 Second advantage: Noffle would work with servers that have retrieving
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
43 articles by message-id disabled.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
44
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
45 * Expire should clean up empty request/outgoing directories, so they will not
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
46 exists forever after a server change.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
47
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
48 * Do not log program abortion due to SIGINT, if no inconsistency can occur,
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
49 (e.g. when calling 'noffle -d' to a pipe and next program terminates or
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
50 pressing ^C).
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
51
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
52 * Improve www page and documentation.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
53
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
54 * Keeping the content list for several lock/unlock times could lead to
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
55 inconsistent results, because content list is maybe modified by
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
56 pseudo articles. Check this!
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
57
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
58 * Optimize NEWGROUPS (extra list?)
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
59
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
60 * Add noffle query option for checking all groups, if they are still
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
61 available at the remote server(s) and delete them otherwise.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
62
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
63 * In online mode, retrieve full article header from remote server if client
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
64 sends a HEAD command. Presently, only the header lines from the overview
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
65 are returned and the article is only retrieved on an ARTICLE or BODY command.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
66 The reason for this was that some readers (like pine) retrieve the group
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
67 overview by sending lots of HEAD commands and their performance would badly
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
68 suffer. On the other hand, some readers (like slrn) cache the header from
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
69 a HEAD command, even if a following ARTICLE command gets more header lines,
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
70 so that not all header lines are available when reading news in online mode,
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
71 before the next start of the reader. But some header lines (e.g. Reply-To)
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
72 are important.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
73 Maybe make the behaviour configurable.
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
74
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
75
163
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
76 User-Wishlist
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
77 -------------
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
78
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
79 * Group requesting: I'd like noffle mantain a whitelist of users who can
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
80 request new subscriptions: for instance, if user mardy wants noffle to
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
81 fetch headers of it.comp.os.linux, he could just post a message to
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
82 noffle.control with something like this in the body:
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
83 subscribe-over: it.comp.os.linux
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
84
3d243292468d [svn] Added user wishlist section and first entry by Alberto Mardegan
enz
parents: 161
diff changeset
85
42
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
86 Some day far away
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
87 -----------------
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
88
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
89 * Understand supersedes header (useful for reading news.answers group)
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
90
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
91 * Get and execute cancel messages (read control.cancel, but use xpat to get
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
92 only cancels for groups in fetchlist). Seems to be expensive (20000 headers
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
93 a day, takes the remote server to search through)
2467ff423c15 [svn] * AUTHORS.html, CHANGELOG.html, COPYING.html, README.html, FAQ.html,
uh1763
parents:
diff changeset
94