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