This site is an archive; learn more about 8 years of OpenHatch.

[OH-Dev] [issue610] Jam all our pure-Python dependencies into vendor/

Asheesh Laroia bugs at openhatch.org
Fri Nov 11 22:55:16 UTC 2011


New submission from Asheesh Laroia <asheesh at asheesh.org>:

Right now, we use "buildout" to manage dependencies. It breaks for people. Let's
stop doing that.

I propose we follow what Kitsune does:
http://kitsune.readthedocs.org/en/latest/vendor.html

Here is a summary:

* We create a vendor/ directory in our main source tree
* Any time we add a pure-Python dependency, we use pip to download it and jam
into into vendor/

Here's why this is awesome:

* It is super easy for anyone, even without "git push" access, to add new
dependencies.
* It downloads at the same time as our main git repo, so you are sure to have
all the dependencies.
* We no longer require any other websites to be online (e.g. PyPI,
linode.openhatch.org, etc.) to be online while you are setting up a dev environment.

"Pure-Python" refers to dependencies of ours that do not require C code.

I considered using a git-submodule for the vendor/ directory, and I tried it. It
has the downside of being hard to upgrade dependencies if you do not have "git
push" access. Also, in general, git-submodule has just depressingly bad UI and
no one should be forced to use it.

----------
messages: 2670
milestone: 0.11.11
nosy: paulproteus
priority: bug
status: unread
title: Jam all our pure-Python dependencies into vendor/

__________________________________________
Roundup issue tracker <bugs at openhatch.org>
<https://openhatch.org/bugs/issue610>
__________________________________________


More information about the Devel mailing list