Archived Support Site

This support site is archived. You can view the old support discussions but you cannot post new discussions.

Build failure

mjmoore's Avatar

mjmoore

07 Mar, 2016 11:39 PM

I pushed up some changes to application "FiddleFlights" and am getting build failures. I have checked the log, but can't determine what is causing the failure. Could you take a look at the log and let me know if you have ideas as to how to resolve? The commit id is "6899acd225e2bd826d2620dd1e4f8fc619a051f1".

Thanks.

  1. 1 Posted by mjmoore on 07 Mar, 2016 11:48 PM

    mjmoore's Avatar

    After looking at the log a little further, it appears that the build is having a problem with C# 6.0 statements. Is C# 6 not supported on AppHarbor?

  2. 2 Posted by mjmoore on 08 Mar, 2016 12:31 AM

    mjmoore's Avatar

    I tried implementing the solution discussed here but am still not able to build successfully.

  3. 3 Posted by mjmoore on 08 Mar, 2016 12:49 AM

    mjmoore's Avatar

    Added nuget packages referenced here but build still fails.

  4. Support Staff 4 Posted by rune on 08 Mar, 2016 04:02 AM

    rune's Avatar

    Hi,

    I suspect you may also need to install the Microsoft.CodeDom.Providers.DotNetCompilerPlatform to the libraries that use C# 6.0 features as well (for instance the Core and Common projects). I took a look at the code and it's a bit interesting why the web project also appears to be having issues compiling with the C# 6.0 features as it seems to be configured correctly. I think the Microsoft.Bcl.Build package and references may be interfering with the build process so it doesn't use the Roslyn compiler as expected -- do you know/remember why that package is installed, and whether it's still required when using the Roslyn compiler?

    Generally speaking, C# 6.0 is supported in the sense that the servers have all the software required to run it, but the compiler and runtime itself is installed with NuGet packages (so those are not maintained/updated by AppHarbor). This can lead to a bit of confusion as you've seen in the other cases (mostly because VS 2015 uses a newer version of MsBuild), but it should be possible to work around it and I'm happy to help out.

    I think we'll be able to make some changes to the build process that'll make this experience smoother, but for the time being it's best if applications define the dependencies and runtime they require.

    Best,
    Rune

  5. 5 Posted by mjmoore on 08 Mar, 2016 06:19 AM

    mjmoore's Avatar

    Ok, as you suggested, adding the Microsoft.CodeDom.Providers.DotNetCompilerPlatform nuget package to the other projects did indeed resolve the build failure issue.

    Regarding Microsoft.Bcl.Build package, I really don't know when and why it entered into the equation. For grins I tried to uninstall the package and got the following error message Unable to uninstall 'Microsoft.Bcl.1.1.9' because 'Microsoft.Net.Http.2.2.28' depends on it.

    So, I think things are good for the moment. It would be nice if there was a way for this to be a little smoother. Thanks for your help.

  6. Support Staff 6 Posted by rune on 10 Mar, 2016 10:24 PM

    rune's Avatar

    Ok that's great! If adding the NuGet package to the other projects worked then the BCL package shouldn't cause any issues either -- mostly mentioned it because I though there was also build failures in the web project, which seemed to be correctly configured.

    Happy to help and hopefully we'll have a smoother process for C# 6.0 enabled apps soon!

    Best,
    Rune

  7. rune closed this discussion on 10 Mar, 2016 10:24 PM.

Discussions are closed to public comments.
If you need help with AppHarbor please start a new discussion.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac