[tahoe-dev] help! how do I manage dependencies on JavaScript code?

Zooko O'Whielacronx zooko at zooko.com
Thu Sep 2 05:52:25 UTC 2010


Folks:

Brian wrote three patches for Tahoe-LAFS recently and so far I've only
applied two of them to trunk. The third one doesn't change behavior or
performance but adds beautiful, colorful JavaScript-based
visualization of download behavior. I haven't applied it because it
includes a copy of jquery and a copy of protovis. I don't like
including copies of third-party libraries in our source tree. (We
currently do it for setuptools/zetuptoolz, setuptools_trial, and
darcsver, but those are special cases because there are bootstrapping
issues and work-arounds for bugs in packaging tools. We would really
like to get rid of the bundled copies of those packages as well. We
used to have a lot more bundled bits of code in our source tree and
we've gradually made progress getting rid of them until now.)

I also don't like adding hundreds of KB and tens of thousands of lines
of code to our source tree, and neither do I like adding compressed
(minified) things into our source tree instead of "the preferred form
for modification", i.e. raw human-oriented source.

Here is a comment about these issues:

http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1170#comment:106

Does anyone have ideas about how to cleanly manage dependencies on
JavaScript code? At the moment I'm inclined to go ahead with
Tahoe-LAFS v1.8.0 without the pretty visualization and figure out a
really good way to manage this stuff for Tahoe-LAFS v1.9.

Thanks!

Regards,

Zooko


More information about the tahoe-dev mailing list