Switch branches/tags
Commits on Jun 8, 2009
  1. Bump version numbers

    Andrew Jorgensen
    Andrew Jorgensen committed Jun 8, 2009
    svn path=/branches/mono-2-4-2/mono/; revision=135675
  2. 2009-06-08 Rodrigo Kumpera <>

    kumpera committed Jun 8, 2009
    	Backport of 135171.
    	* threads.c (ves_icall_System_Threading_Thread_Sleep_internal):
    	Check if the thread was interrupted and proccess it straight away.
    	Makes abortion much more responsive.
    	Backport of 135170.
    	* threads.c (mono_thread_execute_interruption): Use atomic cas with
    	MonoThread::interruption_requested to match it's counterpart.
    	Fixes a hang in abort-stress-1 on a 2 core x86.
    svn path=/branches/mono-2-4/mono/; revision=135666
  3. Improve exception handling when running in mdb: check whether an exce…

    Martin Baulig
    Martin Baulig committed Jun 8, 2009
    …ption is caught inside a runtime-invoked method or the runtime-invoke wrapper.
    2009-06-08  Martin Baulig  <>
    	* debug-mini.c
    	(MonoDebuggerExceptionAction): Moved into debug-mini.h.
    	(_mono_debugger_throw_exception): Don't make this static.
    	(_mono_debugger_unhandled_exception): Likewise.
    	(mono_debugger_handle_exception): Moved to mini-exceptions.c
    	* debug-mini.c
    	(MonoDebuggerExceptionAction): Moved here from debug-mini.c.
    	(_mono_debugger_throw_exception): Add function prototype.
    	(_mono_debugger_unhandled_exception): Likewise.
    	* mini-exceptions.c
    	(mono_handle_exception_internal): Added `MonoJitInfo **out_ji'
    	arg; return the first exception handler if the exception is caught
    	and we're running inside the debugger.
    	(mono_debugger_handle_exception): Moved here from debug-mini.c;
    	improve exception handle inside runtime-invoke, check whether the
    	exception is actually caught in the method being invoked and not
    	by the runtime-invoke-wrapper.
    svn path=/branches/mono-2-4/mono/; revision=135636
  4. Backport of r135630

    grendello committed Jun 8, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135631
  5. In class/PEAPI:

    radical committed Jun 8, 2009
    2009-03-31  Rodrigo Kumpera  <>
    	* Code.cs (CILLabel): Add new constructor to signal that
    	a label is an absolute il offset. This is required by exception
    	handling declarations that use offsets and not labels.
    In ilasm/codegen:
    2009-05-27  Rodrigo Kumpera  <>
    	* TypeDef.cs: Add field method_list to preserve definition
    	order of methods when emiting the PE file.
    2009-04-20  Ankit Jain  <>
    	Fix bug #494221
    	* MethodDef.cs (BeginLocalsScope): New.
    	(EndLocalsScope): New.
    	(GetNamedLocal): Support scoping for .locals
    	* MethodDef.cs (GetNamedLocalSlot): Return -1 if local var not found.
    2009-03-31  Rodrigo Kumpera  <>
    	* MethodDef.cs (WriteCode): Emit labels which use offsets as absolute PEAPI
    In ilasm/scanner:
    	* StringHelper.cs (startIdChars): New. Set of chars that can start an
    	(Start): Use startIdChars instead of idchars.
    	Fix bug #487155.
    	* StringHelper.cs: Handle octal values in strings.
    	Patch from  Stephen Gennard (
    In ilasm/parser:
    	Fix bug #494221.
    	* ILParser.jay (scope_block_begin): Mark begin .locals scope.
    	(scope_block): Mark end .locals scope.
    	* ILParser.jay (instr): Handle unidentified local var id.
    2009-03-31  Rodrigo Kumpera  <>
    	* ILParser.jay: Fix integer labels in handler blocks.
    svn path=/branches/mono-2-4/mcs/; revision=135623
  6. Update xbuild and Microsoft.Build.* from trunk.

    radical committed Jun 8, 2009
    In tools/xbuild:
    	* xbuild/Microsoft.Common.targets: Use ResolveAssemblyReference
    	to find satellite assemblies, dependent assemblies, dependent
    	files, copy local files etc.
    	Add targets to fetch all this info for all referenced projects,
    	and copy them to the target locations. Also, copy the debug (.mdb)
    	files. Honor, "CopyToOutputDirectory" metadata.
    	* Parameters.cs (ProcessProperty): Handle invalid syntax.
    	* SolutionParser.cs (AddGeneralSettings): Don't hardcode the default
    	config/platform. Move to ..
    	(AddDefaultSolutionConfiguration): .. here.
    	(AddCurrentSolutionConfigurationContents): Use the first solution target
    	as the default config/platform or use Debug/anycpu if no config is available.
    In tools/xbuild/tests:
    	* standalone/Project01: New. Solution with interdependent multiple projects,
    	with deploy files, satellite assemblies etc.
    In class/Microsoft.Build.Tasks/Test/Microsoft.Build.Tasks:
    	* CreateCSharpManifestResourceNameTest.cs (TestInvalidCulture): New.
    	* CscTest.cs (TestDefineConstants): Update DefineConstants to include
    	spaces also.
    	* AssignTargetPathTest.cs: Update tests to not depend on a fixed
    	root (C:\) or cur dir.
    In class/Microsoft.Build.Tasks:
    	* Microsoft.Build.Tasks_test.dll.sources: Added
    In class/Microsoft.Build.Tasks/Microsoft.Build.Tasks:
    	* AssignCulture.cs (TrySplitResourceName): Reset culture arg to null
    	if returning false.
    	* CreateCSharpManifestResourceName.cs: Set culture to null if the
    	culture was invalid.
    	* ResolvedReference.cs: New.
    	* AssemblyResolver.cs (GetResolvedReference): New. Honor's the
    	'Private' metadata and sets CopyLocal.
    	(SearchPath): New. Used to track how the reference was resolved.
    	(IsStrongNamed): Fix potential null ref.
    	All the assembly resolution methods now return ResolvedReference
    	instead of strings, to aid in proper CopyLocal behavior and
    	dependency resolution.
    	* ResolveAssemblyReference.cs: Add support for finding related files,
    	satellite files, resolving dependencies, copy local files.
    	Resolve files specified in "AssemblyFiles" param also, used to resolve
    	project references and dependencies.
    	* Csc.cs (AddResponseFileCommands): Split DefineConstants on space also.
    	* AssignTargetPath.cs (Execute): Expand incoming path to absolute
    	path, and correctly extract relative path (skipping over the preceding
    	dir separator).
    	* Copy.cs (CopyFile): Don't copy if the source and dest are the same.
    In class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine:
    	* ProjectTest (TestBuildSolutionProject): New. Disabled for now.
    	* Consts.cs (RunningOnMono): Make public.
    	* TargetTest (TestTargetOutputsIncludingMetadata): New.
    In class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine:
    	* Target.cs (Outputs): Use ITaskItem[] for conversion, to retain
    	the metadata.
    svn path=/branches/mono-2-4/mcs/; revision=135620
Commits on Jun 5, 2009
  1. Backport of r130909

    grendello committed Jun 5, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135562
  2. Fix the 1.1 build

    grendello committed Jun 5, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135561
  3. Backport of r135558

    grendello committed Jun 5, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135559
  4. merge from trunk r135532.

    robert-j committed Jun 5, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135533
Commits on Jun 4, 2009
  1. Backport of r135488

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135489
  2. Backport of r135486

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135487
  3. Backport of r135471

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135472
  4. Backport of r135464

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135465
  5. Backport of r135460

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135462
  6. Backport of r135438

    grendello committed Jun 4, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135439
  7. 2009-06-04 Zoltan Varga <>

    vargaz committed Jun 4, 2009
    	* marshal.c metadata.c: Applied patch from Ulrich Weigand
    	<>: Free the wrappers of inflated generic methods when
    	the inflated method is freed. Fixes #508389.
    	The code is contributed under the MIT/X11 license.
    svn path=/branches/mono-2-4/mono/; revision=135435
  8. 2009-06-04 Veerapuram Varadhan <>

    vvaradhan committed Jun 4, 2009
    	* OracleParameter.cs: Infer size only for 2.0 profile when only
    	value is passed.  Fixes test failure under 1.1 profile.
    svn path=/branches/mono-2-4/mcs/; revision=135429
Commits on Jun 3, 2009
  1. 2009-06-03 Jb Evain <>

    jbevain committed Jun 3, 2009
    	backport of 135337.
    	* main.c (dis_code): don't try to locate invalid entry points.
    svn path=/branches/mono-2-4/mono/; revision=135339
  2. Update xbuild and Microsoft.Build.* libs from trunk.

    radical committed Jun 3, 2009
    In tools/xbuild:
    2009-05-20  Jonathan Chambers  <>
    	* SolutionParser.cs (ParseSolution): Ignore vcproj projects in solutions 
    	and issue warning. 
    2009-04-27  Ankit Jain  <>
    	* xbuild/Microsoft.VisualBasic.targets: Update to use
    	CreateVisualBasicManifestResourceName task, and fix compiler params.
    2009-04-25 Daniel Nauck <>
    	Fix bug #484649:
    	* LoggerInfo.cs: fixed the parsing of the /logger: argument as described in
    	Added logger class detection if it's not explicit specified in the argument.
    2009-03-19  Ankit Jain  <>
    	Fix bug #484773.
    	* Main.cs (Execute): Check whether the project file exists or not.
    	* Parameters.cs (ParseArguments): Handle absolute paths too.
    2009-03-13  Ankit Jain  <>
    	* Main.cs (Execute): Build the project/sln with current directory set to
    	the project file's dir.
    	* SolutionParser.cs (ParseSolution): Project paths are relative to
    	solution directory.
    2009-03-06  Ankit Jain  <>
    	Fix bug #481336.
    	* SolutionParser.cs (AddWarningForMissingProjectConfiguration): New.
    	(AddProjectTargets): Emit warning for missing project configurations.
    2009-02-26  Ankit Jain  <>
    	* xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
    	ManifestNonResxWithCultureOnDisk instead of ManifestResourceWithNoCultureOnDisk.
    2009-02-26  Ankit Jain  <>
    	* xbuild/Microsoft.Common.targets: Make targets extensible. Add
    	before/after hooks.
    2009-02-25  Ankit Jain  <>
    	* xbuild/Microsoft.Common.targets: Use obj/$(Config) as the default intermediate
    	output path, instead of just obj/
    2009-02-25  Ankit Jain  <>
    	* xbuild/Microsoft.Common.targets (CopyNonResxEmbeddedResources): New.
    	(GenerateSatelliteAssemblies): Update to use the new ManifestNonResxWithCultureOnDisk
    	instead of NonResxWithCulture.
    	* xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
    	the new on disk file names instead of original filenames.
    2009-02-25  Ankit Jain  <>
    	* xbuild/Microsoft.Common.targets (GetTargetPath): Add a path separator.
    2009-02-25  Ankit Jain  <>
    	* SolutionParser.cs (ParseSolution): Report warning instead of error
    	for unknown global sections.
    2009-02-21  Ankit Jain  <>
    	* xbuild/xbuild.rsp: Add descriptive comments.
    2009-02-21  Ankit Jain  <>
    	* Parameters.cs (LoadResponseFile): Handle comments.
    2009-02-20  Ankit Jain  <>
    	* SolutionParser.cs (ParseSolution): Ignore solution folders.
    2009-02-20  Ankit Jain  <>
    	* SolutionParser.cs (ParseSolution): Ignore GlobalSection named
    2009-02-20  Ankit Jain  <>
    	* SolutionParser.cs (ParseProjectConfigurationPlatforms): Report missing
    	project guids as Warnings and not errors. Report every missing guid only
    2009-02-20  Ankit Jain  <>
    	* SolutionParser.cs (projectRegex): Use '\s' to match whitespace.
    2009-02-19  Jonathan Chambers  <>
    	* xbuild.csproj: Add.
    	* xbuild.sln: Add.
    2009-02-13  Jonathan Chambers  <>
    	* SolutionParser.cs: Make Guid Regex case insensitive.
    	Handle project dependencies. The solution has explicit
    	dependencies, but we have to open projects for implicit
    	dependencies (via ProjectReferences).
    2009-02-13  Jonathan Chambers  <>
    	* Main.cs: Add support for .sln files.
    	* SolutionParser.cs: Class for generating project file
    	from solution file.
    	* xbuild.exe.sources: Added SolutionParser.cs.
    2009-02-02  Ankit Jain  <>
    	* Microsoft.CSharp.targets: Add targets to generate resource ids.
    	* Microsoft.Common.targets: Add targets for generating resources,
    	generate and deploy satellite assemblies, resolve project and assembly
    	references. All intermediate build output goes into a 'obj/' dir by
    	default. 'Clean' target enabled.
    In class/Microsoft.Build.Tasks/Test/Microsoft.Build.Tasks:
    2009-05-29  Ankit Jain  <>
    	* TestMessageLogger.cs: Add counts for project/build start/finish
    2009-04-27  Ankit Jain  <>
    	* CreateVisualBasicManifestResourceNameTest.cs: New.
    2009-03-03  Ankit Jain  <>
    	* CscTest.cs (DefineConstants): Add some extra semi-colons,
    	that should get removed on output.
    	(DefineConstants2): New. Test effectively empty define constants.
    2009-02-25  Ankit Jain  <>
    	* CreateCSharpManifestResourceNameTest.cs (CheckResourceNames):
    	Refactor a bit to improve error reporting.
    	Update to use Path.Combine instead of hardcoding "\".
    2009-02-24  Ankit Jain  <>
    	* TestMessageLogger.cs (CheckLoggedMessageHead): Move here from
    	* TaskBatchingTest.cs: .. here. Track api change.
    2009-02-21  Ankit Jain  <>
    	* CopyTest.cs: New.
    2009-01-31  Ankit Jain  <>
    	* TaskBatchingTest.cs (*): Add tests for target/task events.
    	(TestTargetBatching*): New tests for target batching.
    	* TestMessageLogger.cs: Add counts for target/task started/finished
    	(NormalMessageCount): New.
    In class/Microsoft.Build.Tasks/Test/resources:
    2009-04-27  Ankit Jain  <>
    	* Sample.vb: New.
    In class/Microsoft.Build.Tasks/Microsoft.Build.Tasks:
    2009-04-27  Ankit Jain  <>
    	* CreateCSharpManifestResourceName.cs (GetResourceIdFromFileName): Move
    	to ..
    	* CreateManifestResourceName.cs: .. here.
    	* CreateVisualBasicManifestResourceName.cs: Implement.
    2009-04-27  Ankit Jain  <>
    	* Vbc.cs (AddResponseFileCommands): Escape DefineConstants as it can
    	contain double quotes itself. Fix /doc switch.
    	(EscapeDoubleQuotes): New.
    2009-03-22  Daniel Nauck  <>
    	* GenerateResource.cs: Set BasePath property of
    		ResXResourceReader class.
    2009-03-19  Ankit Jain  <>
    	Fix bugs #323833 and #484384.
    	* AssemblyResolver.cs (GatherGacAssemblies): Handle duplicate entries.
    	These seem to be old copies of the assemblies with old keys. Pick
    	the one with the latest timestamp.
    2009-03-03  Ankit Jain  <>
    	Fix bug #480856.
    	* Csc.cs (AddResponseFileCommands): Split DefineConstants on ';'.
    2009-02-26  Ankit Jain  <>
    	* MakeDir.cs (Execute): Don't create+log if dir already exists.
    2009-02-25  Ankit Jain  <>
    	* AL.cs (Execute): Use ToolTask.Execute instead of doing our own.
    2009-02-25  Ankit Jain  <>
    	* AssemblyResolver.cs:
    	* ResolveAssemblyReference.cs: Honor SpecificVersion. Emit detailed error
    	messages incase assembly resolution fails. Make specific version
    2009-02-25  Ankit Jain  <>
    	* ManagedCompiler.cs (AddResponseFileCommands): Use LogicalName for
    	embedded resources, wherever available.
    	* CreateCSharpManifestResourceName.cs (GetResourceIdFromFileName): Use
    	Path.Combine instead of hardcoding "\".
    2009-02-25  Ankit Jain  <>
    	* MSBuild.cs (Execute): Reset current directory back after every
    	project's execution.
    2009-02-21  Ankit Jain  <>
    	Fix bug #458916.
    	* Copy.cs: CopiedFiles and DestinationFiles should have target paths
    	instead of source. Also, the metadata should get retained from source
    	items. Based on a patch by Jeffrey Richardson <>
    	Refactor a bit to remove code duplication.
    2009-02-21  Ankit Jain  <>
    	* MSBuild.cs (SplitPropertiesToDictionary): Split into exactly 2 parts.
    2009-02-11  Leszek Ciesielski <>
    	* ResolveAssemblyReference.cs : AllowedRelatedFileExtensions stub
    2009-02-02  Ankit Jain  <>
    	* MSBuild.cs (Execute): Disable incorrect 'rebaseOutputs' behavior.
    2009-02-02  Ankit Jain  <>
    	* ResolveAssemblyReference.cs: Honor SearchPaths and the special
    	items like '{HintPathFromItem}', '{TargetFrameworkDirectory}' etc.
    	* AssemblyResolver.cs: Add api for more specific search, like search
    	in a directory, target frameworks, gac etc.
    2009-02-01  Ankit Jain  <>
    	* CallTarget.cs: Copy all items from target to TargetOutputs.
    2009-02-01  Ankit Jain  <>
    	* Csc.cs (AddResponseFileCommands):
    	* ManagedCompiler.cs (AddResponseFileCommands): 'AddModules' and
    	'AdditionalLibPaths' can be empty.
    2009-01-30  Ankit Jain  <>
    	* Copy.cs (Execute): Use for loop instead of enumerators.
    	sourceFiles and destinationFiles can be null, handle that.
    	Create new directory if required.
    2009-01-27  Ankit Jain  <>
    	* Delete.cs (Execute): Skip non-existant files.
    In class/Microsoft.Build.Tasks:
    2009-05-14  Ankit Jain  <>
    	Fix tests on monobuild
    	* Makefile (EXTRA_DISTFILES): Add Test/resources/Sample.vb
    2009-04-28  Raja R Harinath  <>
    	* Makefile (NAME_SUFFIX): New.
    	(LIBRARY_NAME): Use it.
    	(TEST_MCS_FLAGS): Don't mention name of library.  Use NAME_SUFFIX
    	as appropriate when referring to other msbuild dlls.
    2009-04-27  Ankit Jain  <>
    	* Microsoft.Build.Tasks_test.dll.sources: Added
    	CreateVisualBasicManifestResourceNameTest.cs .
    2009-04-25  Jonathan Chambers  <>
    	* Makefile: Adjust assembly name for 3.5 profile.
    2009-02-21  Ankit Jain  <>
    	* Microsoft.Build.Tasks_test.dll.sources: Added CopyTest.cs
    In class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine:
    2009-05-29  Ankit Jain  <>
    	* EngineTest.cs (TestGlobalProperties*): New tests
    	and some helper methods.
    	* ProjectTest.cs (TestResetBuildStatus): Reset twice. Update
    	the event counts.
    2009-05-15  Marek Sieradzki  <>
    	* BuildItemTest.cs:
    	* BuildPropertyGroupTest.cs:
    	* BuildPropertyGroupCollectionTest.cs:
    	* BuildPropertyTest.cs:
    	* BuildItemGroupTest.cs:
    	* EngineTest.cs:
    	* InternalLoggerExceptionTest.cs:
    	* ProjectTest.cs: Don't compare exception messages.
    2009-05-12  Ankit Jain  <>
    	* ProjectTest.cs (TestAssignment1):
    	* UsingTaskTest.cs (TestTaskName):
    	(TestAssemblyNameOrAssemblyFile2): Don't compare exception messages. 
    2009-03-27  Jonathan Chambers  <>
    	* BuildChooseTest.cs: Enable tests.
    	* Microsoft.Build.Engine.Test.csproj: Update post build step.
    2009-03-26  Jonathan Chambers  <>
    	* BuildTaskTest.cs (TestTaskInNamespace): Add test for Task in namespace.
    2009-02-24  Ankit Jain  <>
    	* UsingTaskTest.cs (TestLazyLoad{1,2,3}): New.
    	(TestAssemblyNameOrAssemblyFileConditionFalse): New.
    	(TestDuplicate1): New.
    	* TargetTest (CheckLoggedMessageHead): Moved to TestMessageLogger,
    	use that.
    2009-02-15  Jonathan Chambers  <>
    	* BuildChooseTest.cs (TestValueXml): Add tests for Choose.
    	Currently not working.
    2009-02-12  Jonathan Chambers  <>
    	* BuildPropertyTest.cs (TestValueXml): New.
    2009-02-01  Ankit Jain  <>
    	* ProjectTest.cs (TestBuild[23]): Check number of task started/finished
    	(TestResetBuildStat): Remove "NotWorking".
    	(TestBuild4): Likewise. Check number of task started/finished events.
    	* TargetTest.cs (TestTargetOutputs1): New.
    2009-01-30  Ankit Jain  <>
    	* ProjectTest.cs (TestRequiredTask_*): New.
    	(TestBatchedMetadataRef5): New.
    2009-01-29  Ankit Jain  <>
    	* BuildItemTest.cs (TestBuildItemTransform): New.
    In class/Microsoft.Build.Engine/Test/various:
    2009-05-29  Ankit Jain  <>
    	* Conditions.cs (TestHasTrailingSlash1): New.
    	(TestUnknownFunction): New.
    2009-05-15  Marek Sieradzki  <>
    	* Items.cs
    	* Conditions.cs: Don't check exception messages.
    2009-02-23  Ankit Jain  <>
    	* Items.cs (TestItemsInTarget8): New.
    	(TestItemsInTarget9): New.
    2009-02-20  Ankit Jain  <>
    	* Conditions.cs (TestCondition11): New. Test unquoted item/property
    	references in conditions.
    In class/Microsoft.Build.Engine/Test/resources:
    2009-03-26  Jonathan Chambers  <>
    	* TestTasks.cs (NamespacedOutputTestTask): New.
    2009-02-24  Ankit Jain  <>
    	* TestTasks.cs (Another.SameTask): New.
    	(Other.SameTask): New.
    2009-01-30  Ankit Jain  <>
    	* TestTasks.cs (RequiredTestTask): Rename to ..
    	(RequiredTestTask_TaskItems): .. this.
    	(RequiredTestTask_*): New types.
    2009-01-29  Ankit Jain  <>
    	* TestTasks.cs (BatchingTestTask.TaskItemsOutput): New.
    In class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine:
    2009-05-29  Ankit Jain  <>
    	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
    	(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  <>
    	* ConditionFunctionExpression.cs: Add 'HasTrailingSlash' function.
    	(HasTrailingSlash): New.
    2009-05-12  Ankit Jain  <>
    	* Project.cs (.ctor): Init timeOfLastDirty.
    2009-05-05  Miguel de Icaza  <>
    	* Contribution from Martin Brenn to fix #498154.
    2009-04-27  Ankit Jain  <>
    	Fix bug #497839.
    	* Engine.cs (BuildProjectFile): Set project's GlobalProperties to the
    	one passed as argument.
    2009-04-27  Ankit Jain  <>
    	* TaskEngine.cs (Prepare): Emit a useful error message property value
    	can't be converted to required type.
    2009-04-27  Ankit Jain  <>
    	* ExpressionCollection.cs (ConvertToObject): Allow true/on/yes
    	as valid true values for bool, and corresponding for false.
    2009-03-27  Jonathan Chambers  <>
    	* BuildWhen.cs: Add basic implementation.
    	* BuildChoose.cs: Add basic implementation.
    	* BuildItem.cs (AddEvaluatedItem): Add BuiltItem to 
    	* GroupingCollection.cs: Add evaluation of BuildChoose items.
    2009-03-26  Jonathan Chambers  <>
    	* TaskDatabase.cs (RegisterTask): Search for class by name
    	if task was not found using GetType (which uses namespace). 
    2009-02-26  Ankit Jain  <>
    	* Target.cs: Handle target with no tasks. Log errors.
    2009-02-24  Ankit Jain  <>
    	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  <>
    	* BuildItem.cs (AddMetadata): Allow overwriting older values.
    2009-02-22  Ankit Jain  <>
    	* BuildItem.cs: Iterate over XmlElements childnodes with XmlNode
    	instead of XmlElement. Eg. XmlComment
    2009-02-21  Ankit Jain  <>
    	* Utilities.cs (FromMSBuildPath): Copy from monodevelop.
    	* Project.cs (Load): Use FromMSBuildPath on the path.
    	(InitializeProperties): Set "MSBuildToolsPath" also.
    2009-02-20  Ankit Jain  <>
    	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  <>
    	* BuildProperty.cs: Value corresponds to XmlElement.InnerXml
    	no XmlElement.InnerText. This allows properties to be additional 
    	xml elements.
    2009-02-01  Ankit Jain  <>
    	* 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  <>
    	* 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  <>
    	* TaskEngine.cs (GetObjectFromString): Empty value is allowed only for
    2009-01-29  Ankit Jain  <>
    	* BuildItem.cs (child_items): Change type from BuildItemGroup to
    	(HasParent): Rename to ..
    	(HasParentItem): .. this.
    	(ParentItemGroup): Add setter.
    	* BuildItemGroup.cs (.ctor): Add overload with @project param.
    	(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.
    In class/Microsoft.Build.Engine:
    2009-02-21  Ankit Jain  <>
    	* Import.cs (GetFullPath): Use Utilities.FromMSBuildPath .
    2009-02-19  Jonathan Chambers  <>
    	* Microsoft.Build.Engine.csproj: Add.
    	* Microsoft.Build.Engine.Test.csproj: Update.
    2009-01-31  Ankit Jain  <>
    	* Microsoft.Build.Engine_test.dll.sources: Replace BatchingImpl.cs with
    	BatchingImplBase.cs, TargetBatchingImpl.cs and TaskBatchingImpl.cs
    In class/Microsoft.Build.Utilities:
    2009-04-25  Jonathan Chambers  <>
    	* Makefile: Adjust assembly name for 3.5 profile.
    2009-02-25  Ankit Jain  <>
    	* Microsoft.Build.Utilities.dll.sources: Add ProcessService.cs,
    	ProcessWrapper.cs, IAsyncOperation.cs and IProcessAsyncOperation.cs
    In class/Microsoft.Build.Utilities/Microsoft.Build.Utilities:
    2009-04-24  Ankit Jain  <>
    	* ToolTask.cs (RealExecute): Handle TypeLoadExceptions, compiler
    	crashes and report them. Borrow some tricks from md.
    	(LogEventsFromTextOutput): Ignore known non-error messages. Don't
    	log unknown lines, crashes get handled elsewhere.
    2009-04-08  Ankit Jain  <>
    	Fix bug #491828.
    	* ToolTask.cs (LogEventsFromTextOutput): Log even in case of
    	unrecognized errors.
    2009-02-25  Ankit Jain  <>
    	* ProcessService.cs, IAsyncOperation.cs, IProcessAsyncOperation.cs,
    	ProcessWrapper.cs: Brought in from monodevelop.
    	* ToolTask.cs: Use the new ProcessService to execute the tool. Honor
    	SkipTaskExecution (). Use response files, but log the contents of the
    	response file instead of "@foo.rsp". Support environmentOverrides.
    	(LogEventsFromTextOutput): Add null check.
    	* Exec.cs (GetWorkingDirectory): Use the workingDirectory property.
    2009-02-20  Ankit Jain  <>
    	Fix bug #475438.
    	* ToolTask.cs (RealExecute): Check whether the target executable exists.
    	Log any execution errors.
    svn path=/branches/mono-2-4/mcs/; revision=135336
  3. 2009-06-03 Jb Evain <>

    jbevain committed Jun 3, 2009
    	backport of r135334.
    	* main.c (dis_type): escape namespaces.
    svn path=/branches/mono-2-4/mono/; revision=135335
  4. Backport of r135328

    grendello committed Jun 3, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135329
  5. 2009-06-03 Veerapuram Varadhan <>

    vvaradhan committed Jun 3, 2009
            * OracleParameterTest.cs: Mark tests for bug #424908 as NotWorking
            as it requires some more thorough debugging.
    svn path=/branches/mono-2-4/mcs/; revision=135315
  6. Backport of r135313

    grendello committed Jun 3, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135314
  7. 2009-06-03 Veerapuram Varadhan <>

    vvaradhan committed Jun 3, 2009
    	* OracleParameter.cs:  Infer the ocitype before inferring the size
    svn path=/branches/mono-2-4/mcs/; revision=135312
  8. Backport of r135307

    grendello committed Jun 3, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135308
Commits on Jun 2, 2009
  1. 2009-06-02 Gonzalo Paniagua Javier <>

    gonzalop committed Jun 2, 2009
    	* HttpWebRequest.cs: KeepAlive check not needed.
    	Fixes bug #465613.
    svn path=/branches/mono-2-4/mcs/; revision=135247
  2. 2009-06-02 Gonzalo Paniagua Javier <>

    gonzalop committed Jun 2, 2009
    	* HttpConnection.cs: unbind the context after every read for keep-alive
    	Bug #502274 fixed.
    svn path=/branches/mono-2-4/mcs/; revision=135242
  3. Backport of r135237

    grendello committed Jun 2, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135238
  4. 2009-06-03 Veerapuram Varadhan <>

    vvaradhan committed Jun 2, 2009
    	* OracleParameter.cs:  If a non-zero size is passed, update
    	the size member but sizeSet is updated only when a non-null
    	value is passed.
    svn path=/branches/mono-2-4/mcs/; revision=135236
  5. 2009-06-02 Gonzalo Paniagua Javier <>

    gonzalop committed Jun 2, 2009
    	* BuildManager.cs: allow deployment of precompiled applications under
    	any virtual path, not just the default one used when precompiling.
    	Fixes bug #483268.
    svn path=/branches/mono-2-4/mcs/; revision=135232
  6. Backport of r135205

    grendello committed Jun 2, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135206
Commits on Jun 1, 2009
  1. Backport of r135147

    grendello committed Jun 1, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135148
  2. Backport of r135144

    grendello committed Jun 1, 2009
    svn path=/branches/mono-2-4/mcs/; revision=135145
  3. 2009-06-01 Rodrigo Kumpera <>

    kumpera committed Jun 1, 2009
    	* bug-508538.cs: New regression test.
    svn path=/branches/mono-2-4/mono/; revision=135139