-
Notifications
You must be signed in to change notification settings - Fork 899
Nuget improvements #778
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nuget improvements #778
Conversation
Note, this is similar in desired outcome as #772, but I took a different route which is why I didn't build on that. |
The Travis CI build failure is due to a bug in xbuild (mono). I have fixed the bug over at the mono project but I don't know when that will be released. |
Can we force rebuilding this? That bug should be gone with the new mono version. |
The merged code which GitHub provides is still against the old version. This PR would need a new push for it to get tested against current vNext. |
Rebased onto the head of vNext. Unfortunately it appears the MacOS X Travis CI server is still running Mono 3.6, which does not contain the fix. The fix can be found here: I'm looking into the new failure on the linux build server (which is running 3.8). |
…NuGet project. The Native libraries now ship in a separate NuGet package which the managed NuGet package depends on. All package building is done as part of the build process and managed with MSBuild targets.
…on build of the project the package is added to.
Unfortunately, it doesn't appear that Travis CI doesn't support NuGet package restore (requires NuGet.exe be installed and in the path of the build node). Un-ignored the packages directory and committed the dependencies into the repo. Recommendation for maintainers, investigate NuGet package restore in Travis CI.
xbuild (mono) seems to want a PrepareForBuild target.
This is due to a "bug" in mono https://bugzilla.xamarin.com/show_bug.cgi?id=17537. It is unclear if the bug will ever be fixed since this behavior is undefined in Windows due to a different permission scheme, so how Mono ends up handling it is unknown.
Another XBuild bug it appears. :/ I filed a bug https://bugzilla.xamarin.com/show_bug.cgi?id=22981 and submitted a pull request mono/mono#1285, I supposed this PR will go back into a waiting state. I have also submitted a bug report to the maintainers of NuGet.for.MSBuild and a recommended fix in case they can get a fix out faster than mono project can: |
Recreated PR off vNext. It was too much trouble to rebase/merge this one, so I just created a new branch. New PR can be found here: #896. |
bin\<configuration>
.$(TargetPath)
after build (if necessary).bin\<configuration>
.NuGet for MSBuild
..targets
file added to them that utilizesNuGet for MSBuild
.NuGet for MSBuild
, it will add some post-build tasks to your project when you install/update it. I have removed these but they will come back if you update. They may have undesired side effects..gitignore
packages/
though since Visual Studio will restore them on first build automatically (since VS2012 Update ? I believe).