This project has moved. For the latest updates, please go here.

Having a hard time getting this to work

Oct 1, 2015 at 5:09 AM
Edited Oct 1, 2015 at 5:12 AM
I'm trying to compile Rxx and I am having a heck of a time trying to get White Tie to work. After a few tweaks I've got the code, code contacts, and documentation all working and building, but the WhiteTie.NuGet.targets has a bunch of errors.

I'm not an expert in MSBuild by any means, but it appears the NuGet packaging logic isn't properly implemented. For example, many times you are using item transforms to set metadata, leading to semicolon separated lists where one value is expected. Also, your comments mention doing Inner-Joins between two item lists, but I don't think you can join two items the way you are doing it.

The area I'm currently struggling with is this :
<!-- Inner-join on Identity -->
            <_NuGetFlavorProjectReferenceRecursiveDependency Condition=" '%(Identity)' != '' AND '@(NuGetFlavorRecursiveReference)' != '' ">
                <IsPackageDependency>True</IsPackageDependency>
                <PackageId>@(NuGetFlavorRecursiveReference->'%(PackageId)')</PackageId>
                <PackageVersion>@(NuGetFlavorRecursiveReference->'%(PackageVersion)')</PackageVersion>
                <IsDevelopmentDependency>@(NuGetFlavorRecursiveReference->'%(IsDevelopmentDependency)')</IsDevelopmentDependency>

                <!-- Overriding this metadata is acceptable since this is only a temporary item list used by the following inner-join only.  -->
                <MSBuildSourceProjectFile>@(NuGetFlavorRecursiveReference->'%(Identity)')</MSBuildSourceProjectFile>
            </_NuGetFlavorProjectReferenceRecursiveDependency>
Can you explain what this is trying to do? It seems like you are to trying to do batching, but I don't think batching works when setting metadata on an item list. What is the Condition trying to accomplish and which Identity is it referring to

Thanks,
Dave