Extension that depends on another extension

I developed 4 expansions (3 functional and 1 library type).
How do I distribute to when the functional extension is installed, install the library as well?
Was there a better way?

Sorry my bad English.


Currently there is no special Library class. It will need to be distributed as it’s own extension.
The other extensions will need to require it and detect that it was or was not loaded.
If not you display a notification to the user that they need to install the library extension.

P.S. - Your EW store link (in your forum profile) does not work.

Thanks for answers and PS.

You will get into version mess when you need to make a breaking change to the library (C1.0 → C2.0) and you have no control over what extension versions users have installed, e.g. A1.0 (requiring library C1.0) and B2.0 (requiring library C2.0). This could produce error reports that are hard to debug. Of course you could just nudge your users to always update your extensions and libraries and trust that they actually do so.

If your extension does not include any other external extras or gems but is just your own code, then it is in the range of tens of kilobytes, negligible amount of disk space nowadays. You could consider to bundle with each extension a copy of the needed library version (in this extension’s module namespace).

1 Like

thanks a lot for your help