Switch to compiler-tester
[mono.git] / mcs / class / System.Web / System.Web.Compilation / ChangeLog
1 2005-06-13  Lluis Sanchez Gual <lluis@novell.com>
2
3         * Directive.cs: Register the MasterType directive.
4         * PageCompiler.cs: If a MasterType is specified, add a type specific
5         Master property. All this fixes bug #75192.
6
7 2005-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
8
9         * TemplateControlCompiler.cs: when mapping an attribute name to a field
10         or property name, there's no need to try with every property and field,
11         but just the one found when searching by name (no case). There was one
12         call to ProcessPropertiesAndFields per property or field until found,
13         now only one if the property/field is found, none otherwise.
14
15 2005-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
16
17         * TemplateControlCompiler.cs: allow more than 2 levels when looking for
18         properties of fields for an attribute like "Prop1-Prop2-Prop3". Fixes
19         bug #75234.
20
21 2005-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
22
23         * BaseCompiler.cs: when the OutputAssembly is null, we can still have
24         the assembly file there and be able to load it. Thanks to Rogerio and
25         Mark.
26
27 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
28
29         * AspParser.cs: InvariantCulture love.
30
31 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
32
33         * TemplateControlCompiler.cs: use the Page AddContentTemplate method,
34         as the one in Master is protected. Fixes bug #75157.
35
36 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
37
38         * AspComponentFoundry.cs: tagnames have precedence over types in
39         assemblies when they use the same prefix. Fixes bug #71855.
40
41 2005-05-03  Lluis Sanchez Gual <lluis@novell.com>
42
43         * WebServiceCompiler.cs: Create the temp directory before
44         creating the web service source code file.
45
46 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
47
48         * AspGenerator.cs: when checking languages, try to match other aliases
49         too (ie, 'cs' == 'c#').
50
51 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
52
53         * BaseCompiler.cs: check that DynamicBase directory exists before
54         creating the TempFileCollection.
55
56 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
57
58         * AspGenerator.cs: use a stack for non-server tags even before getting
59         to a form. Fixes bug #70274.
60
61 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
62
63         * AspParser.cs: don't error out on ill formed tags if it's not a server
64         tag (ie, allow something like '<table align="left cellpadding="0">' to
65         work, as MS does. Fixes bug #67909.
66
67 2005-04-20 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
68         * BaseCompiler.cs: do the bridge of Explicit/Strict attributes from
69         @Page/@Control directives to CodeDOM (VB.NET support)
70
71 2005-04-19  Lluis Sanchez Gual <lluis@novell.com>
72
73         * AspParser.cs: Fixed parsing of data binding tags in server
74         tag attributes. Allow <%...%> blocks not assigned to
75         attributes in client tags.
76         * TagAttributes.cs: Make sure that data binding blocks in server
77         tags are always assigned to attributes.
78
79 2005-04-15  Lluis Sanchez Gual <lluis@novell.com>
80
81         * TemplateControlCompiler.cs: Implemented support for two-way
82         binding.
83
84 2005-04-14  Lluis Sanchez Gual <lluis@novell.com>
85
86         * TemplateControlCompiler.cs: Use the new BindingContainerType
87         property to find the type of the binding container. 
88         
89 2005-04-07  Lluis Sanchez Gual <lluis@novell.com>
90
91         * TemplateControlCompiler.cs: Avoid using the GetConverter() trick
92         for primitive types. Parse an empty color string as Color.Empty.
93         Get the converter for a property using its PropertyDescriptor.
94         
95 2005-04-05  Lluis Sanchez Gual <lluis@novell.com>
96
97         * TemplateControlCompiler.cs: Don't autogenerate IDs for
98         controls inside Content template.
99
100 2005-03-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
101
102         * TemplateControlCompiler.cs: make typedesc.aspx work again.
103
104 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
105
106         * ExpressionBuilderContext.cs:
107         * ExpressionBuilder.cs: implemented.
108
109 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
110
111         * AspGenerator.cs: don't fail on <tbody runat=server>. Fixes bug #71856.
112
113 2005-01-28  Lluis Sanchez Gual <lluis@novell.com>
114
115         * TemplateControlCompiler.cs: When generating a property value,
116         check for TypeConverterAttribute in the PropertyInfo, not only in the
117         property type.
118         Implemented code generation using InstanceDescriptor, when the type
119         converter supports conversion to that type.
120
121 2005-01-21  Lluis Sanchez Gual <lluis@novell.com>
122
123         * Directive.cs: Added MASTER directive.
124         * AspGenerator.cs: Use UserControlCompiler for compiling master pages.
125         * PageCompiler.cs: Set the master file name when generating the page.
126         * TemplateControlCompiler.cs: When generating the method for a
127         content holder, register the content holder in the base MasterPage.
128         Added method for registering a Content control for a MasterPage.
129         Generate code for Content controls.
130
131 2005-01-10  Lluis Sanchez Gual <lluis@novell.com>
132
133         * TemplateControlCompiler.cs: Get the container type from the
134         template (if it was defined using TemplateContainerAttribute.
135
136 2004-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
137
138         * AspGenerator.cs: correctly process script tags that self-closing.
139         Fixes bug #69657.
140
141 2004-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
142
143         * CachingCompiler.cs: when compiling a single .cs file, add the file
144         itself to dependencies. Fixes bug #68788.
145
146 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
147
148         * ControlBuilder.cs: don't close server tags when we get to a closing
149         tag that is not applied to a server control. Fixes bug #60323.
150
151 2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
152
153         * WebServiceCompiler.cs: fix buglet in my last commit.
154
155 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
156
157         * BaseCompiler.cs:
158         * CachingCompiler.cs:
159         * WebServiceCompiler.cs: correctly cache Type instead of the assembly
160         for ashx/asmx. Otherwise we need to open the file and check for the
161         class name in there. Thanks to Ben for pointing this out.
162
163 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
164
165         * AspParser.cs:
166         * AspTokenizer.cs: prevent quotes from being swallowed when we're 
167         inside a server tag and they are the next non-whitespace character.
168         Fixes bug #63451.
169
170 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
171
172         * CachingCompiler.cs: don't try to watch for changes in system
173         assemblies. Fixes bug #64871.
174
175 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
176
177         * AspGenerator.cs: handle builders that need to process inner text
178         with tags.
179
180         * Location.cs: added setters for the properties.
181
182 2004-08-02  Duncan Mak  <duncan@ximian.com>
183
184         * BuildProviderResultFlags.cs:  
185         * IImplicitResourceProvider.cs: 
186         * ImplicitResourceKey.cs:
187         * IResourceReader.cs: Added.
188
189 2004-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
190
191         * AspGenerator.cs: the path for file was treated as virtual, but it's
192         physical. Fixes bug #61524.
193
194 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
195
196         * AspParser.cs: fixed case-sensitivity issues with #include and its
197         attributes. Closes #61429.
198
199 2004-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
200
201         * BaseCompiler.cs:
202         * WebServiceCompiler.cs: really create the dlls under DynamicBase
203
204 2004-06-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
205
206         * TemplateControlCompiler.cs: for system colors, use SystemColors class
207         instead of Color. Fixes bug #60249.
208
209 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
210
211         * BaseCompiler.cs: try getting the Type from the cache before doing the 
212         real work. Remove temporary files right after successful compilation.
213
214         * CachingCompiler.cs: added GetTypeFromCache.
215
216         * UserControlCompiler.cs: nothing interesting.
217
218         * WebServiceCompiler.cs: try getting the Type from the cache before
219         doing anything else. Remove temp files on sucessful compilation.
220
221 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
222
223         * AspGenerator.cs:
224         * CachingCompiler.cs: use a different prefix when caching compiler
225         results or Types.
226
227 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
228
229         * BaseCompiler.cs: dynamicBase is now protected. Check
230         MONO_ASPNET_NODELETE here.
231
232         * TemplateControlCompiler.cs: if the type is not known but has a 
233         TypeConverter, invoke ConvertFromString in the generated code.
234
235         * WebServiceCompiler.cs: it used a hardcoded C# compiler, now it gets
236         the compiler from the configuration. Also handle MONO_ASPNET_NODELETE.
237
238         * CachingCompiler.cs: updated compilation of web services and simple
239         web handlers.
240
241 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
242
243         * CSCompiler.cs: removed.
244
245         * CachingCompiler.cs: language independent compilation for single files.
246
247 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
248
249         * BaseCompiler.cs:
250         * WebServiceCompiler.cs: adapted to the 'new' CachingCompiler.
251         * CachingCompiler.cs: use HttpRuntime.Cache.
252
253 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
254
255         * PageCompiler.cs: fixed Trace and add support for Buffer.
256
257 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
258
259         * PageCompiler.cs: override CreateConstructor to add assignment for
260         ClientTarget.
261         
262 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
263
264         * TemplateControlCompiler.cs: use CodeDelegateCreateExpression instead
265         of CodeObjectCreateExpression for the render method delegate. Thanks
266         to Jochen Wezel.
267
268 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
269
270         * BaseCompiler.cs: use DynamicBase for the output assemblies.
271
272 2004-05-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
273
274         * AspGenerator.cs: ObjectTagBuilder do not override HasBody now.
275
276 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
277
278         * AspParser.cs: indent a few lines.
279         * AspTokenizer.cs: added ungetc() used when we read a '/' in an unquoted
280         attribute value. This way we can simulate reading 2 characters ahead
281         (one in ungetc and the other in Peek) and work with values like
282         text/javascript. Fixes bug #57302.
283
284 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
285
286         * AspParser.cs: ignore whitespace after directives. Fixes bug #58057.
287
288 2004-04-02  Lluis Sanchez Gual  <lluis@ximian.com>
289
290         * TemplateControlCompiler.cs: Fixed build for net_1_0 profile.
291
292 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
293
294         * GlobalAsaxCompiler.cs: removed Imports and Assemblies properties.
295
296 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
297
298         * AspGenerator.cs: error out when <object> server tag is not closed.
299         Ignore any content inside it.
300
301 2004-02-10  Jackson Harper <jackson@ximian.com>
302
303         * AspTokenizer.cs: Collect discarded characters that might be used
304         in client side scripts. Patch by Liyu Liu.
305         * AspParser.cs: Add discarded characters. Patch by Liyu Liu.
306         
307 2004-02-10  Jackson Harper <jackson@ximian.com>
308
309         * BaseCompiler.cs: Use the TempDirectory for compilation. Fixes
310         bug #54117.
311         
312 2004-01-30  Jackson Harper <jackson@ximian.com>
313
314         * TemplateControlCompiler.cs: Call ToString on the types hashcode,
315         the build method takes strings not ints.
316         
317 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
318
319         * AspGenerator.cs: handle more possible errors in global.asax file.
320
321         * BaseCompiler.cs: added utility methods for creating <object> related
322         properties and fields.
323
324         * GlobalAsaxCompiler.cs: keep around applications and session scope
325         objects builders. Also a list of imports and assemblies added in
326         global.asax.
327
328         * TemplateControlCompiler.cs: use base class methods for <object> stuff.
329
330 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
331
332         * AspGenerator.cs: use the Cache to store compiled Types. Don't parse
333         pages more than once. Thanks to Eric Lindvall for pointing this out.
334
335 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
336
337         * TemplateControlCompiler.cs: allow handling subproperties for other
338         types than Style and Font. Fixes bug #53217.
339
340 2004-01-16  Jackson Harper <jackson@ximian.com>
341
342         * TagAttribute.cs: attributes can be stored as encoded html so we
343         decode them here.
344         
345 2004-01-14  Jackson Harper <jackson@ximian.com>
346
347         * TemplateControlCompiler.cs: Is a user control is cached and
348         shared use the controls type hashcode for the GUID so it will be
349         the same across instances.
350         
351 2004-01-13  Jackson Harper <jackson@ximian.com>
352         
353         * TemplateControlCompiler.cs: If an item has the partial caching
354         attribute build a PartialCachingControl in the parents __Build method.
355         * BaseCompiler.cs: Add a method for adding class attributes to the
356         class.
357         * UserControlCompiler.cs: If caching is enabled on a user control
358         add the PartialCachingAttribute to it.
359         
360 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
361
362         * PageCompiler.cs: invoke Request.ValidateInput if required.
363
364 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
365
366         * AspGenerator.cs: don't rely on GC to close the files parsed. Fixes bug
367         #52521. Patch by liyul@hotmail.com.
368
369 2003-12-25  Jackson Harper <jackson@ximian.com>
370
371         * AspGenerator.cs: Allow scriptlets in javascript. This fixes bug
372         #52522.
373         
374 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
375
376         * PageCompiler.cs: assign the ErrorPage property if provided.
377
378 2003-12-15  Jackson Harper <jackson@ximian.com>
379
380         * PageCompiler.cs: Add Trace and TraceMode to framework initialize
381         method if they are set.
382         
383 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
384
385         * AspGenerator.cs: ignore <tbody> when we're inside a server table and
386         fail when runat="server" is applied to <tbody> with a parse error
387         instead of waiting for a compilation error. Fixes bug #52157.
388
389 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
390
391         * AspGenerator.cs: basic checking of ID validity.  Throw a
392         ParseException when mixing languages.
393
394 2003-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
395
396         * PageCompiler.cs: assign LCID, Culture and/or UICulture in
397         FrameworInitialize() if provided in @Page.
398
399         Fixes bug #51511.
400
401 2003-11-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
402
403         * TemplateControlCompiler.cs: support for expressions of
404         System.Drawing.Size type. Allow getting Color from comma separated
405         numbers, which is not allowed by ColorConverter.
406
407         This makes http://www.codeproject.com/aspnet/asppopup.asp work.
408
409 2003-11-13  Jackson Harper <jackson@ximian.com>
410
411         * PageCompiler.cs: Call InitOutputCache when the OutputCache
412         directive is set.
413         
414 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
415
416         * AspGenerator.cs: use fileEncoding from configuration files.
417
418         * PageCompiler.cs: add assign statements for ContentType,
419         ResponseEncoding and CodePage if supplied.
420
421 2003-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
422
423         * TemplateControlCompiler.cs: fix bug #42994. Now we don't generate
424         a return statement for user controls with 'void' return type.
425
426 2003-10-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
427
428         * AspParser.cs: fixed bug #49627.
429
430 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
431
432         * BaseCompiler.cs: now gets the CodeCompiler from configuration files.
433
434 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
435
436         * Directive.cs: new attribute for @Page directive in 1.1.
437
438 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
439
440         * AspParser.cs:
441         * TagAttributes.cs: allow duplicated runat=server attributes and display
442         error page when duplicated attributes and runat is specified.
443
444 2003-10-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
445
446         * AspTokenizer.cs: moved token numbers above unicode.
447
448 2003-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
449
450         * AspGenerator.cs: don't process code render tags inside scripts. Check
451         the language of the script and treat javascript as verbatim input.
452         Fixes bug #48592.
453
454 2003-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
455
456         * TemplateControlCompiler.cs: fixed bug #48212.
457
458 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
459
460         * WebServiceCompiler.cs: remove the temporary files here too.
461
462 2003-08-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
463
464         * AspGenerator.cs: fixed bug #46429.
465
466 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
467
468         * Directive.cs: support @WebHandler.
469         
470 2003-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
471
472         * TemplateControlCompiler.cs: support string []. Fixes bug #46415.
473
474 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
475
476         * BaseCompiler.cs: first look for cached items, then generate the tree.
477         This should speed things up.
478
479         * CachingCompiler.cs: when compiling web services, use the full path of
480         the .asmx file as key when caching.
481
482         * WebServiceCompiler.cs: first look for cached items, then generate
483         the source file.
484
485 2003-07-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
486
487         * AspParser.cs: more useful error information,
488
489         * BaseCompiler.cs:
490         * CachingCompiler.cs: honor the debug="true" option.
491
492         * TemplateControlCompiler.cs: small fixes for templates.
493
494 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
495
496         * BaseCompiler.cs: made Compiler property virtual.
497
498         * CachingCompiler.cs: added support for compiling web services.
499
500         * WebServiceCompiler.cs: implemented.
501
502 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
503
504         * CachingCompiler.cs: fixed bug #43477.
505
506 2003-05-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
507
508         * AspParser.cs:
509         * AspTokenizer.cs: fixed bugs #43206 and #43371.
510
511 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
512
513         * TemplateControlCompiler.cs: duh! Generate SupportAutoEvents instead
514         of AutoEventWireup (which is internal). Thanks to Stuart Ballard for
515         reporting.
516
517 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
518
519         * CompilationException.cs: don't add duplicated lines in the case that
520         mcs reports several errors for the same one.
521
522 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
523
524         * AspGenerator.cs: fully support including files, ie., treat them just
525         as C treats #includes.
526
527 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
528
529         * AspGenerator.cs:
530         * AspParser.cs:
531         * TagType.cs: Added support for server side includes.
532
533 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
534
535         * CSCompiler.cs: actually add the list of referenced assemblies to the
536         compiler options. Throw a CompilationException if there's an error.
537
538         * CachingCompiler.cs: added a method to compile directly from a source
539         file.
540         
541 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
542
543         * AspGenerator.cs: copy the location before setting the value for the
544         control builders.
545
546         * BaseCompiler.cs: changed parameters for CompilationException.
547
548         * CompilationException.cs: it takes now line numbers and error
549         descriptions from the CompilerErrorCollection.
550
551         * Location.cs: used when a copy of an ILocation is needed.
552
553         * ParseException.cs: implemented new methods to provide line numbers
554         and souce file.
555
556         * TemplateControlCompiler.cs: throw a ParseException where appropiate.
557
558 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
559
560         * AspGenerator.cs: also support data bind syntax inside tags not
561         processed as controls. Added debugging method.
562
563         * TemplateControlCompiler.cs: reset the number of data binding handlers 
564         in the proper place. Small fix when getting the container type.
565
566 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
567
568         * TemplateControlCompiler.cs: correctly set the TemplateSourceDirectory 
569         value.
570
571 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
572
573         * AspGenerator.cs: handle code render syntax in tag attributes.
574
575         * AspParser.cs: the constructor now takes a TextReader.
576
577         * TemplateControlCompiler.cs: removed comment.
578
579 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
580
581         * TemplateControlCompiler.cs: added support for data bound properties.
582
583 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
584
585         * AspComponentFoundry.cs: simplified it a lot by using Type and Assembly
586         instead of their names.
587
588         * AspElements.cs: removed. No longer needed.
589
590         * AspGenerator.cs: this file is now in charge of interfacing between
591         the parser and the compiler. It manages the creation of the
592         ControlBuilder tree and the compilation of the CodeDOM tree.
593
594         * AspParser.cs: tag handling is simpler now.  Instead of a whole bunch
595         of different Types, tags are just and id and a set of attributes.
596         Implement ILocation interface.
597         
598         * AspTokenizer.cs: added a few methods to help the parser implementing
599         ILocation.
600
601         * BaseCompiler.cs: handles the portions of the CodeDOM tree that are
602         common to appliaction, page and user control, including the actual
603         compilation and error handling.
604
605         * CSCompiler.cs: compiles C# files using CodeDOM interfaces.
606
607         * CachingCompiler.cs: simplified to use the new interfaces.
608
609         * CompilationException.cs: it's now using CompilationResult to report
610         errors.
611
612         * CompilationResult.cs: Removed file.
613
614         * Directive.cs: to check for the validity of a directive.
615
616         * GlobalAsaxCompiler.cs: simplified a lot, as most of the work is done
617         in BaseCompiler.
618
619         * ILocation.cs: interface used to now the exact place where a parse
620         error happens.
621
622         * PageCompiler.cs: generates a couple of methods that are only used in
623         pages.
624
625         * ParseException.cs: use the ILocation interface.
626
627         * TagAttributes.cs: handles the attributes of the tags parsed.
628
629         * TagType.cs: an enum for the different kinds of tags.
630
631         * TemplateControlCompiler.cs: this is the one that does most of the
632         conversion from teh ControlBuilder tree into a CodeDOM tree.
633
634         * UserControlCompiler.cs: simplified as most of the work is done in
635         its base classes.
636
637         * WebServiceCompiler.cs: dummy.
638
639 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
640
641         * AspComponentFoundry.cs: added GetComponentType method.
642
643 2003-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
644
645         * AspTokenizer.cs: allow quotes inside server tags that are part of
646         attribute values.
647         
648         * CachingCompiler.cs: no more 'FileNotFound' exceptions when the
649         compilation fails.
650
651 2003-03-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
652
653         * AspGenerator.cs: generate correct appbase path. It was working with
654         mcs but not with csc.
655
656         * BaseCompiler.cs: quote arguments and removed GetRandomFileName.
657
658         * CachingCompiler.cs: quote source file.
659
660 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
661
662         * AspGenerator.cs: now the Inherits attribute works as expected for
663         global.asax file.
664
665 2003-03-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
666
667         * CompilationException.cs:
668         * ParseException.cs: display the correct line number in error messages.
669
670         * AspElements.cs: added TargetSchema attribute for control. It's
671         ignored.
672
673 2003-03-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
674
675         * BaseCompiler.cs: fixed the hack to work under windows.
676         * CachingCompiler.cs: under windows, try 'mcs.bat' and then 'mcs'.
677
678 2003-03-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
679
680         * BaseCompiler.cs: hacks to work-around our buggy System.Uri.
681
682 2003-03-17 George Kodinov <gkodinov@openlinksw.co.uk>
683
684         * BaseCompiler.cs: Removed a FIXME: and added a correct calculation of
685         app's private bin path
686
687 2003-03-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
688
689         * AspGenerator.cs:
690         * BaseCompiler.cs:
691         * CachingCompiler.cs:
692         * CompilationResult.cs:
693         * GlobalAsaxCompiler.cs:
694         * PageCompiler.cs:
695         * UserControlCompiler.cs: recompile the page if dependencies change.
696
697 2003-02-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
698
699         * AspGenerator.cs: corrected typo and wrong fix.
700
701 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
702
703         * AspGenerator.cs: fixed code generation for Table/TableRow/TableCell
704         when used explicitly.
705
706 2003-02-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
707
708         * AspElements.cs: get the property Type for controls that use
709         ParseChildren with a property name.
710
711         * AspGenerator.cs: generate correct signature for the method that
712         adds controls to the default property in ParseChildren.
713
714 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
715
716         * AspGenerator.cs: rethrow exceptions that may come from parsing or 
717         compilation if a user control.
718
719 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
720
721         * AspGenerator.cs: throw ParseException on parse
722         error.
723
724         * AspParser.cs: added Line and Column props.
725
726         * CompilationException.cs: derives now from HtmlizedException.
727
728         * CompilationResult.cs: added fileName field.  Fixed set_ExitCode.
729
730         * GlobalAsaxCompiler.cs:
731         * PageCompiler.cs:
732         * UserControlCompiler.cs: pass the file name in the CompilationResult.
733
734         * ParseException.cs: new exception.
735
736
737 2003-02-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
738
739         * AspGenerator.cs: remove "file://" from the private bin path. Fixes
740         bug #37628.
741
742 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
743
744         * AspParser.cs: the parser fires events when it parses an element.
745
746         * GlobalAsaxCompiler.cs:
747         * PageCompiler.cs:
748         * UserControlCompiler.cs:
749         * AspElements.cs: modified to use the new parser interface.
750
751         * AspGenerator.cs: modified to use the new parser. Merge multiple text
752         strings into one single LiteralControl.
753
754         * AspTokenizer.cs: added Line and Column properties.
755
756 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
757
758         * AspParser.cs: fixed bug #36929.
759
760 2003-01-21  Tim Haynes <thaynes@openlinksw.com>
761
762         * AspGenerator.cs:
763         * BaseCompiler.cs:
764         * CachingCompiler.cs: changes to work around spaces and
765         directory-separators in the local filesystem.
766
767 2003-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
768
769         * AspGenerator.cs: make the generated file compile with csc after last
770         change.
771
772 2003-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
773
774         * AspGenerator.cs: removed unused variable. Added support for
775         properties/fields of type string [].
776
777 2003-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
778
779         * AspGenerator.cs: modified loading of the parent type now that
780         Type.GetType is fixed.
781
782 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
783
784         * AspGenerator.cs: cast to Control if the container does not implement
785         INamingContainer.
786
787 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
788
789         * AspGenerator.cs: fixed a couple of thinkos related to IsSubclassOf.
790
791 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
792
793         * AspElements.cs: attributes without value lacked a space afterwards.
794
795 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
796
797         * AspGenerator.cs: functions for columns don't return anything. Fixed
798         typo.
799
800 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
801
802         * AspGenerator.cs: add data bound controls to code render function.
803
804 2003-01-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
805
806         * AspComponentFoundry.cs: reworked to allow same prefix for multiple
807         controls. You can register 1 assembly plus any number of user controls
808         under the same prefix.
809
810         * AspGenerator.cs: don't add duplicate 'using' for the same namespace.
811         Hack to allow @Register access to assemblies in other places than bin
812         directory.
813
814 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
815
816         * AspElements.cs: added 'codebehind' attribute for page, control and
817         application. It's ignored by MS, but allowed. Fixed typo.
818
819 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
820
821         * AspGenerator.cs: fixed EnableSesssionState handling.
822
823 2003-01-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
824
825         * AspGenerator.cs: don't generate instance fields for pages/controls
826         when the base class specified in the Inherits attribute already has
827         them. Closes bug #36262.
828
829 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
830
831         * AspGenerator.cs: generate code like 'control.XXX = value' also for
832         public fields (properties were being handled in that way too).
833
834 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
835
836         * AspGenerator.cs: now it uses the current HttpContext when creating
837         user controls. TemplateSourceDirectory is no longer a dummy value.
838
839         * GlobalAsaxCompiler.cs:
840         * PageCompiler.cs:
841         * UserControlCompiler.cs: set the context which will be used to locate
842         the files.
843         
844 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
845
846         * AspGenerator.cs: added support for AutoEventWireup attribute in
847         @Page and @Control.
848
849         * CompilationResult.cs:
850         * GlobalAsaxCompiler.cs:
851         * PageCompiler.cs:
852         * UserControlCompiler.cs: store the options.
853
854 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
855
856         * AspElements.cs: new method Tag.GetElements
857         used to parse the inner contents of a tag looking for data binding or 
858         code render tags.
859         
860         New property HtmlControlTag.ParseChildren allows
861         differentiation of a couple of HtmlControls that has children as
862         properties (namely HtmlTable and HtmlTableRow).
863
864         * AspGenerator.cs: fixed container semantics to
865         match BindingContainer one. Implemented Inherits attribute for page and
866         control.
867
868         Support HtmlControls that has ChildrenAsProperties.
869         
870         Generate code for data binding functions that matches the semantic of
871         Container.
872
873         Handle data bound and code render attribute values.
874
875         Set proper value return for TemplateSourceDirectory. Should be relative
876         to appPath.
877         
878         * BaseCompiler.cs: moved CompilerOptions and
879         References handling here.
880
881         * CachingCompiler.cs: copy result of compilation.
882
883         * CompilationException.cs: simple ToString () implementation.
884
885         * CompilationResult.cs: implemented CopyFrom and ToString.
886
887         * GlobalAsaxCompiler.cs:
888         * PageCompiler.cs:
889         * UserControlCompiler.cs: removed CompilerOptions as it's now handled
890         in the base class. Get all the types in the generated assembly and
891         look for one that derives from the correct Type.
892         
893 2002-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
894
895         * AspElements.cs: added @Application directive.
896
897         * AspGenerator.cs: make it work also with application files. We
898         currently generate an extra private function.
899
900 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
901
902         * GlobalAsaxCompiler.cs: compiler for global.asax file. If the file
903         exists, it will be compiled into an HttpApplication derived class
904         (directly or through a user-provided class).
905
906 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
907
908         * AspGenerator.cs: fixed target file name and generated class name.
909         * BaseCompiler.cs: reference assemblies in PrivateBinPath.
910
911 2002-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
912
913         * AspGenerator.cs: reworked user control
914         compilation. Provide the options as a Hashtable for use in compilation.
915         Create the user controls in the private bin path of the domain.
916
917         * BaseCompiler.cs: base class for the various compiler types.
918
919         * CachingCompiler.cs: actually executes mcs and do some poor caching
920         (it will use Cache when finished).
921
922         * CompilationException.cs: this exception has enough information to
923         generate a nice error page.
924         * CompilationResult.cs: used in caching.
925
926         * PageCompiler.cs: now derives from BaseCompiler
927
928         * TemplateFactory.cs: no longer needed.
929
930         * UserControlCompiler.cs: new class used when compiling user controls.
931         * WebServiceCompiler.cs: derives from BaseCompiler.
932
933 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
934
935         * AspElements.cs: added ServerComment class.
936         * AspParser.cs: ignore ServerComments tags. Remove server comments when 
937         in verbatim mode.
938
939         Fixes #33482.
940
941         * PageCompiler.cs: check if the type is already cached before generating
942         the C# file.
943         * TemplateFactory.cs: if csFile parameter is null, only checks if we
944         already have the page compiled.
945
946 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
947
948         * AspGenerator.cs: undo one-liner change.
949
950 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
951
952         * AspGenerator.cs: removed a few hacks no longer needed.
953
954 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
955
956         * PageCompiler.cs: tracing.
957         * TemplateFactory.cs: cache compiled types and tracing.
958         * WebServiceCompiler.cs: new parameter in GetTypeFromsource,
959
960 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
961
962         * AspComponentFoundry.cs: fixed typo.
963         * TemplateFactory.cs: use csc style options.
964         * AspGenerator.cs: don't use FileDependencies property of base class.
965
966 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
967
968         * System.Web.Compilation/AspElements.cs:
969         * System.Web.Compilation/AspGenerator.cs:
970         * System.Web.Compilation/AspParser.cs:
971         * System.Web.Compilation/PageCompiler.cs:
972         * System.Web.Compilation/TemplateFactory.cs: we are now able to compile
973         pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
974
975 2002-09-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
976
977         * AspElements.cs: added WebService directive.
978         * WebServiceCompiler.cs: New file.
979
980 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
981
982         * PageCompiler.cs: fixed compilation.
983
984 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
985
986         * PageCompiler.cs: generate C# file using AspGenerator.
987
988 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
989
990         * AspComponentFoundry.cs: LookupFoundry now returns bool.
991         * AspGenerator.cs: New file.
992
993 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
994
995         * AspComponentFoundry.cs: New file.
996         * AspElements.cs: renamed Component to Aspcomponent.
997
998 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
999
1000         * AspElements.cs:
1001         * AspParser.cs:
1002         * AspTokenizer.cs:
1003         * ChangeLog:
1004         * PageCompiler.cs:
1005         * TemplateFactory.cs: first steps to move xsp into System.Web.
1006