X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=TODO;h=f1044716992ab939fcadb3e1de06fa859bfd2e0f;hb=1152a709e8783e8c0c879b7f407d26ea141a1e4e;hp=996907c00f4a79ad34e1f9f4650fa1f0cf3feb5b;hpb=5b3155d781dd02cd930458d9f139f7493532a045;p=oweals%2Fgnunet.git diff --git a/TODO b/TODO index 996907c00..f10447169 100644 --- a/TODO +++ b/TODO @@ -1,49 +1,10 @@ -0.9.0pre0 [April]: -* CORE: [CG] - - "Forcing disconnect of XXX due to inactivity" -- can happen every few MS!? - (disconnect does not really succeed, or what?) - Also, core does not seem to actually decrement the number of active - sessions even if no connections exist for a while! (likely related...) - - transport reports bw quota violations on slow systems (core or - transport issue? tracking issue or actual violation?) -* DATASTORE: [CG] - - utilization can (easily, restart?) go out of control (very large), causing - content expiration job to go crazy and delete everything! -* FS: [CG] - - on some systems, keyword search does not find locally published content - (need testcase of command-line tools! - also good to cover getopt API!) - [could be related to datastore issue above!] - - 2-peer download is still too slow (why? testcases fail on slow systems!) -* WWW: - - Get IPv6 hooked up [AK, after April 12th] - - change DNS [CG, need DNS] - 0.9.0pre1: * PEERINFO: - trust: need *fast* way to check/update trust in peers - (async peerinfo would not be right; certainly not with the - current API) + (async peerinfo would not be right; certainly not with the current API) * UTIL: - - scheduler should change OS process priority based on task priority; - should make better use of task priorities in general - only connect() sockets that are ready (select()) [Nils] - [On W32, we need to select after calling socket before - doing connect etc.] -* HELLO: [CG] - - need function to test "equivalency" of HELLOs (or integrate with "merge"?); use in PEERINFO -* SETUP: - - design & implement new setup tool -* TBENCH: [MW] - - good to have for transport/DV evaluation! -* DV: [Nate] - - write DV API - - implement DV service - - implement DV library - - implement DV transport plugin - - implement testcases - - implement performance tests -* STATISTICS: - - does not seem to work with timeouts (especially if service is not running) + [On W32, we need to select after calling socket before doing connect etc.] * TOPOLOGY: - needs more testing (especially F2F topology) - needs to re-try connecting after disconnect (currently, it @@ -74,6 +35,9 @@ more balanced load) - check if new HELLO learned is different from old HELLO before resetting entire state! +* DATASTORE: + - API lacks cancellation methods (needed? or is disconnect enough?) + - may also want to integrate request queuing here instead of gnunet-service-fs_drq.c * FS: [CG] - support recursive download even if filename is NULL and we hence do not generate files on disk (use temp_filename) @@ -93,15 +57,32 @@ - [gnunet-service-fs.c:700]: member 'ConnectedPeer::last_client_replies_woff' is never used - GAP improvements: + active reply route caching design & implementation of service; gap extension! +* TBENCH: [MW] + - good to have for transport/DV evaluation! +* DV: [Nate] + - write DV API (need to move declarations from dv_api.c to gnunet_dv_service.h!) + - implement DV service + - implement DV library (looks done) + - implement DV transport plugin + - implement testcases + - implement performance tests * GNUNET-GTK: - - how to integrate scheduler with GTK event loop!? + - use g_main_context_set_poll_func to integrate GTK with GNUnet Scheduler!? (YUCK!) + - OR: add scheduler API to enable integration with GTK main loop instead of doing our own select + - use g_main_context_pending, g_main_context_query / g_main_context_check / g_main_context_dispatch + and NEVER g_main_loop_run (can this be done? might be the clean way to do this! But how + to integrate this with "gtk_main"? Docu says: + "It's OK to use the GLib main loop directly instead of gtk_main(), though it involves + slightly more typing. See GMainLoop in the GLib documentation." + => so maybe it "just works"? +* SETUP: + - design & implement new setup tool 0.9.0pre2: * TRACEKIT: [MW] - good to have for DV/DHT evaluation! * DHT: [Nate] - - implement DHT service (needs DV, DATACACHE) - - implement DHT library + - implement DHT service - implement testcases - implement performance tests * TRANSPORT: @@ -224,6 +205,9 @@ Optimizations: * HOSTLIST: - 'server' uses 'GNUNET_PEERINFO_iterate', should probably switch to notification API (for more instant / up-to-date hostlists at lower cost) [OPTIMIZATION] +* DATASTORE (?): + - check for duplicates on insertion (currently, same content is frequently + stored again [seen with KBLOCKS and SBLOCKS]!) Minor features: * TCP: @@ -235,3 +219,4 @@ Minor features: - add stats (# bytes available, # bytes used, # PUTs, # GETs, # GETs satisfied) * FS: - support inline data in directories for recursive file downloads (fs_download) +