1
0
mirror of https://github.com/moparisthebest/wget synced 2024-07-03 16:38:41 -04:00
wget/TODO
dan 4454f6ce0a [svn] * TODO: Removed done item: we now have an option (-G) that makes it easy to
download a single HTML document and all its constituents.

* po/*.{gmo,po,pot}: Regenerated after adding new options.

* po/hr.po: Hrvoje forgot '\n's on his translations of my altered messages,
causing msgfmt to balk and `make install' to fail.


* wget.texi (Recursive Retrieval Options): In -K description, added a link to
the discussion of interaction with -N.
(Recursive Accept/Reject Options): Did some alphabetizing and added descriptions
of new --follow-tags and -G / --ignore-tags options.
(Following Links): Changed "the loads of" to "loads of".
(Wgetrc Commands): Added descriptions of new follow_tags and ignore_tags
commands.


* html.c (idmatch): Implemented checking of my new --follow-tags and
--ignore-tags options.

* init.c (commands): Added comment reminding people adding new entries doing
allocation to add corresponding freeing in cleanup().
(commands): Added new followtags and ignoretags commands.
(cleanup): Free storage for new followtags and ignoretags.

* main.c: Use of "comma-separated list" was random -- normalized it.  Did some
alphabetization.  Added comments pointing out "Options without arguments" and
"Options accepting an argument" sections of long_options[].  Added new options
--follow-tags and -G / --ignore-tags.  Added comment that Damir's --referer is
currently undocumented.  Added comment that Heiko's --waitretry is partially
undocumented (mentioned in --help but not in wget.texi).  Moved improperly
sorted 24, 129, and 'G' cases.

* options.h (struct options): Added new fields follow_tags and ignore_tags.

* wget.h: Added "#define EQ 0" so we can say "strcmp(a, b) == EQ".
2000-03-10 22:48:06 -08:00

76 lines
2.4 KiB
Plaintext

Hey Emacs, this is -*- outline -*- mode
This is the todo list for Wget. I don't have any time-table of when I
plan to implement these features; this is just a list of things I'd
like to see in Wget. I'll work on some of them myself, and I will
accept patches in their direction. The items are not listed in any
particular order. Not all of them are user-visible changes.
* Make `-k' convert <base href=...> too.
* Add option to clobber existing file names (no `.N' suffixes).
* Introduce a concept of "boolean" options. For instance, every
boolean option `--foo' would have a `--no-foo' equivalent for
turning it off. Get rid of `--foo=no' stuff. Short options would
be handled as `-x' vs. `-nx'.
* Implement "thermometer" display (not all that hard; use an
alternative show_progress() if the output goes to a terminal.)
* Add option to only list wildcard matches without doing the download.
* Add case-insensitivity as an option.
* Handle MIME types correctly. There should be an option to (not)
retrieve files based on MIME types, e.g. `--accept-types=image/*'.
* Implement "persistent" retrieving. In "persistent" mode Wget should
treat most of the errors as transient.
* Allow time-stamping by arbitrary date.
* Fix Unix directory parser to allow for spaces in file names.
* Allow size limit to files.
* -k should convert convert relative references to absolute if not
downloaded.
* Recognize HTML comments correctly. Add more options for handling
bogus HTML found all over the 'net.
* Implement breadth-first retrieval.
* Download to .in* when mirroring.
* Add an option to delete or move no-longer-existent files when
mirroring.
* Implement a switch to avoid downloading multiple files (e.g. x and
x.gz).
* Implement uploading (--upload URL?) in FTP and HTTP.
* Rewrite FTP code to allow for easy addition of new commands. It
should probably be coded as a simple DFA engine.
* Recognize more FTP servers (VMS).
* Make HTTP timestamping use If-Modified-Since facility.
* Implement better spider options.
* Add more protocols (e.g. gopher and news), implementing them in a
modular fashion.
* Implement a concept of "packages" a la mirror.
* Implement correct RFC1808 URL parsing.
* Implement HTTP cookies.
* Implement more HTTP/1.1 bells and whistles (ETag, Content-MD5 etc.)
* Support SSL encryption through SSLeay or OpenSSL.