New test.
[mono.git] / mcs / class / System / System / ChangeLog
1 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
2
3         * UriParser.cs: TARGET_JVM
4         * UriFormatException.cs: MonoTODO
5
6 2006-08-01  Atsushi Enomoto  <atsushi@ximian.com>
7
8         * Uri.cs : don't compare UserInfo in Equals() and op_Equality().
9           Fixed a bug commented in #78799.
10
11 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
12
13         * Uri.cs: update Obsolete msg.
14
15 2006-06-05  Atsushi Enomoto  <atsushi@ximian.com>
16
17         * Uri.cs : revert the previous change as it caused UriTest.
18           Constructors(#rel2a). ToString() for SourceString should be
19           enough for lame users.
20
21 2006-05-13  Atsushi Enomoto  <atsushi@ximian.com>
22
23         * Uri.cs : sometimes OriginalString was null. Fixed bug #78374.
24           Actually this property is LAMESPEC. Never use it.
25
26 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
27
28         * Uri.cs : Patch by pawel.sakowski@mind-breeze.com (bug #77382).
29           Reduce object allocation and avoid culture-sensitive comparison.
30
31 2006-03-11  Miguel de Icaza  <miguel@novell.com>
32
33         * Uri.cs: Pragma disable warning 612 (Obsolete methods are being
34         used by us internally).
35
36         Ponder: should we instead move our methods to use new versions of
37         the Obsoleted ones?
38
39 2006-02-21  Atsushi Enomoto  <atsushi@ximian.com>
40
41         * Uri.cs : seems like Uri opreator == and != are case sensitive.
42
43 2006-02-19  Raja R Harinath  <harinath@gmail.com>
44
45         * Uri.cs (InternalEquals): New helper.
46         (Equals, operator ==): Use it.
47         (operator !=): Likewise.  Fix to actually compare operands.
48
49 2006-02-14  Atsushi Enomoto  <atsushi@ximian.com>
50
51         * Uri.cs : implemented op_Equality and op_Inequality.
52
53 2006-02-14  Ankit Jain  <jankit@novell.com>
54
55         * Uri.cs (Uri.EnsureAbsoluteUri): New. Throws exception if its not an
56         absolute uri.
57         (Uri.Parse): Set isAbsoluteUri to false, if the address is not absolute.
58         All properties other than OriginalString, IsAbsoluteUri & UserEscaped
59         throw exception for relative address.
60
61 2005-11-25  Sebastien Pouliot  <sebastien@ximian.com> 
62
63         * DefaultUriParser.cs: Added an internal default parser because (a)
64         UriParser is abstract and (b) MS doesn't always use the new parser
65         classes :(
66         * Uri.cs: Implemented Compare method. Added some FIXME.
67         * UriParser.cs: Implemented GetComponents and IsBaseOf methods. 
68         Changed parsers to point to the new DefaultUriParser.
69
70 2005-11-15  Sebastien Pouliot  <sebastien@ximian.com> 
71  
72         * Uri.cs: Temporary fix for monodoc (which current Uri system won't
73         work under 2.0).
74
75 2005-11-15  Sebastien Pouliot  <sebastien@ximian.com>
76
77         * FileStyleUriParser.cs: New. 2.0 Uri parser class.
78         * FtpStyleUriParser.cs: New. 2.0 Uri parser class.
79         * GenericUriParser.cs: New. 2.0 Uri parser class.
80         * GopherStyleUriParser.cs: New. 2.0 Uri parser class.
81         * HttpStyleUriParser.cs: New. 2.0 Uri parser class.
82         * LdapStyleUriParser.cs: New. 2.0 Uri parser class.
83         * NetPipeStyleUriParser.cs: New. 2.0 Uri parser class.
84         * NetTcpStyleUriParser.cs: New. 2.0 Uri parser class.
85         * NewsStyleUriParser.cs: New. 2.0 Uri parser class.
86         * Uri.cs: Lots of small fixes for both 1.x and 2.0. Some *big* bugs
87         in 1.x (fixed in 2.0) aren't fixed for Mono (and probably never will).
88         This class still needs to be refactored to be usable with the new
89         parsers.
90         * UriParser.cs: New. 2.0 Uri parser base class.
91
92 2005-11-14  Atsushi Enomoto  <atsushi@ximian.com>
93
94         * Uri.cs : Unescape(string,bool) should also handle % and ?.
95           In ToString(), unescape query part as well. Fixed bug #76643.
96
97 2005-10-21  Atsushi Enomoto  <atsushi@ximian.com>
98
99         * UriBuilder.cs : ToString() should not add duplicate '/' before path.
100           Fixed bug #76501. Patch by Hubert Fongarnand + modified a bit.
101
102 2005-10-18  Sebastien Pouliot  <sebastien@ximian.com>
103
104         * UriTypeConverter.cs: New. Implemented (2.0).
105
106 2005-10-17  Sebastien Pouliot  <sebastien@ximian.com>
107
108         * GenericUriParserOptions.cs: New. 2.0 enum.
109         * UriBuilder.cs: Port == -1 is valid (default) in 2.0. Default name
110         is "localhhost" (not loopback) in 2.0. Fixed case where the Password
111         property could be null (instead of String.Empty).
112         * UriComponents.cs: New. 2.0 enum.
113         * UriFormat.cs: New. 2.0 enum.
114         * UriFormatException.cs: Added comments about GetObjectData.
115         * UriKind.cs: New. 2.0 enum.
116         * UriPartial.cs: Added Query value for 2.0.
117
118 2005-08-16  Daniel Drake  <dsd@gentoo.org>
119
120         * Uri.cs: Various parsing fixes from bug #75144.
121
122 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
123
124         * Uri.cs: Modified fix for bug #71053 to match both MS.NET 1.x and
125         2.0 behaviour. Parse method is no longer used on MS.NET 2.0, marked 
126         obsolete.
127
128 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
129
130         * Uri.cs: in .NET 2.0, port number should be valid UInt16 instead of
131         UInt32. If outcome of parsing is -1, do not consider this to be the
132         default port.
133
134 2005-07-08  Daniel Drake  <dsd@gentoo.org>
135
136         * Uri.cs: Allow descent multiple times below root. Fixes bug #71053.
137
138 2005-07-02  Daniel Drake  <dsd@gentoo.org>
139
140         * Uri.cs: HexUnescape() should only work on single-byte escape
141         sequences, ala HexEscape(). However, we still want to handle multi-byte
142         sequences internally, so introduce a more correct implementation of
143         multi-byte unescaping, HexUnescapeMultiByte(). Fixes bug #74872.
144
145 2005-06-11 Gert Driesen <drieseng@users.sourceforge.net>
146
147         * Uri.cs: Domain address might have trailing period to indicate
148         that the domain name is fully qualified. Fixes bug #75230.
149
150 2005-06-02 Gert Driesen <drieseng@users.sourceforge.net>
151
152         * Uri.cs: throw UriFormatException if URI starts with colon.
153         Fixed bug #75124.
154
155 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
156
157         * Uri.cs:
158         (EscapeString): no need to turn the string into a char[] when calling
159         GetBytes.
160
161 2005-03-20 Joshua Tauberer <tauberer@for.net>
162
163         * Uri.cs: Some pedantic changes to the text of a few exceptions.
164
165 2005-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
166
167         * Uri.cs: when unescaping in stages, handle the case when the next
168         substring is not a escaped sequence or the string ends. Fixes bug
169         #73316.
170
171 2005-01-20  Miguel de Icaza  <miguel@ximian.com>
172
173         * Uri.cs: Set the UriSchemNews port default to 119 as well.
174         Fixes bug #71050.
175
176         When dealing with fragments use the `dontEscape' flag passed to
177         the Uri constructor to decide whether the fragment must or must
178         not be escaped, fixes 71051.
179
180 2004-06-22  Atsushi Enomoto  <atsushi@ximian.com>
181
182         * Uri.cs : Such ctor arg string that starts with "//" should be 
183           regarded as a local file path that will be condensed to single "/",
184           so handle such path differently under Windows and under *nix.
185           Since '\\' is a valid path character on Unix, so we should not
186           replace it with '/' in LocalPath.
187
188 2004-06-17  Jackson Harper  <jackson@ximian.com>
189
190         * Uri.cs: Use invariant culture.
191         
192 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
193
194         * Uri.cs : Fixed LocalPath. In that condition, path is always UNC.
195
196 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
197
198         * Uri.cs : Reimplemented HexUnescape() (It was too broken to handle
199           multi-byte utf-8 characters.)
200
201 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
202
203         * Uri.cs :
204           - We don't have to mind '\\'.
205           - Fixed bug #58301. When path starts with "///" and not more than
206             "////" and not "///*:", handle it as unix path and set Host as
207             empty string. In absolute path case, port should not be parsed
208             and LocalPath should start with '/'.
209           - Handle fragment in prior to path. 
210
211 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
212
213         * Uri.cs : Handle Windows UNC. Now we could simplify Parse(). Don't
214           escape windows path twice. Check scheme name as defined in RFC2396.
215
216 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
217
218         * Uri.cs : Reverted some changes. '#' should be handled when the input
219           string is NOT raw file path. So handle raw file paths differently.
220           (right now except for Windows UNC).
221           Cache LocalPath and don't compute every time.
222
223 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
224
225         * Uri.cs : Don't escape '#' in file URI paths. This fixes bug #47691.
226           Some code simplification.
227
228 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
229
230         * Uri.cs : 
231           - Now Parse() is properly implemented. If overriden, the overriding
232             Parse() is used _instead of_ this class's parsing logic.
233           - AbsoluteUri does not escape URI string at all.
234           - ToString() should unescape Query. But should not unescape fragment.
235             And all all parts should be unescaped individually to keep ? and #.
236           - In relative .ctor(), handle Windows UNC as an absolute file URI.
237           - In some cases, hosts and paths were not properly escaped in
238             relative .ctor().
239           - Removed unused isWindowsPath.
240           - Escape Query.
241         * UriBuilder.cs : Fragment and Query aren't escaped when they are set.
242
243 2004-05-12  Dick Porter  <dick@ximian.com>
244
245         * Uri.cs: Reduce(string) is not in the public API.
246
247 2004-04-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
248
249         * UriBuilder.cs: ignore empty Query. Fixes bug #57082.
250
251 2004-03-21  Jackson Harper  <jackson@ximian.com>
252
253         * Uri.cs: Equals should be case insensitive for all parts except
254         the path.
255
256 2004-02-11  Jackson Harper  <jackson@ximian.com>
257
258         * Uri.cs: If we are sure we have a windows path use \ instead of
259         / for directory separating.
260         
261 2004-02-11  Jackson Harper  <jackson@ximian.com>
262
263         * Uri.cs: If the relative uri passed to Uri (base_uri,
264         relative_uri) is an absolute uri do not combine the uris. The base
265         uri is dropped.
266         
267 2004-02-10  Jackson Harper  <jackson@ximian.com>
268
269         * Uri.cs: Preserve the trailing / if there is one when reducing
270         paths.
271         
272 2004-02-08  Jackson Harper  <jackson@ximian.com>
273
274         * Uri.cs: IsLoopback has different behavoir then
275         IPAddress::IsLoopback. It will only return true for ipv4 addresses
276         if they are 127.0.0.1, localhost, or loopback. 
277         
278 2004-02-06  Jackson Harper  <jackson@ximian.com>
279
280         * Uri.cs: Do not escape querys or fragements. Only reduce certain
281         schemes.
282         
283 2004-02-06  Jackson Harper  <jackson@ximian.com>
284
285         * Uri.cs: Use UTF8 characters when escaping. Reduce paths. This
286         method is taken from System.Web.Utils.UrlUtils.
287         * UriBuilder.cs: Do not escape fragments or queries, but do a utf8
288         switch on them. Do not prepend a "/" to Paths. Do not use
289         IPEndPoint to determine if a port is valid, UriBuilder allows
290         ports to be any positive integer, IPEndPoint does not. Use the
291         ToString () method for generate a uri in get_Uri. Only set the
292         port in ToString () if it is greater then 0.
293         
294 2004-02-05  Jackson Harper  <jackson@ximian.com>
295
296         * UriBuilder.cs: Do not call Uri::ToString for uri builders
297         ToString. UriBuilder's ToString is a little more primitive.
298         
299 2004-01-12  Atsushi Enomoto  <atsushi@ximian.com>
300
301         * Uri.cs : should not escape already-escaped string (Patch by 
302           Boris Kirzner).  File LocalPath should unespace return value.
303           ToString() should be unescaped only when it is not an UNC path.
304           (UNC looks not to be unescaped).
305
306 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
307
308         * Uri.cs : quick fix on local file relative uri.
309
310 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
311
312         * Uri.cs : Fixed Parse(). Should not allow relative URIs.
313
314 2004-01-05  Atsushi Enomoto  <atsushi@ximian.com>
315
316         * Uri.cs : fixed IsBadFileSystemCharacter() to reject more characters
317           based on MS.NET experiment.
318
319 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
320
321         * Uri.cs : more fixes. More presice UNC handling, opaque part 
322           handling for non-standard uri (e.g. urn:go-mono.com), ToString()
323           fix (that returns AbsoluteUri, which is not escaped any more),
324           and so on.
325
326 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
327
328         * Uri.cs : Several fixes, including Unc problem, Host and LocalPath
329           fixes, null reference check for .ctor(Uri, string). This fixes
330           bug #51844.
331
332 2003-12-04  John Luke  <jluke@cfl.rr.com>
333         
334         * Uri.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
335         fixes bug #51510.  ftp uses port 21, https uses 443 and 
336         parse the host name properly for UNC path.
337         
338 2003-10-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
339
340         * Uri.cs: fixed a problem with some URIs like file://some_file.txt
341         It used to return "/some_file.txt/" instead of "some_file.txt" in
342         LocalPath. Fix handling of full path files and SMB addresses.
343
344 2003-08-12  Duncan Mak  <duncan@ximian.com>
345
346         * Uri.cs (constructor): Properly implement RFC 2396, Par. 5.2,
347         part 6a, which says:
348         
349                 In other words, any characters after the last (right-most)
350                 slash character, if any, are excluded.
351
352         Previously, when merging "a://foo.com/foo" with "bar", we yield
353         the result "a://foo.com/foobar", instead of the correct
354         "a://foo.com/bar".
355
356         This fixes bug #45614.
357
358 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
359
360         * SRDescriptionAttribute.cs: Moved from System.Diagnostics directory
361
362 2003-07-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
363
364         * Uri.cs: Added MonoTODO'd members, implemented member, fixed signature
365
366 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
367
368         * TempFileCollection.cs: fixed the build under windows.
369         
370 2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
371         * Uri.cs: Checked in code to fix bug #41998. Some
372         code from Ian MacLean.
373         
374 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
375
376         * Uri.cs: reworked Segment. Small fix in MakeRelative. Throw exception
377         in Parse when host length is 0 and the Uri is not a file.
378
379 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
380
381         * Uri.cs:
382         (CheckSchemeName): fixed bug #28549. Thanks to Eric Runquist.
383
384 2003-02-01  Miguel de Icaza  <miguel@ximian.com>
385
386         * Uri.cs (LocalPath): Local path should return un-escaped
387         strings.  Patch from tum@veridicus.com (Thong (Tum) Nguyen)
388
389 2002-09-16  Duncan Mak  <duncan@ximian.com>
390
391         * Uri.cs (GetObjectData):
392         (Uri): The key should be "AbsoluteUri", not "Uri".
393
394 2002-09-16  Miguel de Icaza  <miguel@ximian.com>
395
396         * Uri.cs: Implemented a few of the protected methods. 
397
398 Mon Jun 17 15:05:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
399
400         * Uri.cs: workaround for mcs bug.
401
402 2002-05-28  Lawrence Pit <loz@cable.a2000.nl>
403
404         * Uri.cs: Implemented ctor UriTest (baseUri, relativeUri)
405         * Uri.cs: Fixed bug in internal method GetSchemeDelimiter
406
407 2002-05-22  Lawrence Pit <loz@cable.a2000.nl>
408
409         * Uri.cs: implemented MakeRelative, improved GetLeftPart
410         * UriBuilder.cs: removed Serializable attribute
411         * UriHostNameType.cs: added Basic
412
413 2002-05-12  Lawrence Pit <loz@cable.a2000.nl>
414
415         * Uri.LocalPath and Uri.AbsoluteUri modified to support both w32 
416         and *nix filepaths
417
418 2002-05-09  Lawrence Pit <loz@cable.a2000.nl>
419
420         * Uri.GetLeftPart fixed for mailto and news schemes.
421
422 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
423
424         * UriBuilder.cs: Implemented.
425         
426         * Uri.cs: Complete new reimplementation. 
427
428 2002-02-08  Duncan Mak  <duncan@ximian.com>
429
430         * UriFormatException.cs: Removed TODO attribute, the docs are
431         probably wrong here. In any case, this code compiles and should work.
432
433 2002-01-31  Duncan Mak  <duncan@ximian.com>
434
435         * UriFormatException.cs: Added bits for serialization.
436
437 2002-01-05  Ravi Pratap  <ravi@ximian.com>
438
439         * ChangeLog : Add to this directory.
440
441         * Uri.cs, UriFormatException.cs : Decorate bits with MonoTODO attribute.