mono.git
10 years agoSeveral fixes to get ProjectUsingTaskElement could be loaded and task database gets...
Atsushi Eno [Wed, 20 Nov 2013 09:58:03 +0000 (18:58 +0900)]
Several fixes to get ProjectUsingTaskElement could be loaded and task database gets correct match.

Now tasks could be loaded, ready to execute.

10 years agoworkaround threading by Task isse. Also fix regression on "no target found" case...
Atsushi Eno [Wed, 20 Nov 2013 09:13:20 +0000 (18:13 +0900)]
workaround threading by Task isse. Also fix regression on "no target found" case (should fail).

(Task causes NotImplementedException under the hood).

10 years agoupdate .csproj.
Atsushi Eno [Tue, 19 Nov 2013 20:50:37 +0000 (05:50 +0900)]
update .csproj.

10 years agoongoing task database implementation.
Atsushi Eno [Tue, 19 Nov 2013 20:49:55 +0000 (05:49 +0900)]
ongoing task database implementation.

This somehow causes thread freeze, I had to disable some tests.

10 years agoITaskFactory2 is public.
Atsushi Eno [Tue, 19 Nov 2013 20:01:17 +0000 (05:01 +0900)]
ITaskFactory2 is public.

10 years agoupdate .csproj.
Atsushi Eno [Tue, 19 Nov 2013 18:02:15 +0000 (03:02 +0900)]
update .csproj.

10 years agoadd missing OutOfProcNode class (though it seems unused).
Atsushi Eno [Tue, 19 Nov 2013 18:01:54 +0000 (03:01 +0900)]
add missing OutOfProcNode class (though it seems unused).

10 years agoupdate .csproj.
Atsushi Eno [Tue, 19 Nov 2013 16:14:27 +0000 (01:14 +0900)]
update .csproj.

10 years agodelete old file.
Atsushi Eno [Tue, 19 Nov 2013 16:14:17 +0000 (01:14 +0900)]
delete old file.

