History | View | Annotate | Download (34.4 kB)
Use format for uploaded blocks hash lists at the container level.
Refs #1934
Use format parameter for Conflict (409) replies.
Fixes #1934
Add ignore_content_type parameter on COPY/MOVE.
Fixes #1860
Put back newlines in Conflict responses.
Print exception traceback only when it is an "Internal Server Error" and in debug or test mode.
Fixes #1888
Fix tabs.
Change license year.
Fixes #1889
Untie backend from settings.
Fixes #1816
Fix manifest object.
The ETag header/hash property always includes the MD5.
Refs #1792
Add backend object retrieve by UUID. Expose UUID at the frontend. Document.
Refs #1790
Update frontend with the metadata domain parameter.
Refs #1782
Reply with the hashmap's hash as the ETag if no ETag present.
Use hashmap lib in api.
Restructure repository to make pithos one package.
Refs #1735
Fix unicode metadata in public objects.
Fix import bug.
Use URL-encoding/decoding for all headers.
Refs #1511
Format groups/policy/metadata in JSON/XML replies.
Fixes #1719
Exclude some characters from URL-encoding.
Restrict header count and size. URL-encode/decode specific headers that may contain unicode characters.
Use short public URLs.
Refs #1686
Avoid empty object name in COPY/MOVE destination.
Fixes #1683
Upload files from HTML forms directly to the backend.
Fixes #1676
Always include the Merkle hash in object meta (as returned from the backend). Clean up 'hash' references in frontend.
Needs database update.
Fixes #1451
Move MySQL warnings suppression to backend.
suppress mysql index length warnings raising exception
Add backend close method.
Make request.user point to the user object.
Use 401 error when missing token and 403 when forbidden.
Fixes #1369
Handle chunked from gunicorn properly.
Add insufficient quota replies in frontend. Document.
Refs #1165
Merge account policy in api. Document.
Refs #1165Refs #1167
Merge branch 'master' of https://code.grnet.gr/git/pithos
Report remaining bytes. Enforce account quota when setting container limits.
perform case sensitive varchar ordering, handle correctly utf8 columns and decimals
Refs #1458
Fix group parsing.
Fix conflict response when copying/moving.
Support cross-account copy and move.
Fixes #1241
Include susecond precision in RFC8601 times returned in extended listings.
Add timezone indicator in ISO8601 formatted dates.
Fixes #1231
Remove upload size limit.
Close backend connection. Fix empty read.
Use one backend instance per HTTP request
Use 'hashmap' parameter in object GET/PUT to use hashmaps.
Report allowed actions in cross-user object requests, with the 'X-Object-Allowed-To' header.
Fix computing hashmap hash.
Simplify hashmap_hash.
If the same user is both in read and write permissions, keep only the entry in write.
Return new version identifier in frontend. Document.
Accept '~' in X-Object-Sharing.
Fix TestGreek.
additional tests for updating object using x-source-object
Use Merkle hash for ETag when updating objects.
fix utf8 handling
additional tests written
Fix reading when apache does the dechunking.
Conditional object create/update.
Fix metadata keys in extended replies.
Fix web server compatibility.
Fix X-Container-Object-Meta.
Always return 'Last-Modified' header at the account level.
Cross-account operations in backend/API/docs.
Refs #763
Clean up authorization in the backend. Fix groups.
Ignore the Accept header.
Fix If-Range.
extend api object write to accept xml formatted requests containing hashmap information instead of actual data
socket_read_iterator raises BadRequest if maximum size is reached
Fix Content-Length.
Object truncate.
Option to update an object using another object's data.
Bug fix.
Return the conflicting path in the reply, when refusing to change permissions because of a conflict.
Refs #449
New public objects implementation.
Fixes #595
If-Range header implementation in object GET
Add account groups, merge into sharing. Fix tests.
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.
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;...
Updated permissions support.
Document 'update' parameter. Add to account/container POST.
Fix version list and copy from version when the object is deleted.Remove 'public' from permissions.
Initial permissions support.
Refs #449Refs #595
Bug fixes.
Add an X-Object-Size response header
204 responses set Content-Length to 0 and a different header isneeded in order to get the object size.
Fix manifest and copy/move prefix parsing.
Large object support.
fixes chunked transfer data
Document versioning and public objects.
Fixes #593Fixes #595
Versioning extras, including account/container "time machine".
Limit metadata in object headers accessed via /public. Simplify implementation.
Refs #595
Pass account from request URL to backend functions and not request.user.
Support public files.
Use 'X-Object-Public' to mark files as public. Then they can be accessed via the /public URL without authentication.
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
Fix precondition check replies.
import missing hashlib
Fix Content-Range parsing.
Produce new ETag when updating an object (corrected).
Produce new ETag when updating an object.
Include storage type in container meta/hashmap replies. Minor doc updates.