[tahoe-lafs-trac-stream] [tahoe-lafs] #1274: eliminate pywin32 dependency

tahoe-lafs trac at tahoe-lafs.org
Sun Jun 12 10:09:21 PDT 2011


#1274: eliminate pywin32 dependency
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  warner
  davidsarah             |     Status:  reopened
         Type:  defect   |  Milestone:  1.8.2
     Priority:  major    |    Version:  1.8.0
    Component:  code-    |   Keywords:  pywin32 windows win64 install
  storage                |  twisted review-needed
   Resolution:           |
Launchpad Bug:           |
-------------------------+-------------------------------------------------

Comment (by davidsarah):

 Replying to [comment:31 zooko]:
 > I looked at the patch itself and saw no bug in it. I wonder about
 raising the required version of Twisted, though. It is a shame to prevent
 someone using Debian Lenny, or Ubuntu Hardy from installing Tahoe-LAFS
 v1.9.0 using their pre-packaged version of Twisted:
 >
 >
 http://packages.debian.org/search?keywords=twisted&searchon=names&suite=all&section=all
 >
 >
 http://packages.ubuntu.com/search?keywords=twisted&searchon=names&suite=all&section=all

 I have to say, I don't really understand what the problem is with having a
 Tahoe instance built by '{{{python setup.py build}}}' use a local instance
 of Twisted, when the installed instance is < 9.0.0.

 I can see that someone might want to use their OS packagement tools to
 make sure that all instances of libraries are up-to-date (in order to
 promptly patch security bugs etc.), but that argument doesn't really hold
 water when the result would be to use a library version that is ~2 years
 old.

 > Making it conditional on the platform might not be a good idea--although
 that works when Tahoe-LAFS is being built by having its source:setup.py
 file executed, there is no way to encode it into the resulting
 {{{src/allmydata_tahoe.egg-info/requires.txt}}} file, so if someone were
 to build a Tahoe-LAFS egg, that egg would come with metadata indicating a
 Twisted version requirement depending on what platform the egg was built
 on, although the egg itself would be platform-independent.

 A bit off-topic, but distutils2's approach fixes that problem; in
 {{{setup.cfg}}} you can use [http://www.python.org/dev/peps/pep-0345
 /#environment-markers environment markers] like this:

 {{{
 Requires-Dist: Twisted (>9.0.0); sys.platform == 'win32'
 Requires-Dist: Twisted (>2.4.0); sys.platform != 'win32'
 }}}

-- 
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1274#comment:32>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list