[tahoe-dev] startup error after upgrade

Greg Troxel gdt at ir.bbn.com
Sat Mar 30 00:37:09 UTC 2013


"Zooko Wilcox-O'Hearn" <zooko at zooko.com> writes:

> I thought the design flaw in question was:
>
> When you "import foo", and there are multiple modules named "foo" in your
> filesystem, then which specific module you get is determined by a list of
> directories, each of which can contain multiple modules. Therefore, when
> you add a directory to the front of that list you are prioritizing *all* of
> the modules in that directory over any other modules by the same name in
> any other directories. Therefore, if a single directory contains both a
> module you want to import and a module that you mustn't import (because it
> name-collides with another module that you want to import), then you have
> to make sure the *other* directory is earlier than this one on the list. If
> there is a cycle of such dependencies, then it is impossible to import all
> the modules that you require.
>
> That particular design flaw is built into the Python import mechanism, and
> would still prevent you from importing the modules if there were no
> distutils, pkg_resources, or setuptools on your system.

Sure, but the operative bug is less hard:

  When you run a program that is part of a package that is not
  installed, it should be done so that the search path has the libraries
  of the not-installed package first, so that when there is libfoo
  installed as part of the previous-version foo package and libfoo as
  part of the not-yet-installed version of the foo package, you get the
  not-yet-installed version.

This is what libtool does.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
URL: <http://tahoe-lafs.org/pipermail/tahoe-dev/attachments/20130329/b824b083/attachment.asc>


More information about the tahoe-dev mailing list