Commits on Jan 4, 2013
  1. A portable way to populate THANKS.

    janl committed Jan 4, 2013
    Original patch by Christopher Bonhage, applied with slight modification.
    Closes COUCHDB-1628.
Commits on Dec 28, 2012
  1. master is 1.4.x

    janl committed Dec 28, 2012
  2. Fix typo in CORS header.

    janl committed Dec 28, 2012
    Thanks to Anthony Ramine for the heads up at
Commits on Dec 22, 2012
  1. fix make check-js typo

    janl committed Dec 22, 2012
  2. Fix `make check-js` for non-`make` builds.

    janl committed Dec 22, 2012
    This patch passes the `$(MAKE)` value to `test/javascript/run`
    so it can in turn invoke `$(MAKE)` instead of literal `make`,
    so builds that use e.g. `gmake` succeed.
Commits on Dec 20, 2012
  1. Delete view files on database deletion

    rnewson committed Dec 20, 2012
    couch_file:nuke_dir attempts to recurse into subdirectories and delete
    the contents, it does so when couch_file:delete returns {error,
    eperm}. Unfortunately, the subdirectory has been renamed to a random
    uuid before returning, and so the recursive call gets {error, enoent}
    from list:dir(Path) where Path is the original (non-existent)
    subdirectory path.
    View files are not currently deleted when a database is because of
    this (this happened since 1.2.0, no release is broken) because the
    view engine rewrite added a further directory level called 'mrview'.
    This patch modifies nuke_dir to depth-first, solving the issue.
  2. Export handle_file_req

    rnewson committed Dec 20, 2012
  3. Fix unused variable warnings

    rnewson committed Dec 20, 2012
Commits on Dec 19, 2012
  1. Ignore multipart epilogue

    rnewson committed Dec 19, 2012
  2. Improve script url validation

    rnewson committed Dec 18, 2012
Commits on Dec 14, 2012
  1. Remove extraneous ETag warning during compilation

    Benoit Chesneau committed with dch Dec 4, 2012
  2. Use non-compressed Content-Type in attachments test suites

    dch committed Jan 15, 2012
    MD5-Digests of attachments are calculated on the compressed data if the
    attachment MIME type is compressible, as defined in default.ini
    [attachments] compressible_types
    Windows uses a different gzip implementation, and therefore generates
    different MD5-Digests than other platforms. Using binary Content-Type
    resolves this.
