Add unit test for Database
[mono.git] / mcs / class / System.Net / System.Net / ChangeLog
1 2010-07-14  Sebastien Pouliot  <sebastien@ximian.com>
2
3         * WebHeaderCollection_2_1.cs: Fix IEnumerable.GetEnumerator
4
5 2010-05-14  Sebastien Pouliot  <sebastien@ximian.com>
6
7         * WebHeaderCollection_2_1.cs: Hide the internal Dictionary and 
8         provide methods to use it properly.
9         * HttpWebRequest_2_1.cs: Use internal Clear method
10
11 2010-04-21  Sebastien Pouliot  <sebastien@ximian.com>
12
13         * HttpWebResponse_2_1.cs: Method, StatusCode and StatusDescription
14         property getters are now virtual (instead of abstract) and throw
15         NIE in SL4 (final) API.
16         * WebRequest_2_1.cs: Added ContentLength (SL4) property to throw
17         NIE. Implement (SL4) CreateHttp methods. Rework stack registration
18         logic.
19         * WebResponse_2_1.cs: default Headers getter throws NIE
20
21 2010-04-05  Sebastien Pouliot  <sebastien@ximian.com>
22
23         * InternalWebResponseStreamWrapper.cs: Move back to 
24         System.Windows.dll
25
26 2010-03-19  Sebastien Pouliot  <sebastien@ximian.com>
27
28         * HttpWebRequest_2_1.cs: AllowWriteStreamBuffering getter/setter
29         throws NIE by default (must be overridden). Revert Accept and
30         ContentType behavior to SL2 (identical to SL4 but different from
31         SL3). 
32         * WebClient_2_1.cs: Initialize UseDefaultCredentials to true. Set
33         the properties when creating a new WebRequest
34
35 2010-03-18  Sebastien Pouliot  <sebastien@ximian.com>
36
37         * HttpWebRequest_2_1.cs: Add SL4 RC AllowWriteStreamBuffering and
38         SupportsCookieContainer properties.
39         * WebClient_2_1.cs: Add SL4 RC AllowWriteStreamBuffering and 
40         UseDefaultCredentials properties.
41         * WebHeaderCollection_2_1.cs: Authorization and Proxy-Authorization
42         are valid (i.e. usable) headers in SL4 (in both stacks)
43
44 2010-03-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>
45
46         * WebRequest_2_1.cs: Added UseDefaultCredentials property.
47
48 2010-03-12  Sebastien Pouliot  <sebastien@ximian.com>
49
50         * WebClient_2_1.cs: Directly set 'progress' delegate field
51         * WebRequest_2_1.cs: Avoid using reflection (since it was not 
52         really needed anyway)
53
54 2010-03-03  Andreia Gaita  <avidigal@novell.com>
55
56         * InternalWebRequestStreamWrapper.cs: don't add a newline to the
57         request data, whatever uses the data should be the one adding
58         newlines if they need it (i.e., moon's ff bridge needs it, the
59         curl bridge doesn't)
60
61 2010-02-25  Rolf Bjarne Kvinge  <RKvinge@novell.com>
62
63         * WebClient_2_1.cs: Emit DownloadProgressChanged events on the correct
64         thread too.
65
66 2010-02-23  Sebastien Pouliot  <sebastien@ximian.com>
67
68         * HttpWebRequest_2_1.cs: Accept and ContentType properties do not
69         behave like Silverlight 2.0 (not related to browser/client stacks)
70         * WebHeaderCollection_2_1.cs: Range is now accepted in SL3 (not
71         related to browser/client stacks)
72         * WebRequest_2_1.cs: Fix registration to work on domains (new) 
73         and scheme (more correctly wrt new unit tests).
74
75 2010-02-16  Sebastien Pouliot  <sebastien@ximian.com>
76
77         * WebClient_2_1.cs: Keep a copy of 'userToken' since we need to
78         supply it when calling OnDownloadProgressChanged
79         * WebRequest_2_1.cs (SetupProgressDelegate): Simplify signature
80
81 2010-01-29  Rolf Bjarne Kvinge  <RKvinge@novell.com>
82
83         * WebClient_2_1.cs: Ensure the WriteStreamClosed event is emitted on
84         the correct thread (by using the stored SynchronizationContext).
85
86         * InternalWebRequestStreamWrapper.cs: Add a WebClientData field which
87         is passed to the WriteStreamClosedCallback.
88
89 2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>
90
91         * WebClient_2_1.cs: The async events must be invoked on a threadpool
92         thread if the async method wasn't executed on the main thread, so save
93         the synchronization context when the async method is called, and post
94         the event to that synchronization context when done. This is also
95         required when the async methods are executed on the main thread, since
96         HttpWebRequest callbacks are now always executed on a threadpool thread.
97
98 2010-01-25  Sebastien Pouliot  <sebastien@ximian.com>
99
100         * UdpAnySourceMulticastClient.cs: New. Stub for SL4
101         * UdpSingleSourceMulticastClient.cs: New. Stub for SL4
102
103 2010-01-13  Sebastien Pouliot  <sebastien@ximian.com>
104
105         * HttpWebRequest_2_1.cs: Throw for CookieContainer. It is 
106         implemented only in the client http stack (and for a limited
107         time in the browser stack too ;-)
108         * InternalWebRequestStreamWrapper.cs: Keep the MemoryStream data
109         available after closing/disposing (by user) since our own code
110         will need it later (e.g. when posting like DRT287)
111         * WebHeaderCollection_2_1.cs: Provide an argument to 
112         ArgumentException. Found by Gendarme's ArgumentException
113         InstantiateArgumentExceptionCorrectlyRule
114
115 2010-01-12  Sebastien Pouliot  <sebastien@ximian.com>
116
117         * WebRequest_2_1.cs: Rework registration wrt the two, browser
118         and client, stacks offered in SL3. Only global works now.
119
120 2010-01-11  Sebastien Pouliot  <sebastien@ximian.com>
121
122         * InternalWebRequestStreamWrapper.cs: New. Moved (and adapted) 
123         from Moonlight System.Windows.Browser assembly.
124         * InternalWebResponseStreamWrapper.cs: New. Moved (and adapted) 
125         from Moonlight System.Windows.Browser assembly.
126         * WebClient_2_1.cs: Remove custom delegate declaration (Gendarme's
127         AvoidDeclaringCustomDelegatesRule). Remove locking over a variable
128         (Gendarme's ReviewLockUsedOnlyForOperationsOnVariablesRule). 
129         Avoid potential race with event handlers (Gendarme's 
130         ProtectCallsToEventDelegatesRule). Implement OnWriteStreamClosed
131         * WebRequest_2_1.cs: Signature change from delegate to 
132         Action<long,long,object>. Found using Gendarme's
133         AvoidDeclaringCustomDelegatesRule
134
135 2009-12-12  Rolf Bjarne Kvinge  <RKvinge@novell.com>
136
137         * WebClient_2_1.cs: When creating the request we need to copy over
138         any headers the user set on us. We also need to wrap
139         InvalidOperationExceptions in WebExceptions.
140
141 2009-12-04  Sebastien Pouliot  <sebastien@ximian.com> 
142
143         * HttpStatusCode_2_1.cs: Remove. SL3 provides all status code 
144         since they are used for the client stack
145         * WebClient_2_1.cs: Add Credentials property and change
146         ResponseHeaders property to public
147         * WebRequest_2_1.cs: Add Credentials property
148
149 2009-12-04  Sebastien Pouliot  <sebastien@ximian.com>
150
151         * DnsEndPoint_2_1.cs: Moved to System.dll since it's also part
152         of .net 4.0
153
154 2009-12-04  Sebastien Pouliot  <sebastien@ximian.com> 
155
156         * HttpWebRequest_2_1.cs: Add CookieCollection, need to be 
157         implemented in the client stack
158         * HttpWebResponse_2_1.cs: CookieContainer is virtual. Add FIXME
159         to move (a real) implementation into the client stack
160         * WebRequest_2_1.cs: Add Create(string) overload (SL3)
161
162 2009-09-24  Sebastien Pouliot  <sebastien@ximian.com> 
163
164         * Dns_2_1.cs: New. Smaller version of Dns.cs that offers just
165         enough for DnsEndPoint support
166
167 2009-09-24  Sebastien Pouliot  <sebastien@ximian.com>
168
169         * DnsEndPoint_2_1.cs: Remove (now) unneeded method
170
171 2009-07-16  Sebastien Pouliot  <sebastien@ximian.com>
172
173         * WebHeaderCollection_2_1.cs: Seal type.
174
175 2009-06-17  Sebastien Pouliot  <sebastien@ximian.com>
176
177         * WebClient_2_1.cs: Fix BaseAddress and remove dual base[Address|
178         String] variables.
179
180 2009-06-05  Sebastien Pouliot  <sebastien@ximian.com>
181
182         * WebClient_2_1.cs: Make sure *CompletedEventArgs gets called 
183         even in case an exception occurs before the BeginGetResponse 
184         call. Adjust API for OpenReadCompletedEventArgs.
185
186 2009-06-04  Sebastien Pouliot  <sebastien@ximian.com>
187
188         * WebClient_2_1.cs: Remove the creation of threads and use the
189         async methods provided by WebRequest (and its friends). Use an
190         internal object to lock on (not this). Remove comments from the
191         original (mono) WebClient since the code has diverged so much.
192         Fix DRT#326 (hopefully others too or at least more than it breaks)
193
194 2009-06-01  Sebastien Pouliot  <sebastien@ximian.com>
195
196         * HttpWebRequest_2_1.cs: Avoid possible NRE while settings a
197         complete collection.
198         * WebResponse_2_1.cs: Use StringComparer.OrdinalIgnoreCase on 
199         the prefix Dictionary
200
201 2009-05-26  Sebastien Pouliot  <sebastien@ximian.com>
202
203         * WebClient_2_1.cs: Add internal WebHeaderCollection. Change
204         signature for OpenPolicyReadAsync to take an addtional object
205         * WebResponse_2_1.cs: Add internal WebHeaderCollection
206
207 2009-05-22  Sebastien Pouliot  <sebastien@ximian.com>
208
209         * WebClient_2_1.cs: Add an internal OpenPolicyReadAsync. Check 
210         result in ProcessResponse and throw if not Ok (200).
211         * WebRequest_2_1.cs: Add an internal overload to BeginGetResponse
212         from where we can handle downloading the policy.
213
214 2009-05-14  Sebastien Pouliot  <sebastien@ximian.com>
215
216         * DnsEndPoint_2_1.cs: Add method to return an IPEndPoint from a
217         DnsEndPoint that match the requested AddressFamily
218
219 2009-05-12  Sebastien Pouliot  <sebastien@ximian.com>
220
221         * WebHeaderCollection_2_1.cs: Headers are case insensitive but we
222         must keep them in their original form since AllKeys property will
223         report them that way and user code (like DRT#288) can depends on
224         this behavior.
225
226 2009-05-11  Sebastien Pouliot  <sebastien@ximian.com>
227
228         * WebHeaderCollection_2_1.cs: Headers are removed only in special
229         cases and never when the "this" property is used. Call ToLower
230         in SetHeader too in order to avoid typos.
231
232 2009-05-11  Sebastien Pouliot  <sebastien@ximian.com>
233
234         * HttpWebRequest_2_1.cs: Fix Accept and ContentType properties
235         to use, with special care, the Headers property
236         * WebHeaderCollection_2_1.cs (SetHeader): Add or remove header.
237
238 2009-05-10  Sebastien Pouliot  <sebastien@ximian.com>
239
240         * HttpWebRequest_2_1.cs: Move Headers property logic here (as 
241         shown by adding more unit tests)
242         * WebClient_2_1.cs: Add comment that Headers are not validated
243         there, but later.
244         * WebHeaderCollection_2_1.cs: Add a SetHeader method that can 
245         work around the normal validations that the "this" property
246         needs to do.
247
248 2009-05-09  Sebastien Pouliot  <sebastien@ximian.com>
249
250         * WebHeaderCollection_2_1.cs: When associated with a WebRequest 
251         the header collection items needs to be validated since not all
252         headers will be valid. Part of fix for DRT#532
253
254 2009-04-16  Sebastien Pouliot  <sebastien@ximian.com> 
255
256         * HttpWebRequest_2_1.cs: Rework the throwing of NIE so gui-compare
257         does not report them (since they are the "right" behavior)
258         * WebClient_2_1.cs: Fix BaseAddress property to return the URI to 
259         the XAP file. Implement protected GetWebRequest which will make an
260         absolute URI from a relative one (using BaseAddress). That remove
261         the need of the previous hack.
262         * WebRequest_2_1.cs: Remove previous hack
263
264 2009-04-11  Sebastien Pouliot  <sebastien@ximian.com> 
265
266         * WebClient_2_1.cs: WebClient allows relative URI...
267         * WebRequest_2_1.cs: ...while WebRequest does not by default. 
268         Also uncomment a few checks for new test cases
269
270 2009-04-11  Sebastien Pouliot  <sebastien@ximian.com>
271
272         * DnsEndPoint_2_1.cs: Adjust exceptions wrt unit tests
273         * HttpWebRequest_2_1.cs: Fix Headers property wrt unit tests: 
274         * WebClient_2_1.cs: Fix some properties
275         * WebHeaderCollection_2_1.cs: Adjust exceptions wrt unit tests
276         * WebRequest_2_1.cs: Add RegisterPrefix functionality and add
277         missing checks (fix unit tests)
278
279 2009-04-09  Sebastien Pouliot  <sebastien@ximian.com>
280
281         * DnsEndPoint_2_1.cs: Fix header.
282         * HttpStatusCode_2_1.cs: New. SL2 (short) version of the enum
283         * HttpWebRequest_2_1.cs: Add missing members
284         * WebExceptionStatus_2_1.cs: New. SL2 (short) version of the enum
285         * WebHeaderCollection_2_1.cs: Implement S.C.IEnumerable
286
287 2009-03-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>
288
289         * WebClient_2_1.cs: OnOpenReadCompleted and OnDownloadStringCompleted:
290         make sure we don't pass any exceptions back to native code.
291
292 2009-03-04  Rolf Bjarne Kvinge  <RKvinge@novell.com>
293
294         * WebClient_2_1.cs: Stub out missing methods.
295         * WriteStreamClosedEventArgs_2_1.cs: 
296         * WriteStreamClosedEventHandler_2_1.cs: Added.
297
298 2009-02-05  Geoff Norton  <gnorton@novell.com>
299
300         * WebClient_2_1.cs: Use g_timeout_add instead of g_idle_add here until
301         SyncContext is ready, as its less prone to starvation.
302
303 2009-02-05  Geoff Norton  <gnorton@novell.com>
304
305         * WebClient_2_1.cs: CancelAsync calls Thread.Interrupt so needs to be
306         SecuritySafeCritical for now.
307
308 2009-01-26  Rolf Bjarne Kvinge  <rkvinge@novell.com>
309
310         * WebClient_2_1.cs: Ensure we don't let exceptions go to native code.
311         * HttpWebRequest_2_1.cs: Add AllowReadStreamBuffering.
312
313 2009-01-21  Geoff Norton  <gnorton@novell.com>
314
315         * WebClient_2_1.cs: Make the ManualResetEvent local to the callback
316         because a WebClient can be reused causing a wait-handle race here
317         allowing a delegate to get collected causing a crash.
318
319 2009-01-21  Chris Toshok  <toshok@ximian.com>
320
321         * WebClient_2_1.cs: add 1 method back in, CancelAsync.
322
323 2009-01-12  Geoff Norton  <gnorton@novell.com>
324
325         * WebClient_2.1.cs: SL2 webclient supports BaseAddress.
326
327 2008-10-16  Jb Evain  <jbevain@novell.com>
328
329         * WebHeaderCollection_2_1.cs: update to SL2 api.
330
331 2008-10-16  Jb Evain  <jbevain@novell.com>
332
333         * WebResponse_2_1.cs: update API to SL2.
334
335 2008-08-21  Stephane Delcroix  <sdelcroix@novell.com>
336
337         * WebClient_2_1.cs: set the address on OpenReadCompletedEventArgs
338         ctor.
339
340 2008-08-21  Stephane Delcroix  <sdelcroix@novell.com>
341
342         * WebClient_2_1.cs: enable the DownloadStringAsync code
343
344 2008-08-19  Geoff Norton  <gnorton@novell.com>
345
346         * WebClient_2_1.cs: Keep a reference to the tick callback until its completed.
347
348 2008-08-18  Geoff Norton  <gnorton@novell.com>
349
350         * WebRequest_2_1.cs: Set a delegate callback for BrowserHttpWebRequest
351         to update progress.
352         * WebClient_2_1.cs: Refactor the OnDownloadedChanged method, as its already
353         emitting on the right thread.  Clean up the OnOpenReadCompleted method.
354         Set a delegate callback for BrowserHttpWebRequest to updated Progress.
355
356 2008-08-17  Geoff Norton  <gnorton@novell.com>
357
358         * WebRequest_2_1.cs: We support relative URI's now.
359
360 2008-08-14  Geoff Norton  <gnorton@novell.com>
361
362         * WebClient_2_1.cs: A dirty hack to emit the events on the proper thread
363         until we can figure out exactly how to leverage Dispatcher over here.
364
365 2008-06-18  Stephane Delcroix  <sdelcroix@novell.com>
366
367         * WebRequest_2_1.cs: Load BrowserHttpWebRequest from the right assembly
368
369 2008-06-10  Stephane Delcroix  <sdelcroix@novell.com>
370
371         * DnsEndPoint_2_1.cs: embed an IPAddress and rely on IPEndPoint
372         for serialization.
373
374 2008-06-04  Stephane Delcroix  <sdelcroix@novell.com>
375
376         * DnsEndPoint_2_1.cs: new DnsEndPoint class for SL2b1
377
378 2008-04-13  Jb Evain  <jbevain@novell.com>
379
380         * *_2_1.cs: move the specific 2.1 System.Net code to the
381         assembly System.Net.