View Single Post
09/26/18, 08:41 AM   #12
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 4,964
Originally Posted by Kyoma View Post
Even when the actual addon code didn't need any changes. While this may be manageable for some, it can quickly become a maintainance nightmare.
Bundled libraries need updates every single small patch or change which ZOs does.
This will take so much time we could simply invest intot the addons. And even if you only got 1-5 addons to maintain there are ppl who got about 30+. Think about this time "nightmare" (liky Kyoma wrote about).
You don't must follow my rules or decision! I never said that. But I decided that I won't invest this time into updating libraries anymore if the base design of libraries is another one and it got so many advantanges. Way more then disadvantages (and please don't count peoples time to update libraries and instal lthem as standalone as an disadvantage. It only has to be done once and afterwards Minion will handle it. And if you decided to install/update them manually it's the same like updating addons.).


Putting a piece of code "redundantly" in each addon just to have to remove or update those again after a while because it is non-functional again, makes no sense. Libraries are not designed to be put in each addon's folder construct. They should be put once into the game and used by all addons then.
There might be some which behave differently (LibGroupSocket e.g.) if you ship them bundled or as standalone.
But about 90% are designed to be used 1 time, standardized.

You can simply keep it divided from the addon, put it in an extra folder where you can easily find and maintain (the txt file e.g. if you want the API version raised) it, debug error messages etc.
-> Imagine you want to update the txt file of a library but do not know which of the 25 addons subfolders was the one which loaded the library for you now? You'd need to check each txt file to see the Version and compare which is the newest version. Then you'd need to check dependencies in the txt files between all of those addons or you might not see what is the load order and which library was loaded when. A nightmare to debug and to check imo.

Bundled libraries point to an addon where they got loaded if an error message happens. This will misslead you to the addon as the error raiser (maybe).

Plus you have more free space on your harddrive and the loading time of addons increases as well.
  Reply With Quote