fixing: assertion failed at transport_api_new.c:1277
[oweals/gnunet.git] / TODO
1 0.9.0pre3:
2 * clean buildbots
3
4 0.9.0:
5 * new webpage:
6   - write chapter on DHT/block [Nate] 
7   - make a NICE download page 
8 * NAT/UPNP: [CG/MW]
9   - write NAT library 
10 * Transport:
11   - UDP fragmentation [MW]
12   - decide how to deal with 'DISABLEV6' option (where does it live?)
13   - integration of new NAT/plugin API with HTTP/HTTPS plugin
14   - fix WLAN plugin for new plugin API (easy)
15   - testing (again)
16 * GNUNET-GTK: [CG]
17   - figure out where in the GUI we should show active upload operations and allow aborts
18   - handle events:
19     + search error
20     + publish error
21 * FS [CG]
22   - consider re-issue GSF_dht_lookup_ after non-DHT reply received 
23   - implement multi-peer FS performance tests + gauger them!
24     + insert
25     + download
26     + search
27 * big code review
28 * Determine RC bugs and fix those  (release should have no known real bugs)
29
30 0.9.1:
31 * TRANSPORT: [MW]
32   - 'TransmitFunction' requires plugins to have "unbounded" queue (or at least 
33     queue of size > 2), might be better to have at MOST one message pending
34     per plugin/target and only send the next one after the continuation was
35     called (or use 'notify_transmit_ready-style API?)
36   - WLAN transport backend [DB]
37   - need to periodically probe latency/transport cost changes & possibly switch transport 
38     (working ATS)
39 * DATASTORE: [CG]
40   - check indexes / SQL for performance
41 * DV: 
42   - proper bandwidth allocation
43   - performance tests
44 * PEERINFO:     
45   - merge multiple HELLOs of the same peer in the transmission queue
46     (theoretically reduces overhead; bounds message queue size)
47   - merge multiple iteration requests over "all" peers in the queue
48     (theoretically reduces overhead; bounds messgae queue size)
49 * STATISTICS:
50   - should use BIO instead of mmap
51 * FS: [CG]
52   - Remove KBlocks in gnunet-unindex (see discussion with Kenneth Almquist on gnunet-devs in 9/2009)
53   - use different queue prioritization for probe-downloads vs. normal downloads
54   - re-implement gnunet-auto-share
55   - implement 'GNUNET_FS_file_information_create_from_directory', avoiding
56     code duplication with gnunet-gtk's similar code (!)
57 * GNUNET-GTK: [CG]
58   - add tool bar
59   - do meaningful update to status line (starting up, peer running, #connections, shutdown, ...)
60   - add progress dialog for 'add_dir_at_iter' scan (can take a while...)
61   - NS list in search dialog should use colors to offset our own namespaces from the others
62   - right-clicking on NS list in search dialog should open menu that allows 
63     * viewing full meta data 
64     * deletion of namespace info
65   - implement unindex operation (use dialog with all indexed files for selection)
66   - finish publish dialog details:
67     + normalize keywords (edit subdialog)
68   - implement download by URI dialog; figure out where to display those downloads!
69   - add combo box to select desired mime type for search
70 * ARM: [CG]
71   - better tracking of which config changes actually need to cause process restarts by ARM.
72   - handle gnunet-arm -k in combination with auto-start magic (what is the right thing here?)
73   - discover dependencies between services
74 * MONKEY: [Safey]
75   - better crash management (attach debugging support, capture and analyze
76     debug output, detect random vs. deterministic crashes)
77   - '-m EMAIL' option for alternative e-mail TO
78   - '-f FILENAME' option to write  report to file instead of e-mail (for testing!)
79
80 0.9.2:
81 * PEERINFO: [NN]
82   - expire 'ancient' HELLOs (those without valid addresses AND that 
83     we have not 'used' (for their public keys) in a while; need a way
84     to track actual 'use')
85   - make sue we also trigger notifications whenever HELLOs expire
86 * NAT:
87   - repeatedly resolve hostname and look up interfaces to determine our own IP
88 * WLAN:
89   - nice signal strength adjustment [MW]
90   - energy cost in ATS [MW]
91 * BLOCKS:
92   - testcase would be nice
93 * STATISTICS:
94   - implement statistics GUI (=> start from gnunet-gtk by button!)
95 * PEERINFO: [NN]
96   - move peerinfo to new GUI (=> start from gnunet-gtk by button!)
97   - extend peer dialog with green-yellow-red connectivity status lights
98   - extend peer dialog with country flags and names
99
100 0.9.3:
101 * SMTP transport backend:
102   - sending (SMTP/SMTPS)
103   - receiving (IMAP/IMAPS/POP?)
104   - rate limiting
105   - improved batching
106   - resource limit integration with ATS
107 * VPN 
108   - "DNS" .gnunet [MW]
109 * MESH:
110   - optimized routes (beyond DHT/DV)