10 years agoimplement basic node management skeleton (which does not really manage nodes, just...
Atsushi Eno [Tue, 19 Nov 2013 16:13:18 +0000 (01:13 +0900)]
implement basic node management skeleton (which does not really manage nodes, just to hold node retriever).

10 years agoOngoing build engine implementation and some fixes in build submission handling.
Atsushi Eno [Tue, 19 Nov 2013 10:12:52 +0000 (19:12 +0900)]
Ongoing build engine implementation and some fixes in build submission handling.

BuildSubmission could be posted multiple times so that multiple projects can
be built within one BuildManager. Now node manager should be implemented too...

10 years agoFix API: remove non-existent property in .NET (copy-paste bad).
Atsushi Eno [Tue, 19 Nov 2013 10:11:13 +0000 (19:11 +0900)]
Fix API: remove non-existent property in .NET (copy-paste bad).

10 years agoupdate .csproj.
Atsushi Eno [Tue, 19 Nov 2013 08:45:09 +0000 (17:45 +0900)]
update .csproj.

10 years agoAdd missing ITaskFactory/2 and co. Add BuildEventArgs.set_Context().
Atsushi Eno [Tue, 19 Nov 2013 08:44:37 +0000 (17:44 +0900)]
Add missing ITaskFactory/2 and co. Add BuildEventArgs.set_Context().

10 years agoupdate csproj.
Atsushi Eno [Mon, 18 Nov 2013 15:01:50 +0000 (00:01 +0900)]
update csproj.

10 years agoAdd IBuildEngine implementation, required to expose some features to tasks.
Atsushi Eno [Mon, 18 Nov 2013 14:59:54 +0000 (23:59 +0900)]
Add IBuildEngine implementation, required to expose some features to tasks.

10 years agoadd test for BuildManager.PendBuildRequest(). Looks like it's mostly for internal...
Atsushi Eno [Mon, 18 Nov 2013 11:15:49 +0000 (20:15 +0900)]
add test for BuildManager.PendBuildRequest(). Looks like it's mostly for internal use...

10 years agofix NET_2_0 build: INodeLogger is only in 4.0.
Atsushi Eno [Mon, 18 Nov 2013 10:31:25 +0000 (19:31 +0900)]
fix NET_2_0 build: INodeLogger is only in 4.0.

10 years agoslightly reorganized external sources dirs.
Atsushi Eno [Fri, 15 Nov 2013 18:10:20 +0000 (03:10 +0900)]
slightly reorganized external sources dirs.

10 years agoadd missing copyright headers.
Atsushi Eno [Fri, 15 Nov 2013 18:10:00 +0000 (03:10 +0900)]
add missing copyright headers.

10 years agoimplement HostServices, not sure if we're going to use it though.
Atsushi Eno [Fri, 15 Nov 2013 17:15:06 +0000 (02:15 +0900)]
implement HostServices, not sure if we're going to use it though.

10 years agoadd missing license headers.
Atsushi Eno [Thu, 14 Nov 2013 20:35:53 +0000 (05:35 +0900)]
add missing license headers.

10 years agoslightly reduce NIE code path.
Atsushi Eno [Thu, 14 Nov 2013 20:35:28 +0000 (05:35 +0900)]
slightly reduce NIE code path.

10 years agoupdate csproj.
Atsushi Eno [Thu, 14 Nov 2013 20:34:49 +0000 (05:34 +0900)]
update csproj.

10 years agoAdd test for BuildSubmission (which is mostly for build operation so far).
Atsushi Eno [Thu, 14 Nov 2013 20:34:14 +0000 (05:34 +0900)]
Add test for BuildSubmission (which is mostly for build operation so far).

10 years agoImplement more precise DefaultTargets handling.
Atsushi Eno [Thu, 14 Nov 2013 19:46:55 +0000 (04:46 +0900)]
Implement more precise DefaultTargets handling.

10 years agoSeveral fixes on manual expression parser with related to function args and property...
Atsushi Eno [Thu, 14 Nov 2013 18:18:07 +0000 (03:18 +0900)]
Several fixes on manual expression parser with related to function args and property accesses.

10 years agofix some string evaluator tests. Some of them even fails in prop values.
Atsushi Eno [Thu, 14 Nov 2013 18:17:30 +0000 (03:17 +0900)]
fix some string evaluator tests. Some of them even fails in prop values.

10 years agoslightly improve property access error message.
Atsushi Eno [Thu, 14 Nov 2013 18:17:03 +0000 (03:17 +0900)]
slightly improve property access error message.

10 years agoApply windows path loader fix to ProjectInstance too.
Atsushi Eno [Thu, 14 Nov 2013 18:16:30 +0000 (03:16 +0900)]
Apply windows path loader fix to ProjectInstance too.

10 years agoResolve property value by EvaluatedValue where appropriate.
Atsushi Eno [Thu, 14 Nov 2013 13:56:08 +0000 (22:56 +0900)]
Resolve property value by EvaluatedValue where appropriate.

10 years agoSequence of comparison expressions (A==B==C) is invalid. Avoid ANE on property evalua...
Atsushi Eno [Thu, 14 Nov 2013 10:09:22 +0000 (19:09 +0900)]
Sequence of comparison expressions (A==B==C) is invalid. Avoid ANE on property evaluation.

10 years agoFix binary expression evaluation. They can be combined.
Atsushi Eno [Wed, 13 Nov 2013 16:12:08 +0000 (01:12 +0900)]
Fix binary expression evaluation. They can be combined.

10 years agoimplement prebuilt Condition evaluation function support.
Atsushi Eno [Wed, 13 Nov 2013 16:11:44 +0000 (01:11 +0900)]
implement prebuilt Condition evaluation function support.

10 years agoFix location of windows path compatibility change.
Atsushi Eno [Wed, 13 Nov 2013 12:16:19 +0000 (21:16 +0900)]
Fix location of windows path compatibility change.

10 years agoFix 4.5 toolpath.
Atsushi Eno [Wed, 13 Nov 2013 12:16:07 +0000 (21:16 +0900)]
Fix 4.5 toolpath.

10 years agofix import path for ProjectInstance too.
Atsushi Eno [Wed, 13 Nov 2013 11:46:38 +0000 (20:46 +0900)]
fix import path for ProjectInstance too.

10 years agoupdate csproj.
Atsushi Eno [Wed, 13 Nov 2013 10:23:35 +0000 (19:23 +0900)]
update csproj.

10 years agoAdd missing built-in properties. Resolve properties on import paths. Resolve \ with...
Atsushi Eno [Wed, 13 Nov 2013 10:22:16 +0000 (19:22 +0900)]
Add missing built-in properties. Resolve properties on import paths. Resolve \ with / on import paths.

10 years agoProject needs to build just fine for empty projects.
Atsushi Eno [Thu, 31 Oct 2013 18:02:01 +0000 (03:02 +0900)]
Project needs to build just fine for empty projects.

10 years agosome BuildSubmission and BuildResult implementation, as well as tiny bit of build...
Atsushi Eno [Thu, 31 Oct 2013 17:55:08 +0000 (02:55 +0900)]
some BuildSubmission and BuildResult implementation, as well as tiny bit of build operation.

10 years agosorted out BuildManager build logic up to BuildSubmission.Execute().
Atsushi Eno [Thu, 31 Oct 2013 13:28:07 +0000 (22:28 +0900)]
sorted out BuildManager build logic up to BuildSubmission.Execute().

10 years agoReuse logger types in Microsoft.Build.dll.
Atsushi Eno [Thu, 31 Oct 2013 11:31:03 +0000 (20:31 +0900)]
Reuse logger types in Microsoft.Build.dll.

10 years agoupdate csproj.
Atsushi Eno [Thu, 31 Oct 2013 11:25:55 +0000 (20:25 +0900)]
update csproj.

10 years agosorted out logger stuff. Imported many of existing loggers from MS.Build.Engine....
Atsushi Eno [Thu, 31 Oct 2013 11:25:19 +0000 (20:25 +0900)]
sorted out logger stuff. Imported many of existing loggers from MS.Build.Engine. Stubbed some.

10 years agoupdate .sources too.
Atsushi Eno [Thu, 31 Oct 2013 11:13:47 +0000 (20:13 +0900)]
update .sources too.

10 years agoupdate csproj.
Atsushi Eno [Thu, 31 Oct 2013 11:13:01 +0000 (20:13 +0900)]
update csproj.

10 years agoadd missing logging types which are required for Microsoft.Build.dll.
Atsushi Eno [Thu, 31 Oct 2013 11:12:37 +0000 (20:12 +0900)]
add missing logging types which are required for Microsoft.Build.dll.

10 years agoupdate csproj.
Atsushi Eno [Thu, 31 Oct 2013 09:00:33 +0000 (18:00 +0900)]
update csproj.

10 years agoAdd missing ProjectPropertyGroupTaskIntance and descendant, and implement more of...
Atsushi Eno [Thu, 31 Oct 2013 09:00:02 +0000 (18:00 +0900)]
Add missing ProjectPropertyGroupTaskIntance and descendant, and implement more of this namespace.

10 years agoAdded some comments on loaders in the two project object models.
Atsushi Eno [Thu, 31 Oct 2013 08:48:59 +0000 (17:48 +0900)]
Added some comments on loaders in the two project object models.

10 years agoimplemented more ProjectInstance family. Enabled some tests back.
Atsushi Eno [Thu, 31 Oct 2013 08:03:34 +0000 (17:03 +0900)]
implemented more ProjectInstance family. Enabled some tests back.

10 years agoimplemented a lot of ProjectTargetInstance and its descendants. Fixed a lot of Locati...
Atsushi Eno [Wed, 30 Oct 2013 13:10:29 +0000 (22:10 +0900)]
implemented a lot of ProjectTargetInstance and its descendants. Fixed a lot of Location stuff to fix NET_4_0 build.

10 years agoimplement basic project loader for ProjectInstance.
Atsushi Eno [Wed, 30 Oct 2013 09:12:54 +0000 (18:12 +0900)]
implement basic project loader for ProjectInstance.

10 years agorefactoring some internals to make code sharable between Project and ProjectInstance.
Atsushi Eno [Wed, 30 Oct 2013 08:37:40 +0000 (17:37 +0900)]
refactoring some internals to make code sharable between Project and ProjectInstance.

10 years agoupdate .csproj.
Atsushi Eno [Fri, 25 Oct 2013 15:25:18 +0000 (00:25 +0900)]
update .csproj.

10 years agoimplement ProjectMetadataInstance and add some MS.Build.Execution tests.
Atsushi Eno [Fri, 25 Oct 2013 15:24:50 +0000 (00:24 +0900)]
implement ProjectMetadataInstance and add some MS.Build.Execution tests.

10 years agoadd another GetLoadedProject() test, this time with ProjectInstance.
Atsushi Eno [Fri, 25 Oct 2013 11:42:43 +0000 (20:42 +0900)]
add another GetLoadedProject() test, this time with ProjectInstance.

10 years agoimplement GetLoadedProject(), ProjectAdded and adjust relevant methods.
Atsushi Eno [Fri, 25 Oct 2013 11:30:36 +0000 (20:30 +0900)]
implement GetLoadedProject(), ProjectAdded and adjust relevant methods.

10 years agoAdded workaround for DirectoryScanner bug that finds multiple files. Then implemented...
Atsushi Eno [Thu, 24 Oct 2013 18:44:57 +0000 (03:44 +0900)]
Added workaround for DirectoryScanner bug that finds multiple files. Then implemented RecursiveDir metadata.

10 years agoupdate .csproj.
Atsushi Eno [Thu, 24 Oct 2013 17:25:33 +0000 (02:25 +0900)]
update .csproj.

10 years agomake TaskItem available (as internal) in Microsft.Build.dll.
Atsushi Eno [Thu, 24 Oct 2013 17:25:01 +0000 (02:25 +0900)]
make TaskItem available (as internal) in Microsft.Build.dll.

10 years agoimplement item wildcard support, except for "**" which looks buggy at DirectoryScanner.
Atsushi Eno [Thu, 24 Oct 2013 17:24:26 +0000 (02:24 +0900)]
implement item wildcard support, except for "**" which looks buggy at DirectoryScanner.

10 years agoimplement IsImported.
Atsushi Eno [Thu, 24 Oct 2013 15:53:23 +0000 (00:53 +0900)]
implement IsImported.

10 years agoimplemented well-known item metadata.
Atsushi Eno [Thu, 24 Oct 2013 12:36:18 +0000 (21:36 +0900)]
implemented well-known item metadata.

10 years agoFix API for ProjectItemElement.Condition. Add test for item definition Condition.
Atsushi Eno [Wed, 23 Oct 2013 11:14:57 +0000 (20:14 +0900)]
Fix API for ProjectItemElement.Condition. Add test for item definition Condition.

10 years agoGetMetadataValue() returns "" if metadata is not found.
Atsushi Eno [Wed, 23 Oct 2013 11:14:43 +0000 (20:14 +0900)]
GetMetadataValue() returns "" if metadata is not found.

10 years agoFix MSBuildThisFile reserved property value (empty by default).
Atsushi Eno [Tue, 22 Oct 2013 19:22:07 +0000 (04:22 +0900)]
Fix MSBuildThisFile reserved property value (empty by default).

10 years agogot imports working. Imported ProjectRootElement needed XmlReader to load it.
Atsushi Eno [Tue, 22 Oct 2013 19:00:44 +0000 (04:00 +0900)]
got imports working. Imported ProjectRootElement needed XmlReader to load it.

10 years agoFor expression, string equality comparison is done in case-insensitive manner.
Atsushi Eno [Tue, 22 Oct 2013 18:52:55 +0000 (03:52 +0900)]
For expression, string equality comparison is done in case-insensitive manner.

10 years agofix couple of regressions caused by lazy evaluation of properties.
Atsushi Eno [Tue, 22 Oct 2013 18:16:01 +0000 (03:16 +0900)]
fix couple of regressions caused by lazy evaluation of properties.

10 years agoupdate .csproj.
Atsushi Eno [Tue, 22 Oct 2013 17:38:15 +0000 (02:38 +0900)]
update .csproj.

10 years agopartal import implementation.
Atsushi Eno [Tue, 22 Oct 2013 17:37:51 +0000 (02:37 +0900)]
partal import implementation.

10 years agomissing Project attribute causes load error at ProjectRootElement level.
Atsushi Eno [Tue, 22 Oct 2013 14:27:18 +0000 (23:27 +0900)]
missing Project attribute causes load error at ProjectRootElement level.

10 years agoAllow empty function args and fix "sigle-argument is ignored" issue.
Atsushi Eno [Tue, 22 Oct 2013 11:35:25 +0000 (20:35 +0900)]
Allow empty function args and fix "sigle-argument is ignored" issue.

10 years agoFix fullname (dotted name) parsing in boolean expression parser.
Atsushi Eno [Tue, 22 Oct 2013 11:31:03 +0000 (20:31 +0900)]
Fix fullname (dotted name) parsing in boolean expression parser.

10 years agoNow we can directly evaluate boolean expression with jay-based parser.
Atsushi Eno [Tue, 22 Oct 2013 11:10:17 +0000 (20:10 +0900)]
Now we can directly evaluate boolean expression with jay-based parser.

10 years agofix NRE.
Atsushi Eno [Tue, 22 Oct 2013 11:10:04 +0000 (20:10 +0900)]
fix NRE.

10 years agofix NRE.
Atsushi Eno [Tue, 22 Oct 2013 11:09:38 +0000 (20:09 +0900)]
fix NRE.

10 years agoimplemented (hacky) method resolution for overloads and varargs.
Atsushi Eno [Tue, 22 Oct 2013 08:57:33 +0000 (17:57 +0900)]
implemented (hacky) method resolution for overloads and varargs.

10 years agosupport property function calls in tokenizer.
Atsushi Eno [Tue, 22 Oct 2013 07:24:45 +0000 (16:24 +0900)]
support property function calls in tokenizer.

10 years agosupport type's static property access.
Atsushi Eno [Mon, 21 Oct 2013 19:24:43 +0000 (04:24 +0900)]
support type's static property access.

10 years agofix whitespace skipping. Do not accept sequential binary operations.
Atsushi Eno [Mon, 21 Oct 2013 17:59:18 +0000 (02:59 +0900)]
fix whitespace skipping. Do not accept sequential binary operations.

10 years agoprevent invalid sequential property reference such as $(X)$(Y), by explicitly adding...
Atsushi Eno [Mon, 21 Oct 2013 17:28:50 +0000 (02:28 +0900)]
prevent invalid sequential property reference such as $(X)$(Y), by explicitly adding surrounding APOS to the expanded value.

10 years agocouple of tokenization fixes with more tests.
Atsushi Eno [Mon, 21 Oct 2013 13:28:49 +0000 (22:28 +0900)]
couple of tokenization fixes with more tests.

10 years agomade several fixes in jay-based expression parser and use it for boolean evaluation.
Atsushi Eno [Mon, 21 Oct 2013 10:54:58 +0000 (19:54 +0900)]
made several fixes in jay-based expression parser and use it for boolean evaluation.

For item/propery reference expansion, use manual parser.

10 years agofix test for GetPropertyValueEscaped(). (expects WTF behavior)
Atsushi Eno [Mon, 21 Oct 2013 09:10:44 +0000 (18:10 +0900)]
fix test for GetPropertyValueEscaped(). (expects WTF behavior)

10 years agoevaluate condition on PropertyGroup too.
Atsushi Eno [Mon, 21 Oct 2013 09:10:32 +0000 (18:10 +0900)]
evaluate condition on PropertyGroup too.

10 years agoevaluate Condition on property to add Properties list.
Atsushi Eno [Mon, 21 Oct 2013 08:32:12 +0000 (17:32 +0900)]
evaluate Condition on property to add Properties list.

Now we got a couple of errors because of malfunctional expression evaluator...

10 years agoproperty reference is valid in Condition too.
Atsushi Eno [Thu, 17 Oct 2013 17:55:17 +0000 (02:55 +0900)]
property reference is valid in Condition too.

10 years agoimplement well-known and reserved properties.
Atsushi Eno [Thu, 17 Oct 2013 13:54:36 +0000 (22:54 +0900)]
implement well-known and reserved properties.

10 years agoItem references can be evaluated as boolean and hence can be a valid Condition expres...
Atsushi Eno [Thu, 17 Oct 2013 12:38:53 +0000 (21:38 +0900)]
Item references can be evaluated as boolean and hence can be a valid Condition expression.

10 years agofix tests that incorrectly allowed empty/missing Include attribute.
Atsushi Eno [Thu, 17 Oct 2013 10:48:22 +0000 (19:48 +0900)]
fix tests that incorrectly allowed empty/missing Include attribute.

10 years agoimplement string literal boolean evaluation.
Atsushi Eno [Thu, 17 Oct 2013 10:48:10 +0000 (19:48 +0900)]
implement string literal boolean evaluation.

10 years agoforgot to commit exception change.
Atsushi Eno [Thu, 17 Oct 2013 10:47:45 +0000 (19:47 +0900)]
forgot to commit exception change.

10 years agofix IndexOutOfRangeException for parsing "$" "@" or "%" (one char for each).
Atsushi Eno [Thu, 17 Oct 2013 10:46:31 +0000 (19:46 +0900)]
fix IndexOutOfRangeException for parsing "$" "@" or "%" (one char for each).

10 years agoimplement IsDirty() (incomplete of course), MarkDirty() and DisableMarkDirty. Fix...
Atsushi Eno [Thu, 17 Oct 2013 10:44:42 +0000 (19:44 +0900)]
implement IsDirty() (incomplete of course), MarkDirty() and DisableMarkDirty. Fix tests.

10 years agoupdate csproj.
Atsushi Eno [Thu, 17 Oct 2013 10:42:06 +0000 (19:42 +0900)]
update csproj.

10 years agoRaise error when project item has empty Include attribute or lacks it.
Atsushi Eno [Thu, 17 Oct 2013 10:41:04 +0000 (19:41 +0900)]
Raise error when project item has empty Include attribute or lacks it.

10 years agoProjectItems are created after splitting Include paths by ';'.
Atsushi Eno [Thu, 17 Oct 2013 08:34:48 +0000 (17:34 +0900)]
ProjectItems are created after splitting Include paths by ';'.

So there could be more than one ProjectItem for the same ProjectItemElement.