1 2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
3 * ConditionRelationalExpression.cs: Change comparers to case
5 * ImportCollection.cs: Add NotImplementedExceptions.
6 * BuildPropertyGroup.cs: Reformatted a bit.
7 * BuildProperty.cs: The same.
8 * Project.cs: Moved evaluation of imports before evaluation of
9 properties. This may "work" until importing projects is redesigned but
10 probably isn't correct.
12 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
14 * BuildPropertyGroup.cs: Check for XmlNodes that aren't XmlElements
16 * BuildItemGroup.cs: Change return to continue.
18 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
20 * ConditionParser.cs: Copyright note.
21 * ExpressionCollection.cs: Fixed arrays passing.
23 2006-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
25 * BuildTask.cs, UsingTaskCollection.cs, ImportCollection.cs,
26 Target.cs, TaskDatabase.cs, TaskEngine.cs, BuildItemGroup.cs,
27 BuildChoose.cs, DirectoryScanner.cs, BuildPropertyGroup.cs,
28 TargetCollection.cs, Engine.cs, Project.cs: Started to use generics.
30 2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com>
32 * Token.cs: Changed names: removed "than".
33 * ConditionRelationalExpression.cs: Added.
34 * ConditionFactorExpression.cs: Added.
35 * BuildItemGroup.cs: Changed Condition property return value to return
36 String.Empty instead of null.
37 * ConditionParser.cs: Added support for parsing relational expressions
39 * ConditionExpression.cs: Removed Evaluate (). Added 2 sets of
40 abstract functions: BoolEvaluate (), NumberEvaluate () and StringEvaluate ()
41 and CanEvaluateToBool (), CanEvaluateToNumber () and
42 CanEvaluateToString ().
43 * ConditionOrExpression.cs, ConditionAndExpression.cs: Changed
44 appropriately to ConditionExpression base class.
45 * ConditionTokenizer.cs: Added null check and changed names in enums:
47 * ConditionNotExpression.cs: Added.
48 * BatchingImpl.cs: Changed to use BoolEvaluate ().
49 * Project.cs: Added checks for condition.
51 2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com>
53 * ConditionalTokenizer.cs, ConditionalExpression.cs,
54 ConditionalParser.cs: Changed name,
56 * ConditionExpression.cs: Added Evaluate ().
57 * ConditionOrExpression.cs, ConditionAndExpression.cs: Added.
58 * BatchingImpl.cs: Added check if task should be executed.
60 2006-06-14 Marek Sieradzki <marek.sieradzki@gmail.com>
62 * UsingTask.cs: Changed properties to return null on empty attribute.
63 * UsingTaskCollection.cs: Added object to SyncRoot.
64 * BuildPropertyGroup.cs: Added NotImplementedException throwing.
66 2006-06-02 Marek Sieradzki <marek.sieradzki@gmail.com>
68 * BuildItem.cs, BuildProperty.cs, BuildPropertyGroup.cs,
69 BuildPropertyGroupCollection.cs: Fixed to match the tests.
71 2006-05-27 Marek Sieradzki <marek.sieradzki@gmail.com>
73 * Utilities.cs: Implemented Escape ().
74 * BuildItem.cs: Added null checks.
75 * BuildPropertyGroup.cs, BuildProperty.cs: Moved FromXml property.
76 * Project.cs: Commented out redundant Evaluate ().
77 * BuildChoose.cs: Minor changes.
79 2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com>
81 * Token: Added new few missing tokens.
82 * Target.cs, Project.cs: Patch from Matthew Metnesky.
83 * BuildItemGroup.cs, OldExpression.cs, MetadataReference.cs,
84 ItemReference.cs, PropertyReference.cs, ConditionalTokenizer.cs,
85 ConditionalParser.cs, Tokenizer.cs, LiteralExpression.cs,
87 Removed literal expression parsing based on tokenizer and
88 parser. It needs to be done by regex.
90 Moved tokenizer to ConditionalTokenizer.cs.
92 2006-05-05 Marek Sieradzki <marek.sieradzki@gmail.com>
94 * ExpressionCollection.cs, BuildItemGroup.cs, BuildItem.cs,
95 ItemReference.cs, PropertyReference.cs: Changed name of *Reference
96 methods converting reference to string from ToString () to
97 ConvertToString () to avoid mistakes like using ToString () provided
100 2006-05-03 Marek Sieradzki <marek.sieradzki@gmail.com>
102 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, MetadataReference.cs,
103 Import.cs, ItemReference.cs, BuildItem.cs, BatchingImpl.cs,
104 PropertyReference.cs, BuildProperty.cs: Changed Expression to
105 OldExpression and changed To* functions to one ConvertTo ().
106 * TaskEngine.cs: Fixed PublishOutput ().
107 * OldExpression.cs: Added. It will be temporarily used before
108 LiteralExpression will be written using Tokenizer.
109 * Tokenizer.cs, Token.cs, ExpressionCollection.cs,
110 ExpressionParseException.cs, LiteralExpression.cs: Added.
112 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
114 * ImportedProject.cs: Removed warning.
115 * Engine.cs, Project.cs, TaskDatabase.cs: Added registration of
118 2006-04-24 Marek Sieradzki <marek.sieradzki@gmail.com>
120 * Project.cs: Removed unnecessary variable.
121 * Engine.cs: Added fixme.
123 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
125 * BuildItem.cs: Moved checking if metadata name is reserved to internal
126 class (Mono.XBuild.Utilities.ReservedNameUtils).
128 2006-04-14 Marek Sieradzki <marek.sieradzki@gmail.com>
130 * BuildTask.cs: Removed unnecessary variable.
131 * Engine.cs: Added logging of the build start.
132 * Project.cs: Removed unnecessary variable.
134 2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com>
136 * GlobalEngineAccessor.cs, ProjectFileEncoding.cs: Removed.
138 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
140 * BuildItem.cs, BuildItemGroup.cs: Coding style fixes.
142 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
144 * BuildItem.cs: Fix typo?
146 2006-03-29 Marek Sieradzki <marek.sieradzki@gmail.com>
148 * InternalLoggerException.cs, InvalidProjectFileException.cs,
149 Engine.cs, Project.cs: Coding style fixes.
151 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
153 * BuildItem.cs, BuildItemGroup.cs: Cleaned up build items.
155 2006-03-29 Crestez Leonard <cdleonard@gmail.com>
157 * InternalLoggerException.cs, InvalidProjectFileException.cs: Fixed
158 to pass tests. Wrote serialization constructor.
159 * Engine.cs, Project.cs: Global engine and project unloading, test and
162 2006-03-28 Marek Sieradzki <marek.sieradzki@gmail.com>
164 * UsingTask.cs: Formatting changes.
166 2006-03-27 Crestez Leonard <cdleonard@gmail.com>
168 * ImportCollection.cs, UsingTaskCollection.cs: Cleaned up, switched
169 to lists instead of hashtables.
170 * Import.cs: Cleaned up, moved importing from Project.cs
171 * BuildProperty.cs, BuildPropertyGroup.cs: Minor fixes.
172 * Engine.cs: Cleaned up properties.
173 * Project.cs: Moved importing to Import.cs, cleaned up properties,
174 Separated evaluation and loading.
176 2006-03-21 Crestez Leonard <cdleonard@gmail.com>
178 * Target.cs, TaskEngine.cs, BuildItemGroup.cs, BuildItem.cs,
179 BuildPropertyGroup.cs, TargetCollection.cs, BuildProperty.cs,
180 Engine.cs, Project.cs, BuildTask.cs, UsingTask.cs: Separate xml
181 binding and evaluation, merge xml binding in constructors.
182 * DirectoryScanner.cs: Includes CAN be empty.
183 * BuildChoose.cs, ItemReference.cs, ChangeType.cs: Newline at EOF.
184 * ConsoleLogger.cs: Fix compilation warning.
186 2006-03-19 Marek Sieradzki <marek.sieradzki@gmail.com>
188 * BuildPropertyGroup.cs, Expression.cs: Coding style fixed.
190 2006-03-18 Marek Sieradzki <marek.sieradzki@gmail.com>
192 * Engine.cs: API cleanup.
194 2006-03-18 Crestez Leonard <cdleonard@gmail.com>
196 * Project.cs: Cleaned up add.
197 * Expression.cs: Hacked to transform \ and / to path separators.
198 * BuildPropertyGroup.cs: Small cleanup.
199 * BuildTask.cs, TaskEngine.cs: Fix TaskEngine not getting a Project
202 2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com>
204 * BatchingImpl.cs: Updated with BuildTask instead of TaskElement.
205 * BuildItem.cs: Updated for new API and fixed crashing on non-existent
207 * BuildItemGroup.cs, BuildItemGroupCollection.cs, BuildProperty.cs,
208 BuildPropertyGroup.cs, BuildPropertyGroupCollection.cs, ConsoleLogger.cs,
209 Engine.cs, Project.cs, Target.cs, TargetCollection.cs: Updated for new
211 * DirectoryScanner.cs: Fixed ordering and crashing on duplicated items.
212 * TaskElement.cs: Temporarily removed.
213 * Xml.cs: Changed to static.
215 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
217 * IBuildProperty.cs, ICultureStringUtilities.cs, IProject.cs,
218 IGlobalEngineAccessor.cs, ITaskElement.cs, IBuildPropertyGroup.cs,
219 ITargetCollection.cs, IEngine.cs, IBuildItemGroupCollection.cs,
220 IHostLogger.cs, IBuildItem.cs, IHostFeedback.cs,
221 ILangSecurityLevelChecker.cs, ITarget.cs, IBuildItemGroup.cs,
222 IBuildPropertyGroupCollection.cs: Removed.
224 2006-02-26 Marek Sieradzki <marek.sieradzki@gmail.com>
226 * BuildItem.cs: Removed IBuildItem references.
227 * BuildItemGroup.cs: Removed ItemPropertyGroupingBase and
228 IBuildItemGroup references. Changed Evaluate to internal.
229 * BuildItemGroupCollection.cs. Removed IBuildItemGroupCollection
230 reference and hidden constructors.
231 * BuildProperty.cs: Removed IBuildProperty reference.
232 * BuildPropertyGroup.cs: Removed ItemPropertyGroupingBase and
233 IBuildPropertyGroup references. Changed Evaluate to internal.
234 * BuildPropertyGroupCollection.cs: Removed IBuildPropertyGroupCollection
235 reference and hidden constructors.
236 * ConsoleLogger.cs: Updated names of event handlers.
237 * Engine.cs: Removed IEngine reference. Removed ClearAllProjects and
238 Escape. Added UnloadAllProjects () and UnloadProject ().
239 * FileLogger.cs: Removed ApplyParameter ().
240 * GroupingCollection.cs: Hidden.
241 * InvalidProjectFileException.cs: Removed HasBeenLogged property.
242 * ItemPropertyGroupingBase.cs: Commented.
243 * ProcessingPass.cs: Hidden.
244 * Project.cs: Removed IProject reference. Changed CurrentEncoding to
246 * Target.cs: Removed ITarget reference.
247 * TargetCollection.cs: Removed ITargetCollection reference.
248 * TaskElement.cs: Removed ITaskElement reference.
249 * TaskEngineAssemblyResolver.cs: Hidden.
250 * Utilities.cs: Made static class, removed CheckPath (),
251 ValidateCulture (), GetSupportedCultures () and added Escape ().
253 2006-02-24 Marek Sieradzki <marek.sieradzki@gmail.com>
255 * ConsoleLogger.cs, Engine.cs: Quick hacks to make it compile with new
258 2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com>
260 * Project.cs: Added MonoTODO attributes.
261 * Utilities.cs, TaskElement.cs, IBuildProperty.cs, HostLogger.cs,
262 ProjectFileEncoding.cs, ICultureStringUtilities.cs, FileLogger.cs,
263 IProject.cs, BuildSettings.cs, BuildWhen.cs, IGlobalEngineAccessor.cs,
264 BuildEngine.cs, ITaskElement.cs, Target.cs, TaskDatabase.cs,
265 SolutionParser.cs, IBuildPropertyGroup.cs, InternalLoggerException.cs,
266 BuildItemGroup.cs, InvalidProjectFileException.cs,
267 BuildPropertyGroupCollection.cs, MetadataReference.cs, Expression.cs,
268 Xml.cs, BuildChoose.cs, EventSource.cs, ProcessingPass.cs,
269 PropertyPosition.cs, GlobalEngineAccessor.cs, ITargetCollection.cs,
270 ItemReference.cs, IEngine.cs, BuildItem.cs, DirectoryScanner.cs,
271 IBuildItemGroupCollection.cs, BuildPropertyGroup.cs, IHostLogger.cs,
272 IBuildItem.cs, ChangeType.cs, WriteHandler.cs, IHostFeedback.cs,
273 ILangSecurityLevelChecker.cs, ITarget.cs, BatchingImpl.cs,
274 ConsoleLogger.cs, TargetCollection.cs, PropertyReference.cs,
275 IBuildItemGroup.cs, BuildProperty.cs, Engine.cs,
276 IBuildPropertyGroupCollection.cs, GroupingCollection.cs,Project.cs,
277 BuildItemGroupCollection.cs, ItemPropertyGroupingBase.cs,
278 ImportedProject.cs, TaskEngineAssemblyResolver.cs: Added #if NET_2_0.
280 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
282 * TaskDatabase.cs: Change Shared to Framework.
283 * BuildPropertyGroup.cs, Project.cs: Remove obsoleted
284 CaseInsensitiveHashCodeProvider
286 2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com>
288 * TaskDatabase.cs: Added handling of LoadInfoType.AssemblyName.
289 * Engine.cs, Project.cs: Added handling of MSBuildBinPath reserved
292 2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com>
294 * InternalLoggerException.cs: Changed protected fields to private.
296 2005-09-03 Marek Sieradzki <marek.sieradzki@gmail.com>
298 * Engine.cs: Added check for globalProperties.
299 * Project.cs: Added using path from importedProject.FullFileName when
300 adding UsingTask elements.
302 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
304 * TaskElement.cs: Changed ReflectedType to PropertyType.
305 * ChangeType.cs (TransformToString): Changed to pass proper Type to
308 2005-09-01 Marek Sieradzki <marek.sieradzki@gmail.com>
310 * BuildPropertyGroup.cs: Added check for PropertyType when adding a
312 * BuildProperty.cs: Organized PropertyType enum.
313 * Engine.cs: Added setting CommandLine PropertyType of global
316 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
318 * InvalidProjectFileException.cs: Changed Message property.
319 * ChangeType.cs (TransformToString): Added separator between items.
320 * TaskEngineAssemblyResolver.cs: Formatting.
322 2005-08-31 Marek Sieradzki <marek.sieradzki@gmail.com>
324 * DirectoryScanner.cs: Added.
325 * BuildItem.cs: Moved file scanning code to DirectoryScanner.
326 * BuildPropertyGroup.cs: Changed Project.Evaluate to Expression.
327 * Project.cs: Removed Evalute* ().
329 2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com>
331 * Target.cs: Formatting.
332 * Expression.cs: Added check if array == null.
333 * BuildItem.cs: Removed 'break' to remove warnings.
334 * ConsoleLogger.cs: Formatting.
335 * Engine.cs: Added handling of default target(s).
336 * Project.cs: Added handling of default target(s).
338 2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com>
340 * TaskElement.cs: Added check for parameters.
341 * Target.cs: Added logging of target skipping.
342 * Expression.cs: Changed returning object[] to string[], bool[]... in
344 * ItemReference.cs: Fixed for item references without custom
346 * BatchingImpl.cs: Added real inputs/outputs checking.
347 * Engine.cs: Moved global properties setting.
348 * Project.cs: Moved global properties setting.
350 2005-08-27 Marek Sieradzki <marek.sieradzki@gmail.com>
352 * Target.cs: Added checks for target existence.
353 * BuildItemGroup.cs: Changed to use transforms.
354 * MetadataReference.cs: Wrote real implementation.
355 * ItemReference.cs: Rewritten to use transforms.
356 * BuildItem.cs: Changes for transforms and metadata.
357 * ConsoleLogger.cs: Added verbosity checking and fixed error/warning
359 * Project.cs: Fixed project importing.
360 * ImportedProject.cs: Changed to throw exceptions instead of returning
363 2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com>
365 * Engine.cs: Removed FIXME.
366 * Project.cs: Splitted ProcessElements and added project importing.
367 * ImportedProject.cs: Rewritten.
369 2005-08-20 Marek Sieradzki <marek.sieradzki@gmail.com>
371 * TaskElement.cs: Added getting of objects of every type.
372 * BuildItemGroup.cs: Added ToITaskItemArray ().
373 * Expression.cs: Implemented part that is not using metadata.
374 * ItemReference.cs: Implemented parsing item references. Need to fix
376 * BuildItem.cs: Fixed ToITaskItem ().
377 * PropertyReference.cs: Implemented parsing property references. This
378 also needs validity checking.
380 2005-08-19 Marek Sieradzki <marek.sieradzki@gmail.com>
382 * TaskElement.cs: Added Output element handling.
383 * Target.cs: Cleaned up.
384 * BuildItemGroup.cs: Added creating BuildItem from TaskItem.
385 * Expression.cs, MetadataReference.cs, PropertyReference.cs,
386 ItemReference.cs, ChangeType.cs: Added.
387 * BuildItem.cs: Added creating BuildItem from TaskItem.
388 * BuildPropertyGroup.cs: Small changes.
389 * BatchingImpl.cs: Fixed to return real task execution result.
390 * BuildProperty.cs: Fixed FinalValue property.
391 * Engine.cs: Reformatted logging.
392 * Project.cs: Added check to EvaluateProperty.
394 2005-08-16 Marek Sieradzki <marek.sieradzki@gmail.com>
396 * TaskElement.cs: Added part of execution engine.
397 * BuildEngine.cs: Added handling of TaskStarted and TaskFinished.
398 * BuildItemGroup.cs: Iterating by XmlNode casted to XmlElement.
399 * EventSource.cs: Added FireTaskStarted and FireTaskFinished.
400 * BuildItem.cs: Added handling of built-in metadata and referencing
401 Items by name not FullName.
402 * BatchingImpl.cs: Added temporary task "batching".
403 * ConsoleLogger.cs: Added temporary workaround to not show sender.
404 * Project.cs: Added Evaluate. It will be moved to separate class.
406 2005-08-14 Marek Sieradzki <marek.sieradzki@gmail.com>
408 * EventSource.cs, Engine.cs: Added CriticalEvents.
409 * BuildItem.cs, BuildItemGroup.cs, BuildItemGroupCollection.cs,
410 Project.cs: Added some support for items.
411 * BuildProperty.cs, BuildPropertyGroup.cs: Cleaned up.
413 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
415 * BuildProperty.cs, BuildPropertyGroup.cs, Project.cs: Added loading
418 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
420 * BatchingImpl.cs: Added.
421 * BuildWhen.cs, BuildEngine.cs, Target.cs,
422 BuildPropertyGroupCollection.cs, BuildChoose.cs, EventSource.cs,
423 BuildItem.cs, BuildPropertyGroup.cs, ConsoleLogger.cs,
424 TargetCollection.cs, BuildProperty.cs, Engine.cs, Project.cs,
425 GroupingCollection.cs: Updated.
427 2005-08-06 Marek Sieradzki <marek.sieradzki@gmail.com>
429 * BuildChoose.cs, BuildEngine.cs, BuildItem.cs,
430 BuildItemGroupCollection.cs, BuildItemGroup.cs, BuildProperty.cs,
431 BuildPropertyGroupCollection.cs, BuildPropertyGroup.cs,
432 BuildSettings.cs, BuildWhen.cs, ConsoleLogger.cs, Engine.cs,
433 EventSource.cs, FileLogger.cs, GlobalEngineAccessor.cs,
434 GroupingCollection.cs, HostLogger.cs, ImportedProject.cs,
435 InternalLoggerException.cs, InvalidProjectFileException.cs,
436 ItemPropertyGroupingBase.cs, ProcessingPass.cs, Project.cs,
437 ProjectFileEncoding.cs, PropertyPosition.cs, SolutionParser.cs,
438 TargetCollection.cs, Target.cs, TaskDatabase.cs, TaskElement.cs,
439 TaskEngineAssemblyResolver.cs, Utilities.cs, WriteHandler.cs, Xml.cs:
440 Initial check-in of implementations.
442 2005-07-16 Marek Sieradzki <marek.sieradzki@gmail.com>
444 * conditions.jay, IBuildItem.cs, IBuildItemGroup.cs,
445 IBuildItemGroupCollection.cs, IBuildProperty.cs,
446 IBuildPropertyGroup.cs, IBuildPropertyGroupCollection.cs,
447 ICultureStringUtilities.cs, IEngine.cs, IGlobalEngineAccessor.cs,
448 IHostFeedback.cs, IHostLogger.cs, ILangSecurityLevelChecker.cs,
449 IProject.cs, ITargetCollection.cs, ITarget.cs, ITaskElement.cs:
450 Initial check-in of interfaces and a syntax file, real classes are
451 changing a lot so I'll wait a moment with checking them in.