Skip to content

How to include MSBUILD dependencies? #337

Closed
@tpetricek

Description

@tpetricek

When you get the FSharp.Compiler.Service NuGet package and install it as part of some application on Azure VM, the application will fail, because F# Compiler Service depends on MSBUILD assemblies that are not part of .NET Framework:

  • Microsoft.Build
  • Microsoft.Build.Engine
  • Microsoft.Build.Framework
  • Microsoft.Build.Utilities.v12.0
  • Microsoft.Build.Tasks.v12.0

This is a bit unfortunate, because it measn that FSharp.Compiler.Service will not work on non-dev machines. I'm not sure what the best solution is?

  • Bundle the libraries with FSharp.Compiler.Service NuGet package? (but it's about 5 MB that most people won't need...)
  • Have a NuGet dependency? (if MSBUILD was on NuGet... which I don't think it is)
  • ILMERGE ALL THE THINGS! (that is, just the MSBUILD assemblies using the nice ILMerge tool that sometimes does not crash...)
  • Give up and tell people to install MSBUILD on their deployment machines?

[See also my comment in: https://github.com/fsharp/fsharp/pull/409]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions