From: Thomas Hochstein Date: Mon, 1 Nov 2010 12:16:41 +0000 (+0100) Subject: Documentation: Add TODO. X-Git-Tag: 0.01~5 X-Git-Url: https://code.th-h.de/?p=usenet%2Fnewsstats.git;a=commitdiff_plain;h=147194c1900490a15e933a3a2c79263a65b9f08e Documentation: Add TODO. Add a comprehensive to-do list. Add a reference to README accordingly. Signed-off-by: Thomas Hochstein --- diff --git a/doc/README b/doc/README index 8b32c75..440cd11 100644 --- a/doc/README +++ b/doc/README @@ -75,6 +75,9 @@ Reporting Bugs You can report bugs or feature requests to the author using the bug tracker at . + Please have a look at the TODO list before suggesting + improvements. + More Information This program is maintained using the Git version control system. diff --git a/doc/TODO b/doc/TODO new file mode 100644 index 0000000..444886a --- /dev/null +++ b/doc/TODO @@ -0,0 +1,80 @@ + NewsStats To-Do List + ==================== + +This is a list of planned bug fixes, improvements and enhancements for +NewsStats. + +Bug numbers refer to the Mantis issue tracker at . + +* General + - Improve Documentation + The documentation is rather sparse and could use some improvement. + - Add a test suite + There is currently no kind of test suite or regression tests. Something like + that is badly needed. + +* Additional features + - Add hierarchy information (GroupInfo - Bugs #19 #20 #21 #22 #23 #24 #25 #26) + NewsStats should be able to recognize invalid (i.e. officially not existing) + newsgroups and - optionally - drop them from the list of groups. On the + other hand, it should recognize existing, but empty groups and add them with + a posting count of 0 to its list. + NewsStats should be able to do that for any past month. + It would be nice to make up a kind of hierarchy database from that with + information like description, charter and moderation status. You should be + able to get a list of valid groups for any given month (with a bit of slack + for late creation and deletion), optionally including the previously + mentioned information; and you should be able to get the history of any + group. + - Add other reports + NewsStats should include some other kinds of reports (stats on used clients, + on postings hosts/servers, ...) + +* Individual improvements + + NewsStats.pm + - Add error handling when reading config (Bug #13) + NewsStats should check if all mandatory options are set. Some syntax or + content related checks would be in order. + Some other tests - working database connection, valid database and table + names - would be nice. + + + install/install.pl + - Add / enhance / test error handling + - General tests and optimisations + + + feedlog.pl + - Add / enhance / test error handling + - General tests and optimisations + + + gatherstats.pl + - Fix database updates when re-running (Bug #18) + Change REPLACE to DELETE with subsequent INSERT INTO (erase wrong data, + i.e. non-existent groups) + - Enhance TLH checks to allow for more than one TLH + - Make gatherstats aware of hierarchy lists (Bug #17) + A current (!) list of existing groups (checkgroups or INN active) should + be honored, with optional modifications. Non-existing groups should be + (logged and) dropped, existing groups with no postings should be set to 0. + Hierarchy elements (*.ALL) must be taken into account. + Perhaps invalid group names should also be checked (but what characters + should be considered "invalid"?) + GroupInfo (see above) could be an alternate solution. + - Add gathering of other stats (clients, hosts, ...) + - better modularisation (code reuse for other reports!) + - Add / enhance / test error handling + - General tests and optimisations + + + groupstats.pl + - output: fix formatting - GetMaxLength does not work for special queries + like -l or -b + - beautify output (formats / captions) + - -a: improve code - it doesn't make that much sense to get first/last + month from database just to query that same database with a time period + that equals no time period ... this part of the WHERE clause should be + dropped instead + - change precedence handling of -m/-p/-a: drop -m if -p or -a are present, + drop -p if -a is present + - save report(s) to a file (Bug #27) + - better modularisation (code reuse for other reports!) + - Add / enhance / test error handling + - General tests and optimisations