Azure / azure-functions-durable-extension

Durable Task Framework extension for Azure Functions
MIT License
710 stars 263 forks source link

Initial changes for extension channel #2812

Open jviau opened 1 month ago

jviau commented 1 month ago

Draft PR to demonstrate how durable would switch to using the existing gRPC channel provided by the functions worker. This is a very old branch and will have many conflicts / out of date changes that will need to be updated.

This change does move and more and more towards specializing the WebJobs extension for out-of-proc workers. This makes me wonder if there is value in splitting the extension: one for in-proc, one for all others (and common assemblies as needed).

Known Issues / Remaining Work

davidmrdavid commented 1 month ago

I worry the .NET6 requirement might be a showstopper, I remember it being so when trying to make similar changes for Java, unless I'm misremembering.

jviau commented 1 month ago

I worry the .NET6 requirement might be a showstopper, I remember it being so when trying to make similar changes for Java, unless I'm misremembering.

If we do this as part of the major version rev then I think it is possible to make it work but will be challenging. Bundles is the biggest question to me: can they support .net6.0 packages?

cgillum commented 1 month ago

Bundles v4 supports .NET Core 3.1, so we can't take a dependency on .NET 6+ unless there's also a new major bundles version release.

jviau commented 1 month ago

Requesting bundles support .NET6 is a reasonable ask. .netcoreapp3.1 is a well out of support, so it is problematic for extensions to be stuck on it due to bundles.

Opened an issue for that support: https://github.com/Azure/azure-functions-extension-bundles/issues/402