ComicRackCE icon indicating copy to clipboard operation
ComicRackCE copied to clipboard

New Plugin System

Open maforget opened this issue 5 months ago • 14 comments

We need to replace the existing obsolete IronPython Plugin system. I would keep it as is for Legacy purpose, but create a new system that would live alongside the IronPython one.

P.S. The Current 2.7.4 version of IronPython that is installed seems to be the last one that will work with existing plugins. There is a version (at this time 3.4.1, updated in July 2023 that might be an idea).

But I believe the easiest is just to do a plugin system using .NET. Having dll in the folder instead. All they would need is probably just an Interface that they would need to implement that would serve as an entry point. Would we need to have various types for the different Hook that current plugin permits? Or maybe use Attributes to specify the Hook Types?

Could we also use something like HarmonyLib to give plugins an even bigger access to the entire code, to be able to be changed on the fly.

maforget avatar Jan 17 '24 09:01 maforget