Mercurial > noffle
view TODO @ 197:24d4cd032da5 noffle
[svn] * AUTHORS,INSTALL,NEWS,README,TODO,docs/NOTES,src/client.c,src/protocol.c,
src/protocol.h,src/server.c: Merge with latest 1.0 branch. I do not
intend to do any further merges from the 1.0 branch; future changes to
1.0 should be carried over by hand if necessary.
* src/configfile.c,src/content.c,src/control.c,src/database.c,
src/dynamicstring.c,src/fetch.c,src/filter.c,src/group.c,
src/itemlist.c,src/lock.c,src/outgoing.c,src/over.c,src/post.c,
src/pseudo.c,src/request.c,src/util.c: Minor includes rearrangement.
author | bears |
---|---|
date | Wed, 31 Oct 2001 11:44:53 +0000 |
parents | fed1334d766b |
children | eb2589384836 |
line wrap: on
line source
------------------------------------------------------------------------------- NOFFLE Todolist ------------------------------------------------------------------------------- Urgent ------ Later ----- * Improve performance of group database. Using GDBM is a bad choice, better use a btree from the Berkeley db library in libc. This will be a good time for a redesign of the group.h interface with respect to process concurrency if the simple global locking strategy will be changed in the future. * Read timeout when running as server and automatically close if client does not send data for a longer time. * Implement simple filter using popen or fifos. * Make compatible to latest NNTP draft. * Improve speed of online mode: Keep connection to server open for a while * Check all in http://mars.superlink.net/user/tal/writings/news-software-authors.html (Use NOV library? Use inews for validating posted articles? ... ) * Store requested articles by group + number. This would allow to create pseudo-groups (like <groupname>.requested) that contained only fully downloaded articles in overview mode (very nice and clever idea sent in by a user, it would make using overview mode much easier). Second advantage: Noffle would work with servers that have retrieving articles by message-id disabled. * Expire should clean up empty request/outgoing directories, so they will not exists forever after a server change. * Do not log program abortion due to SIGINT, if no inconsistency can occur, (e.g. when calling 'noffle -d' to a pipe and next program terminates or pressing ^C). * Improve www page and documentation. * Keeping the content list for several lock/unlock times could lead to inconsistent results, because content list is maybe modified by pseudo articles. Check this! * Optimize NEWGROUPS (extra list?) * Add noffle query option for checking all groups, if they are still available at the remote server(s) and delete them otherwise. * In online mode, retrieve full article header from remote server if client sends a HEAD command. Presently, only the header lines from the overview are returned and the article is only retrieved on an ARTICLE or BODY command. The reason for this was that some readers (like pine) retrieve the group overview by sending lots of HEAD commands and their performance would badly suffer. On the other hand, some readers (like slrn) cache the header from a HEAD command, even if a following ARTICLE command gets more header lines, so that not all header lines are available when reading news in online mode, before the next start of the reader. But some header lines (e.g. Reply-To) are important. Maybe make the behaviour configurable. User-Wishlist ------------- * Group requesting: I'd like noffle mantain a whitelist of users who can request new subscriptions: for instance, if user mardy wants noffle to fetch headers of it.comp.os.linux, he could just post a message to noffle.control with something like this in the body: subscribe-over: it.comp.os.linux Some day far away ----------------- * Extend execution of cancel messages to those retrieved from the upstream server (e.g. by subscribing to control.cancel - only fetching cancels for groups in the fetchlist would be a good idea, volume in control.cancel).