Christos Stathis [Mon, 4 Jul 2011 14:49:49 +0000 (17:49 +0300)]
Started implementation of new folder command
Christos Stathis [Mon, 4 Jul 2011 09:28:08 +0000 (12:28 +0300)]
Added a dummy If-Modified-Since to avoid browser 's caching
Christos Stathis [Mon, 4 Jul 2011 08:21:08 +0000 (11:21 +0300)]
Updated licence in code files. Removed some unused methods
Sofia Papagiannaki [Fri, 1 Jul 2011 16:20:15 +0000 (19:20 +0300)]
Fixes data and content-type headers in no content POST requests for objects
Sofia Papagiannaki [Fri, 1 Jul 2011 16:17:50 +0000 (19:17 +0300)]
Send no Content-type if no data exist
Fixes Missing Content-Range header Error while updating object metadata
Fixes #567
Sofia Papagiannaki [Fri, 1 Jul 2011 14:32:15 +0000 (17:32 +0300)]
If-Range header support in object GET
Refs #567
Sofia Papagiannaki [Fri, 1 Jul 2011 14:31:36 +0000 (17:31 +0300)]
If-Range header implementation in object GET
Giorgos Verigakis [Fri, 1 Jul 2011 13:48:49 +0000 (16:48 +0300)]
Bugfixes
Always use a user in order to work with the new authentication scheme.
Giorgos Verigakis [Fri, 1 Jul 2011 12:46:42 +0000 (15:46 +0300)]
Return the correct token in authenticate
Christos Stathis [Thu, 30 Jun 2011 15:57:17 +0000 (18:57 +0300)]
Got file info from headers
Christos Stathis [Tue, 28 Jun 2011 15:25:04 +0000 (18:25 +0300)]
Started implementation of file list widget
Sofia Papagiannaki [Mon, 27 Jun 2011 14:41:20 +0000 (17:41 +0300)]
extend command line client and client lib to preform requests for publishing/unpublishing objects
Refs #567
Sofia Papagiannaki [Fri, 24 Jun 2011 16:20:19 +0000 (19:20 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Sofia Papagiannaki [Fri, 24 Jun 2011 16:19:51 +0000 (19:19 +0300)]
Several client and client library minor changes
library:
- supply authorization token
- several method signature changes for better client support (separate metadata from the rest headers)
- extra method for setting container policies (for development assistance)
client:
- get user and authorization information from environmental variables PITHOS_USER & PITHOS_AUTH
- new option use_hashes for creating objects by uploading the hash information instead
- nosharing option for clearing object sharing policy
- new command policy for setting container policies
Sofia Papagiannaki [Fri, 24 Jun 2011 16:06:34 +0000 (19:06 +0300)]
correct spelling
Sofia Papagiannaki [Fri, 24 Jun 2011 16:02:04 +0000 (19:02 +0300)]
extend api to create an object by uploading the hashmap instead of actual data
- enable format parameter in PUT requests on objects
- when format is json the api instead of actual data expects a json formatted dictionary (similar to one returned by extended GET responses) containing information about the block identities
- backend update_object_hashmap() now checks for the block existence before performing the update
- incase of missing data Conflict 409 is returned containing the list of the missing block identites
Antony Chazapis [Fri, 24 Jun 2011 13:39:30 +0000 (16:39 +0300)]
Add account groups, merge into sharing. Fix tests.
Refs #449
Christos Stathis [Thu, 23 Jun 2011 15:12:05 +0000 (18:12 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Christos Stathis [Thu, 23 Jun 2011 15:12:01 +0000 (18:12 +0300)]
Removed d'n'd support for now
Giorgos Verigakis [Thu, 23 Jun 2011 14:50:41 +0000 (17:50 +0300)]
Add a dummy authentication middleware
The username - token mapping is stored statically in settings.py
You will need to update your settings.py after this commit.
Christos Stathis [Thu, 23 Jun 2011 14:33:11 +0000 (17:33 +0300)]
Fixed bug when displaying folder tree after the second level. Now the tree works correctly
Antony Chazapis [Thu, 23 Jun 2011 14:24:52 +0000 (17:24 +0300)]
Update versioning.
- Allow non-integer version identifiers.
- Use 'X-Object-Modified-By' to trace the user that created a version.
- Fix 'X-Object-Version-Timestamp' header formatting.
Rebuild the database, or:
sqlite> alter table versions add column user text;
sqlite> update versions set user = '<username>';
Refs #593
Antony Chazapis [Thu, 23 Jun 2011 12:47:27 +0000 (15:47 +0300)]
Updated permissions support.
* Allow deleting/clearing permissions.
* Report inheritance via 'X-Object-Shared-By' header.
* Enforce permissions.
Refs #449
Antony Chazapis [Wed, 22 Jun 2011 17:36:35 +0000 (20:36 +0300)]
Document 'update' parameter. Add to account/container POST.
Giorgos Verigakis [Wed, 22 Jun 2011 15:45:10 +0000 (18:45 +0300)]
New FUSE based client
Antony Chazapis [Wed, 22 Jun 2011 15:34:32 +0000 (18:34 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Antony Chazapis [Wed, 22 Jun 2011 15:33:59 +0000 (18:33 +0300)]
Fix POST to delete metadata when none is supplied. Add 'update' parameter to update certain meta values only.
Sofia Papagiannaki [Wed, 22 Jun 2011 15:32:30 +0000 (18:32 +0300)]
client bug fixing in print usage
Fixes #567
Sofia Papagiannaki [Wed, 22 Jun 2011 15:08:54 +0000 (18:08 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Sofia Papagiannaki [Wed, 22 Jun 2011 15:08:40 +0000 (18:08 +0300)]
- display command usage instead of client usage
- include trashed objects in listing using meta filtering
Refs #576
Christos Stathis [Wed, 22 Jun 2011 14:59:06 +0000 (17:59 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Christos Stathis [Wed, 22 Jun 2011 14:59:02 +0000 (17:59 +0300)]
Finally displayed virtual folder hierarchy up to second level
Antony Chazapis [Wed, 22 Jun 2011 13:38:55 +0000 (16:38 +0300)]
Fix version list and copy from version when the object is deleted.
Remove 'public' from permissions.
Sofia Papagiannaki [Tue, 21 Jun 2011 14:40:11 +0000 (17:40 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Sofia Papagiannaki [Tue, 21 Jun 2011 14:39:52 +0000 (17:39 +0300)]
add command group and create option option sharing
for development assistance
for the time being they just pass the relative headers
Refs #567
Antony Chazapis [Tue, 21 Jun 2011 14:00:55 +0000 (17:00 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Antony Chazapis [Tue, 21 Jun 2011 14:00:45 +0000 (17:00 +0300)]
Initial permissions support.
* Use 'X-Object-Sharing' header to get/set permissions.
* Replaces 'X-Object-Public' header (now obsolete).
* No permission enforcement yet.
Refs #449
Refs #595
Antony Chazapis [Tue, 21 Jun 2011 13:55:35 +0000 (16:55 +0300)]
Fix tests (object HEAD returns 200).
Sofia Papagiannaki [Tue, 21 Jun 2011 13:54:52 +0000 (16:54 +0300)]
bug fixing update/delete metadata
(sends back to the server only the user defined meta)
also bug fixing in client account unset (check for no path provided)
Fixes #576
Sofia Papagiannaki [Tue, 21 Jun 2011 11:49:37 +0000 (14:49 +0300)]
add license & introduce include_trashed parameter
(default False) in list_objects
Refs #567
Sofia Papagiannaki [Tue, 21 Jun 2011 08:42:17 +0000 (11:42 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Sofia Papagiannaki [Tue, 21 Jun 2011 08:42:02 +0000 (11:42 +0300)]
+better metadata handling
instead of setting each time new metadata
(by replacing older)
lib provides 2 new methods:
update: for adding and updating older values
delete: for deleting older data
+methods for trashing and
restoring an object
+new client commands for:
- trashing (remove, rm), restoring (restore) objects
- deleting metadata (unset)
- creating directory markers (mkdir)
+ remove version option from move command
+minor changes for simplifying code
Fixes #567
Antony Chazapis [Mon, 20 Jun 2011 10:41:43 +0000 (13:41 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Antony Chazapis [Mon, 20 Jun 2011 10:41:22 +0000 (13:41 +0300)]
Add recommended practices/examples in docs.
Sofia Papagiannaki [Mon, 20 Jun 2011 09:00:35 +0000 (12:00 +0300)]
reads exactly as many bytes from the response as the response content-length
refs to the problem with the trailing \n
Fixes #567
Antony Chazapis [Sun, 19 Jun 2011 12:52:20 +0000 (15:52 +0300)]
Bug fixes.
* Empty object update.
* Parameter version equal to 'list' in requests.
* Object HEAD response code (should be 200).
* Remove source version parameter when moving with PUT/MOVE.
* Mark 'X-Object-Public' as TBD in the docs.
Christos Stathis [Fri, 17 Jun 2011 16:39:50 +0000 (19:39 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Christos Stathis [Fri, 17 Jun 2011 16:39:25 +0000 (19:39 +0300)]
First version of client that displays first level containers
Sofia Papagiannaki [Fri, 17 Jun 2011 14:18:02 +0000 (17:18 +0300)]
bug fixing in object version copy/move
and object update
Fixes #567
Sofia Papagiannaki [Fri, 17 Jun 2011 11:12:15 +0000 (14:12 +0300)]
support for object version move
separate options for versionlist and get version
Refs #567
Sofia Papagiannaki [Fri, 17 Jun 2011 10:26:28 +0000 (13:26 +0300)]
client support from COPY/MOVE from specific version
Refs #567
Sofia Papagiannaki [Fri, 17 Jun 2011 09:50:26 +0000 (12:50 +0300)]
add version support
Refs #567
Sofia Papagiannaki [Fri, 17 Jun 2011 09:48:16 +0000 (12:48 +0300)]
slight modifications to support list object versions
Refs #593
Giorgos Verigakis [Thu, 16 Jun 2011 22:01:52 +0000 (01:01 +0300)]
Add an X-Object-Size response header
204 responses set Content-Length to 0 and a different header is
needed in order to get the object size.
Sofia Papagiannaki [Thu, 16 Jun 2011 17:25:03 +0000 (20:25 +0300)]
create zero-length objects
better exception handling
Refs #567
Antony Chazapis [Tue, 14 Jun 2011 20:00:42 +0000 (23:00 +0300)]
Fix manifest and copy/move prefix parsing.
Sofia Papagiannaki [Tue, 14 Jun 2011 16:52:04 +0000 (19:52 +0300)]
support for account/container HEAD/GET until parameter
create zero-length objects
remove last trailing enter from response
Fixes #567
Antony Chazapis [Tue, 14 Jun 2011 16:28:15 +0000 (19:28 +0300)]
Add template for version list.
Refs #593
Antony Chazapis [Tue, 14 Jun 2011 16:26:25 +0000 (19:26 +0300)]
Large object support.
Giorgos Verigakis [Tue, 14 Jun 2011 15:57:08 +0000 (18:57 +0300)]
Add a simple FUSE backend client
Only supports flat hierarchies for now:
the only dirs are containers that can only contain files.
Requires MacFUSE in Mac OS X, Windows not supported.
Antony Chazapis [Tue, 14 Jun 2011 11:16:55 +0000 (14:16 +0300)]
Remove strip() from tests.
Sofia Papagiannaki [Fri, 10 Jun 2011 15:12:43 +0000 (18:12 +0300)]
_list() strip data returned from server
before further processing
Fixes #567
Sofia Papagiannaki [Fri, 10 Jun 2011 15:02:39 +0000 (18:02 +0300)]
_list(...) returns always list
in _get_metadata(...) prefix is optional: if not present returns all the metadata
Sofia Papagiannaki [Fri, 10 Jun 2011 14:05:11 +0000 (17:05 +0300)]
remove leftover comments
Sofia Papagiannaki [Fri, 10 Jun 2011 13:46:58 +0000 (16:46 +0300)]
support from chunked transfers, object update and move
Fixes #567
Sofia Papagiannaki [Fri, 10 Jun 2011 13:46:23 +0000 (16:46 +0300)]
client support from chunked transfers, object update and move
Fixes #567
Sofia Papagiannaki [Fri, 10 Jun 2011 13:44:38 +0000 (16:44 +0300)]
fixes chunked transfer data
Antony Chazapis [Fri, 10 Jun 2011 10:47:00 +0000 (13:47 +0300)]
Document versioning and public objects.
Fixes #593
Fixes #595
Antony Chazapis [Thu, 9 Jun 2011 23:15:49 +0000 (02:15 +0300)]
Versioning extras, including account/container "time machine".
* Update metadata with the hashmap to create a single new object version.
* Add source version when duplicating in PUT/COPY/MOVE.
* Add 'until' parameter in account/container HEAD/GET.
* Expose object version list.
* Include user in backend functions (for future use).
Refs #593
Antony Chazapis [Thu, 9 Jun 2011 14:09:29 +0000 (17:09 +0300)]
Limit metadata in object headers accessed via /public. Simplify implementation.
Refs #595
Antony Chazapis [Thu, 9 Jun 2011 13:21:50 +0000 (16:21 +0300)]
Pass account from request URL to backend functions and not request.user.
Antony Chazapis [Thu, 9 Jun 2011 13:03:16 +0000 (16:03 +0300)]
Support public files.
Use 'X-Object-Public' to mark files as public. Then they can be accessed via the /public URL without authentication.
Refs #595
Antony Chazapis [Thu, 9 Jun 2011 12:55:24 +0000 (15:55 +0300)]
Antony Chazapis [Thu, 9 Jun 2011 12:44:48 +0000 (15:44 +0300)]
Fix modification time in accounts/containers.
Antony Chazapis [Thu, 9 Jun 2011 11:48:06 +0000 (14:48 +0300)]
Advanced versioning support. New backend.
- Everything is versioned in the backend.
- Time-controlled account/container listings.
- Initial API support with the 'version' parameter in object HEAD/GET.
Refs #593
Sofia Papagiannaki [Tue, 7 Jun 2011 09:00:31 +0000 (12:00 +0300)]
fix for double matching metadata filtering
Sofia Papagiannaki [Tue, 7 Jun 2011 08:58:11 +0000 (11:58 +0300)]
#Fixes 451
Antony Chazapis [Fri, 3 Jun 2011 16:55:17 +0000 (19:55 +0300)]
Fix precondition check replies.
Sofia Papagiannaki [Fri, 3 Jun 2011 12:03:58 +0000 (15:03 +0300)]
Fixes #567
separates the interaction with the api from the command line tool
+ some extensions to support more options
Sofia Papagiannaki [Wed, 1 Jun 2011 14:06:52 +0000 (17:06 +0300)]
Fixes #565
Sofia Papagiannaki [Wed, 1 Jun 2011 14:06:12 +0000 (17:06 +0300)]
Fixes chunked object post with specific upto range limit
Sofia Papagiannaki [Wed, 1 Jun 2011 12:25:45 +0000 (15:25 +0300)]
Fixes #565
Sofia Papagiannaki [Wed, 1 Jun 2011 12:25:11 +0000 (15:25 +0300)]
import missing hashlib
Antony Chazapis [Wed, 1 Jun 2011 11:26:23 +0000 (14:26 +0300)]
Fix Content-Range parsing.
Antony Chazapis [Wed, 1 Jun 2011 10:48:44 +0000 (13:48 +0300)]
Add 411 error to POST in doc.
Antony Chazapis [Tue, 31 May 2011 14:04:25 +0000 (17:04 +0300)]
Produce new ETag when updating an object (corrected).
Antony Chazapis [Tue, 31 May 2011 13:45:44 +0000 (16:45 +0300)]
Produce new ETag when updating an object.
Antony Chazapis [Tue, 31 May 2011 11:01:39 +0000 (14:01 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Antony Chazapis [Tue, 31 May 2011 11:01:17 +0000 (14:01 +0300)]
Include storage type in container meta/hashmap replies. Minor doc updates.
Sofia Papagiannaki [Tue, 31 May 2011 07:56:53 +0000 (10:56 +0300)]
Fixes #565
Antony Chazapis [Sun, 29 May 2011 12:39:34 +0000 (15:39 +0300)]
Document partial object updates and hashmaps.
Refs #563
Antony Chazapis [Sun, 29 May 2011 10:24:04 +0000 (13:24 +0300)]
Handle partial object updates through POST.
Antony Chazapis [Fri, 27 May 2011 16:50:31 +0000 (19:50 +0300)]
Change database placement/naming defaults.
Antony Chazapis [Fri, 27 May 2011 16:39:56 +0000 (19:39 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Antony Chazapis [Fri, 27 May 2011 16:39:25 +0000 (19:39 +0300)]
Fix object GET.
Sofia Papagiannaki [Fri, 27 May 2011 16:39:13 +0000 (19:39 +0300)]
Merge branch 'master' of https://code.grnet.gr/git/pithos
Sofia Papagiannaki [Fri, 27 May 2011 16:39:00 +0000 (19:39 +0300)]
minor improvements
Giorgos Verigakis [Fri, 27 May 2011 16:28:19 +0000 (19:28 +0300)]
Add a Content-Type header when sending data
Sofia Papagiannaki [Fri, 27 May 2011 16:01:18 +0000 (19:01 +0300)]
add license
Sofia Papagiannaki [Fri, 27 May 2011 15:53:24 +0000 (18:53 +0300)]
additional api tests