Commit Graph

2181 Commits

Author SHA1 Message Date
Brian Warner
92a6ab6e86 'tahoe start': only create logs/ if we're starting a tahoe node 2008-02-18 00:31:28 -07:00
Brian Warner
1af3bfb1d4 test_runner.py: test launching an introducer too 2008-02-18 00:28:56 -07:00
Brian Warner
6ff98a3c0b 'tahoe start': allow this to start arbitrary .tac file -bearing directories (like the log gatherer) 2008-02-18 00:28:17 -07:00
Zooko O'Whielacronx
068c4c7108 docs: update relnotes.txt 2008-02-15 17:35:33 -07:00
Zooko O'Whielacronx
b2f5ac9a0a Merge patch which switches to SHA-256d with patch that adds punctuation and capitalization to the comment about the hash value. 2008-02-15 13:16:43 -07:00
Peter Secor
c5c98108eb commenting out open_welcome_page argument that doesn't seem to work with real installer 2008-02-15 12:50:10 -07:00
Brian Warner
c3a1491cf4 test_system.py: improve coverage of webish.py 2008-02-15 04:02:50 -07:00
Brian Warner
2f6fd7d000 webish.py: remove some dead code 2008-02-15 04:02:38 -07:00
robk-tahoe
d293240bfb confwiz: make opening the welcome page options, off by default on windows, on on mac 2008-02-15 00:11:23 -07:00
robk-tahoe
b101d9cbcf confwiz: fix mac confwiz w.r.t. recent confwiz changes 2008-02-14 20:14:46 -07:00
robk-tahoe
1def26c15d confwiz: update the config wiz to open the welcome page
regardless of platform, the confwiz now opens the welcoe page upon
writing a config.  it also provides a 'plat' argument (from python's
sys.platform) to help disambiguate our instructions by platform.
2008-02-14 20:12:58 -07:00
robk-tahoe
78c53b81ec confwiz: add command line options
adds command line option parsing to the confwiz.

the previous --uninstall option behaves as before, but it parsed
more explicitly with the twisted usage library.

added is a --server option, which controls which web site the
backend script for configuration is to be found on. (it is looked
for at /native_client.php on the given server) this option can be
used on conjunction with --uninstall to control where the uninstall
is recorded

