1 Hey Emacs, this is -*- outline -*- mode
3 This is the to-do list for Wget. There is no timetable of when we plan to
4 implement these features -- this is just a list of things it'd be nice to see in
5 Wget. Patches to implement any of these items would be gladly accepted. The
6 items are not listed in any particular order. Not all of them represent
9 * Make -K compare X.orig to X and move the former on top of the latter if
10 they're the same, rather than leaving identical .orig files laying around.
12 * Add an option to save all text/html files with a .html extension so that when
13 grabbing the output of a dynamically-generated remote page, you'll end up with
14 a filename that will cause _your_ webserver to realize the saved static HTML
15 file isn't text/plain.
17 * Allow mirroring of FTP URLs where logging in puts you somewhere else besides
20 * Make `-k' convert <base href=...> too.
22 * Add option to clobber existing file names (no `.N' suffixes).
24 * Introduce a concept of "boolean" options. For instance, every
25 boolean option `--foo' would have a `--no-foo' equivalent for
26 turning it off. Get rid of `--foo=no' stuff. Short options would
27 be handled as `-x' vs. `-nx'.
29 * Implement "thermometer" display (not all that hard; use an
30 alternative show_progress() if the output goes to a terminal.)
32 * Add option to only list wildcard matches without doing the download.
34 * Add case-insensitivity as an option.
36 * Handle MIME types correctly. There should be an option to (not)
37 retrieve files based on MIME types, e.g. `--accept-types=image/*'.
39 * Implement "persistent" retrieving. In "persistent" mode Wget should
40 treat most of the errors as transient.
42 * Allow time-stamping by arbitrary date.
44 * Fix Unix directory parser to allow for spaces in file names.
46 * Allow size limit to files.
48 * -k should convert convert relative references to absolute if not
51 * Recognize HTML comments correctly. Add more options for handling
52 bogus HTML found all over the 'net.
54 * Implement breadth-first retrieval.
56 * Download to .in* when mirroring.
58 * Add an option to delete or move no-longer-existent files when
61 * Implement a switch to avoid downloading multiple files (e.g. x and
64 * Implement uploading (--upload URL?) in FTP and HTTP.
66 * Rewrite FTP code to allow for easy addition of new commands. It
67 should probably be coded as a simple DFA engine.
69 * Recognize more FTP servers (VMS).
71 * Make HTTP timestamping use If-Modified-Since facility.
73 * Implement better spider options.
75 * Add more protocols (e.g. gopher and news), implementing them in a
78 * Implement a concept of "packages" a la mirror.
80 * Implement correct RFC1808 URL parsing.
82 * Implement HTTP cookies.
84 * Implement more HTTP/1.1 bells and whistles (ETag, Content-MD5 etc.)
86 * Support SSL encryption through SSLeay or OpenSSL.