vrchat-community / UdonSharp

A compiler for compiling C# to Udon assembly
https://udonsharp.docs.vrchat.com
MIT License
461 stars 50 forks source link

0Harmony.dll should not be included in the VPM package. #129

Closed uhKayla closed 6 days ago

uhKayla commented 1 year ago

Describe the bug in detail: Including 0Harmony.dll in the main package will automatically break other harmony-dependent packages, when Harmony is installed manually or from a specific Harmony VPM package. This should be changed to install as a dependent package from a registry, while checking for Harmony on import.

Provide steps/code to reproduce the bug: Import UdonSharp using VRCC in any project already using Harmony, such as RATS

Expected behavior: UdonSharp should check for Harmony on import.

Additional Information: Console errors with conflicting dependencies will clear when requested, therefore this issue is easy to miss, and can be complicated to track down.

rrazgriz commented 1 year ago

I agree, this creates complications for other tooling that depends on Harmony.

I think a solid solution would be providing it as an official package through VCC, so other packages can depend on it: https://github.com/vrchat-community/creator-companion/issues/75

rrazgriz commented 9 months ago

com.vrchat.base 3.4.0 now bundles Harmony, which smooths handling of the Harmony dependency: https://github.com/vrchat-community/creator-companion/issues/75#issuecomment-1751513947