]> sjero.net Git - wget/blobdiff - src/ChangeLog
[svn] Better version of read_whole_line().
[wget] / src / ChangeLog
index de22083442dc46e766d4249dcbd1dcef3f1e2145..0a18cd3332614183d409767c81252f092cadc02e 100644 (file)
@@ -1,3 +1,349 @@
+2000-11-10  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * init.c (run_wgetrc): Don't bother killing off '\r' since
+       pars_line() skips whitespace at end of line anyway.
+       (parse_line): Oops, it didn't.  Now it does.
+
+       * recur.c (parse_robots): Ditto here.
+
+       * ftp-ls.c (ftp_parse_unix_ls): Kill off the newline character
+       manually because read_whole_line no longer does.
+
+       * utils.c (read_whole_line): Rewrite to: a) use less memory
+       (reallocates to needed size after work), b) work faster -->
+       fgets() instead of getc, c) be more correct --> doesn't kill the
+       newline character at the end of line.
+
+2000-11-10  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * init.c (comind): Initialize MAX to array size - 1.
+
+2000-11-08  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (construct): Changed last_slash[-1] to *(last_slash - 1).
+       Suggested by Edward J. Sabol.
+
+2000-11-08  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (construct): Handle the case where host name is not
+       followed by a slash.
+
+2000-11-06  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * init.c: commands[] need to be sorted!  ("base" wasn't.)
+
+2000-11-05  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * wget.h (DO_REALLOC_FROM_ALLOCA): Use braces to disambiguate
+       `if'.
+
+2000-11-05  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (construct): Insert unneeded initialization for the
+       compiler to shut up.
+
+       * config.h.in: Define _XOPEN_SOURCE to 500 to get the prototype
+       for strptime() (*duh*).  Define _SVID_SOURCE to get S_IFLNK which
+       otherwise gets lost when you define _XOPEN_SOURCE.
+
+       * utils.c (touch): Include the file name in the error message.
+       From Debian.
+
+2000-11-05  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * log.c (logvprintf): Use vsnprintf() in all cases.  If necessary,
+       resize the buffer to fit the formated message.  That way, messages
+       of arbitrary size may be printed.
+       (logvprintf): Use saved_append() to optionally log the last
+       several lines of output.
+       (logputs): Ditto.
+       (log_close): Adapt to new data structures.
+       (log_dump): Ditto.
+       (redirect_output): Print messages to stderr, not to stdout.
+
+       * log.c (saved_append_1): New function.  Replaces the old logging
+       system ("log all output until 10M characters") with a new, much
+       more reasonable one ("log last screenful of text").
+       (saved_append): New function; call saved_append_1.
+       (free_log_line): New function.
+
+2000-11-05  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (construct): Fix comment.
+       (find_last_char): Document.
+
+2000-11-04  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * snprintf.c: New file.
+
+2000-11-03  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * wget.h: If HAVE_STDARG_H is not defined, don't declare argument
+       types to logprintf() and debug_logprintf().
+
+2000-11-02  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * ftp.c (ftp_loop_internal): Hide the password from the URL when
+       printing non-verbose.  Problem spotted by Dariusz Mlynarczyk
+       <darekm@bydg.lomac.com.pl>.
+
+2000-11-02  Junio Hamano  <junio@twinsun.com>
+
+       * ftp-basic.c (ftp_login): Make comparison case-insensitive.
+
+2000-11-02  Tyler Riddle  <triddle@liquidmarket.com>
+
+       * http.c (known_authentication_scheme_p): Recognize NTML
+       authentication.
+       (create_authorization_line): Treat NTML the same as `Basic'.
+
+2000-11-02  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * retr.c (retrieve_url): Free url before returning.
+       (retrieve_url): Free mynewloc before returning.
+       Spotted by Mark A. Mankins <Mankins_Mark@prc.com>.
+
+2000-11-02  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (parseurl): Remove possible reading past the end of
+       sup_protos[].  Spotted by Mark A. Mankins <Mankins_Mark@prc.com>.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * main.c (main): In case of opt.downloaded overflowing, print
+       <overflow> instead of a totally bogus random value.
+
+       * retr.c (retrieve_from_file): Ditto.
+
+       * recur.c (recursive_retrieve): Ditto.
+
+       * main.c (main): Ditto.
+
+       * http.c (http_loop): Ditto.
+
+       * ftp.c (ftp_loop_internal): Use downloaded_increase() instead of
+       `+=', and downloaded_exceeds_quota() instead of the simple-minded
+       check.
+       (ftp_retrieve_list): Ditto.
+       (ftp_retrieve_dirs): Ditto.
+       (ftp_retrieve_glob): Ditto.
+
+       * retr.c (downloaded_increase): New function.  Notice overflows of
+       opt.downloaded.
+       (downloaded_exceeds_quota): Make sure that opt.downloaded is not
+       used if it overflowed.
+
+       * options.h (struct options): New member downloaded_overflow.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * wget.h (enum): Remove extra space after last enumeration.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * main.c (main): Use legible_very_long() for printing
+       opt.downloaded.
+
+       * utils.c (legible_1): New function that operates on strings and
+       does the brunt of legible()'s work.
+       (legible): Use legible_1().
+       (legible_very_long): New function; dump the argument with
+       sprintf(), and call legible_1().
+
+       * options.h (struct options): Use VERY_LONG_TYPE for
+       opt.downloaded.
+
+       * sysdep.h (VERY_LONG_TYPE): Define it to have a 64-bit or greater
+       type.
+
+       * config.h.in: Make sure that SIZEOF_LONG and SIZEOF_LONG_LONG get
+       defined.  Define HAVE_LONG_LONG if long long is available.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * utils.c (long_to_string): Update with a later, better version.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (path_simplify_with_kludge): New function.
+       (path_simplify_with_kludge): Disable it.  Instead...
+       (parse_dir): ...make sure that at this point the right thing is
+       done, i.e. that "query" part of the URL (?...) is always assigned
+       to the file, never to the directory portion of the path.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * retr.c (retrieve_url): Detect redirection cycles.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (get_urls_html): Decode HTML entities using
+       html_decode_entities.
+
+       * html.c (htmlfindurl): Don't count the `#' in numeric entities
+       (&#NNN;) as an HTML fragemnt.
+       (html_decode_entities): New function.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * html.c (htmlfindurl): Fix recognition of # HTML fragments.
+
+2000-11-01  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * url.c (construct): Rewritten for clarity.  Avoids the
+       unnecessary copying and stack-allocation the old version
+       performed.
+
+2000-10-31  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * ftp.c (getftp): Ditto.
+
+       * http.c (gethttp): Rewind the stream when retrying from scratch.
+
+2000-10-31  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * retr.c (retrieve_url): Use url_concat() to handle relative
+       redirections instead of /ad hoc/ code.
+
+       * url.c (url_concat): New function encapsulating weird
+       construct().
+       (urllen_http_hack): New function.
+       (construct): When constructing new URLs, recognize that `?' does
+       not form part of the file name in HTTP.
+
+2000-10-13  Adrian Aichner  <adrian@xemacs.org>
+
+       * retr.c: Add msec timing support for WINDOWS.
+       * retr.c (reset_timer): GetSystemTime() on WINDOWS.
+       * retr.c (elapsed_time): Calculate delta time to msec on WINDOWS.
+
+2000-10-27  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * retr.c (retrieve_url): Manually applied T. Bharath
+       <TBharath@responsenetworks.com>'s patch to get wget to grok
+       illegal relative URL redirects.  Reformatted and re-commented it.
+
+2000-10-23  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * connect.c (make_connection and bindport): Manually applied Rob
+       Mayoff <mayoff@dqd.com>'s 1.5.3 patch to add --bind-address,
+       changing coding style to GNU's.
+
+       * ftp.c (ftp_loop_internal): --delete-after wasn't implemented for
+       files downloaded via FTP.  Per a comment, .listing files were not
+       counted towards number of bytes and files downloaded because they're 
+       deleted anyway.  Well, they aren't under -nr, so count them then.
+
+       * init.c: Manually applied Rob Mayoff's 1.5.3 patch to add
+       --bind-address, alphabetizing, changing coding style to GNU's,
+       commenting, and renaming cmd_ip_address() to cmd_address() to
+       imply hostnames also okay.
+               
+       * main.c (main): --delete-after didn't delete the root of the
+       tree.  Ignore --convert-links if --delete-after was specified.
+       Manually applied Rob Mayoff's 1.5.3 patch to add --bind-address,
+       fixing duplicate use of added-since-1.5.3 case value.
+       (print_help): Clarified that --delete-after deletes local files.
+       Rob forgot to add a line for his new --bind-address option.
+               
+       * options.h (struct options): Manually applied Rob Mayoff's patch
+       to add --bind-address (bind_address structure member).
+               
+       * recur.c (recursive_retrieve): Improved comment; added DEBUGP().
+       Ignore --convert-links if --delete-after was specified.
+               
+       * retr.c (retrieve_from_file): Just added a DEBUGP().
+               
+2000-10-19  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * ftp.c (ftp_loop_internal): downloaded_file() enumerators changed.
+       (getftp): Applied Piotr Sulecki <Piotr.Sulecki@ios.krakow.pl>'s
+       patch to work around FTP servers that incorrectly respond to the
+       "REST" command with the remaining size rather than the total file size.
+               
+       * http.c (gethttp): Improved a comment and added code to tack on
+       ".html" to text/html files without that extension when -E specified.
+       (http_loop): Use new downloaded_file() enumerators and deal with
+       the case of gethttp() called xrealloc() on u->local.
+
+       * init.c (commands): Added new "htmlextension" command.
+       Also renamed John Daily's cmd_quad() to the more descriptive
+       cmd_lockable_boolean(), alpha-sorted the CMD_DECLARE()s and
+       removed duplicate cmd_boolean() declaration.
+
+       * main.c (print_help): Added my new -E / --html-extension option.
+       (main): Undocumented --email-address option previously used -E synonym.
+       Stole it away for the much more deserving --html-extension's use.
+
+       * options.h (struct options): Added html_extension field.
+
+       * url.c (convert_links): URL X that we saved as X.html locally due
+       to -E needs to be backed up as X.orig, not X.html.orig.  Added comments.
+       (downloaded_file): Now remembers if we added .html extension to a file.
+
+       * url.h (downloaded_file_t): Added extra enumerators to support above.
+       (downloaded_file): Now takes and returns a downloaded_file_t.
+
+       * wget.h (unnamed "dt" enum): Added ADDED_HTML_EXTENSION enumerator.
+       
+2000-10-09  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * html.c (htmlfindurl): Added unneeded initialization to quiet warning.
+               
+       * main.c (print_help): Clarified what --retr-symlinks does.
+       
+2000-09-15  John Daily  <jdaily@cyberdude.com>
+
+       * init.c: Add support for "always" and "never" values to allow
+       .wgetrc to override commandline (useful e.g. with .pm files
+       calling `wget --passive-ftp' when your firewall doesn't allow that).
+
+       * ftp.c (getftp): passive_ftp is first option to support always/never.
+
+2000-08-30  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * ftp.c (ftp_retrieve_list): Use new INFINITE_RECURSION #define.
+       
+       * html.c: htmlfindurl() now takes final `dash_p_leaf_HTML' parameter.
+       Wrapped some > 80-column lines.  When -p is specified and we're at a 
+       leaf node, do not traverse <A>, <AREA>, or <LINK> tags other than 
+       <LINK REL="stylesheet">.
+       
+       * html.h (htmlfindurl): Now takes final `dash_p_leaf_HTML' parameter.
+       
+       * init.c: Added new -p / --page-requisites / page_requisites option.
+
+       * main.c (print_help): Clarified that -l inf and -l 0 both allow
+       infinite recursion.  Changed the unhelpful --mirrior description
+       to simply give the options it's equivalent to.  Added new -p option.
+       (main): Added some comments; handle new -p / --page-requisites.
+       
+       * options.h (struct options): Added new page_requisites field.
+
+       * recur.c: Changed "URL-s" to "URLs" and "HTML-s" to "HTMLs".
+       Calculate and pass down new `dash_p_leaf_HTML' parameter to
+       get_urls_html().  Use new INFINITE_RECURSION #define.
+
+       * retr.c: Changed "URL-s" to "URLs".  get_urls_html() now takes
+       final `dash_p_leaf_HTML' parameter.
+
+       * url.c: get_urls_html() and htmlfindurl() now take final
+       `dash_p_leaf_HTML' parameter.
+
+       * url.h (get_urls_html): Now takes final `dash_p_leaf_HTML' parameter.
+
+       * wget.h: Added some comments and new INFINITE_RECURSION #define.
+       
+2000-08-23  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * main.c (print_help): -B / --base was not mentioned.
+
+2000-08-22  Dan Harkless  <dan-wget@dilvish.speed.net>
+
+       * main.c (print_help): Modified -nc description to mention that it
+       also prevents the creation of multiple versions of the same file
+       with ".<number>" suffixes.
+
 2000-07-14  Jan Prikryl  <prikryl@cg.tuwien.ac.at>
 
        * retr.c (retrieve_url): Consistently strdup opt.referer when