Skip to content

Releases: BepInEx/HarmonyX

Release v2.0.3

10 Jun 11:46
Compare
Choose a tag to compare

Changelog

  • Ported latest AccessTools methods from Harmony 9d4d14b
    • The port is binary-compatible with old method signatures
  • Ported CodeInstructionExtension helper methods from Harmony 9d4d14b
  • Removed most of unnecessary MonoMod.RuntimeDetour fixes as they have been integrated into MonoMod directly
  • Fixed finalizers not working properly in cecil mode

Release v2.0.2

01 Jun 09:36
Compare
Choose a tag to compare

Changelog

  • Behaviour change: all prefixes are now run even if original method is skipped
    • This is to ensure that timing/logging related prefix-postfix combos always work
    • At this moment there is no way to inspect if a patch asked to skip original method
  • New: Ability to prefix, postfix, finalize and transpile extern methods
    • Works on mono and .NET Framwork, .NET Core with some limitations
    • Note about transpilers: extern methods have no body, so the IL you get is simply a wrapper call to the original method
  • Clean up AccessTools
    • Add clearer InvalidHarmonyPatchArgumentException with more useful data
    • Changed error messages to use MonoMod style method descriptors
  • Port various fixes from Harmony 2 master
    • Fix passing original generic methods in finalizers
    • Fix <Module> methods not being patchable
    • Port various methods from 2.0.0.0 stable (but not all yet)
  • Update MonoMod to 20.5.21.5
  • Delegate more methods to MonoMod to unify API behaviour
  • Implement custom loggers via Logger
    • You can integrate Harmony logs with other logger systems easier, example
    • The default Harmony log flag still works for legacy
    • Add more and improve logging
  • Downgrade API support to netstandard 2.0

Release v2.0.1

12 Jan 21:59
Compare
Choose a tag to compare

Initial release (full Harmony feature parity)

Release v2.0.0

12 Jan 21:55
Compare
Choose a tag to compare
Update README