diff options
Diffstat (limited to 'mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog')
-rw-r--r-- | mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog | 1738 |
1 files changed, 0 insertions, 1738 deletions
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog deleted file mode 100644 index fccbf574399..00000000000 --- a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog +++ /dev/null @@ -1,1738 +0,0 @@ -2010-07-24 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Collect and dump timing information. - -2010-07-24 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Honor LoggerVerbosity.Quiet . - -2010-07-22 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Add support for parameter 'NoItemAndPropertyList'. - -2010-07-22 Ankit Jain <jankit@novell.com> - - * Project.cs: Add reserved properties MSBuildProjectFullPath - and MSBuildProjectExtension . - -2010-07-09 Ankit Jain <jankit@novell.com> - - Correctly handle precedence of ToolsVersion value coming - from various points. - * BuildEngine.cs (BuildProjectFile): Restore project.ToolsVersion . - * Engine.cs: Likewise. Also validate DefaultToolsVersion . - * Project.cs: Handle invalid tools version specified in the project - file, and fall back to engine's version. - * MSBuild.cs: Fix the precedence order, and validate. - * UnknownToolsVersionException.cs: New. - -2010-06-23 Ankit Jain <jankit@novell.com> - - * TargetBatchingImpl.cs (BuildTargetNeeded): Fix var names to - correctly reflect what they track. Log messages when skipping - or building a target. - -2010-06-04 Ankit Jain <jankit@novell.com> - - * Import.cs (EvaluateProjectPath): Add a hack to support multiple - msbuild extension paths. Paths can be specified via the environment - variable - $MSBuildExtensionsPath . ~/.config/xbuild/tasks is also - checked for extensions, besides the default location. - This explicitly looks for a "$(MSBuildExtensionsPath)" in the import - expression and tries to replace that with possible paths, till it - finds the file. In rest of the project, the property would resolve - to its single default value. - -2010-06-03 Ankit Jain <jankit@novell.com> - - * Engine.cs (GetLoadedProject): Return null if project not found. - Based on a patch by Dale Ragan <dale.ragan@sinesignal.com> . - -2010-05-28 Ankit Jain <jankit@novell.com> - - Fix bug #485841. - * DirectoryScanner.cs (ProcessInclude): Set %(RecursiveDir) only if - the '**' wildcard was found in the original Include. - -2010-04-10 Ankit Jain <jankit@novell.com> - - * Project.cs (InitializeProperties): Set MSBuildBinPath to the current - tools path. - -2010-04-10 Ankit Jain <jankit@novell.com> - - * TaskEngine.cs (Prepare): Throw InvalidProjectFileException instead of a generic - Exception. - -2010-04-10 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs (EventsToString): If the target being executed is - from an imported file, then show that. - -2010-04-10 Ankit Jain <jankit@novell.com> - - * Project.cs: Add property MSBuildExtensionsPath32, used by silverlight - projects. - -2010-04-07 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Dump items and properties when a project starts - to build. Useful for debugging. - * Engine.cs (LogProjectStarted): Set the properties and items also, - for the project started event. - * Project.cs (EvaluatedPropertiesAsDictionaryEntries): New. - (EvaluatedItemsByNameAsDictionaryEntries): New. Required for - ProjectStartedEvent . - -2010-04-03 Ankit Jain <jankit@novell.com> - - * BuildEngine.cs: Implement IBuildEngine2 instead of - IBuildEngine. - * BuildTasks.cs: Use the new extension methods for logging. - (InitializeTask): Emit a message informing about the assembly - from which the task is being loaded. Emit a useful debug message - incase of a InvalidCastException. - * Engine.cs: Add missing methods, constructors and properties related - to ToolsVersion support. Setup a default set of Toolsets. - Keep separate taskdbs' per ToolsVersion. The common tasks - would come from different *.tasks file, and use different - task assemblies. - (DefaultToolsVersion): Correctly set this based on the profile. - * LogExtensions.cs: New. Extension methods on Engine, for logging. - * Project.cs: Add missing methods/contructors/properties related - to ToolsVersion support. Add reserved properties - - MSBuildToolsPath and MSBuildToolsVersion . - * Toolset.cs: New. - * ToolsetCollection.cs: New. - * ToolsetDefinitionLocations.cs: New. - -2010-03-04 Ankit Jain <jankit@novell.com> - - * BuildEngine.cs (LogErrorEvent): Log as warning, if - ContinueOnError==true, and log a corresponding message. - * TargetBatchingImpl.cs: Refactor to share code between the - batched and unbatched case. If a task fails and - ContinueOnError==true, then ignore the failed state. - -2010-02-19 Ankit Jain <jankit@novell.com> - - * BuildItem.cs: Track api changes. - (SetMetadata): Allow RecursiveDir to be set, this is set by - DirectoryScanner. - * DirectoryScanner.cs (ProcessInclude): Set RecursiveDir metadata. - -2010-02-19 Ankit Jain <jankit@novell.com> - - * Import.cs (Evaluate): Add param @ignoreMissingImports. - * Project.cs (Load*): Add overloads with param @projectLoadSettings. - (Log*): Mark internal. - * ProjectLoadSettings.cs: New. - -2010-02-04 Ankit Jain <jankit@novell.com> - - Fix bug #576589. - * ConditionFunctionExpression.cs (Exists): Check for directory also. - -2009-12-22 Ankit Jain <jankit@novell.com> - - Fix bug #565849. - * DirectoryScanner.cs (Excludes): Change from string to ITaskItem[] . - * BuildItem.cs: Track api changes. - -2009-12-02 Ankit Jain <jankit@novell.com> - - Fix bug #559990. - * Engine.cs (UnloadAllProjects): Don't remove items from the collection - being iterated over. Patch by Laurent Etiemble - <laurent.etiemble@gmail.com> - -2009-11-28 Ankit Jain <jankit@novell.com> - - Fix bug #547753. - * BatchingImplBase.cs (DumpBucket*): New. Useful for debugging. - * Project.cs (Batch): New. Contains the perBatchItems and the - commonItems for the batch. - Use a stack of batches, instead of directly setting the current - batch items. - (PushBatch): New. - (PopBatch): New. - (SetBatchedItems): Make this private. - (GlobalProperties.set): Re-evaluating the project is not required - for this. - * TargetBatchingImpl.cs: Use the new Push/PopBatch instead of directly - setting the batches. - * TaskBatchingImpl.cs: Likewise. Refactor slightly to PopBatch in - finally block. - * Target.cs (Build): Reset the current batch to nil before evaluating - and building this target. - -2009-11-28 Ankit Jain <jankit@novell.com> - - * Project.cs (TryGetEvaluatedItemByNameBatched): Item could be - available in either perBatchItemsByName or commonItemsByName - or the evaluatedItemsByName collection. Allows the use of - items which are not batched, but are consumed in case of batching. - -2009-11-26 Ankit Jain <jankit@novell.com> - - * TargetBatchingImpl.cs (BuildTargetNeeded): Expand metadata - refs also, for Inputs and Outputs. - -2009-10-13 Ankit Jain <jankit@novell.com> - - * DirectoryScanner.cs: - * ExpressionCollection.cs: - * GroupingCollection.cs: - * Project.cs: - * Target.cs: Fix warnings. - -2009-10-12 Ankit Jain <jankit@novell.com> - - * Target.cs (TargetFile): New. Gives the name of the file - containing the target definition. - * BuildEngine.cs (.ctor): Add a 'taskfile' parameters, and - return this for ProjectFileOfTaskNode. - * BuildTask.cs (LogTaskStarted): - (LogTaskFinished): Use parentTarget.ProjectFileOfTaskNode for - the event. - (InitializeTask): Set BuildEngine's task file to parent target's - TargetFile. - * Engine.cs (LogProjectStarted): Incase of default targets, set - TargetNames to String.Empty . - * TargetBatchingImpl.cs (LogTargetStarted): - (LogTargetFinished): Use target.TargetFile for the event. - - * ConsoleLogger.cs: Keep a stack of project/target/task being - executed. And corresponding list of errors and warnings. - (EventsToString): Stringifies the current "stack", to be used - as key to the table of errors/warnings and for show messages - at the end of the build. - -2009-10-12 Ankit Jain <jankit@novell.com> - - * Project.cs (Load): Add argument checks. - -2009-10-11 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs (no_colors): Rename to .. - (use_colors): .. this. Fix the case when XBUILD_COLORS - is not set. - -2009-10-11 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Use ColorSetter and ColorResetter . - Support 'XBUILD_COLORS' to set colors for errors, warnings, - events and messages. - -2009-10-10 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs (ProjectFinishedHandler): Once projectFailed - becomes true, don't reset it. We are looking for "atleast one - project failed". - -2009-10-08 Ankit Jain <jankit@novell.com> - - * DirectoryScanner.cs: Use Path.GetPathRoot, instead of - directly using DirectoryInfo ("z:"), that doesn't return - a dir info for "z:". - -2009-10-08 Ankit Jain <jankit@novell.com> - - * DirectoryScanner.cs: Handle absolute paths. Fix to work - correctly on windows. Change order of adding paths to match - msbuild, useful to have. - -2009-10-08 Ankit Jain <jankit@novell.com> - - * TaskBatchingImpl.cs (ParseTaskAttributes): Parse attributes - of the 'Output' element also. - * TaskEngine.cs (PublishOutput): Honor condition on 'Output' also. - -2009-10-07 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Mark build as failed, if any project failed. - -2009-10-06 Ankit Jain <jankit@novell.com> - - * ConsoleLogger: Improve error reporting. Don't count failed task, - target or project as another error. Show "errors" after "warnings", - more useful to the user. - * Project.cs (BuildTarget): Log error instead of using CWL. - -2009-10-03 Ankit Jain <jankit@novell.com> - - * Project.cs (OS): New. - (InitializeProperties): Set 'OS' as a pre-defined property, set to - 'Windows_NT', 'Unix' or 'OSX' depending on the platform. - -2009-10-02 Ankit Jain <jankit@novell.com> - - * Expression.cs (Parse): Don't change '/' to '\\', not required. - -2009-10-01 Ankit Jain <jankit@novell.com> - - * Project.cs (AddImport): Show the correct source file name, when - the import is in the main project file. - -2009-10-01 Ankit Jain <jankit@novell.com> - - Fix bug #543299. - * Import.cs (.ctor): Evaluate and set EvaluatedProjectPath to - the full path of the imported project here itself, instead of .. - (Evaluate): .. here. - * ImportCollection.cs (Add): Use import.EvaluatedProjectPath . - (Contains): New. - * Project.cs (AddImport): Don't process if condition is false. - Warn if a circular reference is detected, and ignore the import. - -2009-09-29 Ankit Jain <jankit@novell.com> - - * GroupingCollection.cs (Evaluate): Mark internal. - * Project.cs (AddImport): Only evaluate the properties, - till before the import. - -2009-09-29 Ankit Jain <jankit@novell.com> - - * Project.cs (DoLoad): Don't use XmlReader.Create, for loading - the project xml, as returned Xml*Reader normalizes the newlines. - Instead directly use the TextReader with XmlDocument.Load (). - -2009-09-27 Ankit Jain <jankit@novell.com> - - * ConditionParser.cs: Show the condition being parsed in the - exception message. - -2009-09-26 Ankit Jain <jankit@novell.com> - - * Expression.cs: Allow '-' in item, property and metadata names. - -2009-09-26 Ankit Jain <jankit@novell.com> - - * Project.cs (Evaluate): Split into this and .. - (PrepareForEvaluate): .. this. - (AddImport): Evaluate the current set of properties/items etc, - before processing the imported project. Honor the Condition - for the Import. - (ProcessProjectAttributes): Update MSBuildProjectDefaultTargets - property. - * GroupingCollection.cs (Evaluate): Don't evaluate Imports here. - * BuildItemGroup.cs (Evaluate): Evaluate only once. - * BuildPropertyGroup.cs (Evaluate): Evaluate only once. - -2009-09-26 Ankit Jain <jankit@novell.com> - - * Project.cs: Get InitialTargets from the imported projects also. - The combined list of targets are executed, in the order they were - found. - DefaultTargets are also read in from imported projects, and the first - non-empty DefaultTargets found is used. - -2009-09-25 Ankit Jain <jankit@novell.com> - - * Project.cs (BuildTarget): Handle skipped targets. - -2009-09-25 Ankit Jain <jankit@novell.com> - - * Project.cs (DoLoad): If a VS2003 project is detected, then throw - InvalidProjectFileException with useful error. - -2009-09-24 Ankit Jain <jankit@novell.com> - - * Project.cs (Load): Emit the .sln.proj file only if env var - XBUILD_EMIT_SOLUTION is set. - -2009-09-24 Ankit Jain <jankit@novell.com> - - * Project.cs (GetKeyForTarget): Make target name, case insensitive. - -2009-09-24 Ankit Jain <jankit@novell.com> - - * Project.cs (InitializeProperties): Set 'MSBuildProjectDefaultTargets' - reserved property. - -2009-09-10 Ankit Jain <jankit@novell.com> - - * BuildItem.cs (Evaluate): Metadata from "Include" should be, - preserved, so use ConvertTo ITaskItem, rather than string. - Ensure that the new items have the metadata from references _in_ - Include, and the metadata of _this_ builditem. - * DirectoryScanner.cs (Includes): Change to a array of ITaskItem. - (MatchedFilenames): Rename to .. - (MatchedItems): .. this, and change type of array of ITaskItem. - Ensure that metadata of items in Includes are retained in the - final matched items. - - * BuildItemGroup.cs (ConvertoToITaskItemArray): Add 'separator' - param. If separator is present, then just return a "Join'ed" - string as the single task item. - * ItemReference.cs: Track api changes. - - * BuildProperty.cs (ConvertToITaskItemArray): Split the value, - as we need separate task items. - -2009-09-01 Ankit Jain <jankit@novell.com> - - Fix bug #534965. - * Project.cs (BuildTarget): Move caching of target outputs to .. - * Target.cs: .. here. Move LogTargetSkipped also here. - Ensure that caching happens for target dependencies also. - -2009-09-01 Ankit Jain <jankit@novell.com> - - * DirectoryScanner.cs (Scan): Ignore empty entries in includes and - excludes. - -2009-09-01 Ankit Jain <jankit@novell.com> - - * Expression.cs (ParseOptions): New enum. Replace the bool params - of exression.Parse with this. Add option to control expansion of - metadata references. - (CopyToExpressionCollection): Track api changes. - - Update all expr.Parse calls to use the new enum. - * BuildItem.cs, BuildProperty.cs, BuildTask.cs, Import.cs, - Target.cs, TargetBatchingImpl.cs, UsingTask.cs: Track api changes. - - * BatchingImplBase.cs: Track api changes. Allow metadata refs - in task attributes. - * ConditionFactorExpression.cs: Allow metadata refs in conditions. - * ItemReference.cs: Allow metadata in transforms. - * TaskEngine.cs: Allow metadata refs. - - * MetadataReference.cs (.ctor): Add a 'original string' param. - -2009-08-29 Ankit Jain <jankit@novell.com> - - * Expression.cs (ExpressionOptions): New. - - Introduce a ExpressionOptions argument to all ConvertTo* - methods. Implement the rule: in evaluation phase, expand - all items completely, but dont expand item refs in properties. - At other times, expand the item refs in the properties. - See comments in Expression.cs, for a full explanation. - * BuildItem.cs: Track api changes. - * BuildItemGroup.cs: Likewise. - * BuildProperty.cs: Track api changes. Handle self-references. - * BuildTask.cs: Track api changes. - * IReference.cs: Add ExpressionOptions param. - * ItemReference.cs: Track api changes. - * PropertyReference.cs: Likewise. - * MetadataReference.cs: Likewise. - * ExpressionCollection.cs: Track api changes. Add support for - converting all primitive types and DateTime, instead of a fixed - few. - * Project.cs (GetMetadataBatched): Use the evaluated metadata. - * TaskBatchingImpl.cs: Handle the case when batching is required, - but no items are available. - - * TaskEngine.cs: Throw on unsupported types. Correctly handle - properties in case of empty values. - -2009-08-26 Ankit Jain <jankit@novell.com> - - * Expression.cs: Correctly handle a item reference with transform - when allowItems is false. If item ref is ignored, then the transform - will get incorrectly matched as a metadata ref. - * ItemReference.cs (.ctor): Add a @original_string param. - -2009-08-26 Ankit Jain <jankit@novell.com> - - * Utilities.cs (UnescapeFromXml): New. From md. - * BuildProperty.cs (.ctor): Unescape xml codes from the InnerXml - of the property element. - -2009-08-26 Ankit Jain <jankit@novell.com> - - * BuildProperty.cs (ConvertToString): New. - (ConvertoToITaskItemArray): New. Parse the property value. - * PropertyReference.cs (ConvertToString): Use BuildProperty's - ConvertToString. - (ConvertoToITaskItemArray): Likewise. - -2009-08-21 Ankit Jain <jankit@novell.com> - - * Engine.cs (EndProjectBuild): Use the @succeeded argument - instead of hardcoding 'true'. - * Target.cs (Build): Add an overload to return executeOnErrors - value for the target executed. If building dependencies fails, - and executeOnErrors is true, then execute OnError tasks. - Add the new param to .. - (BuildDependencies): this, .. - (DoBuild): and this. - (GetDependencies): Improve error message and variable name. - (ExecuteOnErrors): Honor OnError tag's Condition also. - * TaskBatchingImpl.cs (Run): Correctly set executeOnErrors param. - -2009-08-20 Ankit Jain <jankit@novell.com> - - Fix bug #532264 - * Project.cs (Load): Add support for loading .sln files. - -2009-08-20 Ankit Jain <jankit@novell.com> - - * BuildTask.cs (Execute): Use task_logger only after the task - has been initialized. Catch and report task loading errors. - * Target.cs (DoBuild): Dont rethrow the exception, and emit - the stacktrace as a low importance message. - -2009-08-18 Ankit Jain <jankit@novell.com> - - * BatchingImplBase.cs: Make the item name lookups and metadata be case - insensitive. - * TaskDatabase.cs: Likewise. - * TaskEngine.cs: Make property name looks, case insensitive. - -2009-08-09 Miguel de Icaza <miguel@novell.com> - - * ConsoleLogger.cs: Change the format of the error and warnings - strings to work when invoked inside Emacs by not rendering the - column if available, by using lowercase "error"/"warning" strings - instead of camelcased versions and to not have unnecessary padding. - -2009-07-31 Ankit Jain <jankit@novell.com> - - * ConsoleLogger.cs: Keep track of all the errors and warnings - and show them at the end. - -2009-07-31 Ankit Jain <jankit@novell.com> - - * Target.cs (Build): Log a message if a target is skipped. - (LogMessage): New. - * BuildTask.cs (Execute): Log error if task execution fails. - -2009-07-30 Ankit Jain <jankit@novell.com> - - * Engine.cs (.ctor): Set default BinPath. Currently this assumes - v2.0, this will change when multi-targeting lands. - -2009-07-30 Ankit Jain <jankit@novell.com> - - * Project.cs (InitializeProperties) Set 'MSBuildProjectFile' and - 'MSBuildProjectName' properties. - -2009-07-28 Ankit Jain <jankit@novell.com> - - * TaskEngine.cs (Prepare): Fix formatting mistake. - * ConsoleLogger.cs: Emit "-- FAILED" also when project/target building - fails. Also, emit result of project at Normal verbosity level. - -2009-07-23 Ankit Jain <jankit@novell.com> - - Fix bug #511370. - * Project.cs (ExtensionsPath): New. - (InitializeProperties): Set "MSBuildExtensionsPath" property. - -2009-06-12 Ankit Jain <jankit@novell.com> - - Fix bug #512535. - * ExpressionCollection.cs (ConvertToITaskItemArray): Whitespace around a - itemref is allowed if the prev/next element is ";". - -2009-06-12 Ankit Jain <jankit@novell.com> - - * Utilities.cs (FromMSBuildPath): Return null if the path contains - "drive:" only on windows. - -2009-06-07 Ankit Jain <jankit@novell.com> - - * Target.cs (Outputs): Use ITaskItem[] for conversion, to retain - the metadata. - -2009-05-29 Ankit Jain <jankit@novell.com> - - Correctly handle global properties. Correctly log - project/build events. - - * BuildPropertyGroup.cs (Clone): Implement. - * Engine.cs (globalProperties): Rename to .. - (global_properties): .. this. - (currentlyBuildingProjectsStack): New. Used to correctly - log and raise project/build start/finish events. - (BuildProjectFile): Override any project global properties - with explicitly specified ones, here in the param @globalProperties. - Mark project for reevaluation, which will update the engine's - global properties also. - Reset both engine and project's old global properties at the end. - (UnregisterAllLoggers): Log build finished only if we are currently - building. - (StartBuild): Rename to .. - (StartProjectBuild): .. this. Keeps track of the projects being built - in the new stack, and logs project and build events accordingly. - (EndProjectBuild): New. Uses the stack to keep track of projects - finishing builds, and raises project and build events accordingly. - (LogProjectStarted): Move here from Project.cs - (LogProjectFinished): Likewise. - - * Project.cs (Build): Log start of project build. - Set current directory to the project file's dir, and reset at end. - (BuildInternal): Don't log here, its done in Build. - (BuildTarget): Already built targets are keyed by the set of global - properties that they were built with. - (GlobalPropertiesToString): New. - (ResetBuildStatus): 'building' must be true to allow built targets to be reset. - (RemoveBuiltTargets): Initialize builtTargetKeys in .ctor - (Evaluate): Remove built targets only if we are currently building and - build settings are None. - Merge project's global properties with those of the parent engine. - Add missing properties from engine's global properties. - (LogTargetSkipped): Fix format string, add the reqd argument. - -2009-05-29 Ankit Jain <jankit@novell.com> - - * ConditionFunctionExpression.cs: Add 'HasTrailingSlash' function. - (HasTrailingSlash): New. - -2009-05-12 Ankit Jain <jankit@novell.com> - - * Project.cs (.ctor): Init timeOfLastDirty. - -2009-05-05 Miguel de Icaza <miguel@novell.com> - - * Contribution from Martin Brenn to fix #498154. - -2009-04-27 Ankit Jain <jankit@novell.com> - - Fix bug #497839. - * Engine.cs (BuildProjectFile): Set project's GlobalProperties to the - one passed as argument. - -2009-04-27 Ankit Jain <jankit@novell.com> - - * TaskEngine.cs (Prepare): Emit a useful error message property value - can't be converted to required type. - -2009-04-27 Ankit Jain <jankit@novell.com> - - * ExpressionCollection.cs (ConvertToObject): Allow true/on/yes - as valid true values for bool, and corresponding for false. - -2009-03-27 Jonathan Chambers <joncham@gmail.com> - - * BuildWhen.cs: Add basic implementation. - * BuildChoose.cs: Add basic implementation. - * BuildItem.cs (AddEvaluatedItem): Add BuiltItem to - EvaluatedItemsIgnoringCondition. - * GroupingCollection.cs: Add evaluation of BuildChoose items. - -2009-03-26 Jonathan Chambers <joncham@gmail.com> - - * TaskDatabase.cs (RegisterTask): Search for class by name - if task was not found using GetType (which uses namespace). - -2009-02-26 Ankit Jain <jankit@novell.com> - - * Target.cs: Handle target with no tasks. Log errors. - -2009-02-24 Ankit Jain <jankit@novell.com> - - Lazily load UsingTask tasks. - * UsingTask.cs (Evaluate): Register 'this' with task database, - but don't load it yet. Register only if condition evaluates to true. - Move the load logic to .. - (Load): .. here. Register with the specified task database. - * TaskDatabase.cs (RegisterUsingTask): Store the UsingTask instance - in a table keyed by task name, but don't load it yet. - (GetTypeFromClassName): Try to load UsingTask if task is not already - loaded. Move loading logic to .. - (GetTypeFromClassNameInternal): .. here. - (CopyTasks): Copy the usingTasks table also. - -2009-02-23 Ankit Jain <jankit@novell.com> - - * BuildItem.cs (AddMetadata): Allow overwriting older values. - -2009-02-22 Ankit Jain <jankit@novell.com> - - * BuildItem.cs: Iterate over XmlElements childnodes with XmlNode - instead of XmlElement. Eg. XmlComment - -2009-02-21 Ankit Jain <jankit@novell.com> - - * Utilities.cs (FromMSBuildPath): Copy from monodevelop. - * Project.cs (Load): Use FromMSBuildPath on the path. - (InitializeProperties): Set "MSBuildToolsPath" also. - -2009-02-20 Ankit Jain <jankit@novell.com> - - Fix #449683. - * ConditionTokenizer.cs: Handle unquoted item references (with or w/o - transforms) in conditions. - * ConditionParser.cs: Parse unquoted item, property references. - eg. Condition = " @(Foo->'%(Extension)') == '.exe' " - * Token.cs (Token.ToString): Override. - (TokenType.Transform): Uncomment. - -2009-02-12 Jonathan Chambers <joncham@gmail.com> - - * BuildProperty.cs: Value corresponds to XmlElement.InnerXml - no XmlElement.InnerText. This allows properties to be additional - xml elements. - -2009-02-01 Ankit Jain <jankit@novell.com> - - * BuildEngine.cs (BuildProjectFile): Use - BuildSettings.DoNotResetPreviouslyBuiltTargets for building projects. - * Engine.cs (BuiltTargetsOutputByName): New. Table of targets already - built. Move logging of project start/finish to .. - * Project.cs: .. here. Build a target only if hasn't been built already. - Keep track of target outputs, and return those even if an already built - target has been invoked again. - Honor BuildSettings.None and DoNotResetPreviouslyBuiltTargets . - -2009-01-31 Ankit Jain <jankit@novell.com> - - * BatchingImpl.cs: Split into .. - * BatchingImplBase.cs: .. this, - * TaskBatchingImpl.cs: .. this .. - * TargetBatchingImpl.cs: .. and this. Implement target batching here. - - * Target.cs (DoBuild): Use TargetBatchingImpl for building. - (Log*): Move to TargetBatchingImpl . - (BuildTasks): New. - (Engine): New. - -2009-01-30 Ankit Jain <jankit@novell.com> - - * TaskEngine.cs (GetObjectFromString): Empty value is allowed only for - arrays. - -2009-01-29 Ankit Jain <jankit@novell.com> - - * BuildItem.cs (child_items): Change type from BuildItemGroup to - List<BuildItem>. - (HasParent): Rename to .. - (HasParentItem): .. this. - (ParentItemGroup): Add setter. - - * BuildItemGroup.cs (.ctor): Add overload with @project param. - (AddNewItem): - (AddItem): Correctly set the ParentItemGroup for new build items. - (ParentProject): Add setter. - * Project.cs: Set the project for new BuildItemGroup instances. - * TaskEngine.cs (PublishItemGroup): Likewise. - -2009-01-06 Ankit Jain <jankit@novell.com> - - * Project.cs (Build): Honor InitialTargets list. - -2009-01-06 Ankit Jain <jankit@novell.com> - - * BuildEngine.cs (BuildProjectFile): Use AddProperty method to specify - the property type also. - * MSBuild.cs (Execute): Parse 'Properties' task param to set global - properties. - -2009-01-06 Ankit Jain <jankit@novell.com> - - * Project.cs (Build): Correctly handle null targetNames argument. - -2009-01-06 Ankit Jain <jankit@novell.com> - - * Engine.cs (LogProjectStarted): Add a null check. - -2009-01-01 Ankit Jain <jankit@novell.com> - - * IReference.cs: New. Interface for Item/Metadata/PropertyReference. - * ChangeType (ToBuildItemGroup): Add 'split' param. - Track api changes. - * Expression.cs (Parse): Add a new overload with a 'split' param. - * ExpressionCollection.cs (Add): Add new overload for IReference, - remove the ones for Item/Metadata/PropertyReference. - (ConvertToArray): Implement correctly. - (ConvertToString): Track api changes. - (ConvertToITaskItem): Implement with ConvertToITaskItemArray. - (ConvertToITaskItemArray): Implement support for concat'ing expressions. - (AddItemsToArray): New. - (ConvertToITaskItemArrayFromString): Refactor a bit. - (ThrowCantConcatError): New. - * ItemReference.cs: Update. - * MetadataReference.cs: Update. - * PropertyReference.cs (ConvertToITaskItemArray): Implement. - (GetValue): New. - * BuildPropertyGroup.cs: Track api changes. - * TaskEngine.cs (PublishOutput): Improve exception message. - * Project.cs (DoLoad): Improve exception message. Add a null check. - -2008-12-30 Ankit Jain <jankit@novell.com> - - * MetadataReference.cs (BuildItemGroupToITaskItems): Return unique - metadata values for unqualified references. - (BuildItemGroupToITaskItemArray): Rename to .. - (BuildItemGroupToITaskItems): .. this. - (HasTaskItem): New. - -2008-12-18 Ankit Jain <jankit@novell.com> - - * BuildTask.cs (Execute): PublishOutput only if task runs successfully. - -2008-12-17 Ankit Jain <jankit@novell.com> - - * MetadataReference.cs (ConvertToITaskItemArray): In case of batching, - only one instance of unique metadata value is required. - -2008-11-22 Ankit Jain <jankit@novell.com> - - * ExpressionCollection.cs (ConvertToITaskItemArray): Add support for - MetadataReference. - * MetadataReference.cs (ConvertToITaskItemArray): New. - * Project.cs (GetAllItemGroups): New. - -2008-11-21 Ankit Jain <jankit@novell.com> - - * BatchingImpl.cs: Add task batching implementation. - * BuildItem.cs (GetEvaluatedMetadata): Handle built-in metadata names. - * ExpressionCollection.cs (Count): New. - (ConvertToString): Handle MetadataReference. - * ItemReference.cs (ConvertToString): - (ConvertToITaskItemArray): Use the batching api. - (ToString): New. - * MetadataReference.cs (ConvertToString): New. - (ToString): New. - * Project.cs: Add api for accessing batched items and metadata. - * TaskEngine.cs (PublishItemGroup): Don't clear existing values from - item group. - -2008-10-01 Ankit Jain <jankit@novell.com> - - * BuildEngine.cs (.ctor): Replace 'projectFile' param with 'project'. - (BuildProjectFile): If filename is null (project.LoadXml) then use - engine.BuildProject - * BuildTask.cs (InitializeTask): Track api change. - * Expression.cs (Parse): Skip empty entries in the expression. - -2008-09-24 Ankit Jain <jankit@novell.com> - - * Engine.cs: Add argument checks. - * Project.cs: Likewise. - -2007-03-06 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Project.cs (Build): Add outputs to targetOutputs. - -2007-03-06 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ExpressionCollection.cs (ConvertToArray): Simplify. - -2007-03-05 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskEngine.cs, ChangeType.cs: Moved Collect* to ChangeType and - simplified. It still needs tests and refactoring. - -2007-02-22 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildEngine.cs (BuildProjectFile): Don't crash on null - globalProperties. - - * Target.cs: Add Outputs property. - -2007-02-20 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs (Build): Split to GetDependencies () and BuildDependencies - (). Support condition. - - * BatchingImpl.cs (BatchBuildTask): Simplify. - -2007-02-18 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ExpressionCollection.cs (ConvertToITaskItemArrayFromString): - Simplified. - - * ConditionFunctionExpression.cs: Removed warnings. - - * BuildTask.cs (Execute): Write exceptions to std err (they should be - logged but it's better than swallowing). - -2007-02-03 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ConditionTokenizer.cs: Add Putback (). - - * ConditionParser.cs: Add parsing of functions. - - * ConditionFunctionExpression.cs: Add. - -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 - and prepend relative directory of importing project to full path of - imported project. - -2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildWhen.cs, BuildPropertyGroupCollection.cs, - BuildItemGroupCollection.cs, Project.cs: Track API changes. - - * GroupingCollection.cs: Now it needs Project reference so added it. - - * BuildTask.cs: Formatting. - - * InvalidProjectFileException.cs: Use MS' names in GetObjectData (). - - * ConditionParser.cs (ParseAndEvaluate): Added. - - * BuildItem.cs: Changed exception message. - -2007-01-02 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildWhen.cs, BuildPropertyGroupCollection.cs, - BuildItemGroupCollection.cs, Project.cs, GroupingCollection.cs: - GroupingCollection doesn't need Project reference. - - * BuildTask.cs, Target.cs, TaskEngine.cs, BatchingImpl.cs: Formatting - - * BuildItemGroup.cs: Added new readOnly parameter to ctor. - (Project.EvaluatedItems is a read only item group.) - (ReplaceWith): Added. - - * BuildPropertyGroup.cs (IsGlobal): Added. Setting a property in - global property group causes reevaluation of its project. - - * Project.cs: ProcessXml () is internal and can be "safely" invoked by - other classes. - - * OldExpression.cs: Removed. - - * BuildProperty.cs (Evaluate): Simplified. - - * ChangeType.cs (TemporaryTransform): Simplified. - - * BuildItem.cs: There are now 3 types of build items: from XML, having - parent from XML, virtual. Added SplitParentItem (). - -2006-12-20 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Utilities.cs: Added Unescape (). - - * BuildItemGroup.cs, BuildItem.cs: Pass null project to - BuildItem.Evaluate () to "evaluate" virtual items added to virtual item - groups (at the moment just unescape). - - * Expression.cs (CopyToExpressionList): Unescape strings. - -2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs (ctor): Added ImportedProject argument and removed - set_IsImported. - (AddNewTask): Implemented. - - * TargetCollection.cs (AddNewTarget): Implemented. - - * Project.cs: Track API changes. - -2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs (Build): Don't throw anything in case of error, just - return false. - - * BuildItemGroup.cs (set_Condition): Throw an exception if group is - not from XML. - - * BuildItem.cs: More meaningfull messages in RemoveMetadata () and - SetMetadata (). - - * BuildProperty.cs (ToString): Throw an exception if property is not - from XML. - (op_Explicit): Added a null check. - - * Engine.cs: Better error message. - - * BuildItemGroupCollection.cs (CopyTo): Changed ArgumentException to - IndexOutOfRangeException. - - * Project.cs (DoLoad, Load): Move try/catch to DoLoad (). - (MarkProjectAsDirty): Set time. - -2006-12-18 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItemGroup.cs (Clone): Throw exception. - - * Project.cs (Load): Throw InvalidProjectFileException if anything - goes wrong. - -2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ItemReference.cs: Avoid KeyNotFoundException in ConvertToString () - and ConvertToITaskItemArray (). - -2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ItemPropertyGroupingBase.cs, TaskEngineAssemblyResolver.cs: Removed - classes that were public in Beta 2 and aren't used. - - * Expression.cs: Added replacement for parsing expressions char by - char. It uses regexes to find item/property/metadata references in - given text. - - * ExpressionCollection.cs, BuildTask.cs, ConditionFactorExpression.cs, - Target.cs, TaskEngine.cs, BuildItemGroup.cs, UsingTask.cs, Import.cs, - BuildItem.cs, BatchingImpl.cs, BuildProperty.cs: Track API changes. - - * ConditionRelationalExpression.cs: Formatting. - - * OldExpression.cs: Commented everything. - - * MetadataReference.cs, ItemReference.cs, PropertyReference.cs: Moved - parsing to Expression. - - * BuildItem.cs: Check if project is from XML in set_Condition and - set_Exclude. - - * BuildPropertyGroup.cs, Project.cs: Add ImportedProject to - Project.ctor. - - * ConditionNotExpression.cs, ConditionAndExpression.cs: Check if we - can evaluate expression in CanEvaluateToBool (). - -2006-12-12 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItemGroup.cs (ctor): Add reference to ImportedProject from - which item group is imported. - - * BuildItem.cs, Project.cs: Use new BuildItemGroup.ctor (). - -2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildWhen.cs, BuildPropertyGroupCollection.cs, - BuildItemGroupCollection.cs: Little changes related to - GroupingCollection. - - * ImportCollection.cs: Use GroupingCollection not an internal list. - - * Import.cs (Evaluate): Split to functions and check if - EvaluatedProjectPath is empty. - - * GroupingCollection.cs, Project.cs: Move evaluation to - GroupingCollection. Change algorithm to use 2 passes: first for property - groups and imports and second for item groups. - -2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskEngine.cs, ItemReference.cs: Use IDictionary <string, - BuildItemGroup> not IDictionary. - - * BuildItemGroup.cs, BuildItem.cs: Evaluate even if condition was - evaluated to false because we want to add every item to - Project.EvaluatedItemsByNameIgnoringCondition. - - * Project.cs (Build): Don't throw an exception just return false. - (GetEvaluatedProperty): Avoid NullReferenceException. - (SetProjectExtensions): Implemented. - -2006-12-08 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs, Xml.cs, ProcessingPass.cs: Removed. - - * Utilities.cs, HostLogger.cs, Target.cs, TaskDatabase.cs, - BuildItemGroup.cs, BuildPropertyGroup.cs, TargetCollection.cs, - Engine.cs, GroupingCollection.cs, Project.cs: Reformatted. - - * ImportCollection.cs: Added a note. - -2006-12-07 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildTask.cs: Implemented AddOutputItem () and AddOutputProperty (). - - * UsingTaskCollection.cs: Removed [MonoTODO] and used CopyTo in CopyTo - (UsingTask[] array, int index) - - * TaskEngine.cs: Reformatted PublishOutput () and added copying of - items to Project.EvaluatedItems in PublishItemGroup (); - - * BuildItemGroup.cs: Added [MonoTODO]. - - * UsingTask.cs: Used expression for AssemblyFile to get around - problems with '\' and '/'. - - * BuildItem.cs (ctor): Added null checks. - (GetMetadata): Return unevaluatedMetadata not evaluatedMetadata. - (SetMetadata): Don't escape evaluatedMetadata and escape - unevaluatedMetadata only when treatPropertyValueAsLiteral. - - * BuildPropertyGroup.cs (GetEnumerator, Evaluate, RemoveProperty): Use - FromXml () instead of null checks. - (SetProperty): Escape propertyValue when it is literal. - - * BuildProperty.cs: Changed exception message. - - * Project.cs: Added XmlNamespaceManager and XmlNamespace internal - properties. - (GetProjectExtensions): Implemented. - -2006-12-05 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildTask.cs: Remove [MonoTODO], add exception throwing in - GetParameterValue (), use expressions in ContinueOnError. - * ConditionFactorException.cs: Throw InvalidProjectFileException () - instead of InvalidOperationException (). - * ImportCollection.cs: Implement CopyTo (). - * Target.cs: Remove redundant variables (XmlAttributes), return - String.Empty in DependsOnTargets, add a null check in RemoveTask (). - * BuildItemGroup.cs, BuildPropertyGroup.cs: Remove [MonoTODO]. - * Import.cs: Throw an exception when file does not exist. - * Target.cs: Use StringComparer.InvariantCultureIgnoreCase. - * ConditionTokenizer.cs: Treat '-' as beginning of a number. We'll - need to treat item as a token probably - -2006-12-04 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Import.cs: Check for project.FullFileName (Path.DirectoryName would - throw an exception). - * BuildItemGroupCollection.cs: Changed exception types. - -2006-10-14 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Engine.cs: Removed redundant cast. - * BuildWhen.cs: - * UsingTaskCollection.cs: - * ImportCollection: - * BuildChoose.cs: - * BuildItem.cs: - * TargetCollection.cs: Comment unused variable. - * ConditionTokenizer.cs: Simplified checking if current token is a - keyword. - * Target.cs: Removed old code. - -2006-10-08 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs: Changed "" to String.Empty. - * TaskEngine.cs: Don't try to convert a parameter to specific type if - string was evaluated to String.Empty. - * InternalLoggerException.cs: - * InvalidProjectFileException.cs: Added LinkDemand before - GetObjectData (). - * ConsoleLogger.cs: Changed "" to String.Empty. - * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced - with change to generics). - * Project.cs: Made Build () throw more meaningful exception. - -2006-10-06 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs: Reformatted. - * TaskEngine.cs: Removed redundant code. - * BuildPropertyGroup.cs: Fixed Clear () and AddNewProperty (). - * Engine.cs: Made BuildProjectFile () load project file if it's not - loaded yet. - -2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ConditionRelationalExpression.cs: Change comparers to case - insensitive. - * ImportCollection.cs: Add NotImplementedExceptions. - * BuildPropertyGroup.cs: Reformatted a bit. - * BuildProperty.cs: The same. - * Project.cs: Moved evaluation of imports before evaluation of - properties. This may "work" until importing projects is redesigned but - probably isn't correct. - -2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements - (like comments) - * BuildItemGroup.cs: Change return to continue. - -2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ConditionParser.cs: Copyright note. - * ExpressionCollection.cs: Fixed arrays passing. - -2006-08-06 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs, - Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs, - BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs, - TargetCollection.cs, Engine.cs, Project.cs: Started to use generics. - -2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Token.cs: Changed names: removed "than". - * ConditionRelationalExpression.cs: Added. - * ConditionFactorExpression.cs: Added. - * BuildItemGroup.cs: Changed Condition property return value to return - String.Empty instead of null. - * ConditionParser.cs: Added support for parsing relational expressions - and factors. - * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of - abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate () - and CanEvaluateToBool (), CanEvaluateToNumber () and - CanEvaluateToString (). - * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed - appropriately to ConditionExpression base class. - * ConditionTokenizer.cs: Added null check and changed names in enums: - removed "than". - * ConditionNotExpression.cs: Added. - * BatchingImpl.cs: Changed to use BoolEvaluate (). - * Project.cs: Added checks for condition. - -2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ConditionalTokenizer.cs, ConditionalExpression.cs, - ConditionalParser.cs: Changed name, - removed -al. - * ConditionExpression.cs: Added Evaluate (). - * ConditionOrExpression.cs, ConditionAndExpression.cs: Added. - * BatchingImpl.cs: Added check if task should be executed. - -2006-06-14 Marek Sieradzki <marek.sieradzki@gmail.com> - - * UsingTask.cs: Changed properties to return null on empty attribute. - * UsingTaskCollection.cs: Added object to SyncRoot. - * BuildPropertyGroup.cs: Added NotImplementedException throwing. - -2006-06-02 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs, - BuildPropertyGroupCollection.cs: Fixed to match the tests. - -2006-05-27 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Utilities.cs: Implemented Escape (). - * BuildItem.cs: Added null checks. - * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property. - * Project.cs: Commented out redundant Evaluate (). - * BuildChoose.cs: Minor changes. - -2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Token: Added new few missing tokens. - * Target.cs, Project.cs: Patch from Matthew Metnesky. - * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs, - ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs, - ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs, - LiteralTokenizer.cs: - Removed literal expression parsing based on tokenizer and - parser. It needs to be done by regex. - - Moved tokenizer to ConditionalTokenizer.cs. - -2006-05-05 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs, - ItemReference.cs, PropertyReference.cs: Changed name of *Reference - methods converting reference to string from ToString () to - ConvertToString () to avoid mistakes like using ToString () provided - by default. - -2006-05-03 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs, - Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs, - PropertyReference.cs, BuildProperty.cs: Changed Expression to - OldExpression and changed To* functions to one ConvertTo (). - * TaskEngine.cs: Fixed PublishOutput (). - * OldExpression.cs: Added. It will be temporarily used before - LiteralExpression will be written using Tokenizer. - * Tokenizer.cs, Token.cs, ExpressionCollection.cs, - ExpressionParseException.cs, LiteralExpression.cs: Added. - -2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ImportedProject.cs: Removed warning. - * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of - default tasks. - -2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Project.cs: Removed unnecessary variable. - * Engine.cs: Added fixme. - -2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItem.cs: Moved checking if metadata name is reserved to internal - class (Mono.XBuild.Utilities.ReservedNameUtils). - -2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildTask.cs: Removed unnecessary variable. - * Engine.cs: Added logging of the build start. - * Project.cs: Removed unnecessary variable. - -2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com> - - * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed. - -2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItem.cs, BuildItemGroup.cs: Coding style fixes. - -2006-03-29 Crestez Leonard <cdleonard@gmail.com> - - * BuildItem.cs: Fix typo? - -2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com> - - * InternalLoggerException.cs, InvalidProjectFileException.cs, - Engine.cs, Project.cs: Coding style fixes. - -2006-03-29 Crestez Leonard <cdleonard@gmail.com> - - * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items. - -2006-03-29 Crestez Leonard <cdleonard@gmail.com> - - * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed - to pass tests. Wrote serialization constructor. - * Engine.cs, Project.cs: Global engine and project unloading, test and - formatting fixes. - -2006-03-28 Marek Sieradzki <marek.sieradzki@gmail.com> - - * UsingTask.cs: Formatting changes. - -2006-03-27 Crestez Leonard <cdleonard@gmail.com> - - * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched - to lists instead of hashtables. - * Import.cs: Cleaned up, moved importing from Project.cs - * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes. - * Engine.cs: Cleaned up properties. - * Project.cs: Moved importing to Import.cs, cleaned up properties, - Separated evaluation and loading. - -2006-03-21 Crestez Leonard <cdleonard@gmail.com> - - * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs, - BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs, - Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml - binding and evaluation, merge xml binding in constructors. - * DirectoryScanner.cs: Includes CAN be empty. - * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF. - * ConsoleLogger.cs: Fix compilation warning. - -2006-03-19 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildPropertyGroup.cs, Expression.cs: Coding style fixed. - -2006-03-18 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Engine.cs: API cleanup. - -2006-03-18 Crestez Leonard <cdleonard@gmail.com> - - * Project.cs: Cleaned up add. - * Expression.cs: Hacked to transform \ and / to path separators. - * BuildPropertyGroup.cs: Small cleanup. - * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project - reference. - -2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BatchingImpl.cs: Updated with BuildTask instead of TaskElement. - * BuildItem.cs: Updated for new API and fixed crashing on non-existent - files. - * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs, - BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs, - Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new - API. - * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items. - * TaskElement.cs: Temporarily removed. - * Xml.cs: Changed to static. - -2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com> - - * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs, - IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs, - ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs, - IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs, - ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs, - IBuildPropertyGroupCollection.cs: Removed. - -2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildItem.cs: Removed IBuildItem references. - * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and - IBuildItemGroup references. Changed Evaluate to internal. - * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection - reference and hidden constructors. - * BuildProperty.cs: Removed IBuildProperty reference. - * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and - IBuildPropertyGroup references. Changed Evaluate to internal. - * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection - reference and hidden constructors. - * ConsoleLogger.cs: Updated names of event handlers. - * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and - Escape. Added UnloadAllProjects () and UnloadProject (). - * FileLogger.cs: Removed ApplyParameter (). - * GroupingCollection.cs: Hidden. - * InvalidProjectFileException.cs: Removed HasBeenLogged property. - * ItemPropertyGroupingBase.cs: Commented. - * ProcessingPass.cs: Hidden. - * Project.cs: Removed IProject reference. Changed CurrentEncoding to - Encoding. - * Target.cs: Removed ITarget reference. - * TargetCollection.cs: Removed ITargetCollection reference. - * TaskElement.cs: Removed ITaskElement reference. - * TaskEngineAssemblyResolver.cs: Hidden. - * Utilities.cs: Made static class, removed CheckPath (), - ValidateCulture (), GetSupportedCultures () and added Escape (). - -2006-02-24 Marek Sieradzki <marek.sieradzki@gmail.com> - - * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new - API. - -2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Project.cs: Added MonoTODO attributes. - * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs, - ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs, - IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs, - BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs, - SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs, - BuildItemGroup.cs, InvalidProjectFileException.cs, - BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs, - Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs, - PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs, - ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs, - IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs, - IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs, - ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs, - ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs, - IBuildItemGroup.cs, BuildProperty.cs, Engine.cs, - IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs, - BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs, - ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0. - -2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskDatabase.cs: Change Shared to Framework. - * BuildPropertyGroup.cs, Project.cs: Remove obsoleted - CaseInsensitiveHashCodeProvider - -2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName. - * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved - property. - -2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com> - - * InternalLoggerException.cs: Changed protected fields to private. - -2005-09-03 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Engine.cs: Added check for globalProperties. - * Project.cs: Added using path from importedProject.FullFileName when - adding UsingTask elements. - -2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs: Changed ReflectedType to PropertyType. - * ChangeType.cs (TransformToString): Changed to pass proper Type to - TemporaryTransform. - -2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildPropertyGroup.cs: Added check for PropertyType when adding a - new property. - * BuildProperty.cs: Organized PropertyType enum. - * Engine.cs: Added setting CommandLine PropertyType of global - properties. - -2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com> - - * InvalidProjectFileException.cs: Changed Message property. - * ChangeType.cs (TransformToString): Added separator between items. - * TaskEngineAssemblyResolver.cs: Formatting. - -2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com> - - * DirectoryScanner.cs: Added. - * BuildItem.cs: Moved file scanning code to DirectoryScanner. - * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression. - * Project.cs: Removed Evalute* (). - -2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs: Formatting. - * Expression.cs: Added check if array == null. - * BuildItem.cs: Removed 'break' to remove warnings. - * ConsoleLogger.cs: Formatting. - * Engine.cs: Added handling of default target(s). - * Project.cs: Added handling of default target(s). - -2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs: Added check for parameters. - * Target.cs: Added logging of target skipping. - * Expression.cs: Changed returning object[] to string[], bool[]... in - ToArray (). - * ItemReference.cs: Fixed for item references without custom - separators. - * BatchingImpl.cs: Added real inputs/outputs checking. - * Engine.cs: Moved global properties setting. - * Project.cs: Moved global properties setting. - -2005-08-27 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Target.cs: Added checks for target existence. - * BuildItemGroup.cs: Changed to use transforms. - * MetadataReference.cs: Wrote real implementation. - * ItemReference.cs: Rewritten to use transforms. - * BuildItem.cs: Changes for transforms and metadata. - * ConsoleLogger.cs: Added verbosity checking and fixed error/warning - formatting. - * Project.cs: Fixed project importing. - * ImportedProject.cs: Changed to throw exceptions instead of returning - bool. - -2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com> - - * Engine.cs: Removed FIXME. - * Project.cs: Splitted ProcessElements and added project importing. - * ImportedProject.cs: Rewritten. - -2005-08-20 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs: Added getting of objects of every type. - * BuildItemGroup.cs: Added ToITaskItemArray (). - * Expression.cs: Implemented part that is not using metadata. - * ItemReference.cs: Implemented parsing item references. Need to fix - validity checking. - * BuildItem.cs: Fixed ToITaskItem (). - * PropertyReference.cs: Implemented parsing property references. This - also needs validity checking. - -2005-08-19 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs: Added Output element handling. - * Target.cs: Cleaned up. - * BuildItemGroup.cs: Added creating BuildItem from TaskItem. - * Expression.cs, MetadataReference.cs, PropertyReference.cs, - ItemReference.cs, ChangeType.cs: Added. - * BuildItem.cs: Added creating BuildItem from TaskItem. - * BuildPropertyGroup.cs: Small changes. - * BatchingImpl.cs: Fixed to return real task execution result. - * BuildProperty.cs: Fixed FinalValue property. - * Engine.cs: Reformatted logging. - * Project.cs: Added check to EvaluateProperty. - -2005-08-16 Marek Sieradzki <marek.sieradzki@gmail.com> - - * TaskElement.cs: Added part of execution engine. - * BuildEngine.cs: Added handling of TaskStarted and TaskFinished. - * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement. - * EventSource.cs: Added FireTaskStarted and FireTaskFinished. - * BuildItem.cs: Added handling of built-in metadata and referencing - Items by name not FullName. - * BatchingImpl.cs: Added temporary task "batching". - * ConsoleLogger.cs: Added temporary workaround to not show sender. - * Project.cs: Added Evaluate. It will be moved to separate class. - -2005-08-14 Marek Sieradzki <marek.sieradzki@gmail.com> - - * EventSource.cs, Engine.cs: Added CriticalEvents. - * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs, - Project.cs: Added some support for items. - * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up. - -2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading - of properties. - -2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BatchingImpl.cs: Added. - * BuildWhen.cs, BuildEngine.cs, Target.cs, - BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs, - BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs, - TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs, - GroupingCollection.cs: Updated. - -2005-08-06 Marek Sieradzki <marek.sieradzki@gmail.com> - - * BuildChoose.cs, BuildEngine.cs, BuildItem.cs, - BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs, - BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs, - BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs, - EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs, - GroupingCollection.cs, HostLogger.cs, ImportedProject.cs, - InternalLoggerException.cs, InvalidProjectFileException.cs, - ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs, - ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs, - TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs, - TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs: - Initial check-in of implementations. - -2005-07-16 Marek Sieradzki <marek.sieradzki@gmail.com> - - * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs, - IBuildItemGroupCollection.cs, IBuildProperty.cs, - IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs, - ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs, - IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs, - IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs: - Initial check-in of interfaces and a syntax file, real classes are - changing a lot so I'll wait a moment with checking them in. |