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