Forgive if I'm wrong but is not a framework different from a library ?
True. but librarys can be dependnt on frameworks.
That all the users complaining about memory issues due to multiple frameworks are barking up the wrong tree since pretty much nothing has changed -
well this has been a non issue until recently whith the movement to Agnostic Libs; before everything was InterDependant on Ace2 as the framework. with this new movement the concept is that any addon, regardless of core framework (Cosmsos, Ace2, Ace3, Rock, Ect) will be able to use it.
Granted Some libs cannot be written framework agnostic with out some significant additions to it that normaly a framework would provide; such as an event handler, signaling, callbacks ect, thus the confict of duplicate code, read: Threat-1.0, Parser-4.0, Central Comms Module of any sort.
There is debate as to what is more effecent, a agnostic lib that has all it's needs met with in the core of the lib or to let some of the more common things as mentioned be placed onto a framework.
Also given is that other Libs CAN easily be written framework agnostic, and have no problems (IE Gratuity).
...as long as the libraries stay framework agnostic users will still benefit from code sharing ?
users should not care in the first place, Advanced Users might care if they choose to.
That any preformance issues are due to some code issues that haven't fully hammered out since the frameworks are still in alpha stage ?
Ace3 is in Alpha, i consider Rock to be a stable Beta. the real problem is the conversion of the libs over to LibStub and agnostic status.
one thing you will find is that as you use more and more addons from the Ace Family SVN, more and more reliance on libs is found and as the goal of ace is fullfilled, to let authors focus on the heart of their addon. As Tek said, focus on the authors making the addons and in turn let the authors worry about the framework. ~ As I say, if something dosn't perform as you want it to, say something to the author or find something else.
tekkub ... i think i can speak for alot here and say "We Know and Understand this..."
but the problem is that these libs are being reStructured to work with a new framework.. or with out one.
A "compatibility layer" in between major versions makes no sense, it goes completely against the whole embed design in the first place. If you break compat, then old addons need to evaluate the new version, see if they want to use it, get changed to use it, and tested against it
this proccess has always been left to the perticular author... and not all of them are still arround or want to reconfigure their addon to use a new Major Revision Lib... and we are still even MID Proccess and not all libs are converted over.
your argument holds water.. but is not an significant issue at this time. Once Ace3 / Rock Stabilizes then your argument MUST be evaluated.
by providing compatibility layers between major libs .. it is an appeal to the masses.
Assuming the person who actually makes a library does there job right and is bumping majors on incompatible changes, chances are you're already running a few copies of the same library anyway and it hasn't been that big of a deal yet. The only time you'd ever have a chance to notice a decrease in performance is if you were running two heavy usage libraries like Parser.
actually it is... for me at least - im running quite a few (100ish) mods... and ya static load on the system is a problem. xpecialy with dual monitors and running FireFox on the 2nd one..
but those memory issues are more the same of Alt-Tab.
Running two frameworks means:
- Running two OnUpdate() managers at the same time.
- Possibly running two libraries that do the same thing but that runs on each framerwork separately.
- Having two configuration managers loaded (i.e. /slah, gui, ...)
I've got a very real answer for you as i run 3 base frameworks at a time on my UI.
My memory usage went down my 10mb, framerate went up by 10-15 (that is when i switched over to new versions).
and to take the example from Fisker, LibParser-4.0 has compatibility layers for the other 2 versions... just got to make sure that it loads first for addons that are older.