Brian Warner
76b7b9d835
webapi: make the /operations/ 't=status' qualifier optional, remove it from examples
2008-10-23 15:56:58 -07:00
Brian Warner
4025f29b8a
web/info.py: fix 'Check This Object' link, for files it was checking the parent directory by mistake
2008-10-22 10:10:56 -07:00
Brian Warner
0129e9931f
#514 : add meta-refresh=60 tag to t=status page for incomplete operations
2008-10-22 09:48:42 -07:00
Brian Warner
977c6ac510
more #514 : pass a Monitor to all checker operations, make mutable-checker honor the cancel flag
2008-10-22 01:38:18 -07:00
Brian Warner
34ab4e3de3
more #514 log-webop status/cancel: add handle-expiration, test coverage
2008-10-21 22:13:54 -07:00
Brian Warner
0f7c1fd6fd
#514 : improve test coverage
2008-10-21 17:52:56 -07:00
Brian Warner
ad3d9207a9
Change deep-size/stats/check/manifest to a start+poll model instead of a single long-running synchronous operation. No cancel or handle-expiration yet. #514 .
2008-10-21 17:03:07 -07:00
Brian Warner
cd236efc68
web/directory: t=manifest output=html: make the caps into clickable hrefs
2008-10-07 13:18:45 -07:00
Brian Warner
f7edbc1536
web/directory: factor out the get_root function
2008-10-07 13:17:42 -07:00
Brian Warner
53c9867c5c
web/directory.py: remove unused imports
2008-10-07 12:48:20 -07:00
Brian Warner
3ffaded809
web: change t=manifest to return a list of (path,read/writecap) tuples, instead of a list of verifycaps. Add output=html,text,json.
2008-10-06 21:36:18 -07:00
Brian Warner
8e6d122ecf
web: rewrite t=deep-size in terms of deep-stats, update test to match inclusion of directory sizes
2008-10-06 21:35:39 -07:00
Brian Warner
935d185696
tolerate simplejson-2.0.0 and newer, which frequently return bytestrings instead of unicode objects. Closes #523
2008-09-30 15:21:06 -07:00
Brian Warner
54fce5c066
webapi: survive slashes in filenames better: make t=info and t=delete to work, and let t=rename fix the problem
2008-09-24 13:35:05 -07:00
Brian Warner
99d5a8d8b9
web: add 'more info' pages for files and directories, move URI/checker-buttons/deep-size/etc off to them
2008-09-17 22:00:41 -07:00
Brian Warner
51612cd1be
webish: add an extra newline to JSON output
2008-09-15 13:43:14 -07:00
Brian Warner
ca273eeaf1
web: fix output=JSON, add buttons for repair/json to the 'run deep-check' form
2008-09-10 14:11:37 -07:00
Brian Warner
4bb88fd2ee
dirnode: refactor recursive-traversal methods, add stats to deep_check() method results and t=deep-check webapi
2008-09-10 01:45:04 -07:00
Brian Warner
1d2d6a35a6
checker results: add output=JSON to webapi, add tests, clean up APIs
...
to make the internal ones use binary strings (nodeid, storage index) and
the web/JSON ones use base32-encoded strings. The immutable verifier is
still incomplete (it returns imaginary healty results).
2008-09-09 19:45:17 -07:00
Brian Warner
3408d552cd
checker: overhaul checker results, split check/check_and_repair into separate methods, improve web displays
2008-09-07 12:44:56 -07:00
Brian Warner
a94af879ff
logging: add 'unique-message-ids' (or 'umids') to each WEIRD-or-higher log.msg call, to make it easier to correlate log message with source code
2008-08-25 18:57:59 -07:00
Brian Warner
e5252fd5b2
web/deep-check: show the webapi runtime at the bottom of the page
2008-08-12 20:34:26 -07:00
Brian Warner
4d6b504883
web: use get_size_of_best_version for HEAD requests, provide correct content-type
2008-08-12 19:04:10 -07:00
Brian Warner
014c9b5969
CLI: add 'tahoe debug corrupt-share', and use it for deep-verify tests, and fix non-deep web checker API to pass verify=true into node
2008-08-12 17:05:01 -07:00
Brian Warner
3cf70697e8
hush a pyflakes warning
2008-08-11 21:24:23 -07:00
Brian Warner
08e229f29a
web/directory: enable verify=true in t=deep-check
2008-08-11 21:24:09 -07:00
Brian Warner
d106e411af
checker: add information to results, add some deep-check tests, fix a bug in which unhealthy files were not counted
2008-08-11 21:03:26 -07:00
Brian Warner
56943bc5e2
web: add 'report incident' button at the bottom of the welcome page
2008-08-05 12:09:21 -07:00
Brian Warner
914783acdf
web: add /status/?t=json, with active upload/download ops. Addresses #493 .
2008-07-25 17:41:10 -07:00
Brian Warner
f8221c2c66
web: make t=json stats pages use text/plain, instead of leaving it at text/html
2008-07-25 17:24:27 -07:00
Brian Warner
572c848d98
web: for GET save=true, don't interpret the filename= arg with any character set, just copy the bytes back into the Content-Disposition header. This seems to make it maximally compatible with Firefox and IE7
2008-07-18 18:06:50 -07:00
Brian Warner
67db0a4967
deep-check: add webapi, add 'DEEP-CHECK' button to wui, add tests, rearrange checker API a bit
2008-07-17 16:47:09 -07:00
Brian Warner
3e9322bcb6
checker: re-enable checker web results (although they just say 'Healthy' right now)
2008-07-16 15:42:56 -07:00
Brian Warner
7394607141
move encode/upload/download/checker.py into a new immutable/ directory. No behavior changes expected.
2008-07-16 13:14:39 -07:00
Brian Warner
94e619c1f6
overhaul checker invocation
...
Removed the Checker service, removed checker results storage (both in-memory
and the tiny stub of sqlite-based storage). Added ICheckable, all
check/verify is now done by calling the check() method on filenodes and
dirnodes (immutable files, literal files, mutable files, and directory
instances).
Checker results are returned in a Results instance, with an html() method for
display. Checker results have been temporarily removed from the wui directory
listing until we make some other fixes.
Also fixed client.create_node_from_uri() to create LiteralFileNodes properly,
since they have different checking behavior. Previously we were creating full
FileNodes with LIT uris inside, which were downloadable but not checkable.
2008-07-15 17:23:25 -07:00
Brian Warner
de8ce0cb5b
welcome page: add link to statistics page
2008-07-09 17:37:22 -07:00
Brian Warner
bbc63e5d3f
web/root.py: fix minor typo
2008-07-07 00:18:16 -07:00
Brian Warner
5bdff74e5b
web: stop using absolute links (or url.here) in forms and pages, since they break behind proxies. Partially addresses #461
2008-06-17 19:49:40 -07:00
Brian Warner
166e68f2a3
web /statistics : show 0 instead of None for mutable files
2008-06-16 16:37:04 -07:00
robk-tahoe
212c19fc45
webish: re-fix the addSlash issue in directory rendering
...
having fixed the relevant unit test not to assert incorrect behaviour of
the node when rendering directories, it's now safe to fix the latter.
2008-06-11 15:35:27 -07:00
Brian Warner
4c681847f8
directory.py: revert that addSlash, it causes a test to fail and we don't understand it yet, and we don't need the fix quite yet
2008-06-11 12:59:28 -07:00
robk-tahoe
021a9e370f
webish: fix directory url redirection
...
when rendering a directory in webish, if the url did not correctly include
a trailing slash '/' then the browser will be redirected to a url which
does. this causes any relative links (e.g. the 'other representations'
which are links to files relative to the current directory) to be correctly
intrpreted as relative to the directory in question by the browser.
uses twisted's addSlash mechanism, which is designed for this purpose :-)
2008-06-11 12:46:28 -07:00
Zooko O'Whielacronx
65618ba5a2
wapi/wui: add a trailing slash to the targets of hyperlinks of children of the current directory when those targets are directories
...
This is intended to fix #458 '"other representations" broken in webish ui'.
2008-06-10 19:59:38 -07:00
Brian Warner
0aa6d24d62
web: add test for unicode POST when the name comes from name=, not the filename attribute
2008-06-03 17:09:39 -07:00
Brian Warner
9f5075e83d
web: make nickname more visible in the welcome page, closes #361
2008-06-03 15:02:10 -07:00
Brian Warner
9f59ecafbb
webish: make /cap/ equivalent to /uri/, accepting both with the same meanings. Closes #428
2008-06-03 14:34:00 -07:00
Brian Warner
32c89a8d59
web: transform FileTooLargeError into a friendlier '413 Request Entity Too Large' error
2008-06-03 00:03:16 -07:00
Brian Warner
3ac4a734e5
web t=json: add 'mutable' key to the information dict
2008-05-20 15:40:49 -07:00
Brian Warner
8dded7819c
web: fix JSON output for mutable files
2008-05-20 15:14:19 -07:00
Brian Warner
e323019708
web: handle PUT mutable=true properly
2008-05-20 12:36:02 -07:00
Brian Warner
6b51841ec8
web: even more test coverage
2008-05-20 11:33:14 -07:00
Brian Warner
2eadabbf82
web: improve test coverage, remove some dead code
2008-05-20 11:13:12 -07:00
Brian Warner
fe8fdfac64
web/filenode: remove unreachable code
2008-05-19 18:38:28 -07:00
Brian Warner
daebb42060
web/directory: fix rw_uri output in t=JSON to reflect mutable files properly
2008-05-19 18:37:28 -07:00
Brian Warner
d0685d42ff
web: factor out identical renderHTTP methods
2008-05-19 15:19:25 -07:00
Brian Warner
f9cd30d9bc
webish: complete rewrite, break into smaller pieces, auto-create directories, improve error handling
2008-05-19 12:57:04 -07:00
Brian Warner
5098297a2b
introweb.py: tolerate foolscap>=0.2.6, which changed the internals of .locationHints
2008-05-14 13:55:47 -07:00
Brian Warner
1e4b904b1a
web status: abbreviate file size in the upload+download summary page
2008-05-07 13:53:58 -07:00
Brian Warner
4b3adb3fcf
mutable stats: track mutable bytes published too
2008-04-29 18:20:05 -07:00
Zooko O'Whielacronx
f842656ec2
wui: reorganize the welcome.xhtml page
...
Jake Edge tried Tahoe out and didn't notice the /status page. Hopefully with this new organization people like he will see that link more easily. This also addresses drewp's suggestion that the controls appear above the list of servers instead of below. (I think that was his suggestion.) I also reordered the controls.
2008-04-29 15:10:14 -07:00
Brian Warner
186492e620
introducer: only record one announcement per (tubid,service) tuple. Fixes #343 .
2008-04-23 15:05:39 -07:00
Brian Warner
9ad6ed3777
web/status: remove trailing whitespace
2008-04-22 11:51:14 -07:00
Brian Warner
8377244c46
mutable status: make the 'total' timing value optional: unit tests fail otherwise
2008-04-21 17:29:12 -07:00
Brian Warner
e8b0f3d3cb
mutable status: use google-chart-API to draw server response times for servermap update
2008-04-21 16:16:55 -07:00
Brian Warner
f16f48a909
download status: add time spent paused by the client (when we're serving over a slow HTTP link)
2008-04-21 12:19:17 -07:00
Brian Warner
09dcfeae22
mutable: improve test coverage, fix bug in privkey fetching, add .finished to stats, remove dead code
2008-04-18 19:55:12 -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
749c42fa2c
mutable WIP: re-enable publish/retrieve status
2008-04-16 17:49:06 -07:00
Brian Warner
b5d19456f4
web/statistics: fix typo that make immutable-download stats missing
2008-04-15 11:20:04 -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
5b8320442a
stats: add /statistics web page to show them, add tests
2008-04-14 14:17:08 -07:00
Brian Warner
500934b72f
helper stats: fix the /helper_status page, the recent conflict merging missed some uses. Added tests, updated the munin plugins to match
2008-04-14 13:18:53 -07:00
Brian Warner
2c96a32633
helper: add more stats to webapi, at /helper_status
2008-03-27 16:46:08 -07:00
Brian Warner
36f5c025a6
helper: add stats for the gatherer, show some on the webish welcome page
2008-03-27 15:55:32 -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
Brian Warner
04b690ac9e
web-status: client methods like list_all_uploads() return Upload instances,
...
not status instances. Fix this. The symptom was that following a link like
'up-123' that referred to an old operation (no longer in memory) while an
upload was active would get an ugly traceback instead of a "no such resource"
message.
2008-03-26 18:20:07 -07:00
Brian Warner
4531d1e953
introweb.py: add ?t=json, to provide machine-readable subscriber counts
2008-03-25 12:56:12 -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
Brian Warner
75b52cda5c
web/status.py: guard against file_size=None, closes #354
2008-03-17 13:31:10 -07:00
Brian Warner
45a1e655c7
introducer: record a timestamp with each announcement, and display it on the introducer's web page
2008-03-11 19:33:19 -07:00
Brian Warner
29e23626ad
introducer: record a timestamp with each subscriber, and display it on the introducer's web page
2008-03-11 19:28:37 -07:00
Brian Warner
89be2e1bea
introweb: combine announcement and subscriber information to show version+nickname for each client
2008-03-11 19:21:29 -07:00
Brian Warner
fd5a922cad
introweb.py: tolerate non-setLocationed client tubs
2008-03-11 18:09:13 -07:00
Brian Warner
3f5abe5cba
oops, add introducer.xhtml
2008-03-11 17:41:03 -07:00
Brian Warner
810ba68343
add a webserver for the Introducer, showing service announcements and subscriber lists
2008-03-11 17:36:25 -07:00
Brian Warner
8815b30b9b
webish: show storage sizelimit, abbreviate current usage
2008-03-06 21:16:38 -07:00
Brian Warner
3a8bd1b772
webish: add more share information to upload status, including assisted uploads
2008-03-05 19:51:51 -07:00
Brian Warner
dd4a951770
webish: add publish status
2008-03-05 18:41:10 -07:00
Brian Warner
3a331f6822
webish: split out 'unlinked' operations
2008-03-05 15:12:42 -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
ec23da28a6
webish: add more mutable-retrieve timing status
2008-03-04 21:04:36 -07:00
Brian Warner
ca1a1762e2
web: status: add 'started' timestamps to all operations
2008-03-04 18:50:44 -07:00
Brian Warner
68fbd89e66
webish: add primitive publish/retrieve status pages
2008-03-04 01:07:44 -07:00
Brian Warner
18eb00d136
webish: download-results: add per-server response times
2008-03-03 20:53:45 -07:00
Brian Warner
886ef22335
webish: download-results: add server_problems
2008-03-03 20:30:35 -07:00
Brian Warner
def910c391
webish download results: add servermap, decrypt time
2008-03-03 20:09:32 -07:00
Brian Warner
2b49605c51
webish: add 'download results', with some basic timing information
2008-03-03 19:19:21 -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