i think a handy addition to addonloader would be the support for addon sets. basically, a set would be a whitelist (or blacklist i suppose) of addons that addonloader would check against before making a call to load an addon.
using sets would add the requirement of having to select a set once the ui has loaded. probably something like a menu popping up with the current set selected and the ability to select a new one (the current set being the last set selected). the window would close once the set was selected and then the "load-always" loop would commence based on the set selected.
sets could be managed with a separate (LoD) addon to avoid adding too much code to addonloader itself.
How would this be any different than the existing "overrides" system? If you don't want a particular addon loading at all on a particular character, simply disable that addon for that character. There's also a "never" override option if you absolutely can't disable the addon.
gee, i dunno. i'll have to look at the overrides to see how it works. the one thing that is different is that what i'm proposing would be a bit more active on addonloader's part -- it would be something that delays addonloader's operation until the user selects an addon set to use.
the goal would be allowing people to log in and then select a set of addons that reflects what it is they intend to do this session. pvp, raiding, solo, etc. theoretically, i suppose you could select more addons to load later if you decide to change what you're doing (or you could reload your ui to reset the addons).
That seems counter to the whole point of AL. If you want the addon to load when you PvP, it should be set to load on a condition that indicates PvP... entering a battlegraound, becoming flagged, etc. The user shouldn't need to tell AL what they plan to do, it should simply load up the addons right when they need them.
it's not a question of "shouldn't be" it's a question of "don't want to be". like, i don't find damage meters and such to be so interesting in pvp. other people might like having them running. or perhaps i like a particular map mod for pvp and a different one for pve. maybe i run a healbot type mod when i pvp with my feral druid "just in case" but in normal questing, i don't bother with it.
There's no flaw, it's just not how AL is designed. I don't think any of the profiling managers really deal with LoD loading. Maybe you should make an addon that just loads the LoD addons you want loaded on command? Then if you don't want AL loading those ones ever, set it not to load them.
It's also worth mentioning that AddonLoader doesn't disable addons, and that there is no way to unload an addon that's already been loaded without reloading your UI. If you want to completely disable your damage meter while you're doing arenas, rather than just hide or pause it, the only way to do that is to reload your UI.
Which in the end all falls back to having the right conditionals. If you have them set properly then you just reload and only the ones that match the current condition load. If you don't want the damage meter in arena, you don't give it a condition that would load in arena.
I still think unloading addons is really an unnecessary thing, in the majority of cases it's just an OCD urge you need to suppress ("Everything must be shiny and clean and unloaded from memory if I'm not using it this second!") and the rest are cases of addons that need performace fixes (KLHTM pulling down your framerate when idle in Ironforge). But for the first case, you can just suffer with a /rl
the idea would be to not load the addons you don't anticipate using without having to turn them off individually from the login screen and without having to log in, select a new set of addons with an addon manager mod, then reload the ui to make the changes.
addonloader could be easily modified to wait for user selection prior to running thru it's delayed load addon list.
if you decide you want to do something else, you could select a new set (which of course would only add to the addons already running) or you could reload your ui to clear the addons and then select a new set.
tinkering with it on my own here makes me wonder if enough addons even support AL to make the effort worthwhile....
And how would you propose telling the game to load "pvp addons" if you're logging in in Dalaran with the intention of going to do arenas? There is simply no way to selectively load specific addons without a reload after the initial login unless those addons are written to support on-demand loading, and no way at all to selectively unload specific addons without a reload.
The best you'd be able to do would to be to set up 3+ sets in ACP (or another in-game addon manager) - an "always on" set, a "pvp" set, and a "not pvp" set. When you're going to do arenas, enable the "pvp" set. When you're done doing arenas, or before you quit, disable the "pvp" set; if you're logging out anyway you don't need to reload to unload the pvp addons, and they'll be disabled the next time you log in.
Well the idea is to use LoD instead of enable/disable... but he wants unloading of addons which kinda defeats the purpose of using AddonLoader for it anyway since he'd need to reload. If you drop the unloading of addons, then you're back at what AL already does, given that the load conditions for the addons are correct.