Atsushi Eno [Tue, 19 Nov 2013 08:45:09 +0000 (17:45 +0900)]
update .csproj.
Atsushi Eno [Tue, 19 Nov 2013 08:44:37 +0000 (17:44 +0900)]
Add missing ITaskFactory/2 and co. Add BuildEventArgs.set_Context().
Atsushi Eno [Mon, 18 Nov 2013 15:01:50 +0000 (00:01 +0900)]
update csproj.
Atsushi Eno [Mon, 18 Nov 2013 14:59:54 +0000 (23:59 +0900)]
Add IBuildEngine implementation, required to expose some features to tasks.
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...
Atsushi Eno [Mon, 18 Nov 2013 10:31:25 +0000 (19:31 +0900)]
fix NET_2_0 build: INodeLogger is only in 4.0.
Atsushi Eno [Fri, 15 Nov 2013 18:10:20 +0000 (03:10 +0900)]
slightly reorganized external sources dirs.
Atsushi Eno [Fri, 15 Nov 2013 18:10:00 +0000 (03:10 +0900)]
add missing copyright headers.
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.
Atsushi Eno [Thu, 14 Nov 2013 20:35:53 +0000 (05:35 +0900)]
add missing license headers.
Atsushi Eno [Thu, 14 Nov 2013 20:35:28 +0000 (05:35 +0900)]
slightly reduce NIE code path.
Atsushi Eno [Thu, 14 Nov 2013 20:34:49 +0000 (05:34 +0900)]
update csproj.
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).
Atsushi Eno [Thu, 14 Nov 2013 19:46:55 +0000 (04:46 +0900)]
Implement more precise DefaultTargets handling.
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.
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.
Atsushi Eno [Thu, 14 Nov 2013 18:17:03 +0000 (03:17 +0900)]
slightly improve property access error message.
Atsushi Eno [Thu, 14 Nov 2013 18:16:30 +0000 (03:16 +0900)]
Apply windows path loader fix to ProjectInstance too.
Atsushi Eno [Thu, 14 Nov 2013 13:56:08 +0000 (22:56 +0900)]
Resolve property value by EvaluatedValue where appropriate.
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.
Atsushi Eno [Wed, 13 Nov 2013 16:12:08 +0000 (01:12 +0900)]
Fix binary expression evaluation. They can be combined.
Atsushi Eno [Wed, 13 Nov 2013 16:11:44 +0000 (01:11 +0900)]
implement prebuilt Condition evaluation function support.
Atsushi Eno [Wed, 13 Nov 2013 12:16:19 +0000 (21:16 +0900)]
Fix location of windows path compatibility change.
Atsushi Eno [Wed, 13 Nov 2013 12:16:07 +0000 (21:16 +0900)]
Fix 4.5 toolpath.
Atsushi Eno [Wed, 13 Nov 2013 11:46:38 +0000 (20:46 +0900)]
fix import path for ProjectInstance too.
Atsushi Eno [Wed, 13 Nov 2013 10:23:35 +0000 (19:23 +0900)]
update csproj.
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.
Atsushi Eno [Thu, 31 Oct 2013 18:02:01 +0000 (03:02 +0900)]
Project needs to build just fine for empty projects.
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.
Atsushi Eno [Thu, 31 Oct 2013 13:28:07 +0000 (22:28 +0900)]
sorted out BuildManager build logic up to BuildSubmission.Execute().
Atsushi Eno [Thu, 31 Oct 2013 11:31:03 +0000 (20:31 +0900)]
Reuse logger types in Microsoft.Build.dll.
Atsushi Eno [Thu, 31 Oct 2013 11:25:55 +0000 (20:25 +0900)]
update csproj.
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.
Atsushi Eno [Thu, 31 Oct 2013 11:13:47 +0000 (20:13 +0900)]
update .sources too.
Atsushi Eno [Thu, 31 Oct 2013 11:13:01 +0000 (20:13 +0900)]
update csproj.
Atsushi Eno [Thu, 31 Oct 2013 11:12:37 +0000 (20:12 +0900)]
add missing logging types which are required for Microsoft.Build.dll.
Atsushi Eno [Thu, 31 Oct 2013 09:00:33 +0000 (18:00 +0900)]
update csproj.
Atsushi Eno [Thu, 31 Oct 2013 09:00:02 +0000 (18:00 +0900)]
Add missing ProjectPropertyGroupTaskIntance and descendant, and implement more of this namespace.
Atsushi Eno [Thu, 31 Oct 2013 08:48:59 +0000 (17:48 +0900)]
Added some comments on loaders in the two project object models.
Atsushi Eno [Thu, 31 Oct 2013 08:03:34 +0000 (17:03 +0900)]
implemented more ProjectInstance family. Enabled some tests back.
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.
Atsushi Eno [Wed, 30 Oct 2013 09:12:54 +0000 (18:12 +0900)]
implement basic project loader for 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.
Atsushi Eno [Fri, 25 Oct 2013 15:25:18 +0000 (00:25 +0900)]
update .csproj.
Atsushi Eno [Fri, 25 Oct 2013 15:24:50 +0000 (00:24 +0900)]
implement ProjectMetadataInstance and add some MS.Build.Execution tests.
Atsushi Eno [Fri, 25 Oct 2013 11:42:43 +0000 (20:42 +0900)]
add another GetLoadedProject() test, this time with ProjectInstance.
Atsushi Eno [Fri, 25 Oct 2013 11:30:36 +0000 (20:30 +0900)]
implement GetLoadedProject(), ProjectAdded and adjust relevant methods.
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.
Atsushi Eno [Thu, 24 Oct 2013 17:25:33 +0000 (02:25 +0900)]
update .csproj.
Atsushi Eno [Thu, 24 Oct 2013 17:25:01 +0000 (02:25 +0900)]
make TaskItem available (as internal) in Microsft.Build.dll.
Atsushi Eno [Thu, 24 Oct 2013 17:24:26 +0000 (02:24 +0900)]
implement item wildcard support, except for "**" which looks buggy at DirectoryScanner.
Atsushi Eno [Thu, 24 Oct 2013 15:53:23 +0000 (00:53 +0900)]
implement IsImported.
Atsushi Eno [Thu, 24 Oct 2013 12:36:18 +0000 (21:36 +0900)]
implemented well-known item metadata.
Atsushi Eno [Wed, 23 Oct 2013 11:14:57 +0000 (20:14 +0900)]
Fix API for ProjectItemElement.Condition. Add test for item definition Condition.
Atsushi Eno [Wed, 23 Oct 2013 11:14:43 +0000 (20:14 +0900)]
GetMetadataValue() returns "" if metadata is not found.
Atsushi Eno [Tue, 22 Oct 2013 19:22:07 +0000 (04:22 +0900)]
Fix MSBuildThisFile reserved property value (empty by default).
Atsushi Eno [Tue, 22 Oct 2013 19:00:44 +0000 (04:00 +0900)]
got imports working. Imported ProjectRootElement needed XmlReader to load it.
Atsushi Eno [Tue, 22 Oct 2013 18:52:55 +0000 (03:52 +0900)]
For expression, string equality comparison is done in case-insensitive manner.
Atsushi Eno [Tue, 22 Oct 2013 18:16:01 +0000 (03:16 +0900)]
fix couple of regressions caused by lazy evaluation of properties.
Atsushi Eno [Tue, 22 Oct 2013 17:38:15 +0000 (02:38 +0900)]
update .csproj.
Atsushi Eno [Tue, 22 Oct 2013 17:37:51 +0000 (02:37 +0900)]
partal import implementation.
Atsushi Eno [Tue, 22 Oct 2013 14:27:18 +0000 (23:27 +0900)]
missing Project attribute causes load error at ProjectRootElement level.
Atsushi Eno [Tue, 22 Oct 2013 11:35:25 +0000 (20:35 +0900)]
Allow empty function args and fix "sigle-argument is ignored" issue.
Atsushi Eno [Tue, 22 Oct 2013 11:31:03 +0000 (20:31 +0900)]
Fix fullname (dotted name) parsing in boolean expression 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.
Atsushi Eno [Tue, 22 Oct 2013 11:10:04 +0000 (20:10 +0900)]
fix NRE.
Atsushi Eno [Tue, 22 Oct 2013 11:09:38 +0000 (20:09 +0900)]
fix NRE.
Atsushi Eno [Tue, 22 Oct 2013 08:57:33 +0000 (17:57 +0900)]
implemented (hacky) method resolution for overloads and varargs.
Atsushi Eno [Tue, 22 Oct 2013 07:24:45 +0000 (16:24 +0900)]
support property function calls in tokenizer.
Atsushi Eno [Mon, 21 Oct 2013 19:24:43 +0000 (04:24 +0900)]
support type's static property access.
Atsushi Eno [Mon, 21 Oct 2013 17:59:18 +0000 (02:59 +0900)]
fix whitespace skipping. Do not accept sequential binary operations.
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.
Atsushi Eno [Mon, 21 Oct 2013 13:28:49 +0000 (22:28 +0900)]
couple of tokenization fixes with more tests.
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.
Atsushi Eno [Mon, 21 Oct 2013 09:10:44 +0000 (18:10 +0900)]
fix test for GetPropertyValueEscaped(). (expects WTF behavior)
Atsushi Eno [Mon, 21 Oct 2013 09:10:32 +0000 (18:10 +0900)]
evaluate condition on PropertyGroup too.
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...
Atsushi Eno [Thu, 17 Oct 2013 17:55:17 +0000 (02:55 +0900)]
property reference is valid in Condition too.
Atsushi Eno [Thu, 17 Oct 2013 13:54:36 +0000 (22:54 +0900)]
implement well-known and reserved properties.
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.
Atsushi Eno [Thu, 17 Oct 2013 10:48:22 +0000 (19:48 +0900)]
fix tests that incorrectly allowed empty/missing Include attribute.
Atsushi Eno [Thu, 17 Oct 2013 10:48:10 +0000 (19:48 +0900)]
implement string literal boolean evaluation.
Atsushi Eno [Thu, 17 Oct 2013 10:47:45 +0000 (19:47 +0900)]
forgot to commit exception change.
Atsushi Eno [Thu, 17 Oct 2013 10:46:31 +0000 (19:46 +0900)]
fix IndexOutOfRangeException for parsing "$" "@" or "%" (one char for each).
Atsushi Eno [Thu, 17 Oct 2013 10:44:42 +0000 (19:44 +0900)]
implement IsDirty() (incomplete of course), MarkDirty() and DisableMarkDirty. Fix tests.
Atsushi Eno [Thu, 17 Oct 2013 10:42:06 +0000 (19:42 +0900)]
update csproj.
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.
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.
Atsushi Eno [Wed, 16 Oct 2013 18:31:06 +0000 (03:31 +0900)]
update csproj.
Atsushi Eno [Wed, 16 Oct 2013 18:30:55 +0000 (03:30 +0900)]
delete generated code.
Atsushi Eno [Wed, 16 Oct 2013 18:29:05 +0000 (03:29 +0900)]
Altered expression parser to hand-written one (which was kind of anticipated) for torelant parsing.
Atsushi Eno [Wed, 16 Oct 2013 07:16:10 +0000 (16:16 +0900)]
Add full-scratch expression parser implementation.
Atsushi Eno [Mon, 14 Oct 2013 18:27:47 +0000 (03:27 +0900)]
implemented couple of Project members, while changing some members to throw NIE.
Atsushi Eno [Mon, 14 Oct 2013 18:14:28 +0000 (03:14 +0900)]
update .csproj.
Atsushi Eno [Mon, 14 Oct 2013 18:14:14 +0000 (03:14 +0900)]
implement ProjectItem and co.
Atsushi Eno [Mon, 14 Oct 2013 17:29:38 +0000 (02:29 +0900)]
ProjectItemDefinition.ItemType was not initialized (also not tested.)
Atsushi Eno [Mon, 14 Oct 2013 17:22:52 +0000 (02:22 +0900)]
update .csproj.
Atsushi Eno [Mon, 14 Oct 2013 17:22:34 +0000 (02:22 +0900)]
implement ProjectItemDefinition and co.
Atsushi Eno [Mon, 14 Oct 2013 11:20:34 +0000 (20:20 +0900)]
implement Project.RemoveProperty() and ProjectProperty.Predecessor (i.e. property overrides).
Atsushi Eno [Mon, 14 Oct 2013 10:31:35 +0000 (19:31 +0900)]
implement several ProjectProperty types.