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