svn path=/branches/mono-1-1-9/mono/; revision=51217
[mono.git] / mcs / class / System / System / ChangeLog
1 2005-08-16  Daniel Drake  <dsd@gentoo.org>
2
3         * Uri.cs: Various parsing fixes from bug #75144.
4
5 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
6
7         * Uri.cs: Modified fix for bug #71053 to match both MS.NET 1.x and
8         2.0 behaviour. Parse method is no longer used on MS.NET 2.0, marked 
9         obsolete.
10
11 2005-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
12
13         * Uri.cs: in .NET 2.0, port number should be valid UInt16 instead of
14         UInt32. If outcome of parsing is -1, do not consider this to be the
15         default port.
16
17 2005-07-08  Daniel Drake  <dsd@gentoo.org>
18
19         * Uri.cs: Allow descent multiple times below root. Fixes bug #71053.
20
21 2005-07-02  Daniel Drake  <dsd@gentoo.org>
22
23         * Uri.cs: HexUnescape() should only work on single-byte escape
24         sequences, ala HexEscape(). However, we still want to handle multi-byte
25         sequences internally, so introduce a more correct implementation of
26         multi-byte unescaping, HexUnescapeMultiByte(). Fixes bug #74872.
27
28 2005-06-11 Gert Driesen <drieseng@users.sourceforge.net>
29
30         * Uri.cs: Domain address might have trailing period to indicate
31         that the domain name is fully qualified. Fixes bug #75230.
32
33 2005-06-02 Gert Driesen <drieseng@users.sourceforge.net>
34
35         * Uri.cs: throw UriFormatException if URI starts with colon.
36         Fixed bug #75124.
37
38 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
39
40         * Uri.cs:
41         (EscapeString): no need to turn the string into a char[] when calling
42         GetBytes.
43
44 2005-03-20 Joshua Tauberer <tauberer@for.net>
45
46         * Uri.cs: Some pedantic changes to the text of a few exceptions.
47
48 2005-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
49
50         * Uri.cs: when unescaping in stages, handle the case when the next
51         substring is not a escaped sequence or the string ends. Fixes bug
52         #73316.
53
54 2005-01-20  Miguel de Icaza  <miguel@ximian.com>
55
56         * Uri.cs: Set the UriSchemNews port default to 119 as well.
57         Fixes bug #71050.
58
59         When dealing with fragments use the `dontEscape' flag passed to
60         the Uri constructor to decide whether the fragment must or must
61         not be escaped, fixes 71051.
62
63 2004-06-22  Atsushi Enomoto  <atsushi@ximian.com>
64
65         * Uri.cs : Such ctor arg string that starts with "//" should be 
66           regarded as a local file path that will be condensed to single "/",
67           so handle such path differently under Windows and under *nix.
68           Since '\\' is a valid path character on Unix, so we should not
69           replace it with '/' in LocalPath.
70
71 2004-06-17  Jackson Harper  <jackson@ximian.com>
72
73         * Uri.cs: Use invariant culture.
74         
75 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
76
77         * Uri.cs : Fixed LocalPath. In that condition, path is always UNC.
78
79 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
80
81         * Uri.cs : Reimplemented HexUnescape() (It was too broken to handle
82           multi-byte utf-8 characters.)
83
84 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
85
86         * Uri.cs :
87           - We don't have to mind '\\'.
88           - Fixed bug #58301. When path starts with "///" and not more than
89             "////" and not "///*:", handle it as unix path and set Host as
90             empty string. In absolute path case, port should not be parsed
91             and LocalPath should start with '/'.
92           - Handle fragment in prior to path. 
93
94 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
95
96         * Uri.cs : Handle Windows UNC. Now we could simplify Parse(). Don't
97           escape windows path twice. Check scheme name as defined in RFC2396.
98
99 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
100
101         * Uri.cs : Reverted some changes. '#' should be handled when the input
102           string is NOT raw file path. So handle raw file paths differently.
103           (right now except for Windows UNC).
104           Cache LocalPath and don't compute every time.
105
106 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
107
108         * Uri.cs : Don't escape '#' in file URI paths. This fixes bug #47691.
109           Some code simplification.
110
111 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
112
113         * Uri.cs : 
114           - Now Parse() is properly implemented. If overriden, the overriding
115             Parse() is used _instead of_ this class's parsing logic.
116           - AbsoluteUri does not escape URI string at all.
117           - ToString() should unescape Query. But should not unescape fragment.
118             And all all parts should be unescaped individually to keep ? and #.
119           - In relative .ctor(), handle Windows UNC as an absolute file URI.
120           - In some cases, hosts and paths were not properly escaped in
121             relative .ctor().
122           - Removed unused isWindowsPath.
123           - Escape Query.
124         * UriBuilder.cs : Fragment and Query aren't escaped when they are set.
125
126 2004-05-12  Dick Porter  <dick@ximian.com>
127
128         * Uri.cs: Reduce(string) is not in the public API.
129
130 2004-04-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
131
132         * UriBuilder.cs: ignore empty Query. Fixes bug #57082.
133
134 2004-03-21  Jackson Harper  <jackson@ximian.com>
135
136         * Uri.cs: Equals should be case insensitive for all parts except
137         the path.
138
139 2004-02-11  Jackson Harper  <jackson@ximian.com>
140
141         * Uri.cs: If we are sure we have a windows path use \ instead of
142         / for directory separating.
143         
144 2004-02-11  Jackson Harper  <jackson@ximian.com>
145
146         * Uri.cs: If the relative uri passed to Uri (base_uri,
147         relative_uri) is an absolute uri do not combine the uris. The base
148         uri is dropped.
149         
150 2004-02-10  Jackson Harper  <jackson@ximian.com>
151
152         * Uri.cs: Preserve the trailing / if there is one when reducing
153         paths.
154         
155 2004-02-08  Jackson Harper  <jackson@ximian.com>
156
157         * Uri.cs: IsLoopback has different behavoir then
158         IPAddress::IsLoopback. It will only return true for ipv4 addresses
159         if they are 127.0.0.1, localhost, or loopback. 
160         
161 2004-02-06  Jackson Harper  <jackson@ximian.com>
162
163         * Uri.cs: Do not escape querys or fragements. Only reduce certain
164         schemes.
165         
166 2004-02-06  Jackson Harper  <jackson@ximian.com>
167
168         * Uri.cs: Use UTF8 characters when escaping. Reduce paths. This
169         method is taken from System.Web.Utils.UrlUtils.
170         * UriBuilder.cs: Do not escape fragments or queries, but do a utf8
171         switch on them. Do not prepend a "/" to Paths. Do not use
172         IPEndPoint to determine if a port is valid, UriBuilder allows
173         ports to be any positive integer, IPEndPoint does not. Use the
174         ToString () method for generate a uri in get_Uri. Only set the
175         port in ToString () if it is greater then 0.
176         
177 2004-02-05  Jackson Harper  <jackson@ximian.com>
178
179         * UriBuilder.cs: Do not call Uri::ToString for uri builders
180         ToString. UriBuilder's ToString is a little more primitive.
181         
182 2004-01-12  Atsushi Enomoto  <atsushi@ximian.com>
183
184         * Uri.cs : should not escape already-escaped string (Patch by 
185           Boris Kirzner).  File LocalPath should unespace return value.
186           ToString() should be unescaped only when it is not an UNC path.
187           (UNC looks not to be unescaped).
188
189 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
190
191         * Uri.cs : quick fix on local file relative uri.
192
193 2004-01-06  Atsushi Enomoto  <atsushi@ximian.com>
194
195         * Uri.cs : Fixed Parse(). Should not allow relative URIs.
196
197 2004-01-05  Atsushi Enomoto  <atsushi@ximian.com>
198
199         * Uri.cs : fixed IsBadFileSystemCharacter() to reject more characters
200           based on MS.NET experiment.
201
202 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
203
204         * Uri.cs : more fixes. More presice UNC handling, opaque part 
205           handling for non-standard uri (e.g. urn:go-mono.com), ToString()
206           fix (that returns AbsoluteUri, which is not escaped any more),
207           and so on.
208
209 2003-12-08  Atsushi Enomoto  <atsushi@ximian.com>
210
211         * Uri.cs : Several fixes, including Unc problem, Host and LocalPath
212           fixes, null reference check for .ctor(Uri, string). This fixes
213           bug #51844.
214
215 2003-12-04  John Luke  <jluke@cfl.rr.com>
216         
217         * Uri.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
218         fixes bug #51510.  ftp uses port 21, https uses 443 and 
219         parse the host name properly for UNC path.
220         
221 2003-10-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
222
223         * Uri.cs: fixed a problem with some URIs like file://some_file.txt
224         It used to return "/some_file.txt/" instead of "some_file.txt" in
225         LocalPath. Fix handling of full path files and SMB addresses.
226
227 2003-08-12  Duncan Mak  <duncan@ximian.com>
228
229         * Uri.cs (constructor): Properly implement RFC 2396, Par. 5.2,
230         part 6a, which says:
231         
232                 In other words, any characters after the last (right-most)
233                 slash character, if any, are excluded.
234
235         Previously, when merging "a://foo.com/foo" with "bar", we yield
236         the result "a://foo.com/foobar", instead of the correct
237         "a://foo.com/bar".
238
239         This fixes bug #45614.
240
241 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
242
243         * SRDescriptionAttribute.cs: Moved from System.Diagnostics directory
244
245 2003-07-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
246
247         * Uri.cs: Added MonoTODO'd members, implemented member, fixed signature
248
249 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
250
251         * TempFileCollection.cs: fixed the build under windows.
252         
253 2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
254         * Uri.cs: Checked in code to fix bug #41998. Some
255         code from Ian MacLean.
256         
257 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
258
259         * Uri.cs: reworked Segment. Small fix in MakeRelative. Throw exception
260         in Parse when host length is 0 and the Uri is not a file.
261
262 2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
263
264         * Uri.cs:
265         (CheckSchemeName): fixed bug #28549. Thanks to Eric Runquist.
266
267 2003-02-01  Miguel de Icaza  <miguel@ximian.com>
268
269         * Uri.cs (LocalPath): Local path should return un-escaped
270         strings.  Patch from tum@veridicus.com (Thong (Tum) Nguyen)
271
272 2002-09-16  Duncan Mak  <duncan@ximian.com>
273
274         * Uri.cs (GetObjectData):
275         (Uri): The key should be "AbsoluteUri", not "Uri".
276
277 2002-09-16  Miguel de Icaza  <miguel@ximian.com>
278
279         * Uri.cs: Implemented a few of the protected methods. 
280
281 Mon Jun 17 15:05:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
282
283         * Uri.cs: workaround for mcs bug.
284
285 2002-05-28  Lawrence Pit <loz@cable.a2000.nl>
286
287         * Uri.cs: Implemented ctor UriTest (baseUri, relativeUri)
288         * Uri.cs: Fixed bug in internal method GetSchemeDelimiter
289
290 2002-05-22  Lawrence Pit <loz@cable.a2000.nl>
291
292         * Uri.cs: implemented MakeRelative, improved GetLeftPart
293         * UriBuilder.cs: removed Serializable attribute
294         * UriHostNameType.cs: added Basic
295
296 2002-05-12  Lawrence Pit <loz@cable.a2000.nl>
297
298         * Uri.LocalPath and Uri.AbsoluteUri modified to support both w32 
299         and *nix filepaths
300
301 2002-05-09  Lawrence Pit <loz@cable.a2000.nl>
302
303         * Uri.GetLeftPart fixed for mailto and news schemes.
304
305 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
306
307         * UriBuilder.cs: Implemented.
308         
309         * Uri.cs: Complete new reimplementation. 
310
311 2002-02-08  Duncan Mak  <duncan@ximian.com>
312
313         * UriFormatException.cs: Removed TODO attribute, the docs are
314         probably wrong here. In any case, this code compiles and should work.
315
316 2002-01-31  Duncan Mak  <duncan@ximian.com>
317
318         * UriFormatException.cs: Added bits for serialization.
319
320 2002-01-05  Ravi Pratap  <ravi@ximian.com>
321
322         * ChangeLog : Add to this directory.
323
324         * Uri.cs, UriFormatException.cs : Decorate bits with MonoTODO attribute.