| - Document when read, seek, tell callbacks are used. |
| - Add an automated testsuite. |
| - Test (and fix, if necessary) support for unknown sizes. |
| - Test (and fix, if necessary) support for large files. |
| - Read past unknown elements rather than seeking. |
| - Try to handle unknown elements with unknown sizes. |
| - Formalize handling of default element values. |
| - Try to resynchronize stream when read_block fails so that failure to parse |
| a single block can be treated as non-fatal. |
| - Make logging more useful to API users. |
| - Avoid reparsing Cues and ignore any SeekHead at end of file. |
| - Optionally build a Cue index as Clusters are parsed. |
| - Support seeking without Cues. |
| - Avoid building a list of Clusters as they are parsed and retain only the |
| last one parsed. |
| - Add an asynchronous error code to struct nestegg and ensure that API calls |
| continue to fail safely one a fatal error has been returned. |
| - Modify parser/data structures to provide a clean separation. Perhaps the |
| parser should return a generic tree of nodes that a second pass uses to |
| initialize the main data structures. |
| - Use pool allocator for all allocations. |