forked from libwww-perl/libwww-perl
/
ChangeLog
1356 lines (766 loc) · 38.6 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Thu Mar 12 1998 Gisle Aas <aas@sn.no>
o Release 5.21
o lwp-rget patches from David D. Kilzer <ddkilzer@madison.dseg.ti.com>
(modified by Gisle). Support the --hier and the --auth options
and <frame>s.
o File::CounterFile protect against bad $/ and $\ as suggested
by Frank Hoehne.
o File::Listing used "next" when return was more appropriate.
Patch by erik@mediator.uni-c.dk.
o HTML::Element support for multiple boolean attributes for a single
element. Patch by Philip Guenther.
o Can set $HTTP::Headers::TRANSLATE_UNDERSCORE to FALSE value to
suppress tr/_/-/ of header keys.
o LWP::Protocol::http will not initialize the Host header if it is
already set. Patch by Ed Jordan.
o LWP::Protocol::http did not handle responses with no header lines
correctly. Patch by Daniel Buenzli <buenzli@rzu.unizh.ch>
o $url->rel() handles path segments without leading "/" better.
Fri Feb 13 1998 Gisle Aas <aas@sn.no>
o Release 5.20
o Fixed the "500 Offset outside string" bug that affected perl
5.004_03 and older version of Perl.
o Fixed a documentation typo spotted by Michael Quaranta
<quaranta@vnet.IBM.COM>
o HTTP::Date: Protect against croaking from timegm/timelocal.
Mon Jan 26 1998 Gisle Aas <aas@sn.no>
o Release 5.19
o HTML::Parser does not call $self->text() callback for empty text
any more.
o LWP::Protocol::https was noisy when connections failed and the
script was running with '-w' (noise inherited from IO::Socket::INET)
o $ua->use_alarm(BOOL) now gives a warning if running with -w
Tue Jan 20 1998 Gisle Aas <aas@sn.no>
o Developer release 5.18_05
o HTTPS support based on my Crypt-SSLeay module. The Net-SSLeay module
is not supported any more.
o lwp-request documentation typo spotted Martijn Koster.
o Removed superfluous \\ in the URI::Escape regex. This was also
spotted by Martijn.
o File::Listing now handles timezones correctly.
o Added $VERSION to modules that was missing it.
o Added 'use strict' to several modules that was missing it.
o LWP::Protocol::http now adds the Client-Peer header to responses and
has hooks for more callbacks.
o LWP::Protocol::https adds Client-SSL-Cipher, Client-SSL-Cert-Subject
and Client-SSL-Cert-Issuer headers to the response. The requests can
also be made conditional based on the peer certificate using the
If-SSL-Cert-Subject header in requests.
o HTML::Parse is back. (It was even used in lwpcook.pod)
Wed Dec 17 1997 Gisle Aas <aas@sn.no>
o Developer release 5.18_04
o Makefile.PL fix based on report from Pon Hwa Lin <koala@fragment.com>
o lwp-request will now print the response code message with -s and -S
options.
o Hide IO::Socket::INET noise when running under -w
o Don't set 'Content-Length: 0' in HTTP requests.
o LWP::Protocol::http now calls LWP::Debug::conns again
Tue Dec 16 1997 Gisle Aas <aas@sn.no>
o Developer release 5.18_03
o Got rid of alarms() and replaced LWP::Socket with IO::Socket::INET.
New protocol implementations for http, https, gopher, nntp.
$ua->use_alarm() is now a noop.
o LWP::Protocol::ftp patch from Tony Finch <fanf@demon.net>.
o Removed depreciated modules from the distibution; HTML::Parse,
LWP::Socket, LWP::SecureSocket, LWP::IO, LWP::TkIO.
Fri Dec 12 1997 Gisle Aas <aas@sn.no>
o Release 5.18
o HTTP authorization patches from Tony Finch <fanf@demon.net>.
Allows "user:pass@" in HTTP URLs.
o HTML::Parser patch by Brian McCauley <B.A.McCauley@bham.ac.uk>.
Pass original text to end() method.
o The HTML::Parser->netscape_buggy_comment method is depreciated.
Use HTML::Parser->strict_comment instead. The default value
has changed with the name.
o Some HTML::Parser optimization tweaks.
o New module named HTML::Filter
o Updated HTTP::Headers to the latest HTTP spec. Added knowledge
about the "Trailer", "Expect", "TE", "Accept-Range" headers.
"Public" header is gone.
o Added some more header convenience methods: if_unmodified_since,
content_language, and proxy_authorization methods.
o HTTP::{Request,Response}->clone can handle subclasses now.
o HTTP::Request->url() can now undefine the URL.
o HTTP::{Request,Response}->as_string format looks more like
the HTTP protocol formatting now. Dashed lines above and
below is gone.
o Documented HTTP::Response->status_line method
o Compressed HTML::Response->error_as_HTML output
o HTTP::Status updated to latest HTTP spec. Added
RC_REQUEST_RANGE_NOT_SATISFIABLE (416)
Tue Dec 2 1997 Gisle Aas <aas@sn.no>
o Release 5.17
o All authentication handling moved out of LWP::UserAgent and into
LWP::Authen::Basic and LWP::Authen::Digest. We now also support
PROXY_AUTHENTICATION_REQUIRED responses.
o HTML::Formatter will always add a blank line for <br>.
o Avoid use of uninitialized value in HTTP::Daemon.
o HTTP::Date allows seconds when recognizing 'ls -l' dates. This
allows us to parse syslog time stamps.
o HTTP::Request::Common::POST allows a hash reference as second
argument (in addition to an array reference).
o LWP::Simple will initialize the $ua if it is exported.
o Various documentation updates.
Fri Nov 21 1997 Gisle Aas <aas@sn.no>
o Release 5.16
o LWP::Simple::head() would die in array context because str2time
was not imported any more.
o HTTP::Daemon->accept now takes an optional package argument like
IO::Socket->accept does.
o Made HTTP::Request and HTTP::Response subclassable.
o Added Proxy-Authorization example to lwpcook.
Thu Nov 6 1997 Gisle Aas <aas@sn.no>
o Release 5.15
o New module URI::Heuristic
o The lwp-request script now use URI::Heuristic for it's URL arguments.
It means that 'lwp-request perl' will not get a file called "./perl"
but will fetch the page "http://www.perl.com" or something similar.
If you want to get the file you have to prefix it with "./". Full
URLs are never affected by this.
o LWP::Simple::get() will bypass LWP for simple HTTP requests. This
should make it somewhat faster.
o LWP::RobotUA has a new method called $ua->use_sleep() that
controls how niceness towards the servers are enforced.
Previously $ua->use_alarm() used to control this, but this did
not work well on Win32 systems.
o URI::URL::rel() will handle URLs to a fragment within the same
document better. Initial patch from Nicolai Langfeldt
<janl@math.uio.no>.
o HTML::Element don't consider </th>, </tr> and </td> optional any
more. I wonder how Netscape managed to not implement this
correctly all this time.
o Added lots of modern tags to HTML::AsSubs.
o HTTP::Request::Common will read uploaded files in binmode().
This should be better for Win32 systems. Contributed by
<Steve_Kilbane@cegelecproj.co.uk>.
Sun Oct 12 1997 Gisle Aas <aas@sn.no>
o Release 5.14
o HTML::Formatter patches from Andreas Gustafsson <gson@araneus.fi>.
The formatters handling of whitespace is much better now. Thanks!
o HTML::FormatText: can specify margins in the constructor.
o URI::URL: the base will be absolutized internally now.
o URI::URL will take advantage of void context provided by perl5.004.
This means that using $u->path and $u->query should be safer now.
o URI::URL->print_on defaults to STDERR now (used to be STDOUT).
o URI::URL: removed version 3 compatibility stuff ($COMPAT_VER_3).
o $ua->mirror should work better on dosish systems (can not
rename when target file exists).
o Typo in lwp-download prevented it from compiling.
o Some minor documentations typos corrected.
Sat Sep 20 1997 Gisle Aas <aas@sn.no>
o Release 5.13
o Brand new module called HTTP::Cookies. It stores cookies
(Set-Cookie and Set-Cookie2 headers) from responses and can
create appropriate Cookie headers for requests. It can also
share cookie files with Netscape.
o LWP::UserAgent now support the cookie_jar() attribute. When
set to an HTTP::Cookies object, it will automatically manage
the cookies sent to the servers. Off by default.
o New header utility functions in HTTP::Headers::Util.
o Win32 and OS/2 patches for the lwp-xxx utilities. Turn on
binary mode by default (option to turn it off), avoid modifying $0,
and don't be confused about suffixes in the script names.
Contributed by Ben Coleman <bcoleman@mindspring.com>
o OpenVMS patch for Font:AFM by Brad Hughes <brad@tmc.naecker.com>
Fri Sep 5 1997 Gisle Aas <aas@sn.no>
o Release 5.12
o decode_entities() would sometimes introduce ";" after
things that looked like they were entities.
o HTML::LinkExtor knows about <applet code="...">
o Patch from Gary Shea <shea@gtsdesign.com> that makes the
tests work even if perl is not called "perl"
o HTTP::Date handles 12:00PM correctly now. Patch from
William York <william@mathworks.com>
o HTTP::Request::Common don't quote the boundary string for
multipart/form-data messages any more.
o Font::AFM works for encodings where .notdef is defined to
have some size. Documentation and efficiency update.
Wed Aug 6 1997 Gisle Aas <aas@sn.no>
o Release 5.11
o Perl version 5.004 is now required for libwww-perl.
o Win32 patches from Gurusamy Sarathy <gsar@engin.umich.edu>.
Now passes all tests on that platform.
o HTTPS support contributed by Josh Kronengold <mneme@mcny.com>
o Support hex entities ÿ HTML::Entities::(en|de)code only
modify their argument in void context.
o Fixed formatter bug with <font> tags which did not specify size.
o Better HTML::HeadParser documentation
o Fixed HTML::LinkExtor documentation typo spotted by Martijn.
o HTTP::Request::Common now use CRLF for multipart/form-data
Fri Jun 20 1997 Gisle Aas <aas@sn.no>
o Release 5.10
o Make '+' a reserved URL character. Decode unescaped '+' as
space in $url->query_form().
o Use $Config{d_alarm} to determine default for $ua->use_alarm()
Tue Jun 10 1997 Gisle Aas <aas@sn.no>
o Release 5.09
o Removed the MIME modules from the distribution. They are distributed
separately now.
o Added a new module called HTTP::Request::Common
o Improved HTTP::Status documentation. It is now also possible
to import the is_client_error/is_server_error functions.
o LWP::MediaTypes::guess_media_type() can now take an optional
HTTP::Header parameter.
o LWP::Protocol ensures that scheme is legal as module name.
o LWP::Protocol::http is not as strict when trying to verify the
method name. It now also accepts responses without a message
on the status line.
o WWW::RobotRules::AnyDBM_File: Some DBMs fail to allow multiple
opens of the same file. Patch from Mark James <jamesm@skate.org>
o Created Bundle::LWP
Sat Apr 5 1997 Gisle Aas <aas@sn.no>
o Release 5.08
o Made libwww-perl warning compatible with upcoming perl5.004beta2
(aka 5.003_98)
o encode_base64() did not work properly if pos() of the string to
encode was different from 0.
o HTML::Parser was confused about "</" when it did not start an end tag.
o HTML::FormatPS will provide ISOLatin1Encoding in its output.
o Calling HTML::LinkExtor->links will clear out old links.
o url()->rel($base) would ignore the $base argument.
o Don't croak() when setting url()->path().
Tue Feb 11 1997 Gisle Aas <aas@sn.no>
o Release 5.07
o Can limit the size of the response content with $ua->max_size()
o Added time2iso() functions to HTTP::Date.
o Made LWP::Protocol::http more portable to the MacPerl. /./ match
different things on MacPerl.
Mon Jan 27 1997 Gisle Aas <aas@sn.no>
o Release 5.06
o URI::URL is now compatible with perl5.004 overloading.
o HTML::HeadParser makes X-Meta-Name headers for <meta> elements
that does not specify an 'http-equiv' attribute.
o URI::URL::ftp does not die if Net::Domain is not installed and
you ask for an anonymous username or password.
o WWW::RobotRules: The robots.txt parser did not ignore comment lines
as it should.
o LWP::Protocol::http is more forgiving towards servers that return
bad responses.
o Allow "?" before search string in gopher URLs.
o LWP::Protocol::file did not escape funny filenames when generating
HTML directory listings.
o LWP::Protocol::ftp now gets the Content-Encoding correct. 'CODE'
content in PUT requests also work now.
o Relative locations in redirects did not work with URI::URL::strict.
o OS/2 portability patches from Ilya Zakharevich
o LWP::Authen::* patch from Doug MacEachern
o Support experimental data:- URLs
o Some tests (those using HTTP::Daemon) now die more gracefully if
IO::* modules is not installed.
Wed Dec 4 1996 Gisle Aas <aas@sn.no>
o Release 5.05
o LWP::UserAgent::simple_request: local($SIG{__DIE__}) protects us
against user defined die handlers.
o Use Net::Domain (instead of Sys::Hostname) to determine FQDN. It
is used by URI::URL when it determines anonymous ftp login address.
o lwp-download: New program in the bin directory
o HTML::Parser: Allow '_' in attribute names. This makes it possible
to parse Netscape's bookmarks.html file.
o HTTP::Daemon: Fixed chunked transfer encoding and multipart content
in get_request(). Support HTTP/0.9 clients.
o Don't clobber regex variables when HTTP::Message delegates methods
to the header.
o Base64::decode_base64 now checks that the length input string to
decode is a multiple of 4.
o t/robot/rules-dbm.t clean up better and will use AnyDBM for dumping
o File::CounterFile: $/ strikes again by Andreas König
o File::Listing updates from William York <william@mathworks.com>. We
can now parse the MS-Windows ftp server listings.
o HTTP::Date now supports the MS-Windows 'dir' date format. Patch by
William York.
o LWP::MediaTypes::media_suffix will return first type in scalar context.
Tue Oct 22 1996 Gisle Aas <aas@sn.no>
o Release 5.04
o Added HTTP::Daemon. This is a HTTP/1.1 server class. This means
that libwww-perl no longer is a client library only. The HTTP::Daemon
is also used in the new test suite.
o HTTP::Message support the protocol() method. Used by HTTP::Daemon.
o HTTP::Response can be constructed with a header and content as
argument.
o Typo corrections in the documentation.
o File::Listing::parse_dir accepts "GMT" as timezone now.
o HTML::Parser will call the start() method with two new parameters;
$attrseq, $origtext.
o Integrated HTML::FormatPS patches from
Jim Stern <jstern@world.northgrum.com>
o Class modules don't inherit from AutoLoader any more. They just
import the AUTOLOAD method.
o LWP::Protocol will untaints scheme before loading protocol module.
o Digest does not send "opaque" if it was not present in the request.
The "Extension" header is not returned any more.
o New method: $url->crack that will return a list of the various
elements in a URI::URL.
o WWW::RobotRules did not use the agent() method when determining
who we are. This affected WWW::RobotRules::AnyDBM_File parsing
for robots.txt. Visit count did not increment for
WWW::RobotRules::InCore.
Tue Oct 1 1996 Gisle Aas <aas@sn.no>
o Release 5.03
o Hakan Ardo's persistent robot rules is now part of the standard
distribution. This is still experimental and might change in the
future. It includes the new WWW::RobotRules::AnyDBM_File class
and updates to LWP::RobotUA.
o HTML::Parser now supports buggy Netscape comment parsing. Enable
it by calling $p->netscape_buggy_comment(1). The previous version
of the parser could also (under very unlucky and unlikely
circumstances) call the $self->comment() method several times for
the same comment text.
o HTML::Parser: Use new $p->eof to signal end of document instead of
$p->parse(undef).
o HTML::Element::starttag() is now smarter about which quotes it
use around attribute values.
o New HTTP::Response methods: current_age(), freshness_lifetime(),
is_fresh(), fresh_until().
o HTTP::Message: New method ($mess->content_ref) which will return
a reference to the current content.
o URI::URL: New method ($url->rel) which does the opposite of abs().
Example: url("http://host/a/b/c", "http://host/c/d/e")->rel would
return url("../../a/b/c", "http://host/c/d/e"). This was
suggested by Nicolai Langfeldt <janl@ifi.uio.no>
o URI::URL: $url->query_form can now take array references as value
specification. For instance: $url->query_form(foo => ['bar', 'baz']
o Avoid '"my" variable $var masks earlier declaration in same scope'
warnings in perl5.003_05.
Wed Sep 11 1996 Gisle Aas <aas@sn.no>
o Release 5.02
o lwp-rget: Initialize proxy settings from envirionment
o HTML::Entities::encode_entities: Don't encode $ and %
o HTML::LinkExtor::links: Now works when no links were found.
o HTTP::Headers::as_string: Allow \n in header value
Tue Aug 1 1996 Gisle Aas <aas@sn.no>
o Release 5.01.
o Updated ftp protocol module to be compatible with Net::FTP
version 2.00 (the version found in libnet-1.00)
o New HTML parser module called HTML::LinkExtor
o Various documentation typo corrections. Most of these contributed
by Bob Dalgleish.
o HTML::HeadParser updates 'Content-Base' instead of 'Base'. It also
updates the 'Link' header based on <link ...>
o HTTP::Headers and HTTP::Status updated according to
draft-ietf-http-v11-spec-06
o HTTP::Headers can now use "_" as alternative to "-" in field names.
o HTTP::Response::base now looks for 'Content-Base',
'Content-Location' and 'Base' headers.
o Avoid warning in LWP::MediaTypes if $ENV{HOME} is not defined.
o The new $ua->parse_head() method can be used to turn off
automatic initialization of response headers from the <HEAD>
section of HTML documents.
o Added eq() method for URI::URL objects
o The HTML::Formatter recovers even if a handle method is not defined
for all tags found during traversal
Sun May 26 1996 Gisle Aas <aas@sn.no>
o Release 5.00.
o LWP::Simple::head() now return something useful in scalar context.
o Rewritten the HTML::Parse stuff. Introduced the HTML::Parser class
that will tokenize a HTML document. The rest of the old
HTML::Parse functionality has moved to HTML::TreeBuilder class.
Note, that the HTML stuff is still alpha.
o Implemented HTML::HeadParser. This is a lightweight parser for
the <HEAD> section of a HTML document.
o HTML::Element had problem with presenting things like <foo
bar="bar">.
o HTML::Entities: Included additional ISO-8859/1 entities listed in
RFC1866.
o HTML::AsSubs exported 'header' instead of 'head'
o We know about a few more of the HTML 3.2 element.
o HTTP::Date had problems with years before 1970, because Time::Local
went into an infinite loop. Check for this.
o Added $header->title method.
o Made $header->authorization_basic return "uname:passwd" in scalar
context
o LWP::Protocol::collect() will let the HTML::HeadParser look at the
document content as it arrives. This will initialize headers from
elements like <base href="...">, <title>...</title> and <meta
http-equiv="..." ...>.
o Simplified $response->base implementation, because we don't have
to look into the content any more.
o Added -quiet option to lwp-rget
o Typo fixes and some documentation additions.
Thu May 9 1996 Gisle Aas <aas@sn.no>
o Release 5b13
o Made URI::URL::strict(0) the default. I got tired of all this
eval { } stuff just to recover. The URI::URL::strict'ness also
determine if calling some standard method that happens to be
illegal for some protocol scheme will croak or just be ignored.
o Ensure correct $INPUT_RECORD_SEPARATOR and $OUTPUT_RECORD_SEPARATOR
at places where we <> or print.
o Always localize $_ before any 'while(<FILE>) {}'-loops
o Implemented $protocol->collect_once() and simplified several
of the protocol implementations by using it.
o The HTML parser used to get it wrong if you were unlucky about the
breakup of the text. An example of broken behaviour was this:
$html = parse_html "<!-- A comment -";
$html = parse_html "-> and some text.";
o The HTML parser does not ignore whitespace-only text any more.
o HTML::Parse warnings are now optional and turned off by default.
o New start for $html->as_HTML().
o Fixed some typos
Wed Apr 24 1996 Gisle Aas <aas@sn.no>
o Release 5b12
o New utility program called 'lwp-rget'.
o $response->base was broken for HTML documents
o New fancy LWP::Debug import() method. Can now turn on debugging with
"use LWP::Debug '+';"
o Trap exceptions (die) from the response callback routine
o The RobotUA now requires an e-mail address of the person reponsible
for the robot.
o New $ua->from() method.
o Support for gopher Index-Search (gopher type '7' requests).
Contributed by Harry Bochner <bochner@das.harvard.edu>
o Cleaned up white-space usage in the source.
Wed Apr 3 1996 Gisle Aas <aas@sn.no>
o Release 5b11
o Implemented a NNTP protocol module. The library can now fetch and
post news articles.
o More documentation
o Don't look at the URI header for redirects
o New $res->base() method for HTTP::Responses
o Graham Barr's patch to File::Listing to make it more OO internally
o content_type() return value is canonicalized
o $ua->request() does not die on bad URLs any more
o LWP::MediaTypes merge all media.types files that if finds
o FTP request with content to file or callback did not work
o The value of HTTP Host: header is now $url->netloc;
o The URI::URL constructor now accept URLs wrapped up in "<>"
o $url->abs() now has a second optional argument that makes it accept
that relative URLs can have scheme, i.e. treat "http:img.gif" as a
relative URL.
o Added prototypes to the HTTP::Status::is_xxx() functions
o Added prototypes to the MIME:: encoding/decoding functions
o Always return scheme for mailto and news URLs (as_string)
o RobotRules patches from Henry A Rowley.
o More tests
o <SMALL> and <BIG> again
Thu Mar 14 1996 Gisle Aas <aas@sn.no>
o Release 5b10
o GET ftp://host/doc was never successful for normal files.
o LWP::Socket: read_until() did not notice EOF condidtion. I.e. if
a HTTP server closed the connection before any output was generated,
the we continued to read 0 bytes in a busy loop until the alarm()
killed us.
o Added support for Digest Access Authentication. Contributed by
Doug MacEachern <dougm@osf.org>.
o Makefile.PL: check for MD5 library
o No longer print message content in HTTP::Response::error_as_HTML()
o Access to "file:/path" gave warning when the envirionment variable
no_proxy was set.
o The http-post test sends a Content-Type header. Some servers hang
if this header is missing.
o HTML::Parse:
- allow <SMALL> and <BIG> tags
- allow empty attribute values
Tue Mar 5 1996 Gisle Aas <aas@sn.no>
o Release 5b9
o Started to write on the libwww-perl cookbook (lwpcook.pod)
o The URI::URL module now exports the function url(). This is an
alternative (easy to use) constructor function.
o Expanding relative file URLs starting with "#" did not work.
o Fixed autoloaded DESTROY problem by adding empty DESTROY routine
to URI::URL.
o Does not try generate password for ftp-URLs unless the username is
"anonymous" or "ftp"
o The LWP::Simple user agent proxy settings are intialized from
the proxy environment variables.
o LWP::Protocol::ftp: Use the Net::FTP library to access ftp servers.
Convert directories to HTML on request (Accept: text/html).
o New module HTTP::Negotiate
o New module File::Listing
o HTTP::Date::str2time can parse a few more formats, like the 'ls -l'
format and ISO 8601. The function now also takes an optional second
parameter which specify a default time zone.
o Added prototypes to the HTTP::Date functions.
o The library adds a timestamp to responses ("Client-Date")
o HTTP::Status: Updated to proposed HTTP/1.1
o HTTP::Headers: Updated to proposed HTTP/1.1
o LWP::Protocol::http: Updated to HTTP/1.1 methods
o Took out stringify overloading in HTML::Element.
Mon Feb 26 1996 Gisle Aas <aas@sn.no>
o Release 5b8
o Renamed functions using thisStyleOfNames to this_style_of_names.
Provided a script called 'update_from_5b7'
o Renamed the 'request' and 'mirror' scripts to 'lwp-request' and
'lwp-mirror'. The GET, POST, HEAD aliases for 'lwp-request' are
the same.
o Implemented LWP::RobotUA
o Class name for RobotRules did not match the file name
o URI::URL
- perl5.002gamma is required (because use vars).
- The leading slash in now part of the path if it is present.
- More documentation
- Use AutoLoader to speed things up.
- New class URI::URL::_login and made telnet, rlogin, tn3270
subclasses from this one.
- URI::URL::wais is better supported.
- URI::URL::news is better supported.
- New URI::URL::mailto methods: user/host
o HTTP::Date::time2str now works correctly with '0' as argument
o HTTP::Message delegates unknown methods to the headers.
o HTTP::Request::uri is an alias for HTTP::Request::url. Can set
the URL to undef.
o Added convenience methods to HTTP::Headers for easy access to
frequently used headers.
o Simplified LWP::Debug
o Use standard AutoLoader for LWP::IO functions.
o Played with the profiler (Devel::DProf) and made some things
go quicker.
o Included the File::CounterFile module. Excluded Mail::Cap module
as it is also part of the MailTools package.
Mon Feb 5 1996 Gisle Aas <aas@sn.no>
o Release 5b7
o Perl5.002 is required now
o Rewrite of the URI::URL module (version 4.00)
- escaping/unsafe stuff redone (and removed)
- URI::URL::_generic moved out of URL.pm
- netloc, path, params, query is now stored internally in escaped form
- new methods for URI::URL::_generic are:
epath
eparams
equery
path_components
absolute_path
- new methods for URI::URL::http are:
keywords
query_form
- new methods for URI::URL::file are:
newlocal
local_path
unix_path
dos_path
mac_path
vms_path
o URI::Escape now semi-compile regular expressions (by evaling an
anonymous sub). Same techinque is also used in HTML::Entities.
o HTTP::Date parser rewritten using regular expressions.
o HTTP::Headers->as_string() now croaks if any field values
contain newline.
o HTTP::Status constants use empty prototype.
o Font metrics moved to a new subdirectory (lib/Font/Metrics)
o Don't use the VERSION script any more (even if it was very clever)
o HTML::Entities will now export the names decode_entities() and
encode_entities().
o Andreas Koenig's black patch to HTML::Element.
o The HTML::Formatter now knows about <menu> and <dir> tags
o The construct "defined ref($arg)" did not work on perl5.002
becase ref now always return something defined.
o LWP::UserAgent sends by default an 'User-Agent' header.
o LWP::Simple sends 'User-Agent' header to servers.
o Updated the LWP::Socket module to use the new Socket.pm interface.
o LWP::Protocol::http sends the new HTTP/1.1 'Host' header.
o LWP::Protocol::file use $url->local_path to get a file to open.
It also inserts a <BASE> tag in directories instead of a redirect.
o MIME::Base64 routines can be called as MIME::Base64::encode() and
MIME::Base64::decode(). Same kind of thing for QuotedPrint.
Mon Nov 6 1995 Gisle Aas <aas@oslonett.no>
o Release 5b6
o Installation should work better for those that still runs
perl4 as 'perl'. The mirror script is not installed by
default.
o LWP::Socket::_getaddress() Numerical IP adresses did not work.
o LWP::Socket::pushback() did not work. This also avoids the bad
pp_select() core dump from perl.
o LWP::IO now also selects on socket exceptions.
o HTML::Parse: Ignore <!DOCTYPE ...> regardless for case. Some
bad insertElement() calls made infinite loops.
o The uri.t test works better for places where /tmp is a sym-link.
Sat Sep 16 1995 Gisle Aas <aas@oslonett.no>
o Release 5b5
o newlocal URI::URL does not put "//localhost" into the URLs any
longer.
o The request program: New -o option to reformat the HTML code
New -C option to provide credentials on the command line.
The -b option never worked.
o LWP::Protocol::file now returns redirect for access to directories
where the trailing slash is missing.
Thu Sep 14 1995 Gisle Aas <aas@oslonett.no>
o Speedups and bug fixes in the HTML parser. The parser now
understands some more depreciated tags (like <xmp> and <listing>).