lp:~jderose/dmedia/trunk

Created by Jason Gerard DeRose and last modified
Get this branch:
bzr branch lp:~jderose/dmedia/trunk
Only Jason Gerard DeRose can upload to this branch. If you are Jason Gerard DeRose please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Jason Gerard DeRose
Project:
Dmedia
Status:
Abandoned

Recent revisions

114. By Jason Gerard DeRose

Merged David Green's dmedia man page

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

110. By Jason Gerard DeRose

Fixed oops in safe_ext() that broke cr2 extensions

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\!

105. By Jason Gerard DeRose

Added HACKING.txt with instructions for new contributors

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.