2007-04-27 Marek Habersack * AspComponentFoundry.cs: formatting changes. AssemblyFoundry looks for the specified namespace+type in the top-level assemblies if necessary. 2007-04-26 Marek Habersack * AssemblyBuilder.cs: handle compilation failures in a better way. * PageCompiler.cs: the Master property must be in the partial class if present. Fixes bug #81442 2007-04-20 Marek Habersack * AppCodeCompiler.cs: fix App_Code build when the directory contains both known and unknown files. 2007-04-19 Gert Driesen * AspComponentFoundry.cs: Fixed build on 1.0 profile. Spaces to tabs. 2007-04-19 Marek Habersack * AppCodeCompiler.cs: yet another method of detecting if we have a custom profile. * BaseCompiler.cs: as above * AspComponentFoundry.cs: implemented delayed loading of control assemblies. Fixes bug #81058. 2007-04-19 Gert Driesen * BaseCompiler.cs: On 2.0, when ClassName attribute contains namespace then use it instead of the default ASP namespace. Fixes part of bug #81399. 2007-04-19 Marek Habersack * BaseCompiler.cs: don't look at the number of profile properties when deciding if we have a custom profile. It is possible to have a profile that just inherits from a base class and does not list any custom properties. Fixes bug #81396. * AppCodeCompiler.cs: as above 2007-04-15 Marek Habersack * AppCodeCompiler.cs: properly convert physical file path to virtual path for build providers. Make sure there's actually anything to compile. 2007-04-11 Marek Habersack * AppCodeCompiler.cs: move custom profile type check till after the App_Code compilation is done. That way we can have custom profile providers in there. Fixes bug #81307. 2007-04-10 Marek Habersack * AppResourceFilesCollection.cs: watch App_LocalResources for changes. 2007-04-06 Marek Habersack * BaseCompiler.cs: display the source of the file in which the error actually happened if the file exists, or the unit otherwise. 2007-04-03 Marek Habersack * AppResourcesCompiler.cs: global resources are put in the "Resources." namespace while local ones are not. Fixes bug #81174 which was reopened after r75261. 2007-03-26 Marek Habersack * TemplateControlCompiler.cs: refactor assining properties from resources a bit to support pages and user controls. Fixes bug #81204. Process meta:resourcekey after all the field/attribute assignments are done. Fixes bug #80809. Clean the code up a bit. Use GetExpressionFromString to generate a correct expression for custom page/control attributes. Fixes bug #81132. 2007-03-21 Marek Habersack * BaseCompiler.cs: cast 'this' to CodeFileBaseClass in AssignAppRelativeVirtualPath if the attribute was defined. * TemplateControlCompiler.cs: added support for setting custom attributes of a base class from the Page or Control directive attributes. 2007-03-20 Marek Habersack * ResourceExpressionBuilder.cs: if the resource class key is null or empty, call GetLocalResourceObject, if not, GetGlobalResourceObject. Fixes bug #81174. 2007-03-16 Marek Habersack * AppCodeCompiler.cs: produce message that makes more sense. 2007-03-15 Marek Habersack * AppResourcesCompiler.cs: handle global resource keys with dots the way MS.NET does. All the dots are replaced with underscores when generating the stronly-typed property. 2007-03-14 Marek Habersack * AppResourcesCompiler.cs: Fix a bug with global resources file grouping where no translated resources were processed due to base name mismatch. * TemplateControlCompiler.cs: hadle situations when there exist a control in the page with id matching the name of a field/property in the parent class. In this case we use 'protected new' to override the parent. 2007-03-13 Marek Habersack * AspParser.cs: fix an off-by-one parsing bug with server-side includes. * PageThemeCompiler.cs: let property builders through, stop the builders that have no control type. Fixes bug #81092 * PageCompiler.cs: interfaces are to be implemented by the parent partial class, not the generated one. * AppResourceFilesCollection.cs: added separate constructor for local resources handling. * TemplateControlCompiler.cs: request the local resource object with proper virtual path. Put field declarations for controls in the partial class. Make sure builders are in valid state before trying to use them. * BaseCompiler.cs: added code to assing AppRelativeVirtualPath property in the page/control constructor. Change the generated code model for pages/controls to comply with the way MS.NET does (partial class contains only two properties plus declarations of all the controls, the actual control/page class inherits from the partial class). Fixes bug #81001. * AppResourcesCompiler.cs: does not require specifying manually whether it's a global or local resource compiler anymore. New constructors take care of that. Changed to compile local resources on demand, when a control/page is parsed. 2007-03-12 Marek Habersack * AspParser.cs: revert r73587 as it breaks more than it fixes. * AspComponentFoundry.cs: try to register foundries from App_Code assemblies if tag prefix and its namespace are defined. Fixes bug #78797. * BuildManager.cs, BaseCompiler.cs: CodeAssemblies is a collection of Assembly instances, not strings. * CachingCompiler.cs: make sure items in the CodeAssemblies and TopLevelAssemblies are really instances of the Assembly class before trying to use them. CodeAssemblies is a collection of Assembly instances, not strings. * AppCodeCompiler.cs: on MS.NET CodeAssemblies is a collection of assemblies, not paths to assemblies. 2007-03-10 Marek Habersack * PageCompiler.cs, BaseCompiler.cs: refactoring: moved the CreateProfileProperty and InternalCreatePageProperty to BaseCompiler from PageCompiler. * GlobalAsaxCompiler.cs: generate the Profile property for the Global_asax class. 2007-03-09 Marek Habersack * AppCodeCompiler.cs: Add the GetProfile method to the ProfileCommon auto-generated class. * AppResourcesCompiler.cs: attempt to load the resource file earlier in the process, to gracefully handle empty files. * ThemeDirectoryCompiler.cs: make compiled themes depend on the .skin and .css files composing the theme. 2007-03-05 Marek Habersack * PageThemeCompiler.cs: Use correct theme path for AppRelativeTemplateSourceDirectory. Do not process builders of type CodeRenderBuilder. Make sure builder.ControlType is not null before depending on it. * ThemeDirectoryCompiler.cs: theme parser should be passed the virtual directory of the theme. 2007-03-03 Marek Habersack * PageCompiler.cs: Added support for setting the MaintainScrollPositionOnPostBack property if the corresponding page directive attribute is found. * Directive.cs: added the MaintainScrollPositionOnPostBack and LinePragmas directives. 2007-03-02 Marek Habersack * AppCodeCompiler.cs: Correctly process App_Code directories which have no compilable files in the top-level directory. Fixes bug #80998. Write preservation files for the App_Code assemblies. 2007-03-01 Marek Habersack * AspParser.cs: fix GetVerbatim for cases when the end is e.g. --> or --%> and the string matched is ---> or ---%> respectively. The new code always backs out to make sure the end is matched correctly. 2007-02-27 Marek Habersack * TemplateControlCompiler.cs: ParseExpression returns an object, don't assume any concrete type. Use the current culture when converting the expression to a string. * ConnectionStringsExpressionBuilder.cs: Implement support for expressions of the <%$ ConnectionStrings:StringName %> form 2007-02-19 Marek Habersack * ResourceExpressionBuilder.cs: Do not prepend the .Resources prefix here 2007-02-16 Marek Habersack * CachingCompiler.cs, BaseCompiler.cs: Make sure that no assembly is referenced twice by the compiler(s). * TemplateControlCompiler.cs: Fix the problem with cultures which have a comma as their decimal separator and font/whatever units. New code does not reparse the text representation of the unit on the runtime (e.g. 0.9em) but instead it constructs the property using the FontUnit/Unit constructors which take, respectively, Unit and double/unittype parameters. This avoids culture-specific parsing. Also fix converting from invariant strings in a culture-aware environment (e.g. in a page that uses Culture="auto") during the page parsing phase. 2007-02-12 Marek Habersack * PreservationFile.cs: Support preservation (assembly mapping) files (the ones with .compiled extension in the ASP.NET temporary directory). This one implements a loader/saver class. * AppResourcesCompiler.cs: support for assembly name mapping. * AppCodeCompiler.cs: support for assembly name mapping. 2007-02-08 Marek Habersack * TemplateControlCompiler.cs: Fix TemplateSourceDirectory. * AspComponentFoundry.cs: Avoid duplicate control registration exception. * ResourceExpressionBuilder.cs: Make sure all the global resources are looked up using the "Resources." prefix. * AppResourcesCompiler.cs: Make sure all the global resources are embedded with the "Resources." prefix. 2007-02-02 Marek Habersack * AspGenerator.cs: Move the cache insert code to a separate method, for use from other places. * AspComponentFoundry.cs: Register controls mentioned in web.config, but defer their compilation to the moment when they are actually requested. 2007-01-22 Marek Habersack * ThemeDirectoryCompiler.cs: Make sure the code works for empty themes. 2007-01-20 Miguel de Icaza * ClientBuildManager.cs: Remove unused variable (this could be a real problem, we never use the appPhysicalTargetDir) * AssemblyBuilder.cs: Remove unused field. * AppResourceFilesCollection.cs: Remove unused field. * TemplateControlCompiler.cs (GetExpressionFromString): Remove unused variable. * AppResourcesCompiler.cs: Remove unused variable. * AppSettingsExpressionBuilder.cs (GetAppSetting): remove unused parameter. * PageCompiler.cs: Put InternalCreatePageProperty inside the NET_2_0 block to eliminate warnings. 2007-01-20 Gert Driesen * BaseCompiler.cs: Fixed build on 1.0 profile. 2007-01-20 Marek Habersack * BaseCompiler.cs: If the control base type is in the root namespace, make sure global:: is prepended to it. * TemplateControlCompiler.cs: AutoHandlers is obsolete in 2.0, mark it as such in the generated code as well. * AppCodeCompiler.cs: Include debug information if configured in web.config. Fixes bug #80096. 2007-01-17 Marek Habersack * AppCodeCompiler.cs: Reference toplevel assemblies (at this stage App_GlobalResources) when compiling App_Code sources. * CachingCompiler.cs: Reference toplevel assemblies when compiling e.g. Global.asax * AppResourcesCompiler.cs: Close the streams properly. * AspGenerator.cs: Don't ignore thead/tbody anymore. 2007-01-15 Marek Habersack * WsdlBuildProvider.cs: New build provider for WSDL files. Compile only when System.Web.Services are present. * TemplateControlCompiler.cs: Forgotten in the previous commit - don't pass the current culture to GetLocalResourceObject, let the method figure it out on its own. 2007-01-05 Marek Habersack * AppResourceFilesCollection.cs: new class to keep and manage collection of resource files for the App_{Global,Local}Resources folders. * TemplateControlCompiler.cs: rely on HttpContext.GetLocalResourceObject to select the correct culture. * AppResourceFileInfo.cs: new class for keeping resource files information. * AppResourcesCompiler.cs: new implementation. 2006-12-20 Marek Habersack * AssemblyBuilder.cs: add an internal version of the AddCodeCompileUnit method. * AppCodeCompiler.cs: implement support for ProfileCommon generation from properties named in the element in Web.config. * PageCompiler.cs: create the Profile property in 2.0 code. 2006-12-12 Vladimir Krasnov * ThemeDirectoryCompiler.jvm.cs: fixed virtual path for themes 2006-12-10 Igor Zelmanovich * ThemeDirectoryCompiler.cs: refactoring. 2006-11-28 Marek Habersack * BuildManager.cs: Add an internal property to signal whether or not we have any resources from App_{Global,Local}Resources * AspGenerator.cs: Register controls from system.web/pages/controls collection before parsing. * AppResourcesCompiler.cs: Let the build process know if we have compiled any resources from App_{Global,Local}Resources 2006-11-27 Marek Habersack * CachingCompiler.cs: Automatically reference App_Code assemblies. * AppCodeCompiler.cs: Add ~/bin/*.dll to the referenced assemblies when compiling. 2006-11-25 Marek Habersack * AppResourcesCompiler.cs: small optimizations. * AppResourceFilesCompiler.cs: small optimizations. 2006-11-21 Gonzalo Paniagua Javier * WebServiceCompiler.cs: add the type to the cache after getting it from the compiled assembly. 2006-11-20 Marek Habersack * AppCodeCompiler.cs: Reference assemblies listed in system.web/compilation/assemblies. Don't create empty assemblies. 2006-11-19 Igor Zelmanovich * TemplateControlCompiler.cs: fixed: When <%# Bind(...) %>-expression is used more then once for same control The variable associated with this control is declared only once. 2006-11-18 Marek Habersack * AppResourceFilesCompiler.cs: Fixed an exception thrown when files with names like File.resources or File.resx are found in the resource directories. 2006-11-16 Marek Habersack * ForceCopyBuildProvider.cs: Added the build provider for copy-only files. * MasterPageBuildProvider.cs: Added the build provider for Master Pages. * IgnoreFileBuildProvider.cs: Make the class sealed. * AppCodeCompiler.cs: Fixed BuildProvider creation for a path. Now correctly uses the BuildProviderCollection to retrieve the appropriate builder and maps the physical input file path into application relative path when setting the virtual path of the build provider. 2006-11-13 Marek Habersack * AssemblyBuilder.cs: Added referenced assemblies support. Added a constructor with just the CodeDomProvider argument. CreateCodeFile now uses the code provider's file extension. Added internal method to add pre-generated source code files. Added a BuildAssembly overload that takes no virtual path as the parameter. BuildAssembly now uses an array of source files instead of compile units and also handles embedded resources and referenced assemblies. BuildAssembly deletes the temporary files if MONO_ASPNET_NODELET isn't set in the environment. * AppCodeCompiler.cs: Use the FileUtils methods for temporary file creation. Use the build providers collection to build unknown files in App_Code. Use AssemblyBuilder to compile the assembly. * AppResourceFilesCompiler.cs: Use the FileUtils methods for temporary file creation. * WebHandlerBuildProvider.cs: Added the BuildProviderAppliesTo attribute. * UserControlBuildProvider.cs: Added the BuildProviderAppliesTo attribute. * PageBuildProvider.cs: Added the BuildProviderAppliesTo attribute. * WebServiceBuildProvider.cs: Added the BuildProviderAppliesTo attribute. * IgnoreFileBuildProvider.cs: Added the BuildProviderAppliesTo attribute. 2006-11-08 Marek Habersack * BuildProvider.cs: Implemented the GetCustomString method. Removed the necessity to retrieve the CompilationSection twice when GetDefaultCompilerType is called. * AppResourcesCompiler.cs: Added resource compiler results handling. * AppCodeCompiler.cs: The App_Code compiler classes * BuildManager.cs: Implement the CodeAssemblies property. Added an internal TopLevelTypes property to be used in the custom GetType methods. Implemented the GetCompiledCustomString method. Implemented the GetType method overloads. Implemented the GetVirtualPathDependencies method. * BaseCompiler.cs: Reference the assemblies from App_Code, if any 2006-10-18 Marek Habersack * TemplateControlCompiler.cs: add support for resource expressions in tag attributes. * ResourceExpressionBuilder.cs: add support for resource expressions in tag attributes. * BaseCompiler.cs: add global/local resource assemblies to compilation references, if present. * AppResourcesCompiler.cs: global/local resources compiler. * AppResourceFilesCompiler.cs: compiler of resource files. 2006-10-03 Igor Zelmanovich * TemplateControlCompiler.cs: fixed: Bind functions (Data-Binding Syntax). At run time, the Bind method calls the Eval method, if there is DataItem != null to bind to. If there is DataItem == null (like InsertItemTemplate in FormView) Bind method don't raise exception and works properly to extract data from bounded controls on postback. 2006-09-20 Gonzalo Paniagua Javier * AspGenerator.cs: if we are tracking non-server tags for well-formedness, handle tags that do not need to be closed (br, img,...) Fixes bug #79437. 2006-09-18 Gonzalo Paniagua Javier * PageCompiler.cs: support the EnableEventValidation attribute. 2006-09-08 Gonzalo Paniagua Javier * AspGenerator.cs: after parsing an include file, don't error out if we still have opened tags unless this was the last file to parse. Fixes bug #79318. 2006-09-05 Konstantin Triger * ParseException.cs: Ensure the source file stream is closed. 2006-08-25 Kornél Pál * AppSettingsExpressionBuilder.cs: Use assembly name constants. * ConnectionStringsExpressionBuilder.cs: Use name reference constants. * ResourceExpressionBuilder.cs: Use assembly name constants. 2006-08-20 Vladimir Krasnov * ThemeDirectoryCompiler.jvm.cs: implemented GetCompiledInstance 2006-08-10 Gonzalo Paniagua Javier * ClientBuildManager.cs: handle domain shutdown and unload. Implemented some properties. Commented. 2006-08-10 Andrew Skiba * ThemeDirectoryCompiler.cs: render css path as a virtual path. 2006-08-08 Vladimir Krasnov * added ThemeDirectoryCompiler.jvm.cs 2006-07-28 Gonzalo Paniagua Javier * PageThemeCompiler.cs: Don't generate a 'Items.Clear ()' call if the property Items does not exist. Patch by Marek Habersack that fixes bug #78971. 2006-07-28 Gonzalo Paniagua Javier * TemplateControlCompiler.cs: support assigning nullable types. Patch by Marek Habersack that fixes bug #78970. 2006-07-13 Gonzalo Paniagua Javier * TemplateControlCompiler.cs: make password work again. 2006-06-21 Juraj Skripsky * AspTokenizer.cs (ReadAttValue), AspParser.cs (GetAttributes): MS.NET handles nested quotes differently for server controls and for "normal" controls. Add a property "AlternatingQuotes" to the tokenizer and let the parser decide whether it is well-formed or not. 2006-06-20 Andrew Skiba * PageThemeCompiler.cs, TemplateControlCompiler.cs: take care of UrlPropertyAttribute. 2006-06-18 Andrew Skiba * TemplateControlCompiler.cs: check IsWritablePropertyOrField before generating code for assignment statement and DataBind event. 2006-06-15 Juraj Skripsky * AspTokenizer.cs (ReadAttValue), AspParser.cs (GetAttributes): Don't allow an attribute value to contain the same quote characters as the ones used for delimiting the value itself. Add a token NOTWELLFORMED to signal that case to AspParser. Fixes bug #78643. 2006-06-08 Konstantin Triger * ThemeDirectoryCompiler.cs: use physical path instead of virtual path. 2006-04-24 Andrew Skiba * ThemeDirectoryCompiler.cs: use UrlUtils.Combine to combine pathes 2006-04-23 Andrew Skiba * PageThemeCompiler.cs: initialize __linkedStyleSheets field with the array of style sheets from the parser * ThemeDirectoryCompiler.cs: scan *.css files in theme directory and put them in LinkedStyleSheets of PageThemeParser 2006-04-20 Chris Toshok * BaseCompiler.cs: for 2.0, emit the correct namespace and class names in the case where you use "NS.ClassName" in the Inherits attribute. Fixes bug #78135. 2006-04-20 Gonzalo Paniagua Javier * CachingCompiler.cs: no need to play the Wait/PulseAll game, as we already acquired the lock even when we might have not created the 'key' to the compilation ticket. 2006-04-16 Andrew Skiba * ThemeDirectoryCompiler.cs: add to the directory parser all the assemblies found by PageThemeFileParsers 2006-04-12 Lluis Sanchez Gual * TemplateControlCompiler.cs: Properly read all content of string properties. 2006-04-11 Andrew Skiba * TemplateControlCompiler.cs : fix for partial parsers 2006-04-11 Andrew Skiba * ThemeDirectoryCompiler.cs : map the virtual path to the physical path 2006-04-08 Miguel de Icaza * TemplateControlCompiler.cs: An attempt to fix the regression introduced in r58505 (a bug fix for 77762). This was reported in the mailing list with a batch of new 2.0 failures. We really need a test suite in NUnit to check on ASP.NET aspx changes. 2006-03-27 Robert Jordan * CachingCompiler.cs: change the compilation locking scheme from "one mcs per process" to "one mcs per file". 2006-03-24 Gonzalo Paniagua Javier * System.Web.Compilation/TemplateControlCompiler.cs: handle the new StringPropertyBuilder. 2006-03-24 Chris Toshok * BaseCompiler.cs (GetCompiledType): fall back to CodeDomProvider if system.web/compilation doesn't list a compiler for our language. 2006-03-13 Chris Toshok * TemplateControlCompiler.cs (InitMethod): when generating the call to ApplyStyleSheetSkin, don't just blindly pass "this" as the argument to it. Only do that if the class we're compiling is actually a subclass of Page. If it's not, pass this.Page. 2006-03-07 Chris Toshok * AspGenerator.cs: refactor the parsing code so that we can initiate parsing from outside this class. * PageCompiler.cs (PrependStatementsToFrameworkInitialize): new method, add our StyleSheetTheme assignment here. (AppendStatementsToFrameworkInitialize): rename AddStatements* to this. * TemplateControlCompiler.cs (EnsureID): make protected. (CreateAssignStatementsFromAttributes): same (AddChildCall): same. (CreateControlTree): same. (CreateFrameworkInitializeMethod): change "AddStatementsToFrameworkInitialize" to "AppendStatementsToFrameworkInitialize", and add call to "PrependStatementsToFrameworkInitialize" before the generation of "base.FrameworkInitialize()." * PageThemeCompiler.cs (CreateControlSkinMethod): remove spew. 2006-03-07 Chris Toshok * ThemeDirectoryCompiler.cs: new file. * PageThemeCompiler.cs: new file. 2006-03-07 Chris Toshok * BaseCompiler.cs: fix typo in "initialize" in multiple places. (Init): move the CreateMethods call here. 2006-03-02 Chris Toshok * TemplateControlCompiler.cs (InitMethod): emit an assignment for SkinID just after the creation of our object, and right after that call "_ctrl.ApplyStyleSheetSkin (page)". (CreateAssignStatementsFromAttributes): split out the majority of this code to CreateAssignStatementFromAttribute, and change this method to simply a loop over the attribute keys. In the 2.0 case, skip the SkinID property, since that's handled explicitly in InitMethod. * PageCompiler.cs (AddStatementsToInitMethod): emit assignments for Theme and StyleSheetTheme. 2006-02-23 Chris Toshok * TemplateControlCompiler.cs (AddContentTemplateInvocation): track change from ContentControlBuilderInternal to ContentBuilderInternal. (AddCodeRender): same. 2006-02-16 Gonzalo Paniagua Javier * AssemblyBuilder.cs: * BuildManager.cs: compile the assembly from AssemblyBuilder and use GetGeneratedType() on the BuildProvider instead of loading the assembly and trying a wild guess at the type name. 2006-02-14 Gonzalo Paniagua Javier * GlobalAsaxCompiler.cs: * PageCompiler.cs: * TemplateControlCompiler.cs: CreateMethods is now internal. * WebServiceBuildProvider.cs: * PageBuildProvider.cs: * UserControlBuildProvider.cs: * WebHandlerBuildProvider.cs: new build providers. * BuildProvider.cs: add assemblies. * BaseCompiler.cs: expose the provider and the compile unit through properties. 2006-02-10 Gonzalo Paniagua Javier * CompilerType.cs: implemented. * AssemblyBuilder.cs: implemented most of it. * WebServiceCompiler.cs: * CachingCompiler.cs: update 2.0 compiler instance creation code. * ClientBuildManager.cs: implemented some of its methods. Not yet ready. * BuildManager.cs: the more interesting methods are implemented now. * BaseCompiler.cs: delete the temporary files in case of error. * BuildProvider.cs: implemented the Get*Compiler* protected methods. 2006-02-07 Chris Toshok * TemplateControlCompiler.cs (AddParsedSubObjectStmt): append the calls to AddParsedSubObject to a special statement collection -- builder.flushOutputStatements -- not to builder.method.Statements. (InitMethod): initially, set flushOutputStatements to method.Statements. If we're dealing with a ContentPlaceHolder, set flushOutputStatements to be the else block of a conditional we create. This causes the compiled control to fall back to the ContentPlaceHolder's child controls in case there's no corresponding Content template. (AddChildCall): use methodStatements instead of method.Statements. (CreateControlTree): same. * PageCompiler.cs (CreatePropertyAssign): factor out the string,string implementation and add one that also takes a CodeExpression; make the string,string implementation call the three arg one with thisRef. (AddStatementsToInitMethod): make use of the 3-arg form of CreatePropertyAssign to reduce code. Also, add support for setting the page's Title from the parser's Title. 2006-02-07 Chris Toshok * UserControlCompiler.cs (AddStatementsToInitMethod): emit code to assign __ctrl.MasterPageFile to our master page, if we have one. * PageCompiler.cs (CreateContructor): remove the MasterPageFile assignment from here. (AddStatementsToInitMethod): and move it here. * TemplateControlCompiler.cs (InitMethod): in the case where builder is a RootBuilder (we're building the __BuildControlTree method), call a virtual method so that subclasses can add their own statements to the method (used by both Page and MasterPage); Also, in the RootBuilder case, the argument should be the parser.ClassName type (the class we're building); lastly, expand the ContentPlaceHolder logic to include all the ContentTemplates/InstantiateIn magic. (AddStatementsToInitMethod): empty virtual method. (AddContentTemplateInvocation): ContentControlBuilder -> ContentControlBuilderInternal. (CreateControlTree): same. (CallBaseFrameworkInitialize): new function, create call to base.FrameworkInitialize. (CreateFrameworkInitializeMethod): call CallBaseFrameworkIniitialize. 2006-02-06 Gonzalo Paniagua Javier * IgnoreFileBuildProvider.cs: it's not public. * BuildProvider.cs: mostly implemented. 2006-02-01 Chris Toshok * WebServiceCompiler.cs: CONFIGURATION_2_0 => NET_2_0, and use GetSection instead of GetWebApplicationSection. * CachingCompiler.cs: same. * AspGenerator.cs: same. * BaseCompiler.cs: same. 2006-01-23 Gonzalo Paniagua Javier * AspGenerator.cs: ignore 'thead'. Fixes bug #77326. 2006-01-22 Chris Toshok * IgnoreFileBuildProvider.cs: build provider which does nothing. 2006-01-22 Chris Toshok * AspComponentFoundry.cs (.ctor): use a 2.0 friendly form of the Hashtable ctor to silence a couple of warning. (CompoundFoundry.ctor): same * Directive.cs (InitHash): use a 2.0 friendly form of the Hashtable ctor to silence a couple of warning. * TagAttributes.cs (MakeHash): use a 2.0 friendly form of the Hashtable ctor to silence a warning. (GetDictionary): same. 2006-01-22 Chris Toshok * AppSettingsExpressionBuilder.cs: implement this, patterning it after an example on msdn. Also, enable the ExpressionEditor attribute, but use the string rather than the Type overload so we won't have yet another circular dep. * ConnectionStringsExpressionBuilder.cs: partial implementation. Same deal with the ExpressionEditor attribute. * ResourceExpressionBuilder.cs: same deal with the ExpressionEditor attribute. 2006-01-20 Chris Toshok * ResourceExpressionBuilder.cs (ParseExpression): implement. * ResourceExpressionFields.cs: implement. 2006-01-20 Chris Toshok * ClientBuildManagerParameter.cs: implement. * ClientBuildManagerCallback.cs: this class contains an empty default implementation. 2006-01-10 Gonzalo Paniagua Javier * AspGenerator.cs: add support for 'src' in