(I will shortly post this as a flog entry)

IMMEDIATE TODO:
- Release Library, release Spider. Keep them running for another week or two so 
I catch any out of memory bugs or similar.
- Release 1248.
- Finish work on USKs and merge it (important for Freetalk). Much progress has 
been made, remaining is tweaks and date-based hints.

OTHER STUFF:

Critical stuff depending on other people:
- Freetalk and WoT. p0s is making good progress, very few FIXMEs left but a 
number of critical bugs in the bug tracker. ASAP these should be made 
semi-official (loadable from plugins page with a caveat), and then official. 
FlogHelper also when WoT is done.
- Windows installer: Zero3 is working on a version that doesn't run as a 
service. This *should* fix the critical release blocking problems we have now. 
He has also done some work on various tweaks e.g. automatic memory detection, 
on a branch; that needs testing, merging and deploying (I can probably help 
somewhat with this).

Important stuff depending on other people:
- Mac installer/system tray: mrsteveman1 has started work on a pure java system 
tray applet which apparently will work on new macs, and should work on linux 
too.
- Hopefully we will have memory autodetection on macs too?

Critical ongoing stuff:
- Why is opennet bootstrapping slow again? It is quite possible this is not 
fixable... :|

Important easy feature work:
- New MHKs tester. Determine whether fork-on-insert makes a big difference, 
whether we still have a big benefit from triple-inserting. Will take some time 
to get results but shouldn't take more than a day or two to implement.
- Even segment splitting. This should help significantly on many files. And 
should be pretty quick, but be careful (e.g. auto-update needs to be inserted 
in old format).

Easy optimisations:
- Datastore optimisations: Increase the size of the Bloom filter so it doesn't 
over-fill so easily. Make sure we reconstruct it when we need to. Test these 
mechanisms. Consider additional bitmaps in datastore to limit disk I/O.
- Don't stripe segment decoding, read everything into RAM, decode entirely in 
RAM.
- Consider various stuff related to memory autodetection e.g. autoconfigure the 
RAM temp buckets limit etc.

Fairly important security work:
- Make it reasonably easy to change the updater keys.
- Move the bookmarks file, and any other potentially incriminating data in fred 
itself, into node.db4o. This is easy.
- Move on-disk plugin data (e.g. library bookmarks) into node.db4o via the 
plugin storage interfaces, for those plugins which a typical end-user will use 
(i.e. skip Spider and related code in Library for now). This should be fairly 
easy.
- Consider basic RSKs, which would be very helpful for some underground 
applications. Basic implementation should be fairly easy.

Important ongoing stuff:
- When we have enough data from the new MHKs tester, we will probably need to 
make further changes to routing, storage etc to improve persistence.
- As part of this effort we will need random-routed tester requests at some 
point. These gather data such as average quantised datastore size. The data 
they gather is separated from any other data so is more or less useless to an 
attacker. Also, a variant will do displaced fetches/inserts, which are useful 
for testing, but also offers an "is my site retrievable" feature.

Larger features that are worth seriously considering:
- Cross-segment FEC. This would make sharing large files over Freenet 
*significantly* more reliable. However it is a moderately big job - weeks not 
days.
- Filesharing database usage optimisation. We do a *lot* of disk I/O at present 
if we have a big queue and this is quite disruptive to people's computers. 
Again, weeks not days, but maybe worth it.

New freenet-ext.jar related:
- New freenet-ext.jar includes native x86-64 FEC. This is a nice optimisation.
- Merge the ATOM filter. This will require JDOM in freenet-ext.jar. Which 
requires a build process for JDOM.

IMPORTANT USABILITY STUFF:

THE top item for usability (apart from Freetalk and new index format which are 
above):
- Auto-backups for node.db4o.

Loads of bugs on the bug tracker.

IMHO top web interface items are:
- Improve the network security level page. Split it up as per the bug filed.
- Checkboxes on the queue page.
- Seriously consider making the bookmarks a menu and using some variant of the 
minimalist theme.
- Cache the top level of the persistent requests queue in RAM so we can always 
generate the queue page. Tell the user when we can't complete an operation 
quickly.

LONG TERM STUFF:

Stuff definitely to postpone:
- Hashes in splitfiles.

Summer of Code:

Distributed indexing: nikotyan (mentored by infinity0) - status report?? I 
haven't seen anything from nikotyan yet.

Filtering: sajack (mentored by nextgens) - Has posted a pull request for 
filtering in the client layer, as well as some HTML changes; will be merged in 
1249. More work to do on infrastructure and then work to do on file formats; 
will be merged as appropriate.

Low-level packet format: zidel (mentored by evanbd) - Status report? Have had 
some contact.

IN SUMMARY:

- Current work.
- Freetalk.
- Windows installer.
- ONGOING: Opennet bootstrapping.
- Easy features.
- Easy optimisations.
- node.db4o auto-backups.
- Usability work.
- CONSIDER: Fairly important security work.
- CONSIDER: Cross-segment FEC.
- CONSIDER: Filesharing database optimisations.
- CONSIDER: New freenet-ext.jar.
- General bugfixing. E.g. leaking RAM temp buckets.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20100607/eef75808/attachment.pgp>

Reply via email to