[dev] Javascript depency loading

Michael M Slusarz slusarz at horde.org
Fri Jul 31 16:07:22 UTC 2009


Quoting Jan Schneider <jan at horde.org>:

>> A possible solution, and one I am looking at re: Horde_Editor, is  
>> to bundle the more complex javascript elements in a framework  
>> package and then have the package deal with the dependencies.  This  
>> has the extra advantage of allowing us to upgrade a package  
>> correctly if the javascript components are updated.
>>
>> This will require us to write horde-specific PEAR roles to  
>> correctly install this javascript.  Don't know if this is feasible  
>> or not.
>>
>> http://pear.php.net/manual/en/guide.migrating.customroles.defining.php
>
> How would that help us with *loading* dependencies?

My comment on roles is that to do this kind of javascript framework  
packaging, we need a way to install the javascript files to a  
web-servable directory somewhere.  I am extremely uncomfortable with  
the present setup that you can update framework packages while its  
corresponding helper files, living in horde, will not be updated  
unless you update horde itself.  A custom install role can fix this  
issue.  Roles have nothing to do with JS dependencies.

But roles are necessary to develop a framework javascript package that  
would handle dependencies for a certain javascript package. You would  
define how the dependencies are loaded in the framework script once -  
then you never have to worry about the dependencies again.  At some  
point in some script somehwere a human is going to have to look at a  
bunch of files and determine the order they need to be loaded  
correctly for dependency purposes.  LABjs doesn't do this, nor will  
any other code-based solution.

 From what I understood about your IRC conversation, the issue was  
that to not have to repeat this trial/error process every time you  
want to load the script.  So you do this determination once in a  
package and don't have to worry about it again.

michael

-- 
___________________________________
Michael Slusarz [slusarz at horde.org]



More information about the dev mailing list