Old 01-27-2019, 09:10 AM   #1
Human being with feelings
Xenakios's Avatar
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 7,580
Default Extension plugins dependency management

People are doing extension plugins that depend on other extension plugins being installed and loaded before their own plugin. This can obviously lead to problems because it appears Reaper currently just loads the extension plugins in some order (likely alphabetical by their .dll file name).

I propose a simple dependency management system be implemented. The extension plugins would export in addition to the main entry point, a function like :

const char* get_dependencies();
that would return a string describing the extension dlls it depends on. Reaper would scan all the extension plugins and execute that function first, would then create a dependency graph between them and finally load the extension plugins in the correct order. If a dependency is missing or if there's a circular dependency, an error would be shown describing the problem.
For info on SWS Reaper extension plugin (including Xenakios' previous extension/actions) :
Xenakios blog (about HourGlass, Paul(X)Stretch and λ) :

Last edited by Xenakios; 01-27-2019 at 09:40 AM.
Xenakios is online now   Reply With Quote
Old 01-28-2019, 10:27 AM   #2
Human being with feelings
mespotine's Avatar
Join Date: May 2017
Location: Leipzig, Germany
Posts: 829


With the recent surfacing of more 3rd-party-extensions, this could be a real great help.
Ultraschall-API - a Lua-functions-library4Reaper: https://forum.cockos.com/showthread....98#post2067798
Reaper Internals - Developerdocs4Reaper: https://forum.cockos.com/showthread.php?t=207635
mespotine is offline   Reply With Quote

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT -7. The time now is 06:15 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.