wingyplus / dagger-dotnet-sdk

Dagger DotNet SDK
3 stars 1 forks source link

Roslyn source generator #6

Closed pjmagee closed 4 months ago

pjmagee commented 4 months ago

now sure how to integrate.

I copy your solution into Source generator and modify some small things.

I did not remove your code in Dagger.Codegen.

The Dagger.SDK.g.cs file should be deleted from repo.

If you navigate to .NET SDK References you can see 'Source Generator' which exposes generated code file automatically on build:

image

wingyplus commented 4 months ago

I just push changes that would be useful for us:

pjmagee commented 4 months ago

How does "dagger develop" cmd work? When I did this with go SDK, it generate go code.

So could we make dagger run "dotnet build" and also even get the introspection within the roslyn compiler? Maybe the file is not needed at all if it can make dagger call?

wingyplus commented 4 months ago

How does "dagger develop" cmd work? When I did this with go SDK, it generate go code.

the dagger develop ask the sdk to generate code and send the generated code back to the local machine. So, with this PR, we need to get the introspection to the Dagger.SDK to make the compiler works.

So could we make dagger run "dotnet build" and also even get the introspection within the roslyn compiler? Maybe the file is not needed at all if it can make dagger call

I think that we could delete the json file out of source tree for now because we might need to rely on dagger engine rather than save it as static file and we didn’t want to publishing it as a library at the moment.

wingyplus commented 4 months ago

I think the PR is in the good shape now.

Thank you for your help @pjmagee ❤️