Commits on Dec 11, 2012
  1. Add docs and search links into Futon

    nslater committed with dch Dec 3, 2012
  2. Integrate Sphinx into autotools

    nslater committed with dch Dec 3, 2012
    Integrate Sphinx into autotools
    - Remove M4 macros and require as external dependencies instead
    - Skip help2man generation if help2man is not installed
    - ensure THANKS file is only updated during make distcheck
    - Add TexInfo, PDF, HTML doc targets via Sphinx
    - Add licenses and header compliance checking
    - support optional builds of PDF, HTML, texinfo via Sphinx and pdflatex
    - support skipping docs or compiler tests for happy developers
    Travis: clean up package dependencies
    - include sphinx via aptitude
    - use spidermonkey 1.8.5 instead of default libmozjs
    - include latex components for building PDFs
  3. Transmogrify Couchbase XML to .rst and support Sphinx

    dch committed Dec 3, 2012
    Alexander Shorin <>
    Dave Cottlehuber <>
    Dirkjan Ochtman <>
    Robert Newson <>
    Tady Walsh for the spiffy logo
    Robert Newson:
    - hear no eval, see no eval, speak no eval
    - fix minor niggles
    Dave Cottlehuber:
    - Remove vestiges of svn URLs in comments
    - Add browser EventSource protocol support for changes feed
    - Add all UUID algorithms including new utc+suffix-based UUID scheme
    - refactor 1.1.x features and other into 1.2.0 docs
    - remove manual.rst & release.rst files, only used during migration
    - prepare to be run from share/Makefile similar to:
        sphinx-build -a -E -W -n \
        -D version='$ver' \
        -D release='$ver-git-sha' \
        -D project='Apache CouchDB' \
        -D copyright='$year, Apache Software Foundation' \
        -c `pwd` \
        -d /tmp/ \
        rst/ \
    - set sphinx config:
    - update copyright & project
    - set default syntax highlighting to JSON
    - output docs to share/docs/manual
    - move into share/docs/rst
    - move old 1.1 .rst updates into main area
    - add release.rst for future release notes
    - swap specific versions and releases for sphinx variables
    Transmogrify XML to rst using pandoc
        pandoc --smart --preserve-tabs --normalize --reference-links --chapters \
          --number-sections --standalone --from docbook --to rst --output
        rst/manual.rst couchdb-manual-1.1/*.xml
        pandoc --smart --preserve-tabs --normalize --reference-links --chapters \
          --number-sections --standalone --from docbook --to rst --output
        rst/release.rst couchdb-release-1.1/*.xml
        rm -rf share/docs
    Alexander Shorin:
    - Convert CHANGES file to rst, update information about 1.3.0 release.
    - Actual till #fb670f5712 commit at 2012-12-02.
    - Enable extlink extension. Setup extlink to CouchDB JIRA and Apache Git commits.
    - Enable sections enumeration. Looks nicer for further referencing.
    - Fix copy-paste typo, remove changes history for request object
    - Add article about queryservers: JavaScript and Erlang one
    - Complete article about how to write design documents
    - Shift filter functions from changes and point to ddocs
    - Add response object and view head info structure
    - Add query server and CommonJS
    - Fix markup of errors section
    - Fix caution blocks
    - Add back JSON structure reference
    - Clarify what kind of contents should go in views
    - Add back configuration option reference
    - Add TODO.txt for future reference
    - Add tables to start of API reference sections (except for design docs)
    - Fix indentation
    - Add syntax highlighting
    - Add to-do statements
    - Fix weird `_` escaping
    - Wrap statements
    - Add method descriptions
    - Clean up tables
    - Add missed `PUT /db/_revs_limit` description
    Dirkjan Ochtman:
    - Move .rst files into Sphinx Layout
    - Move rst files and copy images into a Sphinx project
    - Split manual & release docs into smaller pieces
    - Update version numbers
    - Move API docs into separate directory
  4. import Couchbase docs

    dch committed Dec 3, 2012
    git clone git://
    cd couchdb-docs
    rm -rf DocKit Makefile Makefile.bootstrap common couchdb-manual-1.1 couchdb-release-1.1 metadocs
    git checkout 9fc95b422060d020ba25f559e893fc7fb98c9a15 -- 'couchdb-manual-1.1/*.xml' 'couchdb-release-1.1/*.xml'
    tar cvzf couchdb-docs.tar.gz couchdb-manual-1.1 couchdb-release-1.1
Commits on Dec 5, 2012
  1. Close view files cleanly on DB create/delete

    kocolosk committed Dec 2, 2012
    The shutdown_sync was actually interfering with a clean shutdown
    initiated by the index processes themselves when they received a 'DOWN'
    message from their monitoring of the DB process.  The explicit 'delete'
    cast message in this patch is very probably redundant, but it makes the
    intent clear.  The important bit is to let the index process terminate
    *and* get confirmation of the termination before attempting to nuke the
  2. Require Erlang R13B04 or later

    janl committed Dec 5, 2012
  3. fix whitespace

    janl committed Dec 5, 2012
  4. Experimental support for Cross-Origin Resource Sharing (CORS).

    janl committed Dec 5, 2012
    Closes COUCHDB-431
    Patch by:
     - Dale Harvey
     - Benoit Chesneau
     - Jan Lehnardt
     - Robert Newson
    See `etc/couchdb/` for configuration examples.
Commits on Dec 4, 2012
  1. COUCHDB-1622 ensure that Windows batch file uses same VM flags as the…

    dch committed Dec 2, 2012
    … service and UNIX
  2. Don't eat custom ERL_LIBS.

    janl committed Dec 4, 2012
    Patch by Volker Mische.
    Closes COUCHDB-1621
Commits on Dec 1, 2012
  1. Make dependency on unistd.h specific to HAVE_CURL instead in the whol…

    dch committed Dec 1, 2012
    …e file
    - introduced in COUCHDB-1338
    - allows building cleanly on Windows without cURL
  2. Deprecate E4X

    janl committed Dec 1, 2012
  3. fix formatting in NEWS

    janl committed Dec 1, 2012
Commits on Nov 28, 2012
  1. COUCHDB-430,514,764 Fix list HTTP header handling.

    calebcase committed with dch Apr 15, 2012
    Currently calls to getRow() cause the HTTP headers to be sent immediately back
    to the client. This happens even if an error is thrown after the getRow(), but
    before any send(...) or start(...). Worse, if a list throws an exception an
    extra, invalid header is sent to the client (resulting in various bad
    Erlang list handling will now wait until data has been sent BEFORE sending the
    HTTP headers to the client. If an error is reported it will result in an HTTP
    error code as expected. This does not change the behavior of errors thrown
    AFTER data has been sent: They will still result in an HTTP 200 even if an
    error is reported.
    The line protocol between Erlang and os processes has been extended to support
    an optional Header field on "chunks" and "end". The javascript list handling
    has been updated to use this if a new header is set via start(...). This makes
    it possible to begin processing with getRow(), but later reset the headers via
    start(...). Again, if data has been sent(...) the new headers will NOT take
Commits on Nov 21, 2012
  1. test for 1608

    rnewson committed Nov 21, 2012