2006-12-18 Marek Sieradzki <marek.sieradzki@gmail.com>
[mono.git] / mcs / class / Microsoft.Build.Engine / Microsoft.Build.BuildEngine / ChangeLog
1 2006-12-18  Marek Sieradzki  <marek.sieradzki@gmail.com>
2
3         * BuildItemGroup.cs (Clone): Throw exception.
4
5         * Project.cs (Load): Throw InvalidProjectFileException if anything
6         goes wrong.
7
8 2006-12-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
9
10         * ItemReference.cs: Avoid KeyNotFoundException in ConvertToString ()
11         and ConvertToITaskItemArray ().
12
13 2006-12-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
14
15         * ItemPropertyGroupingBase.cs, TaskEngineAssemblyResolver.cs: Removed
16         classes that were public in Beta 2 and aren't used.
17
18         * Expression.cs: Added replacement for parsing expressions char by
19         char. It uses regexes to find item/property/metadata references in
20         given text.
21
22         * ExpressionCollection.cs, BuildTask.cs, ConditionFactorExpression.cs,
23         Target.cs, TaskEngine.cs, BuildItemGroup.cs, UsingTask.cs, Import.cs,
24         BuildItem.cs, BatchingImpl.cs, BuildProperty.cs: Track API changes.
25
26         * ConditionRelationalExpression.cs: Formatting.
27
28         * OldExpression.cs: Commented everything.
29
30         * MetadataReference.cs, ItemReference.cs, PropertyReference.cs: Moved
31         parsing to Expression.
32
33         * BuildItem.cs: Check if project is from XML in set_Condition and
34         set_Exclude.
35
36         * BuildPropertyGroup.cs, Project.cs: Add ImportedProject to
37         Project.ctor.
38
39         * ConditionNotExpression.cs, ConditionAndExpression.cs: Check if we
40         can evaluate expression in CanEvaluateToBool ().
41
42 2006-12-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
43
44         * BuildItemGroup.cs (ctor): Add reference to ImportedProject from
45         which item group is imported.
46
47         * BuildItem.cs, Project.cs: Use new BuildItemGroup.ctor ().
48
49 2006-12-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
50
51         * BuildWhen.cs, BuildPropertyGroupCollection.cs,
52         BuildItemGroupCollection.cs: Little changes related to
53         GroupingCollection.
54
55         * ImportCollection.cs: Use GroupingCollection not an internal list.
56
57         * Import.cs (Evaluate): Split to functions and check if
58         EvaluatedProjectPath is empty.
59
60         * GroupingCollection.cs, Project.cs: Move evaluation to
61         GroupingCollection. Change algorithm to use 2 passes: first for property
62         groups and imports and second for item groups.
63
64 2006-12-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
65
66         * TaskEngine.cs, ItemReference.cs: Use IDictionary <string,
67         BuildItemGroup> not IDictionary.
68
69         * BuildItemGroup.cs, BuildItem.cs: Evaluate even if condition was
70         evaluated to false because we want to add every item to
71         Project.EvaluatedItemsByNameIgnoringCondition.
72
73         * Project.cs (Build): Don't throw an exception just return false.
74         (GetEvaluatedProperty): Avoid NullReferenceException.
75         (SetProjectExtensions): Implemented.
76
77 2006-12-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
78
79         * TaskElement.cs, Xml.cs, ProcessingPass.cs: Removed.
80
81         * Utilities.cs, HostLogger.cs, Target.cs, TaskDatabase.cs,
82         BuildItemGroup.cs, BuildPropertyGroup.cs, TargetCollection.cs,
83         Engine.cs, GroupingCollection.cs, Project.cs: Reformatted.
84         
85         * ImportCollection.cs: Added a note.
86
87 2006-12-07  Marek Sieradzki  <marek.sieradzki@gmail.com>
88
89         * BuildTask.cs: Implemented AddOutputItem () and AddOutputProperty ().
90
91         * UsingTaskCollection.cs: Removed [MonoTODO] and used CopyTo in CopyTo
92         (UsingTask[] array, int index)
93
94         * TaskEngine.cs: Reformatted PublishOutput () and added copying of
95         items to Project.EvaluatedItems in PublishItemGroup ();
96
97         * BuildItemGroup.cs: Added [MonoTODO].
98
99         * UsingTask.cs: Used expression for AssemblyFile to get around
100         problems with '\' and '/'.
101
102         * BuildItem.cs (ctor): Added null checks.
103         (GetMetadata): Return unevaluatedMetadata not evaluatedMetadata.
104         (SetMetadata): Don't escape evaluatedMetadata and escape
105         unevaluatedMetadata only when treatPropertyValueAsLiteral.
106
107         * BuildPropertyGroup.cs (GetEnumerator, Evaluate, RemoveProperty): Use
108         FromXml () instead of null checks.
109         (SetProperty): Escape propertyValue when it is literal.
110
111         * BuildProperty.cs: Changed exception message.
112
113         * Project.cs: Added XmlNamespaceManager and XmlNamespace internal
114         properties.
115         (GetProjectExtensions): Implemented.
116
117 2006-12-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
118
119         * BuildTask.cs: Remove [MonoTODO], add exception throwing in
120         GetParameterValue (), use expressions in ContinueOnError.
121         * ConditionFactorException.cs: Throw InvalidProjectFileException ()
122         instead of InvalidOperationException ().
123         * ImportCollection.cs: Implement CopyTo ().
124         * Target.cs: Remove redundant variables (XmlAttributes), return
125         String.Empty in DependsOnTargets, add a null check in RemoveTask ().
126         * BuildItemGroup.cs, BuildPropertyGroup.cs: Remove [MonoTODO].
127         * Import.cs: Throw an exception when file does not exist.
128         * Target.cs: Use StringComparer.InvariantCultureIgnoreCase.
129         * ConditionTokenizer.cs: Treat '-' as beginning of a number. We'll
130         need to treat item as a token probably
131
132 2006-12-04  Marek Sieradzki  <marek.sieradzki@gmail.com>
133
134         * Import.cs: Check for project.FullFileName (Path.DirectoryName would
135         throw an exception).
136         * BuildItemGroupCollection.cs: Changed exception types.
137
138 2006-10-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
139
140         * Engine.cs: Removed redundant cast.
141         * BuildWhen.cs:
142         * UsingTaskCollection.cs:
143         * ImportCollection:
144         * BuildChoose.cs:
145         * BuildItem.cs:
146         * TargetCollection.cs: Comment unused variable.
147         * ConditionTokenizer.cs: Simplified checking if current token is a
148         keyword.
149         * Target.cs: Removed old code.
150
151 2006-10-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
152
153         * Target.cs: Changed "" to String.Empty.
154         * TaskEngine.cs: Don't try to convert a parameter to specific type if
155         string was evaluated to String.Empty.
156         * InternalLoggerException.cs:
157         * InvalidProjectFileException.cs: Added LinkDemand before
158         GetObjectData ().
159         * ConsoleLogger.cs: Changed "" to String.Empty.
160         * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
161         with change to generics).
162         * Project.cs: Made Build () throw more meaningful exception.
163
164 2006-10-06  Marek Sieradzki  <marek.sieradzki@gmail.com>
165
166         * Target.cs: Reformatted.
167         * TaskEngine.cs: Removed redundant code.
168         * BuildPropertyGroup.cs: Fixed Clear () and AddNewProperty ().
169         * Engine.cs: Made BuildProjectFile () load project file if it's not
170         loaded yet.
171
172 2006-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
173
174         * ConditionRelationalExpression.cs: Change comparers to case
175         insensitive.
176         * ImportCollection.cs: Add NotImplementedExceptions.
177         * BuildPropertyGroup.cs: Reformatted a bit.
178         * BuildProperty.cs: The same.
179         * Project.cs: Moved evaluation of imports before evaluation of
180         properties. This may "work" until importing projects is redesigned but
181         probably isn't correct.
182
183 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
184
185         * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements
186         (like comments)
187         * BuildItemGroup.cs: Change return to continue.
188
189 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
190
191         * ConditionParser.cs: Copyright note.
192         * ExpressionCollection.cs: Fixed arrays passing.
193
194 2006-08-06  Marek Sieradzki  <marek.sieradzki@gmail.com>
195
196         * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs,
197         Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs,
198         BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs,
199         TargetCollection.cs, Engine.cs, Project.cs: Started to use generics.
200
201 2006-06-25  Marek Sieradzki  <marek.sieradzki@gmail.com>
202
203         * Token.cs: Changed names: removed "than".
204         * ConditionRelationalExpression.cs: Added.
205         * ConditionFactorExpression.cs: Added.
206         * BuildItemGroup.cs: Changed Condition property return value to return
207         String.Empty instead of null.
208         * ConditionParser.cs: Added support for parsing relational expressions
209         and factors.
210         * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of
211         abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate ()
212         and CanEvaluateToBool (), CanEvaluateToNumber () and
213         CanEvaluateToString ().
214         * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed
215         appropriately to ConditionExpression base class.
216         * ConditionTokenizer.cs: Added null check and changed names in enums:
217         removed "than".
218         * ConditionNotExpression.cs: Added.
219         * BatchingImpl.cs: Changed to use BoolEvaluate ().
220         * Project.cs: Added checks for condition.
221
222 2006-06-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
223
224         * ConditionalTokenizer.cs, ConditionalExpression.cs,
225         ConditionalParser.cs: Changed name,
226         removed -al.
227         * ConditionExpression.cs: Added Evaluate ().
228         * ConditionOrExpression.cs, ConditionAndExpression.cs: Added.
229         * BatchingImpl.cs: Added check if task should be executed.
230
231 2006-06-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
232
233         * UsingTask.cs: Changed properties to return null on empty attribute.
234         * UsingTaskCollection.cs: Added object to SyncRoot.
235         * BuildPropertyGroup.cs: Added NotImplementedException throwing.
236
237 2006-06-02  Marek Sieradzki  <marek.sieradzki@gmail.com>
238
239         * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs,
240         BuildPropertyGroupCollection.cs: Fixed to match the tests.
241
242 2006-05-27  Marek Sieradzki  <marek.sieradzki@gmail.com>
243
244         * Utilities.cs: Implemented Escape ().
245         * BuildItem.cs: Added null checks.
246         * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property.
247         * Project.cs: Commented out redundant Evaluate ().
248         * BuildChoose.cs: Minor changes.
249
250 2006-05-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
251
252         * Token: Added new few missing tokens.
253         * Target.cs, Project.cs: Patch from Matthew Metnesky.
254         * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs,
255         ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs,
256         ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs,
257         LiteralTokenizer.cs:
258         Removed literal expression parsing based on tokenizer and
259         parser. It needs to be done by regex.
260         
261         Moved tokenizer to ConditionalTokenizer.cs.
262
263 2006-05-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
264
265         * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs,
266         ItemReference.cs, PropertyReference.cs: Changed name of *Reference
267         methods converting reference to string from ToString () to
268         ConvertToString () to avoid mistakes like using ToString () provided
269         by default.
270
271 2006-05-03  Marek Sieradzki  <marek.sieradzki@gmail.com>
272
273         * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs,
274         Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs,
275         PropertyReference.cs, BuildProperty.cs: Changed Expression to
276         OldExpression and changed To* functions to one ConvertTo ().
277         * TaskEngine.cs: Fixed PublishOutput ().
278         * OldExpression.cs: Added. It will be temporarily used before
279         LiteralExpression will be written using Tokenizer.
280         * Tokenizer.cs, Token.cs, ExpressionCollection.cs,
281         ExpressionParseException.cs, LiteralExpression.cs: Added.
282
283 2006-04-24  Marek Sieradzki  <marek.sieradzki@gmail.com>
284
285         * ImportedProject.cs: Removed warning.
286         * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of
287         default tasks.
288
289 2006-04-24  Marek Sieradzki  <marek.sieradzki@gmail.com>
290
291         * Project.cs: Removed unnecessary variable.
292         * Engine.cs: Added fixme.
293
294 2006-04-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
295
296         * BuildItem.cs: Moved checking if metadata name is reserved to internal
297         class (Mono.XBuild.Utilities.ReservedNameUtils).
298                 
299 2006-04-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
300
301         * BuildTask.cs: Removed unnecessary variable.
302         * Engine.cs: Added logging of the build start.
303         * Project.cs: Removed unnecessary variable.
304
305 2006-04-07  Marek Sieradzki  <marek.sieradzki@gmail.com>
306
307         * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed.
308
309 2006-03-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
310
311         * BuildItem.cs, BuildItemGroup.cs: Coding style fixes.
312
313 2006-03-29  Crestez Leonard  <cdleonard@gmail.com>
314         
315         * BuildItem.cs: Fix typo?
316
317 2006-03-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
318
319         * InternalLoggerException.cs, InvalidProjectFileException.cs,
320         Engine.cs, Project.cs: Coding style fixes.
321
322 2006-03-29  Crestez Leonard  <cdleonard@gmail.com>
323         
324         * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items.
325
326 2006-03-29  Crestez Leonard  <cdleonard@gmail.com>
327         
328         * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed
329         to pass tests. Wrote serialization constructor.
330         * Engine.cs, Project.cs: Global engine and project unloading, test and
331         formatting fixes.
332
333 2006-03-28  Marek Sieradzki  <marek.sieradzki@gmail.com>
334
335         * UsingTask.cs: Formatting changes.
336
337 2006-03-27  Crestez Leonard  <cdleonard@gmail.com>
338
339         * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched
340         to lists instead of hashtables.
341         * Import.cs: Cleaned up, moved importing from Project.cs
342         * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes.
343         * Engine.cs: Cleaned up properties.
344         * Project.cs: Moved importing to Import.cs, cleaned up properties,
345         Separated evaluation and loading.
346         
347 2006-03-21  Crestez Leonard  <cdleonard@gmail.com>
348
349         * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs,
350         BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs,
351         Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml
352         binding and evaluation, merge xml binding in constructors.
353         * DirectoryScanner.cs: Includes CAN be empty.
354         * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF.
355         * ConsoleLogger.cs: Fix compilation warning.
356
357 2006-03-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
358
359         * BuildPropertyGroup.cs, Expression.cs: Coding style fixed.
360
361 2006-03-18  Marek Sieradzki  <marek.sieradzki@gmail.com> 
362
363         * Engine.cs: API cleanup.
364
365 2006-03-18  Crestez Leonard  <cdleonard@gmail.com>
366
367         * Project.cs: Cleaned up add.
368         * Expression.cs: Hacked to transform \ and / to path separators.
369         * BuildPropertyGroup.cs: Small cleanup.
370         * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project
371         reference.
372         
373 2006-03-11  Marek Sieradzki  <marek.sieradzki@gmail.com> 
374
375         * BatchingImpl.cs: Updated with BuildTask instead of TaskElement.
376         * BuildItem.cs: Updated for new API and fixed crashing on non-existent
377         files.
378         * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs,
379         BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs,
380         Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new
381         API.
382         * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items.
383         * TaskElement.cs: Temporarily removed.
384         * Xml.cs: Changed to static.
385
386 2006-02-26  Marek Sieradzki  <marek.sieradzki@gmail.com>
387
388         * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs,
389         IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs,
390         ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs,
391         IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs,
392         ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs,
393         IBuildPropertyGroupCollection.cs: Removed.
394
395 2006-02-26  Marek Sieradzki  <marek.sieradzki@gmail.com> 
396
397         * BuildItem.cs: Removed IBuildItem references.
398         * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and
399         IBuildItemGroup references. Changed Evaluate to internal.
400         * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection
401         reference and hidden constructors.
402         * BuildProperty.cs: Removed IBuildProperty reference.
403         * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and
404         IBuildPropertyGroup references. Changed Evaluate to internal.
405         * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection
406         reference and hidden constructors.
407         * ConsoleLogger.cs: Updated names of event handlers.
408         * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and
409         Escape. Added UnloadAllProjects () and UnloadProject ().
410         * FileLogger.cs: Removed ApplyParameter ().
411         * GroupingCollection.cs: Hidden.
412         * InvalidProjectFileException.cs: Removed HasBeenLogged property.
413         * ItemPropertyGroupingBase.cs: Commented.
414         * ProcessingPass.cs: Hidden.
415         * Project.cs: Removed IProject reference. Changed CurrentEncoding to
416         Encoding.
417         * Target.cs: Removed ITarget reference.
418         * TargetCollection.cs: Removed ITargetCollection reference.
419         * TaskElement.cs: Removed ITaskElement reference.
420         * TaskEngineAssemblyResolver.cs: Hidden.
421         * Utilities.cs: Made static class, removed CheckPath (),
422         ValidateCulture (), GetSupportedCultures () and added Escape ().
423
424 2006-02-24  Marek Sieradzki <marek.sieradzki@gmail.com> 
425
426         * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new
427         API.
428
429 2005-09-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
430
431         * Project.cs: Added MonoTODO attributes.
432         * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs,
433         ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs,
434         IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs,
435         BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs,
436         SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs,
437         BuildItemGroup.cs, InvalidProjectFileException.cs,
438         BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs,
439         Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs,
440         PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs,
441         ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs,
442         IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs,
443         IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs,
444         ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs,
445         ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs,
446         IBuildItemGroup.cs, BuildProperty.cs, Engine.cs,
447         IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs,
448         BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs,
449         ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0.
450
451 2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
452
453         * TaskDatabase.cs: Change Shared to Framework.
454         * BuildPropertyGroup.cs, Project.cs: Remove obsoleted
455         CaseInsensitiveHashCodeProvider
456
457 2005-09-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
458
459         * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName.
460         * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved
461         property.
462
463 2005-09-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
464
465         * InternalLoggerException.cs: Changed protected fields to private.
466
467 2005-09-03  Marek Sieradzki  <marek.sieradzki@gmail.com>
468
469         * Engine.cs: Added check for globalProperties.
470         * Project.cs: Added using path from importedProject.FullFileName when
471         adding UsingTask elements.
472
473 2005-09-01  Marek Sieradzki  <marek.sieradzki@gmail.com>
474
475         * TaskElement.cs: Changed ReflectedType to PropertyType.
476         * ChangeType.cs (TransformToString): Changed to pass proper Type to
477         TemporaryTransform. 
478
479 2005-09-01  Marek Sieradzki  <marek.sieradzki@gmail.com>
480
481         * BuildPropertyGroup.cs: Added check for PropertyType when adding a
482         new property.
483         * BuildProperty.cs: Organized PropertyType enum.
484         * Engine.cs: Added setting CommandLine PropertyType of global
485         properties.
486
487 2005-08-31  Marek Sieradzki  <marek.sieradzki@gmail.com>
488
489         * InvalidProjectFileException.cs: Changed Message property.
490         * ChangeType.cs (TransformToString): Added separator between items.
491         * TaskEngineAssemblyResolver.cs: Formatting.
492
493 2005-08-31  Marek Sieradzki  <marek.sieradzki@gmail.com>
494
495         * DirectoryScanner.cs: Added.
496         * BuildItem.cs: Moved file scanning code to DirectoryScanner.
497         * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression.
498         * Project.cs: Removed Evalute* ().
499
500 2005-08-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
501
502         * Target.cs: Formatting.
503         * Expression.cs: Added check if array == null.
504         * BuildItem.cs: Removed 'break' to remove warnings.
505         * ConsoleLogger.cs: Formatting.
506         * Engine.cs: Added handling of default target(s).
507         * Project.cs: Added handling of default target(s).
508
509 2005-08-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
510
511         * TaskElement.cs: Added check for parameters.
512         * Target.cs: Added logging of target skipping.
513         * Expression.cs: Changed returning object[] to string[], bool[]... in
514         ToArray ().
515         * ItemReference.cs: Fixed for item references without custom
516         separators.
517         * BatchingImpl.cs: Added real inputs/outputs checking.
518         * Engine.cs: Moved global properties setting.
519         * Project.cs: Moved global properties setting.
520
521 2005-08-27  Marek Sieradzki  <marek.sieradzki@gmail.com>
522
523         * Target.cs: Added checks for target existence.
524         * BuildItemGroup.cs: Changed to use transforms.
525         * MetadataReference.cs: Wrote real implementation.
526         * ItemReference.cs: Rewritten to use transforms.
527         * BuildItem.cs: Changes for transforms and metadata.
528         * ConsoleLogger.cs: Added verbosity checking and fixed error/warning
529         formatting.
530         * Project.cs: Fixed project importing.
531         * ImportedProject.cs: Changed to throw exceptions instead of returning
532         bool.
533
534 2005-08-24  Marek Sieradzki  <marek.sieradzki@gmail.com>
535
536         * Engine.cs: Removed FIXME.
537         * Project.cs: Splitted ProcessElements and added project importing.
538         * ImportedProject.cs: Rewritten.
539
540 2005-08-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
541
542         * TaskElement.cs: Added getting of objects of every type.
543         * BuildItemGroup.cs: Added ToITaskItemArray ().
544         * Expression.cs: Implemented part that is not using metadata.
545         * ItemReference.cs: Implemented parsing item references. Need to fix
546         validity checking.
547         * BuildItem.cs: Fixed ToITaskItem ().
548         * PropertyReference.cs: Implemented parsing property references. This
549         also needs validity checking.
550
551 2005-08-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
552
553         * TaskElement.cs: Added Output element handling.
554         * Target.cs: Cleaned up.
555         * BuildItemGroup.cs: Added creating BuildItem from TaskItem.
556         * Expression.cs, MetadataReference.cs, PropertyReference.cs,
557         ItemReference.cs, ChangeType.cs: Added.
558         * BuildItem.cs: Added creating BuildItem from TaskItem.
559         * BuildPropertyGroup.cs: Small changes.
560         * BatchingImpl.cs: Fixed to return real task execution result.
561         * BuildProperty.cs: Fixed FinalValue property.
562         * Engine.cs: Reformatted logging.
563         * Project.cs: Added check to EvaluateProperty.
564
565 2005-08-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
566
567         * TaskElement.cs: Added part of execution engine.
568         * BuildEngine.cs: Added handling of TaskStarted and TaskFinished.
569         * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement.
570         * EventSource.cs: Added FireTaskStarted and FireTaskFinished.
571         * BuildItem.cs: Added handling of built-in metadata and referencing
572         Items by name not FullName.
573         * BatchingImpl.cs: Added temporary task "batching".
574         * ConsoleLogger.cs: Added temporary workaround to not show sender.
575         * Project.cs: Added Evaluate. It will be moved to separate class.
576
577 2005-08-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
578
579         * EventSource.cs, Engine.cs: Added CriticalEvents.
580         * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs,
581         Project.cs: Added some support for items.
582         * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up.
583
584 2005-08-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
585
586         * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading
587         of properties.
588
589 2005-08-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
590
591         * BatchingImpl.cs: Added.
592         * BuildWhen.cs, BuildEngine.cs, Target.cs,
593         BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs,
594         BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs,
595         TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs,
596         GroupingCollection.cs: Updated.
597
598 2005-08-06  Marek Sieradzki  <marek.sieradzki@gmail.com>
599
600         * BuildChoose.cs, BuildEngine.cs, BuildItem.cs,
601         BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs,
602         BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs,
603         BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs,
604         EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs,
605         GroupingCollection.cs, HostLogger.cs, ImportedProject.cs,
606         InternalLoggerException.cs, InvalidProjectFileException.cs,
607         ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs,
608         ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs,
609         TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs,
610         TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs:
611         Initial check-in of implementations.
612
613 2005-07-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
614
615         * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs,
616         IBuildItemGroupCollection.cs, IBuildProperty.cs,
617         IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs,
618         ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs,
619         IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs,
620         IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs:
621         Initial check-in of interfaces and a syntax file, real classes are
622         changing a lot so I'll wait a moment with checking them in.