1 2006-10-14 Marek Sieradzki <marek.sieradzki@gmail.com>
3 * Engine.cs: Removed redundant cast.
5 * UsingTaskCollection.cs:
9 * TargetCollection.cs: Comment unused variable.
10 * ConditionTokenizer.cs: Simplified checking if current token is a
12 * Target.cs: Removed old code.
14 2006-10-08 Marek Sieradzki <marek.sieradzki@gmail.com>
16 * Target.cs: Changed "" to String.Empty.
17 * TaskEngine.cs: Don't try to convert a parameter to specific type if
18 string was evaluated to String.Empty.
19 * InternalLoggerException.cs:
20 * InvalidProjectFileException.cs: Added LinkDemand before
22 * ConsoleLogger.cs: Changed "" to String.Empty.
23 * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
24 with change to generics).
25 * Project.cs: Made Build () throw more meaningful exception.
27 2006-10-06 Marek Sieradzki <marek.sieradzki@gmail.com>
29 * Target.cs: Reformatted.
30 * TaskEngine.cs: Removed redundant code.
31 * BuildPropertyGroup.cs: Fixed Clear () and AddNewProperty ().
32 * Engine.cs: Made BuildProjectFile () load project file if it's not
35 2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
37 * ConditionRelationalExpression.cs: Change comparers to case
39 * ImportCollection.cs: Add NotImplementedExceptions.
40 * BuildPropertyGroup.cs: Reformatted a bit.
41 * BuildProperty.cs: The same.
42 * Project.cs: Moved evaluation of imports before evaluation of
43 properties. This may "work" until importing projects is redesigned but
44 probably isn't correct.
46 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
48 * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements
50 * BuildItemGroup.cs: Change return to continue.
52 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
54 * ConditionParser.cs: Copyright note.
55 * ExpressionCollection.cs: Fixed arrays passing.
57 2006-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
59 * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs,
60 Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs,
61 BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs,
62 TargetCollection.cs, Engine.cs, Project.cs: Started to use generics.
64 2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com>
66 * Token.cs: Changed names: removed "than".
67 * ConditionRelationalExpression.cs: Added.
68 * ConditionFactorExpression.cs: Added.
69 * BuildItemGroup.cs: Changed Condition property return value to return
70 String.Empty instead of null.
71 * ConditionParser.cs: Added support for parsing relational expressions
73 * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of
74 abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate ()
75 and CanEvaluateToBool (), CanEvaluateToNumber () and
76 CanEvaluateToString ().
77 * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed
78 appropriately to ConditionExpression base class.
79 * ConditionTokenizer.cs: Added null check and changed names in enums:
81 * ConditionNotExpression.cs: Added.
82 * BatchingImpl.cs: Changed to use BoolEvaluate ().
83 * Project.cs: Added checks for condition.
85 2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com>
87 * ConditionalTokenizer.cs, ConditionalExpression.cs,
88 ConditionalParser.cs: Changed name,
90 * ConditionExpression.cs: Added Evaluate ().
91 * ConditionOrExpression.cs, ConditionAndExpression.cs: Added.
92 * BatchingImpl.cs: Added check if task should be executed.
94 2006-06-14 Marek Sieradzki <marek.sieradzki@gmail.com>
96 * UsingTask.cs: Changed properties to return null on empty attribute.
97 * UsingTaskCollection.cs: Added object to SyncRoot.
98 * BuildPropertyGroup.cs: Added NotImplementedException throwing.
100 2006-06-02 Marek Sieradzki <marek.sieradzki@gmail.com>
102 * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs,
103 BuildPropertyGroupCollection.cs: Fixed to match the tests.
105 2006-05-27 Marek Sieradzki <marek.sieradzki@gmail.com>
107 * Utilities.cs: Implemented Escape ().
108 * BuildItem.cs: Added null checks.
109 * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property.
110 * Project.cs: Commented out redundant Evaluate ().
111 * BuildChoose.cs: Minor changes.
113 2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com>
115 * Token: Added new few missing tokens.
116 * Target.cs, Project.cs: Patch from Matthew Metnesky.
117 * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs,
118 ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs,
119 ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs,
121 Removed literal expression parsing based on tokenizer and
122 parser. It needs to be done by regex.
124 Moved tokenizer to ConditionalTokenizer.cs.
126 2006-05-05 Marek Sieradzki <marek.sieradzki@gmail.com>
128 * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs,
129 ItemReference.cs, PropertyReference.cs: Changed name of *Reference
130 methods converting reference to string from ToString () to
131 ConvertToString () to avoid mistakes like using ToString () provided
134 2006-05-03 Marek Sieradzki <marek.sieradzki@gmail.com>
136 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs,
137 Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs,
138 PropertyReference.cs, BuildProperty.cs: Changed Expression to
139 OldExpression and changed To* functions to one ConvertTo ().
140 * TaskEngine.cs: Fixed PublishOutput ().
141 * OldExpression.cs: Added. It will be temporarily used before
142 LiteralExpression will be written using Tokenizer.
143 * Tokenizer.cs, Token.cs, ExpressionCollection.cs,
144 ExpressionParseException.cs, LiteralExpression.cs: Added.
146 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
148 * ImportedProject.cs: Removed warning.
149 * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of
152 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
154 * Project.cs: Removed unnecessary variable.
155 * Engine.cs: Added fixme.
157 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
159 * BuildItem.cs: Moved checking if metadata name is reserved to internal
160 class (Mono.XBuild.Utilities.ReservedNameUtils).
162 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
164 * BuildTask.cs: Removed unnecessary variable.
165 * Engine.cs: Added logging of the build start.
166 * Project.cs: Removed unnecessary variable.
168 2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com>
170 * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed.
172 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
174 * BuildItem.cs, BuildItemGroup.cs: Coding style fixes.
176 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
178 * BuildItem.cs: Fix typo?
180 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
182 * InternalLoggerException.cs, InvalidProjectFileException.cs,
183 Engine.cs, Project.cs: Coding style fixes.
185 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
187 * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items.
189 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
191 * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed
192 to pass tests. Wrote serialization constructor.
193 * Engine.cs, Project.cs: Global engine and project unloading, test and
196 2006-03-28 Marek Sieradzki <marek.sieradzki@gmail.com>
198 * UsingTask.cs: Formatting changes.
200 2006-03-27 Crestez Leonard <cdleonard@gmail.com>
202 * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched
203 to lists instead of hashtables.
204 * Import.cs: Cleaned up, moved importing from Project.cs
205 * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes.
206 * Engine.cs: Cleaned up properties.
207 * Project.cs: Moved importing to Import.cs, cleaned up properties,
208 Separated evaluation and loading.
210 2006-03-21 Crestez Leonard <cdleonard@gmail.com>
212 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs,
213 BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs,
214 Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml
215 binding and evaluation, merge xml binding in constructors.
216 * DirectoryScanner.cs: Includes CAN be empty.
217 * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF.
218 * ConsoleLogger.cs: Fix compilation warning.
220 2006-03-19 Marek Sieradzki <marek.sieradzki@gmail.com>
222 * BuildPropertyGroup.cs, Expression.cs: Coding style fixed.
224 2006-03-18 Marek Sieradzki <marek.sieradzki@gmail.com>
226 * Engine.cs: API cleanup.
228 2006-03-18 Crestez Leonard <cdleonard@gmail.com>
230 * Project.cs: Cleaned up add.
231 * Expression.cs: Hacked to transform \ and / to path separators.
232 * BuildPropertyGroup.cs: Small cleanup.
233 * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project
236 2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com>
238 * BatchingImpl.cs: Updated with BuildTask instead of TaskElement.
239 * BuildItem.cs: Updated for new API and fixed crashing on non-existent
241 * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs,
242 BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs,
243 Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new
245 * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items.
246 * TaskElement.cs: Temporarily removed.
247 * Xml.cs: Changed to static.
249 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
251 * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs,
252 IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs,
253 ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs,
254 IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs,
255 ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs,
256 IBuildPropertyGroupCollection.cs: Removed.
258 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
260 * BuildItem.cs: Removed IBuildItem references.
261 * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and
262 IBuildItemGroup references. Changed Evaluate to internal.
263 * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection
264 reference and hidden constructors.
265 * BuildProperty.cs: Removed IBuildProperty reference.
266 * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and
267 IBuildPropertyGroup references. Changed Evaluate to internal.
268 * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection
269 reference and hidden constructors.
270 * ConsoleLogger.cs: Updated names of event handlers.
271 * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and
272 Escape. Added UnloadAllProjects () and UnloadProject ().
273 * FileLogger.cs: Removed ApplyParameter ().
274 * GroupingCollection.cs: Hidden.
275 * InvalidProjectFileException.cs: Removed HasBeenLogged property.
276 * ItemPropertyGroupingBase.cs: Commented.
277 * ProcessingPass.cs: Hidden.
278 * Project.cs: Removed IProject reference. Changed CurrentEncoding to
280 * Target.cs: Removed ITarget reference.
281 * TargetCollection.cs: Removed ITargetCollection reference.
282 * TaskElement.cs: Removed ITaskElement reference.
283 * TaskEngineAssemblyResolver.cs: Hidden.
284 * Utilities.cs: Made static class, removed CheckPath (),
285 ValidateCulture (), GetSupportedCultures () and added Escape ().
287 2006-02-24 Marek Sieradzki <marek.sieradzki@gmail.com>
289 * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new
292 2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com>
294 * Project.cs: Added MonoTODO attributes.
295 * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs,
296 ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs,
297 IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs,
298 BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs,
299 SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs,
300 BuildItemGroup.cs, InvalidProjectFileException.cs,
301 BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs,
302 Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs,
303 PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs,
304 ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs,
305 IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs,
306 IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs,
307 ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs,
308 ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs,
309 IBuildItemGroup.cs, BuildProperty.cs, Engine.cs,
310 IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs,
311 BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs,
312 ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0.
314 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
316 * TaskDatabase.cs: Change Shared to Framework.
317 * BuildPropertyGroup.cs, Project.cs: Remove obsoleted
318 CaseInsensitiveHashCodeProvider
320 2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com>
322 * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName.
323 * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved
326 2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com>
328 * InternalLoggerException.cs: Changed protected fields to private.
330 2005-09-03 Marek Sieradzki <marek.sieradzki@gmail.com>
332 * Engine.cs: Added check for globalProperties.
333 * Project.cs: Added using path from importedProject.FullFileName when
334 adding UsingTask elements.
336 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
338 * TaskElement.cs: Changed ReflectedType to PropertyType.
339 * ChangeType.cs (TransformToString): Changed to pass proper Type to
342 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
344 * BuildPropertyGroup.cs: Added check for PropertyType when adding a
346 * BuildProperty.cs: Organized PropertyType enum.
347 * Engine.cs: Added setting CommandLine PropertyType of global
350 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
352 * InvalidProjectFileException.cs: Changed Message property.
353 * ChangeType.cs (TransformToString): Added separator between items.
354 * TaskEngineAssemblyResolver.cs: Formatting.
356 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
358 * DirectoryScanner.cs: Added.
359 * BuildItem.cs: Moved file scanning code to DirectoryScanner.
360 * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression.
361 * Project.cs: Removed Evalute* ().
363 2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com>
365 * Target.cs: Formatting.
366 * Expression.cs: Added check if array == null.
367 * BuildItem.cs: Removed 'break' to remove warnings.
368 * ConsoleLogger.cs: Formatting.
369 * Engine.cs: Added handling of default target(s).
370 * Project.cs: Added handling of default target(s).
372 2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com>
374 * TaskElement.cs: Added check for parameters.
375 * Target.cs: Added logging of target skipping.
376 * Expression.cs: Changed returning object[] to string[], bool[]... in
378 * ItemReference.cs: Fixed for item references without custom
380 * BatchingImpl.cs: Added real inputs/outputs checking.
381 * Engine.cs: Moved global properties setting.
382 * Project.cs: Moved global properties setting.
384 2005-08-27 Marek Sieradzki <marek.sieradzki@gmail.com>
386 * Target.cs: Added checks for target existence.
387 * BuildItemGroup.cs: Changed to use transforms.
388 * MetadataReference.cs: Wrote real implementation.
389 * ItemReference.cs: Rewritten to use transforms.
390 * BuildItem.cs: Changes for transforms and metadata.
391 * ConsoleLogger.cs: Added verbosity checking and fixed error/warning
393 * Project.cs: Fixed project importing.
394 * ImportedProject.cs: Changed to throw exceptions instead of returning
397 2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com>
399 * Engine.cs: Removed FIXME.
400 * Project.cs: Splitted ProcessElements and added project importing.
401 * ImportedProject.cs: Rewritten.
403 2005-08-20 Marek Sieradzki <marek.sieradzki@gmail.com>
405 * TaskElement.cs: Added getting of objects of every type.
406 * BuildItemGroup.cs: Added ToITaskItemArray ().
407 * Expression.cs: Implemented part that is not using metadata.
408 * ItemReference.cs: Implemented parsing item references. Need to fix
410 * BuildItem.cs: Fixed ToITaskItem ().
411 * PropertyReference.cs: Implemented parsing property references. This
412 also needs validity checking.
414 2005-08-19 Marek Sieradzki <marek.sieradzki@gmail.com>
416 * TaskElement.cs: Added Output element handling.
417 * Target.cs: Cleaned up.
418 * BuildItemGroup.cs: Added creating BuildItem from TaskItem.
419 * Expression.cs, MetadataReference.cs, PropertyReference.cs,
420 ItemReference.cs, ChangeType.cs: Added.
421 * BuildItem.cs: Added creating BuildItem from TaskItem.
422 * BuildPropertyGroup.cs: Small changes.
423 * BatchingImpl.cs: Fixed to return real task execution result.
424 * BuildProperty.cs: Fixed FinalValue property.
425 * Engine.cs: Reformatted logging.
426 * Project.cs: Added check to EvaluateProperty.
428 2005-08-16 Marek Sieradzki <marek.sieradzki@gmail.com>
430 * TaskElement.cs: Added part of execution engine.
431 * BuildEngine.cs: Added handling of TaskStarted and TaskFinished.
432 * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement.
433 * EventSource.cs: Added FireTaskStarted and FireTaskFinished.
434 * BuildItem.cs: Added handling of built-in metadata and referencing
435 Items by name not FullName.
436 * BatchingImpl.cs: Added temporary task "batching".
437 * ConsoleLogger.cs: Added temporary workaround to not show sender.
438 * Project.cs: Added Evaluate. It will be moved to separate class.
440 2005-08-14 Marek Sieradzki <marek.sieradzki@gmail.com>
442 * EventSource.cs, Engine.cs: Added CriticalEvents.
443 * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs,
444 Project.cs: Added some support for items.
445 * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up.
447 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
449 * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading
452 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
454 * BatchingImpl.cs: Added.
455 * BuildWhen.cs, BuildEngine.cs, Target.cs,
456 BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs,
457 BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs,
458 TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs,
459 GroupingCollection.cs: Updated.
461 2005-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
463 * BuildChoose.cs, BuildEngine.cs, BuildItem.cs,
464 BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs,
465 BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs,
466 BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs,
467 EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs,
468 GroupingCollection.cs, HostLogger.cs, ImportedProject.cs,
469 InternalLoggerException.cs, InvalidProjectFileException.cs,
470 ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs,
471 ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs,
472 TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs,
473 TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs:
474 Initial check-in of implementations.
476 2005-07-16 Marek Sieradzki <marek.sieradzki@gmail.com>
478 * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs,
479 IBuildItemGroupCollection.cs, IBuildProperty.cs,
480 IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs,
481 ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs,
482 IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs,
483 IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs:
484 Initial check-in of interfaces and a syntax file, real classes are
485 changing a lot so I'll wait a moment with checking them in.