]> sjero.net Git - wget/blob - NEWS
NEWS update re renamed files at connection loss.
[wget] / NEWS
1 GNU Wget NEWS -- history of user-visible changes.
2
3 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
4 2006, 2007, 2008 Free Software Foundation, Inc.
5 See the end for copying conditions.
6
7 Please send GNU Wget bug reports to <bug-wget@gnu.org>.
8 \f
9 * Changes in Wget (MAINLINE).
10
11 ** Gnulib is now used to provide code for certain portability aspects in
12 GNU Wget.
13
14 ** Wget uses Automake now as part of its build infrastructure.
15 \f
16 * Changes in Wget 1.11.1.
17
18 ** Progress bar now displays correctly in non-English locales (and a
19 related assertion failure was fixed).
20
21 ** Wget no longer issues a GET request over HTTP for files it should
22 know it's not going to download (regression in 1.11 over 1.10.2).
23
24 ** Interrupted downloads no longer result in renaming the file
25 (regression in 1.11 over 1.10.2).
26 \f
27 * Changes in Wget 1.11.
28
29 ** Timestamping now uses the value from the most recent HTTP response,
30 rather than the first one it got.
31
32 ** Authentication information is no longer sent as part of the Referer
33 header in recursive fetches.
34
35 ** No authentication credentials are sent until a challenge is issued,
36 for improved security. Authentication handling is still not
37 RFC-compliant, as once a Basic challenge has been received, it will
38 assume it can send credentials to any URL at that same host, and not
39 just the ones at or below the original authenticated location.
40 Credentials for Digest authentication are still never saved or issued
41 automatically, and continue to require a challenge for each resource.
42
43 ** Added --max-redirect option, allowing the user to specify what should
44 be the maximum number of HTTP redirects to follow.
45
46 ** Wget now supports saving HTTP downloads using file names specified by
47 the `Content-Disposition' header.  This is a standard way of specifying
48 the file name used by many web dynamically generated pages. However, the
49 current implementation is inefficient, and known to have bugs. It is
50 EXPERIMENTAL only, and not enabled by default. Use --content-disposition
51 to enable it.
52
53 ** The new option `--ignore-case' makes Wget ignore case when
54 matching files, directories, and wildcards.  This affects the -X, -I,
55 -A, and -R options, as well as globbing in FTP URLs.
56
57 ** ETA projection is now displayed in "dot" progress output as well as
58 in the default progress bar.  (The dot progress is used by default when
59 logging Wget's output to file using the `-o' option.)
60
61 ** The "lockable boolean" argument type is no longer supported.  It
62 was only used by the passive_ftp .wgetrc setting.  If you're running
63 broken scripts or Perl modules that unconditionally specify
64 `--passive-ftp' and your firewall disallows it, you can override them
65 by replacing wget with a script that execs wget "$@" --no-passive-ftp.
66
67 ** The source code has been migrated to Mercurial. The repositories are
68 available at http://hg.addictivecode.org/. Prior to this, the source
69 code was hosted on Subversion (migrated from the original CVS); you can
70 still get access to older tags and branches for Wget in the Subversion
71 repository at http://addictivecode.org/svn/wget/.
72 \f
73 * Changes in Wget 1.10.
74
75 ** Downloading files larger than 2GB, sometimes referred to as "large
76 files", now works on systems that support them.  This includes the
77 majority of modern Unixes, as well as MS Windows.
78
79 ** IPv6 is now supported by Wget.  Unlike the experimental code in
80 1.9, this version supports dual-family systems.  The new flags
81 `--inet4' and `--inet6' (or `-4' and `-6' for short) force the use of
82 IPv4 and IPv6 respectively.  Note that IPv6 support has not yet been
83 tested on Windows.
84
85 ** Microsoft's proprietary "NTLM" method of HTTP authentication is now
86 supported.  This authentication method is undocumented and only used
87 by IIS.  Note that *proxy* authentication is not supported in this
88 release; you can only authenticate to the target web site.
89
90 ** Wget no longer truncates partially downloaded files when download
91 has to start over because the server doesn't support Range.  Instead,
92 with such servers Wget now simply ignores the data up to the byte
93 where the last attempt left off, and only then continues appending to
94 the file.  That way the downloaded file never shrinks, and download
95 retries from servers without support for partial downloads work even
96 when downloading to stdout.
97
98 ** SSL/TLS changes:
99
100 *** SSL/TLS downloads now attempt to verify the server's certificate
101 against the recognized certificate authorities.  This requires CA
102 certificates to have been installed in a location visible to the
103 OpenSSL library.  If this is not the case, you can get the bundle
104 yourself from a source you trust (for example, the bundle extracted
105 from Mozilla available at http://curl.haxx.se/docs/caextract.html),
106 and point Wget to the PEM file using the `--ca-certificate'
107 command-line option or the corresponding `.wgetrc' command.
108
109 *** Secure downloads now verify that the host name in the URL matches
110 the "common name" in the certificate presented by the server.
111
112 *** Although the above checks provide more secure downloads, they
113 unavoidably break interoperability with some sites that worked with
114 previous versions, particularly those using self-signed, expired, or
115 otherwise invalid certificates.  If you encounter "certificate
116 verification" errors or complaints that "common name doesn't match
117 requested host name" and are convinced of the site's authenticity, you
118 can use `--no-check-certificate' to bypass both checks.
119
120 *** Talking to SSL/TLS servers over proxies now actually works.
121 Previous versions of Wget erroneously sent GET requests for https
122 URLs.  Wget 1.10 utilizes the CONNECT method designed for this
123 purpose.
124
125 *** The SSL/TLS-related options have been redesigned and, for the
126 first time, documented in the manual.  The old, undocumented, options
127 are no longer supported.
128
129 ** Passive FTP is now the default FTP transfer mode.  Use
130 `--no-passive-ftp' or specify `passive_ftp = off' in your init file to
131 revert to the old behavior.
132
133 ** The `--header' option can now be used to override generated
134 headers.  For example, `wget --header="Host: foo.bar"
135 http://127.0.0.1' tells Wget to connect to localhost, but to specify
136 "foo.bar" in the `Host' header.  In previous versions such use of
137 `--header' lead to duplicate headers in HTTP requests.
138
139 ** The responses without headers, aka "HTTP 0.9" responses, are
140 detected and handled.  Although HTTP 0.9 has long been obsolete, it is
141 still occasionally used, sometimes by accident.
142
143 ** The progress bar is now updated regularly even when the data does
144 not arrive from the network.
145
146 ** Wget no longer preserves permissions of files retrieved by FTP by
147 default.  Anonymous FTP servers frequently use permissions like "664",
148 which might not be what the user wants.  The new option
149 `--preserve-permissions' and the corresponding `.wgetrc' variable can
150 be used to revert to the old behavior.
151
152 ** The new option `--protocol-directories' instructs Wget to also use
153 the protocol name as a directory component of local file names.
154
155 ** Options that previously unconditionally set or unset various flags
156 are now boolean options that can be invoked as either `--OPTION' or
157 `--no-OPTION'.  Options that required an argument "on" or "off" have
158 also been changed this way, but they still accept the old syntax for
159 backward compatibility.  For example, instead of `--glob=off' you can
160 write `--no-glob'.
161
162 Allowing `--no-OPTION' for every `--OPTION' and the other way around
163 is useful because it allows the user to override non-default behavior
164 specified via `.wgetrc'.
165
166 ** The new option `--keep-session-cookies' causes `--save-cookies' to
167 save session cookies (normally only kept in memory) along with the
168 permanent ones.  This is useful because many sites track important
169 information, such as whether the user has authenticated, in session
170 cookies.  With this option multiple Wget runs are treated as a single
171 browser session.
172
173 ** Wget now supports the --ftp-user and --ftp-password command
174 switches to set username and password for FTP, and the --user and
175 --password command switches to set username and password for both FTP
176 and HTTP.  The --http-passwd and --proxy-passwd command switches have
177 been renamed to --http-password and --proxy-password respectively, and
178 the related http_passwd and proxy_passwd .wgetrc commands to
179 http_password and proxy_password respectively.  The login and passwd
180 .wgetrc commands have been deprecated.
181
182 * `wget -b' now works correctly under Windows.
183 \f
184 * Wget 1.9.1 is a bugfix release with no user-visible changes.
185 \f
186 * Changes in Wget 1.9.
187
188 ** It is now possible to specify that POST method be used for HTTP
189 requests.  For example, `wget --post-data="id=foo&data=bar" URL' will
190 send a POST request with the specified contents.
191
192 ** IPv6 support is available, although it's still experimental.
193
194 ** The `--timeout' option now also affects DNS lookup and establishing
195 the TCP connection.  Previously it only affected reading and writing
196 data.  Those three timeouts can be set separately using
197 `--dns-timeout', `--connection-timeout', and `--read-timeout',
198 respectively.
199
200 ** Download speed shown by the progress bar is based on the data
201 recently read, rather than the average speed of the entire download.
202 The ETA projection is still based on the overall average.
203
204 ** It is now possible to connect to FTP servers through FWTK
205 firewalls.  Set ftp_proxy to an FTP URL, and Wget will automatically
206 log on to the proxy as "username@host".
207
208 ** The new option `--retry-connrefused' makes Wget retry downloads
209 even in the face of refused connections, which are otherwise
210 considered a fatal error.
211
212 ** The new option `--no-dns-cache' may be used to prevent Wget from
213 caching DNS lookups.
214
215 ** Wget no longer escapes characters in local file names based on
216 whether they're appropriate in URLs.  Escaping can still occur for
217 nonprintable characters or for '/', but no longer for frequent
218 characters such as space.  You can use the new option
219 --restrict-file-names to relax or strengthen these rules, which can be
220 useful if you dislike the default or if you're downloading to
221 non-native partitions.
222
223 ** Handling of HTML comments has been dumbed down to conform to what
224 users expect and other browsers do: instead of being treated as SGML
225 declaration, a comment is terminated at the first occurrence of "-->".
226 Use `--strict-comments' to revert to the old behavior.
227
228 ** Wget now correctly handles relative URIs that begin with "//", such
229 as "//img.foo.com/foo.jpg".
230
231 ** Boolean options in `.wgetrc' and on the command line now accept
232 values "yes" and "no" along with the traditional "on" and "off".
233
234 ** It is now possible to specify decimal values for timeouts, waiting
235 periods, and download rate.  For instance, `--wait=0.5' now works as
236 expected, as does `--dns-timeout=0.5' and even `--limit-rate=2.5k'.
237 \f
238 * Wget 1.8.2 is a bugfix release with no user-visible changes.
239 \f
240 * Wget 1.8.1 is a bugfix release with no user-visible changes.
241 \f
242 * Changes in Wget 1.8.
243
244 ** A new progress indicator is now available and used by default.
245 You can choose the progress bar type with `--progress=TYPE'.  Two
246 types are available, "bar" (the new default), and "dot" (the old
247 dotted indicator).  You can permanently revert to the old progress
248 indicator by putting `progress = dot' in your `.wgetrc'.
249
250 ** You can limit the download rate of the retrieval using the
251 `--limit-rate' option.  For example, `wget --limit-rate=15k URL' will
252 tell Wget not to download the body of the URL faster than 15 kilobytes
253 per second.
254
255 ** Recursive retrieval and link conversion have been revamped:
256
257 *** Wget now traverses links breadth-first.  This makes the
258 calculation of depth much more reliable than before.  Also, recursive
259 downloads are faster and consume *significantly* less memory than
260 before.
261
262 *** Links are converted only when the entire retrieval is complete.
263 This is the only safe thing to do, as only then is it known what URLs
264 have been downloaded.
265
266 *** BASE tags are handled correctly when converting links.  Since Wget
267 already resolves <base href="..."> when resolving handling URLs, link
268 conversion now makes the BASE tags point to an empty string.
269
270 *** HTML anchors are now handled correctly.  Links to an anchor in the
271 same document (<a href="#anchorname">), which used to confuse Wget,
272 are now converted correctly.
273
274 *** When in page-requisites (-p) mode, no-parent (-np) is ignored when
275 retrieving for inline images, stylesheets, and other documents needed
276 to display the page.
277
278 *** Page-requisites (-p) mode now works with frames.  In other words,
279 `wget -p URL-THAT-USES-FRAMES' will now download the frame HTML files,
280 and all the files that they need to be displayed properly.
281
282 ** `--base' now works conjunction with `--input-file', providing a
283 base for each URL and thereby allowing the URLs in the file to be
284 relative.
285
286 ** If a host has more than one IP address, Wget uses the other
287 addresses when accessing the first one fails.
288
289 ** Host directories now contain port information if the URL is at a
290 non-standard port.
291
292 ** Wget now supports the robots.txt directives specified in
293 <http://www.robotstxt.org/wc/norobots-rfc.txt>.
294
295 ** URL parser has been fixed, especially the infamous overzealous
296 quoting.  Wget no longer dequotes reserved characters, e.g. `%3F' is
297 no longer translated to `?', nor `%2B' to `+'.  Unsafe characters
298 which are not reserved are still escaped, of course.
299
300 ** No more than 20 successive redirections are allowed.
301 \f
302 * Wget 1.7.1 is a bugfix release with no user-visible changes.
303 \f
304 * Changes in Wget 1.7.
305
306 ** SSL (`https') pages now work if you compile Wget with SSL support;
307 use the `--with-ssl' configure flag.  You need to have OpenSSL
308 installed.
309
310 ** Cookies are now supported.  Wget will accept cookies sent by the
311 server and return them in later requests.  Additionally, it can load
312 and save cookies to disk, in the same format that Netscape uses.
313
314 ** "Keep-alive" (persistent) HTTP connections are now supported.
315 Using keep-alive allows Wget to share one TCP/IP connection for
316 many retrievals, making multiple-file downloads faster and less
317 stressing for the server and the network.
318
319 ** Wget now recognizes FTP directory listings generated by NT and VMS
320 servers.
321
322 ** It is now possible to recurse through FTP sites where logging in
323 puts you in some directory other than '/'.
324
325 ** You may now use `~' to mean home directory in `.wgetrc'.  For
326 example, `load_cookies = ~/.netscape/cookies.txt' works as you would
327 expect.
328
329 ** The HTML parser has been rewritten.  The new one works more
330 reliably, allows finer-grained control over which tags and attributes
331 are detected, and has better support for some features like correctly
332 skipping comments and declarations, decoding entities, etc.  It is
333 also more general.
334
335 ** <meta name="robots"> tags are now respected.
336
337 ** Wget's internal tables now use hash tables instead of linked lists
338 where appropriate.  This results in huge speedups when retrieving
339 large sites (thousands of documents).
340
341 ** Wget now has a man page, automatically generated from the Texinfo
342 documentation.  (The last version that shipped with a man page was
343 1.4.5).  To get this, you need to have pod2man from the Perl
344 distribution installed on your system.
345 \f
346 * Changes in Wget 1.6
347
348 ** Administrative changes.
349
350 *** Maintainership.  Due to Hrvoje being plagued with a "real job",
351 Dan Harkless is the most active maintainer (not that he doesn't have a
352 real job as well).  Hrvoje still participates occasionally, and both
353 are being helped by many other people.
354
355 *** Web page.  Thanks to Jan Prikryl, Wget has an "official" web page.
356 Take a look at:
357
358     http://sunsite.dk/wget/
359
360 *** Anonymous CVS.  Thanks to ever-helpful Karsten Thygesen, Wget
361 sources are now available at an anonymous CVS server.  Take a look at
362 the web page for downloading instructions.
363
364 ** New -K / --backup-converted / backup_converted = on option causes files
365 modified due to -k to be saved with a .orig prefix before being changed.  When
366 using -N as well, it is these .orig files that are compared against the server.
367
368 ** New --follow-tags / follow_tags = ... option allows you to restrict
369 Wget to following only certain HTML tags when doing a recursive
370 retrieval.  -G / --ignore-tags / ignore_tags = ... is just the
371 opposite -- all tags but the ones you specify will be followed.
372
373 ** New --waitretry / waitretry = SECONDS option allows waiting between retries
374 of failed downloads.  Wget will use "linear" backoff, waiting 1 second after the
375 first failure, 2 after the second, up to SECONDS.  waitretry is set to 10 by
376 default in the system wgetrc.
377
378 ** New -p / --page-requisites / page_requisites = on option causes
379 Wget to download all ancillary files necessary to display a given HTML
380 page properly (e.g. inlined images).
381
382 ** New -E / --html-extension / html_extension = on option causes Wget
383 to append ".html" to text/html filenames not ending in regexp
384 "\.[Hh][Tt][Mm][Ll]?".
385
386 ** New type of .wgetrc command -- "lockable Boolean".  Can be set to on, off,
387 always, or never.  This allows the .wgetrc to override the commandline.  So far,
388 passive_ftp is the only .wgetrc command which takes a lockable Boolean.
389
390 ** A number of new translation files have been added.
391
392 ** New --bind-address / bind_address = <address> option for people on hosts 
393 bound to multiple IP addresses.
394
395 ** wget now accepts (illegal per HTTP spec) relative URLs in HTTP redirects.
396 \f
397 * Wget 1.5.3 is a bugfix release with no user-visible changes.
398 \f
399 * Wget 1.5.2 is a bugfix release with no user-visible changes.
400 \f
401 * Wget 1.5.1 is a bugfix release with no user-visible changes.
402 \f
403 * Changes in Wget 1.5.0
404
405 ** Wget speaks many languages!
406
407 On systems with gettext(), Wget will output messages in the language
408 set by the current locale, if available.  At this time we support
409 Czech, German, Croatian, Italian, Norwegian and Portuguese.
410
411 ** Opie (Skey) is now supported with FTP.
412
413 ** HTTP Digest Access Authentication (RFC2069) is now supported.
414
415 ** The new `-b' option makes Wget go to background automatically.
416
417 ** The `-I' and `-X' options now accept wildcard arguments.
418
419 ** The `-w' option now accepts suffixes `s' for seconds, `m' for
420 minutes, `h' for hours, `d' for days and `w' for weeks.
421
422 ** Upon getting SIGHUP, the whole previous log is now copied to
423 `wget-log'.
424
425 ** Wget now understands proxy settings with explicit usernames and
426 passwords, e.g. `http://user:password@proxy.foo.com/'.
427
428 ** You can use the new `--cut-dirs' option to make Wget create less
429 directories.
430
431 ** The `;type=a' appendix to FTP URLs is now recognized.  For
432 instance, the following command will retrieve the welcoming message in
433 ASCII type transfer:
434
435     wget "ftp://ftp.somewhere.com/welcome.msg;type=a"
436
437 ** `--help' and `--version' options have been redone to to conform to
438 standards set by other GNU utilities.
439
440 ** Wget should now be compilable under MS Windows environment.  MS
441 Visual C++ and Watcom C have been used successfully.
442
443 ** If the file length is known, percentages are displayed during
444 download.
445
446 ** The manual page, now hopelessly out of date, is no longer
447 distributed with Wget.
448 \f
449 * Wget 1.4.5 is a bugfix release with no user-visible changes.
450 \f
451 * Wget 1.4.4 is a bugfix release with no user-visible changes.
452 \f
453 * Changes in Wget 1.4.3
454
455 ** Wget is now a GNU utility.
456
457 ** Can do passive FTP.
458
459 ** Reads .netrc.
460
461 ** Info documentation expanded.
462
463 ** Compiles on pre-ANSI compilers.
464
465 ** Global wgetrc now goes to /usr/local/etc (i.e. $sysconfdir).
466
467 ** Lots of bugfixes.
468 \f
469 * Changes in Wget 1.4.2
470
471 ** New mirror site at ftp://sunsite.auc.dk/pub/infosystems/wget/,
472 thanks to Karsten Thygesen.
473
474 ** Mailing list!  Mail to wget-request@sunsite.auc.dk to subscribe.
475
476 ** New option --delete-after for proxy prefetching.
477
478 ** New option --retr-symlinks to retrieve symbolic links like plain
479 files.
480
481 ** rmold.pl -- script to remove files deleted on the remote server
482
483 ** --convert-links should work now.
484
485 ** Minor bugfixes.
486 \f
487 * Changes in Wget 1.4.1
488
489 ** Minor bugfixes.
490
491 ** Added -I (the opposite of -X).
492
493 ** Dot tracing is now customizable; try wget --dot-style=binary
494 \f
495 * Changes in Wget 1.4.0
496
497 ** Wget 1.4.0 [formerly known as Geturl] is an extensive rewrite of
498 Geturl.  Although many things look suspiciously similar, most of the
499 stuff was rewritten, like recursive retrieval, HTTP, FTP and mostly
500 everything else.  Wget should be now easier to debug, maintain and,
501 most importantly, use.
502
503 ** Recursive HTTP should now work without glitches, even with Location
504 changes, server-generated directory listings and other naughty stuff.
505
506 ** HTTP regetting is supported on servers that support Range
507 specification. WWW authorization is supported -- try
508 wget http://user:password@hostname/
509
510 ** FTP support was rewritten and widely enhanced. Globbing should now
511 work flawlessly. Symbolic links are created locally. All the
512 information the Unix-style ls listing can give is now recognized.
513
514 ** Recursive FTP is supported, e.g.
515     wget -r ftp://gnjilux.cc.fer.hr/pub/unix/util/
516
517 ** You can specify "rejected" directories, to which you do not want to
518 enter, e.g. with wget -X /pub
519
520 ** Time-stamping is supported, with both HTTP and FTP. Try wget -N URL.
521
522 ** A new texinfo reference manual is provided.  It can be read with
523 Emacs, standalone info, or converted to HTML, dvi or postscript.
524
525 ** Fixed a long-standing bug, so that Wget now works over SLIP
526 connections.
527
528 ** You can have a system-wide wgetrc (/usr/local/lib/wgetrc by
529 default). Settings in $HOME/.wgetrc override the global ones, of
530 course :-)
531
532 ** You can set up quota in .wgetrc to prevent sucking too much
533 data. Try `quota = 5M' in .wgetrc (or quota = 100K if you want your
534 sysadmin to like you).
535
536 ** Download rate is printed after retrieval.
537
538 ** Wget now sends the `Referer' header when retrieving
539 recursively.
540
541 ** With the new --no-parent option Wget can retrieve FTP recursively
542 through a proxy server.
543
544 ** HTML parser, as well as the whole of Wget was rewritten to be much
545 faster and less memory-consuming (yes, both).
546
547 ** Absolute links can be converted to relative links locally. Check
548 wget -k.
549
550 ** Wget catches hangup, filtering the output to a log file and
551 resuming work. Try kill -HUP %?wget.
552
553 ** User-defined headers can be sent.  Try
554
555     wget http://fly.cc.her.hr/ --header='Accept-Charset: iso-8859-2'
556
557 ** Acceptance/Rejection lists may contain wildcards.
558
559 ** Wget can display HTTP headers and/or FTP server response with the
560 new `-S' option.  It can save the original HTTP headers with `-s'.
561
562 ** socks library is now supported (thanks to Antonio Rosella
563 <Antonio.Rosella@agip.it>). Configure with --with-socks.
564
565 ** There is a nicer display of REST-ed output.
566
567 ** Many new options (like -x to force directory hierarchy, or -m to
568 turn on mirroring options).
569
570 ** Wget is now distributed under GNU General Public License (GPL).
571
572 ** Lots of small features I can't remember. :-)
573
574 ** A host of bugfixes.
575 \f
576 * Changes in Geturl 1.3
577
578 ** Added FTP globbing support (ftp://fly.cc.fer.hr/*)
579
580 ** Added support for no_proxy
581
582 ** Added support for ftp://user:password@host/
583
584 ** Added support for %xx in URL syntax
585
586 ** More natural command-line options
587
588 ** Added -e switch to execute .geturlrc commands from the command-line
589
590 ** Added support for robots.txt
591
592 ** Fixed some minor bugs
593 \f
594 * Geturl 1.2 is a bugfix release with no user-visible changes.
595 \f
596 * Changes in Geturl 1.1
597
598 ** REST supported in FTP
599
600 ** Proxy servers supported
601
602 ** GNU getopt used, which enables command-line arguments to be ordered
603 as you wish, e.g.  geturl http://fly.cc.fer.hr/ -vo log is the same as
604 geturl -vo log http://fly.cc.fer.hr/
605
606 ** Netscape-compatible URL syntax for HTTP supported: host[:port]/dir/file
607
608 ** NcFTP-compatible colon URL syntax for FTP supported: host:/dir/file
609
610 ** <base href="xxx"> supported
611
612 ** autoconf supported
613 \f
614 ----------------------------------------------------------------------
615 Copyright information:
616
617 Copyright (C) 1997-2005 Free Software Foundation, Inc.
618
619    Permission is granted to anyone to make or distribute verbatim
620    copies of this document as received, in any medium, provided that
621    the copyright notice and this permission notice are preserved, thus
622    giving the recipient permission to redistribute in turn.
623
624    Permission is granted to distribute modified versions of this
625    document, or of portions of it, under the above conditions,
626    provided also that they carry prominent notices stating who last
627    changed them.