1 2007-01-16 Marek Sieradzki <marek.sieradzki@gmail.com>
3 * BuildItem.cs (SetMetadata): Escape when we get virtual item or item
4 from XML. (not to escape items that have parents twice).
6 2007-01-16 Marek Sieradzki <marek.sieradzki@gmail.com>
8 * BuildItemGroup.cs (AddNewItem): Add XML and mark project as dirty.
9 (Project): Renamed to ParentProject.
12 (CopyCustomMetadata): Add null check.
14 * BuildPropertyGroup.cs (AddNewProperty): Reorganized.
15 (RemoveProperty): Added null check.
17 * TargetCollection.cs (RemoveTarget): Added null check.
19 * Engine.cs (UnloadProject): Added null check.
21 * GroupingCollection.cs (Remove): Check if removed group belongs to
24 * Project.cs (AddNewItem): Implemented.
25 (RemoveItem): Reorganized.
26 (SetProjectExtensions): Added null check.
28 2007-01-14 Marek Sieradzki <marek.sieradzki@gmail.com>
30 * BuildItemGroup.cs (Detach): Added.
32 (RemoveItemAt): Used Detach ().
34 * BuildItem.cs: Made FromXml and HasParent internal and added
35 ParentItem and ParentItemGroup properties (internal).
38 * GroupingCollection.cs (Remove): Used Detach ().
40 * Project.cs (ctor): Added PreserveWhitespace = false to get formatted
42 (GetEvaluatedItemsByNameIgnoringCondition)
43 (GetEvaluatedItemsByName)
44 (GetEvaluatedProperty): Reevaluate if needed.
47 (RemoveAllPropertyGroups): Implemented.
48 (DoLoad): Added closing of TextReader.
50 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
52 * BuildPropertyGroup.cs: Don't trigger reevaluation just after a
53 change but just mark that it needs it.
55 * Project.cs: Reevaluate when it needs reevaluation and one of
56 Evaluated* properties is used.
58 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
60 * Target.cs: Throw an exception when <OnError> is not last element in
63 * BuildPropertyGroup.cs (RemoveProperty): Remove from XML.
65 * TargetCollection.cs: If a target is already there replace it with
68 * BuildProperty.cs: Added XmlElement property.
70 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
72 * ImportCollection.cs: Don't add imports that are already added.
74 * BuildItemGroup.cs: MonoTODOs.
76 * ConditionParser.cs (ParseAndEvaluate): Throw an exception when
77 condition can't be evaluated to bool.
79 * BuildPropertyGroup.cs (Evaluate): Simplify.
81 2007-01-10 Marek Sieradzki <marek.sieradzki@gmail.com>
83 * BuildWhen.cs: Moved BindToXml () code to ctor.
85 * BuildItemGroup.cs, BuildPropertyGroup.cs: Added XmlElement internal
86 property needed for removing groups.
88 * Engine.cs: Added StartBuild () that logs build start when Build ()
91 * GroupingCollection.cs: Added Remove () for item and property groups.
93 * Project.cs (AddNewImport): Implemented.
94 (AddNewItemGroup): Implemented.
95 (AddNewPropertyGroup): Implemented.
96 (AddNewUsingTaskFromAssemblyFile): Implemented.
97 (AddNewUsingTaskFromAssemblyName): Implemented.
98 (RemoveItemGroup): Implemented.
99 (RemovePropertyGroup): Implemented.
101 2007-01-10 Marek Sieradzki <marek.sieradzki@gmail.com>
103 * BuildItemGroup.cs (Clear): Remove from XML.
105 * BuildPropertyGroup.cs (AddNewProperty): Use right namespace and add
106 to Project.EvaluatedProperties.
107 (Clear): Remove from XML.
109 2007-01-09 Marek Sieradzki <marek.sieradzki@gmail.com>
111 * Project.cs (InitializeProperties): Added $(MSBuildProjectDirectory)
114 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
116 * GroupingCollection.cs: Use 2 iterators: add_iterator that is used by
117 Add () calls when processing a project from Import and
118 evaluate_iterator for evaluation.
120 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
122 * Import.cs (GetFullPath): Avoid exceptions from Path.GetDirectoryName
123 and prepend relative directory of importing project to full path of
126 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
128 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
129 BuildItemGroupCollection.cs, Project.cs: Track API changes.
131 * GroupingCollection.cs: Now it needs Project reference so added it.
133 * BuildTask.cs: Formatting.
135 * InvalidProjectFileException.cs: Use MS' names in GetObjectData ().
137 * ConditionParser.cs (ParseAndEvaluate): Added.
139 * BuildItem.cs: Changed exception message.
141 2007-01-02 Marek Sieradzki <marek.sieradzki@gmail.com>
143 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
144 BuildItemGroupCollection.cs, Project.cs, GroupingCollection.cs:
145 GroupingCollection doesn't need Project reference.
147 * BuildTask.cs, Target.cs, TaskEngine.cs, BatchingImpl.cs: Formatting
149 * BuildItemGroup.cs: Added new readOnly parameter to ctor.
150 (Project.EvaluatedItems is a read only item group.)
151 (ReplaceWith): Added.
153 * BuildPropertyGroup.cs (IsGlobal): Added. Setting a property in
154 global property group causes reevaluation of its project.
156 * Project.cs: ProcessXml () is internal and can be "safely" invoked by
159 * OldExpression.cs: Removed.
161 * BuildProperty.cs (Evaluate): Simplified.
163 * ChangeType.cs (TemporaryTransform): Simplified.
165 * BuildItem.cs: There are now 3 types of build items: from XML, having
166 parent from XML, virtual. Added SplitParentItem ().
168 2006-12-20 Marek Sieradzki <marek.sieradzki@gmail.com>
170 * Utilities.cs: Added Unescape ().
172 * BuildItemGroup.cs, BuildItem.cs: Pass null project to
173 BuildItem.Evaluate () to "evaluate" virtual items added to virtual item
174 groups (at the moment just unescape).
176 * Expression.cs (CopyToExpressionList): Unescape strings.
178 2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com>
180 * Target.cs (ctor): Added ImportedProject argument and removed
182 (AddNewTask): Implemented.
184 * TargetCollection.cs (AddNewTarget): Implemented.
186 * Project.cs: Track API changes.
188 2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com>
190 * Target.cs (Build): Don't throw anything in case of error, just
193 * BuildItemGroup.cs (set_Condition): Throw an exception if group is
196 * BuildItem.cs: More meaningfull messages in RemoveMetadata () and
199 * BuildProperty.cs (ToString): Throw an exception if property is not
201 (op_Explicit): Added a null check.
203 * Engine.cs: Better error message.
205 * BuildItemGroupCollection.cs (CopyTo): Changed ArgumentException to
206 IndexOutOfRangeException.
208 * Project.cs (DoLoad, Load): Move try/catch to DoLoad ().
209 (MarkProjectAsDirty): Set time.
211 2006-12-18 Marek Sieradzki <marek.sieradzki@gmail.com>
213 * BuildItemGroup.cs (Clone): Throw exception.
215 * Project.cs (Load): Throw InvalidProjectFileException if anything
218 2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com>
220 * ItemReference.cs: Avoid KeyNotFoundException in ConvertToString ()
221 and ConvertToITaskItemArray ().
223 2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com>
225 * ItemPropertyGroupingBase.cs, TaskEngineAssemblyResolver.cs: Removed
226 classes that were public in Beta 2 and aren't used.
228 * Expression.cs: Added replacement for parsing expressions char by
229 char. It uses regexes to find item/property/metadata references in
232 * ExpressionCollection.cs, BuildTask.cs, ConditionFactorExpression.cs,
233 Target.cs, TaskEngine.cs, BuildItemGroup.cs, UsingTask.cs, Import.cs,
234 BuildItem.cs, BatchingImpl.cs, BuildProperty.cs: Track API changes.
236 * ConditionRelationalExpression.cs: Formatting.
238 * OldExpression.cs: Commented everything.
240 * MetadataReference.cs, ItemReference.cs, PropertyReference.cs: Moved
241 parsing to Expression.
243 * BuildItem.cs: Check if project is from XML in set_Condition and
246 * BuildPropertyGroup.cs, Project.cs: Add ImportedProject to
249 * ConditionNotExpression.cs, ConditionAndExpression.cs: Check if we
250 can evaluate expression in CanEvaluateToBool ().
252 2006-12-12 Marek Sieradzki <marek.sieradzki@gmail.com>
254 * BuildItemGroup.cs (ctor): Add reference to ImportedProject from
255 which item group is imported.
257 * BuildItem.cs, Project.cs: Use new BuildItemGroup.ctor ().
259 2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com>
261 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
262 BuildItemGroupCollection.cs: Little changes related to
265 * ImportCollection.cs: Use GroupingCollection not an internal list.
267 * Import.cs (Evaluate): Split to functions and check if
268 EvaluatedProjectPath is empty.
270 * GroupingCollection.cs, Project.cs: Move evaluation to
271 GroupingCollection. Change algorithm to use 2 passes: first for property
272 groups and imports and second for item groups.
274 2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com>
276 * TaskEngine.cs, ItemReference.cs: Use IDictionary <string,
277 BuildItemGroup> not IDictionary.
279 * BuildItemGroup.cs, BuildItem.cs: Evaluate even if condition was
280 evaluated to false because we want to add every item to
281 Project.EvaluatedItemsByNameIgnoringCondition.
283 * Project.cs (Build): Don't throw an exception just return false.
284 (GetEvaluatedProperty): Avoid NullReferenceException.
285 (SetProjectExtensions): Implemented.
287 2006-12-08 Marek Sieradzki <marek.sieradzki@gmail.com>
289 * TaskElement.cs, Xml.cs, ProcessingPass.cs: Removed.
291 * Utilities.cs, HostLogger.cs, Target.cs, TaskDatabase.cs,
292 BuildItemGroup.cs, BuildPropertyGroup.cs, TargetCollection.cs,
293 Engine.cs, GroupingCollection.cs, Project.cs: Reformatted.
295 * ImportCollection.cs: Added a note.
297 2006-12-07 Marek Sieradzki <marek.sieradzki@gmail.com>
299 * BuildTask.cs: Implemented AddOutputItem () and AddOutputProperty ().
301 * UsingTaskCollection.cs: Removed [MonoTODO] and used CopyTo in CopyTo
302 (UsingTask[] array, int index)
304 * TaskEngine.cs: Reformatted PublishOutput () and added copying of
305 items to Project.EvaluatedItems in PublishItemGroup ();
307 * BuildItemGroup.cs: Added [MonoTODO].
309 * UsingTask.cs: Used expression for AssemblyFile to get around
310 problems with '\' and '/'.
312 * BuildItem.cs (ctor): Added null checks.
313 (GetMetadata): Return unevaluatedMetadata not evaluatedMetadata.
314 (SetMetadata): Don't escape evaluatedMetadata and escape
315 unevaluatedMetadata only when treatPropertyValueAsLiteral.
317 * BuildPropertyGroup.cs (GetEnumerator, Evaluate, RemoveProperty): Use
318 FromXml () instead of null checks.
319 (SetProperty): Escape propertyValue when it is literal.
321 * BuildProperty.cs: Changed exception message.
323 * Project.cs: Added XmlNamespaceManager and XmlNamespace internal
325 (GetProjectExtensions): Implemented.
327 2006-12-05 Marek Sieradzki <marek.sieradzki@gmail.com>
329 * BuildTask.cs: Remove [MonoTODO], add exception throwing in
330 GetParameterValue (), use expressions in ContinueOnError.
331 * ConditionFactorException.cs: Throw InvalidProjectFileException ()
332 instead of InvalidOperationException ().
333 * ImportCollection.cs: Implement CopyTo ().
334 * Target.cs: Remove redundant variables (XmlAttributes), return
335 String.Empty in DependsOnTargets, add a null check in RemoveTask ().
336 * BuildItemGroup.cs, BuildPropertyGroup.cs: Remove [MonoTODO].
337 * Import.cs: Throw an exception when file does not exist.
338 * Target.cs: Use StringComparer.InvariantCultureIgnoreCase.
339 * ConditionTokenizer.cs: Treat '-' as beginning of a number. We'll
340 need to treat item as a token probably
342 2006-12-04 Marek Sieradzki <marek.sieradzki@gmail.com>
344 * Import.cs: Check for project.FullFileName (Path.DirectoryName would
346 * BuildItemGroupCollection.cs: Changed exception types.
348 2006-10-14 Marek Sieradzki <marek.sieradzki@gmail.com>
350 * Engine.cs: Removed redundant cast.
352 * UsingTaskCollection.cs:
356 * TargetCollection.cs: Comment unused variable.
357 * ConditionTokenizer.cs: Simplified checking if current token is a
359 * Target.cs: Removed old code.
361 2006-10-08 Marek Sieradzki <marek.sieradzki@gmail.com>
363 * Target.cs: Changed "" to String.Empty.
364 * TaskEngine.cs: Don't try to convert a parameter to specific type if
365 string was evaluated to String.Empty.
366 * InternalLoggerException.cs:
367 * InvalidProjectFileException.cs: Added LinkDemand before
369 * ConsoleLogger.cs: Changed "" to String.Empty.
370 * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
371 with change to generics).
372 * Project.cs: Made Build () throw more meaningful exception.
374 2006-10-06 Marek Sieradzki <marek.sieradzki@gmail.com>
376 * Target.cs: Reformatted.
377 * TaskEngine.cs: Removed redundant code.
378 * BuildPropertyGroup.cs: Fixed Clear () and AddNewProperty ().
379 * Engine.cs: Made BuildProjectFile () load project file if it's not
382 2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
384 * ConditionRelationalExpression.cs: Change comparers to case
386 * ImportCollection.cs: Add NotImplementedExceptions.
387 * BuildPropertyGroup.cs: Reformatted a bit.
388 * BuildProperty.cs: The same.
389 * Project.cs: Moved evaluation of imports before evaluation of
390 properties. This may "work" until importing projects is redesigned but
391 probably isn't correct.
393 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
395 * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements
397 * BuildItemGroup.cs: Change return to continue.
399 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
401 * ConditionParser.cs: Copyright note.
402 * ExpressionCollection.cs: Fixed arrays passing.
404 2006-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
406 * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs,
407 Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs,
408 BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs,
409 TargetCollection.cs, Engine.cs, Project.cs: Started to use generics.
411 2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com>
413 * Token.cs: Changed names: removed "than".
414 * ConditionRelationalExpression.cs: Added.
415 * ConditionFactorExpression.cs: Added.
416 * BuildItemGroup.cs: Changed Condition property return value to return
417 String.Empty instead of null.
418 * ConditionParser.cs: Added support for parsing relational expressions
420 * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of
421 abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate ()
422 and CanEvaluateToBool (), CanEvaluateToNumber () and
423 CanEvaluateToString ().
424 * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed
425 appropriately to ConditionExpression base class.
426 * ConditionTokenizer.cs: Added null check and changed names in enums:
428 * ConditionNotExpression.cs: Added.
429 * BatchingImpl.cs: Changed to use BoolEvaluate ().
430 * Project.cs: Added checks for condition.
432 2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com>
434 * ConditionalTokenizer.cs, ConditionalExpression.cs,
435 ConditionalParser.cs: Changed name,
437 * ConditionExpression.cs: Added Evaluate ().
438 * ConditionOrExpression.cs, ConditionAndExpression.cs: Added.
439 * BatchingImpl.cs: Added check if task should be executed.
441 2006-06-14 Marek Sieradzki <marek.sieradzki@gmail.com>
443 * UsingTask.cs: Changed properties to return null on empty attribute.
444 * UsingTaskCollection.cs: Added object to SyncRoot.
445 * BuildPropertyGroup.cs: Added NotImplementedException throwing.
447 2006-06-02 Marek Sieradzki <marek.sieradzki@gmail.com>
449 * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs,
450 BuildPropertyGroupCollection.cs: Fixed to match the tests.
452 2006-05-27 Marek Sieradzki <marek.sieradzki@gmail.com>
454 * Utilities.cs: Implemented Escape ().
455 * BuildItem.cs: Added null checks.
456 * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property.
457 * Project.cs: Commented out redundant Evaluate ().
458 * BuildChoose.cs: Minor changes.
460 2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com>
462 * Token: Added new few missing tokens.
463 * Target.cs, Project.cs: Patch from Matthew Metnesky.
464 * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs,
465 ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs,
466 ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs,
468 Removed literal expression parsing based on tokenizer and
469 parser. It needs to be done by regex.
471 Moved tokenizer to ConditionalTokenizer.cs.
473 2006-05-05 Marek Sieradzki <marek.sieradzki@gmail.com>
475 * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs,
476 ItemReference.cs, PropertyReference.cs: Changed name of *Reference
477 methods converting reference to string from ToString () to
478 ConvertToString () to avoid mistakes like using ToString () provided
481 2006-05-03 Marek Sieradzki <marek.sieradzki@gmail.com>
483 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs,
484 Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs,
485 PropertyReference.cs, BuildProperty.cs: Changed Expression to
486 OldExpression and changed To* functions to one ConvertTo ().
487 * TaskEngine.cs: Fixed PublishOutput ().
488 * OldExpression.cs: Added. It will be temporarily used before
489 LiteralExpression will be written using Tokenizer.
490 * Tokenizer.cs, Token.cs, ExpressionCollection.cs,
491 ExpressionParseException.cs, LiteralExpression.cs: Added.
493 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
495 * ImportedProject.cs: Removed warning.
496 * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of
499 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
501 * Project.cs: Removed unnecessary variable.
502 * Engine.cs: Added fixme.
504 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
506 * BuildItem.cs: Moved checking if metadata name is reserved to internal
507 class (Mono.XBuild.Utilities.ReservedNameUtils).
509 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
511 * BuildTask.cs: Removed unnecessary variable.
512 * Engine.cs: Added logging of the build start.
513 * Project.cs: Removed unnecessary variable.
515 2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com>
517 * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed.
519 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
521 * BuildItem.cs, BuildItemGroup.cs: Coding style fixes.
523 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
525 * BuildItem.cs: Fix typo?
527 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
529 * InternalLoggerException.cs, InvalidProjectFileException.cs,
530 Engine.cs, Project.cs: Coding style fixes.
532 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
534 * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items.
536 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
538 * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed
539 to pass tests. Wrote serialization constructor.
540 * Engine.cs, Project.cs: Global engine and project unloading, test and
543 2006-03-28 Marek Sieradzki <marek.sieradzki@gmail.com>
545 * UsingTask.cs: Formatting changes.
547 2006-03-27 Crestez Leonard <cdleonard@gmail.com>
549 * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched
550 to lists instead of hashtables.
551 * Import.cs: Cleaned up, moved importing from Project.cs
552 * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes.
553 * Engine.cs: Cleaned up properties.
554 * Project.cs: Moved importing to Import.cs, cleaned up properties,
555 Separated evaluation and loading.
557 2006-03-21 Crestez Leonard <cdleonard@gmail.com>
559 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs,
560 BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs,
561 Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml
562 binding and evaluation, merge xml binding in constructors.
563 * DirectoryScanner.cs: Includes CAN be empty.
564 * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF.
565 * ConsoleLogger.cs: Fix compilation warning.
567 2006-03-19 Marek Sieradzki <marek.sieradzki@gmail.com>
569 * BuildPropertyGroup.cs, Expression.cs: Coding style fixed.
571 2006-03-18 Marek Sieradzki <marek.sieradzki@gmail.com>
573 * Engine.cs: API cleanup.
575 2006-03-18 Crestez Leonard <cdleonard@gmail.com>
577 * Project.cs: Cleaned up add.
578 * Expression.cs: Hacked to transform \ and / to path separators.
579 * BuildPropertyGroup.cs: Small cleanup.
580 * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project
583 2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com>
585 * BatchingImpl.cs: Updated with BuildTask instead of TaskElement.
586 * BuildItem.cs: Updated for new API and fixed crashing on non-existent
588 * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs,
589 BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs,
590 Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new
592 * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items.
593 * TaskElement.cs: Temporarily removed.
594 * Xml.cs: Changed to static.
596 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
598 * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs,
599 IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs,
600 ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs,
601 IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs,
602 ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs,
603 IBuildPropertyGroupCollection.cs: Removed.
605 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
607 * BuildItem.cs: Removed IBuildItem references.
608 * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and
609 IBuildItemGroup references. Changed Evaluate to internal.
610 * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection
611 reference and hidden constructors.
612 * BuildProperty.cs: Removed IBuildProperty reference.
613 * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and
614 IBuildPropertyGroup references. Changed Evaluate to internal.
615 * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection
616 reference and hidden constructors.
617 * ConsoleLogger.cs: Updated names of event handlers.
618 * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and
619 Escape. Added UnloadAllProjects () and UnloadProject ().
620 * FileLogger.cs: Removed ApplyParameter ().
621 * GroupingCollection.cs: Hidden.
622 * InvalidProjectFileException.cs: Removed HasBeenLogged property.
623 * ItemPropertyGroupingBase.cs: Commented.
624 * ProcessingPass.cs: Hidden.
625 * Project.cs: Removed IProject reference. Changed CurrentEncoding to
627 * Target.cs: Removed ITarget reference.
628 * TargetCollection.cs: Removed ITargetCollection reference.
629 * TaskElement.cs: Removed ITaskElement reference.
630 * TaskEngineAssemblyResolver.cs: Hidden.
631 * Utilities.cs: Made static class, removed CheckPath (),
632 ValidateCulture (), GetSupportedCultures () and added Escape ().
634 2006-02-24 Marek Sieradzki <marek.sieradzki@gmail.com>
636 * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new
639 2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com>
641 * Project.cs: Added MonoTODO attributes.
642 * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs,
643 ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs,
644 IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs,
645 BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs,
646 SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs,
647 BuildItemGroup.cs, InvalidProjectFileException.cs,
648 BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs,
649 Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs,
650 PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs,
651 ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs,
652 IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs,
653 IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs,
654 ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs,
655 ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs,
656 IBuildItemGroup.cs, BuildProperty.cs, Engine.cs,
657 IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs,
658 BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs,
659 ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0.
661 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
663 * TaskDatabase.cs: Change Shared to Framework.
664 * BuildPropertyGroup.cs, Project.cs: Remove obsoleted
665 CaseInsensitiveHashCodeProvider
667 2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com>
669 * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName.
670 * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved
673 2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com>
675 * InternalLoggerException.cs: Changed protected fields to private.
677 2005-09-03 Marek Sieradzki <marek.sieradzki@gmail.com>
679 * Engine.cs: Added check for globalProperties.
680 * Project.cs: Added using path from importedProject.FullFileName when
681 adding UsingTask elements.
683 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
685 * TaskElement.cs: Changed ReflectedType to PropertyType.
686 * ChangeType.cs (TransformToString): Changed to pass proper Type to
689 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
691 * BuildPropertyGroup.cs: Added check for PropertyType when adding a
693 * BuildProperty.cs: Organized PropertyType enum.
694 * Engine.cs: Added setting CommandLine PropertyType of global
697 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
699 * InvalidProjectFileException.cs: Changed Message property.
700 * ChangeType.cs (TransformToString): Added separator between items.
701 * TaskEngineAssemblyResolver.cs: Formatting.
703 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
705 * DirectoryScanner.cs: Added.
706 * BuildItem.cs: Moved file scanning code to DirectoryScanner.
707 * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression.
708 * Project.cs: Removed Evalute* ().
710 2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com>
712 * Target.cs: Formatting.
713 * Expression.cs: Added check if array == null.
714 * BuildItem.cs: Removed 'break' to remove warnings.
715 * ConsoleLogger.cs: Formatting.
716 * Engine.cs: Added handling of default target(s).
717 * Project.cs: Added handling of default target(s).
719 2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com>
721 * TaskElement.cs: Added check for parameters.
722 * Target.cs: Added logging of target skipping.
723 * Expression.cs: Changed returning object[] to string[], bool[]... in
725 * ItemReference.cs: Fixed for item references without custom
727 * BatchingImpl.cs: Added real inputs/outputs checking.
728 * Engine.cs: Moved global properties setting.
729 * Project.cs: Moved global properties setting.
731 2005-08-27 Marek Sieradzki <marek.sieradzki@gmail.com>
733 * Target.cs: Added checks for target existence.
734 * BuildItemGroup.cs: Changed to use transforms.
735 * MetadataReference.cs: Wrote real implementation.
736 * ItemReference.cs: Rewritten to use transforms.
737 * BuildItem.cs: Changes for transforms and metadata.
738 * ConsoleLogger.cs: Added verbosity checking and fixed error/warning
740 * Project.cs: Fixed project importing.
741 * ImportedProject.cs: Changed to throw exceptions instead of returning
744 2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com>
746 * Engine.cs: Removed FIXME.
747 * Project.cs: Splitted ProcessElements and added project importing.
748 * ImportedProject.cs: Rewritten.
750 2005-08-20 Marek Sieradzki <marek.sieradzki@gmail.com>
752 * TaskElement.cs: Added getting of objects of every type.
753 * BuildItemGroup.cs: Added ToITaskItemArray ().
754 * Expression.cs: Implemented part that is not using metadata.
755 * ItemReference.cs: Implemented parsing item references. Need to fix
757 * BuildItem.cs: Fixed ToITaskItem ().
758 * PropertyReference.cs: Implemented parsing property references. This
759 also needs validity checking.
761 2005-08-19 Marek Sieradzki <marek.sieradzki@gmail.com>
763 * TaskElement.cs: Added Output element handling.
764 * Target.cs: Cleaned up.
765 * BuildItemGroup.cs: Added creating BuildItem from TaskItem.
766 * Expression.cs, MetadataReference.cs, PropertyReference.cs,
767 ItemReference.cs, ChangeType.cs: Added.
768 * BuildItem.cs: Added creating BuildItem from TaskItem.
769 * BuildPropertyGroup.cs: Small changes.
770 * BatchingImpl.cs: Fixed to return real task execution result.
771 * BuildProperty.cs: Fixed FinalValue property.
772 * Engine.cs: Reformatted logging.
773 * Project.cs: Added check to EvaluateProperty.
775 2005-08-16 Marek Sieradzki <marek.sieradzki@gmail.com>
777 * TaskElement.cs: Added part of execution engine.
778 * BuildEngine.cs: Added handling of TaskStarted and TaskFinished.
779 * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement.
780 * EventSource.cs: Added FireTaskStarted and FireTaskFinished.
781 * BuildItem.cs: Added handling of built-in metadata and referencing
782 Items by name not FullName.
783 * BatchingImpl.cs: Added temporary task "batching".
784 * ConsoleLogger.cs: Added temporary workaround to not show sender.
785 * Project.cs: Added Evaluate. It will be moved to separate class.
787 2005-08-14 Marek Sieradzki <marek.sieradzki@gmail.com>
789 * EventSource.cs, Engine.cs: Added CriticalEvents.
790 * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs,
791 Project.cs: Added some support for items.
792 * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up.
794 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
796 * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading
799 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
801 * BatchingImpl.cs: Added.
802 * BuildWhen.cs, BuildEngine.cs, Target.cs,
803 BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs,
804 BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs,
805 TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs,
806 GroupingCollection.cs: Updated.
808 2005-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
810 * BuildChoose.cs, BuildEngine.cs, BuildItem.cs,
811 BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs,
812 BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs,
813 BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs,
814 EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs,
815 GroupingCollection.cs, HostLogger.cs, ImportedProject.cs,
816 InternalLoggerException.cs, InvalidProjectFileException.cs,
817 ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs,
818 ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs,
819 TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs,
820 TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs:
821 Initial check-in of implementations.
823 2005-07-16 Marek Sieradzki <marek.sieradzki@gmail.com>
825 * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs,
826 IBuildItemGroupCollection.cs, IBuildProperty.cs,
827 IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs,
828 ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs,
829 IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs,
830 IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs:
831 Initial check-in of interfaces and a syntax file, real classes are
832 changing a lot so I'll wait a moment with checking them in.