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