Options:
  -u, --uninstall  record uninstall
  -s, --server=    url of server to contact 
                   [default: https://beta.allmydata.com/]

e.g. confwiz.py -s https://www-test.allmydata.com/
2008-02-14 19:44:29 -07:00
Brian Warner
72874390fe BIG COMPATIBILITY BREAK: update hash tags, switch to SHA-256d everywhere 2008-02-14 19:58:01 -07:00
Brian Warner
6d7417c0bf uri.py: hush pyflakes warning 2008-02-14 19:45:12 -07:00
Zooko O'Whielacronx
fc0d637523 docs: update install and usage docs, improve cli "usage" output, make new example directories, add unit test that fails code which prints out sentences that don't end with punctuation marks 2008-02-15 13:11:02 -07:00
Zooko O'Whielacronx
294cb071a3 docs: edit running.html 2008-02-15 11:02:19 -07:00
Zooko O'Whielacronx
5942fca1e1 add unit test asserting that allmydata.util.base32 matches rfc 3548 2008-02-14 20:20:19 -07:00
Zooko O'Whielacronx
3eb95c1fad merge patch which adds base32 to test_util with patch which removes bencode from test_util 2008-02-14 19:35:32 -07:00
robk-tahoe
dcf304ab9b macfuse: another tahoe fuse implementation
This is the result of various experimentation done into using python-fuse
to provide access to tahoe on the mac.  It's rough in quite a few places,
and is really the result of investigation more than a thorough
implemenation of the fuse api.

upon launch, it looks for the users root_dir by opening ~/.tahoe/node.url
and ~/.tahoe/private/root_dir.cap it then proceeds to cache the directory
structure found by walking the users tahoe drive (safely in the face of
directory loops) into memory and then mounts that filesystem.

when a file is read, it calls the tahoe node to first download the file
into a cache directory (~/.tahoe/_cache) and then serves up the file
from there.

when a file is written, a temporary file is allocated within the tmp dir
of the cache, and upon close() (specifically upon release()) the file is
uploaded to the tahoe node, and the new directory entry written.

note that while the durectory structure is cached into memory only when
the filesystem is mounted, that it is 'write through' i.e. changes made
via fuse are reflected into the underlying tahoe fs, even though changes
made to the tahoe fs otherwise show up only upon restart.

in addition to opening files for read and write, the mkdir() and rename()
calls are supported.  most other file system operations are not yet
supported.  notably stat() metadata is not currently tracked by tahoe,
and is variably reported by this fs depending on write cache files.


also note that this version does not fully support Finder.  access through
normal unix commands such as cat, cp, mv, ls etc works fine, and read 
access to file from within finder (including preview images and double-
click to open) work ok.  but copies to the tahoe drive from within finder
may or may not succeed, but will always report an error. This is still
under investigation.

also note that this does not include any build integration.  the included
_fusemodule.so was built on mac os 10.4 against macfuse 1.3.0, and is
known to not work against 10.5-1.3.1  it's possible it may also contain
dependencies upon parts of macports used to build the python that it was
built against. this will be cleaned up later.

usage:
    python tahoefuse.py /Path/to/choice/of/mountpoint
or optionally
    python tahoefuse.py -ovolicon=/Path/to/icon.icns /Path/to/mountpoint

upon startup, tahoefuse will walk the tahoe directory, then print a
summary of files and folders found, and then daemonise itself. to exit,
either eject the 'drive' (note: 10.5 doesn't show it as a drive, since
it considers fuse to be a connected server instead) or unmount it via
umount /Path/to/mountpoint etc.
2008-02-14 18:35:10 -07:00
robk-tahoe
65ec397393 mac: fix a small bug in the 'tahoe' script 2008-02-14 17:36:10 -07:00
robk-tahoe
ca41693162 idlib: make failures much clearer when encountering unicode
while investigating fuse related stuff, I spent quite a while staring at
very cryptic explosions I got from idlib.  it turns out that unicode
objects and str objects have .translate() methods with differing signatures.
to save anyone else the headache, this makes it very clear if you accidentally
try to pass a unicode object in to a2b() etc.
2008-02-14 17:23:07 -07:00
Brian Warner
09bfa3bea2 remove bencode, yay 2008-02-14 18:06:41 -07:00
Brian Warner
92640dc6e5 docs/uri.txt: update to reflect mutable files 2008-02-14 17:59:29 -07:00
Brian Warner
7927495cbe unicode handling: declare dirnodes to contain unicode child names, update webish to match 2008-02-14 15:45:56 -07:00
Peter Secor
61edecd137 updating installer for beta release 2008-02-13 21:36:09 -07:00
Brian Warner
1a32aaaa33 more minor architecture.txt changes 2008-02-13 20:20:43 -07:00
Brian Warner
28611d1f90 architecture.txt: fix some things that have changed a lot in recent releases 2008-02-13 20:14:29 -07:00
robk-tahoe
4f4d355310 windows installer: remove uninstall tracking, add welcome page
in justin's testing, the uninstall tracking was hanging the uninstall 
process (on vista) for now, until we see enough need for it to warrant
more detailed testing/debugging/tweaks, I'm simply disabling the call
to confwiz --uninstall

also this adds a 'welcome page' to the install process. once the user
has installed the windows build, then the installer will open a web
browser to the 'welcome page' on the website ('/welcome_install')
2008-02-13 18:17:16 -07:00
Brian Warner
85eae2bf57 mutable.py: add comments to justify initial-read size choices 2008-02-13 17:41:20 -07:00
Brian Warner
269d4bcded docs/dirnodes.txt: add notes on dirnode sizes 2008-02-13 17:40:45 -07:00
Brian Warner
1f6855ede8 mutable.txt: fix offset math in the SDMF layout 2008-02-13 17:39:06 -07:00
Zooko O'Whielacronx
7c6de95bc6 switch from base62 to base32 for storage indices, switch from z-base-32 to rfc 3548 base-32 for everything, separate out base32 encoding from idlib 2008-02-14 19:27:47 -07:00
Zooko O'Whielacronx
481f3649ec docs: link straight to the release tar.gz in install.html 2008-02-14 11:54:14 -07:00
Zooko O'Whielacronx
70dbe69f05 docs: update relnotes.txt for v0.8.0! 2008-02-14 09:00:26 -07:00
Zooko O'Whielacronx
73c148a725 docs: update relnotes, running.html 2008-02-14 08:54:34 -07:00
Zooko O'Whielacronx
b9841d09a2 docs: beginning of update to relnotes.txt for v0.8 2008-02-13 17:43:02 -07:00
Zooko O'Whielacronx
1c456e8210 mac: shebang usr bin env python
This makes it so that I can run "./setup.py" on the command-line, instead of "python ./setup.py".
2008-02-13 16:17:14 -07:00
Brian Warner
41045fba0f 'tahoe catalog-shares': add SDMF filesize to the output, update misc/find-share-anomalies.py to match 2008-02-13 15:12:06 -07:00
Brian Warner
a050204833 add test coverage for the /stats web page 2008-02-13 13:57:39 -07:00
Brian Warner
8c8bcb6d53 mutable.py: reject shares with different k/N than we expect. Quick fix for #312: avoids data corruption but has availability problems. 2008-02-13 13:34:20 -07:00
Brian Warner
871e7756f7 test_web: remove test_GET_DIRURL_large, it failed to exercise the problem in #237 and consumes a disproportionate amount of time 2008-02-13 13:08:26 -07:00
Zooko O'Whielacronx
98f570c3ee setup: remove older bundled pycryptopp-0.2.10 2008-02-13 15:23:15 -07:00
Zooko O'Whielacronx
fa92672e24 setup: bundle pycryptopp-0.3.0 2008-02-13 14:57:15 -07:00
amber
0a01fd405b docs: 10 blocks by default, not 12 2008-02-13 04:57:19 -07:00
Brian Warner
124b2160b9 webish.py: fix for #237: when listing large directories, insert a turn break once every 100 children, to work around non-optimized tail recursion Deferreds 2008-02-12 21:28:52 -07:00
Zooko O'Whielacronx
e400c5a8fb docs: edits and updates to architecture.txt, with Amber 2008-02-13 10:24:52 -07:00
Zooko O'Whielacronx
2e84230a18 setup: remove older bundled version of setuptools_darcs 2008-02-13 08:03:40 -07:00
Zooko O'Whielacronx
70b573434b setup: remove another older bundled setuptools 2008-02-13 08:01:40 -07:00
Zooko O'Whielacronx
99f609d55b setup: remove older bundled setuptools 2008-02-13 07:59:24 -07:00
Zooko O'Whielacronx
9eb2c7f5aa setup: remove older bundled version of darcsver 2008-02-13 07:57:22 -07:00