[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / System.Net / System.Net / ChangeLog
index 46c9b36e4e5412cbde62ce11e3d6d751014e5ba5..3c83f75effdc4417f96f67abc47c5382ce43a022 100644 (file)
@@ -1,3 +1,346 @@
+2010-07-14  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: Fix IEnumerable.GetEnumerator
+
+2010-05-14  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: Hide the internal Dictionary and 
+       provide methods to use it properly.
+       * HttpWebRequest_2_1.cs: Use internal Clear method
+
+2010-04-21  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebResponse_2_1.cs: Method, StatusCode and StatusDescription
+       property getters are now virtual (instead of abstract) and throw
+       NIE in SL4 (final) API.
+       * WebRequest_2_1.cs: Added ContentLength (SL4) property to throw
+       NIE. Implement (SL4) CreateHttp methods. Rework stack registration
+       logic.
+       * WebResponse_2_1.cs: default Headers getter throws NIE
+
+2010-04-05  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * InternalWebResponseStreamWrapper.cs: Move back to 
+       System.Windows.dll
+
+2010-03-19  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: AllowWriteStreamBuffering getter/setter
+       throws NIE by default (must be overridden). Revert Accept and
+       ContentType behavior to SL2 (identical to SL4 but different from
+       SL3). 
+       * WebClient_2_1.cs: Initialize UseDefaultCredentials to true. Set
+       the properties when creating a new WebRequest
+
+2010-03-18  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Add SL4 RC AllowWriteStreamBuffering and
+       SupportsCookieContainer properties.
+       * WebClient_2_1.cs: Add SL4 RC AllowWriteStreamBuffering and 
+       UseDefaultCredentials properties.
+       * WebHeaderCollection_2_1.cs: Authorization and Proxy-Authorization
+       are valid (i.e. usable) headers in SL4 (in both stacks)
+
+2010-03-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebRequest_2_1.cs: Added UseDefaultCredentials property.
+
+2010-03-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Directly set 'progress' delegate field
+       * WebRequest_2_1.cs: Avoid using reflection (since it was not 
+       really needed anyway)
+
+2010-03-03  Andreia Gaita  <avidigal@novell.com>
+
+       * InternalWebRequestStreamWrapper.cs: don't add a newline to the
+       request data, whatever uses the data should be the one adding
+       newlines if they need it (i.e., moon's ff bridge needs it, the
+       curl bridge doesn't)
+
+2010-02-25  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: Emit DownloadProgressChanged events on the correct
+       thread too.
+
+2010-02-23  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Accept and ContentType properties do not
+       behave like Silverlight 2.0 (not related to browser/client stacks)
+       * WebHeaderCollection_2_1.cs: Range is now accepted in SL3 (not
+       related to browser/client stacks)
+       * WebRequest_2_1.cs: Fix registration to work on domains (new) 
+       and scheme (more correctly wrt new unit tests).
+
+2010-02-16  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Keep a copy of 'userToken' since we need to
+       supply it when calling OnDownloadProgressChanged
+       * WebRequest_2_1.cs (SetupProgressDelegate): Simplify signature
+
+2010-01-29  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: Ensure the WriteStreamClosed event is emitted on
+       the correct thread (by using the stored SynchronizationContext).
+
+       * InternalWebRequestStreamWrapper.cs: Add a WebClientData field which
+       is passed to the WriteStreamClosedCallback.
+
+2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: The async events must be invoked on a threadpool
+       thread if the async method wasn't executed on the main thread, so save
+       the synchronization context when the async method is called, and post
+       the event to that synchronization context when done. This is also
+       required when the async methods are executed on the main thread, since
+       HttpWebRequest callbacks are now always executed on a threadpool thread.
+
+2010-01-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * UdpAnySourceMulticastClient.cs: New. Stub for SL4
+       * UdpSingleSourceMulticastClient.cs: New. Stub for SL4
+
+2010-01-13  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Throw for CookieContainer. It is 
+       implemented only in the client http stack (and for a limited
+       time in the browser stack too ;-)
+       * InternalWebRequestStreamWrapper.cs: Keep the MemoryStream data
+       available after closing/disposing (by user) since our own code
+       will need it later (e.g. when posting like DRT287)
+       * WebHeaderCollection_2_1.cs: Provide an argument to 
+       ArgumentException. Found by Gendarme's ArgumentException
+       InstantiateArgumentExceptionCorrectlyRule
+
+2010-01-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebRequest_2_1.cs: Rework registration wrt the two, browser
+       and client, stacks offered in SL3. Only global works now.
+
+2010-01-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * InternalWebRequestStreamWrapper.cs: New. Moved (and adapted) 
+       from Moonlight System.Windows.Browser assembly.
+       * InternalWebResponseStreamWrapper.cs: New. Moved (and adapted) 
+       from Moonlight System.Windows.Browser assembly.
+       * WebClient_2_1.cs: Remove custom delegate declaration (Gendarme's
+       AvoidDeclaringCustomDelegatesRule). Remove locking over a variable
+       (Gendarme's ReviewLockUsedOnlyForOperationsOnVariablesRule). 
+       Avoid potential race with event handlers (Gendarme's 
+       ProtectCallsToEventDelegatesRule). Implement OnWriteStreamClosed
+       * WebRequest_2_1.cs: Signature change from delegate to 
+       Action<long,long,object>. Found using Gendarme's
+       AvoidDeclaringCustomDelegatesRule
+
+2009-12-12  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: When creating the request we need to copy over
+       any headers the user set on us. We also need to wrap
+       InvalidOperationExceptions in WebExceptions.
+
+2009-12-04  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * HttpStatusCode_2_1.cs: Remove. SL3 provides all status code 
+       since they are used for the client stack
+       * WebClient_2_1.cs: Add Credentials property and change
+       ResponseHeaders property to public
+       * WebRequest_2_1.cs: Add Credentials property
+
+2009-12-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DnsEndPoint_2_1.cs: Moved to System.dll since it's also part
+       of .net 4.0
+
+2009-12-04  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * HttpWebRequest_2_1.cs: Add CookieCollection, need to be 
+       implemented in the client stack
+       * HttpWebResponse_2_1.cs: CookieContainer is virtual. Add FIXME
+       to move (a real) implementation into the client stack
+       * WebRequest_2_1.cs: Add Create(string) overload (SL3)
+
+2009-09-24  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * Dns_2_1.cs: New. Smaller version of Dns.cs that offers just
+       enough for DnsEndPoint support
+
+2009-09-24  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DnsEndPoint_2_1.cs: Remove (now) unneeded method
+
+2009-07-16  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: Seal type.
+
+2009-06-17  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Fix BaseAddress and remove dual base[Address|
+       String] variables.
+
+2009-06-05  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Make sure *CompletedEventArgs gets called 
+       even in case an exception occurs before the BeginGetResponse 
+       call. Adjust API for OpenReadCompletedEventArgs.
+
+2009-06-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Remove the creation of threads and use the
+       async methods provided by WebRequest (and its friends). Use an
+       internal object to lock on (not this). Remove comments from the
+       original (mono) WebClient since the code has diverged so much.
+       Fix DRT#326 (hopefully others too or at least more than it breaks)
+
+2009-06-01  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Avoid possible NRE while settings a
+       complete collection.
+       * WebResponse_2_1.cs: Use StringComparer.OrdinalIgnoreCase on 
+       the prefix Dictionary
+
+2009-05-26  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Add internal WebHeaderCollection. Change
+       signature for OpenPolicyReadAsync to take an addtional object
+       * WebResponse_2_1.cs: Add internal WebHeaderCollection
+
+2009-05-22  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebClient_2_1.cs: Add an internal OpenPolicyReadAsync. Check 
+       result in ProcessResponse and throw if not Ok (200).
+       * WebRequest_2_1.cs: Add an internal overload to BeginGetResponse
+       from where we can handle downloading the policy.
+
+2009-05-14  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DnsEndPoint_2_1.cs: Add method to return an IPEndPoint from a
+       DnsEndPoint that match the requested AddressFamily
+
+2009-05-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: Headers are case insensitive but we
+       must keep them in their original form since AllKeys property will
+       report them that way and user code (like DRT#288) can depends on
+       this behavior.
+
+2009-05-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: Headers are removed only in special
+       cases and never when the "this" property is used. Call ToLower
+       in SetHeader too in order to avoid typos.
+
+2009-05-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Fix Accept and ContentType properties
+       to use, with special care, the Headers property
+       * WebHeaderCollection_2_1.cs (SetHeader): Add or remove header.
+
+2009-05-10  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HttpWebRequest_2_1.cs: Move Headers property logic here (as 
+       shown by adding more unit tests)
+       * WebClient_2_1.cs: Add comment that Headers are not validated
+       there, but later.
+       * WebHeaderCollection_2_1.cs: Add a SetHeader method that can 
+       work around the normal validations that the "this" property
+       needs to do.
+
+2009-05-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * WebHeaderCollection_2_1.cs: When associated with a WebRequest 
+       the header collection items needs to be validated since not all
+       headers will be valid. Part of fix for DRT#532
+
+2009-04-16  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * HttpWebRequest_2_1.cs: Rework the throwing of NIE so gui-compare
+       does not report them (since they are the "right" behavior)
+       * WebClient_2_1.cs: Fix BaseAddress property to return the URI to 
+       the XAP file. Implement protected GetWebRequest which will make an
+       absolute URI from a relative one (using BaseAddress). That remove
+       the need of the previous hack.
+       * WebRequest_2_1.cs: Remove previous hack
+
+2009-04-11  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * WebClient_2_1.cs: WebClient allows relative URI...
+       * WebRequest_2_1.cs: ...while WebRequest does not by default. 
+       Also uncomment a few checks for new test cases
+
+2009-04-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DnsEndPoint_2_1.cs: Adjust exceptions wrt unit tests
+       * HttpWebRequest_2_1.cs: Fix Headers property wrt unit tests: 
+       * WebClient_2_1.cs: Fix some properties
+       * WebHeaderCollection_2_1.cs: Adjust exceptions wrt unit tests
+       * WebRequest_2_1.cs: Add RegisterPrefix functionality and add
+       missing checks (fix unit tests)
+
+2009-04-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DnsEndPoint_2_1.cs: Fix header.
+       * HttpStatusCode_2_1.cs: New. SL2 (short) version of the enum
+       * HttpWebRequest_2_1.cs: Add missing members
+       * WebExceptionStatus_2_1.cs: New. SL2 (short) version of the enum
+       * WebHeaderCollection_2_1.cs: Implement S.C.IEnumerable
+
+2009-03-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: OnOpenReadCompleted and OnDownloadStringCompleted:
+       make sure we don't pass any exceptions back to native code.
+
+2009-03-04  Rolf Bjarne Kvinge  <RKvinge@novell.com>
+
+       * WebClient_2_1.cs: Stub out missing methods.
+       * WriteStreamClosedEventArgs_2_1.cs: 
+       * WriteStreamClosedEventHandler_2_1.cs: Added.
+
+2009-02-05  Geoff Norton  <gnorton@novell.com>
+
+       * WebClient_2_1.cs: Use g_timeout_add instead of g_idle_add here until
+       SyncContext is ready, as its less prone to starvation.
+
+2009-02-05  Geoff Norton  <gnorton@novell.com>
+
+       * WebClient_2_1.cs: CancelAsync calls Thread.Interrupt so needs to be
+       SecuritySafeCritical for now.
+
+2009-01-26  Rolf Bjarne Kvinge  <rkvinge@novell.com>
+
+       * WebClient_2_1.cs: Ensure we don't let exceptions go to native code.
+       * HttpWebRequest_2_1.cs: Add AllowReadStreamBuffering.
+
+2009-01-21  Geoff Norton  <gnorton@novell.com>
+
+       * WebClient_2_1.cs: Make the ManualResetEvent local to the callback
+       because a WebClient can be reused causing a wait-handle race here
+       allowing a delegate to get collected causing a crash.
+
+2009-01-21  Chris Toshok  <toshok@ximian.com>
+
+       * WebClient_2_1.cs: add 1 method back in, CancelAsync.
+
+2009-01-12  Geoff Norton  <gnorton@novell.com>
+
+       * WebClient_2.1.cs: SL2 webclient supports BaseAddress.
+
+2008-10-16  Jb Evain  <jbevain@novell.com>
+
+       * WebHeaderCollection_2_1.cs: update to SL2 api.
+
+2008-10-16  Jb Evain  <jbevain@novell.com>
+
+       * WebResponse_2_1.cs: update API to SL2.
+
+2008-08-21  Stephane Delcroix  <sdelcroix@novell.com>
+
+       * WebClient_2_1.cs: set the address on OpenReadCompletedEventArgs
+       ctor.
+
+2008-08-21  Stephane Delcroix  <sdelcroix@novell.com>
+
+       * WebClient_2_1.cs: enable the DownloadStringAsync code
+
 2008-08-19  Geoff Norton  <gnorton@novell.com>
 
        * WebClient_2_1.cs: Keep a reference to the tick callback until its completed.