Le 10/07/2013 18:32, T.C. Hollingsworth a écrit :
I'm getting rather sick of doing this by the seat of my pants
and
arguing about various details in reviews, so it's high time something
got done about this. Plus, were working hard to actually get some JS
libraries (like jQuery, finally!) packaged properly, so it would be
nice to have some guidelines so that we can package them...properly.
So, down the rabbit hole we go...
I've drafted some JavaScript guidelines:
https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/JavaScript
And some guidelines for the other various shareable bits that aren't JavaScript:
https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/Web_Assets
And finally a F20 Change proposal that outlines the engineering component:
https://fedoraproject.org/wiki/Changes/Web_Assets
The most notable difference between these and previous efforts is that
I decided to go with One JavaScript Directory to Rule Them All.
Debian has already gone this route and I think it's much simpler than
the previous notion of requiring Apache configs for every JS library
under the sun. This way it's simple enough so it works with *any*
HTTP daemon.
/usr/share/assets => /assets
/usr/share/javascript => /assets/javascript
This seems a bit ugly...
Could web server configuration be included in web-assets package ?
Have you a proposal for the change required in the web server package ?
(for ex, I don't think lighttpd enable alias by default and afaik global
alias are not managed by nginx)
While I mostly agree on "it must be compiled or minified as part of the
RPM build process", I think we're going to enter nightmare.
Minify is often done with non-open source stuff (such as jsmin).
But build is not only minify, could requires more complex stuff (merging
various sources).
Some use a Rakefile but requires some very old gem (prockets iirc).
About /assets/javascript/foo URI.
Sometime using an app specific alias is a simpler solution, especially
when the html is generated, patching the source could be not so simple.
Ex horde :
http://localhost/horde will use
http://localhost/horde/js/ckeditor, so a trivial solution is
Alias /horde/js/ckeditor /usr/share/ckeditor
Remi.
I hope to submit the Change proposal to the Feature Wrangler/FESCo and
the drafts to FPC soonish, but I'd very much like to get some feedback
first. I'm sure there missing several details and could use some love
in certain areas, so please let me know what you think. (And feel
free to edit if necessary, it's a wiki after all!)
Thanks!
-T.C.
--
packaging mailing list
packaging(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging