david-sarah
972bcb1c42
Change 'setup.py test' and 'setup.py trial' to pass --rterrors to trial by default. Suppress using --no-rterrors. Also pass --until-failure/-u to trial. fixes #1699
2012-05-31 22:00:00 +00:00
david-sarah
e215af8646
Update copyright notices. refs #1686
2012-03-13 20:50:57 +00:00
david-sarah
70b08ddb42
Add a Python 3 blocker to setup.py, to display a better error message when it is run under Python 3.
2012-01-27 01:55:25 +00:00
Brian Warner
9175c2451a
fix bundled data under git, remove setuptools_darcs
...
This uses explicitly enumerated packages= and package_data= arguments to
setup(), rather than relying upon the convenient (but darcs-specific)
functions which would determine these values by asking the revision-control
system.
Note that darcsver is still used, when building from a darcs tree.
2012-01-08 14:12:50 -08:00
Brian Warner
dd2e7a1127
setup.py: stop putting pyutil.version_class/etc in _version.py
...
allmydata.__version__ can just be a string, it doesn't need to be an instance
of some fancy NormalizedVersion class. Everything inside Tahoe uses
str(__version__) anyways.
Also add .dev0 when a git tree is dirty.
Closes #1466
2011-12-04 21:50:49 -08:00
Brian Warner
7d5ca407a1
setup.py: get version from git or darcs
...
This replaces the setup.cfg aliases that run "darcsver" before each major
command with the new "update_version". update_version is defined in setup.py,
and tries to get a version string from either darcs or git (or leaves the
existing _version.py alone if neither VC metadata is available).
Also clean up a tiny typo in verlib.py that messed up syntax hilighting.
2011-12-04 20:40:01 -08:00
Brian Warner
5fc9978826
setup.py: umask=022 for 'sdist', to avoid depending on environment
...
The new tarball-building buildslave had a bogus umask set, causing the 1.9.0
tarballs to be non-other-user-readable (go-rwx), which is a hassle for
packaging. (The umask was correct on the old buildslave, but it was moved to
a new host shortly before the release). This should make sure tarballs are
correct despite the host's setting.
Note to others: processes run under twistd get umask=077 unless you arrange
otherwise.
2011-11-09 10:36:32 -08:00
Brian Warner
a0432a4ec5
tahoe-lafs.org is now HTTPS-always. Update most URLs.
2011-10-29 18:39:46 +00:00
david-sarah
16e6bb2b73
Makefile and setup.py: remove setup.py commands that we no longer need, and their uses in the Makefile. Delete a stale and incorrect comment about updating _version.py. Also fix some coding style checks in the Makefile to operate on all source files.
2011-07-31 20:19:52 -07:00
david-sarah
2ebaa916df
Update the dependency on zope.interface to fix an incompatiblity between Nevow and zope.interface 3.6.4. fixes #1435
2011-07-21 16:49:41 -07:00
david-sarah
8b40826774
Update the dependency on Twisted to >= 10.1. This allows us to simplify some documentation: it's no longer necessary to install pywin32 on Windows, or apply a patch to Twisted in order to use the FTP frontend. fixes #1274 , #1438 . refs #1429
2011-07-21 16:36:58 -07:00
david-sarah
89581eb475
setup.py: don't make bin/tahoe.pyscript executable. fixes #1347
2011-01-30 17:58:09 -07:00
Zooko O'Whielacronx
299e8ad579
replace remaining .html docs with .rst docs
...
Remove install.html (long since deprecated).
Also replace some obsolete references to install.html with references to quickstart.rst.
Fix some broken internal references within docs/historical/historical_known_issues.txt.
Thanks to Ravi Pinjala and Patrick McDonald.
refs #1227
2011-05-10 12:16:50 -07:00
Zooko O'Whielacronx
2ed6019f78
setup: comment out the setup_requires on setuptools_darcs in order to work-around distribute bug 55
...
Note that we still inject the setuptools_darcs egg at the beginning of setup.py, which makes the setuptools_darcs plugin work when building dists from tahoe-lafs source so those dists have all of the needed files.
http://bitbucket.org/tarek/distribute/issue/55/revision-control-plugin-automatically-installed-as-a-build-dependency-is-not-present-when-another-build-dependency-is-being
2011-01-30 16:04:20 -08:00
Zooko O'Whielacronx
c1ec785b48
docs: edit running.html, change " http://allmydata.org " to " http://tahoe-lafs.org " in NEWS and README.txt, add Josh Wilcox to CREDITS for his contribution of doc patches
2011-01-28 07:07:00 -08:00
david-sarah
3c161c9a96
Makefile, setup.py: add more source files to pyflakes target and fix their warnings.
2011-01-21 18:07:52 -08:00
david-sarah
6d6f0edc36
Remove obsolete and bit-rotted 'setup.py check-auto-deps' command. Building and running bin/tahoe is a more thorough check.
2011-01-21 18:00:51 -08:00
david-sarah
8b94125b00
Make 'setup.py trial' and 'setup.py test' pass --version-and-path to bin/tahoe by default.
2011-01-21 00:03:28 -08:00
Zooko O'Whielacronx
d34e838c0c
setup: increase version number requirement on darcsver from >= 1.7.1 to >= 1.7.2
2011-01-20 21:30:38 -08:00
david-sarah
999339ed4e
setup.py: add descriptions for some of the setup commands. ref #1306
2011-01-19 15:33:05 -08:00
david-sarah
0693181613
setup.py: create bin/tahoe.pyscript on Unix as well as Windows for consistency, and to reduce conditional code. ref #1306
2011-01-19 15:31:45 -08:00
david-sarah
7e413d4fa4
Change 'setup.py trial' and 'setup.py test' to use 'bin/tahoe debug trial'. refs #1296
2011-01-18 18:45:32 -08:00
david-sarah
420aadd95e
Make 'mock' a run-time rather than setup-time dependency. This is necessary in order for 'tahoe debug trial' to work. refs #1296
2011-01-18 12:51:14 -08:00
david-sarah
4cba75e000
setup: load the setuptools_darcs-1.2.12.egg that is bundled in the root of the source tree at setup.py time, and setup_require it. This is in order to make sure that its 'find all package data' plugin works to inform setuptools of all files which are under revision control, so that setuptools can include them in a distribution. By the way, this is ugly and horrible. refs #1054
2011-01-17 22:54:45 -08:00
david-sarah
33786a6d55
Attempt to fix test-with-fake-dist build step.
2011-01-14 18:26:51 -08:00
david-sarah
eb9b822079
setup.py: add Python 2.7 trove classifier.
2011-01-08 13:12:12 -08:00
Zooko O'Whielacronx
3acbf8818c
setup: require the latest version of darcsver
2010-11-22 18:12:18 -08:00
Zooko O'Whielacronx
50f8c37a2b
setup: when testing, set the __requires__ as precisely as possible even if the version of this particular build of Tahoe-LAFS is not yet known (addresses test failure ref #1190 , #1233 )
2010-11-18 23:40:43 -08:00
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
Zooko O'Whielacronx
b35d70b1f2
setup: attempt to remove the custom setuptools-ish logic in setup.py -- the result works on my Windows box but doesn't yield a working ./bin/tahoe on Windows, and hasn't been tested yet on other platforms
2008-12-05 17:30:54 -07:00
Zooko O'Whielacronx
fcd4d4d2e9
setup: integrate the bundled setuptools_trial plugin with Chris Galvan's patch to use that plugin
2008-12-01 11:48:04 -07:00
cgalvan
5cd6ed17fb
use_setuptools_trial.patch
2008-11-21 14:57:59 -07:00
Zooko O'Whielacronx
5ebd731982
setup: move the requirement on simplejson from setup.py to _auto_deps.py, and loosen it from >= 2.0.5 to > 1.8.1
...
We'll see if this fixes the tests on all of our current buildslaves, and if it does then I'll be happy to leave it at "> 1.8.1" for now, even though I don't know exactly what versions of simplejson changed exactly what behavior that interacts with exactly what environment. See http://allmydata.org/trac/tahoe/ticket/534 for uncertainties.
2008-11-25 14:37:51 -07:00
francois
8c5a0f1efc
setup.py: Require simplejson version >= 2.0.5
2008-11-25 11:17:27 -07:00
Zooko O'Whielacronx
1d377cc2d9
setup: turn off --multi-version until I can figure out why it breaks test_runner
2008-11-20 22:36:45 -07:00
Zooko O'Whielacronx
0de6e616e0
setup: use "setup.py develop --multi-version" so that if there is a too-old version of a dependency installed this doesn't prevent Tahoe's "develop" and run-in-place from working
2008-11-20 14:15:45 -07:00
Zooko O'Whielacronx
31a364e8df
setup: pretend the tahoe requires twisted to set up, so that twisted will be there for nevow
2008-10-25 06:50:42 -07:00
Zooko O'Whielacronx
26dfc33263
setup: remove the developer note about doing without GNU make (the GNU make requirement is about to hurt Peter if he tries to follow this doc, by the way)
...
add classifiers showing with which versions of Python it is known to work.
2008-10-21 09:32:00 -07:00
robk-tahoe
5882ce99f4
setup: fix site-dirs to find system installed twisted on mac.
...
zooko helped me unravel a build weirdness today. somehow the system installed
twisted (/System/Library) was pulling in parts of the other twisted (/Library)
which had been installed by easy_install, and exploding.
getting rid of the latter helped, but it took this change to get the tahoe
build to stop trying to rebuild twisted and instead use the one that was
already installed. c.f. tkt #229
2008-09-24 10:42:55 -07:00
Zooko O'Whielacronx
69bc4624c3
setup: stop catching EnvironmentError when attempting to copy ./_auto_deps.py to ./src/allmydata/_auto_deps.py
...
It is no longer the case that we can run okay without _auto_deps.py being in place in ./src/allmydata, so if that cp fails then the build should fail.
2008-09-23 17:04:02 -07:00
Brian Warner
a997d65d74
setup.py trial: improve --verbose suggestion a bit
2008-09-19 12:39:22 -07:00
Brian Warner
dde7d67498
setup.py: remove unused 'Extension' import
2008-09-17 16:08:29 -07:00
Brian Warner
050bee8fdc
setup.py,Makefile: move the 'chmod +x bin/tahoe' into setup.py
2008-09-17 16:07:56 -07:00
Brian Warner
749c5a95e0
setup.py,Makefile: teat sdist --sumo about tahoe-deps/, use -SUMO suffix on tarballs, add sumo to 'make tarballs' target
2008-09-17 13:01:19 -07:00
Brian Warner
fd432b43bf
#249 : get dependent libs from tahoe-deps and ../tahoe-deps
2008-09-16 18:36:27 -07:00
Brian Warner
77d7f63e39
setup.py: add 'setup.py run_with_pythonpath', to run other commands with PYTHONPATH set usefully
2008-09-11 21:44:18 -07:00
Brian Warner
5ca999fb72
Makefile: convert check-auto-deps target into 'setup.py check_auto_deps'
2008-09-11 20:59:04 -07:00
Brian Warner
39552404d7
rewrite parts of the Makefile in setup.py. Add 'build_tahoe' and 'trial' subcommands.
...
The 'make build' target now runs 'setup.py build_tahoe', which figures out
where the target 'supportlib' directory should go, and invokes 'setup.py
develop' with the appropriate arguments.
The 'make test' target now runs 'setup.py trial', which manages sys.path and
runs trial as a subroutine instead of spawning an external process. This
simplifies the case where Twisted was built as a dependent library (and thus
the 'trial' executable is not on PATH).
setup.py now manages sys.path and PYTHONPATH for its internal subcommands, so
the $(PP) prefix was removed from all Makefile targets that invoke setup.py .
For the remaining ones, the 'setup.py -q show_pythonpath' subcommand was
added to compute this prefix with python rather than with fragile
shell/Makefile syntax.
2008-09-11 18:03:21 -07:00
Zooko O'Whielacronx
2cbba0efa0
setup: patch from Chris Galvan to build sdists with no deps in them normally, but include deps if --sumo
2008-08-27 11:26:44 -07:00
Brian Warner
5b8caf26a7
setup.py: cosmetic, remove trailing whitespace
2008-07-14 14:53:25 -07:00
Zooko O'Whielacronx
636d8737c7
setup: setup_requires darcsver >= 1.1.5
2008-06-21 14:01:09 -07:00