1 2009-05-29 Ankit Jain <jankit@novell.com>
3 * ConditionFunctionExpression.cs: Add 'HasTrailingSlash' function.
4 (HasTrailingSlash): New.
6 2009-05-12 Ankit Jain <jankit@novell.com>
8 * Project.cs (.ctor): Init timeOfLastDirty.
10 2009-05-05 Miguel de Icaza <miguel@novell.com>
12 * Contribution from Martin Brenn to fix #498154.
14 2009-04-27 Ankit Jain <jankit@novell.com>
17 * Engine.cs (BuildProjectFile): Set project's GlobalProperties to the
18 one passed as argument.
20 2009-04-27 Ankit Jain <jankit@novell.com>
22 * TaskEngine.cs (Prepare): Emit a useful error message property value
23 can't be converted to required type.
25 2009-04-27 Ankit Jain <jankit@novell.com>
27 * ExpressionCollection.cs (ConvertToObject): Allow true/on/yes
28 as valid true values for bool, and corresponding for false.
30 2009-03-27 Jonathan Chambers <joncham@gmail.com>
32 * BuildWhen.cs: Add basic implementation.
33 * BuildChoose.cs: Add basic implementation.
34 * BuildItem.cs (AddEvaluatedItem): Add BuiltItem to
35 EvaluatedItemsIgnoringCondition.
36 * GroupingCollection.cs: Add evaluation of BuildChoose items.
38 2009-03-26 Jonathan Chambers <joncham@gmail.com>
40 * TaskDatabase.cs (RegisterTask): Search for class by name
41 if task was not found using GetType (which uses namespace).
43 2009-02-26 Ankit Jain <jankit@novell.com>
45 * Target.cs: Handle target with no tasks. Log errors.
47 2009-02-24 Ankit Jain <jankit@novell.com>
49 Lazily load UsingTask tasks.
50 * UsingTask.cs (Evaluate): Register 'this' with task database,
51 but don't load it yet. Register only if condition evaluates to true.
52 Move the load logic to ..
53 (Load): .. here. Register with the specified task database.
54 * TaskDatabase.cs (RegisterUsingTask): Store the UsingTask instance
55 in a table keyed by task name, but don't load it yet.
56 (GetTypeFromClassName): Try to load UsingTask if task is not already
57 loaded. Move loading logic to ..
58 (GetTypeFromClassNameInternal): .. here.
59 (CopyTasks): Copy the usingTasks table also.
61 2009-02-23 Ankit Jain <jankit@novell.com>
63 * BuildItem.cs (AddMetadata): Allow overwriting older values.
65 2009-02-22 Ankit Jain <jankit@novell.com>
67 * BuildItem.cs: Iterate over XmlElements childnodes with XmlNode
68 instead of XmlElement. Eg. XmlComment
70 2009-02-21 Ankit Jain <jankit@novell.com>
72 * Utilities.cs (FromMSBuildPath): Copy from monodevelop.
73 * Project.cs (Load): Use FromMSBuildPath on the path.
74 (InitializeProperties): Set "MSBuildToolsPath" also.
76 2009-02-20 Ankit Jain <jankit@novell.com>
79 * ConditionTokenizer.cs: Handle unquoted item references (with or w/o
80 transforms) in conditions.
81 * ConditionParser.cs: Parse unquoted item, property references.
82 eg. Condition = " @(Foo->'%(Extension)') == '.exe' "
83 * Token.cs (Token.ToString): Override.
84 (TokenType.Transform): Uncomment.
86 2009-02-12 Jonathan Chambers <joncham@gmail.com>
88 * BuildProperty.cs: Value corresponds to XmlElement.InnerXml
89 no XmlElement.InnerText. This allows properties to be additional
92 2009-02-01 Ankit Jain <jankit@novell.com>
94 * BuildEngine.cs (BuildProjectFile): Use
95 BuildSettings.DoNotResetPreviouslyBuiltTargets for building projects.
96 * Engine.cs (BuiltTargetsOutputByName): New. Table of targets already
97 built. Move logging of project start/finish to ..
98 * Project.cs: .. here. Build a target only if hasn't been built already.
99 Keep track of target outputs, and return those even if an already built
100 target has been invoked again.
101 Honor BuildSettings.None and DoNotResetPreviouslyBuiltTargets .
103 2009-01-31 Ankit Jain <jankit@novell.com>
105 * BatchingImpl.cs: Split into ..
106 * BatchingImplBase.cs: .. this,
107 * TaskBatchingImpl.cs: .. this ..
108 * TargetBatchingImpl.cs: .. and this. Implement target batching here.
110 * Target.cs (DoBuild): Use TargetBatchingImpl for building.
111 (Log*): Move to TargetBatchingImpl .
115 2009-01-30 Ankit Jain <jankit@novell.com>
117 * TaskEngine.cs (GetObjectFromString): Empty value is allowed only for
120 2009-01-29 Ankit Jain <jankit@novell.com>
122 * BuildItem.cs (child_items): Change type from BuildItemGroup to
124 (HasParent): Rename to ..
125 (HasParentItem): .. this.
126 (ParentItemGroup): Add setter.
128 * BuildItemGroup.cs (.ctor): Add overload with @project param.
130 (AddItem): Correctly set the ParentItemGroup for new build items.
131 (ParentProject): Add setter.
132 * Project.cs: Set the project for new BuildItemGroup instances.
133 * TaskEngine.cs (PublishItemGroup): Likewise.
135 2009-01-06 Ankit Jain <jankit@novell.com>
137 * Project.cs (Build): Honor InitialTargets list.
139 2009-01-06 Ankit Jain <jankit@novell.com>
141 * BuildEngine.cs (BuildProjectFile): Use AddProperty method to specify
142 the property type also.
143 * MSBuild.cs (Execute): Parse 'Properties' task param to set global
146 2009-01-06 Ankit Jain <jankit@novell.com>
148 * Project.cs (Build): Correctly handle null targetNames argument.
150 2009-01-06 Ankit Jain <jankit@novell.com>
152 * Engine.cs (LogProjectStarted): Add a null check.
154 2009-01-01 Ankit Jain <jankit@novell.com>
156 * IReference.cs: New. Interface for Item/Metadata/PropertyReference.
157 * ChangeType (ToBuildItemGroup): Add 'split' param.
159 * Expression.cs (Parse): Add a new overload with a 'split' param.
160 * ExpressionCollection.cs (Add): Add new overload for IReference,
161 remove the ones for Item/Metadata/PropertyReference.
162 (ConvertToArray): Implement correctly.
163 (ConvertToString): Track api changes.
164 (ConvertToITaskItem): Implement with ConvertToITaskItemArray.
165 (ConvertToITaskItemArray): Implement support for concat'ing expressions.
166 (AddItemsToArray): New.
167 (ConvertToITaskItemArrayFromString): Refactor a bit.
168 (ThrowCantConcatError): New.
169 * ItemReference.cs: Update.
170 * MetadataReference.cs: Update.
171 * PropertyReference.cs (ConvertToITaskItemArray): Implement.
173 * BuildPropertyGroup.cs: Track api changes.
174 * TaskEngine.cs (PublishOutput): Improve exception message.
175 * Project.cs (DoLoad): Improve exception message. Add a null check.
177 2008-12-30 Ankit Jain <jankit@novell.com>
179 * MetadataReference.cs (BuildItemGroupToITaskItems): Return unique
180 metadata values for unqualified references.
181 (BuildItemGroupToITaskItemArray): Rename to ..
182 (BuildItemGroupToITaskItems): .. this.
185 2008-12-18 Ankit Jain <jankit@novell.com>
187 * BuildTask.cs (Execute): PublishOutput only if task runs successfully.
189 2008-12-17 Ankit Jain <jankit@novell.com>
191 * MetadataReference.cs (ConvertToITaskItemArray): In case of batching,
192 only one instance of unique metadata value is required.
194 2008-11-22 Ankit Jain <jankit@novell.com>
196 * ExpressionCollection.cs (ConvertToITaskItemArray): Add support for
198 * MetadataReference.cs (ConvertToITaskItemArray): New.
199 * Project.cs (GetAllItemGroups): New.
201 2008-11-21 Ankit Jain <jankit@novell.com>
203 * BatchingImpl.cs: Add task batching implementation.
204 * BuildItem.cs (GetEvaluatedMetadata): Handle built-in metadata names.
205 * ExpressionCollection.cs (Count): New.
206 (ConvertToString): Handle MetadataReference.
207 * ItemReference.cs (ConvertToString):
208 (ConvertToITaskItemArray): Use the batching api.
210 * MetadataReference.cs (ConvertToString): New.
212 * Project.cs: Add api for accessing batched items and metadata.
213 * TaskEngine.cs (PublishItemGroup): Don't clear existing values from
216 2008-10-01 Ankit Jain <jankit@novell.com>
218 * BuildEngine.cs (.ctor): Replace 'projectFile' param with 'project'.
219 (BuildProjectFile): If filename is null (project.LoadXml) then use
221 * BuildTask.cs (InitializeTask): Track api change.
222 * Expression.cs (Parse): Skip empty entries in the expression.
224 2008-09-24 Ankit Jain <jankit@novell.com>
226 * Engine.cs: Add argument checks.
227 * Project.cs: Likewise.
229 2007-03-06 Marek Sieradzki <marek.sieradzki@gmail.com>
231 * Project.cs (Build): Add outputs to targetOutputs.
233 2007-03-06 Marek Sieradzki <marek.sieradzki@gmail.com>
235 * ExpressionCollection.cs (ConvertToArray): Simplify.
237 2007-03-05 Marek Sieradzki <marek.sieradzki@gmail.com>
239 * TaskEngine.cs, ChangeType.cs: Moved Collect* to ChangeType and
240 simplified. It still needs tests and refactoring.
242 2007-02-22 Marek Sieradzki <marek.sieradzki@gmail.com>
244 * BuildEngine.cs (BuildProjectFile): Don't crash on null
247 * Target.cs: Add Outputs property.
249 2007-02-20 Marek Sieradzki <marek.sieradzki@gmail.com>
251 * Target.cs (Build): Split to GetDependencies () and BuildDependencies
252 (). Support condition.
254 * BatchingImpl.cs (BatchBuildTask): Simplify.
256 2007-02-18 Marek Sieradzki <marek.sieradzki@gmail.com>
258 * ExpressionCollection.cs (ConvertToITaskItemArrayFromString):
261 * ConditionFunctionExpression.cs: Removed warnings.
263 * BuildTask.cs (Execute): Write exceptions to std err (they should be
264 logged but it's better than swallowing).
266 2007-02-03 Marek Sieradzki <marek.sieradzki@gmail.com>
268 * ConditionTokenizer.cs: Add Putback ().
270 * ConditionParser.cs: Add parsing of functions.
272 * ConditionFunctionExpression.cs: Add.
274 2007-02-03 Marek Sieradzki <marek.sieradzki@gmail.com>
276 * BuildPropertyGroup (SetProperty): Throw an exception when trying to
277 set property in persisted property group.
279 2007-01-29 Marek Sieradzki <marek.sieradzki@gmail.com>
281 * BuildTask.cs (Execute): Log errors that happen when invoking ITask
284 * ConsoleLogger.cs (TargetFinishedHandler)
285 (TaskFinishedHandler): Increment error count.
287 2007-01-28 Marek Sieradzki <marek.sieradzki@gmail.com>
289 * BuildItem.cs (RemoveMetadata): Remove from XML.
290 (SetMetadata): Trigger project reevaluation.
292 2007-01-26 Marek Sieradzki <marek.sieradzki@gmail.com>
294 * BuildPropertyGroup.cs (SetProperty): Made it work with persisted
297 2007-01-23 Marek Sieradzki <marek.sieradzki@gmail.com>
299 * BuildTask.cs, ConditionFactorExpression.cs, Target.cs,
300 TaskEngine.cs, UsingTask.cs, ItemReference.cs, BuildItem.cs,
301 BatchingImpl.cs, BuildProperty.cs: Track API changes.
303 * Expression.cs (Parse): Added allowItems parameter and made regexes
306 * Import.cs (Evaluate): Moved hack from tools/xbuild/Makefile here. It
307 will try to import a.ext when given a.EXT.
309 2007-01-21 Marek Sieradzki <marek.sieradzki@gmail.com>
311 * BuildItemGroup.cs: Store information saying what is the last item
312 group that contains build item name.
314 * Project.cs (Build): Pass empty array (build default targets).
316 2007-01-19 Marek Sieradzki <marek.sieradzki@gmail.com>
318 * Token.cs: Commented Transform and LiteralSubExpression and added
321 * ConditionParser.cs: Removed redundant casts, rewrote
322 ParseFactorExpression () and added parsing of '!'.
324 * ConditionTokenizer.cs: Always skip whitespaces when getting next
325 token (no IgnoreWhiteSpace property). Don't create a token from '->'.
326 Moved ReadChar () in front of all ifs.
328 2007-01-16 Marek Sieradzki <marek.sieradzki@gmail.com>
330 * BuildItem.cs (SetMetadata): Escape when we get virtual item or item
331 from XML. (not to escape items that have parents twice).
333 2007-01-16 Marek Sieradzki <marek.sieradzki@gmail.com>
335 * BuildItemGroup.cs (AddNewItem): Add XML and mark project as dirty.
336 (Project): Renamed to ParentProject.
338 * BuildItem.cs (ctor)
339 (CopyCustomMetadata): Add null check.
341 * BuildPropertyGroup.cs (AddNewProperty): Reorganized.
342 (RemoveProperty): Added null check.
344 * TargetCollection.cs (RemoveTarget): Added null check.
346 * Engine.cs (UnloadProject): Added null check.
348 * GroupingCollection.cs (Remove): Check if removed group belongs to
351 * Project.cs (AddNewItem): Implemented.
352 (RemoveItem): Reorganized.
353 (SetProjectExtensions): Added null check.
355 2007-01-14 Marek Sieradzki <marek.sieradzki@gmail.com>
357 * BuildItemGroup.cs (Detach): Added.
359 (RemoveItemAt): Used Detach ().
361 * BuildItem.cs: Made FromXml and HasParent internal and added
362 ParentItem and ParentItemGroup properties (internal).
365 * GroupingCollection.cs (Remove): Used Detach ().
367 * Project.cs (ctor): Added PreserveWhitespace = false to get formatted
369 (GetEvaluatedItemsByNameIgnoringCondition)
370 (GetEvaluatedItemsByName)
371 (GetEvaluatedProperty): Reevaluate if needed.
373 (RemoveAllItemGroups)
374 (RemoveAllPropertyGroups): Implemented.
375 (DoLoad): Added closing of TextReader.
377 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
379 * BuildPropertyGroup.cs: Don't trigger reevaluation just after a
380 change but just mark that it needs it.
382 * Project.cs: Reevaluate when it needs reevaluation and one of
383 Evaluated* properties is used.
385 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
387 * Target.cs: Throw an exception when <OnError> is not last element in
390 * BuildPropertyGroup.cs (RemoveProperty): Remove from XML.
392 * TargetCollection.cs: If a target is already there replace it with
395 * BuildProperty.cs: Added XmlElement property.
397 2007-01-12 Marek Sieradzki <marek.sieradzki@gmail.com>
399 * ImportCollection.cs: Don't add imports that are already added.
401 * BuildItemGroup.cs: MonoTODOs.
403 * ConditionParser.cs (ParseAndEvaluate): Throw an exception when
404 condition can't be evaluated to bool.
406 * BuildPropertyGroup.cs (Evaluate): Simplify.
408 2007-01-10 Marek Sieradzki <marek.sieradzki@gmail.com>
410 * BuildWhen.cs: Moved BindToXml () code to ctor.
412 * BuildItemGroup.cs, BuildPropertyGroup.cs: Added XmlElement internal
413 property needed for removing groups.
415 * Engine.cs: Added StartBuild () that logs build start when Build ()
418 * GroupingCollection.cs: Added Remove () for item and property groups.
420 * Project.cs (AddNewImport): Implemented.
421 (AddNewItemGroup): Implemented.
422 (AddNewPropertyGroup): Implemented.
423 (AddNewUsingTaskFromAssemblyFile): Implemented.
424 (AddNewUsingTaskFromAssemblyName): Implemented.
425 (RemoveItemGroup): Implemented.
426 (RemovePropertyGroup): Implemented.
428 2007-01-10 Marek Sieradzki <marek.sieradzki@gmail.com>
430 * BuildItemGroup.cs (Clear): Remove from XML.
432 * BuildPropertyGroup.cs (AddNewProperty): Use right namespace and add
433 to Project.EvaluatedProperties.
434 (Clear): Remove from XML.
436 2007-01-09 Marek Sieradzki <marek.sieradzki@gmail.com>
438 * Project.cs (InitializeProperties): Added $(MSBuildProjectDirectory)
441 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
443 * GroupingCollection.cs: Use 2 iterators: add_iterator that is used by
444 Add () calls when processing a project from Import and
445 evaluate_iterator for evaluation.
447 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
449 * Import.cs (GetFullPath): Avoid exceptions from Path.GetDirectoryName
450 and prepend relative directory of importing project to full path of
453 2007-01-08 Marek Sieradzki <marek.sieradzki@gmail.com>
455 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
456 BuildItemGroupCollection.cs, Project.cs: Track API changes.
458 * GroupingCollection.cs: Now it needs Project reference so added it.
460 * BuildTask.cs: Formatting.
462 * InvalidProjectFileException.cs: Use MS' names in GetObjectData ().
464 * ConditionParser.cs (ParseAndEvaluate): Added.
466 * BuildItem.cs: Changed exception message.
468 2007-01-02 Marek Sieradzki <marek.sieradzki@gmail.com>
470 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
471 BuildItemGroupCollection.cs, Project.cs, GroupingCollection.cs:
472 GroupingCollection doesn't need Project reference.
474 * BuildTask.cs, Target.cs, TaskEngine.cs, BatchingImpl.cs: Formatting
476 * BuildItemGroup.cs: Added new readOnly parameter to ctor.
477 (Project.EvaluatedItems is a read only item group.)
478 (ReplaceWith): Added.
480 * BuildPropertyGroup.cs (IsGlobal): Added. Setting a property in
481 global property group causes reevaluation of its project.
483 * Project.cs: ProcessXml () is internal and can be "safely" invoked by
486 * OldExpression.cs: Removed.
488 * BuildProperty.cs (Evaluate): Simplified.
490 * ChangeType.cs (TemporaryTransform): Simplified.
492 * BuildItem.cs: There are now 3 types of build items: from XML, having
493 parent from XML, virtual. Added SplitParentItem ().
495 2006-12-20 Marek Sieradzki <marek.sieradzki@gmail.com>
497 * Utilities.cs: Added Unescape ().
499 * BuildItemGroup.cs, BuildItem.cs: Pass null project to
500 BuildItem.Evaluate () to "evaluate" virtual items added to virtual item
501 groups (at the moment just unescape).
503 * Expression.cs (CopyToExpressionList): Unescape strings.
505 2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com>
507 * Target.cs (ctor): Added ImportedProject argument and removed
509 (AddNewTask): Implemented.
511 * TargetCollection.cs (AddNewTarget): Implemented.
513 * Project.cs: Track API changes.
515 2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com>
517 * Target.cs (Build): Don't throw anything in case of error, just
520 * BuildItemGroup.cs (set_Condition): Throw an exception if group is
523 * BuildItem.cs: More meaningfull messages in RemoveMetadata () and
526 * BuildProperty.cs (ToString): Throw an exception if property is not
528 (op_Explicit): Added a null check.
530 * Engine.cs: Better error message.
532 * BuildItemGroupCollection.cs (CopyTo): Changed ArgumentException to
533 IndexOutOfRangeException.
535 * Project.cs (DoLoad, Load): Move try/catch to DoLoad ().
536 (MarkProjectAsDirty): Set time.
538 2006-12-18 Marek Sieradzki <marek.sieradzki@gmail.com>
540 * BuildItemGroup.cs (Clone): Throw exception.
542 * Project.cs (Load): Throw InvalidProjectFileException if anything
545 2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com>
547 * ItemReference.cs: Avoid KeyNotFoundException in ConvertToString ()
548 and ConvertToITaskItemArray ().
550 2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com>
552 * ItemPropertyGroupingBase.cs, TaskEngineAssemblyResolver.cs: Removed
553 classes that were public in Beta 2 and aren't used.
555 * Expression.cs: Added replacement for parsing expressions char by
556 char. It uses regexes to find item/property/metadata references in
559 * ExpressionCollection.cs, BuildTask.cs, ConditionFactorExpression.cs,
560 Target.cs, TaskEngine.cs, BuildItemGroup.cs, UsingTask.cs, Import.cs,
561 BuildItem.cs, BatchingImpl.cs, BuildProperty.cs: Track API changes.
563 * ConditionRelationalExpression.cs: Formatting.
565 * OldExpression.cs: Commented everything.
567 * MetadataReference.cs, ItemReference.cs, PropertyReference.cs: Moved
568 parsing to Expression.
570 * BuildItem.cs: Check if project is from XML in set_Condition and
573 * BuildPropertyGroup.cs, Project.cs: Add ImportedProject to
576 * ConditionNotExpression.cs, ConditionAndExpression.cs: Check if we
577 can evaluate expression in CanEvaluateToBool ().
579 2006-12-12 Marek Sieradzki <marek.sieradzki@gmail.com>
581 * BuildItemGroup.cs (ctor): Add reference to ImportedProject from
582 which item group is imported.
584 * BuildItem.cs, Project.cs: Use new BuildItemGroup.ctor ().
586 2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com>
588 * BuildWhen.cs, BuildPropertyGroupCollection.cs,
589 BuildItemGroupCollection.cs: Little changes related to
592 * ImportCollection.cs: Use GroupingCollection not an internal list.
594 * Import.cs (Evaluate): Split to functions and check if
595 EvaluatedProjectPath is empty.
597 * GroupingCollection.cs, Project.cs: Move evaluation to
598 GroupingCollection. Change algorithm to use 2 passes: first for property
599 groups and imports and second for item groups.
601 2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com>
603 * TaskEngine.cs, ItemReference.cs: Use IDictionary <string,
604 BuildItemGroup> not IDictionary.
606 * BuildItemGroup.cs, BuildItem.cs: Evaluate even if condition was
607 evaluated to false because we want to add every item to
608 Project.EvaluatedItemsByNameIgnoringCondition.
610 * Project.cs (Build): Don't throw an exception just return false.
611 (GetEvaluatedProperty): Avoid NullReferenceException.
612 (SetProjectExtensions): Implemented.
614 2006-12-08 Marek Sieradzki <marek.sieradzki@gmail.com>
616 * TaskElement.cs, Xml.cs, ProcessingPass.cs: Removed.
618 * Utilities.cs, HostLogger.cs, Target.cs, TaskDatabase.cs,
619 BuildItemGroup.cs, BuildPropertyGroup.cs, TargetCollection.cs,
620 Engine.cs, GroupingCollection.cs, Project.cs: Reformatted.
622 * ImportCollection.cs: Added a note.
624 2006-12-07 Marek Sieradzki <marek.sieradzki@gmail.com>
626 * BuildTask.cs: Implemented AddOutputItem () and AddOutputProperty ().
628 * UsingTaskCollection.cs: Removed [MonoTODO] and used CopyTo in CopyTo
629 (UsingTask[] array, int index)
631 * TaskEngine.cs: Reformatted PublishOutput () and added copying of
632 items to Project.EvaluatedItems in PublishItemGroup ();
634 * BuildItemGroup.cs: Added [MonoTODO].
636 * UsingTask.cs: Used expression for AssemblyFile to get around
637 problems with '\' and '/'.
639 * BuildItem.cs (ctor): Added null checks.
640 (GetMetadata): Return unevaluatedMetadata not evaluatedMetadata.
641 (SetMetadata): Don't escape evaluatedMetadata and escape
642 unevaluatedMetadata only when treatPropertyValueAsLiteral.
644 * BuildPropertyGroup.cs (GetEnumerator, Evaluate, RemoveProperty): Use
645 FromXml () instead of null checks.
646 (SetProperty): Escape propertyValue when it is literal.
648 * BuildProperty.cs: Changed exception message.
650 * Project.cs: Added XmlNamespaceManager and XmlNamespace internal
652 (GetProjectExtensions): Implemented.
654 2006-12-05 Marek Sieradzki <marek.sieradzki@gmail.com>
656 * BuildTask.cs: Remove [MonoTODO], add exception throwing in
657 GetParameterValue (), use expressions in ContinueOnError.
658 * ConditionFactorException.cs: Throw InvalidProjectFileException ()
659 instead of InvalidOperationException ().
660 * ImportCollection.cs: Implement CopyTo ().
661 * Target.cs: Remove redundant variables (XmlAttributes), return
662 String.Empty in DependsOnTargets, add a null check in RemoveTask ().
663 * BuildItemGroup.cs, BuildPropertyGroup.cs: Remove [MonoTODO].
664 * Import.cs: Throw an exception when file does not exist.
665 * Target.cs: Use StringComparer.InvariantCultureIgnoreCase.
666 * ConditionTokenizer.cs: Treat '-' as beginning of a number. We'll
667 need to treat item as a token probably
669 2006-12-04 Marek Sieradzki <marek.sieradzki@gmail.com>
671 * Import.cs: Check for project.FullFileName (Path.DirectoryName would
673 * BuildItemGroupCollection.cs: Changed exception types.
675 2006-10-14 Marek Sieradzki <marek.sieradzki@gmail.com>
677 * Engine.cs: Removed redundant cast.
679 * UsingTaskCollection.cs:
683 * TargetCollection.cs: Comment unused variable.
684 * ConditionTokenizer.cs: Simplified checking if current token is a
686 * Target.cs: Removed old code.
688 2006-10-08 Marek Sieradzki <marek.sieradzki@gmail.com>
690 * Target.cs: Changed "" to String.Empty.
691 * TaskEngine.cs: Don't try to convert a parameter to specific type if
692 string was evaluated to String.Empty.
693 * InternalLoggerException.cs:
694 * InvalidProjectFileException.cs: Added LinkDemand before
696 * ConsoleLogger.cs: Changed "" to String.Empty.
697 * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
698 with change to generics).
699 * Project.cs: Made Build () throw more meaningful exception.
701 2006-10-06 Marek Sieradzki <marek.sieradzki@gmail.com>
703 * Target.cs: Reformatted.
704 * TaskEngine.cs: Removed redundant code.
705 * BuildPropertyGroup.cs: Fixed Clear () and AddNewProperty ().
706 * Engine.cs: Made BuildProjectFile () load project file if it's not
709 2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
711 * ConditionRelationalExpression.cs: Change comparers to case
713 * ImportCollection.cs: Add NotImplementedExceptions.
714 * BuildPropertyGroup.cs: Reformatted a bit.
715 * BuildProperty.cs: The same.
716 * Project.cs: Moved evaluation of imports before evaluation of
717 properties. This may "work" until importing projects is redesigned but
718 probably isn't correct.
720 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
722 * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements
724 * BuildItemGroup.cs: Change return to continue.
726 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
728 * ConditionParser.cs: Copyright note.
729 * ExpressionCollection.cs: Fixed arrays passing.
731 2006-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
733 * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs,
734 Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs,
735 BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs,
736 TargetCollection.cs, Engine.cs, Project.cs: Started to use generics.
738 2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com>
740 * Token.cs: Changed names: removed "than".
741 * ConditionRelationalExpression.cs: Added.
742 * ConditionFactorExpression.cs: Added.
743 * BuildItemGroup.cs: Changed Condition property return value to return
744 String.Empty instead of null.
745 * ConditionParser.cs: Added support for parsing relational expressions
747 * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of
748 abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate ()
749 and CanEvaluateToBool (), CanEvaluateToNumber () and
750 CanEvaluateToString ().
751 * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed
752 appropriately to ConditionExpression base class.
753 * ConditionTokenizer.cs: Added null check and changed names in enums:
755 * ConditionNotExpression.cs: Added.
756 * BatchingImpl.cs: Changed to use BoolEvaluate ().
757 * Project.cs: Added checks for condition.
759 2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com>
761 * ConditionalTokenizer.cs, ConditionalExpression.cs,
762 ConditionalParser.cs: Changed name,
764 * ConditionExpression.cs: Added Evaluate ().
765 * ConditionOrExpression.cs, ConditionAndExpression.cs: Added.
766 * BatchingImpl.cs: Added check if task should be executed.
768 2006-06-14 Marek Sieradzki <marek.sieradzki@gmail.com>
770 * UsingTask.cs: Changed properties to return null on empty attribute.
771 * UsingTaskCollection.cs: Added object to SyncRoot.
772 * BuildPropertyGroup.cs: Added NotImplementedException throwing.
774 2006-06-02 Marek Sieradzki <marek.sieradzki@gmail.com>
776 * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs,
777 BuildPropertyGroupCollection.cs: Fixed to match the tests.
779 2006-05-27 Marek Sieradzki <marek.sieradzki@gmail.com>
781 * Utilities.cs: Implemented Escape ().
782 * BuildItem.cs: Added null checks.
783 * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property.
784 * Project.cs: Commented out redundant Evaluate ().
785 * BuildChoose.cs: Minor changes.
787 2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com>
789 * Token: Added new few missing tokens.
790 * Target.cs, Project.cs: Patch from Matthew Metnesky.
791 * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs,
792 ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs,
793 ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs,
795 Removed literal expression parsing based on tokenizer and
796 parser. It needs to be done by regex.
798 Moved tokenizer to ConditionalTokenizer.cs.
800 2006-05-05 Marek Sieradzki <marek.sieradzki@gmail.com>
802 * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs,
803 ItemReference.cs, PropertyReference.cs: Changed name of *Reference
804 methods converting reference to string from ToString () to
805 ConvertToString () to avoid mistakes like using ToString () provided
808 2006-05-03 Marek Sieradzki <marek.sieradzki@gmail.com>
810 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs,
811 Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs,
812 PropertyReference.cs, BuildProperty.cs: Changed Expression to
813 OldExpression and changed To* functions to one ConvertTo ().
814 * TaskEngine.cs: Fixed PublishOutput ().
815 * OldExpression.cs: Added. It will be temporarily used before
816 LiteralExpression will be written using Tokenizer.
817 * Tokenizer.cs, Token.cs, ExpressionCollection.cs,
818 ExpressionParseException.cs, LiteralExpression.cs: Added.
820 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
822 * ImportedProject.cs: Removed warning.
823 * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of
826 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
828 * Project.cs: Removed unnecessary variable.
829 * Engine.cs: Added fixme.
831 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
833 * BuildItem.cs: Moved checking if metadata name is reserved to internal
834 class (Mono.XBuild.Utilities.ReservedNameUtils).
836 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
838 * BuildTask.cs: Removed unnecessary variable.
839 * Engine.cs: Added logging of the build start.
840 * Project.cs: Removed unnecessary variable.
842 2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com>
844 * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed.
846 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
848 * BuildItem.cs, BuildItemGroup.cs: Coding style fixes.
850 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
852 * BuildItem.cs: Fix typo?
854 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
856 * InternalLoggerException.cs, InvalidProjectFileException.cs,
857 Engine.cs, Project.cs: Coding style fixes.
859 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
861 * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items.
863 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
865 * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed
866 to pass tests. Wrote serialization constructor.
867 * Engine.cs, Project.cs: Global engine and project unloading, test and
870 2006-03-28 Marek Sieradzki <marek.sieradzki@gmail.com>
872 * UsingTask.cs: Formatting changes.
874 2006-03-27 Crestez Leonard <cdleonard@gmail.com>
876 * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched
877 to lists instead of hashtables.
878 * Import.cs: Cleaned up, moved importing from Project.cs
879 * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes.
880 * Engine.cs: Cleaned up properties.
881 * Project.cs: Moved importing to Import.cs, cleaned up properties,
882 Separated evaluation and loading.
884 2006-03-21 Crestez Leonard <cdleonard@gmail.com>
886 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs,
887 BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs,
888 Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml
889 binding and evaluation, merge xml binding in constructors.
890 * DirectoryScanner.cs: Includes CAN be empty.
891 * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF.
892 * ConsoleLogger.cs: Fix compilation warning.
894 2006-03-19 Marek Sieradzki <marek.sieradzki@gmail.com>
896 * BuildPropertyGroup.cs, Expression.cs: Coding style fixed.
898 2006-03-18 Marek Sieradzki <marek.sieradzki@gmail.com>
900 * Engine.cs: API cleanup.
902 2006-03-18 Crestez Leonard <cdleonard@gmail.com>
904 * Project.cs: Cleaned up add.
905 * Expression.cs: Hacked to transform \ and / to path separators.
906 * BuildPropertyGroup.cs: Small cleanup.
907 * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project
910 2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com>
912 * BatchingImpl.cs: Updated with BuildTask instead of TaskElement.
913 * BuildItem.cs: Updated for new API and fixed crashing on non-existent
915 * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs,
916 BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs,
917 Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new
919 * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items.
920 * TaskElement.cs: Temporarily removed.
921 * Xml.cs: Changed to static.
923 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
925 * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs,
926 IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs,
927 ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs,
928 IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs,
929 ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs,
930 IBuildPropertyGroupCollection.cs: Removed.
932 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
934 * BuildItem.cs: Removed IBuildItem references.
935 * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and
936 IBuildItemGroup references. Changed Evaluate to internal.
937 * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection
938 reference and hidden constructors.
939 * BuildProperty.cs: Removed IBuildProperty reference.
940 * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and
941 IBuildPropertyGroup references. Changed Evaluate to internal.
942 * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection
943 reference and hidden constructors.
944 * ConsoleLogger.cs: Updated names of event handlers.
945 * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and
946 Escape. Added UnloadAllProjects () and UnloadProject ().
947 * FileLogger.cs: Removed ApplyParameter ().
948 * GroupingCollection.cs: Hidden.
949 * InvalidProjectFileException.cs: Removed HasBeenLogged property.
950 * ItemPropertyGroupingBase.cs: Commented.
951 * ProcessingPass.cs: Hidden.
952 * Project.cs: Removed IProject reference. Changed CurrentEncoding to
954 * Target.cs: Removed ITarget reference.
955 * TargetCollection.cs: Removed ITargetCollection reference.
956 * TaskElement.cs: Removed ITaskElement reference.
957 * TaskEngineAssemblyResolver.cs: Hidden.
958 * Utilities.cs: Made static class, removed CheckPath (),
959 ValidateCulture (), GetSupportedCultures () and added Escape ().
961 2006-02-24 Marek Sieradzki <marek.sieradzki@gmail.com>
963 * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new
966 2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com>
968 * Project.cs: Added MonoTODO attributes.
969 * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs,
970 ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs,
971 IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs,
972 BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs,
973 SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs,
974 BuildItemGroup.cs, InvalidProjectFileException.cs,
975 BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs,
976 Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs,
977 PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs,
978 ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs,
979 IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs,
980 IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs,
981 ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs,
982 ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs,
983 IBuildItemGroup.cs, BuildProperty.cs, Engine.cs,
984 IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs,
985 BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs,
986 ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0.
988 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
990 * TaskDatabase.cs: Change Shared to Framework.
991 * BuildPropertyGroup.cs, Project.cs: Remove obsoleted
992 CaseInsensitiveHashCodeProvider
994 2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com>
996 * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName.
997 * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved
1000 2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com>
1002 * InternalLoggerException.cs: Changed protected fields to private.
1004 2005-09-03 Marek Sieradzki <marek.sieradzki@gmail.com>
1006 * Engine.cs: Added check for globalProperties.
1007 * Project.cs: Added using path from importedProject.FullFileName when
1008 adding UsingTask elements.
1010 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
1012 * TaskElement.cs: Changed ReflectedType to PropertyType.
1013 * ChangeType.cs (TransformToString): Changed to pass proper Type to
1016 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
1018 * BuildPropertyGroup.cs: Added check for PropertyType when adding a
1020 * BuildProperty.cs: Organized PropertyType enum.
1021 * Engine.cs: Added setting CommandLine PropertyType of global
1024 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
1026 * InvalidProjectFileException.cs: Changed Message property.
1027 * ChangeType.cs (TransformToString): Added separator between items.
1028 * TaskEngineAssemblyResolver.cs: Formatting.
1030 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
1032 * DirectoryScanner.cs: Added.
1033 * BuildItem.cs: Moved file scanning code to DirectoryScanner.
1034 * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression.
1035 * Project.cs: Removed Evalute* ().
1037 2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com>
1039 * Target.cs: Formatting.
1040 * Expression.cs: Added check if array == null.
1041 * BuildItem.cs: Removed 'break' to remove warnings.
1042 * ConsoleLogger.cs: Formatting.
1043 * Engine.cs: Added handling of default target(s).
1044 * Project.cs: Added handling of default target(s).
1046 2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com>
1048 * TaskElement.cs: Added check for parameters.
1049 * Target.cs: Added logging of target skipping.
1050 * Expression.cs: Changed returning object[] to string[], bool[]... in
1052 * ItemReference.cs: Fixed for item references without custom
1054 * BatchingImpl.cs: Added real inputs/outputs checking.
1055 * Engine.cs: Moved global properties setting.
1056 * Project.cs: Moved global properties setting.
1058 2005-08-27 Marek Sieradzki <marek.sieradzki@gmail.com>
1060 * Target.cs: Added checks for target existence.
1061 * BuildItemGroup.cs: Changed to use transforms.
1062 * MetadataReference.cs: Wrote real implementation.
1063 * ItemReference.cs: Rewritten to use transforms.
1064 * BuildItem.cs: Changes for transforms and metadata.
1065 * ConsoleLogger.cs: Added verbosity checking and fixed error/warning
1067 * Project.cs: Fixed project importing.
1068 * ImportedProject.cs: Changed to throw exceptions instead of returning
1071 2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com>
1073 * Engine.cs: Removed FIXME.
1074 * Project.cs: Splitted ProcessElements and added project importing.
1075 * ImportedProject.cs: Rewritten.
1077 2005-08-20 Marek Sieradzki <marek.sieradzki@gmail.com>
1079 * TaskElement.cs: Added getting of objects of every type.
1080 * BuildItemGroup.cs: Added ToITaskItemArray ().
1081 * Expression.cs: Implemented part that is not using metadata.
1082 * ItemReference.cs: Implemented parsing item references. Need to fix
1084 * BuildItem.cs: Fixed ToITaskItem ().
1085 * PropertyReference.cs: Implemented parsing property references. This
1086 also needs validity checking.
1088 2005-08-19 Marek Sieradzki <marek.sieradzki@gmail.com>
1090 * TaskElement.cs: Added Output element handling.
1091 * Target.cs: Cleaned up.
1092 * BuildItemGroup.cs: Added creating BuildItem from TaskItem.
1093 * Expression.cs, MetadataReference.cs, PropertyReference.cs,
1094 ItemReference.cs, ChangeType.cs: Added.
1095 * BuildItem.cs: Added creating BuildItem from TaskItem.
1096 * BuildPropertyGroup.cs: Small changes.
1097 * BatchingImpl.cs: Fixed to return real task execution result.
1098 * BuildProperty.cs: Fixed FinalValue property.
1099 * Engine.cs: Reformatted logging.
1100 * Project.cs: Added check to EvaluateProperty.
1102 2005-08-16 Marek Sieradzki <marek.sieradzki@gmail.com>
1104 * TaskElement.cs: Added part of execution engine.
1105 * BuildEngine.cs: Added handling of TaskStarted and TaskFinished.
1106 * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement.
1107 * EventSource.cs: Added FireTaskStarted and FireTaskFinished.
1108 * BuildItem.cs: Added handling of built-in metadata and referencing
1109 Items by name not FullName.
1110 * BatchingImpl.cs: Added temporary task "batching".
1111 * ConsoleLogger.cs: Added temporary workaround to not show sender.
1112 * Project.cs: Added Evaluate. It will be moved to separate class.
1114 2005-08-14 Marek Sieradzki <marek.sieradzki@gmail.com>
1116 * EventSource.cs, Engine.cs: Added CriticalEvents.
1117 * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs,
1118 Project.cs: Added some support for items.
1119 * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up.
1121 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
1123 * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading
1126 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
1128 * BatchingImpl.cs: Added.
1129 * BuildWhen.cs, BuildEngine.cs, Target.cs,
1130 BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs,
1131 BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs,
1132 TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs,
1133 GroupingCollection.cs: Updated.
1135 2005-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
1137 * BuildChoose.cs, BuildEngine.cs, BuildItem.cs,
1138 BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs,
1139 BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs,
1140 BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs,
1141 EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs,
1142 GroupingCollection.cs, HostLogger.cs, ImportedProject.cs,
1143 InternalLoggerException.cs, InvalidProjectFileException.cs,
1144 ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs,
1145 ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs,
1146 TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs,
1147 TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs:
1148 Initial check-in of implementations.
1150 2005-07-16 Marek Sieradzki <marek.sieradzki@gmail.com>
1152 * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs,
1153 IBuildItemGroupCollection.cs, IBuildProperty.cs,
1154 IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs,
1155 ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs,
1156 IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs,
1157 IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs:
1158 Initial check-in of interfaces and a syntax file, real classes are
1159 changing a lot so I'll wait a moment with checking them in.