xref: /freebsd/contrib/file/TODO (revision f4b37ed0f8b307b1f3f0f630ca725d68f1dff30d)
1Most TODOs live in the TODO section of doc/file.man (i.e. file(1)).
2They are more visible there, so please add any further TODOs to that
3file, not here. More speculative material can live here.
4
5(This change was made when Reuben Thomas noticed that all the bugs
6listed in the BUGS section of the man page had been fixed!)
7
8---
9
10It would be nice to simplify file considerably. For example,
11reimplement the apprentice and non-pattern magic methods in Python,
12and compile the magic patterns to a giant regex (or something similar;
13maybe using Ragel (http://www.complang.org/ragel/)) so that only a
14small amount of C is needed (because fast execution is typically only
15required for soft magic, not the more detailed information given by
16hard-wired routines). In this regard, note that hplip, which is
17BSD-licensed, has a magic reimplementation in Python.
18
19Read the kerberos magic entry for more ideas.
20
21Write a string merger to make magic entry sizes dynamic.
22Strings will be converted to offsets from the string table.
23