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
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
Brian Warner
301dd3d489
webish status: distinguish active uploads/downloads from recent ones
2008-02-26 15:35:28 -07:00
Brian Warner
d4bf623b87
current-downloads status: add SI, size, make numsegs 1-based
2008-02-26 15:02:35 -07:00
Brian Warner
b17b7695a4
webish: add /status page to display current uploads/downloads
2008-02-12 15:40:05 -07:00
Brian Warner
3d72d00826
webish: display timestamps
2008-02-11 15:13:18 -07:00
Brian Warner
590b020a44
webish: more upload stats: total encode-and-push rate, already-in-grid existence check time
2008-02-06 02:39:01 -07:00
Brian Warner
652d50d7e0
UploadResults: add more helper timing stats (ciphertext fetch times)
2008-02-06 02:12:35 -07:00
Brian Warner
124fb5ecdf
add upload-results timing info for helper uploads. This changes the Helper protocol, and introduces a compatibility break
2008-02-06 01:52:25 -07:00
Brian Warner
93d45abb02
add upload timings and rates to the POST /uri?t=upload results page
2008-02-06 00:41:51 -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
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
2f09b03bcc
webish: add storage-consumed estimate on welcome page
2008-02-05 20:29:39 -07:00
Brian Warner
4b4eba867b
webish: display tahoe import path on the welcome page, to help figure out where the code is coming from
2008-02-05 20:08:49 -07:00
Brian Warner
eb9023ab0e
webish: condense display of nickname a little bit
2008-02-05 18:29:28 -07:00
Brian Warner
96e6c78c7a
webish: show nickname too
2008-02-05 18:26:05 -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
8485ff53fc
display the Helper FURL and our connection status on the welcome page. Closes #285 .
2008-01-28 13:56:22 -07:00
robk-tahoe
6ef4606534
tweak webish to use resource_filename to find css and html files
...
using sibpath to find web template files relative to source code is functional
when running from source environments, but not especially flexible when running
from bundled built environments. the more 'orthodox' mechanism, pkg_resources,
in theory at least, knows how to find resource files in various environments.
this makes the 'web' directory in allmydata into an actual allmydata.web module
(since pkg_resources looks for files relative to a named module, and that module
must be importable) and uses pkg_resources.resource_filename to find the files
therein.
2008-01-22 17:44:58 -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
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
Brian Warner
51af1fa2e3
webish: fix overwrite form display
2007-12-05 00:15:13 -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
Zooko O'Whielacronx
85b972a4c3
WUI: hook up an "overwrite" button on mutable files
2007-11-10 10:53:45 -07:00
Brian Warner
046bda2b47
webish: add checker results and a 'Check' button to the web interface
2007-10-23 17:23:57 -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
5946985c07
add a provisioning utility page which shows necessary storage space and transfer rates for grids of various sizes
2007-08-26 23:44:24 -07:00
Brian Warner
930618fba2
web: oops, forgot to add start.html
2007-08-22 15:08:00 -07:00
Brian Warner
0468448b85
welcome.xhtml: add a link to allmydata.org
2007-07-13 17:15:44 -07:00
robk-org
d65d02fa58
add a 'rename' button to the webish dir view
...
alongside the 'del' button is now presented a 'rename' button, which takes
the user to a new page, the 't=rename-form' page, which asks ther user for
the new name of the child and ultimately submits a POST request to the dir
for 't=rename' to perform the actual rename i.e. an attach followed by a
delete of children.
2007-07-12 16:53:54 -07:00
Brian Warner
8891544d6c
directory.xhtml: oops, missed a comma
2007-07-08 00:44:08 -07:00
Brian Warner
295c3a75c2
directory.xhtml: remove the leftover XML link
2007-07-08 00:33:20 -07:00
Brian Warner
135f08a518
web: remove more dead code
2007-07-07 22:20:03 -07:00
Brian Warner
fb40b55bc3
web: replace welcome-page download-URI form with new version
2007-07-07 22:06:22 -07:00
Brian Warner
9e2ce51de7
web: change title to say 'Tahoe', not tahoe2
2007-07-07 21:30:38 -07:00
Brian Warner
e5482b5254
web: add a 'return to welcome page' link
2007-07-07 21:30:04 -07:00
Brian Warner
b3f0293d50
web: change per-directory forms to match new POST scheme
2007-07-07 20:35:47 -07:00
Brian Warner
7d92b8a123
webish.py: add links to JSON/etc representations of directory contents to the listing
2007-07-07 11:31:07 -07:00
Brian Warner
10a5ff3767
webish: fix ?t=manifest, ?t=xml so they don't throw exceptions, prune directory.xhtml
2007-07-07 11:15:31 -07:00
Brian Warner
6427b44b42
webish: make each link in the directory name an href to that directory
2007-06-29 11:17:18 -07:00
Brian Warner
9ecde0d23e
webish: fix link to private_vdrive
2007-06-28 19:07:52 -07:00
Brian Warner
1d86cd161b
webish.py: add a web page to display the manifest for any particular directory
2007-06-26 19:55:21 -07:00
Brian Warner
fb02488a8e
vdrive: switch to URI:DIR and URI:DIR-RO, providing transitive readonlyness
2007-06-25 13:23:51 -07:00
Brian Warner
2066e8ddfc
webish: add option to export/import shared directories (always read-write)
2007-06-15 02:31:23 -07:00
Brian Warner
20dcda4ca7
create a personal (non-shared) vdrive, in addition to the global shared one
2007-06-15 01:33:24 -07:00
Brian Warner
1eba30cd14
webish.py: put the URI in a narrower auto-scrolling box (with CSS)
2007-06-15 01:32:20 -07:00
Brian Warner
48a8c32ed7
webish: display program/library versions on the welcome page
2007-06-11 10:51:11 -07:00
Brian Warner
363ed1264a
webish: show vdrive and introducer connectedness separately
...
Also don't offer a link to the vdrive webpages if we don't have a vdrive.furl
2007-06-09 21:03:57 -07:00
Zooko O'Whielacronx
3872e94da2
rename all "*PBURL*" to "*FURL*"
...
This breaks backwards compatibility with Tahoe v0.2 -- the first public release of Tahoe.
2007-05-22 14:08:30 -07:00
Zooko O'Whielacronx
9b70d17d4b
enable private upload, in which the file is inserted at the grid layer but not at the vdrive layer
...
This patch is actually by Faried Nawaz, as per ticket #33 :
http://allmydata.org/trac/tahoe/ticket/33
2007-05-16 08:40:19 -07:00
Faried Nawaz
2016b846b9
display file size in directory.xhtml
2007-05-04 13:07:32 -07:00
Zooko O'Whielacronx
e0a18d12af
globally search and replace "mesh" with "grid" and adjust description of the effect of NAT on the topology
2007-04-30 13:06:09 -07:00
Brian Warner
a3c9ead74f
replace 'queen' with 'introducer' in a lot of places, but not all
2007-04-19 17:30:21 -07:00
Brian Warner
60bddba827
webish: add 'my nodeid' to the page
2007-03-29 14:31:55 -07:00
Brian Warner
611178490a
fix some python2.5 incompatibilities, and remove an old webish display that suggested we might know about peers but not be connected to them
2007-03-27 17:44:49 -07:00
Brian Warner
25ff9e1f97
complete the Introducer changes, separate out vdrive access, make everything work again
2007-03-27 16:12:11 -07:00
Brian Warner
8e03d19ccc
webish: add PBURL to the all-peers table on the welcome page
2007-01-16 21:01:18 -07:00
Brian Warner
3fb37ae246
webish: more verifierid-to-uri transition
2007-01-16 19:55:53 -07:00
Brian Warner
3490378551
move all packages into src/, fix allmydata.Crypto build. Now you must perform a 'setup.py build' before using anything, and you must add the build directory (build/lib.linux-i686-2.4) to your PYTHONPATH before doing anything
2006-12-14 03:39:50 -07:00