Nuts+Bolts 30-Sep-2014

Brian Warner warner at lothar.com
Thu Oct 2 02:15:17 UTC 2014


Attending: zooko, nathan, za, daira, warner, lcstyle (some intermittent)

We spent some time reviewing PR 113 (for ticket #2249), which should fix
some dependency problems on windows. The core issue is that newer
versions of the pyOpenSSL package don't currently work on windows: they
need some compiled things that haven't been compiled. There are other
dependencies that (unnecessarily) depend upon a newer pyOpenSSL. The fix
is to depend upon older versions when we're on windows, and otherwise
(on linux/etc) use the usual "version X or better" for everything.

This is slightly complicated by a problem in the way that the current
python packaging world handles subdependencies. Dependency calculation
is a remarkably difficult problem (it's probably NP Complete or
something): your top-level program depends upon libraries A and B (with
various version constraints), so you fetch and install those and
discover (after you've committed to installing it) that A and B depend
upon incompatible versions of the same library C, etc. If everything
always works with the latest version of everything else, things usually
work out. But sometimes they don't.

Also, to avoid some problems, the new _auto_deps.py includes a subset of
the transitive closure of the dependency graph (it pretends that tahoe
itself requires things that are, in fact, required by its dependencies).

cheers,
 -Brian



More information about the tahoe-dev mailing list