Brian Warner
3360fd24fc
test_web.py: localdir=/localfile= is going away, so remove the tests that exercise it
2008-05-19 12:32:09 -07:00
Brian Warner
304abfee32
webish: add /file links, change directory page to use them. This fixes filenames in wget. Closes #221 .
2008-05-14 14:32:21 -07:00
Brian Warner
fabdc28c06
deep-stats: add file-size histogram
2008-05-08 16:19:42 -07:00
Brian Warner
6c00a70dbc
dirnode: add a deep_stats(), like deep-size but with more information. webish adds t=deeps-size too.
2008-05-08 13:21:14 -07:00
Brian Warner
a379690b04
mutable: replace MutableFileNode API, update tests. Changed all callers to use overwrite(), but that will change soon
2008-04-17 17:51:38 -07:00
Brian Warner
e1838ba217
mutable WIP: clean up status handling, shrink the code a lot, improve test coverage
2008-04-17 13:02:22 -07:00
Brian Warner
a1670497a8
mutable WIP: add servermap update status pages
2008-04-16 19:05:41 -07:00
Brian Warner
1b4b4cbd4a
mutable WIP: rename NotEnoughPeersError to NotEnoughSharesError
2008-04-15 16:08:32 -07:00
Brian Warner
f153dafaa0
web: return a proper error upon POST with a bad t= value
2008-04-15 11:11:29 -07:00
Brian Warner
a2dd4d14a6
helper status: include percentage fetched+pushed, add helper-uploads to the upload/download list
2008-04-14 18:36:27 -07:00
Brian Warner
9b3a32d0b3
add GET /uri/URI/?t=deep-size, to compute the total size of immutable files reachable from a given directory
2008-03-27 11:33:42 -07:00
Zooko O'Whielacronx
fc3bd0c987
use added secret to protect convergent encryption
...
Now upload or encode methods take a required argument named "convergence" which can be either None, indicating no convergent encryption at all, or a string, which is the "added secret" to be mixed in to the content hash key. If you want traditional convergent encryption behavior, set the added secret to be the empty string.
This patch also renames "content hash key" to "convergent encryption" in a argument names and variable names. (A different and larger renaming is needed in order to clarify that Tahoe supports immutable files which are not encrypted content-hash-key a.k.a. convergent encryption.)
This patch also changes a few unit tests to use non-convergent encryption, because it doesn't matter for what they are testing and non-convergent encryption is slightly faster.
2008-03-24 09:46:06 -07:00
robk-tahoe
e75c417bb5
webish mkdir-p: added unit test
...
added a test for the simple mkdir-p hack I added yesterday
checks that mkdir-p can create a directory hierarchy, and that resubmitting
a request for the same path yields the existing dir's uri
2008-03-18 13:11:08 -07:00
Brian Warner
4fa622f9b1
webish: this file is too big, start breaking it into pieces, beginning with status
2008-03-05 14:59:56 -07:00
Brian Warner
68fbd89e66
webish: add primitive publish/retrieve status pages
2008-03-04 01:07:44 -07:00
Brian Warner
abb51e70f3
test_web: improve upload/download status coverage
2008-03-03 21:56:23 -07:00
Brian Warner
c8e24f0904
webish: make upload timings visible on the recent uploads/downloads status page
2008-03-03 14:48:52 -07:00
Brian Warner
436baa1b19
webish: add per-file upload/download status pages
2008-02-29 23:03:00 -07:00
Brian Warner
1a7651ce82
retain 10 most recent upload/download status objects, show them in /status . Prep for showing individual status objects
2008-02-29 22:19:03 -07:00
Zooko O'Whielacronx
99f006c584
wapi: add POST /uri/$DIRECTORY?t=set_children
...
Unfinished bits: doc in webapi.txt, test handling of badly formed JSON, return reasonable HTTP response, examination of the effect of this patch on code coverage -- but I'm committing it anyway because MikeB can use it and I'm being called to dinner...
2008-02-29 18:40:27 -07:00
Brian Warner
301dd3d489
webish status: distinguish active uploads/downloads from recent ones
2008-02-26 15:35:28 -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
Brian Warner
a050204833
add test coverage for the /stats web page
2008-02-13 13:57:39 -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
Brian Warner
a70fba4ef1
webish: add edge metadata to t=json output, including timestamps
2008-02-11 19:14:10 -07:00
Brian Warner
6e0d3059a3
webish: add when_done= to POST /uri?t=upload . I did not add a 'recent uploads' section to the welcome page, but I think the new upload-results page provides the desired data
2008-02-06 02:38:16 -07:00
Brian Warner
1e4504463c
webish: make POST /uri?t=upload deposit you on an 'Upload Results' page
2008-02-05 23:01:37 -07:00
Brian Warner
27f46f2aaf
test_web.py: hush pyflakes
2008-02-05 22:37:51 -07:00
Brian Warner
23c2c8d660
webish: add PUT /uri?mutable=true
2008-02-05 22:18:02 -07:00
Brian Warner
e5dc9a8486
webish: add POST /uri?t=upload&mutable=true
2008-02-05 22:10:22 -07:00
Brian Warner
6afe50e2aa
webish: add upload/view-uri forms (not associated with any particular directory) to the welcome page. Document POST /uri?t=upload .
2008-02-05 21:44:40 -07:00
Brian Warner
66f33ee504
upload: return an UploadResults instance (with .uri) instead of just a URI
2008-02-05 21:01:38 -07:00
Brian Warner
d146ef7e09
webish: add extra introducer data (version, timestamps) to Welcome page
2008-02-05 17:32:27 -07:00
Brian Warner
d9d0920177
webish: link to directory URIs rather than a child path. Addresses #103 .
2008-01-29 18:04:32 -07:00
Brian Warner
4c5518faef
webish: upload+localdir=missing should give an error
2008-01-28 14:48:06 -07:00
Brian Warner
7ac2b94aba
remove wait_for_numpeers and the when_enough_peers call in mutable.Publish
2008-01-14 14:55:59 -07:00
Brian Warner
222718f13c
test_GET_DIRURL_large: reduce from 400 to 200 children: the test fails to
...
fail anyways, and 200 ought to be enough to trigger the problem, so 400 is
overkill, and just wastes CPU.
2008-01-14 22:31:41 -07:00
Zooko O'Whielacronx
676ded6a7e
tests: put back skipped and todo tests
...
closes #258 -- "put back skipped and todo tests"
2008-01-14 21:02:41 -07:00
Zooko O'Whielacronx
69dba9a704
tests: increase the timeout on a test which failed on the overloaded virtual buildslaves
2008-01-11 14:27:54 -07:00
Zooko O'Whielacronx
bf14613b6a
suppress the skipped and the todo unit tests in order to make unit test results prettier (the install.html instructs users to run the unit tests)
2008-01-04 00:36:18 -07:00
Zooko O'Whielacronx
5995d11a3c
remove automatic private dir
...
* rename my_private_dir.cap to root_dir.cap
* move it into the private subdir
* change the cmdline argument "--root-uri=[private]" to "--dir-uri=[root]"
2008-01-03 17:02:05 -07:00
Zooko O'Whielacronx
eb373c0001
add human-encodings of caps, refactor encodings of caps, tighten checks, fix unit tests to use values of the right size
2008-01-03 16:55:43 -07:00
Brian Warner
6b81ebfd8e
refactor webish.py slightly, improve the test coverage a bit. One test is marked SKIP pending improvements in webish.py
2007-12-25 03:48:57 -07:00
Brian Warner
fae5de8d0d
test_web.py: fix pyflakes error
2007-12-25 01:56:04 -07:00
Brian Warner
4ba1af37a6
test_web: more coverage of URIPOSTHandler error cases
2007-12-24 22:49:35 -07:00
Brian Warner
7d311b8dd7
test_web: test POST_upload_no_link against /uri, not /uri/
2007-12-24 17:55:38 -07:00
Brian Warner
ae760b3ee4
test_web.py: use /uri?t=mkdir instead of /uri/?t=mkdir, and confirm that the redirection target is correct
2007-12-24 17:46:52 -07:00
Zooko O'Whielacronx
a85a4d71f7
webish: add button to make directories and unit test of it
...
Unfortunately although it passes the unit tests, it doesn't work, because the unit tests and the implementation use the "encode params into URL" technique but the button uses the "encode params into request body" technique.
2007-12-20 15:31:12 -07:00
Zooko O'Whielacronx
a7361179aa
make the unit test of the overwrite button more general
2007-12-20 15:23:07 -07:00
Zooko O'Whielacronx
a4bc623fa5
make the wapi/wui [*] support creation of a new directory without there already being an existing directory to link the new one into
...
[*] WebAPI/WebUI
2007-12-20 12:58:17 -07:00
Brian Warner
9a8f68c41f
dirnode: add set_uris() and set_nodes() (plural), to set multiple children at once. Use it to set up a new webapi test for issue #237 .
2007-12-18 23:30:02 -07:00
Zooko O'Whielacronx
a0d73f8afb
remove some no-longer needed replacements of "/" with "!" in uris
2007-12-19 17:54:40 -07:00
Zooko O'Whielacronx
2a7f374e45
unit test that POST /uri/?t=mkdir works
2007-12-18 17:47:49 -07:00
Zooko O'Whielacronx
9848d2043d
make more precise regexp for WriteableSSKFileURI and DirnodeURI and use it in unit tests
...
Also allow an optional leading "http://127.0.0.1:8123/uri/ ".
Also fix a few unit tests to generate bogus Dirnode URIs of the modern form instead of the former form.
2007-12-18 13:15:08 -07:00
Zooko O'Whielacronx
ea43753386
fix unit tests to assert that we do *not* link to start.html when there is no private dir, instead of asserting that we *do*
2007-12-17 18:51:16 -07:00
Zooko O'Whielacronx
8c65bdcf9d
put all private state in $BASEDIR/private
...
fixes #219
The only part of #219 that this doesn't include is the part about
logpublisher, which has been moved out of tahoe into foolscap.
2007-12-17 16:39:54 -07:00
Zooko O'Whielacronx
ae90016845
fix the overwrite button and add unit test for it
2007-12-14 17:52:05 -07:00
Brian Warner
7924f5ac21
test_web.py: cosmetic, remove leftover trailing space
2007-12-14 02:06:09 -07:00
Zooko O'Whielacronx
2915f5b7f4
remove unimplemented and skipped test for feature that we don't plan to implement any time soon (XML-RPC interface)
2007-12-12 20:06:05 -07:00
Zooko O'Whielacronx
1ac09840a4
a few documentation and naming convention updates
...
Notable: the argument to make REPORTER has been renamed to TRIALARGS.
2007-12-12 19:34:08 -07:00
Brian Warner
2cb05817a6
test_web.py: survive localdir/localfile= names with spaces. Should close #223
2007-12-11 19:47:04 -07:00
Brian Warner
74820cc3de
webish: append save=true to a GET URL to save-to-disk. Closes #222 .
2007-12-11 18:04:44 -07:00
Zooko O'Whielacronx
8ad2e85fdf
add POST /uri?t=upload and tests thereof
...
Hm... I refactored processing of segments in a way that I marked as "XXX HELP
I AM YUCKY", and then I ran out of time for rerefactoring it before I
committed. At least all the tests pass.
2007-12-06 17:17:02 -07:00
Brian Warner
51af1fa2e3
webish: fix overwrite form display
2007-12-05 00:15:13 -07:00
Brian Warner
53e865cf49
test_web.py: add coverage for directory listings that include mutable files
2007-12-04 23:57:40 -07:00
Brian Warner
785f21b9bf
test_web.py: add coverage for POST t=check
2007-12-04 23:49:38 -07:00
Brian Warner
56e02b274b
webish: add POST t=mutable, make it replace files in-place, add t=overwrite
2007-12-04 23:42:54 -07:00
Brian Warner
4c79b4cd07
test_web.py: remove last use of fake_* methods, remove dead code
2007-12-04 23:11:00 -07:00
Brian Warner
f190382d5e
refactor web tests, and interfaces.IFileNode
2007-12-04 23:01:37 -07:00
Brian Warner
cca166a4f5
rename dirnode2.py to dirnode.py
2007-12-04 11:45:20 -07:00
Brian Warner
b780127f49
test_mutable: improve test coverage a bit, add test_filenode.py
2007-12-03 21:37:54 -07:00
Zooko O'Whielacronx
59d6c3c822
decentralized directories: integration and testing
...
* use new decentralized directories everywhere instead of old centralized directories
* provide UI to them through the web server
* provide UI to them through the CLI
* update unit tests to simulate decentralized mutable directories in order to test other components that rely on them
* remove the notion of a "vdrive server" and a client thereof
* remove the notion of a "public vdrive", which was a directory that was centrally published/subscribed automatically by the tahoe node (you can accomplish this manually by making a directory and posting the URL to it on your web site, for example)
* add a notion of "wait_for_numpeers" when you need to publish data to peers, which is how many peers should be attached before you start. The default is 1.
* add __repr__ for filesystem nodes (note: these reprs contain a few bits of the secret key!)
* fix a few bugs where we used to equate "mutable" with "not read-only". Nowadays all directories are mutable, but some might be read-only (to you).
* fix a few bugs where code wasn't aware of the new general-purpose metadata dict the comes with each filesystem edge
* sundry fixes to unit tests to adjust to the new directories, e.g. don't assume that every share on disk belongs to a chk file.
2007-12-03 14:52:42 -07:00
Brian Warner
1f22768dc7
webish: add preliminary mutable file support: upload, download, listings, JSON, URI, RO-URI. No replace yet.
2007-11-09 03:54:27 -07:00
czooko
d589c385e6
make the anchor text in the WUI be descriptive of the target -- not "Click Here!"!
2007-10-22 16:56:30 -07:00
Brian Warner
a29ab33379
webish: write node.url, for the benefit of CLI tools
2007-10-11 01:38:04 -07:00
Zooko O'Whielacronx
021b5d4f2a
more information SkipTest for XMLRPC
2007-10-04 11:07:46 -07:00
Brian Warner
b7c18d6505
webish: improve test coverage
2007-09-17 01:53:46 -07:00
Brian Warner
79bd7d422d
provisioning.py: get full test coverage
2007-09-17 01:38:54 -07:00
Brian Warner
0ae7d31d33
provisioning.py: update test with new encoding-parameters format
2007-09-07 14:45:43 -07:00
Brian Warner
76be4a582c
webish: implement 'PUT /uri?t=mkdir' (to create anonymous dirnodes)
2007-09-05 17:23:06 -07:00
Brian Warner
db3f11648c
webish: implement 'PUT /uri' (to create anonymous files)
2007-09-05 17:12:27 -07:00
Brian Warner
ed525f7478
test_web: improve provisioning.py test coverage a bit by using a live web hit
2007-08-27 17:26:39 -07:00
Brian Warner
3e1c417f81
webish: modify JSON to match zooko's proposed API changes in #118
2007-08-23 13:00:39 -07:00
Brian Warner
f3353ee5e4
web: replace FILE links with /uri -based ones, to prevent an XSS attack against the secret vdrive URI contained in the current URL
2007-08-22 17:35:01 -07:00
Brian Warner
4de5767c98
web: remove /vdrive/private, replace with a start.html file that points at the /uri/PRIVATE_URI, to prevent XSRF attacks
2007-08-22 14:54:34 -07:00
Zooko O'Whielacronx
4ed7f0ac2a
fix small bug in unit tests which caused spurious failures on Windows
2007-08-16 14:14:41 -07:00
Brian Warner
c1da0c11bc
webish: implement replace= for POST commands
2007-08-15 15:21:38 -07:00
Brian Warner
1752c9e29e
webish: implement replace= for PUT commands
2007-08-15 13:22:23 -07:00
Brian Warner
179d5462c0
webish: look for when_done= in POST fields as well as queryargs. Closes #101 .
...
We need to look in the fields because that's how we build the mkdir/upload
forms. Without this, uploading or creating directories would leave us on a
page that had just a URI, instead of something actually useful to a human.
2007-08-13 17:45:02 -07:00
Brian Warner
2f5a27316f
webish: localfile=/localdir= are now disabled by default, a special switch is required to enable them
2007-08-10 18:21:22 -07:00
Zooko O'Whielacronx
531109e803
fix test_web refactoring so that the WebMixin class isn't a TestCase
...
Thanks, Brian.
2007-08-10 08:40:02 -07:00
Zooko O'Whielacronx
39f218ab90
refactor test_web so that other tests can use the part of test_web that sets up a simple filesystem
2007-08-09 13:08:42 -07:00
Brian Warner
8de93635af
test_web.py: oops, fix syntax error caused by removing comments
2007-07-25 03:21:30 -07:00
Brian Warner
6aff425fd2
test_web.py: remove spurious '# YES' lines, now that all the tests pass
2007-07-24 20:16:21 -07:00
Brian Warner
81a9904455
CHK: remove the storage index from the URI, deriving it from the key instead
2007-07-21 18:23:15 -07:00
Brian Warner
1d9a58977f
uri: implement URI-processing classes, IFileURI/IDirnodeURI, use internally
2007-07-21 15:40:36 -07:00
Brian Warner
9af506900b
upload: refactor to enable streaming upload. not all tests pass yet
2007-07-19 18:21:44 -07:00
Brian Warner
a7f04616bf
webish: improve test coverage further
2007-07-17 12:28:29 -07:00
Brian Warner
3197e1d39b
webish: improve test coverage of WebDownloadTarget
2007-07-17 12:16:45 -07:00
robk-org
920fed7f2a
added unit test to webish's rename function
...
added unit tests to test various permutations of the rename function, and
some sanity checks on the rename-form function.
also added a guard to prevent '/' in from_/to_name in rename calls.
2007-07-16 17:05:01 -07:00
Brian Warner
56dcb814a8
webish: test error cases more thoroughly by looking inside the response text
2007-07-16 12:01:19 -07:00
Brian Warner
f207f4a199
webish.py: disallow slashes in POSTed filenames. Closes #75 .
2007-07-16 11:53:12 -07:00
Brian Warner
6e1ad64c9d
webish.py: test that _get_or_create_directories fix I made a few hours ago
2007-07-13 22:19:16 -07:00
Brian Warner
ba7e14a870
fix several methods to handle LIT URIs correctly, rather than assuming that all filenodes are CHK URIs
2007-07-12 16:17:49 -07:00
Brian Warner
13e84526a1
webapi: normalized API: use t=upload or t=download when providing localdir= or localfile=
2007-07-10 13:24:10 -07:00
Brian Warner
72fc8c5cb8
web: use real JSON instead of the fake stubs
...
Also include the encoder portion of Bob Ippolito's simplejson-1.7.1 as
allmydata.util.json_encoder . simplejson is distributed under a more liberal
license than Tahoe (looks to be modified BSD), so redistributing it should be ok.
2007-07-08 00:17:11 -07:00
Brian Warner
2d06a66ec1
test_web.test_welcome: give the rooturl a trailing slash, otherwise older versions of twisted complain
2007-07-07 23:22:52 -07:00
Brian Warner
bd8625076a
web: remove t=XML, and other dead code
2007-07-07 22:55:15 -07:00
Brian Warner
159f8bfd50
web: improve test coverage
2007-07-07 22:47:18 -07:00
Brian Warner
e2f99247f2
web: make sure we present read-only directories properly
2007-07-07 22:21:20 -07:00
Brian Warner
62e8528cc6
web: /uri/ must escape slashes, we use bangs for this
2007-07-07 22:06:52 -07:00
Brian Warner
617a85df67
web: remove debug prints
2007-07-07 20:11:30 -07:00
Brian Warner
464f25e5f2
web: more test work, now all tests pass, POST too, only XMLRPC left to implement
2007-07-07 20:06:58 -07:00
Brian Warner
0cd730a7b3
web: more test work, now all tests either pass or are skipped (POST, XMLRPC, and URI/)
2007-07-07 10:34:05 -07:00
Brian Warner
d501984eba
webapi: checkpointing more test progress
2007-07-07 00:16:36 -07:00
Brian Warner
6570253d6b
checkpointing new webapi: not all tests pass yet
2007-07-06 19:43:55 -07:00