lp:~jderose/dmedia/trunk
- Get this branch:
- bzr branch lp:~jderose/dmedia/trunk
Branch merges
Related bugs
Related blueprints
Branch information
Recent revisions
- 113. By Jason Gerard DeRose
-
Decided to not print warning about content-hash/schema not being final at end of every dmedia script run (there are better places to do that)
- 112. By Jason Gerard DeRose
-
Fixed MANIFEST.in so dmedialib/data/* and dmedialib/
tests/data/ * are included - 111. By Jason Gerard DeRose
-
Merged xdg.BaseDirectory fix from ~manishsinha
- 109. By Jason Gerard DeRose
-
A few cleanups preparing for 0.1, including:
* Thumbnail is again stored in _attachments as I'm undecided and at least
there it's browse-able in Futon
* dmedia script now prints instructions on how to open desktopcouch in a
browser, along with a warning about the dmedia hash/schema not being final
* Various small cleanups, added more docstrings to FileStore
* Added safe_ext() to validate file extension, an avenue for path traversal
attacks that I missed the first time
* Changed license to AGPLv3 as dmedia is made of the web, baby - 108. By Jason Gerard DeRose
-
FileStore.
allocate_ tmp() now returns open file instead of path; tmp now opened in mode 'r+b' when fallocate works - 107. By Jason Gerard DeRose
-
FileStore re-factor, security enhancements, import improvements
This is the big 0.1 re-factor, which:
* Re-factors FileStore to remove details about high-level import operations,
metadata in CouchDB doc, etc. FileStore is now quite stand-alone.* Adds rigorous security features in FileStore to protect against
directory/path traversal. A WSGI app (native dmedia server) can now be
built atop FileStore quite safely (although such an app should still design
for security and assume the FileStore protections don't work).* Adds `quickid` to doc in order to speed-up de-duplication during imports
(but the full content-hash is still used for the `_id`).* When importing files across different filesystems, the copy and hash are now
done in a single pass thanks to the new filestore.copy_and_ hash() function.
This hugely improves throughput for large files that don't fully fit in the
page cache (as they would previously be read from the source filesystem
twice).* Better locking during import operations to prevent mid-air collisions. The
source file is now kept open in 'rb' mode till the import completes,
preventing the file from being modified. Care is also taken to rely on the
source filename as little as possible (in case it's renamed during the
import).* Relocates badly placed import functionality from `dmedia` script to new
`import.py` module. - 106. By Jason Gerard DeRose
-
Merged Akshat's quick_id() fuction. Thanks, Akshat\!
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)