lp:~manishsinha/dmedia/remove-hardcoding-use-xdg-dot-basedirectory

Created by Manish Sinha (मनीष सिन्हा) and last modified
Get this branch:
bzr branch lp:~manishsinha/dmedia/remove-hardcoding-use-xdg-dot-basedirectory
Only Manish Sinha (मनीष सिन्हा) can upload to this branch. If you are Manish Sinha (मनीष सिन्हा) please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Recent revisions

111. By Manish Sinha (मनीष सिन्हा)

Removed hardcoding of ".local" and used xdg.BaseDirectory specifications instead. Additionally refined the documentation in the dmedia file

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

104. By Jason Gerard DeRose

As attachments=true doesn't work in views, move thumbnail out of attachments; now storing canon.thm in attachments, no longer storing full exif

103. By Jason Gerard DeRose

Merged removal of debian/ from rockstar

102. By Jason Gerard DeRose

Added workaround for lp:672481, named MetaStore name kwarg to dbname and made it actually do something

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~jderose/dmedia/trunk
This branch contains Public information 
Everyone can see this information.