BepInEx / BepInEx.Utility

Generic utility plugins for the BepInEx plugin loader (mono)
GNU General Public License v3.0
73 stars 9 forks source link

Fix local build & Add github action CI #1

Closed hanabi1224 closed 3 years ago

hanabi1224 commented 3 years ago

The prebuilt DLLs do not work for me, I tried to build it locally but found it does not build out of box, so I made a fix and contribute it back, also add a CI job. I've verified the output DLLs and they all work properly with my local BIE 5.4.12 Let me know your concerns, thanks!

P.S. here is the CI result in my fork

hanabi1224 commented 3 years ago

@ManlyMarco Thanks for ur feedback.

The plugins have to target .Net Framework v3.5 because they are used in games that don't support v4.x dlls

Just downgraded netfx to 3.5 by downgrading Mono.Cecil to 0.10.x.

Build output is no longer present inside a single bin folder and the release script does not work anymore (all plugins have to be placed in separate .zip files with a correct directory structure inside, with the plugin version in the .zip filename, this is because often only one or two plugins are useful in a game, and some might even break it).

It actually does, if you look at the build artifacts in my CI result, it produces all-in-one archive and per-plugin archives

File and assembly versions are not set to the plugin version, which can cause problems with apps managing plugins, and more importantly they make it not possible to see the plugin version by hovering over the dll or checking its properties (this is a requirement to reduce end user confusion and support tickets).

Have restored those AssemblyInfo.cs files

hanabi1224 commented 3 years ago

@ghorsington I've addressed all ur comments, plz take another look