Azure / Azure/azure-functions-host
ExtensionsMetadataGenerator may not need to be a separate executable
- Dominant language
- C#
- Stars
- 2k
- Forks
- 482
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 38
Description
There is a confusing .NET SDK issue (https://github.com/dotnet/installer/issues/11951) on macOS that manifests as failures in the Functions build process, like https://github.com/Azure/azure-webjobs-sdk/issues/2755.
That will ideally get fixed, but it's proven difficult, and I think it could be worked around in a way that would also improve build times for Functions users.
Today the `GenerateFunctionsExtensionsMetadata` task shells out to `dotnet Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator.Console.dll`, which is triggering the above bug and also fairly high-overhead; it needs a new OS process, CLR startup, and JIT cost.
It should be possible to rewrite the task to call into the `ExtensionsMetadataGenerator` class _as a library_, at least when building from `dotnet build` (and thus already in a .NET 6.0+ environment). That would be faster, allow potentially better error reporting, and avoid the bug on macOS.
Contributor guide
Assessment
This issue has not been assessed yet.