[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / System.Web / System.Web.UI / ChangeLog
index c993573f6a5816e28940a056116b8fa19cad98b6..6ed7ad0c4b96935057043fdf9cad6d0147529927 100644 (file)
@@ -1,9 +1,472 @@
-2009-02-06  Marek Habersack  <mhabersack@novell.com>
+2010-07-23  Marek Habersack  <mhabersack@novell.com>
 
-       * Control.cs: partially restore the ViewStateShouldBeSaved method
-       in order to introduce a small optimization - when the control's
-       EnableViewState is false, there is no point in checking all the
-       child controls.
+       * ClientScriptManager.cs: 4.0 adds a class="aspNetHidden"
+       attribute to the div element surrounding the hidden elements.
+
+2010-07-14  Marek Habersack  <mhabersack@novell.com>
+
+       * DataKeyPropertyAttribute.cs: added (4.0)
+
+2010-07-13  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: moved 4.0 ClientID code to a separate method, so
+       that the ID_SET flag isn't set when necessary.
+
+2010-07-10  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: when setting ClientIDMode remember the value when
+       setting the property for the first time.
+
+2010-07-08  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: if generating a predictable ID and the current
+       control is a naming container, ensure that an ID is generated if
+       not specified by user.
+
+2010-07-02  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateControlParser.cs: added support for ClientIDMode
+       property
+
+       * Control.cs: implemented 4.0 features - ClientIDMode and
+       RenderingCompatibility.
+
+       * ClientIDMode.cs, IDataKeysControl.cs: added
+
+2010-06-17  Marek Habersack  <mhabersack@novell.com>
+
+       * RootBuilder.cs: both LINK and META HTML tags must be represented
+       as instances of HtmlGenericControl. Fixes bug #603541
+
+2010-06-02  Marek Habersack  <mhabersack@novell.com>
+
+       * ViewStateMode.cs: added
+
+       * Control.cs: implemented 4.0 ViewStateMode
+
+       * Page.cs: implemented 4.0 properties AutoPostBackControl and
+       RouteData
+
+2010-06-01  Marek Habersack  <mhabersack@novell.com>
+
+       * PageParser.cs: added support for MetaDescription and
+       MetaKeywords main directive attributes
+
+       * Page.cs: implemented MetaDescription and MetaKeywords
+       4.0 properties. 
+
+2010-05-19  Marek Habersack  <mhabersack@novell.com>
+
+       * DataSourceCacheDurationConverter.cs: implemented. Fixes bug
+       #603083
+
+       * PageParser.cs: handle several main directive attributes
+       specially, as they can have expressions as their values. Fixes bug
+       #603532
+
+       * MainDirectiveAttribute.cs: added - helper class to handle
+       directive attributes which can take either a value or an
+       expression.
+
+       * BaseParser.cs: IsDirective, IsExpression and IsDataBound methods
+       moved to here from TemplateControlCompiler.
+
+2010-05-15  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: implemented 4.0 GetRouteUrl overloads and
+       GetUniqueIDRelativeTo
+
+2010-05-05  Marek Habersack  <mhabersack@novell.com>
+
+       * CollectionBuilder.cs: if a type has more than on indexer, check
+       all of them for type compliance in GetChildControlType. Fixes bug
+       #601290. Patch from Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>,
+       thanks!
+
+2010-04-28  Marek Habersack  <mhabersack@novell.com>
+
+       * KeyedList.cs: do not implement IStateManager in 4.0
+
+2010-04-12  Marek Habersack  <mhabersack@novell.com>
+
+       * PageParser.cs: if EnableViewStateMac option is present in the
+       directive, remember it for later use by the compiler.
+
+       * Page.cs: initialize EnableViewStateMac with the default read
+       from the config.
+
+       The above fix cross-site scripting vulnerability (CVE: CVE-2010-1459)
+       Credits: Web Security Research Group (WSRG) of Hewlett Packard
+       (HP)
+
+2010-04-07  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: control cache must be filled using the local
+       _controls collection instead of the virtual Controls
+       property. Fixes bug #594238
+       Check if _controls isn't null before using it.
+
+2010-04-06  Marek Safar  <marek.safar@gmail.com>
+
+       * FileLevelControlBuilderAttribute.cs: Use reference comparison.
+
+2010-01-20  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectStateFormatter.cs: implemented support for IndexedString
+       on top of the existing StringFormatter.
+
+       * IndexedString.cs: implemented
+
+2009-12-22  Marek Habersack  <mhabersack@novell.com>
+
+       * Page.cs: form javascript declaration block is rendered only if
+       necessary. Fixes bug #566541
+
+       * ClientScriptManager.cs: added internal property ScriptsPresent
+       used to determine if it is necessary to render form javascript
+       declaration block.
+       Hidden fields block is output without indenting the controls and
+       without rendering trailing empty line.
+       Made Write{Begin,End}ScriptBlock slightly faster.
+
+2009-12-18  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectStateFormatter.cs: ObjectFormatter.WriteObject checks
+       whether candidate converter can convert from string now. Fixes bug
+       #565547
+
+2009-11-14  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateControl.cs: if writer is null in
+       WriteUTF8ResourceString, use output.Write, not writer.Write. Fixes
+       bug #547015
+
+2009-11-10  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: AddImports is called from LoadConfigDefaults
+       so that it reads configuration from the correct .config file (it
+       needs to be called after this.VirtualPath has been
+       initialized). Fixes an issue with MVC apps which put configuration
+       in Views/web.config etc. Fixes bug #552457
+
+       * ControlBuilder.cs, Page.cs: system.web/pages section is not
+       confined to the top-level web.config
+
+2009-10-30  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: ResolveClientUrl takes base path from
+       Request.ClientFilePath, so that it works correctly for rewritten
+       urls.
+
+2009-10-27  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectStateFormatter.cs: do not use a type converter to
+       serialize an object if the converter is an instance of
+       TypeConverter itself - its reported capability of converting to
+       string is not useful here.
+
+2009-10-12  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectStateFormatter.cs: if a type is associated with a type
+       converter, do not check if the converter can convert FROM the type
+       in question, as this is implied. Fixes bug #545979
+
+2009-10-09  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: implemented the LoadViewStateByID property as well
+       as saving/restoring the view state by control's ID.
+
+2009-09-22  Marek Habersack  <mhabersack@novell.com>
+
+       * WebServiceParser.cs: GetCompiledType uses BuildManager on the
+       2.0 profile. Fixes bug #533166
+
+2009-09-15  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: FindNamespaceInAssembly must catch
+       ReflectionTypeLoadException so that it doesn't break on invalid
+       assemblies.
+
+2009-08-24  Marek Habersack  <mhabersack@novell.com>
+
+       * PageParser.cs: 2.0 profile takes advantage of the inputFile
+       parameter to GetCompiledPageInstance. A check is made whether the
+       file pointed to by this parameter is inside the application's
+       virtual path and if not, the compilation request is assumed to
+       refer to a fake location. Part of fix for bug #463813
+
+2009-08-18  Marek Habersack  <mhabersack@novell.com>
+
+       * ControlBuilder.cs: Location property makes a copy of assigned
+       ILocation now.
+
+2009-08-14  Marek Habersack  <mhabersack@novell.com>
+
+       * ControlBuilder.cs: when CreateSubBuilder is called on a builder
+       which is supposed to treat its children as properties and the
+       default property builder is defined, first check if the tag which
+       has just been parsed isn't a template property. If it is, don't
+       use the default property builder, instead create a template
+       property builder directly. Fixes bug #527753
+
+2009-07-23  Marek Habersack  <mhabersack@novell.com>
+
+       * ControlBuilder.cs: added an internal helper property
+       IsNamingContainer.
+
+2009-07-21  Marek Habersack  <mhabersack@novell.com>
+
+       * SimpleWebHandlerParser.cs: make sure to ignore invalid bin/
+       assemblies in AddAssembliesInBin and GetTypeFromBin.
+
+2009-06-15  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: AddAssembliesInBin (1.1 profile) tries to
+       load every assembly in order to see if it's a valid one. All bad
+       dll image errors are silently ignored. Fixes bug #315816
+
+2009-06-05  Marek Habersack  <mhabersack@novell.com>
+
+       * Page.cs: InitializeTheme uses WebConfigurationManager.GetSection
+       to retrieve page theme name. GetWebApplicationSection cannot be
+       used because the system.web/pages section is valid also in
+       subdirectories. Fixes bug #510302
+
+2009-06-01  Marek Habersack  <mhabersack@novell.com>
+
+       * ClientScriptManager.cs: WriteHiddenFields doesn't add the id
+       attribute to generated input element in the 1.1 profile. Fixes bug
+       #508167. Patch from Hubert FONGARNAND
+       <informatique.internet@fiducial.fr>, thanks!
+
+2009-05-29  Marek Habersack  <mhabersack@novell.com>
+
+       * StateBag.cs: made SetDirty (bool) available on 1.1 as
+       internal. Fixes bug #507836
+
+2009-05-05  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: PageParserFilterType uses
+       HttpApplication.LoadType so that it is able to load the filter
+       from App_Code or with not fully qualified type names.
+
+2009-05-04  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: take RootBuilder from the associated
+       generator. 
+       Allow the main page directive to be added twice if the parser
+       needs it. Used by AspGenerator when extracting the inherited type
+       name before actual parsing. Fixes bug #500075
+
+       * FileLevelControlBuilderAttribute.cs,
+       FileLevelPageControlBuilder.cs, FileLevelUserControlBuilder.cs:
+       implemented
+
+       * ControlBuilder.cs: added a new internal property,
+       DataBindingMethod.
+       Implemented ProcessGeneratedCode.
+
+2009-04-30  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: removed the PageParserFilterTypeName
+       property, the filter type name is looked up on demand now.
+
+       * ApplicationFileParser.cs, MasterPageParser.cs,
+       UserControlParser.cs: load config defaults explicitly after
+       initializing the instance.
+
+2009-04-29  Marek Habersack  <mhabersack@novell.com>
+
+       * DataBinder.cs: GetPropertyValue must throw also if propName is
+       empty.
+
+2009-04-24  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: PageParserFilter.Initialize now takes just
+       one parameter.
+       AddImport ignores null/empty namespaces. Fixes bug #498118
+
+       * PageParserFilter.cs: a few alignments for .NET compatibility in
+       the default behavior.
+
+2009-04-22  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: create the imports ArrayList before
+       attempting to use it. Fixes bug #497174
+
+2009-04-21  Marek Habersack  <mhabersack@novell.com>
+
+       * Page.cs: added support for OutputCacheParameters.NoStore to
+       InitOutputCache.
+
+       * SimpleWebHandlerParser.cs: retrieve CompilationSection from the
+       appropriate web.config file.
+
+       * BaseParser.cs: moved the internal property VirtualPath from
+       TemplateParser to here and added an internal method
+       GetConfigSection to retrieve sections from the correct web.config
+       file on 2.0 applications. Fixes bug #494245
+
+       * PageParser.cs: use the new GetConfigSection method to retrieve
+       ClientTargetSection.
+
+       * TemplateParser.cs: moved the VirtualPath property to
+       BaseParser.
+       PagesConfig now uses the new GetConfigSection method. Fixes bug
+       #494245
+       Added support for the SqlDependency, NoStore and CacheProfile
+       attributes of the OutputCache directive. Fixes bug #496951
+
+2009-04-15  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: use generic lists for import, namespace and
+       interface caches. If a namespace is added (e.g. by parsing the
+       Import directive), find the assembly in which namespace is
+       defined.
+
+2009-04-07  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: ApplyTheme - make sure Page is not null before using
+       it. Fixes bug #492666
+
+2009-04-06  Marek Habersack  <mhabersack@novell.com>
+
+       * Page.cs: ProcessRaiseCallbackEvent and ProcessGetCallbackResult
+       now return full exception trace if one is caught and we're running
+       in debugging mode.
+
+2009-03-31  Marek Habersack  <mhabersack@novell.com>
+
+       * Page.cs: SavePageViewState saves the list of controls which
+       require post back regardless of whether view state is disabled or
+       not. Fixes bug #490753
+
+       * ApplicationFileParser.cs, MasterPageParser.cs, PageParser.cs,
+       PageThemeFileParser.cs, PageThemeParser.cs, UserControlParser.cs,
+       WebHandlerParser.cs, WebServiceParser.cs: 2.0 constructors take a
+       VirtualPath instance for the virtualPath parameter, instead of a
+       string.
+
+2009-03-18  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: AppRelativeResourceDirectory no longer returns a
+       hard-coded "~/" when template control's virtual path cannot be
+       determined. It returns application relative version of
+       TemplateSourceDirectory instead.
+
+2009-03-13  Marek Habersack  <mhabersack@novell.com>
+
+       * Control.cs: clear the controls cache on control removal. This
+       ensures that a subsequent FindControl call won't return the
+       removed control.
+
+2009-03-06  Marek Habersack  <mhabersack@novell.com>
+
+       * XPathBinder.cs: use the pased namespace manager
+
+       * ControlBuilder.cs: BindingContainerType - if control type of the
+       containing builder is null, return typeof (Control)
+
+2009-03-03  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * Control.cs (FillControlCache): Remove useless control
+       parameter. It's always the same of 'this'.
+
+2009-03-03  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * DataBoundLiteralControl.cs: Don't init static literals
+       as they are lazily created.
+
+2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * BaseParser.cs:
+       * PageParser.cs:
+       * ControlBuilder.cs:
+       * TemplateParser.cs:
+       * Page.cs:
+       * SimpleWebHandlerParser.cs: settings that have to be in
+       machine.config or the root level web.config now call
+       GetWebApplicationSection.
+
+2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ObjectStateFormatter.cs: use GetWebApplication
+       instead of GetSection for application level configuration.
+
+2009-02-28  Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * Control.cs: Avoid double OnInit in scenarios with two master
+       pages.
+
+2009-02-26  Marek Habersack  <mhabersack@novell.com>
+
+       * FileLevelControlBuilderAttribute.cs,
+       DataSourceCacheDurationConverter: hush the gmcs warnings
+
+2009-02-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * TemplateControl.cs: implement the other ReadStringResource method.
+       Patch from Kornel Pal.
+
+2009-02-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceBasedLiteralControl.cs: new Control. It's just
+       like a LiteralControl but will render itself from the bytes pointed to
+       by an IntPtr and not create any string from the underlying data unless
+       needed.
+
+       * TemplateControl.cs: implemented a bunch of methods
+       that are used from the precompiled assemblies for a web project. The
+       most notable change needed is to be able to read a win32 resource from
+       the dll of the control. The resource is a concatenation of literals
+       with plain text for the control and a specialized LiteralControl is
+       generated from different chunks of the resource.
+
+       * HtmlTextWriter.cs: new method that returns the HttpWriter in use.
+
+2009-02-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * TemplateControl.cs: ReadStringResource returns null now.
+
+2009-02-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * MasterPage.cs: the items in ContentPlaceHolders are lowercase.
+
+2009-02-18  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: don't initialize PageParserFilter in
+       LoadConfigDefaults, postpone it till the first time the
+       PageParserFilter property is accessed.
+
+       * ApplicationFileParser.cs, UserControlParser.cs: make sure
+       VirtualPath is set in the constructors.
+
+2009-02-13  Marek Habersack  <mhabersack@novell.com>
+
+       * TemplateParser.cs: PageParserFilter handling moved to here.
+       PagesConfig must use the current virtual path when retrieving the
+       section, or otherwise we'll miss the lower level web.configs.
+       Added the AddControl method, used by PageParserFilter.
+       Implementing filtering of: parsed directives and the base type, if
+       a page parser filter is present.
+
+       * PageParserFilter.cs: added missing 3.5 members and implemented
+       everything.
+
+       * PageParser.cs: moved PageParserFilter processing to
+       TemplateParser.
+       VirtualPath must be set before anything else.
+       Call page parser filter's directive preprocessing code from
+       AddDirective if a filter is present and a mastertype or
+       previouspagetype directive is parsed.
+
+       * MasterPageParser.cs: when PageParserFilter is present use it to
+       preprocess the MasterType directive.
+
+2009-02-12  Marek Safar  <marek.safar@gmail.com>
+
+       * ControlBuilder.cs, PageParserFilter.cs, CodeConstructType.cs:
+       Add few missing members.
 
 2009-02-06  Gert Driesen  <drieseng@users.sourceforge.net>