Fix #533572
[mono.git] / mcs / class / System / System / ChangeLog
1 2009-09-01  Raja R Harinath  <harinath@hurrynot.org>
2
3         Fix #533572
4         * Uri.cs (ParseNoExceptions): Don't look for '@' in absolute unix paths.
5
6 2009-05-16  Sebastien Pouliot  <sebastien@ximian.com>
7
8         * Uri.cs (NET_2_1): Remove some extra code for NET_2_1
9
10 2009-04-23  Sebastien Pouliot  <sebastien@ximian.com>
11
12         * UriParser.cs: Don't use compiled regex on NET_2_1 (feature is
13         not available)
14
15 2009-04-21  Sebastien Pouliot  <sebastien@ximian.com>
16
17         * DefaultUriParser.cs: Add special case for schema
18         * Uri.cs: Make sure we can use a default parser if none was
19         registred for the URI schema.
20         * UriParser.cs: Handle "*" as a special schema for "anything"
21         [Fix bug #496783]
22
23 2009-04-21  Sebastien Pouliot  <sebastien@ximian.com>
24
25         * Uri.cs: Fix some issues found with Moonlight (see new unit
26         tests)
27
28 2009-04-14  Sebastien Pouliot  <sebastien@ximian.com>
29
30         * Uri.cs: Fix processing of %2f and %5c in paths. Avoid a few
31         computation where the result is not used (overwritten)
32
33 2009-03-16  Raja R Harinath  <harinath@hurrynot.org>
34
35         Reduce dependence of UriParser on Uri
36         * UriParser.cs (GetComponents): Don't refer to fields of Uri to
37         extract components.  Use a pair of regexes instead on
38         Uri.OriginalString.
39         * Uri.cs (OriginalString): Make available as an internal property
40         in the NET_1_1 profile.
41
42 2009-03-10  Jackson Harper  <jackson@ximian.com>
43
44         * Uri.cs: 2.1 Uris do get a UriTypeConverter.
45
46 2009-02-18  Atsushi Enomoto  <atsushi@ximian.com>
47
48         * Uri.cs : file URI for Windows path should also try '\' instead of
49           '/' as a host/path separator.
50
51 2009-02-09  Raja R Harinath  <harinath@hurrynot.org>
52
53         * IUriData.cs, UriData.cs: New.  Initial cut at UriParser protocol.
54
55         Make UriParser available in the NET_1_1 build
56         * UriParser.cs: Make visible as internal class in the NET_1_1 build.
57         * UriComponents.cs, UriFormats.cs, DefaultUriParser.cs: Likewise.
58         * GenericUriParser.cs, GenericUriParserOptions.cs: Likewise.
59
60 2009-02-08  Gert Driesen  <drieseng@users.sourceforge.net>
61
62         * Uri.cs: Moved UriKind check from TryCreate to exception-less .ctor,
63         and check accessibility of this .ctor from internal to private.
64
65 2009-01-28  Bill Holmes  <billholmes54@gmail.com>
66
67         * Uri.cs (IsWellFormedUriString):  Changing IsWellFormedUriString
68           to not throw an exception but return false instead. 
69
70         Contributed under MIT/X11 license.
71
72 2009-15-01  Leeszek Ciesielski <skolima@gmail.com>
73
74         * Uri.cs: Use registered UriParser when a custom schema is passed
75         Fixes 464235, but is a bit of a hack
76
77 2009-01-13  Stephane Delcroix  <sdelcroix@novell.com>
78
79         * Uri.cs: Fix the previous patch for 1.0 profile
80
81 2009-01-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
82
83         * Uri.cs: avoid throwing exceptions when checking for the host name
84         type.
85
86 2009-01-07  Sebastien Pouliot  <sebastien@ximian.com>
87
88         * UriTypeConverter.cs: Customize for NET_2_1 since this type is 
89         not part of System.Windows.dll anymore
90
91 2008-12-20  Miguel de Icaza  <miguel@novell.com>
92
93         * GenericUriParserOptions.cs: Idn and IriParsing are now part of
94         .NET 
95
96 2008-09-16  Miguel de Icaza  <miguel@novell.com>
97
98         * Uri.cs (TryCreate): Implement one of the TryCreate methods
99         without throwing exceptions.   Still two more to go, the hardest
100         ones. 
101
102         Part of a fix for #424192.
103
104 2008-09-08  Miguel de Icaza  <miguel@novell.com>
105
106         * Uri.cs (MaybeUri): A helper routine for methods in other classes
107         to quickly determine if something might be a Uri, before calling
108         the more expensive Uri.TryCreate (see bug 424192).
109
110 2008-08-08  Sebastien Pouliot  <sebastien@ximian.com>
111
112         * UriTypeConverter.cs: Fix cp typo found when cp (of course ;-) 
113         code into Silverlight's System.Windows.dll
114
115 2008-08-07  Sebastien Pouliot  <sebastien@ximian.com>
116
117         * GenericUriParserOptions.cs: Add new values for SL2 (NET_2_1)
118         * UriFormatException.cs: Add ctor(string,Exception) for SL2 (NET_2_1)
119         * UriIdnScope.cs: Fix values
120
121 2008-08-06  Miguel de Icaza  <miguel@novell.com>
122
123         * Uri.cs: Use exception-less operations.
124
125 2008-07-31  Jb Evain  <jbevain@novell.com>
126
127         * Uri.cs: cleanup for NET_2_1.
128
129 2008-05-29  Marek Habersack  <mhabersack@novell.com>
130
131         * UriParser.cs: use the lock in CreateDefaults in the way that it
132         needs to acquired only once.
133
134 2008-03-10  Stephane Delcroix  <sdelcroix@novell.com>
135
136         * Uri.cs: Fix escaping on utf8 strings. bug 363320.
137
138 2008-02-15  Atsushi Enomoto  <atsushi@ximian.com>
139
140         * Uri.cs : UriParser field blocks serialization.
141
142 2008-01-23  Robert Jordan  <robertj@gmx.net>
143
144         * Uri.cs (Parse): Handle uriString.Length == 1 as a valid relative URI.
145         Fixes #346432.
146
147 2007-12-04  Arina Itkes <arinai@mainsoft.com>
148
149         * Uri.cs: Unix absolute path should not be valid on Windows.
150
151 2007-11-13  Zoltan Varga  <vargaz@gmail.com>
152
153         * UriIdnScope.cs: Compile this in the 2.0 profile as well as this is a NET 3.5 type.
154
155 2007-11-06  Sebastien Pouliot  <sebastien@ximian.com>
156
157         * Uri.cs: Revert monodoc hack from r53093 since bug #319550 (old
158         #76725) has been fixed (around 2006-05-21).
159
160 2007-11-06  Gert Driesen  <drieseng@users.sourceforge.net>
161
162         * UriBuilder.cs: Fixed regression introduced by patch for bug
163         #323247: always initialize UriBuilder.Query to zero-length string.
164         On 2.0 profile, do not initialize query to zero-length string when
165         Fragment is set. Remove extra tabs.
166
167 2007-11-04  Jensen Somers <jensen.somers@gmail.com>
168
169         * UriBuilder.cs (ToString): Added Fragment property to the
170         return string.
171         
172         (Fragment, Query): Properties are no longer set to an empty
173         string from version 2.0 and up.
174
175 2007-11-02  Miguel de Icaza  <miguel@novell.com>
176
177         * Uri.cs (AppendQueryAndFragment): Unescape the query with
178         excludeSpecial = false.  See bug #320614.
179
180         Unlike the patch on that bug, this only unescapes the query and
181         not the Path.   This keeps our existing tests working. 
182
183 2007-09-29  Miguel de Icaza  <miguel@novell.com>
184
185         * Uri.cs (ToString, MakeRelativeUri): refactor some code in
186         ToString to be reusable (to append the query string and the
187         fragment) by MakeRelativeUrl.
188
189         This fixes the MakeRelativeUrl stuff, but the tests can not be
190         used just yet because we fail with stuff like: 
191
192                 new Uri ("", UriKind.Relative)
193
194         (Parse): when parsing absolute filenames, check if the
195         UriKind is Relative, and if so, make the isAbsoluteUri false, to
196         ensure that the upper layers do not abort with relative Uris that
197         happen to be "/foo" for example.
198
199         Take an UriKind property to allow for proper checking and parsing
200         depending on the context requested by the caller. 
201
202         Allows empty strings to be relative Uris as well.
203
204         Do checking when we have schema:// that the parsing is not for a
205         UriKind.Relative, otherwise throw an exception. 
206
207         (Authority, HostNameType, IsDefaultPort, IsFile, IsLoopback,
208         PathAndQuery, DnsSafeHost): They all require absolute uris.
209
210         * UriKind.cs: make internal for 1.0
211         
212 2007-09-05  Marek Habersack  <mhabersack@novell.com>
213
214         * UriTypeConverter.cs: conversion from string should be possible
215         for both relative and absolute URIs.
216         Conversion to a string or an InstanceDescriptor must not assume
217         that the uri is absolute.
218         ConvertTo must pass the uri kind to the constructor used in
219         InstanceDescriptor.
220
221 2007-08-01  Atsushi Enomoto  <atsushi@ximian.com>
222
223         * Uri.cs, UriParser.cs : implemented InitializeAndValidate() and
224           IsWellFormedOriginalString().
225           IsWellFormedUriString() is already implemented.
226
227 2007-07-06  Alan McGovern  <amcgovern@novell.com>
228
229         * Uri.cs : The URI string should be whitespace trimmed before
230         parsing. The original string is untouched. Fixes #81960.
231
232 2007-07-06  Atsushi Enomoto  <atsushi@ximian.com>
233
234         * UriIdnScope.cs : new file (for net_2_1 profile).
235
236 2007-06-30  Miguel de Icaza  <miguel@novell.com>
237
238         * Uri.cs (GetLeftPart): If the URI is relative this method throws
239         InvalidOperationException. 
240
241         (ToString): do not use GetLeftPart here, instead escape the path. 
242
243         (Parse): For relative uris, keep the string as the path.
244
245 2007-06-30  Gert Driesen  <drieseng@users.sourceforge.net>
246
247         * Uri.cs: Canonicalize is only obsolete from 2.0 onward. Fixed line
248         endings.
249
250 2007-04-18  Igor Zelmanovich  <igorz@mainsoft.com>
251
252         * Uri.cs: added MonoNotSupported attributes.
253
254 2007-04-16  Atsushi Enomoto  <atsushi@ximian.com>
255
256         * Uri.cs : in Uri(baseUri,relativeUri,noEscape), relativeUri could
257           contain a URI scheme. In such cases the relativeUri could be still
258           relative (i.e. not always equivalent to absolute). Fixed bug #81382.
259
260 2007-03-05  Peter Dettman  <peter.dettman@iinet.net.au>
261
262         * Uri.cs: This patch straightens out Equals/GetHashCode for the
263         Uri class: 
264
265         - GetHashCode gives sensible values for relative Uri's.
266         - Uri's that compare equal will give same hashcode.  
267         - operator == now uses Equals.
268
269         All existing tests still pass, and I have added some extra test
270         cases specifically for Equals/GetHashCode on relative Uri's
271         (included in patch).
272
273 2007-01-22  Miguel de Icaza  <miguel@novell.com>
274
275         * Uri.cs (MakeRelativeUri): implement, copy most of the code from
276         MakeRelative. 
277         
278         (EscapeUriString, EscapeDataString): Implement stuff
279         needed by apps in Moma.
280
281 2006-12-07  Vladimir Krasnov  <vladimirk@mainsoft.com>
282
283         * Uri.cs: implemented UnescapeDataString method
284
285 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
286
287         * UriParser.cs: TARGET_JVM
288         * UriFormatException.cs: MonoTODO
289
290 2006-08-01  Atsushi Enomoto  <atsushi@ximian.com>
291
292         * Uri.cs : don't compare UserInfo in Equals() and op_Equality().
293           Fixed a bug commented in #78799.
294
295 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
296
297         * Uri.cs: update Obsolete msg.
298
299 2006-06-05  Atsushi Enomoto  <atsushi@ximian.com>
300
301         * Uri.cs : revert the previous change as it caused UriTest.
302           Constructors(#rel2a). ToString() for SourceString should be
303           enough for lame users.
304
305 2006-05-13  Atsushi Enomoto  <atsushi@ximian.com>
306
307         * Uri.cs : sometimes OriginalString was null. Fixed bug #78374.
308           Actually this property is LAMESPEC. Never use it.
309
310 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
311
312         * Uri.cs : Patch by pawel.sakowski@mind-breeze.com (bug #77382).
313           Reduce object allocation and avoid culture-sensitive comparison.
314
315 2006-03-11  Miguel de Icaza  <miguel@novell.com>
316
317         * Uri.cs: Pragma disable warning 612 (Obsolete methods are being
318         used by us internally).
319
320         Ponder: should we instead move our methods to use new versions of
321         the Obsoleted ones?
322
323 2006-02-21  Atsushi Enomoto  <atsushi@ximian.com>
324
325         * Uri.cs : seems like Uri opreator == and != are case sensitive.
326
327 2006-02-19  Raja R Harinath  <harinath@gmail.com>
328
329         * Uri.cs (InternalEquals): New helper.
330         (Equals, operator ==): Use it.
331         (operator !=): Likewise.  Fix to actually compare operands.
332
333 2006-02-14  Atsushi Enomoto  <atsushi@ximian.com>
334
335         * Uri.cs : implemented op_Equality and op_Inequality.
336
337 2006-02-14  Ankit Jain  <jankit@novell.com>
338
339         * Uri.cs (Uri.EnsureAbsoluteUri): New. Throws exception if its not an
340         absolute uri.
341         (Uri.Parse): Set isAbsoluteUri to false, if the address is not absolute.
342         All properties other than OriginalString, IsAbsoluteUri & UserEscaped
343         throw exception for relative address.
344
345 2005-11-25  Sebastien Pouliot  <sebastien@ximian.com> 
346
347         * DefaultUriParser.cs: Added an internal default parser because (a)
348         UriParser is abstract and (b) MS doesn't always use the new parser
349         classes :(
350         * Uri.cs: Implemented Compare method. Added some FIXME.
351         * UriParser.cs: Implemented GetComponents and IsBaseOf methods. 
352         Changed parsers to point to the new DefaultUriParser.
353
354 2005-11-15  Sebastien Pouliot  <sebastien@ximian.com> 
355  
356         * Uri.cs: Temporary fix for monodoc (which current Uri system won't
357         work under 2.0).
358
359 2005-11-15  Sebastien Pouliot  <sebastien@ximian.com>
360
361         * FileStyleUriParser.cs: New. 2.0 Uri parser class.
362         * FtpStyleUriParser.cs: New. 2.0 Uri parser class.
363         * GenericUriParser.cs: New. 2.0 Uri parser class.
364         * GopherStyleUriParser.cs: New. 2.0 Uri parser class.
365         * HttpStyleUriParser.cs: New. 2.0 Uri parser class.
366         * LdapStyleUriParser.cs: New. 2.0 Uri parser class.
367         * NetPipeStyleUriParser.cs: New. 2.0 Uri parser class.
368         * NetTcpStyleUriParser.cs: New. 2.0 Uri parser class.
369         * NewsStyleUriParser.cs: New. 2.0 Uri parser class.
370         * Uri.cs: Lots of small fixes for both 1.x and 2.0. Some *big* bugs
371         in 1.x (fixed in 2.0) aren't fixed for Mono (and probably never will).
372         This class still needs to be refactored to be usable with the new
373         parsers.
374         * UriParser.cs: New. 2.0 Uri parser base class.
375
376 2005-11-14  Atsushi Enomoto  <atsushi@ximian.com>
377
378         * Uri.cs : Unescape(string,bool) should also handle % and ?.
379           In ToString(), unescape query part as well. Fixed bug #76643.
380
381 2005-10-21  Atsushi Enomoto  <atsushi@ximian.com>
382
383         * UriBuilder.cs : ToString() should not add duplicate '/' before path.
384           Fixed bug #76501. Patch by Hubert Fongarnand + modified a bit.
385
386 2005-10-18  Sebastien Pouliot  <sebastien@ximian.com>
387
388         * UriTypeConverter.cs: New. Implemented (2.0).
389
390 2005-10-17  Sebastien Pouliot  <sebastien@ximian.com>
391
392         * GenericUriParserOptions.cs: New. 2.0 enum.
393         * UriBuilder.cs: Port == -1 is valid (default) in 2.0. Default name
394         is "localhhost" (not loopback) in 2.0. Fixed case where the Password
395         property could be null (instead of String.Empty).
396         * UriComponents.cs: New. 2.0 enum.
397         * UriFormat.cs: New. 2.0 enum.
398         * UriFormatException.cs: Added comments about GetObjectData.
399         * UriKind.cs: New. 2.0 enum.
400         * UriPartial.cs: Added Query value for 2.0.
401
402 2005-08-16  Daniel Drake  <dsd@gentoo.org>
403
404         * Uri.cs: Various parsing fixes from bug #75144.
405
406 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
407
408         * Uri.cs: Modified fix for bug #71053 to match both MS.NET 1.x and
409         2.0 behaviour. Parse method is no longer used on MS.NET 2.0, marked 
410         obsolete.
411
412 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
413
414         * Uri.cs: in .NET 2.0, port number should be valid UInt16 instead of
415         UInt32. If outcome of parsing is -1, do not consider this to be the
416         default port.
417
418 2005-07-08  Daniel Drake  <dsd@gentoo.org>
419
420         * Uri.cs: Allow descent multiple times below root. Fixes bug #71053.
421
422 2005-07-02  Daniel Drake  <dsd@gentoo.org>
423
424         * Uri.cs: HexUnescape() should only work on single-byte escape
425         sequences, ala HexEscape(). However, we still want to handle multi-byte
426         sequences internally, so introduce a more correct implementation of
427         multi-byte unescaping, HexUnescapeMultiByte(). Fixes bug #74872.
428
429 2005-06-11 Gert Driesen <drieseng@users.sourceforge.net>
430
431         * Uri.cs: Domain address might have trailing period to indicate
432         that the domain name is fully qualified. Fixes bug #75230.
433
434 2005-06-02 Gert Driesen <drieseng@users.sourceforge.net>
435
436         * Uri.cs: throw UriFormatException if URI starts with colon.
437         Fixed bug #75124.
438
439 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
440
441         * Uri.cs:
442         (EscapeString): no need to turn the string into a char[] when calling
443         GetBytes.
444
445 2005-03-20 Joshua Tauberer <tauberer@for.net>
446
447         * Uri.cs: Some pedantic changes to the text of a few exceptions.
448
449 2005-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
450
451         * Uri.cs: when unescaping in stages, handle the case when the next
452         substring is not a escaped sequence or the string ends. Fixes bug
453         #73316.
454
455 2005-01-20  Miguel de Icaza  <miguel@ximian.com>
456
457         * Uri.cs: Set the UriSchemNews port default to 119 as well.
458         Fixes bug #71050.
459
460         When dealing with fragments use the `dontEscape' flag passed to
461         the Uri constructor to decide whether the fragment must or must
462         not be escaped, fixes 71051.
463
464 2004-06-22  Atsushi Enomoto  <atsushi@ximian.com>
465
466         * Uri.cs : Such ctor arg string that starts with "//" should be 
467           regarded as a local file path that will be condensed to single "/",
468           so handle such path differently under Windows and under *nix.
469           Since '\\' is a valid path character on Unix, so we should not
470           replace it with '/' in LocalPath.
471
472 2004-06-17  Jackson Harper  <jackson@ximian.com>
473
474         * Uri.cs: Use invariant culture.
475         
476 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
477
478         * Uri.cs : Fixed LocalPath. In that condition, path is always UNC.
479
480 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
481
482         * Uri.cs : Reimplemented HexUnescape() (It was too broken to handle
483           multi-byte utf-8 characters.)
484
485 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
486
487         * Uri.cs :
488           - We don't have to mind '\\'.
489           - Fixed bug #58301. When path starts with "///" and not more than
490             "////" and not "///*:", handle it as unix path and set Host as
491             empty string. In absolute path case, port should not be parsed
492             and LocalPath should start with '/'.
493           - Handle fragment in prior to path. 
494
495 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
496
497         * Uri.cs : Handle Windows UNC. Now we could simplify Parse(). Don't
498           escape windows path twice. Check scheme name as defined in RFC2396.
499
500 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
501
502         * Uri.cs : Reverted some changes. '#' should be handled when the input
503           string is NOT raw file path. So handle raw file paths differently.
504           (right now except for Windows UNC).
505           Cache LocalPath and don't compute every time.
506
507 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
508
509         * Uri.cs : Don't escape '#' in file URI paths. This fixes bug #47691.
510           Some code simplification.
511
512 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
513
514         * Uri.cs : 
515           - Now Parse() is properly implemented. If overriden, the overriding
516             Parse() is used _instead of_ this class's parsing logic.
517           - AbsoluteUri does not escape URI string at all.
518           - ToString() should unescape Query. But should not unescape fragment.
519             And all all parts should be unescaped individually to keep ? and #.
520           - In relative .ctor(), handle Windows UNC as an absolute file URI.
521           - In some cases, hosts and paths were not properly escaped in
522             relative .ctor().
523           - Removed unused isWindowsPath.
524           - Escape Query.
525         * UriBuilder.cs : Fragment and Query aren't escaped when they are set.
526
527 2004-05-12  Dick Porter  <dick@ximian.com>
528
529         * Uri.cs: Reduce(string) is not in the public API.
530
531 2004-04-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
532
533         * UriBuilder.cs: ignore empty Query. Fixes bug #57082.
534
535 2004-03-21  Jackson Harper  <jackson@ximian.com>
536
537         * Uri.cs: Equals should be case insensitive for all parts except
538         the path.
539
540 2004-02-11  Jackson Harper  <jackson@ximian.com>
541
542         * Uri.cs: If we are sure we have a windows path use \ instead of
543         / for directory separating.
544         
545 2004-02-11  Jackson Harper  <jackson@ximian.com>
546
547         * Uri.cs: If the relative uri passed to Uri (base_uri,
548         relative_uri) is an absolute uri do not combine the uris. The base
549         uri is dropped.
550         
551 2004-02-10  Jackson Harper  <jackson@ximian.com>
552
553         * Uri.cs: Preserve the trailing / if there is one when reducing
554         paths.
555         
556 2004-02-08  Jackson Harper  <jackson@ximian.com>
557
558         * Uri.cs: IsLoopback has different behavoir then
559         IPAddress::IsLoopback. It will only return true for ipv4 addresses
560         if they are 127.0.0.1, localhost, or loopback. 
561         
562 2004-02-06  Jackson Harper  <jackson@ximian.com>
563
564         * Uri.cs: Do not escape querys or fragements. Only reduce certain
565         schemes.
566         
567 2004-02-06  Jackson Harper  <jackson@ximian.com>
568
569         * Uri.cs: Use UTF8 characters when escaping. Reduce paths. This
570         method is taken from System.Web.Utils.UrlUtils.
571         * UriBuilder.cs: Do not escape fragments or queries, but do a utf8
572         switch on them. Do not prepend a "/" to Paths. Do not use
573         IPEndPoint to determine if a port is valid, UriBuilder allows
574         ports to be any positive integer, IPEndPoint does not. Use the
575         ToString () method for generate a uri in get_Uri. Only set the
576         port in ToString () if it is greater then 0.
577         
578 2004-02-05  Jackson Harper  <jackson@ximian.com>
579
580         * UriBuilder.cs: Do not call Uri::ToString for uri builders
581         ToString. UriBuilder's ToString is a little more primitive.
582         
583 2004-01-12  Atsushi Enomoto  <atsushi@ximian.com>
584
585         * Uri.cs : should not escape already-escaped string (Patch by 
586           Boris Kirzner).  File LocalPath should unespace return value.
587           ToString() should be unescaped only when it is not an UNC path.
588           (UNC looks not to be unescaped).
589
590 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
591
592         * Uri.cs : quick fix on local file relative uri.
593
594 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
595
596         * Uri.cs : Fixed Parse(). Should not allow relative URIs.
597
598 2004-01-05  Atsushi Enomoto  <atsushi@ximian.com>
599
600         * Uri.cs : fixed IsBadFileSystemCharacter() to reject more characters
601           based on MS.NET experiment.
602
603 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
604
605         * Uri.cs : more fixes. More presice UNC handling, opaque part 
606           handling for non-standard uri (e.g. urn:go-mono.com), ToString()
607           fix (that returns AbsoluteUri, which is not escaped any more),
608           and so on.
609
610 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
611
612         * Uri.cs : Several fixes, including Unc problem, Host and LocalPath
613           fixes, null reference check for .ctor(Uri, string). This fixes
614           bug #51844.
615
616 2003-12-04  John Luke  <jluke@cfl.rr.com>
617         
618         * Uri.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
619         fixes bug #51510.  ftp uses port 21, https uses 443 and 
620         parse the host name properly for UNC path.
621         
622 2003-10-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
623
624         * Uri.cs: fixed a problem with some URIs like file://some_file.txt
625         It used to return "/some_file.txt/" instead of "some_file.txt" in
626         LocalPath. Fix handling of full path files and SMB addresses.
627
628 2003-08-12  Duncan Mak  <duncan@ximian.com>
629
630         * Uri.cs (constructor): Properly implement RFC 2396, Par. 5.2,
631         part 6a, which says:
632         
633                 In other words, any characters after the last (right-most)
634                 slash character, if any, are excluded.
635
636         Previously, when merging "a://foo.com/foo" with "bar", we yield
637         the result "a://foo.com/foobar", instead of the correct
638         "a://foo.com/bar".
639
640         This fixes bug #45614.
641
642 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
643
644         * SRDescriptionAttribute.cs: Moved from System.Diagnostics directory
645
646 2003-07-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
647
648         * Uri.cs: Added MonoTODO'd members, implemented member, fixed signature
649
650 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
651
652         * TempFileCollection.cs: fixed the build under windows.
653         
654 2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
655         * Uri.cs: Checked in code to fix bug #41998. Some
656         code from Ian MacLean.
657         
658 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
659
660         * Uri.cs: reworked Segment. Small fix in MakeRelative. Throw exception
661         in Parse when host length is 0 and the Uri is not a file.
662
663 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
664
665         * Uri.cs:
666         (CheckSchemeName): fixed bug #28549. Thanks to Eric Runquist.
667
668 2003-02-01  Miguel de Icaza  <miguel@ximian.com>
669
670         * Uri.cs (LocalPath): Local path should return un-escaped
671         strings.  Patch from tum@veridicus.com (Thong (Tum) Nguyen)
672
673 2002-09-16  Duncan Mak  <duncan@ximian.com>
674
675         * Uri.cs (GetObjectData):
676         (Uri): The key should be "AbsoluteUri", not "Uri".
677
678 2002-09-16  Miguel de Icaza  <miguel@ximian.com>
679
680         * Uri.cs: Implemented a few of the protected methods. 
681
682 Mon Jun 17 15:05:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
683
684         * Uri.cs: workaround for mcs bug.
685
686 2002-05-28  Lawrence Pit <loz@cable.a2000.nl>
687
688         * Uri.cs: Implemented ctor UriTest (baseUri, relativeUri)
689         * Uri.cs: Fixed bug in internal method GetSchemeDelimiter
690
691 2002-05-22  Lawrence Pit <loz@cable.a2000.nl>
692
693         * Uri.cs: implemented MakeRelative, improved GetLeftPart
694         * UriBuilder.cs: removed Serializable attribute
695         * UriHostNameType.cs: added Basic
696
697 2002-05-12  Lawrence Pit <loz@cable.a2000.nl>
698
699         * Uri.LocalPath and Uri.AbsoluteUri modified to support both w32 
700         and *nix filepaths
701
702 2002-05-09  Lawrence Pit <loz@cable.a2000.nl>
703
704         * Uri.GetLeftPart fixed for mailto and news schemes.
705
706 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
707
708         * UriBuilder.cs: Implemented.
709         
710         * Uri.cs: Complete new reimplementation. 
711
712 2002-02-08  Duncan Mak  <duncan@ximian.com>
713
714         * UriFormatException.cs: Removed TODO attribute, the docs are
715         probably wrong here. In any case, this code compiles and should work.
716
717 2002-01-31  Duncan Mak  <duncan@ximian.com>
718
719         * UriFormatException.cs: Added bits for serialization.
720
721 2002-01-05  Ravi Pratap  <ravi@ximian.com>
722
723         * ChangeLog : Add to this directory.
724
725         * Uri.cs, UriFormatException.cs : Decorate bits with MonoTODO attribute.