2007-02-03 Marek Sieradzki <marek.sieradzki@gmail.com>
[mono.git] / mcs / class / Microsoft.Build.Engine / Microsoft.Build.BuildEngine / ChangeLog
index 0335788f7da958fc3c2d3b70b89d900ca19ffadb..6a200589c039e6c60d7b0881831642ae0978b8dc 100644 (file)
@@ -1,3 +1,176 @@
+2007-02-03  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildPropertyGroup (SetProperty): Throw an exception when trying to
+       set property in persisted property group.
+
+2007-01-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildTask.cs (Execute): Log errors that happen when invoking ITask
+       .ctor.
+
+       * ConsoleLogger.cs (TargetFinishedHandler)
+       (TaskFinishedHandler): Increment error count.
+
+2007-01-28  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItem.cs (RemoveMetadata): Remove from XML.
+       (SetMetadata): Trigger project reevaluation.
+
+2007-01-26  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildPropertyGroup.cs (SetProperty): Made it work with persisted
+       properties.
+
+2007-01-23  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildTask.cs, ConditionFactorExpression.cs, Target.cs,
+       TaskEngine.cs, UsingTask.cs, ItemReference.cs, BuildItem.cs,
+       BatchingImpl.cs, BuildProperty.cs: Track API changes.
+
+       * Expression.cs (Parse): Added allowItems parameter and made regexes
+       static.
+
+       * Import.cs (Evaluate): Moved hack from tools/xbuild/Makefile here. It
+       will try to import a.ext when given a.EXT.
+
+2007-01-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItemGroup.cs: Store information saying what is the last item
+       group that contains build item name.
+
+       * Project.cs (Build): Pass empty array (build default targets).
+
+2007-01-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * Token.cs: Commented Transform and LiteralSubExpression and added
+       FunctionName token.
+
+       * ConditionParser.cs: Removed redundant casts, rewrote
+       ParseFactorExpression () and added parsing of '!'.
+
+       * ConditionTokenizer.cs: Always skip whitespaces when getting next
+       token (no IgnoreWhiteSpace property). Don't create a token from '->'.
+       Moved ReadChar () in front of all ifs.
+
+2007-01-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItem.cs (SetMetadata): Escape when we get virtual item or item
+       from XML. (not to escape items that have parents twice).
+
+2007-01-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItemGroup.cs (AddNewItem): Add XML and mark project as dirty.
+       (Project): Renamed to ParentProject.
+
+       * BuildItem.cs (ctor)
+       (CopyCustomMetadata): Add null check.
+
+       * BuildPropertyGroup.cs (AddNewProperty): Reorganized.
+       (RemoveProperty): Added null check.
+
+       * TargetCollection.cs (RemoveTarget): Added null check.
+
+       * Engine.cs (UnloadProject): Added null check.
+
+       * GroupingCollection.cs (Remove): Check if removed group belongs to
+       current project.
+
+       * Project.cs (AddNewItem): Implemented.
+       (RemoveItem): Reorganized.
+       (SetProjectExtensions): Added null check.
+
+2007-01-14  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItemGroup.cs (Detach): Added.
+       (RemoveItem)
+       (RemoveItemAt): Used Detach ().
+
+       * BuildItem.cs: Made FromXml and HasParent internal and added
+       ParentItem and ParentItemGroup properties (internal).
+       (Detach): Added.
+
+       * GroupingCollection.cs (Remove): Used Detach ().
+
+       * Project.cs (ctor): Added PreserveWhitespace = false to get formatted
+       text on Save ().
+       (GetEvaluatedItemsByNameIgnoringCondition)
+       (GetEvaluatedItemsByName)
+       (GetEvaluatedProperty): Reevaluate if needed.
+       (RemoveItem)
+       (RemoveAllItemGroups)
+       (RemoveAllPropertyGroups): Implemented.
+       (DoLoad): Added closing of TextReader.
+
+2007-01-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildPropertyGroup.cs: Don't trigger reevaluation just after a
+       change but just mark that it needs it.
+
+       * Project.cs: Reevaluate when it needs reevaluation and one of
+       Evaluated* properties is used.
+
+2007-01-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * Target.cs: Throw an exception when <OnError> is not last element in
+       target.
+
+       * BuildPropertyGroup.cs (RemoveProperty): Remove from XML.
+
+       * TargetCollection.cs: If a target is already there replace it with
+       new target.
+
+       * BuildProperty.cs: Added XmlElement property.
+
+2007-01-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * ImportCollection.cs: Don't add imports that are already added.
+
+       * BuildItemGroup.cs: MonoTODOs.
+
+       * ConditionParser.cs (ParseAndEvaluate): Throw an exception when
+       condition can't be evaluated to bool.
+
+       * BuildPropertyGroup.cs (Evaluate): Simplify.
+
+2007-01-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildWhen.cs: Moved BindToXml () code to ctor.
+
+       * BuildItemGroup.cs, BuildPropertyGroup.cs: Added XmlElement internal
+       property needed for removing groups.
+
+       * Engine.cs: Added StartBuild () that logs build start when Build ()
+       was first called.
+
+       * GroupingCollection.cs: Added Remove () for item and property groups.
+
+       * Project.cs (AddNewImport): Implemented.
+       (AddNewItemGroup): Implemented.
+       (AddNewPropertyGroup): Implemented.
+       (AddNewUsingTaskFromAssemblyFile): Implemented.
+       (AddNewUsingTaskFromAssemblyName): Implemented.
+       (RemoveItemGroup): Implemented.
+       (RemovePropertyGroup): Implemented.
+
+2007-01-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * BuildItemGroup.cs (Clear): Remove from XML.
+
+       * BuildPropertyGroup.cs (AddNewProperty): Use right namespace and add
+       to Project.EvaluatedProperties.
+       (Clear): Remove from XML.
+
+2007-01-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * Project.cs (InitializeProperties): Added $(MSBuildProjectDirectory)
+       reserved property.
+
+2007-01-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
+
+       * GroupingCollection.cs: Use 2 iterators: add_iterator that is used by
+       Add () calls when processing a project from Import and
+       evaluate_iterator for evaluation.
+
 2007-01-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
 
        * Import.cs (GetFullPath): Avoid exceptions from Path.GetDirectoryName