comparison TODO @ 4535:2cfd5d48d787

Added a TODO (mostly my own semi-organized ramblings, feel free to add your own.)
author Matti Hamalainen <ccr@tnsp.org>
date Sat, 10 May 2008 21:30:24 +0300
parents
children b0def426de68 9fb29ee322d3
comparison
equal deleted inserted replaced
4534:8e8a82c9311a 4535:2cfd5d48d787
1 Long-term "TODO"
2 ================
3 - mime-types support:
4 * there is already code for mime support, but I think it may not be
5 sufficient as it is designed for input plugins only --
6 also playlist containers etc. need this (IMHO)
7
8 * might be nicer to have the type registrations in plugin struct
9 instead of a separate function, a'la vfs_extensions.
10
11
12 - document the different APIs via Doxygen
13
14
15 - unified debugging/message system, for core and plugins
16 * something like glib logging system, with logging levels
17 * hardcoded "debugging" levels and/or macro-wrappers that would
18 disable superfluous debugging output compile-time.
19 --- being planned by ccr
20
21
22 - audacious VFS is not 64-bit offset safe, breakage will most likely occur,
23 if files larger than 2^31 are used (rather unlikely, tho, but still...)
24
25 * nenolod says: current vfs sucks, it needs a "rewrite":
26 - buffering support
27 - non-blocking I/O support
28
29
30 - {core,plugins}/configure.ac need some cleanup loving.
31 * make session management (SM) optional.
32 * build system cleanups .. extra.mk.in? wtf?
33 --- this is in progress, worked on by ccr
34
35
36 - plugin rewrites:
37 * madplug
38 * modplug (in progress by ccr)
39 * scrobbler
40
41
42 - playlist.c: playlist_clear() is VERY slow, possible reasons?
43 * GList sucks? (it does, but is it the reason here?)
44 * playlist_entry_free()?
45 * mowgli_heap_free()?
46
47 possible solutions?
48 * mempools for playlist data? not sure if possible, the tuple heaps
49 should then somehow be collected into pools...
50
51
52 - playlist.c: racecondition in scanner thread vs. playlist manipulation
53 (playlist_clear(), free, etc.)
54 * go through scanner thread code and revise it.
55 * also all playlist manipulation should be double-checked.
56 * .. actually, the whole playlist.c should be refactored completely.