Mark tests as not working under TARGET_JVM
[mono.git] / mcs / class / System.Web / System.Web.Compilation / ChangeLog
1 2007-03-14  Marek Habersack  <mhabersack@novell.com>
2
3         * TemplateControlCompiler.cs: hadle situations when there exist a
4         control in the page with id matching the name of a field/property
5         in the parent class. In this case we use 'protected new' to
6         override the parent.
7
8 2007-03-13  Marek Habersack  <mhabersack@novell.com>
9
10         * AspParser.cs: fix an off-by-one parsing bug with server-side
11         includes.
12
13         * PageThemeCompiler.cs: let property builders through, stop the
14         builders that have no control type. Fixes bug #81092
15
16         * PageCompiler.cs: interfaces are to be implemented by the parent
17         partial class, not the generated one.
18
19         * AppResourceFilesCollection.cs: added separate constructor for
20         local resources handling.
21
22         * TemplateControlCompiler.cs: request the local resource object
23         with proper virtual path.
24         Put field declarations for controls in the partial class.
25         Make sure builders are in valid state before trying to use them.
26
27         * BaseCompiler.cs: added code to assing AppRelativeVirtualPath
28         property in the page/control constructor.
29         Change the generated code model for pages/controls to comply with
30         the way MS.NET does (partial class contains only two properties
31         plus declarations of all the controls, the actual control/page
32         class inherits from the partial class). Fixes bug #81001.
33
34         * AppResourcesCompiler.cs: does not require specifying manually
35         whether it's a global or local resource compiler anymore. New
36         constructors take care of that.
37         Changed to compile local resources on demand, when a control/page
38         is parsed.
39
40 2007-03-12  Marek Habersack  <mhabersack@novell.com>
41
42         * AspParser.cs: revert r73587 as it breaks more than it fixes.
43
44         * AspComponentFoundry.cs: try to register foundries from App_Code
45         assemblies if tag prefix and its namespace are defined. Fixes bug
46         #78797.
47
48         * BuildManager.cs, BaseCompiler.cs: CodeAssemblies is a collection
49         of Assembly instances, not strings.
50
51         * CachingCompiler.cs: make sure items in the CodeAssemblies and
52         TopLevelAssemblies are really instances of the Assembly class
53         before trying to use them.
54         CodeAssemblies is a collection of Assembly instances, not
55         strings.
56
57         * AppCodeCompiler.cs: on MS.NET CodeAssemblies is a collection of
58         assemblies, not paths to assemblies.
59
60 2007-03-10  Marek Habersack  <mhabersack@novell.com>
61
62         * PageCompiler.cs, BaseCompiler.cs: refactoring: moved the
63         CreateProfileProperty and InternalCreatePageProperty to
64         BaseCompiler from PageCompiler.
65
66         * GlobalAsaxCompiler.cs: generate the Profile property for the
67         Global_asax class.
68
69 2007-03-09  Marek Habersack  <mhabersack@novell.com>
70
71         * AppCodeCompiler.cs: Add the GetProfile method to the
72         ProfileCommon auto-generated class.
73
74         * AppResourcesCompiler.cs: attempt to load the resource file
75         earlier in the process, to gracefully handle empty files.
76
77         * ThemeDirectoryCompiler.cs: make compiled themes depend on the
78         .skin and .css files composing the theme.
79
80 2007-03-05  Marek Habersack  <mhabersack@novell.com>
81
82         * PageThemeCompiler.cs: Use correct theme path for
83         AppRelativeTemplateSourceDirectory.
84         Do not process builders of type CodeRenderBuilder.
85         Make sure builder.ControlType is not null before depending on it.
86
87         * ThemeDirectoryCompiler.cs: theme parser should be passed the
88         virtual directory of the theme.
89
90 2007-03-03  Marek Habersack  <mhabersack@novell.com>
91
92         * PageCompiler.cs: Added support for setting the
93         MaintainScrollPositionOnPostBack property if the corresponding
94         page directive attribute is found.
95
96         * Directive.cs: added the MaintainScrollPositionOnPostBack and
97         LinePragmas directives.
98
99 2007-03-02  Marek Habersack  <grendello@gmail.com>
100
101         * AppCodeCompiler.cs: Correctly process App_Code directories which
102         have no compilable files in the top-level directory. Fixes bug
103         #80998.
104         Write preservation files for the App_Code assemblies.
105
106 2007-03-01  Marek Habersack  <grendello@gmail.com>
107
108         * AspParser.cs: fix GetVerbatim for cases when the end is
109         e.g. --> or --%> and the string matched is ---> or ---%>
110         respectively. The new code always backs out to make sure the end is
111         matched correctly.
112
113 2007-02-27  Marek Habersack  <grendello@gmail.com>
114
115         * TemplateControlCompiler.cs: ParseExpression returns an object,
116         don't assume any concrete type.
117         Use the current culture when converting the expression to a
118         string.
119
120         * ConnectionStringsExpressionBuilder.cs: Implement support for
121         expressions of the <%$ ConnectionStrings:StringName %> form
122
123 2007-02-19  Marek Habersack  <grendello@gmail.com>
124
125         * ResourceExpressionBuilder.cs: Do not prepend the .Resources prefix here
126
127 2007-02-16  Marek Habersack  <grendello@gmail.com>
128
129         * CachingCompiler.cs, BaseCompiler.cs: Make sure that no assembly
130         is referenced twice by the compiler(s).
131
132         * TemplateControlCompiler.cs: Fix the problem with cultures which
133         have a comma as their decimal separator and font/whatever
134         units. New code does not reparse the text representation of the
135         unit on the runtime (e.g. 0.9em) but instead it constructs the
136         property using the FontUnit/Unit constructors which take,
137         respectively, Unit and double/unittype parameters. This avoids
138         culture-specific parsing.
139         Also fix converting from invariant strings in a culture-aware
140         environment (e.g. in a page that uses Culture="auto") during the
141         page parsing phase.
142
143 2007-02-12  Marek Habersack  <grendello@gmail.com>
144
145         * PreservationFile.cs: Support preservation (assembly mapping)
146         files (the ones with .compiled extension in the ASP.NET temporary
147         directory). This one implements a loader/saver class.
148
149         * AppResourcesCompiler.cs: support for assembly name mapping.
150
151         * AppCodeCompiler.cs: support for assembly name mapping.
152
153 2007-02-08  Marek Habersack  <grendello@gmail.com>
154
155         * TemplateControlCompiler.cs: Fix TemplateSourceDirectory.
156
157         * AspComponentFoundry.cs: Avoid duplicate control registration
158         exception.
159
160         * ResourceExpressionBuilder.cs: Make sure all the global resources
161         are looked up using the "Resources." prefix.
162
163         * AppResourcesCompiler.cs: Make sure all the global resources are
164         embedded with the "Resources." prefix.
165
166 2007-02-02  Marek Habersack  <grendello@gmail.com>
167
168         * AspGenerator.cs: Move the cache insert code to a separate method, for
169         use from other places.
170
171         * AspComponentFoundry.cs: Register controls mentioned in web.config, but
172         defer their compilation to the moment when they are actually requested.
173
174 2007-01-22  Marek Habersack  <grendello@gmail.com>
175
176         * ThemeDirectoryCompiler.cs: Make sure the code works for empty themes.
177
178 2007-01-20  Miguel de Icaza  <miguel@novell.com>
179
180         * ClientBuildManager.cs: Remove unused variable (this could be a
181         real problem, we never use the appPhysicalTargetDir) 
182
183         * AssemblyBuilder.cs: Remove unused field.
184
185         * AppResourceFilesCollection.cs: Remove unused field.
186
187         * TemplateControlCompiler.cs (GetExpressionFromString): Remove
188         unused variable. 
189
190         * AppResourcesCompiler.cs: Remove unused variable.
191
192         * AppSettingsExpressionBuilder.cs (GetAppSetting): remove unused
193         parameter. 
194
195         * PageCompiler.cs: Put InternalCreatePageProperty inside the
196         NET_2_0 block to eliminate warnings.
197
198 2007-01-20  Gert Driesen  <drieseng@users.sourceforge.net>
199
200         * BaseCompiler.cs: Fixed build on 1.0 profile.
201
202 2007-01-20  Marek Habersack  <grendello@gmail.com>
203
204         * BaseCompiler.cs: If the control base type is in the root
205         namespace, make sure global:: is prepended to it.
206
207         * TemplateControlCompiler.cs: AutoHandlers is obsolete in 2.0,
208         mark it as such in the generated code as well.  
209
210         * AppCodeCompiler.cs: Include debug information if configured in
211         web.config. Fixes bug #80096.
212
213 2007-01-17  Marek Habersack  <grendello@gmail.com>
214
215         * AppCodeCompiler.cs: Reference toplevel assemblies (at this stage
216         App_GlobalResources) when compiling App_Code sources.
217
218         * CachingCompiler.cs: Reference toplevel assemblies when compiling
219         e.g. Global.asax
220
221         * AppResourcesCompiler.cs: Close the streams properly.
222
223         * AspGenerator.cs: Don't ignore thead/tbody anymore.
224
225 2007-01-15  Marek Habersack  <grendello@gmail.com>
226
227         * WsdlBuildProvider.cs: New build provider for WSDL files.
228         Compile only when System.Web.Services are present.
229
230         * TemplateControlCompiler.cs: Forgotten in the previous commit -
231         don't pass the current culture to GetLocalResourceObject, let the
232         method figure it out on its own.
233
234 2007-01-05  Marek Habersack  <grendello@gmail.com>
235
236         * AppResourceFilesCollection.cs: new class to keep and manage
237         collection of resource files for the App_{Global,Local}Resources
238         folders.
239
240         * TemplateControlCompiler.cs: rely on
241         HttpContext.GetLocalResourceObject to select the correct culture.
242
243         * AppResourceFileInfo.cs: new class for keeping resource files
244         information.
245
246         * AppResourcesCompiler.cs: new implementation.
247
248 2006-12-20  Marek Habersack  <grendello@gmail.com>
249
250         * AssemblyBuilder.cs: add an internal version of the
251         AddCodeCompileUnit method.
252
253         * AppCodeCompiler.cs: implement support for ProfileCommon
254         generation from properties named in the <profile> element in
255         Web.config.
256
257         * PageCompiler.cs: create the Profile property in 2.0 code.
258
259 2006-12-12  Vladimir Krasnov  <vladimirk@mainsoft.com>
260
261         * ThemeDirectoryCompiler.jvm.cs: fixed virtual path for themes
262
263 2006-12-10 Igor Zelmanovich <igorz@mainsoft.com>
264
265         * ThemeDirectoryCompiler.cs: refactoring.
266
267 2006-11-28  Marek Habersack  <grendello@gmail.com>
268
269         * BuildManager.cs: Add an internal property to signal whether or
270         not we have any resources from App_{Global,Local}Resources
271
272         * AspGenerator.cs: Register controls from
273         system.web/pages/controls collection before parsing.
274
275         * AppResourcesCompiler.cs: Let the build process know if we have
276         compiled any resources from App_{Global,Local}Resources
277
278 2006-11-27  Marek Habersack  <grendello@gmail.com>
279
280         * CachingCompiler.cs: Automatically reference App_Code
281         assemblies.
282
283         * AppCodeCompiler.cs: Add ~/bin/*.dll to the referenced assemblies
284         when compiling.
285
286 2006-11-25  Marek Habersack  <grendello@gmail.com>
287
288         * AppResourcesCompiler.cs: small optimizations.
289
290         * AppResourceFilesCompiler.cs: small optimizations.
291
292 2006-11-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
293
294         * WebServiceCompiler.cs: add the type to the cache after getting it
295         from the compiled assembly.
296
297 2006-11-20  Marek Habersack  <grendello@gmail.com>
298
299         * AppCodeCompiler.cs: Reference assemblies listed in
300         system.web/compilation/assemblies.
301         Don't create empty assemblies.
302
303 2006-11-19 Igor Zelmanovich <igorz@mainsoft.com>
304
305         * TemplateControlCompiler.cs: fixed:
306         When <%# Bind(...) %>-expression is used more then once for same control
307         The variable associated with this control is declared only once.
308
309 2006-11-18  Marek Habersack  <grendello@gmail.com>
310
311         * AppResourceFilesCompiler.cs: Fixed an exception thrown when
312         files with names like File.resources or File.resx are found in the
313         resource directories.
314
315 2006-11-16  Marek Habersack  <grendello@gmail.com>
316
317         * ForceCopyBuildProvider.cs: Added the build provider for
318         copy-only files.
319
320         * MasterPageBuildProvider.cs: Added the build provider for Master
321         Pages.
322
323         * IgnoreFileBuildProvider.cs: Make the class sealed.
324
325         * AppCodeCompiler.cs: Fixed BuildProvider creation for a path. Now
326         correctly uses the BuildProviderCollection to retrieve the
327         appropriate builder and maps the physical input file path into
328         application relative path when setting the virtual path of the
329         build provider.
330
331 2006-11-13  Marek Habersack  <grendello@gmail.com>
332
333         * AssemblyBuilder.cs: Added referenced assemblies support. Added a
334         constructor with just the CodeDomProvider argument. CreateCodeFile
335         now uses the code provider's file extension. Added internal method
336         to add pre-generated source code files. Added a BuildAssembly
337         overload that takes no virtual path as  the
338         parameter. BuildAssembly now uses an array of source files instead
339         of compile units and also handles embedded resources and
340         referenced assemblies. BuildAssembly deletes the temporary files
341         if MONO_ASPNET_NODELET isn't set in the environment.
342
343         * AppCodeCompiler.cs: Use the FileUtils methods for temporary file
344         creation. Use the build providers collection to build unknown
345         files in App_Code. Use AssemblyBuilder to compile the assembly.
346
347         * AppResourceFilesCompiler.cs: Use the FileUtils methods for
348         temporary file creation.
349
350         * WebHandlerBuildProvider.cs: Added the BuildProviderAppliesTo
351         attribute.
352
353         * UserControlBuildProvider.cs: Added the BuildProviderAppliesTo
354         attribute.
355
356         * PageBuildProvider.cs: Added the BuildProviderAppliesTo
357         attribute.
358
359         * WebServiceBuildProvider.cs: Added the BuildProviderAppliesTo
360         attribute.
361
362         * IgnoreFileBuildProvider.cs: Added the BuildProviderAppliesTo
363         attribute.
364
365 2006-11-08  Marek Habersack  <grendello@gmail.com>
366
367         * BuildProvider.cs: Implemented the GetCustomString
368         method. Removed the necessity to retrieve the CompilationSection
369         twice when GetDefaultCompilerType is called.
370
371         * AppResourcesCompiler.cs: Added resource compiler results
372         handling.
373
374         * AppCodeCompiler.cs: The App_Code compiler classes
375
376         * BuildManager.cs: Implement the CodeAssemblies property.
377         Added an internal TopLevelTypes property to be used in the custom
378         GetType methods. Implemented the GetCompiledCustomString method.
379         Implemented the GetType method overloads. Implemented the
380         GetVirtualPathDependencies method.
381
382         * BaseCompiler.cs: Reference the assemblies from App_Code, if any
383
384 2006-10-18  Marek Habersack  <grendello@gmail.com>
385
386         * TemplateControlCompiler.cs: add support for resource
387         expressions in tag attributes.
388
389         * ResourceExpressionBuilder.cs: add support for resource
390         expressions in tag attributes.
391
392         * BaseCompiler.cs: add global/local resource assemblies to
393         compilation references, if present.
394
395         * AppResourcesCompiler.cs: global/local resources compiler.
396
397         * AppResourceFilesCompiler.cs: compiler of resource files.
398
399 2006-10-03 Igor Zelmanovich <igorz@mainsoft.com>
400
401         * TemplateControlCompiler.cs: fixed: Bind functions (Data-Binding Syntax).
402         At run time, the Bind method calls the Eval method, if there is DataItem
403         != null to bind to.
404         If there is DataItem == null (like InsertItemTemplate in FormView) Bind
405         method don't raise exception and works properly to extract data from
406         bounded controls on postback.
407                 
408 2006-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
409
410         * AspGenerator.cs: if we are tracking non-server tags for
411         well-formedness, handle tags that do not need to be closed (br, img,...)
412         Fixes bug #79437.
413
414 2006-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
415
416         * PageCompiler.cs: support the EnableEventValidation attribute.
417
418 2006-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
419
420         * AspGenerator.cs: after parsing an include file, don't error out if we
421         still have opened tags unless this was the last file to parse. Fixes
422         bug #79318.
423
424 2006-09-05  Konstantin Triger <kostat@mainsoft.com>
425
426         * ParseException.cs: Ensure the source file stream is closed.
427
428 2006-08-25  Kornél Pál  <kornelpal@gmail.com>
429
430         * AppSettingsExpressionBuilder.cs: Use assembly name constants.
431         * ConnectionStringsExpressionBuilder.cs: Use name reference
432           constants.
433         * ResourceExpressionBuilder.cs: Use assembly name constants.
434
435 2006-08-20  Vladimir Krasnov  <vladimirk@mainsoft.com>
436
437         * ThemeDirectoryCompiler.jvm.cs: implemented GetCompiledInstance
438
439 2006-08-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
440
441         * ClientBuildManager.cs: handle domain shutdown and unload.
442         Implemented some properties. Commented.
443
444 2006-08-10  Andrew Skiba  <andrews@mainsoft.com>
445
446         * ThemeDirectoryCompiler.cs: render css path as a virtual path.
447
448 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
449
450         * added ThemeDirectoryCompiler.jvm.cs
451
452 2006-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
453
454         * PageThemeCompiler.cs: Don't generate a 'Items.Clear ()' call if
455         the property Items does not exist. Patch by Marek Habersack that fixes
456         bug #78971.
457
458 2006-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
459
460         * TemplateControlCompiler.cs: support assigning nullable types.
461         Patch by Marek Habersack that fixes bug #78970.
462
463 2006-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
464
465         * TemplateControlCompiler.cs: make password work again.
466
467 2006-06-21 Juraj Skripsky <js@hotfeet.ch>
468
469         * AspTokenizer.cs (ReadAttValue), AspParser.cs (GetAttributes):
470         MS.NET handles nested quotes differently for server controls and
471         for "normal" controls. Add a property "AlternatingQuotes" to the
472         tokenizer and let the parser decide whether it is well-formed or not.
473
474 2006-06-20 Andrew Skiba <andrews@mainsoft.com>
475
476         * PageThemeCompiler.cs, TemplateControlCompiler.cs: take care of
477         UrlPropertyAttribute.
478
479 2006-06-18 Andrew Skiba <andrews@mainsoft.com>
480
481         * TemplateControlCompiler.cs: check IsWritablePropertyOrField before
482         generating code for assignment statement and DataBind event.
483         
484 2006-06-15 Juraj Skripsky <js@hotfeet.ch>
485
486         * AspTokenizer.cs (ReadAttValue), AspParser.cs (GetAttributes):
487         Don't allow an attribute value to contain the same quote characters
488         as the ones used for delimiting the value itself. Add a token
489         NOTWELLFORMED to signal that case to AspParser. Fixes bug #78643.
490
491 2006-06-08      Konstantin Triger <kostat@mainsoft.com>
492
493         * ThemeDirectoryCompiler.cs: use physical path instead of virtual path.
494
495 2006-04-24  Andrew Skiba  <andrews@mainsoft.com>
496
497         * ThemeDirectoryCompiler.cs: use UrlUtils.Combine to combine pathes
498
499 2006-04-23  Andrew Skiba  <andrews@mainsoft.com>
500
501         * PageThemeCompiler.cs: initialize __linkedStyleSheets field with the
502         array of style sheets from the parser
503         * ThemeDirectoryCompiler.cs: scan *.css files in theme directory and
504         put them in LinkedStyleSheets of PageThemeParser
505
506 2006-04-20  Chris Toshok  <toshok@ximian.com>
507
508         * BaseCompiler.cs: for 2.0, emit the correct namespace and class
509         names in the case where you use "NS.ClassName" in the Inherits
510         attribute.  Fixes bug #78135.
511
512 2006-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
513
514         * CachingCompiler.cs: no need to play the Wait/PulseAll game, as we
515         already acquired the lock even when we might have not created the 'key'
516         to the compilation ticket.
517
518 2006-04-16  Andrew Skiba <andrews@mainsoft.com>
519
520         * ThemeDirectoryCompiler.cs: add to the directory parser all the
521         assemblies found by PageThemeFileParsers
522
523 2006-04-12  Lluis Sanchez Gual <lluis@novell.com>
524
525         * TemplateControlCompiler.cs: Properly read all content of
526         string properties.
527
528 2006-04-11  Andrew Skiba <andrews@mainsoft.com>
529
530         * TemplateControlCompiler.cs : fix for partial parsers
531
532 2006-04-11  Andrew Skiba <andrews@mainsoft.com>
533
534         * ThemeDirectoryCompiler.cs : map the virtual path to the physical
535         path
536
537 2006-04-08  Miguel de Icaza  <miguel@novell.com>
538
539         * TemplateControlCompiler.cs: An attempt to fix the regression
540         introduced in r58505 (a bug fix for 77762).   This was reported in
541         the mailing list with a batch of new 2.0 failures.
542
543         We really need a test suite in NUnit to check on ASP.NET aspx
544         changes.
545
546 2006-03-27  Robert Jordan  <robertj@gmx.net>
547
548         * CachingCompiler.cs:  change the compilation locking scheme
549         from "one mcs per process" to "one mcs per file".
550
551 2006-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
552
553         * System.Web.Compilation/TemplateControlCompiler.cs: handle the new
554         StringPropertyBuilder.
555
556 2006-03-24  Chris Toshok  <toshok@ximian.com>
557
558         * BaseCompiler.cs (GetCompiledType): fall back to CodeDomProvider
559         if system.web/compilation doesn't list a compiler for our
560         language.
561
562 2006-03-13  Chris Toshok  <toshok@ximian.com>
563
564         * TemplateControlCompiler.cs (InitMethod): when generating the
565         call to ApplyStyleSheetSkin, don't just blindly pass "this" as the
566         argument to it.  Only do that if the class we're compiling is
567         actually a subclass of Page.  If it's not, pass this.Page.
568
569 2006-03-07  Chris Toshok  <toshok@ximian.com>
570
571         * AspGenerator.cs: refactor the parsing code so that we can
572         initiate parsing from outside this class.
573
574         * PageCompiler.cs (PrependStatementsToFrameworkInitialize): new
575         method, add our StyleSheetTheme assignment here.
576         (AppendStatementsToFrameworkInitialize): rename AddStatements* to
577         this.
578
579         * TemplateControlCompiler.cs (EnsureID): make protected.
580         (CreateAssignStatementsFromAttributes): same
581         (AddChildCall): same.
582         (CreateControlTree): same.
583         (CreateFrameworkInitializeMethod): change
584         "AddStatementsToFrameworkInitialize" to
585         "AppendStatementsToFrameworkInitialize", and add call to
586         "PrependStatementsToFrameworkInitialize" before the generation of
587         "base.FrameworkInitialize()."
588
589         * PageThemeCompiler.cs (CreateControlSkinMethod): remove spew.
590
591 2006-03-07  Chris Toshok  <toshok@ximian.com>
592
593         * ThemeDirectoryCompiler.cs: new file.
594
595         * PageThemeCompiler.cs: new file.
596
597 2006-03-07  Chris Toshok  <toshok@ximian.com>
598
599         * BaseCompiler.cs: fix typo in "initialize" in multiple places.
600         (Init): move the CreateMethods call here.
601
602 2006-03-02  Chris Toshok  <toshok@ximian.com>
603
604         * TemplateControlCompiler.cs (InitMethod): emit an assignment for
605         SkinID just after the creation of our object, and right after that
606         call "_ctrl.ApplyStyleSheetSkin (page)".
607         (CreateAssignStatementsFromAttributes): split out the majority of
608         this code to CreateAssignStatementFromAttribute, and change this
609         method to simply a loop over the attribute keys.  In the 2.0 case,
610         skip the SkinID property, since that's handled explicitly in
611         InitMethod.
612
613         * PageCompiler.cs (AddStatementsToInitMethod): emit assignments
614         for Theme and StyleSheetTheme.
615
616 2006-02-23  Chris Toshok  <toshok@ximian.com>
617
618         * TemplateControlCompiler.cs (AddContentTemplateInvocation): track
619         change from ContentControlBuilderInternal to
620         ContentBuilderInternal.
621         (AddCodeRender): same.
622
623 2006-02-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
624
625         * AssemblyBuilder.cs:
626         * BuildManager.cs: compile the assembly from AssemblyBuilder and use
627         GetGeneratedType() on the BuildProvider instead of loading the assembly
628         and trying a wild guess at the type name.
629
630 2006-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
631
632         * GlobalAsaxCompiler.cs:
633         * PageCompiler.cs:
634         * TemplateControlCompiler.cs: CreateMethods is now internal.
635
636         * WebServiceBuildProvider.cs:
637         * PageBuildProvider.cs:
638         * UserControlBuildProvider.cs:
639         * WebHandlerBuildProvider.cs: new build providers.
640
641         * BuildProvider.cs: add assemblies.
642
643         * BaseCompiler.cs: expose the provider and the compile unit through
644         properties.
645
646 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
647
648         * CompilerType.cs: implemented.
649
650         * AssemblyBuilder.cs: implemented most of it.
651
652         * WebServiceCompiler.cs:
653         * CachingCompiler.cs: update 2.0 compiler instance creation code.
654
655         * ClientBuildManager.cs: implemented some of its methods. Not yet
656         ready.
657
658         * BuildManager.cs: the more interesting methods are implemented now.
659
660         * BaseCompiler.cs: delete the temporary files in case of error.
661
662         * BuildProvider.cs: implemented the Get*Compiler* protected methods.
663
664 2006-02-07  Chris Toshok  <toshok@ximian.com>
665
666         * TemplateControlCompiler.cs (AddParsedSubObjectStmt): append the
667         calls to AddParsedSubObject to a special statement collection --
668         builder.flushOutputStatements -- not to builder.method.Statements.
669         (InitMethod): initially, set flushOutputStatements to
670         method.Statements.  If we're dealing with a ContentPlaceHolder,
671         set flushOutputStatements to be the else block of a conditional we
672         create.  This causes the compiled control to fall back to the
673         ContentPlaceHolder's child controls in case there's no
674         corresponding Content template.
675         (AddChildCall): use methodStatements instead of method.Statements.
676         (CreateControlTree): same.
677
678         * PageCompiler.cs (CreatePropertyAssign): factor out the
679         string,string implementation and add one that also takes a
680         CodeExpression; make the string,string implementation call the
681         three arg one with thisRef.
682         (AddStatementsToInitMethod): make use of the 3-arg form of
683         CreatePropertyAssign to reduce code.  Also, add support for
684         setting the page's Title from the parser's Title.
685
686 2006-02-07  Chris Toshok  <toshok@ximian.com>
687
688         * UserControlCompiler.cs (AddStatementsToInitMethod): emit code to
689         assign __ctrl.MasterPageFile to our master page, if we have one.
690
691         * PageCompiler.cs (CreateContructor): remove the MasterPageFile
692         assignment from here.
693         (AddStatementsToInitMethod): and move it here.
694         
695         * TemplateControlCompiler.cs (InitMethod): in the case where
696         builder is a RootBuilder (we're building the __BuildControlTree
697         method), call a virtual method so that subclasses can add their
698         own statements to the method (used by both Page and MasterPage);
699         Also, in the RootBuilder case, the argument should be the
700         parser.ClassName type (the class we're building); lastly, expand
701         the ContentPlaceHolder logic to include all the
702         ContentTemplates/InstantiateIn magic.
703         (AddStatementsToInitMethod): empty virtual method.
704         (AddContentTemplateInvocation): ContentControlBuilder ->
705         ContentControlBuilderInternal.
706         (CreateControlTree): same.
707         (CallBaseFrameworkInitialize): new function, create call to
708         base.FrameworkInitialize.
709         (CreateFrameworkInitializeMethod): call CallBaseFrameworkIniitialize.
710
711 2006-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
712
713         * IgnoreFileBuildProvider.cs: it's not public.
714         * BuildProvider.cs: mostly implemented.
715
716 2006-02-01  Chris Toshok  <toshok@ximian.com>
717
718         * WebServiceCompiler.cs: CONFIGURATION_2_0 => NET_2_0, and use
719         GetSection instead of GetWebApplicationSection.
720
721         * CachingCompiler.cs: same.
722
723         * AspGenerator.cs: same.
724
725         * BaseCompiler.cs: same.
726         
727 2006-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
728
729         * AspGenerator.cs: ignore 'thead'. Fixes bug #77326.
730
731 2006-01-22  Chris Toshok  <toshok@ximian.com>
732
733         * IgnoreFileBuildProvider.cs: build provider which does nothing.
734
735 2006-01-22  Chris Toshok  <toshok@ximian.com>
736
737         * AspComponentFoundry.cs (.ctor): use a 2.0 friendly form of the
738         Hashtable ctor to silence a couple of warning.
739         (CompoundFoundry.ctor): same
740
741         * Directive.cs (InitHash): use a 2.0 friendly form of the
742         Hashtable ctor to silence a couple of warning.
743
744         * TagAttributes.cs (MakeHash): use a 2.0 friendly form of the
745         Hashtable ctor to silence a warning.
746         (GetDictionary): same.
747
748 2006-01-22  Chris Toshok  <toshok@ximian.com>
749
750         * AppSettingsExpressionBuilder.cs: implement this, patterning it
751         after an example on msdn.  Also, enable the ExpressionEditor
752         attribute, but use the string rather than the Type overload so we
753         won't have yet another circular dep.
754
755         * ConnectionStringsExpressionBuilder.cs: partial implementation.
756         Same deal with the ExpressionEditor attribute.
757
758         * ResourceExpressionBuilder.cs: same deal with the
759         ExpressionEditor attribute.
760         
761 2006-01-20  Chris Toshok  <toshok@ximian.com>
762
763         * ResourceExpressionBuilder.cs (ParseExpression): implement.
764
765         * ResourceExpressionFields.cs: implement.
766
767 2006-01-20  Chris Toshok  <toshok@ximian.com>
768
769         * ClientBuildManagerParameter.cs: implement.
770
771         * ClientBuildManagerCallback.cs: this class contains an empty
772         default implementation.
773
774 2006-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
775
776         * AspGenerator.cs: add support for 'src' in <script runat="server">.
777         Fixes bug #77150.
778
779 2006-01-04  Chris Toshok  <toshok@ximian.com>
780
781         * WebServiceCompiler.cs (GetCompiledType): add CONFIGURATION_2_0
782         code.
783
784         * AspGenerator.cs (CheckLanguage): add CONFIGURATION_2_0 code.
785
786 2005-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
787
788         * AspGenerator.cs: fix yesterday's fix.
789
790 2005-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
791
792         * AspGenerator.cs: only do special processing for <script> if it has
793         the runat="server" attribute. Fixes bug #76918.
794
795 2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
796
797         * TemplateControlCompiler.cs: treat LightGrey as a synonym of LightGray.
798         Fixes bug #76677.
799
800 2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
801
802         * TemplateControlCompiler.cs: handle data bound attributes for html
803         controls. Fixes bug #76785.
804
805 2005-11-28  Chris Toshok  <toshok@ximian.com>
806
807         * CachingCompiler.cs (Compile): CONFIGURATION_2_0 work.
808
809         * BaseCompiler.cs (GetCompiledType): CONFIGURATION_2_0 work.
810
811 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
812
813         * WebServiceCompiler.cs: fixed caching for web handlers.
814
815 2005-11-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
816
817         * AspParser.cs: don't change case for verbatim IDs.
818         Fixes bug #76657.
819
820 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
821
822         * AspParser.cs: when processing verbatim input, throw if we reach EOF
823         before the expected end of the data.
824
825 2005-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
826
827         * CachingCompiler.cs: 
828         * WebServiceCompiler.cs: when caching a type loaded from an assembly
829         that we didn't compile, make it depend on the file itself, not on a
830         non-existing cache key. This problem affected performance of web
831         services and .ashx, making unnecessary extra calls to LoadFrom every
832         time the cache was cleared.
833
834 2005-09-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
835
836         * BaseCompiler.cs: set the domain's DynamicBase property instead of
837         guessing it in BaseCompiler.
838
839 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
840
841         * WebServiceCompiler.cs: apply the same fix as in r45440 that fixed bug
842         75146 for pages/controls.
843
844 2005-08-09  Miguel de Icaza  <miguel@novell.com>
845
846         * WebServiceCompiler.cs: Use the new DynamicDir method.
847
848         * BaseCompiler.cs: Use the DynamicBase property as a hint, but
849         since this value is null most of the time, compute the real value.
850
851         Added Bonus: if the directory has some kind of permission problem,
852         try a different directory name.
853
854 2005-07-13  Miguel de Icaza  <miguel@novell.com>
855
856         * AspGenerator.cs (AspGenerator.CheckLanguage): Use
857         BaseParser.Context for the context. 
858
859 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
860
861         * TagAttributes.cs:
862         * AspParser.cs:
863         * TemplateControlCompiler.cs: use invariant culture versions of starts/
864         endswith.
865
866 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
867
868         * TemplateControlCompiler.cs: comparison between member name and the
869         first part of the id provided by the user should also be
870         case-insensitive. Fixes bug #75379.
871
872 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
873
874         * CachingCompiler.cs: use cache.InsertPrivate.
875         * AspGenerator.cs: use cache.InsertPrivate. Removed extra call to
876         AddDependency.
877
878 2005-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
879
880         * CachingCompiler.cs: create the assemly in the DynamicBase directory,
881         as all the others, when compiling an assembly from a Src file. Fixes
882         bug #75371.
883
884 2005-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
885
886         * TemplateControlCompiler.cs: if the property is not found, don't forget
887         about trying the field.
888
889 2005-06-13  Lluis Sanchez Gual <lluis@novell.com>
890
891         * Directive.cs: Register the MasterType directive.
892         * PageCompiler.cs: If a MasterType is specified, add a type specific
893         Master property. All this fixes bug #75192.
894
895 2005-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
896
897         * TemplateControlCompiler.cs: when mapping an attribute name to a field
898         or property name, there's no need to try with every property and field,
899         but just the one found when searching by name (no case). There was one
900         call to ProcessPropertiesAndFields per property or field until found,
901         now only one if the property/field is found, none otherwise.
902
903 2005-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
904
905         * TemplateControlCompiler.cs: allow more than 2 levels when looking for
906         properties of fields for an attribute like "Prop1-Prop2-Prop3". Fixes
907         bug #75234.
908
909 2005-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
910
911         * BaseCompiler.cs: when the OutputAssembly is null, we can still have
912         the assembly file there and be able to load it. Thanks to Rogerio and
913         Mark.
914
915 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
916
917         * AspParser.cs: InvariantCulture love.
918
919 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
920
921         * TemplateControlCompiler.cs: use the Page AddContentTemplate method,
922         as the one in Master is protected. Fixes bug #75157.
923
924 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
925
926         * AspComponentFoundry.cs: tagnames have precedence over types in
927         assemblies when they use the same prefix. Fixes bug #71855.
928
929 2005-05-03  Lluis Sanchez Gual <lluis@novell.com>
930
931         * WebServiceCompiler.cs: Create the temp directory before
932         creating the web service source code file.
933
934 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
935
936         * AspGenerator.cs: when checking languages, try to match other aliases
937         too (ie, 'cs' == 'c#').
938
939 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
940
941         * BaseCompiler.cs: check that DynamicBase directory exists before
942         creating the TempFileCollection.
943
944 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
945
946         * AspGenerator.cs: use a stack for non-server tags even before getting
947         to a form. Fixes bug #70274.
948
949 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
950
951         * AspParser.cs: don't error out on ill formed tags if it's not a server
952         tag (ie, allow something like '<table align="left cellpadding="0">' to
953         work, as MS does. Fixes bug #67909.
954
955 2005-04-20 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
956         * BaseCompiler.cs: do the bridge of Explicit/Strict attributes from
957         @Page/@Control directives to CodeDOM (VB.NET support)
958
959 2005-04-19  Lluis Sanchez Gual <lluis@novell.com>
960
961         * AspParser.cs: Fixed parsing of data binding tags in server
962         tag attributes. Allow <%...%> blocks not assigned to
963         attributes in client tags.
964         * TagAttributes.cs: Make sure that data binding blocks in server
965         tags are always assigned to attributes.
966
967 2005-04-15  Lluis Sanchez Gual <lluis@novell.com>
968
969         * TemplateControlCompiler.cs: Implemented support for two-way
970         binding.
971
972 2005-04-14  Lluis Sanchez Gual <lluis@novell.com>
973
974         * TemplateControlCompiler.cs: Use the new BindingContainerType
975         property to find the type of the binding container. 
976         
977 2005-04-07  Lluis Sanchez Gual <lluis@novell.com>
978
979         * TemplateControlCompiler.cs: Avoid using the GetConverter() trick
980         for primitive types. Parse an empty color string as Color.Empty.
981         Get the converter for a property using its PropertyDescriptor.
982         
983 2005-04-05  Lluis Sanchez Gual <lluis@novell.com>
984
985         * TemplateControlCompiler.cs: Don't autogenerate IDs for
986         controls inside Content template.
987
988 2005-03-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
989
990         * TemplateControlCompiler.cs: make typedesc.aspx work again.
991
992 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
993
994         * ExpressionBuilderContext.cs:
995         * ExpressionBuilder.cs: implemented.
996
997 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
998
999         * AspGenerator.cs: don't fail on <tbody runat=server>. Fixes bug #71856.
1000
1001 2005-01-28  Lluis Sanchez Gual <lluis@novell.com>
1002
1003         * TemplateControlCompiler.cs: When generating a property value,
1004         check for TypeConverterAttribute in the PropertyInfo, not only in the
1005         property type.
1006         Implemented code generation using InstanceDescriptor, when the type
1007         converter supports conversion to that type.
1008
1009 2005-01-21  Lluis Sanchez Gual <lluis@novell.com>
1010
1011         * Directive.cs: Added MASTER directive.
1012         * AspGenerator.cs: Use UserControlCompiler for compiling master pages.
1013         * PageCompiler.cs: Set the master file name when generating the page.
1014         * TemplateControlCompiler.cs: When generating the method for a
1015         content holder, register the content holder in the base MasterPage.
1016         Added method for registering a Content control for a MasterPage.
1017         Generate code for Content controls.
1018
1019 2005-01-10  Lluis Sanchez Gual <lluis@novell.com>
1020
1021         * TemplateControlCompiler.cs: Get the container type from the
1022         template (if it was defined using TemplateContainerAttribute.
1023
1024 2004-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1025
1026         * AspGenerator.cs: correctly process script tags that self-closing.
1027         Fixes bug #69657.
1028
1029 2004-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1030
1031         * CachingCompiler.cs: when compiling a single .cs file, add the file
1032         itself to dependencies. Fixes bug #68788.
1033
1034 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1035
1036         * ControlBuilder.cs: don't close server tags when we get to a closing
1037         tag that is not applied to a server control. Fixes bug #60323.
1038
1039 2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1040
1041         * WebServiceCompiler.cs: fix buglet in my last commit.
1042
1043 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1044
1045         * BaseCompiler.cs:
1046         * CachingCompiler.cs:
1047         * WebServiceCompiler.cs: correctly cache Type instead of the assembly
1048         for ashx/asmx. Otherwise we need to open the file and check for the
1049         class name in there. Thanks to Ben for pointing this out.
1050
1051 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1052
1053         * AspParser.cs:
1054         * AspTokenizer.cs: prevent quotes from being swallowed when we're 
1055         inside a server tag and they are the next non-whitespace character.
1056         Fixes bug #63451.
1057
1058 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1059
1060         * CachingCompiler.cs: don't try to watch for changes in system
1061         assemblies. Fixes bug #64871.
1062
1063 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1064
1065         * AspGenerator.cs: handle builders that need to process inner text
1066         with tags.
1067
1068         * Location.cs: added setters for the properties.
1069
1070 2004-08-02  Duncan Mak  <duncan@ximian.com>
1071
1072         * BuildProviderResultFlags.cs:  
1073         * IImplicitResourceProvider.cs: 
1074         * ImplicitResourceKey.cs:
1075         * IResourceReader.cs: Added.
1076
1077 2004-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1078
1079         * AspGenerator.cs: the path for file was treated as virtual, but it's
1080         physical. Fixes bug #61524.
1081
1082 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1083
1084         * AspParser.cs: fixed case-sensitivity issues with #include and its
1085         attributes. Closes #61429.
1086
1087 2004-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1088
1089         * BaseCompiler.cs:
1090         * WebServiceCompiler.cs: really create the dlls under DynamicBase
1091
1092 2004-06-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1093
1094         * TemplateControlCompiler.cs: for system colors, use SystemColors class
1095         instead of Color. Fixes bug #60249.
1096
1097 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1098
1099         * BaseCompiler.cs: try getting the Type from the cache before doing the 
1100         real work. Remove temporary files right after successful compilation.
1101
1102         * CachingCompiler.cs: added GetTypeFromCache.
1103
1104         * UserControlCompiler.cs: nothing interesting.
1105
1106         * WebServiceCompiler.cs: try getting the Type from the cache before
1107         doing anything else. Remove temp files on sucessful compilation.
1108
1109 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1110
1111         * AspGenerator.cs:
1112         * CachingCompiler.cs: use a different prefix when caching compiler
1113         results or Types.
1114
1115 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1116
1117         * BaseCompiler.cs: dynamicBase is now protected. Check
1118         MONO_ASPNET_NODELETE here.
1119
1120         * TemplateControlCompiler.cs: if the type is not known but has a 
1121         TypeConverter, invoke ConvertFromString in the generated code.
1122
1123         * WebServiceCompiler.cs: it used a hardcoded C# compiler, now it gets
1124         the compiler from the configuration. Also handle MONO_ASPNET_NODELETE.
1125
1126         * CachingCompiler.cs: updated compilation of web services and simple
1127         web handlers.
1128
1129 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1130
1131         * CSCompiler.cs: removed.
1132
1133         * CachingCompiler.cs: language independent compilation for single files.
1134
1135 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1136
1137         * BaseCompiler.cs:
1138         * WebServiceCompiler.cs: adapted to the 'new' CachingCompiler.
1139         * CachingCompiler.cs: use HttpRuntime.Cache.
1140
1141 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1142
1143         * PageCompiler.cs: fixed Trace and add support for Buffer.
1144
1145 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1146
1147         * PageCompiler.cs: override CreateConstructor to add assignment for
1148         ClientTarget.
1149         
1150 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1151
1152         * TemplateControlCompiler.cs: use CodeDelegateCreateExpression instead
1153         of CodeObjectCreateExpression for the render method delegate. Thanks
1154         to Jochen Wezel.
1155
1156 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1157
1158         * BaseCompiler.cs: use DynamicBase for the output assemblies.
1159
1160 2004-05-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1161
1162         * AspGenerator.cs: ObjectTagBuilder do not override HasBody now.
1163
1164 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1165
1166         * AspParser.cs: indent a few lines.
1167         * AspTokenizer.cs: added ungetc() used when we read a '/' in an unquoted
1168         attribute value. This way we can simulate reading 2 characters ahead
1169         (one in ungetc and the other in Peek) and work with values like
1170         text/javascript. Fixes bug #57302.
1171
1172 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1173
1174         * AspParser.cs: ignore whitespace after directives. Fixes bug #58057.
1175
1176 2004-04-02  Lluis Sanchez Gual  <lluis@ximian.com>
1177
1178         * TemplateControlCompiler.cs: Fixed build for net_1_0 profile.
1179
1180 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1181
1182         * GlobalAsaxCompiler.cs: removed Imports and Assemblies properties.
1183
1184 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1185
1186         * AspGenerator.cs: error out when <object> server tag is not closed.
1187         Ignore any content inside it.
1188
1189 2004-02-10  Jackson Harper <jackson@ximian.com>
1190
1191         * AspTokenizer.cs: Collect discarded characters that might be used
1192         in client side scripts. Patch by Liyu Liu.
1193         * AspParser.cs: Add discarded characters. Patch by Liyu Liu.
1194         
1195 2004-02-10  Jackson Harper <jackson@ximian.com>
1196
1197         * BaseCompiler.cs: Use the TempDirectory for compilation. Fixes
1198         bug #54117.
1199         
1200 2004-01-30  Jackson Harper <jackson@ximian.com>
1201
1202         * TemplateControlCompiler.cs: Call ToString on the types hashcode,
1203         the build method takes strings not ints.
1204         
1205 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1206
1207         * AspGenerator.cs: handle more possible errors in global.asax file.
1208
1209         * BaseCompiler.cs: added utility methods for creating <object> related
1210         properties and fields.
1211
1212         * GlobalAsaxCompiler.cs: keep around applications and session scope
1213         objects builders. Also a list of imports and assemblies added in
1214         global.asax.
1215
1216         * TemplateControlCompiler.cs: use base class methods for <object> stuff.
1217
1218 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1219
1220         * AspGenerator.cs: use the Cache to store compiled Types. Don't parse
1221         pages more than once. Thanks to Eric Lindvall for pointing this out.
1222
1223 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1224
1225         * TemplateControlCompiler.cs: allow handling subproperties for other
1226         types than Style and Font. Fixes bug #53217.
1227
1228 2004-01-16  Jackson Harper <jackson@ximian.com>
1229
1230         * TagAttribute.cs: attributes can be stored as encoded html so we
1231         decode them here.
1232         
1233 2004-01-14  Jackson Harper <jackson@ximian.com>
1234
1235         * TemplateControlCompiler.cs: Is a user control is cached and
1236         shared use the controls type hashcode for the GUID so it will be
1237         the same across instances.
1238         
1239 2004-01-13  Jackson Harper <jackson@ximian.com>
1240         
1241         * TemplateControlCompiler.cs: If an item has the partial caching
1242         attribute build a PartialCachingControl in the parents __Build method.
1243         * BaseCompiler.cs: Add a method for adding class attributes to the
1244         class.
1245         * UserControlCompiler.cs: If caching is enabled on a user control
1246         add the PartialCachingAttribute to it.
1247         
1248 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1249
1250         * PageCompiler.cs: invoke Request.ValidateInput if required.
1251
1252 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1253
1254         * AspGenerator.cs: don't rely on GC to close the files parsed. Fixes bug
1255         #52521. Patch by liyul@hotmail.com.
1256
1257 2003-12-25  Jackson Harper <jackson@ximian.com>
1258
1259         * AspGenerator.cs: Allow scriptlets in javascript. This fixes bug
1260         #52522.
1261         
1262 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1263
1264         * PageCompiler.cs: assign the ErrorPage property if provided.
1265
1266 2003-12-15  Jackson Harper <jackson@ximian.com>
1267
1268         * PageCompiler.cs: Add Trace and TraceMode to framework initialize
1269         method if they are set.
1270         
1271 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1272
1273         * AspGenerator.cs: ignore <tbody> when we're inside a server table and
1274         fail when runat="server" is applied to <tbody> with a parse error
1275         instead of waiting for a compilation error. Fixes bug #52157.
1276
1277 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1278
1279         * AspGenerator.cs: basic checking of ID validity.  Throw a
1280         ParseException when mixing languages.
1281
1282 2003-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1283
1284         * PageCompiler.cs: assign LCID, Culture and/or UICulture in
1285         FrameworInitialize() if provided in @Page.
1286
1287         Fixes bug #51511.
1288
1289 2003-11-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1290
1291         * TemplateControlCompiler.cs: support for expressions of
1292         System.Drawing.Size type. Allow getting Color from comma separated
1293         numbers, which is not allowed by ColorConverter.
1294
1295         This makes http://www.codeproject.com/aspnet/asppopup.asp work.
1296
1297 2003-11-13  Jackson Harper <jackson@ximian.com>
1298
1299         * PageCompiler.cs: Call InitOutputCache when the OutputCache
1300         directive is set.
1301         
1302 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1303
1304         * AspGenerator.cs: use fileEncoding from configuration files.
1305
1306         * PageCompiler.cs: add assign statements for ContentType,
1307         ResponseEncoding and CodePage if supplied.
1308
1309 2003-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1310
1311         * TemplateControlCompiler.cs: fix bug #42994. Now we don't generate
1312         a return statement for user controls with 'void' return type.
1313
1314 2003-10-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1315
1316         * AspParser.cs: fixed bug #49627.
1317
1318 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1319
1320         * BaseCompiler.cs: now gets the CodeCompiler from configuration files.
1321
1322 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1323
1324         * Directive.cs: new attribute for @Page directive in 1.1.
1325
1326 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1327
1328         * AspParser.cs:
1329         * TagAttributes.cs: allow duplicated runat=server attributes and display
1330         error page when duplicated attributes and runat is specified.
1331
1332 2003-10-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1333
1334         * AspTokenizer.cs: moved token numbers above unicode.
1335
1336 2003-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1337
1338         * AspGenerator.cs: don't process code render tags inside scripts. Check
1339         the language of the script and treat javascript as verbatim input.
1340         Fixes bug #48592.
1341
1342 2003-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1343
1344         * TemplateControlCompiler.cs: fixed bug #48212.
1345
1346 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1347
1348         * WebServiceCompiler.cs: remove the temporary files here too.
1349
1350 2003-08-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1351
1352         * AspGenerator.cs: fixed bug #46429.
1353
1354 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1355
1356         * Directive.cs: support @WebHandler.
1357         
1358 2003-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1359
1360         * TemplateControlCompiler.cs: support string []. Fixes bug #46415.
1361
1362 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1363
1364         * BaseCompiler.cs: first look for cached items, then generate the tree.
1365         This should speed things up.
1366
1367         * CachingCompiler.cs: when compiling web services, use the full path of
1368         the .asmx file as key when caching.
1369
1370         * WebServiceCompiler.cs: first look for cached items, then generate
1371         the source file.
1372
1373 2003-07-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1374
1375         * AspParser.cs: more useful error information,
1376
1377         * BaseCompiler.cs:
1378         * CachingCompiler.cs: honor the debug="true" option.
1379
1380         * TemplateControlCompiler.cs: small fixes for templates.
1381
1382 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1383
1384         * BaseCompiler.cs: made Compiler property virtual.
1385
1386         * CachingCompiler.cs: added support for compiling web services.
1387
1388         * WebServiceCompiler.cs: implemented.
1389
1390 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1391
1392         * CachingCompiler.cs: fixed bug #43477.
1393
1394 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1395
1396         * AspParser.cs:
1397         * AspTokenizer.cs: fixed bugs #43206 and #43371.
1398
1399 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1400
1401         * TemplateControlCompiler.cs: duh! Generate SupportAutoEvents instead
1402         of AutoEventWireup (which is internal). Thanks to Stuart Ballard for
1403         reporting.
1404
1405 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1406
1407         * CompilationException.cs: don't add duplicated lines in the case that
1408         mcs reports several errors for the same one.
1409
1410 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1411
1412         * AspGenerator.cs: fully support including files, ie., treat them just
1413         as C treats #includes.
1414
1415 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1416
1417         * AspGenerator.cs:
1418         * AspParser.cs:
1419         * TagType.cs: Added support for server side includes.
1420
1421 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1422
1423         * CSCompiler.cs: actually add the list of referenced assemblies to the
1424         compiler options. Throw a CompilationException if there's an error.
1425
1426         * CachingCompiler.cs: added a method to compile directly from a source
1427         file.
1428         
1429 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1430
1431         * AspGenerator.cs: copy the location before setting the value for the
1432         control builders.
1433
1434         * BaseCompiler.cs: changed parameters for CompilationException.
1435
1436         * CompilationException.cs: it takes now line numbers and error
1437         descriptions from the CompilerErrorCollection.
1438
1439         * Location.cs: used when a copy of an ILocation is needed.
1440
1441         * ParseException.cs: implemented new methods to provide line numbers
1442         and souce file.
1443
1444         * TemplateControlCompiler.cs: throw a ParseException where appropiate.
1445
1446 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1447
1448         * AspGenerator.cs: also support data bind syntax inside tags not
1449         processed as controls. Added debugging method.
1450
1451         * TemplateControlCompiler.cs: reset the number of data binding handlers 
1452         in the proper place. Small fix when getting the container type.
1453
1454 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1455
1456         * TemplateControlCompiler.cs: correctly set the TemplateSourceDirectory 
1457         value.
1458
1459 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1460
1461         * AspGenerator.cs: handle code render syntax in tag attributes.
1462
1463         * AspParser.cs: the constructor now takes a TextReader.
1464
1465         * TemplateControlCompiler.cs: removed comment.
1466
1467 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1468
1469         * TemplateControlCompiler.cs: added support for data bound properties.
1470
1471 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1472
1473         * AspComponentFoundry.cs: simplified it a lot by using Type and Assembly
1474         instead of their names.
1475
1476         * AspElements.cs: removed. No longer needed.
1477
1478         * AspGenerator.cs: this file is now in charge of interfacing between
1479         the parser and the compiler. It manages the creation of the
1480         ControlBuilder tree and the compilation of the CodeDOM tree.
1481
1482         * AspParser.cs: tag handling is simpler now.  Instead of a whole bunch
1483         of different Types, tags are just and id and a set of attributes.
1484         Implement ILocation interface.
1485         
1486         * AspTokenizer.cs: added a few methods to help the parser implementing
1487         ILocation.
1488
1489         * BaseCompiler.cs: handles the portions of the CodeDOM tree that are
1490         common to appliaction, page and user control, including the actual
1491         compilation and error handling.
1492
1493         * CSCompiler.cs: compiles C# files using CodeDOM interfaces.
1494
1495         * CachingCompiler.cs: simplified to use the new interfaces.
1496
1497         * CompilationException.cs: it's now using CompilationResult to report
1498         errors.
1499
1500         * CompilationResult.cs: Removed file.
1501
1502         * Directive.cs: to check for the validity of a directive.
1503
1504         * GlobalAsaxCompiler.cs: simplified a lot, as most of the work is done
1505         in BaseCompiler.
1506
1507         * ILocation.cs: interface used to now the exact place where a parse
1508         error happens.
1509
1510         * PageCompiler.cs: generates a couple of methods that are only used in
1511         pages.
1512
1513         * ParseException.cs: use the ILocation interface.
1514
1515         * TagAttributes.cs: handles the attributes of the tags parsed.
1516
1517         * TagType.cs: an enum for the different kinds of tags.
1518
1519         * TemplateControlCompiler.cs: this is the one that does most of the
1520         conversion from teh ControlBuilder tree into a CodeDOM tree.
1521
1522         * UserControlCompiler.cs: simplified as most of the work is done in
1523         its base classes.
1524
1525         * WebServiceCompiler.cs: dummy.
1526
1527 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1528
1529         * AspComponentFoundry.cs: added GetComponentType method.
1530
1531 2003-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1532
1533         * AspTokenizer.cs: allow quotes inside server tags that are part of
1534         attribute values.
1535         
1536         * CachingCompiler.cs: no more 'FileNotFound' exceptions when the
1537         compilation fails.
1538
1539 2003-03-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1540
1541         * AspGenerator.cs: generate correct appbase path. It was working with
1542         mcs but not with csc.
1543
1544         * BaseCompiler.cs: quote arguments and removed GetRandomFileName.
1545
1546         * CachingCompiler.cs: quote source file.
1547
1548 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1549
1550         * AspGenerator.cs: now the Inherits attribute works as expected for
1551         global.asax file.
1552
1553 2003-03-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1554
1555         * CompilationException.cs:
1556         * ParseException.cs: display the correct line number in error messages.
1557
1558         * AspElements.cs: added TargetSchema attribute for control. It's
1559         ignored.
1560
1561 2003-03-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1562
1563         * BaseCompiler.cs: fixed the hack to work under windows.
1564         * CachingCompiler.cs: under windows, try 'mcs.bat' and then 'mcs'.
1565
1566 2003-03-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1567
1568         * BaseCompiler.cs: hacks to work-around our buggy System.Uri.
1569
1570 2003-03-17 George Kodinov <gkodinov@openlinksw.co.uk>
1571
1572         * BaseCompiler.cs: Removed a FIXME: and added a correct calculation of
1573         app's private bin path
1574
1575 2003-03-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1576
1577         * AspGenerator.cs:
1578         * BaseCompiler.cs:
1579         * CachingCompiler.cs:
1580         * CompilationResult.cs:
1581         * GlobalAsaxCompiler.cs:
1582         * PageCompiler.cs:
1583         * UserControlCompiler.cs: recompile the page if dependencies change.
1584
1585 2003-02-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1586
1587         * AspGenerator.cs: corrected typo and wrong fix.
1588
1589 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1590
1591         * AspGenerator.cs: fixed code generation for Table/TableRow/TableCell
1592         when used explicitly.
1593
1594 2003-02-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1595
1596         * AspElements.cs: get the property Type for controls that use
1597         ParseChildren with a property name.
1598
1599         * AspGenerator.cs: generate correct signature for the method that
1600         adds controls to the default property in ParseChildren.
1601
1602 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1603
1604         * AspGenerator.cs: rethrow exceptions that may come from parsing or 
1605         compilation if a user control.
1606
1607 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1608
1609         * AspGenerator.cs: throw ParseException on parse
1610         error.
1611
1612         * AspParser.cs: added Line and Column props.
1613
1614         * CompilationException.cs: derives now from HtmlizedException.
1615
1616         * CompilationResult.cs: added fileName field.  Fixed set_ExitCode.
1617
1618         * GlobalAsaxCompiler.cs:
1619         * PageCompiler.cs:
1620         * UserControlCompiler.cs: pass the file name in the CompilationResult.
1621
1622         * ParseException.cs: new exception.
1623
1624
1625 2003-02-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1626
1627         * AspGenerator.cs: remove "file://" from the private bin path. Fixes
1628         bug #37628.
1629
1630 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1631
1632         * AspParser.cs: the parser fires events when it parses an element.
1633
1634         * GlobalAsaxCompiler.cs:
1635         * PageCompiler.cs:
1636         * UserControlCompiler.cs:
1637         * AspElements.cs: modified to use the new parser interface.
1638
1639         * AspGenerator.cs: modified to use the new parser. Merge multiple text
1640         strings into one single LiteralControl.
1641
1642         * AspTokenizer.cs: added Line and Column properties.
1643
1644 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1645
1646         * AspParser.cs: fixed bug #36929.
1647
1648 2003-01-21  Tim Haynes <thaynes@openlinksw.com>
1649
1650         * AspGenerator.cs:
1651         * BaseCompiler.cs:
1652         * CachingCompiler.cs: changes to work around spaces and
1653         directory-separators in the local filesystem.
1654
1655 2003-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1656
1657         * AspGenerator.cs: make the generated file compile with csc after last
1658         change.
1659
1660 2003-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1661
1662         * AspGenerator.cs: removed unused variable. Added support for
1663         properties/fields of type string [].
1664
1665 2003-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1666
1667         * AspGenerator.cs: modified loading of the parent type now that
1668         Type.GetType is fixed.
1669
1670 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1671
1672         * AspGenerator.cs: cast to Control if the container does not implement
1673         INamingContainer.
1674
1675 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1676
1677         * AspGenerator.cs: fixed a couple of thinkos related to IsSubclassOf.
1678
1679 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1680
1681         * AspElements.cs: attributes without value lacked a space afterwards.
1682
1683 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1684
1685         * AspGenerator.cs: functions for columns don't return anything. Fixed
1686         typo.
1687
1688 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1689
1690         * AspGenerator.cs: add data bound controls to code render function.
1691
1692 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1693
1694         * AspComponentFoundry.cs: reworked to allow same prefix for multiple
1695         controls. You can register 1 assembly plus any number of user controls
1696         under the same prefix.
1697
1698         * AspGenerator.cs: don't add duplicate 'using' for the same namespace.
1699         Hack to allow @Register access to assemblies in other places than bin
1700         directory.
1701
1702 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1703
1704         * AspElements.cs: added 'codebehind' attribute for page, control and
1705         application. It's ignored by MS, but allowed. Fixed typo.
1706
1707 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1708
1709         * AspGenerator.cs: fixed EnableSesssionState handling.
1710
1711 2003-01-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1712
1713         * AspGenerator.cs: don't generate instance fields for pages/controls
1714         when the base class specified in the Inherits attribute already has
1715         them. Closes bug #36262.
1716
1717 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1718
1719         * AspGenerator.cs: generate code like 'control.XXX = value' also for
1720         public fields (properties were being handled in that way too).
1721
1722 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1723
1724         * AspGenerator.cs: now it uses the current HttpContext when creating
1725         user controls. TemplateSourceDirectory is no longer a dummy value.
1726
1727         * GlobalAsaxCompiler.cs:
1728         * PageCompiler.cs:
1729         * UserControlCompiler.cs: set the context which will be used to locate
1730         the files.
1731         
1732 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1733
1734         * AspGenerator.cs: added support for AutoEventWireup attribute in
1735         @Page and @Control.
1736
1737         * CompilationResult.cs:
1738         * GlobalAsaxCompiler.cs:
1739         * PageCompiler.cs:
1740         * UserControlCompiler.cs: store the options.
1741
1742 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1743
1744         * AspElements.cs: new method Tag.GetElements
1745         used to parse the inner contents of a tag looking for data binding or 
1746         code render tags.
1747         
1748         New property HtmlControlTag.ParseChildren allows
1749         differentiation of a couple of HtmlControls that has children as
1750         properties (namely HtmlTable and HtmlTableRow).
1751
1752         * AspGenerator.cs: fixed container semantics to
1753         match BindingContainer one. Implemented Inherits attribute for page and
1754         control.
1755
1756         Support HtmlControls that has ChildrenAsProperties.
1757         
1758         Generate code for data binding functions that matches the semantic of
1759         Container.
1760
1761         Handle data bound and code render attribute values.
1762
1763         Set proper value return for TemplateSourceDirectory. Should be relative
1764         to appPath.
1765         
1766         * BaseCompiler.cs: moved CompilerOptions and
1767         References handling here.
1768
1769         * CachingCompiler.cs: copy result of compilation.
1770
1771         * CompilationException.cs: simple ToString () implementation.
1772
1773         * CompilationResult.cs: implemented CopyFrom and ToString.
1774
1775         * GlobalAsaxCompiler.cs:
1776         * PageCompiler.cs:
1777         * UserControlCompiler.cs: removed CompilerOptions as it's now handled
1778         in the base class. Get all the types in the generated assembly and
1779         look for one that derives from the correct Type.
1780         
1781 2002-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1782
1783         * AspElements.cs: added @Application directive.
1784
1785         * AspGenerator.cs: make it work also with application files. We
1786         currently generate an extra private function.
1787
1788 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1789
1790         * GlobalAsaxCompiler.cs: compiler for global.asax file. If the file
1791         exists, it will be compiled into an HttpApplication derived class
1792         (directly or through a user-provided class).
1793
1794 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1795
1796         * AspGenerator.cs: fixed target file name and generated class name.
1797         * BaseCompiler.cs: reference assemblies in PrivateBinPath.
1798
1799 2002-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1800
1801         * AspGenerator.cs: reworked user control
1802         compilation. Provide the options as a Hashtable for use in compilation.
1803         Create the user controls in the private bin path of the domain.
1804
1805         * BaseCompiler.cs: base class for the various compiler types.
1806
1807         * CachingCompiler.cs: actually executes mcs and do some poor caching
1808         (it will use Cache when finished).
1809
1810         * CompilationException.cs: this exception has enough information to
1811         generate a nice error page.
1812         * CompilationResult.cs: used in caching.
1813
1814         * PageCompiler.cs: now derives from BaseCompiler
1815
1816         * TemplateFactory.cs: no longer needed.
1817
1818         * UserControlCompiler.cs: new class used when compiling user controls.
1819         * WebServiceCompiler.cs: derives from BaseCompiler.
1820
1821 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1822
1823         * AspElements.cs: added ServerComment class.
1824         * AspParser.cs: ignore ServerComments tags. Remove server comments when 
1825         in verbatim mode.
1826
1827         Fixes #33482.
1828
1829         * PageCompiler.cs: check if the type is already cached before generating
1830         the C# file.
1831         * TemplateFactory.cs: if csFile parameter is null, only checks if we
1832         already have the page compiled.
1833
1834 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1835
1836         * AspGenerator.cs: undo one-liner change.
1837
1838 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1839
1840         * AspGenerator.cs: removed a few hacks no longer needed.
1841
1842 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1843
1844         * PageCompiler.cs: tracing.
1845         * TemplateFactory.cs: cache compiled types and tracing.
1846         * WebServiceCompiler.cs: new parameter in GetTypeFromsource,
1847
1848 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1849
1850         * AspComponentFoundry.cs: fixed typo.
1851         * TemplateFactory.cs: use csc style options.
1852         * AspGenerator.cs: don't use FileDependencies property of base class.
1853
1854 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1855
1856         * System.Web.Compilation/AspElements.cs:
1857         * System.Web.Compilation/AspGenerator.cs:
1858         * System.Web.Compilation/AspParser.cs:
1859         * System.Web.Compilation/PageCompiler.cs:
1860         * System.Web.Compilation/TemplateFactory.cs: we are now able to compile
1861         pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
1862
1863 2002-09-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1864
1865         * AspElements.cs: added WebService directive.
1866         * WebServiceCompiler.cs: New file.
1867
1868 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1869
1870         * PageCompiler.cs: fixed compilation.
1871
1872 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1873
1874         * PageCompiler.cs: generate C# file using AspGenerator.
1875
1876 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1877
1878         * AspComponentFoundry.cs: LookupFoundry now returns bool.
1879         * AspGenerator.cs: New file.
1880
1881 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1882
1883         * AspComponentFoundry.cs: New file.
1884         * AspElements.cs: renamed Component to Aspcomponent.
1885
1886 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1887
1888         * AspElements.cs:
1889         * AspParser.cs:
1890         * AspTokenizer.cs:
1891         * ChangeLog:
1892         * PageCompiler.cs:
1893         * TemplateFactory.cs: first steps to move xsp into System.Web.
1894