Commit Graph

154 Commits

Author SHA1 Message Date
Zooko O'Whielacronx
e03206cbdf setup: specify that the version file must go into src/allmydata/_version.py . fixes #1259 2010-11-13 23:40:40 -08:00
david-sarah
306ec02c1d setup.py: fix a bug in the check for whether we are running 'trial' or 'test', that affected zooko's test for #1233. refs #1233 2010-11-05 14:54:15 -08:00
david-sarah
fd02946074 setup.py, misc/build_helpers/run_trial.py: use undocumented __requires__ variable to cause setuptools/zetuptoolz to put the correct versions of dependencies on sys.path. Also ensure that run_trial adds the bundled zetuptoolz egg at the start of sys.path if present. Make the source directory comparison work correctly for the test-with-fake-pkg build step. refs #1190 2010-10-29 15:28:25 -07:00
Zooko O'Whielacronx
0c6bb0178b setup: use execfile to access _auto_deps.py in its proper location of src/allmydata/ instead of copying it into place when setup.py is executed 2010-09-05 22:57:14 -07:00
Zooko O'Whielacronx
cb83f2e41c minor: remove unused interface declaration, change allmydata.org to tahoe-lafs.org in email address, fix wording in relnotes.txt 2010-09-30 08:37:08 -07:00
Zooko O'Whielacronx
aa19424c9f setup: force the bundled version of darcsver to take precedence over any other version of darcsver 2010-09-21 00:32:58 -07:00
david-sarah
37b07a545f Changes to Tahoe needed to work with new zetuptoolz (that does not use .exe wrappers on Windows), and to support Unicode arguments and stdout/stderr -- v5 2010-07-25 01:32:16 -07:00
Zooko O'Whielacronx
28ed28a0c2 setup: move the mock library from install_requires to tests_require (re: #1016) 2010-06-08 22:05:42 -07:00
Zooko O'Whielacronx
1fc6be28f4 setup: organize misc/ scripts and tools and remove obsolete ones
This is for ticket #1068.
2010-06-06 22:16:18 -07:00
Zooko O'Whielacronx
05c04e67c9 setup: undo the previous patch to quote the executable in scripts
The problem isn't in the script, it is in the cli.exe script that is built by setuptools. This might be related to
http://bugs.python.org/issue6792
and
http://bugs.python.org/setuptools/issue2
Or it might be a separate issue involving the launcher.c code e.g. http://tahoe-lafs.org/trac/zetuptoolz/browser/launcher.c?rev=576#L210 and its handling of the interpreter name.
2010-06-03 19:52:04 -07:00
Zooko O'Whielacronx
ca910c2c3c setup: put quotes around the path to executable in case it has spaces in it, when building a tahoe.exe for win32 2010-06-03 19:08:36 -07:00
david-sarah
02d0c4eb92 Document reason for the trialcoverage version requirement being 0.3.3. 2010-05-24 17:44:44 -07:00
david-sarah
f3c8c1c245 Downgrade version requirement for trialcoverage to 0.3.3 (from 0.3.10), to avoid needing to compile coveragepy on Windows. 2010-05-24 16:37:07 -07:00
Zooko O'Whielacronx
ba8f0c27f0 setup: upgrade bundled zetuptoolz to zetuptoolz-0.6c15dev and make it unpacked and directly loaded by setup.py
Also fix the relevant "make clean" target behavior.
2010-05-23 13:52:28 -07:00
Zooko O'Whielacronx
18922ac618 setup: if the string '--reporter=bwverbose-coverage' appears on sys.argv then you need trialcoverage 2010-05-21 05:22:26 -07:00
Zooko O'Whielacronx
82b9b91775 docs: update README, mv it to README.txt, update setup.py 2010-05-04 02:43:40 -07:00
Zooko O'Whielacronx
890ce9e7bb setup: mark setup.py as having utf-8 encoding in it 2009-09-20 11:03:43 -07:00
Zooko O'Whielacronx
603e08c4a9 doc: licensing cleanups
Use nice utf-8 © instead of "(c)". Remove licensing statements on utility modules that have been assigned to allmydata.com by their original authors. (Nattraverso was not assigned to allmydata.com -- it was LGPL'ed -- but I checked and src/allmydata/util/iputil.py was completely rewritten and doesn't contain any line of code from nattraverso.)  Add notes to misc/debian/copyright about licensing on files that aren't just allmydata.com-licensed.
2009-09-20 10:16:31 -07:00
Brian Warner
4441e1fcd6 setup.py: read _version.py and pass to setup(version=), so more commands work
like "setup.py --version" and "setup.py --fullname"
2009-08-17 18:00:57 -07:00
Zooko O'Whielacronx
2a63fc9159 docs: update relnotes.txt, relnotes-short.txt, and others documentation bits for v1.5.0 release! 2009-08-01 19:57:10 -07:00
Zooko O'Whielacronx
d0998712bb setup: mark stdeb as setup_requires if "sdist_dsc" is in sys.argv 2009-07-23 08:04:07 -07:00
Zooko O'Whielacronx
4a4a47a66d setup: add "test_mac_diskimage" command which attempts to mount and use a .dmg to make sure it has a good Tahoe distribution in it 2009-07-12 16:09:40 -07:00
Zooko O'Whielacronx
b1d24e4a90 setup: fix comment in setup.py 2009-05-07 14:50:03 -07:00
Brian Warner
589a757e25 setup.py: fix pyflakes complaints 2009-02-19 01:36:43 -07:00
Brian Warner
c2a2e93089 move show-tool-versions out of setup.py and into a separate script in misc/ , since setuptools is trying to build and install a bunch of stuff first 2009-02-19 01:35:58 -07:00
Brian Warner
461b12c1d3 setup.py: add show_tool_versions command, for the benefit of a new buildbot step 2009-02-19 00:24:36 -07:00
Brian Warner
50b55474d4 setup.py: wrap to 80 cols, no functional changes 2009-02-18 23:57:51 -07:00
Zooko O'Whielacronx
7eb260a9cf versioning: include an "appname" in the application version string in the versioning protocol, and make that appname be controlled by setup.py
It is currently hardcoded in setup.py to be 'allmydata-tahoe'.  Ticket #556 is to make it configurable by a runtime command-line argument to setup.py: "--appname=foo", but I suddenly wondered if we really wanted that and at the same time realized that we don't need that for tahoe-1.3.0 release, so this patch just hardcodes it in setup.py.
setup.py inspects a file named 'src/allmydata/_appname.py' and assert that it contains the string "__appname__ = 'allmydata-tahoe'", and creates it if it isn't already present.  src/allmydata/__init__.py import _appname and reads __appname__ from it.  The rest of the Python code imports allmydata and inspects "allmydata.__appname__", although actually every use it uses "allmydata.__full_version__" instead, where "allmydata.__full_version__" is created in src/allmydata/__init__.py to be:

__full_version__ = __appname + '-' + str(__version__).

All the code that emits an "application version string" when describing what version of a protocol it supports (introducer server, storage server, upload helper), or when describing itself in general (introducer client), usese allmydata.__full_version__.

This fixes ticket #556 at least well enough for tahoe-1.3.0 release.
2009-02-11 17:18:16 -07:00
Zooko O'Whielacronx
9ce226b4d8 setup: require new bundled setuptools-0.6c12dev 2009-02-05 09:29:23 -07:00
Zooko O'Whielacronx
b952ed6741 setup: remove a couple of horrible work-arounds in setup.py now that we rely on our own toothpick of setuptools which fixes those issues
also specify that we need our latest revision (11dev) of our toothpick of setuptools
also *always* setup_require setuptools_darcs at module import time.  Formerly we added setup_require setuptools_darcs only if the PKG-INFO file were not already created.  There is some weird, irreproducible bug to do with setuptool_darcs, and I guess that the fact that whether it is required or not depends on that autogenerated file might have something to do with it.  Anyway, this is simpler.
2009-02-03 23:24:05 -07:00
Zooko O'Whielacronx
e010d49835 setup: require setuptools_trial >= 0.5, and delegate to it the job of deciding which Twisted reactor to use for the current platform 2009-01-29 22:31:33 -07:00
Zooko O'Whielacronx
4d0dc9c766 setup: require darcsver >= 1.2.0 and rely exclusively on darcsver to set the version string 2009-01-29 12:56:40 -07:00
Zooko O'Whielacronx
681d3bfd05 setup: subclass setuptools.Command instead of distutils Command
There's almost no difference between them, but let's be consistent try to use the setuptools API as it was intended.
2009-01-29 07:00:58 -07:00
Zooko O'Whielacronx
42d500f73d setup: temporarily comment-out the horrible kludge to work-around setuptools #17, while I figure out how to solve it better 2009-01-29 07:00:00 -07:00
Zooko O'Whielacronx
20127ffdf5 setup: always create a support dir and populate it with a site-packages and add same to the PYTHONPATH, just in case someone is going to do "build", "develop", or "test" or something else which triggers a build
I think there must be a much better solution for this -- probably to fix setuptools #54 and ship our own fork of setuptools and rely on it.
2009-01-28 22:56:08 -07:00
Zooko O'Whielacronx
d3b78d86ca setup: if any of "build", "develop", or "test" appear in the sys.argv then that means we'll be doing a develop, so add the workarounds for setuptools #17 in any case
I think there must be a much better solution for this -- probably to fix setuptools #17 and ship our own fork of setuptools and rely on it.
2009-01-28 22:55:34 -07:00
Zooko O'Whielacronx
bbe4e2d479 setup: add metadata indicating compatibility with python 2.6 2009-01-28 18:26:28 -07:00
Zooko O'Whielacronx
083795ddd6 setup: a new improved way to create tahoe executables
Create the 'tahoe-script.py' file under the 'bin' directory. The 'tahoe-script.py' file is exactly the same as the 'tahoe-script.template' script except that the shebang line is rewritten to use our sys.executable for the interpreter. On Windows, create a tahoe.exe will execute it.  On non-Windows, make a symlink to it from 'tahoe'.  The tahoe.exe will be copied from the setuptools egg's cli.exe and this will work from a zip-safe and non-zip-safe setuptools egg.
2009-01-28 18:07:16 -07:00
Zooko O'Whielacronx
70576a871b setup: hack the sys.argv to set poll reactor if "python ./setup.py test" in addition to if "python ./setup.py trial"; remove another hack which has been moved setup.cfg; remove setup_requires Twisted since now we actually setup_require setuptools_trial and it install_requires Twisted. 2009-01-26 22:40:46 -07:00
Zooko O'Whielacronx
d549aad339 setup: require darcsver always, and not just when we see the string "darcsver" in sys.argv, because the new aliases hack means that the string might not appear in sys.argv 2009-01-20 12:42:29 -07:00
Zooko O'Whielacronx
8148366d93 setup: undo (for the second time) the use of the --multi-version feature
When this feature is turned on, then setuptools doesn't create easy-install.pth, setuptools.pth, or site.py in the target site-packages dir.  I don't know why not and we should probably open a ticket on the setuptools tracker and/or hack setuptools to create those files anyway.  But for now (for the Tahoe-1.3.0 release), we're going to leave --multi-version mode off and require users to manually uninstall any packages which are too old and thus conflict with our newer dependencies.
2009-01-19 14:53:52 -07:00
cgalvan
791cfca8d5 run build_tahoe command with trial commmand 2009-01-16 18:00:47 -07:00
cgalvan
5dcc682e46 adding multi-version support 2009-01-16 17:03:26 -07:00
cgalvan
58743b2b76 prevent --site-dirs from being passed to the 'install' command 2009-01-16 13:57:32 -07:00
Zooko O'Whielacronx
7fc784fc55 setup: put back configuration of the PYTHONPATH which is necessary to build the Windows packages 2009-01-14 20:37:51 -07:00
Zooko O'Whielacronx
08aada50ee setup: fix previous patch to set reactor to poll reactor on linux or cygwin 2009-01-14 10:40:22 -07:00
Zooko O'Whielacronx
6db8f38c3b setup: use poll reactor for trial if on linux2 or cygwin 2009-01-14 09:15:46 -07:00
cgalvan
cc9a6e14fc set bin/tahoe executable permissions and leave build_tahoe in sys.argv 2009-01-09 15:06:40 -07:00
Zooko O'Whielacronx
a56df2587a setup: remove custom Trial class inside our setup.py and use the setuptools_trial plugin 2008-12-05 17:22:07 -07:00
cgalvan
bff038ab2f fix bin/tahoe executable for Windows 2009-01-09 12:42:22 -07:00