aboutsummaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'TODO')
-rw-r--r--TODO117
1 files changed, 39 insertions, 78 deletions
diff --git a/TODO b/TODO
index 0cf8c7829..c3a81fe3a 100644
--- a/TODO
+++ b/TODO
@@ -1,37 +1,17 @@
10.9.0pre2: 10.9.0pre2:
2* BIG CORE REFACTORING: 2* BIG CORE REFACTORING:
3 - fix transport service API (ATS!) 3 - fix transport plugin API (ATS!) [mw]
4 - fix transport plugin API (ATS!) 4 - fix DV [nate]
5 - actually transmit ATS data through core API
6 - fix FS 'latency' ATS function
7 - fix DV
8* Integration test: 5* Integration test:
9 - test bootstrapping via hostlist + transport/core/dht connect 6 - test bootstrapping via hostlist + transport/core/dht connect
10
110.9.0pre3:
12* Determine RC bugs and fix those (release should have no known real bugs)
13* ARM: [CG/Safey]
14 - start_forwarding should not use 'listen_info->service_addr' for connecting since that one can be 0.0.0.0;
15 if it is, we need to use (IPv4 & IPv6) loopback [LRN]
16 - better tracking of which config changes actually need to cause process restarts by ARM.
17 - handle gnunet-arm -k in combination with auto-start magic (what is the right thing here?)
18 - discover dependencies between services
19* CORE: 7* CORE:
20 - provide 'reliable' P2P transmission API and queueing infrastructure
21 - Jun 27 11:51:54 core-7670 ERROR Assertion failed at gnunet-service-core.c:3616. 8 - Jun 27 11:51:54 core-7670 ERROR Assertion failed at gnunet-service-core.c:3616.
22 (transport notified us that we connected to ourselves!!!; can we still reproduce this?) 9 (transport notified us that we connected to ourselves!!!; can we still reproduce this?)
23* DHT: [Nate] 10 => Also, we may want to issue a 'connect to ourselves' automatically on start of
24 - track paths content travels (PUT, reply-to-get) in messages, 11 core_api AND allow messages to self [CG/phillip]
25 pass to client (client API & protocol already support this!) 12
26* DATASTORE: 130.9.0pre3:
27 - GNUNET_DATASTORE_cancel method not tested 14* TRANSPORT: [MW]
28* TESTING: [Nate]
29 - test basic peer re-configure
30* TOPOLOGY: [Nate]
31 - needs more testing (especially F2F topology) & transport blacklisting
32* TRANSPORT-TCP [MW]:
33 - should use hash map to look up sessions
34* TRANSPORT:
35 - [#1585, #1583, #1582] transport-level disconnect (i.e. TCP) does not cause core-level 15 - [#1585, #1583, #1582] transport-level disconnect (i.e. TCP) does not cause core-level
36 disconnect in a timely fashion (waits for connection timeout); 16 disconnect in a timely fashion (waits for connection timeout);
37 need to figure a way to make it near-instant in those cases 17 need to figure a way to make it near-instant in those cases
@@ -41,73 +21,44 @@
41 likely good enough until we get ATS going; still should be tested... 21 likely good enough until we get ATS going; still should be tested...
42 => "peers connected (transport)" now instantly goes to ZERO (core statistic), 22 => "peers connected (transport)" now instantly goes to ZERO (core statistic),
43 but "established sessions" stays up... 23 but "established sessions" stays up...
44* NAT/UPNP: [Milan] 24* NAT/UPNP: [Milan / Ayush / MW]
45 - finalize API design
46 - [#1609] code clean up 25 - [#1609] code clean up
47 - testing 26 - testing
48 - integration with transport service 27 - integration with transport service:
49 - also do UPnP-based (external) IP detection 28 + test TCP
50 (Note: build library always, build UPnP service when dependencies like libxml2 are available) 29 + implement UDP, HTTP/HTTPS
30* DHT: [Nate]
31 - track paths content travels (PUT, reply-to-get) in messages,
32 pass to client (client API & protocol already support this!)
51* FS: [CG] 33* FS: [CG]
52 - library:
53 + reconstruct IBLOCKS from DBLOCKS if possible (during download; see FIXME in fs_download)
54 + add support for pushing "already seen" search results to FS service for bloomfilter
55 + use different 'priority' for probe downloads vs. normal downloads
56 - implement multi-peer FS performance tests 34 - implement multi-peer FS performance tests
57 + insert 35 + insert
58 + download 36 + download
59 + search 37 + search
60 + unindex 38* GNUNET-GTK: [CG]
61 - implement anonymity level > 1 39 - figure out where in the GUI we should show active upload operations and allow aborts
62 - re-implement gnunet-auto-share 40 - handle events:
63* GNUNET-GTK:
64 - finish publish dialog details:
65 + normalize keywords (edit subdialog)
66 - implement download by URI dialog; figure out where to display those downloads!
67 - figure out where in the GUI we should show active uploads/unindex operations and allow aborts
68 - implement unindex operation (use dialog with all indexed files for selection)
69 - events:
70 + search error 41 + search error
71 + publish error 42 + publish error
72 + unindex error 43* Determine RC bugs and fix those (release should have no known real bugs)
73* MONKEY: [Safey]
74 - better crash management (attach debugging support, capture and analyze
75 debug output, detect random vs. deterministic crashes)
76 - '-m EMAIL' option for alternative e-mail TO
77 - '-f FILENAME' option to write report to file instead of e-mail (for testing!)
78 44
790.9.0: 450.9.0:
80* Determine RC bugs and fix those (release should have no known real bugs) 46* new webpage:
81* UTIL:
82 - only connect() sockets that are ready (select()) [Nils]
83 [On W32, we need to select after calling socket before doing connect etc.]
84* new webpage: [BL]
85 - convert documentation pages to books
86 - update books (especially for developers) 47 - update books (especially for developers)
87 - make a NICE download page and figure out how to enable developers to publish TGZs nicely 48 - make a NICE download page and figure out how to enable developers to publish TGZs nicely
88 - port "contact" page 49 - port "contact" page
89 - add content type for "todo" items
90* TBENCH: [MW]
91 - good to have for transport/DV evaluation!
92* TRACEKIT: [MW]
93 - good to have for DHT evaluation!
94* DHT: [Nate]
95 - performance tests
96* BLOCK:
97 - more testing (KBlock, SBlock, NBlock)
98* FS migration: 50* FS migration:
99 - exclude content that will "soon" expire from migration? 51 - exclude content that will "soon" expire from migration
100 - exclude content with zero-anonymity from gap migration?
101 - make migration data rate & datastore IO-rate configurable 52 - make migration data rate & datastore IO-rate configurable
102 - exclude certain peers as targets (based on hash values) in each 53 - exclude certain peers as targets (based on hash values) in each
103 iteration => same peer can only be picked every n-th iteration 54 iteration => same peer can only be picked every n-th iteration
104 for the same content => fewer duplicate sending! 55 for the same content => fewer duplicate sending!
105 56* big code review
57* Determine RC bugs and fix those (release should have no known real bugs)
106 58
1070.9.1: 590.9.1:
108* TRANSPORT: [MW] 60* TRANSPORT: [MW]
109 - WiFi transport backend [DB] 61 - WiFi transport backend [DB]
110 - implement gnunet-transport (transport configurator / tester)
111 - Implement method of learning our external addresses from 62 - Implement method of learning our external addresses from
112 other peers; need some kind of threshold-based 63 other peers; need some kind of threshold-based
113 scheme, limiting both the total number of addresses that we accept 64 scheme, limiting both the total number of addresses that we accept
@@ -124,8 +75,7 @@
124 => If MiM attacker uses vetoed address, blacklist the specific IP for 75 => If MiM attacker uses vetoed address, blacklist the specific IP for
125 the presumed neighbour! 76 the presumed neighbour!
126 - need to periodically probe latency/transport cost changes & possibly switch transport 77 - need to periodically probe latency/transport cost changes & possibly switch transport
127 - should use hash map to look up Neighbours (service AND plugins!) 78* DV: [Nate?]
128* DV: [Nate]
129 - proper bandwidth allocation 79 - proper bandwidth allocation
130 - performance tests 80 - performance tests
131* PEERINFO: 81* PEERINFO:
@@ -133,11 +83,12 @@
133 (theoretically reduces overhead; bounds message queue size) 83 (theoretically reduces overhead; bounds message queue size)
134 - merge multiple iteration requests over "all" peers in the queue 84 - merge multiple iteration requests over "all" peers in the queue
135 (theoretically reduces overhead; bounds messgae queue size) 85 (theoretically reduces overhead; bounds messgae queue size)
136* STATISTICS: [CG] 86* STATISTICS:
137 - should use BIO instead of mmap 87 - should use BIO instead of mmap
138* FS: [CG] 88* FS: [CG]
139 - Remove KBlocks in gnunet-unindex (see discussion with Kenneth Almquist on gnunet-devs in 9/2009) 89 - Remove KBlocks in gnunet-unindex (see discussion with Kenneth Almquist on gnunet-devs in 9/2009)
140 - use different queue prioritization for probe-downloads vs. normal downloads 90 - use different queue prioritization for probe-downloads vs. normal downloads
91 - re-implement gnunet-auto-share
141* UTIL: [CG] 92* UTIL: [CG]
142 - allow limiting UNIX socket access by UID/GID 93 - allow limiting UNIX socket access by UID/GID
143* GNUNET-GTK: [CG] 94* GNUNET-GTK: [CG]
@@ -148,6 +99,19 @@
148 - right-clicking on NS list in search dialog should open menu that allows 99 - right-clicking on NS list in search dialog should open menu that allows
149 * viewing full meta data 100 * viewing full meta data
150 * deletion of namespace info 101 * deletion of namespace info
102 - implement unindex operation (use dialog with all indexed files for selection)
103 - finish publish dialog details:
104 + normalize keywords (edit subdialog)
105 - implement download by URI dialog; figure out where to display those downloads!
106* ARM: [CG/Safey]
107 - better tracking of which config changes actually need to cause process restarts by ARM.
108 - handle gnunet-arm -k in combination with auto-start magic (what is the right thing here?)
109 - discover dependencies between services
110* MONKEY: [Safey]
111 - better crash management (attach debugging support, capture and analyze
112 debug output, detect random vs. deterministic crashes)
113 - '-m EMAIL' option for alternative e-mail TO
114 - '-f FILENAME' option to write report to file instead of e-mail (for testing!)
151 115
1520.9.2: 1160.9.2:
153* PEERINFO: [NN] 117* PEERINFO: [NN]
@@ -167,7 +131,7 @@
167 - testcase would be nice 131 - testcase would be nice
168 - generic block support for DHT 132 - generic block support for DHT
169* STATISTICS: 133* STATISTICS:
170 - test notification-based statistics API [LT] 134 - test notification-based statistics API
171 - implement statistics GUI (=> start from gnunet-gtk by button!) 135 - implement statistics GUI (=> start from gnunet-gtk by button!)
172* PEERINFO: [NN] 136* PEERINFO: [NN]
173 - move peerinfo to new GUI (=> start from gnunet-gtk by button!) 137 - move peerinfo to new GUI (=> start from gnunet-gtk by button!)
@@ -182,10 +146,7 @@
182 - improved batching 146 - improved batching
183 - resource limit integration with ATS 147 - resource limit integration with ATS
184* VPN [PT] 148* VPN [PT]
185 - DNS hijacking
186 - DNS exit
187 - TCP entry/exit 149 - TCP entry/exit
188 - UDP entry/exit
189 - internal services 150 - internal services
190 - integration with DHT routing 151 - integration with DHT routing
191 - optimized routes (beyond DHT/DV) 152 - optimized routes (beyond DHT/DV)