1 2004-11-05 Gisle Aas <gisle@ActiveState.com>
7 Simplified uri_escape_utf8 implementation. No need to load the
8 Encode module. Contributed by Alexey Tourbin.
10 Work around bug in perl-5.6.0 that made t/query.t fail.
14 2004-10-05 Gisle Aas <gisle@ActiveState.com>
18 URI->canonical will now always unescape any escaped unreserved
19 chars. Previously this only happened for the http and https scheme.
20 Patch contributed by Eric Promislow <ericp@ActiveState.com>.
24 2004-09-19 Gisle Aas <gisle@ActiveState.com>
28 URI::file->canonical will now try to change the 'authority'
31 Fix heuristic test. Apparently www.perl.co.uk is no more.
35 2004-09-07 Gisle Aas <gisle@ActiveState.com>
39 Introduce $URI::file::DEFAULT_AUTHORITY which control what
40 authority string to use for absolute file URIs. Its value
41 default to "" which produce file URIs that better interoperates
42 with other implementations. The old mapping behaviour can be
43 requested by setting this variable to undef.
47 2004-06-08 Gisle Aas <gisle@ActiveState.com>
51 Added uri_escape_utf8() function to URI::Escape module.
53 Fixed abs/rel behaviour for sip: URIs. Fixed by
54 Ville Skyttä <ville.skytta@iki.fi>.
56 Avoid croaking on code like $u->query_form(a => { foo => 1 }).
57 It will still not really do anything useful.
61 2004-01-14 Gisle Aas <gisle@ActiveState.com>
65 Documentation fixes by Paul Croome <Paul.Croome@softwareag.com>.
69 2004-01-02 Gisle Aas <gisle@ActiveState.com>
73 Added support for the ldapi: and ldaps: schemes.
74 The ldaps: implementation was contributed by Graham Barr.
76 Added support for mms: scheme. Contributed by
77 Dan Sully <daniel@electricrain.com>.
81 2003-11-30 Gisle Aas <gisle@ActiveState.com>
85 The query_param_delete() method was not able to delete
86 the last parameter from a form. Similar problem existing
87 when deleting via query_param(). Patch by <awk@awks.org>.
89 The query_form() method now allow an array or hash
90 reference to be passed to set the value. This makes it
91 possible to set the value to an empty form, something that
92 the old API did not allow.
94 The query_keywords() method now allow an array reference
95 to be passed to set the value.
99 2003-10-06 Gisle Aas <gisle@ActiveState.com>
103 The URI module is now less strict about the values accepted
104 for gopher_type attribute of gopher:-URLs. Patch suggested
105 by the Net::Gopher author; William G. Davis.
109 2003-10-03 Gisle Aas <gisle@ActiveState.com>
113 Help Storable deal with URI objects. Patch contributed
114 by <talby@trap.mtview.ca.us>.
116 Fix failure under OS/2. Patch contributed by Ilya Zakharevich.
120 2003-08-18 Gisle Aas <gisle@ActiveState.com>
124 Allow literal '@' in userinfo. If there are multiple '@' chars
125 in the 'authority' component use the last (instead of first) as
126 the 'userinfo' delimiter.
128 Make URI->query_form escape '[' and ']'. These chars where added
129 to the reserved set in RFC 2732. This also match MSIE behaviour.
131 Silience warning from 'sip' support class.
135 2003-07-24 Gisle Aas <gisle@ActiveState.com>
139 Relative URIs that start with the query string directly (i.e. "?q")
140 are now absolutized as specified in rfc2396bis. See:
141 http://www.apache.org/~fielding/uri/rev-2002/issues.html#003-relative-query
143 Added URI::Split module. It's a lightweight module that can be
144 used to parse and compose URI string to/from its component parts.
146 The rel() method will now work from canonical URIs. That allow it
147 to extract a relative URI in more cases.
151 2003-01-01 Gisle Aas <gisle@ActiveState.com>
155 Support for tn3270 URIs.
157 Use anchored DNS lookups in URI::Heuristic as suggested
158 by Malcolm Weir <malc@gelt.org>.
160 Delay calculation of MY_COUNTRY() in URI::Heuristic.
161 Patch by Ed Avis <ed@membled.com>.
163 Make test suite work for UNC paths.
164 Patch by Warren Jones <wjones@fluke.com>.
168 2002-09-02 Gisle Aas <gisle@ActiveState.com>
172 Added URI::QueryParam module. It contains some
173 extra methods to manipulate the query form
176 Added support for the sip: and sips: URI scheme.
177 Contributed by Ryan Kereliuk <ryker@ryker.org>.
181 2002-08-04 Gisle Aas <gisle@ActiveState.com>
185 Restore perl-5.004 and perl-5.005 compatibility.
189 2002-07-18 Gisle Aas <gisle@ActiveState.com>
193 Direct support for some new schemes urn:, urn:isbn:,
194 urn:oid:, rtsp:, and rtspu:. The rtsp support was
195 contributed by Matt Selsky <selsky@columbia.edu>.
197 Documentation fix for $URI::ABS_REMOTE_LEADING_DOTS.
200 The host for URI::file was not unescaped.
201 Patch by Ville Skyttä <ville.skytta@iki.fi>.
205 2002-05-09 Gisle Aas <gisle@ActiveState.com>
209 URI::Heuristic will guess better on strings
210 like "123.3.3.3:8080/foo". It used to think that
211 the numbers before ":" was a scheme.
213 URI::WithBase will not keep the full history of
214 any base URI's base URI etc. This used to make
215 these objects grow into to monsters for some
218 URI::URL->new("foo", "bar")->base used to return
219 a "URI" object. Now an URI::URL object is returned
222 Deal properly with file:///-URIs.
226 2001-12-30 Gisle Aas <gisle@ActiveState.com>
230 Added support for ssh: URIs.
231 Contributed by Jean-Philippe Bouchard <jeanphil@sitepak.com>
233 URI::Escape: Make sure cache is not set when the RE
234 wouldn't compile. Fix suggested by <me-01@ton.iguana.be>.
235 Applied patch as suggested by Randal L. Schwartz.
237 Don't try to come up with the e-mail address of the user as
238 the anonymous password.
239 Patch by Eduardo Pérez <eperez@dei.inf.uc3m.es>.
243 2001-09-14 Gisle Aas <gisle@ActiveState.com>
247 Fixed unescape of %30 in $http_uri->canonical.
249 Fixed test failure for t/heuristic.t on cygwin.
251 Fixed warning noise from t/old-base.t on bleadperl.
252 Perl now warns for pack("c*", $i) when $i > 127.
256 2001-08-27 Gisle Aas <gisle@ActiveState.com>
260 URI::Escape::uri_escape default has changed. Reserved
261 characters are now escaped when no second argument is
264 The perl5.004 backwards compatibility patching taking place
265 in the Makefile.PL should now work for MacPerl.
266 Patch by KIMURA Takeshi <kim@ga2.so-net.ne.jp>.
268 URI::WithBase now overrides the can() method and delegate it to
269 the URI member. This also affects the URI::URL behaviour.
270 Patch by Sean M. Burke <sburke@cpan.org>.
274 2001-07-19 Gisle Aas <gisle@ActiveState.com>
278 [This release was made just to document the changes that went
279 into the (unreleased) URI-1.13 but never made it into this
280 change-log. There is no functional difference between the 1.14
285 2001-07-18 Gisle Aas <gisle@ActiveState.com>
289 The module failed on perl5.004 because \z is not supported
290 in regexps. The Makefile.PL will now try to patch the module
295 2001-05-15 Gisle Aas <gisle@ActiveState.com>
297 Release 1.13 (never made it to CPAN)
299 URI.pm now conforms to RFC 2732 which specify how literal IPv6
300 addresses are to be included in URLs.
302 URI/Escape now allows "/" in the $unsafe pattern argument.
306 2001-04-23 Gisle Aas <gisle@ActiveState.com>
310 URI->new($u, $scheme) does no longer fail if given a badly
311 formatted scheme string.
313 URI::WithBase's clone and base method was basically just
314 broken. This also affected the URI::URL subclass.
315 The clone() method did not copy the base, and updating
316 the base with the base method always set it to "1".
320 2001-02-27 Gisle Aas <gisle@ActiveState.com>
324 The t/heuristic.t test relied on the fact that 'www.perl.no'
325 was not registered in DNS. This is no longer true.
326 The penguins at Bouvet Island will hopefully be ignorant
331 2001-01-10 Gisle Aas <gisle@ActiveState.com>
335 The $u->query_form method will now escape spaces in
336 form keys or values as '+' (instead of '%20'). This also
337 affect the $mailto_uri->header() method. This is actually
338 the wrong thing to do, but this practise is now even
339 documented in official places like
340 http://www.w3.org/TR/html4/interact/forms.html#h-17.13.4.1
341 so we might as well follow the stream.
343 URI::Heuristic did not work for domain-names with dashes '-'
346 Documented that $uri->xxx($1) might not work.
350 2000-08-16 Gisle Aas <gisle@ActiveState.com>
354 uri_unescape() did not work when given multiple strings
355 to decode. Patch by Nicholas Clark <nick@ccl4.org>.
359 2000-08-02 Gisle Aas <gisle@ActiveState.com>
363 ldap URIs now support _scope() and _filter() methods that
364 don't have default values. Suggested by Graham Barr.
366 Incorporated old rejected MSWin32 patch to t/old-base.t.
371 2000-06-13 Gisle Aas <gisle@ActiveState.com>
375 URI::WithBase (and URI::URL) now support $u->new_abs
378 URI::WithBase->new("foo", "URI::URL") bug fixed.
382 2000-04-09 Gisle Aas <gisle@aas.no>
386 Clean test/install on VMS.
387 Patch by Charles Lane <lane@DUPHY4.Physics.Drexel.Edu>
391 2000-02-14 Gisle Aas <gisle@aas.no>
395 QNX file support by Norton Allen <allen@huarp.harvard.edu>.
397 Support for rsync:-URI by Dave Beckett <D.J.Beckett@ukc.ac.uk>
401 1999-08-03 Gisle Aas <gisle@aas.no>
405 Avoid testing for defined(@ISA) and defined(%class::). Patch
406 by Nathan Torkington <gnat@frii.com>.
408 $uri->abs() did wrong when the fragment contained a "?"
411 Typo in URI::ldap spotted by Graham Barr.
415 1999-06-24 Gisle Aas <gisle@aas.no>
419 Escape all reserved query characters in the individual components
420 of $uri->query_form and $uri->query_keywords.
422 Make compatibility URI::URL->new("mailto:gisle@aas.no")->netloc
427 1999-03-26 Gisle Aas <gisle@aas.no>
431 Added URI::ldap. Contributed by Graham Barr <gbarr@pobox.com>.
433 Documentation update.
437 1999-03-20 Gisle Aas <gisle@aas.no>
441 MacOS patches from Paul J. Schinder <schinder@leprss.gsfc.nasa.gov>
443 Documentation patch from Michael A. Chase <mchase@ix.netcom.com>
447 1998-11-19 Gisle Aas <aas@sn.no>
451 Added new URI->new_abs method
453 Replaced a few die calls with croak.
457 1998-10-12 Gisle Aas <aas@sn.no>
461 Implemented new $uri->host_port method.
463 $uri->epath and $uri->equery aliases to make URI::URL
464 compatibility easier.
468 1998-09-23 Gisle Aas <aas@sn.no>
474 Makefile.PL list MIME::Base64 as PREREQ_PM
476 Original $scheme argument not passed to _init() method.
478 Automatically add scheme to empty URIs where the scheme
479 is required: URI->new("", "data")
481 Documentation update.
483 New URI::URL::strict implementation.
487 1998-09-22 Gisle Aas <aas@sn.no>
491 New internal URI::file::* interface. Implemented 8.3 mapping
494 Got rid of $URI::STRICT and $URI::DEFAULT_SCHEME
500 1998-09-13 Gisle Aas <aas@sn.no>
504 Use version number with underscore to avoid that the CPAN
505 indexer hides the URI::URL from libwww-perl that contains
506 all the documentation.
508 Started to document the new modules.
510 URI::file->new() escape fix which allow Mac file names like
511 ::.. to be treated as they should (I think).
515 1998-09-12 Gisle Aas <aas@sn.no>
519 Included URI::Escape and URI::Heuristic from LWP. URI::Escape
520 updated with new default set of characters to escape (according
521 to RFC 2396) and a faster uri_unescape() function. URI::Heuristic
522 with new funtion that returns an URI object.
524 First argument to URI->new is always treated as a string now.
526 URI->new("", URI::WithBase("foo:")) now works. It returns an
527 URI::WithBase object.
529 Included Roy T. Fielding's URI parsing/abs tests from
530 <http://www.ics.uci.edu/~fielding/url/>. We did in fact agree
531 with RFC 2396 on all tests.
533 Allow authority "A|" in Win32 file:-URIs to denote A:. Treat
538 1998-09-10 Gisle Aas <aas@sn.no>
542 Implemented transformations between various file: URIs and
543 actual file names. New URI::file methods:
553 1998-09-09 Gisle Aas <aas@sn.no>
557 Implemented rlogin, telnet and file URLs.
559 Implemented URI::WithBase
561 Implemented URI::URL emulator (ported old URI::URL test suite)
563 Can now use schemes with "-", "+" or "." characters in them.
565 $u->scheme will downcase. $u->_scheme will keep it as it is.
567 Configuration variables for $u->abs
569 $u->query_form and $u->query_keyword is more careful about escaping
574 $u->_port if you want to bypass $u->default_port
576 Can handle news message-ids with embedded "/" now
580 1998-09-08 Gisle Aas <aas@sn.no>
584 Implemented gopher URLs
588 Second ctor argument can be a plain scheme name. If it is an
589 object, then we use the class of the object as implementor.
591 Protect literal % in various places by escaping
593 Path segments with parameters is not arrays of class URI::_segment,
594 which overload stingify operator.
596 URI::http->canonical will now unescape unreserved characters.
600 1998-09-08 Gisle Aas <aas@sn.no>
604 Implemented news URLs (together with snews/nntp)
606 Implemented pop URLs (RFC 2384)
608 Can now use '==' to compare if two URI objects are the same or not.
610 $u->opaque_part renamed as $u->opaque
612 Better canonicalization
614 Faster $u->abs (especially for URI that already are absolute)
616 $u->query_form will keep more chars unescaped
620 1998-09-06 Gisle Aas <aas@sn.no>
624 Implemented mailto:-URLs (specified in RFC 2368)
626 Moved query() methods to internal URI::_query mixin class.
628 Escape stuff in the media_type field of data:-URLs.
632 1998-09-06 Gisle Aas <aas@sn.no>
634 Release 0.03 based on simplified scalar object.
638 1998-09-02 Gisle Aas <aas@sn.no>
640 Release 0.02 based on perl5.005 and fields.pm
644 1998-04-10 Gisle Aas <aas@sn.no>