Skip to content

Conversation

@Wi1l-B0t
Copy link
Contributor

There are different Grpc dependency versions.

So add this to unify Grpc dependency.

@github-actions github-actions bot added the N3 label Dec 20, 2025
@ajara87
Copy link
Member

ajara87 commented Dec 20, 2025

require #945

@vncoelho
Copy link
Member

It will possibly solve #942, but other loading problems will remain, we can address later.

Copy link
Member

@vncoelho vncoelho left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not in this specific case, but related.

Does SignPlugin needs to specify all these versions listed below?

	
		<PackageReference Include="Grpc.Net.Client" Version="2.71.0" />
		<!-- NOTE: Need install rosetta2 on macOS ARM64 -->
		<PackageReference Include="Grpc.Tools" Version="2.76.0" PrivateAssets="all" /```

@Wi1l-B0t
Copy link
Contributor Author

Wi1l-B0t commented Dec 20, 2025

Not in this specific case, but related.

Does SignPlugin needs to specify all these versions listed below?

		<PackageReference Include="Google.Protobuf" Version="3.33.1" />
		<PackageReference Include="Grpc.Net.Client" Version="2.71.0" />
		<!-- NOTE: Need install rosetta2 on macOS ARM64 -->
		<PackageReference Include="Grpc.Tools" Version="2.76.0" PrivateAssets="all" /```

Other versions are also OK.

@vncoelho
Copy link
Member

I mean, do we need to really specify each sub-library of GRPC in SignPlugin? @shargon

Do we really need this for safety?
Maybe also incompatibilities can reach in such use.

@Wi1l-B0t
Copy link
Contributor Author

I mean, do we need to really specify each sub-library of GRPC in SignPlugin? @shargon

Do we really need this for safety? Maybe also incompatibilities can reach in such use.

Optimized.

@vncoelho
Copy link
Member

How about GRPC tools still in a different version?

@erikzhang
Copy link
Member

I think the core to solving this problem is to load each plugin into a different AppDomain, so that they can avoid interfering with each other.

@vncoelho
Copy link
Member

@erikzhang, I think that different AppDomain solves this dependencies problems in way that each plugin could indeed have its own packages without conflicts.

Additionally, we still have plugins that depends on each other, for example plugins that depends on RPCServer.
In this sense, we need to understand when each AppDomain will interact with the other and avoid duplicating loading of RPCServer dll for example.

@vncoelho
Copy link
Member

In any case, although its is important and good to create a better design of these plugins loading and its domains, this is not really critical.
But I believe that a good design here opens possibilities for better security and organization of the project.

@shargon
Copy link
Member

shargon commented Dec 20, 2025

I think the core to solving this problem is to load each plugin into a different AppDomain, so that they can avoid interfering with each other.

Agree, but we tried with lot of erros, because we need to comunicate between plugins

@erikzhang
Copy link
Member

Agree, but we tried with lot of erros, because we need to comunicate between plugins

What kind of communication?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants