[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dealing with embedded javascript libraries



W dniu 24.10.2011 01:20, Ben Finney pisze:
I would very much like that to change – that programmers should expect a
single instance of a Javascript library to be useable across the OS, and
that a Javascript library without a dependable ABI should be shunned by
most application writers, and for applications to declare the library
versions they expect in a standardised, automated way. But I don't know
what to do to get there.

Hi.

I'd like to throw a few comments here. I speak both as an web application developer, debian packager (well, packaging my application for debian-based systems) and deployment/ops engineer.

Asking for this is *highly* unrealistic and will only further alienate developers from Debian's way of doing things. Current best practice is to use CDNs that distribute a particular or latest version of a library (jQuery for example has several such networks available) or to bundle the library directly.

The reason for this is simple: quality control and portability (across hosting systems)

Another thing to point out is that unlike traditional applications where linking is explicit and done before actual startup here the linking happens at another machine, the one of the user of the web application. The actual library can come from a yet another system. The key issue to point out here is that this is not really linking the way we think about it. Here it is not code but data.

If anything, having one version of a javascript library *hurts* Debian-as-a-platform. I would encourage a different approach altogether: explicit mutli-versioning (ideally for all upstream releases or for all upstream releases that are known to introduce features and are not emergency bug/security fixes) and explicit version dependency that matches upstream. That later requirement may be ignored if uptream is not responding or the application is known to work correctly with another version of a library.

This approach will allow web application developers to use Debian in the way they expect systems to work.

At the end of the day I cannot use Debian's jQuery because I must control what goes out to ensure quality. Multiply this problem by co-hosting many applications and you get the answer.

As long what I described above is the prevailing point of view or motivation of web application developers then packaged javascript libraries will only fill a niche where someone deploys a packaged wiki/bug tracker/something else for their small team/co workers.

More complicated web applications will be deployed outside the packaging system, without any reuse of packaged libraries, without any advantages that Debian brings to the table.

Thanks
Zygmunt Krynicki


Reply to: