1 2010-04-05 Sebastien Pouliot <sebastien@ximian.com>
3 * InternalWebResponseStreamWrapper.cs: Move back to
6 2010-03-19 Sebastien Pouliot <sebastien@ximian.com>
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
12 * WebClient_2_1.cs: Initialize UseDefaultCredentials to true. Set
13 the properties when creating a new WebRequest
15 2010-03-18 Sebastien Pouliot <sebastien@ximian.com>
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)
24 2010-03-16 Rolf Bjarne Kvinge <RKvinge@novell.com>
26 * WebRequest_2_1.cs: Added UseDefaultCredentials property.
28 2010-03-12 Sebastien Pouliot <sebastien@ximian.com>
30 * WebClient_2_1.cs: Directly set 'progress' delegate field
31 * WebRequest_2_1.cs: Avoid using reflection (since it was not
34 2010-03-03 Andreia Gaita <avidigal@novell.com>
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
41 2010-02-25 Rolf Bjarne Kvinge <RKvinge@novell.com>
43 * WebClient_2_1.cs: Emit DownloadProgressChanged events on the correct
46 2010-02-23 Sebastien Pouliot <sebastien@ximian.com>
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).
55 2010-02-16 Sebastien Pouliot <sebastien@ximian.com>
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
61 2010-01-29 Rolf Bjarne Kvinge <RKvinge@novell.com>
63 * WebClient_2_1.cs: Ensure the WriteStreamClosed event is emitted on
64 the correct thread (by using the stored SynchronizationContext).
66 * InternalWebRequestStreamWrapper.cs: Add a WebClientData field which
67 is passed to the WriteStreamClosedCallback.
69 2010-01-28 Rolf Bjarne Kvinge <RKvinge@novell.com>
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.
78 2010-01-25 Sebastien Pouliot <sebastien@ximian.com>
80 * UdpAnySourceMulticastClient.cs: New. Stub for SL4
81 * UdpSingleSourceMulticastClient.cs: New. Stub for SL4
83 2010-01-13 Sebastien Pouliot <sebastien@ximian.com>
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
95 2010-01-12 Sebastien Pouliot <sebastien@ximian.com>
97 * WebRequest_2_1.cs: Rework registration wrt the two, browser
98 and client, stacks offered in SL3. Only global works now.
100 2010-01-11 Sebastien Pouliot <sebastien@ximian.com>
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
115 2009-12-12 Rolf Bjarne Kvinge <RKvinge@novell.com>
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.
121 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
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
129 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
131 * DnsEndPoint_2_1.cs: Moved to System.dll since it's also part
134 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
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)
142 2009-09-24 Sebastien Pouliot <sebastien@ximian.com>
144 * Dns_2_1.cs: New. Smaller version of Dns.cs that offers just
145 enough for DnsEndPoint support
147 2009-09-24 Sebastien Pouliot <sebastien@ximian.com>
149 * DnsEndPoint_2_1.cs: Remove (now) unneeded method
151 2009-07-16 Sebastien Pouliot <sebastien@ximian.com>
153 * WebHeaderCollection_2_1.cs: Seal type.
155 2009-06-17 Sebastien Pouliot <sebastien@ximian.com>
157 * WebClient_2_1.cs: Fix BaseAddress and remove dual base[Address|
160 2009-06-05 Sebastien Pouliot <sebastien@ximian.com>
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.
166 2009-06-04 Sebastien Pouliot <sebastien@ximian.com>
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)
174 2009-06-01 Sebastien Pouliot <sebastien@ximian.com>
176 * HttpWebRequest_2_1.cs: Avoid possible NRE while settings a
178 * WebResponse_2_1.cs: Use StringComparer.OrdinalIgnoreCase on
179 the prefix Dictionary
181 2009-05-26 Sebastien Pouliot <sebastien@ximian.com>
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
187 2009-05-22 Sebastien Pouliot <sebastien@ximian.com>
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.
194 2009-05-14 Sebastien Pouliot <sebastien@ximian.com>
196 * DnsEndPoint_2_1.cs: Add method to return an IPEndPoint from a
197 DnsEndPoint that match the requested AddressFamily
199 2009-05-12 Sebastien Pouliot <sebastien@ximian.com>
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
206 2009-05-11 Sebastien Pouliot <sebastien@ximian.com>
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.
212 2009-05-11 Sebastien Pouliot <sebastien@ximian.com>
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.
218 2009-05-10 Sebastien Pouliot <sebastien@ximian.com>
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
224 * WebHeaderCollection_2_1.cs: Add a SetHeader method that can
225 work around the normal validations that the "this" property
228 2009-05-09 Sebastien Pouliot <sebastien@ximian.com>
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
234 2009-04-16 Sebastien Pouliot <sebastien@ximian.com>
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
244 2009-04-11 Sebastien Pouliot <sebastien@ximian.com>
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
250 2009-04-11 Sebastien Pouliot <sebastien@ximian.com>
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)
259 2009-04-09 Sebastien Pouliot <sebastien@ximian.com>
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
267 2009-03-11 Rolf Bjarne Kvinge <RKvinge@novell.com>
269 * WebClient_2_1.cs: OnOpenReadCompleted and OnDownloadStringCompleted:
270 make sure we don't pass any exceptions back to native code.
272 2009-03-04 Rolf Bjarne Kvinge <RKvinge@novell.com>
274 * WebClient_2_1.cs: Stub out missing methods.
275 * WriteStreamClosedEventArgs_2_1.cs:
276 * WriteStreamClosedEventHandler_2_1.cs: Added.
278 2009-02-05 Geoff Norton <gnorton@novell.com>
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.
283 2009-02-05 Geoff Norton <gnorton@novell.com>
285 * WebClient_2_1.cs: CancelAsync calls Thread.Interrupt so needs to be
286 SecuritySafeCritical for now.
288 2009-01-26 Rolf Bjarne Kvinge <rkvinge@novell.com>
290 * WebClient_2_1.cs: Ensure we don't let exceptions go to native code.
291 * HttpWebRequest_2_1.cs: Add AllowReadStreamBuffering.
293 2009-01-21 Geoff Norton <gnorton@novell.com>
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.
299 2009-01-21 Chris Toshok <toshok@ximian.com>
301 * WebClient_2_1.cs: add 1 method back in, CancelAsync.
303 2009-01-12 Geoff Norton <gnorton@novell.com>
305 * WebClient_2.1.cs: SL2 webclient supports BaseAddress.
307 2008-10-16 Jb Evain <jbevain@novell.com>
309 * WebHeaderCollection_2_1.cs: update to SL2 api.
311 2008-10-16 Jb Evain <jbevain@novell.com>
313 * WebResponse_2_1.cs: update API to SL2.
315 2008-08-21 Stephane Delcroix <sdelcroix@novell.com>
317 * WebClient_2_1.cs: set the address on OpenReadCompletedEventArgs
320 2008-08-21 Stephane Delcroix <sdelcroix@novell.com>
322 * WebClient_2_1.cs: enable the DownloadStringAsync code
324 2008-08-19 Geoff Norton <gnorton@novell.com>
326 * WebClient_2_1.cs: Keep a reference to the tick callback until its completed.
328 2008-08-18 Geoff Norton <gnorton@novell.com>
330 * WebRequest_2_1.cs: Set a delegate callback for BrowserHttpWebRequest
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.
336 2008-08-17 Geoff Norton <gnorton@novell.com>
338 * WebRequest_2_1.cs: We support relative URI's now.
340 2008-08-14 Geoff Norton <gnorton@novell.com>
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.
345 2008-06-18 Stephane Delcroix <sdelcroix@novell.com>
347 * WebRequest_2_1.cs: Load BrowserHttpWebRequest from the right assembly
349 2008-06-10 Stephane Delcroix <sdelcroix@novell.com>
351 * DnsEndPoint_2_1.cs: embed an IPAddress and rely on IPEndPoint
354 2008-06-04 Stephane Delcroix <sdelcroix@novell.com>
356 * DnsEndPoint_2_1.cs: new DnsEndPoint class for SL2b1
358 2008-04-13 Jb Evain <jbevain@novell.com>
360 * *_2_1.cs: move the specific 2.1 System.Net code to the