forked from libwww-perl/URI
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Changes
873 lines (468 loc) · 20.6 KB
/
Changes
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
2011-01-23 Gisle Aas <[email protected]>
Release 1.58
This release reverts the patch in 1.57 that made query_form distingush
between empty and undef values. It broke stuff. [RT#62708]
2011-01-22 Gisle Aas <[email protected]>
Release 1.57
Mark Stosberg (8):
typo fix: s/do deal/to deal/
best practice: s/foreach /for /
Whitespace: fix inconsistent use of tabs vs spaces
Code style: fix inconsistency with subroutine braces at the end of the line vs below it.
Modernize: s/use vars/our/ ... since we require 5.6 as a minimum version now
Whitespace: fix indentation so blocks are consistently indented
Add formal terms "Percent-encode" and "Percent-decode" to the NAME and description to match the RFC
Drop support for Perl < 5.8.1 Perl 5.8 was released almost 10 years ago. It's time.
Gisle Aas (6):
Convert test to use Test::More
Adjust tests for query_form
Avoid "Use of uninitialized value"-noise from query_form
State test dependencies [RT#61538]
We also depend on ExtUtils::MakeMaker
State 5.8 dependency in the META.yml file
Ville Skyttä (2):
Guess HTTPS and FTP from URI::Heuristic input with port but no scheme.
Try harder to guess scheme from hostnames besides just "$scheme.*" ones.
John Miller (1):
Distingush between empty and undef values in query_form [RT#62708]
2010-10-06 Gisle Aas <[email protected]>
Release 1.56
Don't depend on DNS for the heuristics test
2010-09-01 Gisle Aas <[email protected]>
Release 1.55
Gisle Aas (2):
Treat ? as a reserved character in file: URIs
" is not a URI character [RT#56421]
Torsten F<C3><B6>rtsch (1):
Avoid test failure unless defined $Config{useperlio}
2010-03-31 Gisle Aas <[email protected]>
Release 1.54
Alex Kapranoff (1):
Fix heuristic test fails on hosts in .su (or .uk) domains [RT#56135]
2010-03-14 Gisle Aas <[email protected]>
Release 1.53
Ville Skyttä (6):
Remove unneeded execute permissions.
Add $uri->secure() method.
Documentation and comment spelling fixes.
Fix heuristics when COUNTRY is set to "gb".
Use HTTP_ACCEPT_LANGUAGE, LC_ALL, and LANG in country heuristics.
POD linking improvements.
Michael G. Schwern (2):
Rewrite the URI::Escape tests with Test::More
Update URI::Escape for RFC 3986
Gisle Aas (1):
Bump MIN_PERL_VERSION to 5.6.1 [RT#54078]
Salvatore Bonaccorso (1):
Suppress wide caracters warnings in iri.t [RT#53737]
2009-12-30 Gisle Aas <[email protected]>
Release 1.52
Gisle Aas (7):
Encode::decode('UTF-8',...) with callback implemented in 2.39
%%host%% hack can be removed when URI::_server::as_iri works
Don't croak on IRIs that can't be IDNA encoded
IDNA roundtrip test on wrong variable
Check behaviour when feeded URI constructor Latin-1 chars
Add some test examples from draft-duerst-iri-bis.txt
Need to recognize lower case hex digits as well
2009-11-23 Gisle Aas <[email protected]>
Release 1.51
Fixup a test that was broken on Windows
2009-11-21 Gisle Aas <[email protected]>
Release 1.50
The main news in this release is the initial attempt at providing
support to IRIs. URI objects now support the 'as_iri' and 'ihost'
methods.
Gisle Aas (28):
Added more tests for setting IPv6 addresses using the host method
Document how the host methods deal with IPv6 addresses
A "test case" to start IDNA prototype from
Escape IDNA hostnames
Introduce the as_unicode method
Make as_unicode undo punycode for server URLs
An IRI class might be helpful (RFC 3987)
Must punycode each part of the domain name separately
Include initial private Punycode module
Get URI::_punycode working
punycode of plain ascii should not edit with "-"
Some more tests from RFC 3492
Add private URI::_idna module based on encodings/idna.py
Start using URI::_idna for encoding of URIs
Avoid various use of undef warnings
Fix test affected by IDNA
Keep reference to IDNA::Punycode in the URI::_punycode docs
Ensure upgraded strings as input
Update manifest with the new idna/punycode files
Rename as_unicde to as_iri
draft-duerst-iri-bis-07: The proposed RFC 3987 update
Load Encode when its used
Rename host_unicode as ihost
Add basic iri test
Hack to make as_iri turn A-labels into U-labels
Make as_iri leave escapes not forming valid UTF-8 sequences
Merge branch 'iri'
Don't include RFCs in the cpan tarball
Michael G. Schwern (3):
Fix != overloading to match ==
Note that mailto does not contain a host() and this is not a bug.
Strip brackets off IPv6 hosts [RT#34309]
2009-08-14 Gisle Aas <[email protected]>
Release 1.40
Even stricter test for working DNS, 2nd try.
2009-08-13 Gisle Aas <[email protected]>
Release 1.39
Even stricter test for working DNS, hopefully this gets rid of the rest of
the heuristics.t failures.
2009-05-27 Gisle Aas <[email protected]>
Release 1.38
Ville Skyttä (3):
Spelling fixes.
Tatsuhiko Miyagawa (1):
skip DNS test if wildcard domain catcher (e.g. OpenDNS) is there
Gisle Aas (1):
Avoid "Insecure $ENV{PATH} while running with -T switch" error with perl-5.6.
2008-06-16 Gisle Aas <[email protected]>
Release 1.37
Gisle Aas (1):
Support ";" delimiter in $u->query_form
Jan Dubois (1):
We get different test result when www.perl.com doesn't resolve.
Kenichi Ishigaki (1):
URI::Heuristic didn't work for generic country code [RT#35156]
2008-04-03 Gisle Aas <[email protected]>
Release 1.36
<[email protected]>: Escape Unicode strings as UTF-8.
Bjoern Hoehrmann <[email protected]>: fixed URL encoded data: URLs
GAAS: uri_escape_utf8() now exported by default as documented.
BDFOY: Test fails with Business::ISBN installed [RT#33220]
JDHEDDEN: lc(undef) reports warning in blead [RT#32742]
GEOFFR: add some tests for gopher URIs [RT#29211]
2004-11-05 Gisle Aas <[email protected]>
Release 1.35
Documentation update.
Simplified uri_escape_utf8 implementation. No need to load the
Encode module. Contributed by Alexey Tourbin.
Work around bug in perl-5.6.0 that made t/query.t fail.
2004-10-05 Gisle Aas <[email protected]>
Release 1.34
URI->canonical will now always unescape any escaped unreserved
chars. Previously this only happened for the http and https scheme.
Patch contributed by Eric Promislow <[email protected]>.
2004-09-19 Gisle Aas <[email protected]>
Release 1.33
URI::file->canonical will now try to change the 'authority'
to the default one.
Fix heuristic test. Apparently www.perl.co.uk is no more.
2004-09-07 Gisle Aas <[email protected]>
Release 1.32
Introduce $URI::file::DEFAULT_AUTHORITY which control what
authority string to use for absolute file URIs. Its value
default to "" which produce file URIs that better interoperates
with other implementations. The old mapping behaviour can be
requested by setting this variable to undef.
2004-06-08 Gisle Aas <[email protected]>
Release 1.31
Added uri_escape_utf8() function to URI::Escape module.
Fixed abs/rel behaviour for sip: URIs. Fixed by
Ville Skyttä <[email protected]>.
Avoid croaking on code like $u->query_form(a => { foo => 1 }).
It will still not really do anything useful.
2004-01-14 Gisle Aas <[email protected]>
Release 1.30
Documentation fixes by Paul Croome <[email protected]>.
2004-01-02 Gisle Aas <[email protected]>
Release 1.29
Added support for the ldapi: and ldaps: schemes.
The ldaps: implementation was contributed by Graham Barr.
Added support for mms: scheme. Contributed by
Dan Sully <[email protected]>.
2003-11-30 Gisle Aas <[email protected]>
Release 1.28
The query_param_delete() method was not able to delete
the last parameter from a form. Similar problem existing
when deleting via query_param(). Patch by <[email protected]>.
The query_form() method now allow an array or hash
reference to be passed to set the value. This makes it
possible to set the value to an empty form, something that
the old API did not allow.
The query_keywords() method now allow an array reference
to be passed to set the value.
2003-10-06 Gisle Aas <[email protected]>
Release 1.27
The URI module is now less strict about the values accepted
for gopher_type attribute of gopher:-URLs. Patch suggested
by the Net::Gopher author; William G. Davis.
2003-10-03 Gisle Aas <[email protected]>
Release 1.26
Help Storable deal with URI objects. Patch contributed
by <[email protected]>.
Fix failure under OS/2. Patch contributed by Ilya Zakharevich.
2003-08-18 Gisle Aas <[email protected]>
Release 1.25
Allow literal '@' in userinfo. If there are multiple '@' chars
in the 'authority' component use the last (instead of first) as
the 'userinfo' delimiter.
Make URI->query_form escape '[' and ']'. These chars where added
to the reserved set in RFC 2732. This also matches MSIE behaviour.
Silence warning from 'sip' support class.
2003-07-24 Gisle Aas <[email protected]>
Release 1.24
Relative URIs that start with the query string directly (i.e. "?q")
are now absolutized as specified in rfc2396bis. See:
http://www.apache.org/~fielding/uri/rev-2002/issues.html#003-relative-query
Added URI::Split module. It's a lightweight module that can be
used to parse and compose URI string to/from its component parts.
The rel() method will now work from canonical URIs. That allow it
to extract a relative URI in more cases.
2003-01-01 Gisle Aas <[email protected]>
Release 1.23
Support for tn3270 URIs.
Use anchored DNS lookups in URI::Heuristic as suggested
by Malcolm Weir <[email protected]>.
Delay calculation of MY_COUNTRY() in URI::Heuristic.
Patch by Ed Avis <[email protected]>.
Make test suite work for UNC paths.
Patch by Warren Jones <[email protected]>.
2002-09-02 Gisle Aas <[email protected]>
Release 1.22
Added URI::QueryParam module. It contains some
extra methods to manipulate the query form
key/value pairs.
Added support for the sip: and sips: URI scheme.
Contributed by Ryan Kereliuk <[email protected]>.
2002-08-04 Gisle Aas <[email protected]>
Release 1.21
Restore perl-5.004 and perl-5.005 compatibility.
2002-07-18 Gisle Aas <[email protected]>
Release 1.20
Direct support for some new schemes urn:, urn:isbn:,
urn:oid:, rtsp:, and rtspu:. The rtsp support was
contributed by Matt Selsky <[email protected]>.
Documentation fix for $URI::ABS_REMOTE_LEADING_DOTS.
CPAN-RT-Bug #1224.
The host for URI::file was not unescaped.
Patch by Ville Skyttä <[email protected]>.
2002-05-09 Gisle Aas <[email protected]>
Release 1.19
URI::Heuristic will guess better on strings
like "123.3.3.3:8080/foo". It used to think that
the numbers before ":" was a scheme.
URI::WithBase will not keep the full history of
any base URI's base URI etc. This used to make
these objects grow into to monsters for some
web spiders.
URI::URL->new("foo", "bar")->base used to return
a "URI" object. Now an URI::URL object is returned
instead.
Deal properly with file:///-URIs.
2001-12-30 Gisle Aas <[email protected]>
Release 1.18
Added support for ssh: URIs.
Contributed by Jean-Philippe Bouchard <[email protected]>
URI::Escape: Make sure cache is not set when the RE
wouldn't compile. Fix suggested by <[email protected]>.
Applied patch as suggested by Randal L. Schwartz.
Don't try to come up with the e-mail address of the user as
the anonymous password.
Patch by Eduardo Pérez <[email protected]>.
2001-09-14 Gisle Aas <[email protected]>
Release 1.17
Fixed unescape of %30 in $http_uri->canonical.
Fixed test failure for t/heuristic.t on cygwin.
Fixed warning noise from t/old-base.t on bleadperl.
Perl now warns for pack("c*", $i) when $i > 127.
2001-08-27 Gisle Aas <[email protected]>
Release 1.16
URI::Escape::uri_escape default has changed. Reserved
characters are now escaped when no second argument is
provided.
The perl5.004 backwards compatibility patching taking place
in the Makefile.PL should now work for MacPerl.
Patch by KIMURA Takeshi <[email protected]>.
URI::WithBase now overrides the can() method and delegate it to
the URI member. This also affects the URI::URL behaviour.
Patch by Sean M. Burke <[email protected]>.
2001-07-19 Gisle Aas <[email protected]>
Release 1.15
[This release was made just to document the changes that went
into the (unreleased) URI-1.13 but never made it into this
change-log. There is no functional difference between the 1.14
and 1.15 release.]
2001-07-18 Gisle Aas <[email protected]>
Release 1.14
The module failed on perl5.004 because \z is not supported
in regexps. The Makefile.PL will now try to patch the module
to be compatible.
2001-05-15 Gisle Aas <[email protected]>
Release 1.13 (never made it to CPAN)
URI.pm now conforms to RFC 2732 which specify how literal IPv6
addresses are to be included in URLs.
URI/Escape now allows "/" in the $unsafe pattern argument.
2001-04-23 Gisle Aas <[email protected]>
Release 1.12
URI->new($u, $scheme) does no longer fail if given a badly
formatted scheme string.
URI::WithBase's clone and base method was basically just
broken. This also affected the URI::URL subclass.
The clone() method did not copy the base, and updating
the base with the base method always set it to "1".
2001-02-27 Gisle Aas <[email protected]>
Release 1.11
The t/heuristic.t test relied on the fact that 'www.perl.no'
was not registered in DNS. This is no longer true.
The penguins at Bouvet Island will hopefully be ignorant
of Perl forever.
2001-01-10 Gisle Aas <[email protected]>
Release 1.10
The $u->query_form method will now escape spaces in
form keys or values as '+' (instead of '%20'). This also
affect the $mailto_uri->header() method. This is actually
the wrong thing to do, but this practise is now even
documented in official places like
http://www.w3.org/TR/html4/interact/forms.html#h-17.13.4.1
so we might as well follow the stream.
URI::Heuristic did not work for domain-names with dashes '-'
in them. Fixed.
Documented that $uri->xxx($1) might not work.
2000-08-16 Gisle Aas <[email protected]>
Release 1.09
uri_unescape() did not work when given multiple strings
to decode. Patch by Nicholas Clark <[email protected]>.
2000-08-02 Gisle Aas <[email protected]>
Release 1.08
ldap URIs now support _scope() and _filter() methods that
don't have default values. Suggested by Graham Barr.
Incorporated old rejected MSWin32 patch to t/old-base.t.
Hope it works.
2000-06-13 Gisle Aas <[email protected]>
Release 1.07
URI::WithBase (and URI::URL) now support $u->new_abs
constructor.
URI::WithBase->new("foo", "URI::URL") bug fixed.
2000-04-09 Gisle Aas <[email protected]>
Release 1.06
Clean test/install on VMS.
Patch by Charles Lane <[email protected]>
2000-02-14 Gisle Aas <[email protected]>
Release 1.05
QNX file support by Norton Allen <[email protected]>.
Support for rsync:-URI by Dave Beckett <[email protected]>
1999-08-03 Gisle Aas <[email protected]>
Release 1.04
Avoid testing for defined(@ISA) and defined(%class::). Patch
by Nathan Torkington <[email protected]>.
$uri->abs() did wrong when the fragment contained a "?"
character.
Typo in URI::ldap spotted by Graham Barr.
1999-06-24 Gisle Aas <[email protected]>
Release 1.03
Escape all reserved query characters in the individual components
of $uri->query_form and $uri->query_keywords.
Make compatibility URI::URL->new("mailto:[email protected]")->netloc
work again.
1999-03-26 Gisle Aas <[email protected]>
Release 1.02
Added URI::ldap. Contributed by Graham Barr <[email protected]>.
Documentation update.
1999-03-20 Gisle Aas <[email protected]>
Release 1.01
MacOS patches from Paul J. Schinder <[email protected]>
Documentation patch from Michael A. Chase <[email protected]>
1998-11-19 Gisle Aas <[email protected]>
Release 1.00
Added new URI->new_abs method
Replaced a few die calls with croak.
1998-10-12 Gisle Aas <[email protected]>
Release 0.90_02
Implemented new $uri->host_port method.
$uri->epath and $uri->equery aliases to make URI::URL
compatibility easier.
1998-09-23 Gisle Aas <[email protected]>
Release 0.90_01
New README
Makefile.PL list MIME::Base64 as PREREQ_PM
Original $scheme argument not passed to _init() method.
Automatically add scheme to empty URIs where the scheme
is required: URI->new("", "data")
Documentation update.
New URI::URL::strict implementation.
1998-09-22 Gisle Aas <[email protected]>
Release 0.09_02
New internal URI::file::* interface. Implemented 8.3 mapping
for "dos".
Got rid of $URI::STRICT and $URI::DEFAULT_SCHEME
More documentation.
1998-09-13 Gisle Aas <[email protected]>
Release 0.09_01
Use version number with underscore to avoid that the CPAN
indexer hides the URI::URL from libwww-perl that contains
all the documentation.
Started to document the new modules.
URI::file->new() escape fix which allow Mac file names like
::.. to be treated as they should (I think).
1998-09-12 Gisle Aas <[email protected]>
Release 0.09
Included URI::Escape and URI::Heuristic from LWP. URI::Escape
updated with new default set of characters to escape (according
to RFC 2396) and a faster uri_unescape() function. URI::Heuristic
updated with a new function that returns an URI object.
First argument to URI->new is always treated as a string now.
URI->new("", URI::WithBase("foo:")) now works. It returns an
URI::WithBase object.
Included Roy T. Fielding's URI parsing/abs tests from
<http://www.ics.uci.edu/~fielding/url/>. We did in fact agree
with RFC 2396 on all tests.
Allow authority "A|" in Win32 file:-URIs to denote A:. Treat
escaped chars.
1998-09-10 Gisle Aas <[email protected]>
Release 0.08
Implemented transformations between various file: URIs and
actual file names. New URI::file methods:
new
new_abs
cwd
file
dir
1998-09-09 Gisle Aas <[email protected]>
Release 0.07
Implemented rlogin, telnet and file URLs.
Implemented URI::WithBase
Implemented URI::URL emulator (ported old URI::URL test suite)
Can now use schemes with "-", "+" or "." characters in them.
$u->scheme will downcase. $u->_scheme will keep it as it is.
Configuration variables for $u->abs
$u->query_form and $u->query_keyword is more careful about escaping
"+" and "=".
$u->host unescaped
$u->_port if you want to bypass $u->default_port
Can handle news message-ids with embedded "/" now
1998-09-08 Gisle Aas <[email protected]>
Release 0.06
Implemented gopher URLs
Implemented ftp URLs
Second ctor argument can be a plain scheme name. If it is an
object, then we use the class of the object as implementor.
Protect literal % in various places by escaping
Path segments with parameters are not arrays of class URI::_segment,
which overloads the stringify operator.
URI::http->canonical will now unescape unreserved characters.
1998-09-08 Gisle Aas <[email protected]>
Release 0.05
Implemented news URLs (together with snews/nntp)
Implemented pop URLs (RFC 2384)
Can now use '==' to compare if two URI objects are the same or not.
$u->opaque_part renamed as $u->opaque
Better canonicalization
Faster $u->abs (especially for URI that already are absolute)
$u->query_form will keep more chars unescaped
1998-09-06 Gisle Aas <[email protected]>
Release 0.04
Implemented mailto:-URLs (specified in RFC 2368)
Moved query() methods to internal URI::_query mixin class.
Escape stuff in the media_type field of data:-URLs.
1998-09-06 Gisle Aas <[email protected]>
Release 0.03 based on simplified scalar object.
1998-09-02 Gisle Aas <[email protected]>
Release 0.02 based on perl5.005 and fields.pm
1998-04-10 Gisle Aas <[email protected]>
Release 0.01