Merge lp:~jderose/ubuntu/utopic/couchdb/1.6.0 into lp:ubuntu/utopic/couchdb

Proposed by Jason Gerard DeRose
Status: Merged
Merge reported by: Martin Pitt
Merged at revision: not available
Proposed branch: lp:~jderose/ubuntu/utopic/couchdb/1.6.0
Merge into: lp:ubuntu/utopic/couchdb
Diff against target: 168658 lines (+100640/-38497)
579 files modified
.pc/.quilt_patches (+0/-1)
.pc/.quilt_series (+0/-1)
.pc/.version (+0/-1)
AUTHORS (+5/-1)
INSTALL.Unix (+59/-40)
INSTALL.Windows (+1/-1)
LICENSE (+259/-76)
Makefile.am (+2/-1)
Makefile.in (+2/-1)
NOTICE (+9/-13)
THANKS (+23/-7)
Vagrantfile (+69/-0)
acinclude.m4 (+1/-1)
aclocal.m4 (+21/-2)
bin/couchdb.1 (+1/-1)
bin/couchdb.tpl.in (+7/-0)
build-aux/config.guess (+61/-32)
build-aux/config.sub (+21/-17)
configure (+104/-21)
configure.ac (+12/-8)
debian/changelog (+7/-0)
debian/control (+1/-1)
etc/couchdb/default.ini.tpl.in (+7/-0)
license.skip (+32/-10)
share/Makefile.am (+5/-0)
share/Makefile.in (+5/-0)
share/doc/build/Makefile.am (+6/-2)
share/doc/build/Makefile.in (+6/-2)
share/doc/build/html/_sources/api/database/bulk-api.txt (+184/-137)
share/doc/build/html/_sources/api/database/changes.txt (+27/-9)
share/doc/build/html/_sources/api/database/common.txt (+16/-3)
share/doc/build/html/_sources/api/database/compact.txt (+5/-1)
share/doc/build/html/_sources/api/database/index.txt (+8/-8)
share/doc/build/html/_sources/api/database/misc.txt (+17/-5)
share/doc/build/html/_sources/api/database/security.txt (+2/-0)
share/doc/build/html/_sources/api/database/temp-views.txt (+1/-0)
share/doc/build/html/_sources/api/ddoc/common.txt (+14/-4)
share/doc/build/html/_sources/api/ddoc/index.txt (+3/-3)
share/doc/build/html/_sources/api/ddoc/render.txt (+11/-1)
share/doc/build/html/_sources/api/ddoc/rewrites.txt (+10/-9)
share/doc/build/html/_sources/api/ddoc/views.txt (+115/-97)
share/doc/build/html/_sources/api/document/attachments.txt (+4/-0)
share/doc/build/html/_sources/api/document/common.txt (+49/-21)
share/doc/build/html/_sources/api/document/index.txt (+4/-5)
share/doc/build/html/_sources/api/local.txt (+7/-3)
share/doc/build/html/_sources/api/server/authn.txt (+9/-7)
share/doc/build/html/_sources/api/server/common.txt (+17/-1)
share/doc/build/html/_sources/api/server/configuration.txt (+11/-7)
share/doc/build/html/_sources/api/server/index.txt (+3/-3)
share/doc/build/html/_sources/config/auth.txt (+24/-0)
share/doc/build/html/_sources/config/http.txt (+1/-1)
share/doc/build/html/_sources/config/intro.txt (+21/-12)
share/doc/build/html/_sources/config/misc.txt (+11/-0)
share/doc/build/html/_sources/config/query-servers.txt (+1/-1)
share/doc/build/html/_sources/config/replicator.txt (+33/-0)
share/doc/build/html/_sources/couchapp/ddocs.txt (+52/-43)
share/doc/build/html/_sources/couchapp/views/collation.txt (+11/-6)
share/doc/build/html/_sources/couchapp/views/nosql.txt (+2/-2)
share/doc/build/html/_sources/couchapp/views/pagination.txt (+16/-34)
share/doc/build/html/_sources/install/freebsd.txt (+1/-1)
share/doc/build/html/_sources/install/mac.txt (+1/-1)
share/doc/build/html/_sources/install/unix.txt (+13/-10)
share/doc/build/html/_sources/install/windows.txt (+1/-1)
share/doc/build/html/_sources/intro/api.txt (+13/-13)
share/doc/build/html/_sources/intro/consistency.txt (+2/-2)
share/doc/build/html/_sources/intro/overview.txt (+12/-11)
share/doc/build/html/_sources/intro/security.txt (+12/-12)
share/doc/build/html/_sources/intro/tour.txt (+7/-7)
share/doc/build/html/_sources/intro/why.txt (+8/-8)
share/doc/build/html/_sources/json-structure.txt (+49/-44)
share/doc/build/html/_sources/maintenance/compaction.txt (+2/-2)
share/doc/build/html/_sources/query-server/javascript.txt (+5/-5)
share/doc/build/html/_sources/query-server/protocol.txt (+2/-2)
share/doc/build/html/_sources/replication/protocol.txt (+3/-3)
share/doc/build/html/_sources/replication/replicator.txt (+34/-12)
share/doc/build/html/_sources/whatsnew/1.3.txt (+4/-0)
share/doc/build/html/_sources/whatsnew/1.4.txt (+4/-0)
share/doc/build/html/_sources/whatsnew/1.5.txt (+14/-0)
share/doc/build/html/_sources/whatsnew/1.6.txt (+86/-0)
share/doc/build/html/_sources/whatsnew/index.txt (+1/-0)
share/doc/build/html/_static/rtd.css (+3/-3)
share/doc/build/html/about.html (+28/-13)
share/doc/build/html/api/basics.html (+28/-13)
share/doc/build/html/api/database/bulk-api.html (+206/-143)
share/doc/build/html/api/database/changes.html (+58/-25)
share/doc/build/html/api/database/common.html (+53/-30)
share/doc/build/html/api/database/compact.html (+37/-22)
share/doc/build/html/api/database/index.html (+33/-18)
share/doc/build/html/api/database/misc.html (+53/-31)
share/doc/build/html/api/database/security.html (+32/-17)
share/doc/build/html/api/database/temp-views.html (+29/-14)
share/doc/build/html/api/ddoc/common.html (+65/-50)
share/doc/build/html/api/ddoc/index.html (+26/-11)
share/doc/build/html/api/ddoc/render.html (+47/-32)
share/doc/build/html/api/ddoc/rewrites.html (+40/-25)
share/doc/build/html/api/ddoc/views.html (+54/-22)
share/doc/build/html/api/document/attachments.html (+42/-27)
share/doc/build/html/api/document/common.html (+116/-69)
share/doc/build/html/api/document/index.html (+27/-13)
share/doc/build/html/api/index.html (+31/-16)
share/doc/build/html/api/local.html (+39/-24)
share/doc/build/html/api/server/authn.html (+37/-23)
share/doc/build/html/api/server/common.html (+39/-21)
share/doc/build/html/api/server/configuration.html (+48/-34)
share/doc/build/html/api/server/index.html (+29/-14)
share/doc/build/html/config-ref.html (+48/-8)
share/doc/build/html/config/auth.html (+50/-9)
share/doc/build/html/config/compaction.html (+25/-10)
share/doc/build/html/config/couchdb.html (+24/-9)
share/doc/build/html/config/externals.html (+24/-9)
share/doc/build/html/config/http-handlers.html (+24/-9)
share/doc/build/html/config/http.html (+25/-10)
share/doc/build/html/config/index.html (+24/-9)
share/doc/build/html/config/intro.html (+46/-21)
share/doc/build/html/config/logging.html (+24/-9)
share/doc/build/html/config/misc.html (+37/-9)
share/doc/build/html/config/proxying.html (+24/-9)
share/doc/build/html/config/query-servers.html (+25/-10)
share/doc/build/html/config/replicator.html (+64/-9)
share/doc/build/html/config/services.html (+24/-9)
share/doc/build/html/contents.html (+105/-78)
share/doc/build/html/contributing.html (+23/-8)
share/doc/build/html/couchapp/ddocs.html (+74/-50)
share/doc/build/html/couchapp/index.html (+24/-9)
share/doc/build/html/couchapp/views/collation.html (+34/-15)
share/doc/build/html/couchapp/views/index.html (+26/-14)
share/doc/build/html/couchapp/views/intro.html (+24/-9)
share/doc/build/html/couchapp/views/joins.html (+24/-9)
share/doc/build/html/couchapp/views/nosql.html (+26/-11)
share/doc/build/html/couchapp/views/pagination.html (+41/-45)
share/doc/build/html/cve/2010-0009.html (+24/-9)
share/doc/build/html/cve/2010-2234.html (+24/-9)
share/doc/build/html/cve/2010-3854.html (+24/-9)
share/doc/build/html/cve/2012-5641.html (+24/-9)
share/doc/build/html/cve/2012-5649.html (+24/-9)
share/doc/build/html/cve/2012-5650.html (+29/-14)
share/doc/build/html/cve/index.html (+29/-13)
share/doc/build/html/download.html (+24/-9)
share/doc/build/html/experimental.html (+23/-8)
share/doc/build/html/externals.html (+23/-8)
share/doc/build/html/fauxton/addons.html (+24/-9)
share/doc/build/html/fauxton/index.html (+24/-9)
share/doc/build/html/fauxton/install.html (+24/-9)
share/doc/build/html/http-api.html (+110/-95)
share/doc/build/html/index.html (+27/-12)
share/doc/build/html/install/freebsd.html (+25/-10)
share/doc/build/html/install/index.html (+24/-9)
share/doc/build/html/install/mac.html (+25/-10)
share/doc/build/html/install/unix.html (+38/-20)
share/doc/build/html/install/windows.html (+25/-10)
share/doc/build/html/intro/api.html (+37/-22)
share/doc/build/html/intro/consistency.html (+26/-11)
share/doc/build/html/intro/curl.html (+24/-9)
share/doc/build/html/intro/futon.html (+24/-9)
share/doc/build/html/intro/index.html (+28/-13)
share/doc/build/html/intro/overview.html (+36/-20)
share/doc/build/html/intro/security.html (+45/-33)
share/doc/build/html/intro/tour.html (+31/-16)
share/doc/build/html/intro/why.html (+32/-17)
share/doc/build/html/json-structure.html (+75/-53)
share/doc/build/html/maintenance/compaction.html (+29/-14)
share/doc/build/html/maintenance/index.html (+24/-9)
share/doc/build/html/maintenance/performance.html (+25/-10)
share/doc/build/html/query-server/erlang.html (+24/-9)
share/doc/build/html/query-server/index.html (+24/-9)
share/doc/build/html/query-server/javascript.html (+29/-14)
share/doc/build/html/query-server/protocol.html (+26/-11)
share/doc/build/html/replication/conflicts.html (+24/-9)
share/doc/build/html/replication/index.html (+24/-9)
share/doc/build/html/replication/intro.html (+25/-10)
share/doc/build/html/replication/protocol.html (+35/-20)
share/doc/build/html/replication/replicator.html (+54/-20)
share/doc/build/html/search.html (+24/-9)
share/doc/build/html/searchindex.js (+1/-1)
share/doc/build/html/whatsnew/0.10.html (+42/-27)
share/doc/build/html/whatsnew/0.11.html (+42/-27)
share/doc/build/html/whatsnew/0.8.html (+34/-19)
share/doc/build/html/whatsnew/0.9.html (+42/-27)
share/doc/build/html/whatsnew/1.0.html (+46/-31)
share/doc/build/html/whatsnew/1.1.html (+42/-27)
share/doc/build/html/whatsnew/1.2.html (+42/-27)
share/doc/build/html/whatsnew/1.3.html (+45/-25)
share/doc/build/html/whatsnew/1.4.html (+43/-23)
share/doc/build/html/whatsnew/1.5.html (+53/-23)
share/doc/build/html/whatsnew/1.6.html (+292/-0)
share/doc/build/html/whatsnew/index.html (+83/-62)
share/doc/build/texinfo/CouchDB.info (+6392/-5737)
share/doc/ext/http-api-descr.json (+0/-79)
share/doc/ext/httpdomain.py (+14/-8)
share/doc/src/api/database/bulk-api.rst (+184/-137)
share/doc/src/api/database/changes.rst (+27/-9)
share/doc/src/api/database/common.rst (+16/-3)
share/doc/src/api/database/compact.rst (+5/-1)
share/doc/src/api/database/index.rst (+8/-8)
share/doc/src/api/database/misc.rst (+17/-5)
share/doc/src/api/database/security.rst (+2/-0)
share/doc/src/api/database/temp-views.rst (+1/-0)
share/doc/src/api/ddoc/common.rst (+14/-4)
share/doc/src/api/ddoc/index.rst (+3/-3)
share/doc/src/api/ddoc/render.rst (+11/-1)
share/doc/src/api/ddoc/rewrites.rst (+10/-9)
share/doc/src/api/ddoc/views.rst (+115/-97)
share/doc/src/api/document/attachments.rst (+4/-0)
share/doc/src/api/document/common.rst (+49/-21)
share/doc/src/api/document/index.rst (+4/-5)
share/doc/src/api/local.rst (+7/-3)
share/doc/src/api/server/authn.rst (+9/-7)
share/doc/src/api/server/common.rst (+17/-1)
share/doc/src/api/server/configuration.rst (+11/-7)
share/doc/src/api/server/index.rst (+3/-3)
share/doc/src/conf.py (+14/-2)
share/doc/src/config/auth.rst (+24/-0)
share/doc/src/config/http.rst (+1/-1)
share/doc/src/config/intro.rst (+21/-12)
share/doc/src/config/misc.rst (+11/-0)
share/doc/src/config/query-servers.rst (+1/-1)
share/doc/src/config/replicator.rst (+33/-0)
share/doc/src/couchapp/ddocs.rst (+52/-43)
share/doc/src/couchapp/views/collation.rst (+11/-6)
share/doc/src/couchapp/views/nosql.rst (+2/-2)
share/doc/src/couchapp/views/pagination.rst (+16/-34)
share/doc/src/cve/2014-2668.rst (+54/-0)
share/doc/src/install/freebsd.rst (+1/-1)
share/doc/src/install/mac.rst (+1/-1)
share/doc/src/install/unix.rst (+13/-10)
share/doc/src/install/windows.rst (+1/-1)
share/doc/src/intro/api.rst (+13/-13)
share/doc/src/intro/consistency.rst (+2/-2)
share/doc/src/intro/overview.rst (+12/-11)
share/doc/src/intro/security.rst (+12/-12)
share/doc/src/intro/tour.rst (+7/-7)
share/doc/src/intro/why.rst (+8/-8)
share/doc/src/json-structure.rst (+49/-44)
share/doc/src/maintenance/compaction.rst (+2/-2)
share/doc/src/query-server/javascript.rst (+5/-5)
share/doc/src/query-server/protocol.rst (+2/-2)
share/doc/src/replication/protocol.rst (+3/-3)
share/doc/src/replication/replicator.rst (+34/-12)
share/doc/src/whatsnew/1.3.rst (+4/-0)
share/doc/src/whatsnew/1.4.rst (+4/-0)
share/doc/src/whatsnew/1.5.rst (+14/-0)
share/doc/src/whatsnew/1.6.rst (+86/-0)
share/doc/src/whatsnew/index.rst (+1/-0)
share/doc/static/rtd.css (+3/-3)
share/doc/templates/help.html (+2/-2)
share/doc/templates/searchbox.html (+2/-2)
share/doc/templates/tracking.html (+30/-0)
share/www/fauxton/css/index.css (+2/-2)
share/www/fauxton/js/ace/mode-javascript.js (+886/-0)
share/www/fauxton/js/ace/mode-json.js (+578/-0)
share/www/fauxton/js/ace/theme-crimson_editor.js (+148/-0)
share/www/fauxton/js/ace/worker-javascript.js (+10088/-0)
share/www/fauxton/js/ace/worker-json.js (+2271/-0)
share/www/fauxton/js/require.js (+35/-27)
share/www/script/couch_test_runner.js (+1/-3)
share/www/script/futon.browse.js (+1/-1)
share/www/script/futon.js (+2/-2)
share/www/script/jquery.couch.js (+131/-131)
share/www/script/test/attachment_views.js (+48/-6)
share/www/script/test/auth_cache.js (+2/-10)
share/www/script/test/basics.js (+1/-1)
share/www/script/test/changes.js (+68/-0)
share/www/script/test/cookie_auth.js (+5/-6)
share/www/script/test/replicator_db_invalid_filter.js (+4/-0)
share/www/script/test/rewrite.js (+11/-0)
share/www/script/test/users_db_security.js (+59/-2)
share/www/script/test/uuids.js (+4/-0)
src/Makefile.am (+127/-64)
src/Makefile.in (+127/-64)
src/couch_dbupdates/src/couch_dbupdates_httpd.erl (+2/-2)
src/couch_index/src/couch_index_updater.erl (+1/-1)
src/couch_mrview/include/couch_mrview.hrl (+1/-0)
src/couch_mrview/src/couch_mrview_http.erl (+16/-0)
src/couch_mrview/src/couch_mrview_util.erl (+21/-26)
src/couch_plugins/README.md (+5/-32)
src/couch_plugins/src/couch_plugins.erl (+0/-40)
src/couch_replicator/Makefile.am (+2/-1)
src/couch_replicator/Makefile.in (+2/-1)
src/couch_replicator/src/couch_replicator.erl (+19/-9)
src/couch_replicator/src/couch_replicator_api_wrap.erl (+29/-11)
src/couch_replicator/src/couch_replicator_manager.erl (+8/-2)
src/couch_replicator/src/couch_replicator_utils.erl (+12/-3)
src/couch_replicator/test/04-replication-large-atts.t (+2/-2)
src/couch_replicator/test/07-use-checkpoints.t (+273/-0)
src/couchdb/couch_changes.erl (+13/-3)
src/couchdb/couch_db.hrl (+2/-0)
src/couchdb/couch_db_updater.erl (+13/-8)
src/couchdb/couch_doc.erl (+3/-0)
src/couchdb/couch_httpd.erl (+64/-80)
src/couchdb/couch_httpd_auth.erl (+50/-10)
src/couchdb/couch_httpd_cors.erl (+5/-3)
src/couchdb/couch_httpd_db.erl (+7/-1)
src/couchdb/couch_httpd_misc_handlers.erl (+5/-0)
src/couchdb/couch_httpd_oauth.erl (+2/-1)
src/couchdb/couch_httpd_rewrite.erl (+27/-31)
src/couchdb/couch_httpd_stats_handlers.erl (+1/-1)
src/couchdb/couch_js_functions.hrl (+9/-0)
src/couchdb/couch_passwords.erl (+11/-4)
src/couchdb/couch_util.erl (+32/-0)
src/couchdb/priv/Makefile.am (+2/-0)
src/couchdb/priv/Makefile.in (+158/-105)
src/couchdb/priv/couchjs.1 (+1/-1)
src/ejson/Makefile.am (+2/-0)
src/ejson/Makefile.in (+111/-68)
src/fauxton/CONTRIBUTING.md (+22/-0)
src/fauxton/Gruntfile.js (+72/-44)
src/fauxton/app/addons/activetasks/assets/less/activetasks.less (+14/-4)
src/fauxton/app/addons/activetasks/resources.js (+13/-3)
src/fauxton/app/addons/activetasks/routes.js (+4/-4)
src/fauxton/app/addons/activetasks/templates/table.html (+1/-1)
src/fauxton/app/addons/activetasks/templates/tabledetail.html (+0/-4)
src/fauxton/app/addons/activetasks/tests/viewsSpec.js (+0/-3)
src/fauxton/app/addons/activetasks/views.js (+22/-6)
src/fauxton/app/addons/auth/assets/less/auth.less (+14/-3)
src/fauxton/app/addons/auth/base.js (+5/-1)
src/fauxton/app/addons/auth/resources.js (+61/-44)
src/fauxton/app/addons/auth/routes.js (+11/-2)
src/fauxton/app/addons/auth/templates/create_admin.html (+11/-12)
src/fauxton/app/addons/auth/templates/login.html (+1/-1)
src/fauxton/app/addons/auth/templates/nav_dropdown.html (+1/-1)
src/fauxton/app/addons/auth/templates/nav_link_title.html (+13/-3)
src/fauxton/app/addons/auth/templates/noAccess.html (+3/-1)
src/fauxton/app/addons/auth/test/baseSpec.js (+34/-0)
src/fauxton/app/addons/compaction/assets/less/compaction.less (+19/-0)
src/fauxton/app/addons/compaction/base.js (+31/-0)
src/fauxton/app/addons/compaction/resources.js (+48/-0)
src/fauxton/app/addons/compaction/routes.js (+65/-0)
src/fauxton/app/addons/compaction/templates/compact_view.html (+14/-0)
src/fauxton/app/addons/compaction/templates/layout.html (+28/-0)
src/fauxton/app/addons/compaction/views.js (+139/-0)
src/fauxton/app/addons/config/assets/less/config.less (+47/-0)
src/fauxton/app/addons/config/base.js (+4/-2)
src/fauxton/app/addons/config/resources.js (+10/-102)
src/fauxton/app/addons/config/routes.js (+5/-5)
src/fauxton/app/addons/config/templates/dashboard.html (+9/-30)
src/fauxton/app/addons/config/templates/item.html (+22/-13)
src/fauxton/app/addons/config/templates/modal.html (+33/-0)
src/fauxton/app/addons/config/tests/resourcesSpec.js (+97/-0)
src/fauxton/app/addons/config/views.js (+248/-0)
src/fauxton/app/addons/databases/assets/less/databases.less (+34/-0)
src/fauxton/app/addons/databases/base.js (+37/-0)
src/fauxton/app/addons/databases/resources.js (+207/-0)
src/fauxton/app/addons/databases/routes.js (+69/-0)
src/fauxton/app/addons/databases/templates/item.html (+30/-0)
src/fauxton/app/addons/databases/templates/list.html (+37/-0)
src/fauxton/app/addons/databases/templates/newdatabase.html (+16/-0)
src/fauxton/app/addons/databases/templates/sidebar.html (+31/-0)
src/fauxton/app/addons/databases/tests/resourcesSpec.js (+39/-0)
src/fauxton/app/addons/databases/views.js (+259/-0)
src/fauxton/app/addons/documents/assets/less/documents.less (+134/-0)
src/fauxton/app/addons/documents/base.js (+24/-0)
src/fauxton/app/addons/documents/resources.js (+588/-0)
src/fauxton/app/addons/documents/routes.js (+505/-0)
src/fauxton/app/addons/documents/templates/advanced_options.html (+132/-0)
src/fauxton/app/addons/documents/templates/all_docs_item.html (+26/-0)
src/fauxton/app/addons/documents/templates/all_docs_layout.html (+21/-0)
src/fauxton/app/addons/documents/templates/all_docs_list.html (+44/-0)
src/fauxton/app/addons/documents/templates/all_docs_number.html (+35/-0)
src/fauxton/app/addons/documents/templates/changes.html (+68/-0)
src/fauxton/app/addons/documents/templates/ddoc_info.html (+28/-0)
src/fauxton/app/addons/documents/templates/delete_database_modal.html (+39/-0)
src/fauxton/app/addons/documents/templates/design_doc_selector.html (+35/-0)
src/fauxton/app/addons/documents/templates/doc.html (+55/-0)
src/fauxton/app/addons/documents/templates/doc_field_editor.html (+74/-0)
src/fauxton/app/addons/documents/templates/doc_field_editor_tabs.html (+19/-0)
src/fauxton/app/addons/documents/templates/duplicate_doc_modal.html (+36/-0)
src/fauxton/app/addons/documents/templates/edit_tools.html (+44/-0)
src/fauxton/app/addons/documents/templates/index_menu_item.html (+17/-0)
src/fauxton/app/addons/documents/templates/index_row_docular.html (+29/-0)
src/fauxton/app/addons/documents/templates/index_row_tabular.html (+25/-0)
src/fauxton/app/addons/documents/templates/jumpdoc.html (+20/-0)
src/fauxton/app/addons/documents/templates/search.html (+15/-0)
src/fauxton/app/addons/documents/templates/sidebar.html (+68/-0)
src/fauxton/app/addons/documents/templates/upload_modal.html (+42/-0)
src/fauxton/app/addons/documents/templates/view_editor.html (+91/-0)
src/fauxton/app/addons/documents/tests/resourcesSpec.js (+57/-0)
src/fauxton/app/addons/documents/views.js (+1989/-0)
src/fauxton/app/addons/fauxton/base.js (+345/-0)
src/fauxton/app/addons/fauxton/components.js (+554/-0)
src/fauxton/app/addons/fauxton/resizeColumns.js (+88/-0)
src/fauxton/app/addons/fauxton/templates/api_bar.html (+30/-0)
src/fauxton/app/addons/fauxton/templates/breadcrumbs.html (+24/-0)
src/fauxton/app/addons/fauxton/templates/footer.html (+15/-0)
src/fauxton/app/addons/fauxton/templates/index_pagination.html (+24/-0)
src/fauxton/app/addons/fauxton/templates/nav_bar.html (+75/-0)
src/fauxton/app/addons/fauxton/templates/notification.html (+18/-0)
src/fauxton/app/addons/fauxton/templates/pagination.html (+31/-0)
src/fauxton/app/addons/fauxton/tests/baseSpec.js (+79/-0)
src/fauxton/app/addons/fauxton/tests/navbarSpec.js (+107/-0)
src/fauxton/app/addons/fauxton/tests/paginateSpec.js (+87/-0)
src/fauxton/app/addons/logs/assets/less/logs.less (+24/-0)
src/fauxton/app/addons/logs/resources.js (+10/-9)
src/fauxton/app/addons/logs/routes.js (+1/-1)
src/fauxton/app/addons/logs/templates/dashboard.html (+1/-1)
src/fauxton/app/addons/logs/templates/filterItem.html (+1/-1)
src/fauxton/app/addons/logs/templates/sidebar.html (+1/-1)
src/fauxton/app/addons/logs/tests/baseSpec.js (+38/-0)
src/fauxton/app/addons/logs/tests/logSpec.js (+0/-38)
src/fauxton/app/addons/logs/tests/resourcesSpec.js (+38/-0)
src/fauxton/app/addons/permissions/assets/less/permissions.less (+23/-28)
src/fauxton/app/addons/permissions/resources.js (+1/-1)
src/fauxton/app/addons/permissions/routes.js (+1/-2)
src/fauxton/app/addons/permissions/templates/item.html (+1/-1)
src/fauxton/app/addons/permissions/templates/section.html (+5/-5)
src/fauxton/app/addons/permissions/tests/viewsSpec.js (+1/-1)
src/fauxton/app/addons/permissions/views.js (+1/-1)
src/fauxton/app/addons/pouchdb/base.js (+58/-0)
src/fauxton/app/addons/pouchdb/pouch.collate.js (+115/-0)
src/fauxton/app/addons/pouchdb/pouchdb.mapreduce.js (+324/-0)
src/fauxton/app/addons/replication/assets/less/replication.less (+174/-182)
src/fauxton/app/addons/replication/resources.js (+1/-0)
src/fauxton/app/addons/replication/route.js (+2/-1)
src/fauxton/app/addons/replication/templates/form.html (+1/-1)
src/fauxton/app/addons/replication/templates/progress.html (+2/-2)
src/fauxton/app/addons/replication/views.js (+4/-2)
src/fauxton/app/addons/stats/assets/less/stats.less (+17/-17)
src/fauxton/app/addons/stats/resources.js (+3/-2)
src/fauxton/app/addons/stats/routes.js (+3/-1)
src/fauxton/app/addons/stats/templates/pie_table.html (+2/-4)
src/fauxton/app/addons/stats/views.js (+5/-5)
src/fauxton/app/addons/styletests/base.js (+33/-0)
src/fauxton/app/addons/styletests/resources.js (+22/-0)
src/fauxton/app/addons/styletests/routes.js (+40/-0)
src/fauxton/app/addons/styletests/templates/theme.html (+497/-0)
src/fauxton/app/addons/styletests/views.js (+29/-0)
src/fauxton/app/addons/verifyinstall/assets/less/verifyinstall.less (+16/-0)
src/fauxton/app/addons/verifyinstall/base.js (+31/-0)
src/fauxton/app/addons/verifyinstall/resources.js (+176/-0)
src/fauxton/app/addons/verifyinstall/routes.js (+37/-0)
src/fauxton/app/addons/verifyinstall/templates/main.html (+50/-0)
src/fauxton/app/addons/verifyinstall/views.js (+127/-0)
src/fauxton/app/api.js (+0/-453)
src/fauxton/app/app.js (+54/-24)
src/fauxton/app/config.js (+21/-19)
src/fauxton/app/core/api.js (+53/-0)
src/fauxton/app/core/auth.js (+65/-0)
src/fauxton/app/core/base.js (+145/-0)
src/fauxton/app/core/couchdbSession.js (+60/-0)
src/fauxton/app/core/layout.js (+91/-0)
src/fauxton/app/core/routeObject.js (+297/-0)
src/fauxton/app/core/router.js (+113/-0)
src/fauxton/app/core/tests/layoutSpec.js (+92/-0)
src/fauxton/app/core/tests/routeObjectSpec.js (+96/-0)
src/fauxton/app/core/utils.js (+94/-0)
src/fauxton/app/helpers.js (+22/-10)
src/fauxton/app/initialize.js (+0/-65)
src/fauxton/app/initialize.js.underscore (+33/-0)
src/fauxton/app/main.js (+20/-11)
src/fauxton/app/mixins.js (+0/-56)
src/fauxton/app/modules/databases/base.js (+0/-36)
src/fauxton/app/modules/databases/resources.js (+0/-157)
src/fauxton/app/modules/databases/routes.js (+0/-82)
src/fauxton/app/modules/databases/views.js (+0/-225)
src/fauxton/app/modules/documents/base.js (+0/-24)
src/fauxton/app/modules/documents/resources.js (+0/-546)
src/fauxton/app/modules/documents/routes.js (+0/-399)
src/fauxton/app/modules/documents/tests/resourcesSpec.js (+0/-84)
src/fauxton/app/modules/documents/views.js (+0/-1560)
src/fauxton/app/modules/fauxton/base.js (+0/-265)
src/fauxton/app/modules/fauxton/components.js (+0/-173)
src/fauxton/app/modules/fauxton/layout.js (+0/-98)
src/fauxton/app/modules/pouchdb/base.js (+0/-60)
src/fauxton/app/modules/pouchdb/pouch.collate.js (+0/-115)
src/fauxton/app/modules/pouchdb/pouchdb.mapreduce.js (+0/-324)
src/fauxton/app/resizeColumns.js (+0/-87)
src/fauxton/app/router.js (+0/-150)
src/fauxton/app/templates/databases/item.html (+0/-23)
src/fauxton/app/templates/databases/list.html (+0/-34)
src/fauxton/app/templates/databases/newdatabase.html (+0/-17)
src/fauxton/app/templates/databases/sidebar.html (+0/-31)
src/fauxton/app/templates/documents/all_docs_item.html (+0/-26)
src/fauxton/app/templates/documents/all_docs_list.html (+0/-50)
src/fauxton/app/templates/documents/changes.html (+0/-38)
src/fauxton/app/templates/documents/ddoc_info.html (+0/-28)
src/fauxton/app/templates/documents/doc.html (+0/-50)
src/fauxton/app/templates/documents/doc_field_editor.html (+0/-74)
src/fauxton/app/templates/documents/doc_field_editor_tabs.html (+0/-19)
src/fauxton/app/templates/documents/duplicate_doc_modal.html (+0/-36)
src/fauxton/app/templates/documents/edit_tools.html (+0/-44)
src/fauxton/app/templates/documents/index_menu_item.html (+0/-17)
src/fauxton/app/templates/documents/index_row_docular.html (+0/-26)
src/fauxton/app/templates/documents/index_row_tabular.html (+0/-25)
src/fauxton/app/templates/documents/jumpdoc.html (+0/-20)
src/fauxton/app/templates/documents/search.html (+0/-15)
src/fauxton/app/templates/documents/sidebar.html (+0/-65)
src/fauxton/app/templates/documents/tabs.html (+0/-39)
src/fauxton/app/templates/documents/upload_modal.html (+0/-42)
src/fauxton/app/templates/documents/view_editor.html (+0/-187)
src/fauxton/app/templates/fauxton/api_bar.html (+0/-30)
src/fauxton/app/templates/fauxton/breadcrumbs.html (+0/-24)
src/fauxton/app/templates/fauxton/footer.html (+0/-15)
src/fauxton/app/templates/fauxton/index_pagination.html (+0/-24)
src/fauxton/app/templates/fauxton/nav_bar.html (+0/-67)
src/fauxton/app/templates/fauxton/notification.html (+0/-18)
src/fauxton/app/templates/fauxton/pagination.html (+0/-31)
src/fauxton/app/templates/layouts/login_pane.html (+0/-17)
src/fauxton/app/templates/layouts/with_right_sidebar.html (+0/-26)
src/fauxton/assets/css/codemirror.css (+0/-176)
src/fauxton/assets/css/nv.d3.css (+154/-41)
src/fauxton/assets/index.underscore (+2/-2)
src/fauxton/assets/js/libs/ace/ace.js (+16541/-0)
src/fauxton/assets/js/libs/ace/ext-chromevox.js (+537/-0)
src/fauxton/assets/js/libs/ace/ext-elastic_tabstops_lite.js (+301/-0)
src/fauxton/assets/js/libs/ace/ext-emmet.js (+1096/-0)
src/fauxton/assets/js/libs/ace/ext-keybinding_menu.js (+207/-0)
src/fauxton/assets/js/libs/ace/ext-language_tools.js (+1615/-0)
src/fauxton/assets/js/libs/ace/ext-modelist.js (+166/-0)
src/fauxton/assets/js/libs/ace/ext-old_ie.js (+499/-0)
src/fauxton/assets/js/libs/ace/ext-options.js (+252/-0)
src/fauxton/assets/js/libs/ace/ext-searchbox.js (+420/-0)
src/fauxton/assets/js/libs/ace/ext-settings_menu.js (+634/-0)
src/fauxton/assets/js/libs/ace/ext-spellcheck.js (+68/-0)
src/fauxton/assets/js/libs/ace/ext-split.js (+271/-0)
src/fauxton/assets/js/libs/ace/ext-static_highlight.js (+165/-0)
src/fauxton/assets/js/libs/ace/ext-statusbar.js (+47/-0)
src/fauxton/assets/js/libs/ace/ext-textarea.js (+478/-0)
src/fauxton/assets/js/libs/ace/ext-themelist.js (+90/-0)
src/fauxton/assets/js/libs/ace/ext-whitespace.js (+206/-0)
src/fauxton/assets/js/libs/ace/mode-javascript.js (+886/-0)
src/fauxton/assets/js/libs/ace/mode-json.js (+578/-0)
src/fauxton/assets/js/libs/ace/mode-jsoniq.js (+2714/-0)
src/fauxton/assets/js/libs/ace/snippets/javascript.js (+202/-0)
src/fauxton/assets/js/libs/ace/snippets/json.js (+7/-0)
src/fauxton/assets/js/libs/ace/snippets/jsoniq.js (+7/-0)
src/fauxton/assets/js/libs/ace/theme-crimson_editor.js (+148/-0)
src/fauxton/assets/js/libs/ace/worker-javascript.js (+10088/-0)
src/fauxton/assets/js/libs/ace/worker-json.js (+2271/-0)
src/fauxton/assets/js/libs/backbone.js (+143/-131)
src/fauxton/assets/js/libs/codemirror.js (+0/-3193)
src/fauxton/assets/js/libs/d3.js (+8101/-5852)
src/fauxton/assets/js/libs/jquery.js (+4599/-4051)
src/fauxton/assets/js/libs/jshint.js (+0/-4529)
src/fauxton/assets/js/libs/nv.d3.js (+2906/-1651)
src/fauxton/assets/js/plugins/backbone.layoutmanager.js (+199/-219)
src/fauxton/assets/js/plugins/beautify.js (+1630/-0)
src/fauxton/assets/js/plugins/cloudant.pagingcollection.js (+224/-0)
src/fauxton/assets/js/plugins/codemirror-javascript.js (+0/-361)
src/fauxton/assets/js/plugins/zeroclipboard/ZeroClipboard.js (+1031/-0)
src/fauxton/assets/less/bootstrap/bootstrap.less (+0/-1)
src/fauxton/assets/less/bootstrap/modals.less (+1/-1)
src/fauxton/assets/less/config.less (+0/-46)
src/fauxton/assets/less/database.less (+0/-238)
src/fauxton/assets/less/fauxton.less (+281/-392)
src/fauxton/assets/less/icons.less (+12/-0)
src/fauxton/assets/less/logs.less (+0/-24)
src/fauxton/assets/less/prettyprint.less (+5/-16)
src/fauxton/assets/less/variables.less (+2/-0)
src/fauxton/couchapp.js (+12/-0)
src/fauxton/extensions.md (+17/-0)
src/fauxton/readme.md (+20/-6)
src/fauxton/settings.json.default (+37/-3)
src/fauxton/settings.json.dev (+62/-0)
src/fauxton/tasks/addon/root/routes.js.underscore (+22/-1)
src/fauxton/tasks/couchserver.js (+25/-4)
src/fauxton/tasks/fauxton.js (+40/-21)
src/fauxton/test/core/layoutSpec.js (+0/-94)
src/fauxton/test/core/navbarSpec.js (+0/-107)
src/fauxton/test/core/paginateSpec.js (+0/-107)
src/fauxton/test/core/routeObjectSpec.js (+0/-102)
src/fauxton/test/mocha/chai.js (+585/-219)
src/fauxton/test/mocha/testUtils.js (+2/-1)
src/fauxton/test/runner.html (+15/-0)
src/fauxton/test/test.config.underscore (+5/-0)
src/ibrowse/Makefile.am (+2/-0)
src/ibrowse/Makefile.in (+2/-0)
src/ibrowse/ibrowse_http_client.erl (+45/-21)
src/ibrowse/ibrowse_lib.erl (+4/-3)
src/ibrowse/ibrowse_socks5.erl (+109/-0)
src/my-first-couchdb-plugin/README.md (+8/-10)
src/my-first-couchdb-plugin/priv/default.d/my_first_couchdb_plugin.ini (+3/-0)
src/snappy/Makefile.am (+2/-0)
src/snappy/Makefile.in (+63/-34)
test/etap/043-find-in-binary.t (+68/-0)
test/etap/073-changes.t (+1/-0)
test/etap/200-view-group-no-db-leaks.t (+1/-0)
test/etap/231-cors.t (+4/-23)
test/etap/Makefile.am (+1/-0)
test/etap/Makefile.in (+1/-0)
test/javascript/run.tpl (+23/-16)
To merge this branch: bzr merge lp:~jderose/ubuntu/utopic/couchdb/1.6.0
Reviewer Review Type Date Requested Status
Martin Pitt Approve
Review via email: mp+228523@code.launchpad.net

Description of the change

* Merge upstream 1.6.0 tarball, sha1:62f99077c201ad632c1cd144fcaf6f10fa5949ed

* Bump Standards-Version to 3.9.5

* Get rid of the unneeded .pc/ cruft

Note: as there are currently no patches being carried, and as from what I understand, current UDD best practice is to not keep .pc/ under version control, I went ahead and removed the .pc/ directory that was lingering around from CouchDB 1.0 days.

To post a comment you must log in.
Revision history for this message
Martin Pitt (pitti) wrote :

I (and most other sponsors I know) don't actually upload the branch as-is. I just let bzr bd build a source, debdiff/check/upload that, and let the package importer worry about the UDD branch (it's humanly impossible to deal with .pc/ and quilt patches sensibly in UDD, I'm afraid).

To be honest, a debian/ only debdiff attached to a bug would be much easier to review and sponsor.

Thanks!

review: Approve
Revision history for this message
Jason Gerard DeRose (jderose) wrote :

Martin,

Thanks for the review! Is the preferred merge workflow documented somewhere?

Revision history for this message
Martin Pitt (pitti) wrote :

Jason Gerard DeRose [2014-08-01 19:02 -0000]:
> Thanks for the review! Is the preferred merge workflow documented somewhere?

Well, the UDD way currenlty is the documented workflow:
http://packaging.ubuntu.com/html/udd-sponsorship.html

I just think it makes things unnecessarily complicated and error prone
for sponsors and sponsorees especially when patches are involved.

But don't mind my whining too much :-)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed directory '.pc'
2=== removed file '.pc/.quilt_patches'
3--- .pc/.quilt_patches 2012-04-10 21:14:05 +0000
4+++ .pc/.quilt_patches 1970-01-01 00:00:00 +0000
5@@ -1,1 +0,0 @@
6-debian/patches
7
8=== removed file '.pc/.quilt_series'
9--- .pc/.quilt_series 2012-04-10 21:14:05 +0000
10+++ .pc/.quilt_series 1970-01-01 00:00:00 +0000
11@@ -1,1 +0,0 @@
12-series
13
14=== removed file '.pc/.version'
15--- .pc/.version 2011-08-06 09:33:58 +0000
16+++ .pc/.version 1970-01-01 00:00:00 +0000
17@@ -1,1 +0,0 @@
18-2
19
20=== removed file '.pc/applied-patches'
21=== modified file 'AUTHORS'
22--- AUTHORS 2013-08-28 16:28:32 +0000
23+++ AUTHORS 2014-07-28 15:45:29 +0000
24@@ -20,11 +20,15 @@
25 * Bob Dionne <bitdiddle@apache.org>
26 * Dave Cottlehuber <dch@apache.org>
27 * Jason Smith <jhs@apache.org>
28- * Joan Touzet <joant@ieee.org>
29+ * Joan Touzet <wohali@apache.org>
30 * Dale Harvey <dale@apache.org>
31 * Dirkjan Ochtman <djc@apache.org>
32 * Alexander Shorin <kxepal@apache.org>
33 * Garren Smith <garren@apache.org>
34 * Sue Lockwood <deathbear@apache.org>
35+ * Andy Wenk <andywenk@apache.org>
36+ * Klaus Trainer <klaus_trainer@apache.org>
37+ * Benjamin Young <bigbluehat@apache.org>
38+ * Robert Kowalski <rok@kowalski.gd>
39
40 For a list of other credits see the `THANKS` file.
41
42=== modified file 'INSTALL.Unix'
43--- INSTALL.Unix 2013-08-28 16:28:32 +0000
44+++ INSTALL.Unix 2014-07-28 15:45:29 +0000
45@@ -1,4 +1,4 @@
46-Apache CouchDB README.Unix
47+Apache CouchDB INSTALL.Unix
48 ==========================
49
50 A high-level guide to Unix-like systems, inc. Mac OS X and Ubuntu.
51@@ -6,12 +6,16 @@
52 Community installation guides are available on the wiki:
53
54 http://wiki.apache.org/couchdb/Installation
55+
56+If you are trying to build CouchDB from a git checkout rather than
57+a .tar.gz, see the `DEVELOPERS` file.
58
59-This document is the canonical source of installation information. However, many
60-systems have gotchas that you need to be aware of. In addition, dependencies
61-frequently change as distributions update their archives. If you're running into
62-trouble, be sure to check out the wiki. If you have any tips to share, please
63-also update the wiki so that others can benefit from your experience.
64+This document is the canonical source of installation
65+information. However, many systems have gotchas that you need to be
66+aware of. In addition, dependencies frequently change as distributions
67+update their archives. If you're running into trouble, be sure to
68+check out the wiki. If you have any tips to share, please also update
69+the wiki so that others can benefit from your experience.
70
71 Troubleshooting
72 ---------------
73@@ -35,10 +39,10 @@
74
75 You should have the following installed:
76
77- * Erlang OTP (>=R13B04, <R17) (http://erlang.org/)
78+ * Erlang OTP (>=R14B01, =<R17) (http://erlang.org/)
79 * ICU (http://icu-project.org/)
80 * OpenSSL (http://www.openssl.org/)
81- * Mozilla SpiderMonkey (1.7) (http://www.mozilla.org/js/spidermonkey/)
82+ * Mozilla SpiderMonkey (1.8.5) (http://www.mozilla.org/js/spidermonkey/)
83 * GNU Make (http://www.gnu.org/software/make/)
84 * GNU Compiler Collection (http://gcc.gnu.org/)
85 * libcurl (http://curl.haxx.se/libcurl/)
86@@ -46,10 +50,11 @@
87 * Python (>=2.7) for docs (http://python.org/)
88 * Python Sphinx (>=1.1.3) (http://pypi.python.org/pypi/Sphinx)
89
90-It is recommended that you install Erlang OTP R13B-4 or above where possible.
91-You will only need libcurl if you plan to run the JavaScript test suite. And
92-help2man is only need if you plan on installing the CouchDB man pages.
93-Python and Sphinx are only required for building the online documentation.
94+It is recommended that you install Erlang OTP R13B-4 or above where
95+possible. You will only need libcurl if you plan to run the
96+JavaScript test suite. And help2man is only need if you plan on
97+installing the CouchDB man pages. Python and Sphinx are only required
98+for building the online documentation.
99
100 Debian-based Systems
101 ~~~~~~~~~~~~~~~~~~~~
102@@ -67,11 +72,13 @@
103 sudo apt-get install libcurl4-openssl-dev
104 sudo apt-get install pkg-config
105
106-There are lots of Erlang packages. If there is a problem with your install, try
107-a different mix. There is more information on the wiki. Additionally, you might
108-want to install some of the optional Erlang tools which may also be useful.
109+There are lots of Erlang packages. If there is a problem with your
110+install, try a different mix. There is more information on the
111+wiki. Additionally, you might want to install some of the optional
112+Erlang tools which may also be useful.
113
114-Be sure to update the version numbers to match your system's available packages.
115+Be sure to update the version numbers to match your system's available
116+packages.
117
118 For up to date instructions, please see:
119
120@@ -79,35 +86,38 @@
121
122 http://wiki.apache.org/couchdb/Installing_on_Ubuntu
123
124-Unfortunately, it seems that installing dependencies on Ubuntu is troublesome.
125+Unfortunately, it seems that installing dependencies on Ubuntu is
126+troublesome.
127
128 RedHat-based (Fedora, Centos, RHEL) Systems
129 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
130
131 You can install the dependencies by running:
132
133- sudo yum groupinstall "Development Tools"
134 sudo yum install autoconf
135 sudo yum install autoconf-archive
136 sudo yum install automake
137- sudo yum install libtool
138- sudo yum install perl-Test-Harness
139- sudo yum install erlang-etap
140+ sudo yum install curl-devel
141+ sudo yum install erlang-asn1
142 sudo yum install erlang-erts
143+ sudo yum install erlang-eunit
144 sudo yum install erlang-os_mon
145- sudo yum install erlang-eunit
146+ sudo yum install erlang-xmerl
147+ sudo yum install help2man
148+ sudo yum install js-devel
149 sudo yum install libicu-devel
150- sudo yum install js-devel
151- sudo yum install curl-devel
152- sudo yum install pkg-config
153+ sudo yum install libtool
154+ sudo yum install perl-Test-Harness
155
156-While CouchDB builds against the default js-devel-1.7.0 included in some
157-distributions, it's recommended to use a more recent js-devel-1.8.5.
158+While CouchDB builds against the default js-devel-1.7.0 included in
159+some distributions, it's recommended to use a more recent
160+js-devel-1.8.5.
161
162 Mac OS X
163 ~~~~~~~~
164
165-To build CouchDB from source on Mac OS X, you will need to install Xcode.
166+To build CouchDB from source on Mac OS X, you will need to install
167+Xcode.
168
169 You can install the other dependencies by running:
170
171@@ -127,10 +137,11 @@
172
173 http://mxcl.github.com/homebrew/
174
175-Some versions of Mac OS X ship a problematic OpenSSL library. If you're
176-experiencing troubles with CouchDB crashing intermittently with a segmentation
177-fault or a bus error, you will need to install your own version of OpenSSL. See
178-the troubleshooting guide, mentioned above, for more information.
179+Some versions of Mac OS X ship a problematic OpenSSL library. If
180+you're experiencing troubles with CouchDB crashing intermittently with
181+a segmentation fault or a bus error, you will need to install your own
182+version of OpenSSL. See the troubleshooting guide, mentioned above,
183+for more information.
184
185 Installing
186 ----------
187@@ -139,9 +150,11 @@
188
189 ./configure
190
191-This script will configure CouchDB to be installed into `/usr/local` by default.
192+This script will configure CouchDB to be installed into `/usr/local`
193+by default.
194
195-If you wish to customise the installation, pass `--help` to this script.
196+If you wish to customize the installation, pass `--help` to this
197+script.
198
199 If everything was successful you should see the following message:
200
201@@ -170,9 +183,11 @@
202
203 sudo -i -u couchdb couchdb
204
205-This uses the `sudo` command to run the `couchdb` command as the `couchdb` user.
206+This uses the `sudo` command to run the `couchdb` command as the
207+`couchdb` user.
208
209-When CouchDB starts it should eventually display the following message:
210+When CouchDB starts it should eventually display the following
211+message:
212
213 Apache CouchDB has started, time to relax.
214
215@@ -248,7 +263,8 @@
216
217 /usr/local/etc/rc.d
218
219-We use the `[init.d|rc.d]` notation to refer to both of these directories.
220+We use the `[init.d|rc.d]` notation to refer to both of these
221+directories.
222
223 You can control the CouchDB daemon by running:
224
225@@ -258,13 +274,15 @@
226
227 /usr/local/etc/default/couchdb
228
229-Comment out the `COUCHDB_USER` setting if you're running as a non-superuser.
230+Comment out the `COUCHDB_USER` setting if you're running as a
231+non-superuser.
232
233 To start the daemon on boot, copy the init script to:
234
235 /etc/[init.d|rc.d]
236
237-You should then configure your system to run the init script automatically.
238+You should then configure your system to run the init script
239+automatically.
240
241 You may be able to run:
242
243@@ -278,7 +296,8 @@
244
245 Consult your `logrotate` documentation for more information.
246
247-It is critical that the CouchDB logs are rotated so as not to fill your disk.
248+It is critical that the CouchDB logs are rotated so as not to fill
249+your disk.
250
251 Mac OS X
252 ~~~~~~~~
253
254=== modified file 'INSTALL.Windows'
255--- INSTALL.Windows 2013-08-28 16:28:32 +0000
256+++ INSTALL.Windows 2014-07-28 15:45:29 +0000
257@@ -1,4 +1,4 @@
258-Apache CouchDB README.Windows
259+Apache CouchDB INSTALL.Windows
260 ==============================
261
262 For a high-level guide to Microsoft Windows.
263
264=== modified file 'LICENSE'
265--- LICENSE 2013-12-01 16:55:05 +0000
266+++ LICENSE 2014-07-28 15:45:29 +0000
267@@ -689,7 +689,7 @@
268
269 For src/fauxton/assets/js/libs/d3.js
270
271- Copyright (c) 2012, Michael Bostock
272+ Copyright (c) 2010-2014, Michael Bostock
273 All rights reserved.
274
275 Redistribution and use in source and binary forms, with or without
276@@ -716,29 +716,6 @@
277 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
278 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
279
280-For src/fauxton/assets/js/libs/jshint.js
281-
282- Copyright 2012 Anton Kovalyov (http://jshint.com)
283-
284- Permission is hereby granted, free of charge, to any person obtaining
285- a copy of this software and associated documentation files (the
286- "Software"), to deal in the Software without restriction, including
287- without limitation the rights to use, copy, modify, merge, publish,
288- distribute, sublicense, and/or sell copies of the Software, and to
289- permit persons to whom the Software is furnished to do so, subject to
290- the following conditions:
291-
292- The above copyright notice and this permission notice shall be
293- included in all copies or substantial portions of the Software.
294-
295- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
296- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
297- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
298- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
299- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
300- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
301- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
302-
303 For src/fauxton/assets/js/libs/lodash.js
304
305 Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
306@@ -838,58 +815,6 @@
307 Version 2.0, January 2004
308 http://www.apache.org/licenses/
309
310-For src/fauxton/assets/js/libs/codemirror.js
311-
312- Copyright (C) 2013 by Marijn Haverbeke <marijnh@gmail.com>
313-
314- Permission is hereby granted, free of charge, to any person obtaining a copy
315- of this software and associated documentation files (the "Software"), to deal
316- in the Software without restriction, including without limitation the rights
317- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
318- copies of the Software, and to permit persons to whom the Software is
319- furnished to do so, subject to the following conditions:
320-
321- The above copyright notice and this permission notice shall be included in
322- all copies or substantial portions of the Software.
323-
324- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
325- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
326- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
327- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
328- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
329- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
330- THE SOFTWARE.
331-
332- Please note that some subdirectories of the CodeMirror distribution
333- include their own LICENSE files, and are released under different
334- licences.
335-
336-For src/fauxton/assets/js/plugins/codemirror-javascript.js
337-
338- Copyright (C) 2013 by Marijn Haverbeke <marijnh@gmail.com>
339-
340- Permission is hereby granted, free of charge, to any person obtaining a copy
341- of this software and associated documentation files (the "Software"), to deal
342- in the Software without restriction, including without limitation the rights
343- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
344- copies of the Software, and to permit persons to whom the Software is
345- furnished to do so, subject to the following conditions:
346-
347- The above copyright notice and this permission notice shall be included in
348- all copies or substantial portions of the Software.
349-
350- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
351- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
352- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
353- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
354- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
355- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
356- THE SOFTWARE.
357-
358- Please note that some subdirectories of the CodeMirror distribution
359- include their own LICENSE files, and are released under different
360- licences.
361-
362 For the src/couch_dbupdates component
363
364 2009-2012 (c) Benoît Chesneau <benoitc@e-engura.org>
365@@ -1126,3 +1051,261 @@
366 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
367 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
368 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
369+
370+for src/fauxton/assets/js/lib/ace/*
371+
372+Copyright (c) 2010, Ajax.org B.V.
373+All rights reserved.
374+
375+Redistribution and use in source and binary forms, with or without
376+modification, are permitted provided that the following conditions are met:
377+ * Redistributions of source code must retain the above copyright
378+ notice, this list of conditions and the following disclaimer.
379+ * Redistributions in binary form must reproduce the above copyright
380+ notice, this list of conditions and the following disclaimer in the
381+ documentation and/or other materials provided with the distribution.
382+ * Neither the name of Ajax.org B.V. nor the
383+ names of its contributors may be used to endorse or promote products
384+ derived from this software without specific prior written permission.
385+
386+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
387+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
388+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
389+DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
390+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
391+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
392+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
393+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
394+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
395+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
396+
397+
398+for src/fauxton/assets/js/plugins/beautify.js
399+The MIT License (MIT)
400+
401+Copyright (c) 2007-2013 Einar Lielmanis and contributors.
402+
403+Permission is hereby granted, free of charge, to any person
404+obtaining a copy of this software and associated documentation files
405+(the "Software"), to deal in the Software without restriction,
406+including without limitation the rights to use, copy, modify, merge,
407+publish, distribute, sublicense, and/or sell copies of the Software,
408+and to permit persons to whom the Software is furnished to do so,
409+subject to the following conditions:
410+
411+The above copyright notice and this permission notice shall be
412+included in all copies or substantial portions of the Software.
413+
414+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
415+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
416+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
417+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
418+BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
419+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
420+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
421+SOFTWARE.
422+
423+for src/fauxton/assets/js/plugins/cloudant.pagingcollection.js
424+
425+Apache License
426+ Version 2.0, January 2004
427+ http://www.apache.org/licenses/
428+
429+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
430+
431+ 1. Definitions.
432+
433+ "License" shall mean the terms and conditions for use, reproduction,
434+ and distribution as defined by Sections 1 through 9 of this document.
435+
436+ "Licensor" shall mean the copyright owner or entity authorized by
437+ the copyright owner that is granting the License.
438+
439+ "Legal Entity" shall mean the union of the acting entity and all
440+ other entities that control, are controlled by, or are under common
441+ control with that entity. For the purposes of this definition,
442+ "control" means (i) the power, direct or indirect, to cause the
443+ direction or management of such entity, whether by contract or
444+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
445+ outstanding shares, or (iii) beneficial ownership of such entity.
446+
447+ "You" (or "Your") shall mean an individual or Legal Entity
448+ exercising permissions granted by this License.
449+
450+ "Source" form shall mean the preferred form for making modifications,
451+ including but not limited to software source code, documentation
452+ source, and configuration files.
453+
454+ "Object" form shall mean any form resulting from mechanical
455+ transformation or translation of a Source form, including but
456+ not limited to compiled object code, generated documentation,
457+ and conversions to other media types.
458+
459+ "Work" shall mean the work of authorship, whether in Source or
460+ Object form, made available under the License, as indicated by a
461+ copyright notice that is included in or attached to the work
462+ (an example is provided in the Appendix below).
463+
464+ "Derivative Works" shall mean any work, whether in Source or Object
465+ form, that is based on (or derived from) the Work and for which the
466+ editorial revisions, annotations, elaborations, or other modifications
467+ represent, as a whole, an original work of authorship. For the purposes
468+ of this License, Derivative Works shall not include works that remain
469+ separable from, or merely link (or bind by name) to the interfaces of,
470+ the Work and Derivative Works thereof.
471+
472+ "Contribution" shall mean any work of authorship, including
473+ the original version of the Work and any modifications or additions
474+ to that Work or Derivative Works thereof, that is intentionally
475+ submitted to Licensor for inclusion in the Work by the copyright owner
476+ or by an individual or Legal Entity authorized to submit on behalf of
477+ the copyright owner. For the purposes of this definition, "submitted"
478+ means any form of electronic, verbal, or written communication sent
479+ to the Licensor or its representatives, including but not limited to
480+ communication on electronic mailing lists, source code control systems,
481+ and issue tracking systems that are managed by, or on behalf of, the
482+ Licensor for the purpose of discussing and improving the Work, but
483+ excluding communication that is conspicuously marked or otherwise
484+ designated in writing by the copyright owner as "Not a Contribution."
485+
486+ "Contributor" shall mean Licensor and any individual or Legal Entity
487+ on behalf of whom a Contribution has been received by Licensor and
488+ subsequently incorporated within the Work.
489+
490+ 2. Grant of Copyright License. Subject to the terms and conditions of
491+ this License, each Contributor hereby grants to You a perpetual,
492+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
493+ copyright license to reproduce, prepare Derivative Works of,
494+ publicly display, publicly perform, sublicense, and distribute the
495+ Work and such Derivative Works in Source or Object form.
496+
497+ 3. Grant of Patent License. Subject to the terms and conditions of
498+ this License, each Contributor hereby grants to You a perpetual,
499+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
500+ (except as stated in this section) patent license to make, have made,
501+ use, offer to sell, sell, import, and otherwise transfer the Work,
502+ where such license applies only to those patent claims licensable
503+ by such Contributor that are necessarily infringed by their
504+ Contribution(s) alone or by combination of their Contribution(s)
505+ with the Work to which such Contribution(s) was submitted. If You
506+ institute patent litigation against any entity (including a
507+ cross-claim or counterclaim in a lawsuit) alleging that the Work
508+ or a Contribution incorporated within the Work constitutes direct
509+ or contributory patent infringement, then any patent licenses
510+ granted to You under this License for that Work shall terminate
511+ as of the date such litigation is filed.
512+
513+ 4. Redistribution. You may reproduce and distribute copies of the
514+ Work or Derivative Works thereof in any medium, with or without
515+ modifications, and in Source or Object form, provided that You
516+ meet the following conditions:
517+
518+ (a) You must give any other recipients of the Work or
519+ Derivative Works a copy of this License; and
520+
521+ (b) You must cause any modified files to carry prominent notices
522+ stating that You changed the files; and
523+
524+ (c) You must retain, in the Source form of any Derivative Works
525+ that You distribute, all copyright, patent, trademark, and
526+ attribution notices from the Source form of the Work,
527+ excluding those notices that do not pertain to any part of
528+ the Derivative Works; and
529+
530+ (d) If the Work includes a "NOTICE" text file as part of its
531+ distribution, then any Derivative Works that You distribute must
532+ include a readable copy of the attribution notices contained
533+ within such NOTICE file, excluding those notices that do not
534+ pertain to any part of the Derivative Works, in at least one
535+ of the following places: within a NOTICE text file distributed
536+ as part of the Derivative Works; within the Source form or
537+ documentation, if provided along with the Derivative Works; or,
538+ within a display generated by the Derivative Works, if and
539+ wherever such third-party notices normally appear. The contents
540+ of the NOTICE file are for informational purposes only and
541+ do not modify the License. You may add Your own attribution
542+ notices within Derivative Works that You distribute, alongside
543+ or as an addendum to the NOTICE text from the Work, provided
544+ that such additional attribution notices cannot be construed
545+ as modifying the License.
546+
547+ You may add Your own copyright statement to Your modifications and
548+ may provide additional or different license terms and conditions
549+ for use, reproduction, or distribution of Your modifications, or
550+ for any such Derivative Works as a whole, provided Your use,
551+ reproduction, and distribution of the Work otherwise complies with
552+ the conditions stated in this License.
553+
554+ 5. Submission of Contributions. Unless You explicitly state otherwise,
555+ any Contribution intentionally submitted for inclusion in the Work
556+ by You to the Licensor shall be under the terms and conditions of
557+ this License, without any additional terms or conditions.
558+ Notwithstanding the above, nothing herein shall supersede or modify
559+ the terms of any separate license agreement you may have executed
560+ with Licensor regarding such Contributions.
561+
562+ 6. Trademarks. This License does not grant permission to use the trade
563+ names, trademarks, service marks, or product names of the Licensor,
564+ except as required for reasonable and customary use in describing the
565+ origin of the Work and reproducing the content of the NOTICE file.
566+
567+ 7. Disclaimer of Warranty. Unless required by applicable law or
568+ agreed to in writing, Licensor provides the Work (and each
569+ Contributor provides its Contributions) on an "AS IS" BASIS,
570+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
571+ implied, including, without limitation, any warranties or conditions
572+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
573+ PARTICULAR PURPOSE. You are solely responsible for determining the
574+ appropriateness of using or redistributing the Work and assume any
575+ risks associated with Your exercise of permissions under this License.
576+
577+ 8. Limitation of Liability. In no event and under no legal theory,
578+ whether in tort (including negligence), contract, or otherwise,
579+ unless required by applicable law (such as deliberate and grossly
580+ negligent acts) or agreed to in writing, shall any Contributor be
581+ liable to You for damages, including any direct, indirect, special,
582+ incidental, or consequential damages of any character arising as a
583+ result of this License or out of the use or inability to use the
584+ Work (including but not limited to damages for loss of goodwill,
585+ work stoppage, computer failure or malfunction, or any and all
586+ other commercial damages or losses), even if such Contributor
587+ has been advised of the possibility of such damages.
588+
589+ 9. Accepting Warranty or Additional Liability. While redistributing
590+ the Work or Derivative Works thereof, You may choose to offer,
591+ and charge a fee for, acceptance of support, warranty, indemnity,
592+ or other liability obligations and/or rights consistent with this
593+ License. However, in accepting such obligations, You may act only
594+ on Your own behalf and on Your sole responsibility, not on behalf
595+ of any other Contributor, and only if You agree to indemnify,
596+ defend, and hold each Contributor harmless for any liability
597+ incurred by, or claims asserted against, such Contributor by reason
598+ of your accepting any such warranty or additional liability.
599+
600+ END OF TERMS AND CONDITIONS
601+
602+ APPENDIX: How to apply the Apache License to your work.
603+
604+ To apply the Apache License to your work, attach the following
605+ boilerplate notice, with the fields enclosed by brackets "{}"
606+ replaced with your own identifying information. (Don't include
607+ the brackets!) The text should be enclosed in the appropriate
608+ comment syntax for the file format. We also recommend that a
609+ file or class name and description of purpose be included on the
610+ same "printed page" as the copyright notice for easier
611+ identification within third-party archives.
612+
613+ Copyright {yyyy} {name of copyright owner}
614+
615+ Licensed under the Apache License, Version 2.0 (the "License");
616+ you may not use this file except in compliance with the License.
617+ You may obtain a copy of the License at
618+
619+ http://www.apache.org/licenses/LICENSE-2.0
620+
621+ Unless required by applicable law or agreed to in writing, software
622+ distributed under the License is distributed on an "AS IS" BASIS,
623+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
624+ See the License for the specific language governing permissions and
625+ limitations under the License.
626+
627
628=== modified file 'Makefile.am'
629--- Makefile.am 2013-12-01 16:55:05 +0000
630+++ Makefile.am 2014-07-28 15:45:29 +0000
631@@ -42,7 +42,8 @@
632 build-aux/dist-error \
633 build-aux/sphinx-build \
634 build-aux/sphinx-touch \
635- license.skip
636+ license.skip \
637+ Vagrantfile
638
639 AUTHORS.gz: AUTHORS
640 gzip -9 < $< > $@
641
642=== modified file 'Makefile.in'
643--- Makefile.in 2013-12-01 16:55:05 +0000
644+++ Makefile.in 2014-07-28 15:45:29 +0000
645@@ -374,7 +374,8 @@
646 build-aux/dist-error \
647 build-aux/sphinx-build \
648 build-aux/sphinx-touch \
649- license.skip
650+ license.skip \
651+ Vagrantfile
652
653 all: config.h
654 $(MAKE) $(AM_MAKEFLAGS) all-recursive
655
656=== modified file 'NOTICE'
657--- NOTICE 2013-12-01 16:55:05 +0000
658+++ NOTICE 2014-07-28 15:45:29 +0000
659@@ -1,5 +1,5 @@
660 Apache CouchDB
661-Copyright 2009-2013 The Apache Software Foundation
662+Copyright 2009-2014 The Apache Software Foundation
663
664 This product includes software developed at
665 The Apache Software Foundation (http://www.apache.org/).
666@@ -102,10 +102,6 @@
667
668 Copyright 2012, Michael Bostock
669
670- * JSHint (http://jshint.com/)
671-
672- Copyright 2002, Douglas Crockford, modifications by JSHint Community
673-
674 * Lodash (http://lodash.com/)
675
676 Copyright 2012, John-David Dalton <http://allyoucanleet.com/>
677@@ -130,14 +126,6 @@
678
679 Copyright (c) 2010-2011, The Dojo Foundation
680
681- * codemirror.js (https://github.com/marijnh/CodeMirror)
682-
683- Copyright (C) 2013 by Marijn Haverbeke <marijnh@gmail.com>
684-
685- * codemirror-javascript.js (https://github.com/marijnh/CodeMirror)
686-
687- Copyright (C) 2013 by Marijn Haverbeke <marijnh@gmail.com>
688-
689 * jquery.form.js (https://github.com/malsup/form/)
690
691 Copyright 2006-2013 (c) M. Alsup
692@@ -193,3 +181,11 @@
693 * sandbox.js https://github.com/KlausTrainer/sandbox.js
694
695 (c) 2013 Klaus Trainer
696+
697+ * ace editor https://github.com/ajaxorg/ace
698+
699+ Copyright (c) 2010, Ajax.org B.V.
700+
701+ * src/fauxton/asserts/js/plugins/cloudant.pagingcollection.js
702+
703+ Copyright (c) 2014, Cloudant http://cloudant.com
704
705=== modified file 'THANKS'
706--- THANKS 2013-12-01 16:55:05 +0000
707+++ THANKS 2014-07-28 15:45:29 +0000
708@@ -64,10 +64,8 @@
709 * David Rose <doppler@gmail.com>
710 * Lim Yue Chuan <shasderias@gmail.com>
711 * David Davis <xantus@xantus.org>
712- * Klaus Trainer <klaus.trainer@web.de>
713 * Juuso Väänänen <juuso@vaananen.org>
714 * Jeff Zellner <jeff.zellner@gmail.com>
715- * Benjamin Young <byoung@bigbluehat.com>
716 * Gabriel Farrell <gsf747@gmail.com>
717 * Mike Leddy <mike@loop.com.br>
718 * Wayne Conrad <wayne@databill.com>
719@@ -98,45 +96,59 @@
720 * Alexander Dorofeev <aka.spin@gmail.com>
721 * Alexander Shorin <kxepal@gmail.com>
722 * Andrey Somov <trophybase@gmail.com>
723+ * Andy Wenk <andy@nms.de>
724+ * Anthony Ananich <anton.ananich@inpun.com>
725 * Anthony S Baker <anthony.s.baker@gmail.com>
726 * Ben Reser <ben@reser.org>
727+ * Ben Russell <ben@benru.co.uk>
728 * Benjamin Nortier <bjnortier@gmail.com>
729+ 27 BigBlueHat <byoung@bigbluehat.com>
730 * Bob Dionne <bob@cloudant.com>
731 * Bob Ippolito <bob@redivi.com>
732 * Caleb Case <calebcase@gmail.com>
733+ * Christian Hogan <github@infliction.org>
734 * Christopher Bonhage <queezey@me.com>
735 * Dale Harvey <dale@arandomurl.com>
736 * Damjan Georgievski <gdamjan@gmail.com>
737- * Dirkjan Ochtman <dirkjan@ochtman.nl>
738+ 23 Dirkjan Ochtman <dirkjan@ochtman.nl>
739 * Dustin Sallings <dustin@spy.net>
740 * Ewan McDougall <mrloop@mrloop.com>
741 * Fedor Indutny <fedor.indutny@gmail.com>
742 * Filippo Fadda <filippo.fadda@gmail.com>
743- 107 Garren Smith <garren.smith@gmail.com>
744+ 185 Garren Smith <garren.smith@gmail.com>
745 * Jakub <jakub.oboza@gmail.com>
746 * Jason Smith (work) <jason.h.smith@gmail.com>
747 * Jason Smith (work) <jhs@iriscouch.com>
748 * Jason Smith (work) <jhs@nodejitsu.com>
749+ * Jens Rantil <jens.rantil@gmail.com>
750 * Joel Reed <joelwreed@gmail.com>
751 * Johannes J. Schmidt <schmidt@netzmerk.com>
752+ * Julian Duque <julianduquej@gmail.com>
753+ * Keith Gable <kgable@decisionpt.com>
754 * Keks Keksov <keksov@gmail.com>
755 * Klaus Trainer <klaus_trainer@posteo.de>
756+ * Kyle Snavely <ksnavely@cloudant.com>
757 * Magnus Hoff <maghoff@gmail.com>
758+ * Mariano Guerra <luismarianoguerra@gmail.com>
759 * Martin Higham <martin@ocastalabs.com>
760 * Michael Jackson <mjijackson@gmail.com>
761 * Michael Rhodes <mike.rhodes@gmail.com>
762 * Michael Wallace <mikewallace1979@googlemail.com>
763+ * Michael Wheeler <mpwheeler@gmail.com>
764 * Mike McKay <mike@vdomck.org>
765 * Mike Wallace <mikewallace1979@googlemail.com>
766 * NickNorth <North.N@gmail.com>
767+ * Noah Slater <nslater@tumbolia.org>
768 * Paul J. Davis <paul.joseph.davis@gmail.com>
769 * Paul Mietz Egli <paul@obscure.com>
770 * Peter Lemenkov <lemenkov@gmail.com>
771+ 34 Robert Kowalski <rok@kowalski.gd>
772+ * Robert Newson <robert.newson@cloudant.com>
773 * Robin Berjon <robin@berjon.com>
774 * Ronny Pfannschmidt <Ronny.Pfannschmidt@gmx.de>
775- 91 Russell Branca <chewbranca@gmail.com>
776+ 94 Russell Branca <chewbranca@gmail.com>
777 * Ryan Ramage <ryan.ramage@gmail.com>
778- 74 Simon Metson <simon+github@cloudant.com>
779+ 78 Simon Metson <simon+github@cloudant.com>
780 10 Simon Metson <simonmetson+github@googlemail.com>
781 * Sriram Melkote <siri@couchbase.com>
782 * Stefan Kögl <stefan@skoegl.net>
783@@ -144,8 +156,12 @@
784 * Volker Mische <volker.mische@gmail.com>
785 * Wei Cao <cyg.cao@gmail.com>
786 * Wendall Cada <wendallc@83864.com>
787+ * Will Holley <willholley@gmail.com>
788+ * dileepbapat <dileepbapat@gmail.com>
789+ * karlin <karlin@atomicobject.com>
790 * nvdev <modestdev@gmail.com>
791 * sean barclay <fudd1011@hotmail.com>
792- 54 suelockwood <deathbearbrown@gmail.com>
793+ 76 suelockwood <deathbearbrown@gmail.com>
794+ * telis94 <dossas07@hotmail.com>
795
796 For a list of authors see the `AUTHORS` file.
797
798=== added file 'Vagrantfile'
799--- Vagrantfile 1970-01-01 00:00:00 +0000
800+++ Vagrantfile 2014-07-28 15:45:29 +0000
801@@ -0,0 +1,69 @@
802+# -*- mode: ruby -*-
803+# vi: set ft=ruby :
804+
805+BOX_NAME = ENV['BOX_NAME'] || "ubuntu"
806+BOX_URI = ENV['BOX_URI'] || "http://files.vagrantup.com/precise64.box"
807+AWS_REGION = ENV['AWS_REGION'] || "us-east-1"
808+AWS_AMI = ENV['AWS_AMI'] || "ami-d0f89fb9"
809+
810+Vagrant::Config.run do |config|
811+ # Setup virtual machine box. This VM configuration code is always executed.
812+ config.vm.box = BOX_NAME
813+ config.vm.box_url = BOX_URI
814+
815+ # Install couchdb dependencies if deployment was not done
816+ if Dir.glob("#{File.dirname(__FILE__)}/.vagrant/machines/default/*/id").empty?
817+ # install build-essential
818+ pkg_cmd = "apt-get update -qq; apt-get install -q -y build-essential git " \
819+ "autoconf autoconf-archive gnu-standards help2man texinfo; "
820+
821+ # Install erlang
822+ pkg_cmd << "apt-get install -q -y erlang-base-hipe erlang-dev " \
823+ "erlang-manpages erlang-eunit erlang-nox erlang-xmerl erlang-inets; "
824+
825+ # couchdb developper dependencies
826+ pkg_cmd << "apt-get install -q -y libmozjs185-dev libicu-dev " \
827+ "curl libcurl4-gnutls-dev libtool; "
828+
829+ # doc dependencies
830+ pkg_cmd << "apt-get install -q -y help2man texinfo python-sphinx python-pip; " \
831+ "pip install -U pygments; "
832+
833+ config.vm.provision :shell, :inline => pkg_cmd
834+ end
835+end
836+
837+
838+# Providers were added on Vagrant >= 1.1.0
839+Vagrant::VERSION >= "1.1.0" and Vagrant.configure("2") do |config|
840+ config.vm.provider :aws do |aws, override|
841+ aws.access_key_id = ENV["AWS_ACCESS_KEY_ID"]
842+ aws.secret_access_key = ENV["AWS_SECRET_ACCESS_KEY"]
843+ aws.keypair_name = ENV["AWS_KEYPAIR_NAME"]
844+ override.ssh.private_key_path = ENV["AWS_SSH_PRIVKEY"]
845+ override.ssh.username = "ubuntu"
846+ aws.region = AWS_REGION
847+ aws.ami = AWS_AMI
848+ aws.instance_type = "t1.micro"
849+ end
850+
851+ config.vm.provider :rackspace do |rs|
852+ config.ssh.private_key_path = ENV["RS_PRIVATE_KEY"]
853+ rs.username = ENV["RS_USERNAME"]
854+ rs.api_key = ENV["RS_API_KEY"]
855+ rs.public_key_path = ENV["RS_PUBLIC_KEY"]
856+ rs.flavor = /512MB/
857+ rs.image = /Ubuntu/
858+ end
859+
860+ config.vm.provider :virtualbox do |vb|
861+ config.vm.box = BOX_NAME
862+ config.vm.box_url = BOX_URI
863+ end
864+
865+ config.vm.provider :lxc do |lxc|
866+ config.vm.box = BOX_NAME
867+ config.vm.box_url = BOX_URI
868+ lxc.customize 'cgroup.memory.limit_in_bytes', '1024M'
869+ end
870+end
871
872=== modified file 'acinclude.m4'
873--- acinclude.m4 2013-12-01 16:55:05 +0000
874+++ acinclude.m4 2014-07-28 15:45:29 +0000
875@@ -17,7 +17,7 @@
876 m4_define([LOCAL_PACKAGE_NAME], [Apache CouchDB])
877 m4_define([LOCAL_BUG_URI], [https://issues.apache.org/jira/browse/COUCHDB])
878 m4_define([LOCAL_VERSION_MAJOR], [1])
879-m4_define([LOCAL_VERSION_MINOR], [5])
880+m4_define([LOCAL_VERSION_MINOR], [6])
881 m4_define([LOCAL_VERSION_REVISION], [0])
882 m4_define([LOCAL_VERSION_STAGE], [])
883 m4_define([LOCAL_VERSION_RELEASE], [])
884
885=== modified file 'aclocal.m4'
886--- aclocal.m4 2013-08-28 16:28:32 +0000
887+++ aclocal.m4 2014-07-28 15:45:29 +0000
888@@ -499,14 +499,14 @@
889 #
890 # LICENSE
891 #
892-# Copyright (c) 2008 Andrew Collier <colliera@ukzn.ac.za>
893+# Copyright (c) 2008 Andrew Collier
894 #
895 # Copying and distribution of this file, with or without modification, are
896 # permitted in any medium without royalty provided the copyright notice
897 # and this notice are preserved. This file is offered as-is, without any
898 # warranty.
899
900-#serial 5
901+#serial 6
902
903 AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE])
904 AC_DEFUN([AX_PYTHON_MODULE],[
905@@ -1486,6 +1486,25 @@
906 AC_DEFUN([_AM_IF_OPTION],
907 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
908
909+# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
910+#
911+# This file is free software; the Free Software Foundation
912+# gives unlimited permission to copy and/or distribute it,
913+# with or without modifications, as long as this notice is preserved.
914+
915+# serial 1
916+
917+# AM_RUN_LOG(COMMAND)
918+# -------------------
919+# Run COMMAND, save the exit status in ac_status, and log it.
920+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
921+AC_DEFUN([AM_RUN_LOG],
922+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
923+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
924+ ac_status=$?
925+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
926+ (exit $ac_status); }])
927+
928 # Check to make sure that the build environment is sane. -*- Autoconf -*-
929
930 # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
931
932=== modified file 'bin/couchdb.1'
933--- bin/couchdb.1 2013-12-01 16:55:05 +0000
934+++ bin/couchdb.1 2014-07-28 15:45:29 +0000
935@@ -1,5 +1,5 @@
936 .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.11.
937-.TH COUCHDB "1" "October 2013" "couchdb - Apache CouchDB 1.5.0" "User Commands"
938+.TH COUCHDB "1" "May 2014" "couchdb - Apache CouchDB 1.6.0" "User Commands"
939 .SH NAME
940 couchdb \- Apache CouchDB database server
941 .SH SYNOPSIS
942
943=== modified file 'bin/couchdb.tpl.in'
944--- bin/couchdb.tpl.in 2013-12-01 16:55:05 +0000
945+++ bin/couchdb.tpl.in 2014-07-28 15:45:29 +0000
946@@ -270,6 +270,9 @@
947 echo "Apache CouchDB has started, time to relax."
948 else
949 if test "$RECURSED" = "true"; then
950+ # close stdout / stderr
951+ exec 1>&-
952+ exec 2>&-
953 while true; do
954 export HEART_COMMAND
955 export HEART_BEAT_TIMEOUT
956@@ -304,6 +307,10 @@
957 PID=`_get_pid`
958 STOP_TIMEOUT=60
959 if test -n "$PID"; then
960+ if test "$1" = "false"; then
961+ echo > $PID_FILE
962+ fi
963+
964 if kill -0 $PID 2> /dev/null; then
965 if kill -TERM $PID 2> /dev/null; then
966 count=0
967
968=== modified file 'build-aux/config.guess'
969--- build-aux/config.guess 2013-08-28 18:21:32 +0000
970+++ build-aux/config.guess 2014-07-28 15:45:29 +0000
971@@ -1,10 +1,8 @@
972 #! /bin/sh
973 # Attempt to guess a canonical system name.
974-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
975-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
976-# 2011, 2012, 2013 Free Software Foundation, Inc.
977+# Copyright 1992-2013 Free Software Foundation, Inc.
978
979-timestamp='2012-12-30'
980+timestamp='2013-11-29'
981
982 # This file is free software; you can redistribute it and/or modify it
983 # under the terms of the GNU General Public License as published by
984@@ -52,9 +50,7 @@
985 GNU config.guess ($timestamp)
986
987 Originally written by Per Bothner.
988-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
989-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
990-2012, 2013 Free Software Foundation, Inc.
991+Copyright 1992-2013 Free Software Foundation, Inc.
992
993 This is free software; see the source for copying conditions. There is NO
994 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
995@@ -137,22 +133,20 @@
996 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
997
998 case "${UNAME_SYSTEM}" in
999-Linux|GNU/*)
1000+Linux|GNU|GNU/*)
1001+ # If the system lacks a compiler, then just pick glibc.
1002+ # We could probably try harder.
1003+ LIBC=gnu
1004+
1005 eval $set_cc_for_build
1006 cat <<-EOF > $dummy.c
1007 #include <features.h>
1008- #ifdef __UCLIBC__
1009- # ifdef __UCLIBC_CONFIG_VERSION__
1010- LIBC=uclibc __UCLIBC_CONFIG_VERSION__
1011- # else
1012+ #if defined(__UCLIBC__)
1013 LIBC=uclibc
1014- # endif
1015- #else
1016- # ifdef __dietlibc__
1017+ #elif defined(__dietlibc__)
1018 LIBC=dietlibc
1019- # else
1020+ #else
1021 LIBC=gnu
1022- # endif
1023 #endif
1024 EOF
1025 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
1026@@ -910,6 +904,9 @@
1027 if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
1028 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1029 exit ;;
1030+ arc:Linux:*:* | arceb:Linux:*:*)
1031+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1032+ exit ;;
1033 arm*:Linux:*:*)
1034 eval $set_cc_for_build
1035 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
1036@@ -972,6 +969,9 @@
1037 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
1038 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
1039 ;;
1040+ or1k:Linux:*:*)
1041+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1042+ exit ;;
1043 or32:Linux:*:*)
1044 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1045 exit ;;
1046@@ -995,8 +995,14 @@
1047 ppc:Linux:*:*)
1048 echo powerpc-unknown-linux-${LIBC}
1049 exit ;;
1050+ ppc64le:Linux:*:*)
1051+ echo powerpc64le-unknown-linux-${LIBC}
1052+ exit ;;
1053+ ppcle:Linux:*:*)
1054+ echo powerpcle-unknown-linux-${LIBC}
1055+ exit ;;
1056 s390:Linux:*:* | s390x:Linux:*:*)
1057- echo ${UNAME_MACHINE}-ibm-linux
1058+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
1059 exit ;;
1060 sh64*:Linux:*:*)
1061 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1062@@ -1014,7 +1020,18 @@
1063 echo ${UNAME_MACHINE}-dec-linux-${LIBC}
1064 exit ;;
1065 x86_64:Linux:*:*)
1066- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1067+ eval $set_cc_for_build
1068+ X86_64_ABI=
1069+ # If there is a compiler, see if it is configured for 32-bit objects.
1070+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1071+ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
1072+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1073+ grep IS_X32 >/dev/null
1074+ then
1075+ X86_64_ABI=x32
1076+ fi
1077+ fi
1078+ echo x86_64-unknown-linux-gnu${X86_64_ABI}
1079 exit ;;
1080 xtensa*:Linux:*:*)
1081 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1082@@ -1250,19 +1267,31 @@
1083 exit ;;
1084 *:Darwin:*:*)
1085 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1086- case $UNAME_PROCESSOR in
1087- i386)
1088- eval $set_cc_for_build
1089- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1090- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1091- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1092- grep IS_64BIT_ARCH >/dev/null
1093- then
1094- UNAME_PROCESSOR="x86_64"
1095- fi
1096- fi ;;
1097- unknown) UNAME_PROCESSOR=powerpc ;;
1098- esac
1099+ eval $set_cc_for_build
1100+ if test "$UNAME_PROCESSOR" = unknown ; then
1101+ UNAME_PROCESSOR=powerpc
1102+ fi
1103+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
1104+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1105+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1106+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1107+ grep IS_64BIT_ARCH >/dev/null
1108+ then
1109+ case $UNAME_PROCESSOR in
1110+ i386) UNAME_PROCESSOR=x86_64 ;;
1111+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
1112+ esac
1113+ fi
1114+ fi
1115+ elif test "$UNAME_PROCESSOR" = i386 ; then
1116+ # Avoid executing cc on OS X 10.9, as it ships with a stub
1117+ # that puts up a graphical alert prompting to install
1118+ # developer tools. Any system running Mac OS X 10.7 or
1119+ # later (Darwin 11 and later) is required to have a 64-bit
1120+ # processor. This is not true of the ARM version of Darwin
1121+ # that Apple uses in portable devices.
1122+ UNAME_PROCESSOR=x86_64
1123+ fi
1124 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1125 exit ;;
1126 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1127
1128=== modified file 'build-aux/config.sub'
1129--- build-aux/config.sub 2013-08-28 18:21:32 +0000
1130+++ build-aux/config.sub 2014-07-28 15:45:29 +0000
1131@@ -1,10 +1,8 @@
1132 #! /bin/sh
1133 # Configuration validation subroutine script.
1134-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
1135-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
1136-# 2011, 2012, 2013 Free Software Foundation, Inc.
1137+# Copyright 1992-2013 Free Software Foundation, Inc.
1138
1139-timestamp='2013-01-11'
1140+timestamp='2013-10-01'
1141
1142 # This file is free software; you can redistribute it and/or modify it
1143 # under the terms of the GNU General Public License as published by
1144@@ -70,9 +68,7 @@
1145 version="\
1146 GNU config.sub ($timestamp)
1147
1148-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
1149-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
1150-2012, 2013 Free Software Foundation, Inc.
1151+Copyright 1992-2013 Free Software Foundation, Inc.
1152
1153 This is free software; see the source for copying conditions. There is NO
1154 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
1155@@ -256,12 +252,12 @@
1156 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
1157 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
1158 | am33_2.0 \
1159- | arc \
1160+ | arc | arceb \
1161 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
1162 | avr | avr32 \
1163 | be32 | be64 \
1164 | bfin \
1165- | c4x | clipper \
1166+ | c4x | c8051 | clipper \
1167 | d10v | d30v | dlx | dsp16xx | dvp \
1168 | epiphany \
1169 | fido | fr30 | frv \
1170@@ -269,6 +265,7 @@
1171 | hexagon \
1172 | i370 | i860 | i960 | ia64 \
1173 | ip2k | iq2000 \
1174+ | k1om \
1175 | le32 | le64 \
1176 | lm32 \
1177 | m32c | m32r | m32rle | m68000 | m68k | m88k \
1178@@ -297,10 +294,10 @@
1179 | mt \
1180 | msp430 \
1181 | nds32 | nds32le | nds32be \
1182- | nios | nios2 \
1183+ | nios | nios2 | nios2eb | nios2el \
1184 | ns16k | ns32k \
1185 | open8 \
1186- | or32 \
1187+ | or1k | or32 \
1188 | pdp10 | pdp11 | pj | pjl \
1189 | powerpc | powerpc64 | powerpc64le | powerpcle \
1190 | pyramid \
1191@@ -328,7 +325,7 @@
1192 c6x)
1193 basic_machine=tic6x-unknown
1194 ;;
1195- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
1196+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
1197 basic_machine=$basic_machine-unknown
1198 os=-none
1199 ;;
1200@@ -370,13 +367,13 @@
1201 | aarch64-* | aarch64_be-* \
1202 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
1203 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
1204- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
1205+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
1206 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
1207 | avr-* | avr32-* \
1208 | be32-* | be64-* \
1209 | bfin-* | bs2000-* \
1210 | c[123]* | c30-* | [cjt]90-* | c4x-* \
1211- | clipper-* | craynv-* | cydra-* \
1212+ | c8051-* | clipper-* | craynv-* | cydra-* \
1213 | d10v-* | d30v-* | dlx-* \
1214 | elxsi-* \
1215 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
1216@@ -385,6 +382,7 @@
1217 | hexagon-* \
1218 | i*86-* | i860-* | i960-* | ia64-* \
1219 | ip2k-* | iq2000-* \
1220+ | k1om-* \
1221 | le32-* | le64-* \
1222 | lm32-* \
1223 | m32c-* | m32r-* | m32rle-* \
1224@@ -414,7 +412,7 @@
1225 | mt-* \
1226 | msp430-* \
1227 | nds32-* | nds32le-* | nds32be-* \
1228- | nios-* | nios2-* \
1229+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
1230 | none-* | np1-* | ns16k-* | ns32k-* \
1231 | open8-* \
1232 | orion-* \
1233@@ -798,7 +796,7 @@
1234 os=-mingw64
1235 ;;
1236 mingw32)
1237- basic_machine=i386-pc
1238+ basic_machine=i686-pc
1239 os=-mingw32
1240 ;;
1241 mingw32ce)
1242@@ -852,7 +850,7 @@
1243 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
1244 ;;
1245 msys)
1246- basic_machine=i386-pc
1247+ basic_machine=i686-pc
1248 os=-msys
1249 ;;
1250 mvs)
1251@@ -1568,6 +1566,9 @@
1252 c4x-* | tic4x-*)
1253 os=-coff
1254 ;;
1255+ c8051-*)
1256+ os=-elf
1257+ ;;
1258 hexagon-*)
1259 os=-elf
1260 ;;
1261@@ -1611,6 +1612,9 @@
1262 mips*-*)
1263 os=-elf
1264 ;;
1265+ or1k-*)
1266+ os=-elf
1267+ ;;
1268 or32-*)
1269 os=-coff
1270 ;;
1271
1272=== modified file 'configure'
1273--- configure 2013-12-01 16:55:05 +0000
1274+++ configure 2014-07-28 15:45:29 +0000
1275@@ -1,7 +1,7 @@
1276 #! /bin/sh
1277-# From configure.ac 1.5.0.
1278+# From configure.ac 1.6.0.
1279 # Guess values for system-dependent variables and create Makefiles.
1280-# Generated by GNU Autoconf 2.69 for Apache CouchDB 1.5.0.
1281+# Generated by GNU Autoconf 2.69 for Apache CouchDB 1.6.0.
1282 #
1283 # Report bugs to <https://issues.apache.org/jira/browse/COUCHDB>.
1284 #
1285@@ -591,8 +591,8 @@
1286 # Identity of this package.
1287 PACKAGE_NAME='Apache CouchDB'
1288 PACKAGE_TARNAME='apache-couchdb'
1289-PACKAGE_VERSION='1.5.0'
1290-PACKAGE_STRING='Apache CouchDB 1.5.0'
1291+PACKAGE_VERSION='1.6.0'
1292+PACKAGE_STRING='Apache CouchDB 1.6.0'
1293 PACKAGE_BUGREPORT='https://issues.apache.org/jira/browse/COUCHDB'
1294 PACKAGE_URL=''
1295
1296@@ -1434,7 +1434,7 @@
1297 # Omit some internal or obsolete options to make the list less imposing.
1298 # This message is too long to be a string in the A/UX 3.1 sh.
1299 cat <<_ACEOF
1300-\`configure' configures Apache CouchDB 1.5.0 to adapt to many kinds of systems.
1301+\`configure' configures Apache CouchDB 1.6.0 to adapt to many kinds of systems.
1302
1303 Usage: $0 [OPTION]... [VAR=VALUE]...
1304
1305@@ -1504,7 +1504,7 @@
1306
1307 if test -n "$ac_init_help"; then
1308 case $ac_init_help in
1309- short | recursive ) echo "Configuration of Apache CouchDB 1.5.0:";;
1310+ short | recursive ) echo "Configuration of Apache CouchDB 1.6.0:";;
1311 esac
1312 cat <<\_ACEOF
1313
1314@@ -1661,7 +1661,7 @@
1315 test -n "$ac_init_help" && exit $ac_status
1316 if $ac_init_version; then
1317 cat <<\_ACEOF
1318-Apache CouchDB configure 1.5.0
1319+Apache CouchDB configure 1.6.0
1320 generated by GNU Autoconf 2.69
1321
1322 Copyright (C) 2012 Free Software Foundation, Inc.
1323@@ -2405,7 +2405,7 @@
1324 This file contains any messages produced by compilers while
1325 running configure, to aid debugging if configure makes a mistake.
1326
1327-It was created by Apache CouchDB $as_me 1.5.0, which was
1328+It was created by Apache CouchDB $as_me 1.6.0, which was
1329 generated by GNU Autoconf 2.69. Invocation command line was
1330
1331 $ $0 $@
1332@@ -3230,7 +3230,7 @@
1333
1334 # Define the identity of the package.
1335 PACKAGE='apache-couchdb'
1336- VERSION='1.5.0'
1337+ VERSION='1.6.0'
1338
1339
1340 cat >>confdefs.h <<_ACEOF
1341@@ -3264,7 +3264,88 @@
1342 # in the wild :-( We should find a proper way to deprecate it ...
1343 AMTAR='$${TAR-tar}'
1344
1345-am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
1346+
1347+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5
1348+$as_echo_n "checking how to create a ustar tar archive... " >&6; }
1349+# Loop over all known methods to create a tar archive until one works.
1350+_am_tools='gnutar plaintar pax cpio none'
1351+_am_tools=${am_cv_prog_tar_ustar-$_am_tools}
1352+# Do not fold the above two line into one, because Tru64 sh and
1353+# Solaris sh will not grok spaces in the rhs of `-'.
1354+for _am_tool in $_am_tools
1355+do
1356+ case $_am_tool in
1357+ gnutar)
1358+ for _am_tar in tar gnutar gtar;
1359+ do
1360+ { echo "$as_me:$LINENO: $_am_tar --version" >&5
1361+ ($_am_tar --version) >&5 2>&5
1362+ ac_status=$?
1363+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
1364+ (exit $ac_status); } && break
1365+ done
1366+ am__tar="$_am_tar --format=ustar -chf - "'"$$tardir"'
1367+ am__tar_="$_am_tar --format=ustar -chf - "'"$tardir"'
1368+ am__untar="$_am_tar -xf -"
1369+ ;;
1370+ plaintar)
1371+ # Must skip GNU tar: if it does not support --format= it doesn't create
1372+ # ustar tarball either.
1373+ (tar --version) >/dev/null 2>&1 && continue
1374+ am__tar='tar chf - "$$tardir"'
1375+ am__tar_='tar chf - "$tardir"'
1376+ am__untar='tar xf -'
1377+ ;;
1378+ pax)
1379+ am__tar='pax -L -x ustar -w "$$tardir"'
1380+ am__tar_='pax -L -x ustar -w "$tardir"'
1381+ am__untar='pax -r'
1382+ ;;
1383+ cpio)
1384+ am__tar='find "$$tardir" -print | cpio -o -H ustar -L'
1385+ am__tar_='find "$tardir" -print | cpio -o -H ustar -L'
1386+ am__untar='cpio -i -H ustar -d'
1387+ ;;
1388+ none)
1389+ am__tar=false
1390+ am__tar_=false
1391+ am__untar=false
1392+ ;;
1393+ esac
1394+
1395+ # If the value was cached, stop now. We just wanted to have am__tar
1396+ # and am__untar set.
1397+ test -n "${am_cv_prog_tar_ustar}" && break
1398+
1399+ # tar/untar a dummy directory, and stop if the command works
1400+ rm -rf conftest.dir
1401+ mkdir conftest.dir
1402+ echo GrepMe > conftest.dir/file
1403+ { echo "$as_me:$LINENO: tardir=conftest.dir && eval $am__tar_ >conftest.tar" >&5
1404+ (tardir=conftest.dir && eval $am__tar_ >conftest.tar) >&5 2>&5
1405+ ac_status=$?
1406+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
1407+ (exit $ac_status); }
1408+ rm -rf conftest.dir
1409+ if test -s conftest.tar; then
1410+ { echo "$as_me:$LINENO: $am__untar <conftest.tar" >&5
1411+ ($am__untar <conftest.tar) >&5 2>&5
1412+ ac_status=$?
1413+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
1414+ (exit $ac_status); }
1415+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
1416+ fi
1417+done
1418+rm -rf conftest.dir
1419+
1420+if ${am_cv_prog_tar_ustar+:} false; then :
1421+ $as_echo_n "(cached) " >&6
1422+else
1423+ am_cv_prog_tar_ustar=$_am_tool
1424+fi
1425+
1426+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5
1427+$as_echo "$am_cv_prog_tar_ustar" >&6; }
1428
1429
1430
1431@@ -18475,24 +18556,26 @@
1432
1433 { $as_echo "$as_me:${as_lineno-$LINENO}: checking Erlang version compatibility" >&5
1434 $as_echo_n "checking Erlang version compatibility... " >&6; }
1435-erlang_version_error="The installed Erlang version must be >= R14B (erts-5.8.1) and <R17 (erts-5.11)"
1436+erlang_version_error="The installed Erlang version must be >= R14B (erts-5.8.1) and =< 17 (erts-6.0)"
1437
1438 version="`${ERL} -version 2>&1 | ${SED} 's/[^0-9]/ /g'` 0 0 0"
1439 major_version=`echo $version | ${AWK} "{print \\$1}"`
1440 minor_version=`echo $version | ${AWK} "{print \\$2}"`
1441 patch_version=`echo $version | ${AWK} "{print \\$3}"`
1442+echo -n "detected Erlang version: $major_version.$minor_version.$patch_version..."
1443
1444-if test $major_version -ne 5; then
1445- as_fn_error $? "$erlang_version_error" "$LINENO" 5
1446+if test $major_version -lt 5 -o $major_version -gt 6; then
1447+ as_fn_error $? "$erlang_version_error major_version does not match" "$LINENO" 5
1448 fi
1449
1450-if test $minor_version -lt 8 -o $minor_version -gt 10; then
1451- as_fn_error $? "$erlang_version_error" "$LINENO" 5
1452+if test $major_version -eq 5 -a $minor_version -lt 8; then
1453+ as_fn_error $? "$erlang_version_error minor_version does not match" "$LINENO" 5
1454 fi
1455
1456 { $as_echo "$as_me:${as_lineno-$LINENO}: result: compatible" >&5
1457 $as_echo "compatible" >&6; }
1458
1459+# returns 17 for erts-6.0, and R14B03 or similar for earlier releases
1460 otp_release="`\
1461 ${ERL} -noshell \
1462 -eval 'io:put_chars(erlang:system_info(otp_release)).' \
1463@@ -18500,7 +18583,7 @@
1464
1465
1466
1467- if test x$otp_release \> xR13B03; then
1468+ if can_use_nifs=$(echo $otp_release | grep -E "^(R14B|R15|R16|17)"); then
1469 USE_OTP_NIFS_TRUE=
1470 USE_OTP_NIFS_FALSE='#'
1471 else
1472@@ -18508,7 +18591,7 @@
1473 USE_OTP_NIFS_FALSE=
1474 fi
1475
1476- if test x$otp_release \> xR14B03; then
1477+ if can_use_ejson=$(echo $otp_release | grep -E "^(R14B03|R15|R16|17)"); then
1478 USE_EJSON_COMPARE_NIF_TRUE=
1479 USE_EJSON_COMPARE_NIF_FALSE='#'
1480 else
1481@@ -19131,11 +19214,11 @@
1482 package_name="Apache CouchDB"
1483
1484
1485-version="1.5.0"
1486+version="1.6.0"
1487
1488 version_major="1"
1489
1490-version_minor="5"
1491+version_minor="6"
1492
1493 version_revision="0"
1494
1495@@ -19858,7 +19941,7 @@
1496 # report actual input values of CONFIG_FILES etc. instead of their
1497 # values after options handling.
1498 ac_log="
1499-This file was extended by Apache CouchDB $as_me 1.5.0, which was
1500+This file was extended by Apache CouchDB $as_me 1.6.0, which was
1501 generated by GNU Autoconf 2.69. Invocation command line was
1502
1503 CONFIG_FILES = $CONFIG_FILES
1504@@ -19924,7 +20007,7 @@
1505 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
1506 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
1507 ac_cs_version="\\
1508-Apache CouchDB config.status 1.5.0
1509+Apache CouchDB config.status 1.6.0
1510 configured by $0, generated by GNU Autoconf 2.69,
1511 with options \\"\$ac_cs_config\\"
1512
1513
1514=== modified file 'configure.ac'
1515--- configure.ac 2013-12-01 16:55:05 +0000
1516+++ configure.ac 2014-07-28 15:45:29 +0000
1517@@ -24,7 +24,7 @@
1518 AC_CONFIG_HEADERS([config.h])
1519 AC_CONFIG_HEADERS([src/snappy/google-snappy/config.h])
1520
1521-AM_INIT_AUTOMAKE([1.6.3 foreign])
1522+AM_INIT_AUTOMAKE([1.6.3 foreign tar-ustar])
1523
1524 AC_USE_SYSTEM_EXTENSIONS
1525 AC_ENABLE_SHARED
1526@@ -411,23 +411,25 @@
1527
1528 { $as_echo "$as_me:${as_lineno-$LINENO}: checking Erlang version compatibility" >&5
1529 $as_echo_n "checking Erlang version compatibility... " >&6; }
1530-erlang_version_error="The installed Erlang version must be >= R14B (erts-5.8.1) and <R17 (erts-5.11)"
1531+erlang_version_error="The installed Erlang version must be >= R14B (erts-5.8.1) and =< 17 (erts-6.0)"
1532
1533 version="`${ERL} -version 2>&1 | ${SED} 's/[[^0-9]]/ /g'` 0 0 0"
1534 major_version=`echo $version | ${AWK} "{print \\$1}"`
1535 minor_version=`echo $version | ${AWK} "{print \\$2}"`
1536 patch_version=`echo $version | ${AWK} "{print \\$3}"`
1537+echo -n "detected Erlang version: $major_version.$minor_version.$patch_version..."
1538
1539-if test $major_version -ne 5; then
1540- as_fn_error $? "$erlang_version_error" "$LINENO" 5
1541+if test $major_version -lt 5 -o $major_version -gt 6; then
1542+ as_fn_error $? "$erlang_version_error major_version does not match" "$LINENO" 5
1543 fi
1544
1545-if test $minor_version -lt 8 -o $minor_version -gt 10; then
1546- as_fn_error $? "$erlang_version_error" "$LINENO" 5
1547+if test $major_version -eq 5 -a $minor_version -lt 8; then
1548+ as_fn_error $? "$erlang_version_error minor_version does not match" "$LINENO" 5
1549 fi
1550
1551 AC_MSG_RESULT(compatible)
1552
1553+# returns 17 for erts-6.0, and R14B03 or similar for earlier releases
1554 otp_release="`\
1555 ${ERL} -noshell \
1556 -eval 'io:put_chars(erlang:system_info(otp_release)).' \
1557@@ -435,8 +437,10 @@
1558
1559 AC_SUBST(otp_release)
1560
1561-AM_CONDITIONAL([USE_OTP_NIFS], [test x$otp_release \> xR13B03])
1562-AM_CONDITIONAL([USE_EJSON_COMPARE_NIF], [test x$otp_release \> xR14B03])
1563+AM_CONDITIONAL([USE_OTP_NIFS],
1564+ [can_use_nifs=$(echo $otp_release | grep -E "^(R14B|R15|R16|17)")])
1565+AM_CONDITIONAL([USE_EJSON_COMPARE_NIF],
1566+ [can_use_ejson=$(echo $otp_release | grep -E "^(R14B03|R15|R16|17)")])
1567
1568 has_crypto=`\
1569 ${ERL} -eval "\
1570
1571=== modified file 'debian/changelog'
1572--- debian/changelog 2013-12-01 16:55:05 +0000
1573+++ debian/changelog 2014-07-28 15:45:29 +0000
1574@@ -1,3 +1,10 @@
1575+couchdb (1.6.0-0ubuntu1) utopic; urgency=low
1576+
1577+ * New upstream release (LP: #1212481)
1578+ * debian/control: bump Standards-Version to 3.9.5
1579+
1580+ -- Jason Gerard DeRose <jason@system76.com> Sun, 20 Jul 2014 16:31:46 -0600
1581+
1582 couchdb (1.5.0-0ubuntu1) trusty; urgency=low
1583
1584 * New upstream release (LP: #1254371)
1585
1586=== modified file 'debian/control'
1587--- debian/control 2013-12-01 16:55:05 +0000
1588+++ debian/control 2014-07-28 15:45:29 +0000
1589@@ -3,7 +3,7 @@
1590 Priority: optional
1591 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
1592 XSBC-Original-Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.hu>
1593-Standards-Version: 3.9.4
1594+Standards-Version: 3.9.5
1595 Build-Depends: debhelper (>= 9),
1596 erlang-dev (>= 1:14.b.4),
1597 erlang-crypto,
1598
1599=== modified file 'etc/couchdb/default.ini.tpl.in'
1600--- etc/couchdb/default.ini.tpl.in 2013-12-01 16:55:05 +0000
1601+++ etc/couchdb/default.ini.tpl.in 2014-07-28 15:45:29 +0000
1602@@ -50,8 +50,11 @@
1603 ;server_options = [{backlog, 128}, {acceptor_pool_size, 16}]
1604 ; For more socket options, consult Erlang's module 'inet' man page.
1605 ;socket_options = [{recbuf, 262144}, {sndbuf, 262144}, {nodelay, true}]
1606+socket_options = [{recbuf, 262144}, {sndbuf, 262144}]
1607 log_max_chunk_size = 1000000
1608 enable_cors = false
1609+; CouchDB can optionally enforce a maximum uri length;
1610+; max_uri_length = 8000
1611
1612 [ssl]
1613 port = 6984
1614@@ -69,6 +72,8 @@
1615 auth_cache_size = 50 ; size is number of cache entries
1616 allow_persistent_cookies = false ; set to true to allow persistent cookies
1617 iterations = 10 ; iterations for password hashing
1618+; min_iterations = 1
1619+; max_iterations = 1000000000
1620 ; comma-separated list of public fields, 404 if empty
1621 ; public_fields =
1622
1623@@ -215,6 +220,8 @@
1624 ; The utc_id_suffix value will be appended to uuids generated by the utc_id algorithm.
1625 ; Replicating instances should have unique utc_id_suffix values to ensure uniqueness of utc_id ids.
1626 utc_id_suffix =
1627+# Maximum number of UUIDs retrievable from /_uuids in a single request
1628+max_count = 1000
1629
1630 [stats]
1631 ; rate is in milliseconds
1632
1633=== modified file 'license.skip'
1634--- license.skip 2013-12-01 16:55:05 +0000
1635+++ license.skip 2014-07-28 15:45:29 +0000
1636@@ -81,6 +81,11 @@
1637 ^share/www/script/test/lorem.*
1638 ^share/www/style/jquery-ui-1.8.11.custom.css
1639 ^share/www/fauxton/img/.*
1640+^share/www/fauxton/js/ace/mode-javascript.js
1641+^share/www/fauxton/js/ace/mode-json.js
1642+^share/www/fauxton/js/ace/theme-crimson_editor.js
1643+^share/www/fauxton/js/ace/worker-javascript.js
1644+^share/www/fauxton/js/ace/worker-json.js
1645 ^src/Makefile
1646 ^src/Makefile.in
1647 ^src/couch_index/Makefile
1648@@ -118,23 +123,36 @@
1649 ^src/couch_dbupdates
1650 ^src/ejson/.*
1651 ^src/etap/.*
1652-^src/fauxton/app/app.js
1653-^src/fauxton/app/config.js
1654-^src/fauxton/app/main.js
1655-^src/fauxton/app/modules/pouchdb/*
1656-^src/fauxton/assets/.*
1657-^src/fauxton/couchapp.js
1658+^src/fauxton/app/addons/config/assets/less/config.less
1659+^src/fauxton/assets/css/codemirror.css
1660+^src/fauxton/assets/css/nv.d3.css
1661+^src/fauxton/assets/img/.*
1662+^src/fauxton/assets/js/libs/.*.js
1663+^src/fauxton/assets/js/libs/ace/.*.js
1664+^src/fauxton/assets/js/libs/ace/snippets/.*.js
1665+^src/fauxton/assets/js/plugins/.*.js
1666+^src/fauxton/assets/js/plugins/zeroclipboard/ZeroClipboard.swf
1667+^src/fauxton/assets/less/bootstrap/.*.less
1668+^src/fauxton/assets/less/bootstrap/tests/css-tests.css
1669+^src/fauxton/assets/less/bootstrap/tests/buttons.html
1670 ^src/fauxton/favicon.ico
1671 ^src/fauxton/package.json
1672+^src/fauxton/extensions.md
1673 ^src/fauxton/readme.md
1674 ^src/fauxton/writing_addons.md
1675 ^src/fauxton/TODO.md
1676+^src/fauxton/CONTRIBUTING.md
1677 ^src/fauxton/settings.json.*
1678-^src/fauxton/test/.*
1679+^src/fauxton/test/test.config.underscore
1680+^src/fauxton/test/mocha/chai.js
1681+^src/fauxton/test/mocha/mocha.css
1682+^src/fauxton/test/mocha/mocha.js
1683+^src/fauxton/test/mocha/sinon.js
1684+^src/fauxton/test/mocha/sinon-chai.js
1685 ^src/fauxton/tasks/addon/rename.json
1686-^src/fauxton/app/addons/activetasks/assets/less/activetasks.less
1687-^src/fauxton/app/addons/auth/assets/less/auth.less
1688-^src/fauxton/app/addons/permissions/assets/less/permissions.less
1689+^src/fauxton/assets/lib/ace/.*
1690+^src/fauxton/app/addons/pouchdb/pouch.collate.js
1691+^src/fauxton/app/addons/pouchdb/pouchdb.mapreduce.js
1692 ^src/ibrowse/.*
1693 ^src/mochiweb/.*
1694 ^src/my-first-couchdb-plugin/priv/*/*
1695@@ -167,3 +185,7 @@
1696 ^var/Makefile
1697 ^var/Makefile.in
1698 ^Vagrantfile
1699+^share/www/fauxton/Makefile
1700+^share/www/fauxton/Makefile.in
1701+^share/www/Makefile
1702+^share/www/Makefile.in
1703
1704=== modified file 'share/Makefile.am'
1705--- share/Makefile.am 2013-12-01 16:55:05 +0000
1706+++ share/Makefile.am 2014-07-28 15:45:29 +0000
1707@@ -90,6 +90,11 @@
1708 www/fauxton/img/minilogo.png \
1709 www/fauxton/index.html \
1710 www/fauxton/js/require.js \
1711+ www/fauxton/js/ace/mode-javascript.js \
1712+ www/fauxton/js/ace/mode-json.js \
1713+ www/fauxton/js/ace/theme-crimson_editor.js \
1714+ www/fauxton/js/ace/worker-javascript.js \
1715+ www/fauxton/js/ace/worker-json.js \
1716 www/favicon.ico \
1717 www/image/add.png \
1718 www/image/apply.gif \
1719
1720=== modified file 'share/Makefile.in'
1721--- share/Makefile.in 2013-12-01 16:55:05 +0000
1722+++ share/Makefile.in 2014-07-28 15:45:29 +0000
1723@@ -387,6 +387,11 @@
1724 www/fauxton/img/minilogo.png \
1725 www/fauxton/index.html \
1726 www/fauxton/js/require.js \
1727+ www/fauxton/js/ace/mode-javascript.js \
1728+ www/fauxton/js/ace/mode-json.js \
1729+ www/fauxton/js/ace/theme-crimson_editor.js \
1730+ www/fauxton/js/ace/worker-javascript.js \
1731+ www/fauxton/js/ace/worker-json.js \
1732 www/favicon.ico \
1733 www/image/add.png \
1734 www/image/apply.gif \
1735
1736=== modified file 'share/doc/build/Makefile.am'
1737--- share/doc/build/Makefile.am 2013-12-01 16:55:05 +0000
1738+++ share/doc/build/Makefile.am 2014-07-28 15:45:29 +0000
1739@@ -160,6 +160,7 @@
1740 html/_sources/whatsnew/1.3.txt \
1741 html/_sources/whatsnew/1.4.txt \
1742 html/_sources/whatsnew/1.5.txt \
1743+ html/_sources/whatsnew/1.6.txt \
1744 html/_sources/whatsnew/index.txt \
1745 html/_sources/about.txt \
1746 html/_sources/contents.txt \
1747@@ -281,6 +282,7 @@
1748 html/whatsnew/1.3.html \
1749 html/whatsnew/1.4.html \
1750 html/whatsnew/1.5.html \
1751+ html/whatsnew/1.6.html \
1752 html/whatsnew/index.html \
1753 html/about.html \
1754 html/config-ref.html \
1755@@ -388,6 +390,7 @@
1756 ../src/cve/2012-5641.rst \
1757 ../src/cve/2012-5649.rst \
1758 ../src/cve/2012-5650.rst \
1759+ ../src/cve/2014-2668.rst \
1760 ../src/cve/index.rst \
1761 ../src/fauxton/addons.rst \
1762 ../src/fauxton/index.rst \
1763@@ -428,6 +431,7 @@
1764 ../src/whatsnew/1.3.rst \
1765 ../src/whatsnew/1.4.rst \
1766 ../src/whatsnew/1.5.rst \
1767+ ../src/whatsnew/1.6.rst \
1768 ../src/whatsnew/index.rst \
1769 ../src/about.rst \
1770 ../src/contents.rst \
1771@@ -446,13 +450,13 @@
1772 ../templates/layout.html \
1773 ../templates/help.html \
1774 ../templates/searchbox.html \
1775+ ../templates/tracking.html \
1776 ../templates/utilities.html
1777
1778 sphinx_extensions = \
1779 ../ext/configdomain.py \
1780 ../ext/github.py \
1781- ../ext/httpdomain.py \
1782- ../ext/http-api-descr.json
1783+ ../ext/httpdomain.py
1784
1785 EXTRA_DIST = \
1786 $(image_files) \
1787
1788=== modified file 'share/doc/build/Makefile.in'
1789--- share/doc/build/Makefile.in 2013-12-01 16:55:05 +0000
1790+++ share/doc/build/Makefile.in 2014-07-28 15:45:29 +0000
1791@@ -389,6 +389,7 @@
1792 html/_sources/whatsnew/1.3.txt \
1793 html/_sources/whatsnew/1.4.txt \
1794 html/_sources/whatsnew/1.5.txt \
1795+ html/_sources/whatsnew/1.6.txt \
1796 html/_sources/whatsnew/index.txt \
1797 html/_sources/about.txt \
1798 html/_sources/contents.txt \
1799@@ -510,6 +511,7 @@
1800 html/whatsnew/1.3.html \
1801 html/whatsnew/1.4.html \
1802 html/whatsnew/1.5.html \
1803+ html/whatsnew/1.6.html \
1804 html/whatsnew/index.html \
1805 html/about.html \
1806 html/config-ref.html \
1807@@ -613,6 +615,7 @@
1808 ../src/cve/2012-5641.rst \
1809 ../src/cve/2012-5649.rst \
1810 ../src/cve/2012-5650.rst \
1811+ ../src/cve/2014-2668.rst \
1812 ../src/cve/index.rst \
1813 ../src/fauxton/addons.rst \
1814 ../src/fauxton/index.rst \
1815@@ -653,6 +656,7 @@
1816 ../src/whatsnew/1.3.rst \
1817 ../src/whatsnew/1.4.rst \
1818 ../src/whatsnew/1.5.rst \
1819+ ../src/whatsnew/1.6.rst \
1820 ../src/whatsnew/index.rst \
1821 ../src/about.rst \
1822 ../src/contents.rst \
1823@@ -671,13 +675,13 @@
1824 ../templates/layout.html \
1825 ../templates/help.html \
1826 ../templates/searchbox.html \
1827+ ../templates/tracking.html \
1828 ../templates/utilities.html
1829
1830 sphinx_extensions = \
1831 ../ext/configdomain.py \
1832 ../ext/github.py \
1833- ../ext/httpdomain.py \
1834- ../ext/http-api-descr.json
1835+ ../ext/httpdomain.py
1836
1837 EXTRA_DIST = \
1838 $(image_files) \
1839
1840=== modified file 'share/doc/build/html/_sources/api/database/bulk-api.txt'
1841--- share/doc/build/html/_sources/api/database/bulk-api.txt 2013-12-01 16:55:05 +0000
1842+++ share/doc/build/html/_sources/api/database/bulk-api.txt 2014-07-28 15:45:29 +0000
1843@@ -17,6 +17,7 @@
1844 =================
1845
1846 .. http:get:: /{db}/_all_docs
1847+ :synopsis: Returns a built-in view of all documents in this database
1848
1849 Returns a JSON structure of all of the documents in a given database.
1850 The information is returned as a JSON structure containing meta
1851@@ -134,6 +135,7 @@
1852
1853
1854 .. http:post:: /{db}/_all_docs
1855+ :synopsis: Returns certain rows from the built-in view of all documents
1856
1857 The ``POST`` to ``_all_docs`` allows to specify multiple keys to be
1858 selected from the database. This enables you to request multiple
1859@@ -191,6 +193,7 @@
1860 ==================
1861
1862 .. http:post:: /{db}/_bulk_docs
1863+ :synopsis: Inserts or updates multiple documents in to the database in a single request
1864
1865 The bulk document API allows you to create and update multiple documents
1866 at the same time within a single request. The basic operation is similar
1867@@ -211,25 +214,25 @@
1868 :<header Content-Type: :mimetype:`application/json`
1869 :<header X-Couch-Full-Commit: Overrides server's
1870 :config:option:`commit policy <couchdb/delayed_commits>`. Possible values
1871- are: ``false`` and ``true``. *Optional*.
1872+ are: ``false`` and ``true``. *Optional*
1873 :<json boolean all_or_nothing: Sets the database commit mode to use
1874- `all-or-nothing` semantics. Default is ``false``. *Optional*.
1875+ :ref:`all-or-nothing <api/db/bulk_docs/semantics>` semantics.
1876+ Default is ``false``. *Optional*
1877 :<json array docs: List of documents objects
1878 :<json boolean new_edits: If ``false``, prevents the database from assigning
1879- them new revision IDs. Default is ``true``. *Optional*.
1880+ them new revision IDs. Default is ``true``. *Optional*
1881 :>header Content-Type: - :mimetype:`application/json`
1882 - :mimetype:`text/plain; charset=utf-8`
1883 :>jsonarr string id: Document ID
1884- :>jsonarr string rev: New document revision token. *Optional*. Available
1885- if document have saved without errors.
1886- :>jsonarr string error: Error type. *Optional*.
1887- :>jsonarr string reason: Error reason. *Optional*.
1888+ :>jsonarr string rev: New document revision token. Available
1889+ if document have saved without errors. *Optional*
1890+ :>jsonarr string error: Error type. *Optional*
1891+ :>jsonarr string reason: Error reason. *Optional*
1892 :code 201: Document(s) have been created or updated
1893- :code 400: The request provided invalid JSON data. Check that your data
1894- is both ``utf-8`` and complies to the `JSON specification`_. Tools such as
1895- `yajl`_ are available on all platforms that CouchDB runs on to assist with
1896- validation and pretty printing.
1897- :code 500: Malformed data provided
1898+ :code 400: The request provided invalid JSON data
1899+ :code 417: Occurs when ``all_or_nothing`` option set as ``true`` and
1900+ at least one document was rejected by :ref:`validation function <vdufun>`
1901+ :code 500: Malformed data provided, while it's still valid JSON
1902
1903 **Request**:
1904
1905@@ -278,9 +281,6 @@
1906 }
1907 ]
1908
1909-.. _JSON specification: http://json.org/
1910-.. _yajl: http://lloyd.github.io/yajl/
1911-
1912
1913 Inserting Documents in Bulk
1914 ---------------------------
1915@@ -294,64 +294,78 @@
1916 database. The constraints are detailed in :ref:`api/db/bulk_docs/semantics`.
1917
1918 To insert documents in bulk into a database you need to supply a JSON
1919-structure with the array of documents that you want to add to the
1920-database. Using this method you can either include a document ID, or
1921-allow the document ID to be automatically generated.
1922+structure with the array of documents that you want to add to the database.
1923+You can either include a document ID, or allow the document ID to be
1924+automatically generated.
1925
1926 For example, the following update inserts three new documents, two with the
1927 supplied document IDs, and one which will have a document ID generated:
1928
1929-.. code-block:: javascript
1930-
1931- {
1932- "docs" : [
1933- {
1934- "_id" : "FishStew",
1935- "servings" : 4,
1936- "subtitle" : "Delicious with fresh bread",
1937- "title" : "Fish Stew"
1938- },
1939- {
1940- "_id" : "LambStew",
1941- "servings" : 6,
1942- "subtitle" : "Delicious with scone topping",
1943- "title" : "Lamb Stew"
1944- },
1945- {
1946- "servings" : 8,
1947- "subtitle" : "Delicious with suet dumplings",
1948- "title" : "Beef Stew"
1949- },
1950- ]
1951- }
1952-
1953-
1954-The return type from a bulk insertion will be 201, with the content of
1955-the returned structure indicating specific success or otherwise messages
1956-on a per-document basis.
1957+.. code-block:: http
1958+
1959+ POST /source/_bulk_docs HTTP/1.1
1960+ Accept: application/json
1961+ Content-Length: 323
1962+ Content-Type: application/json
1963+ Host: localhost:5984
1964+
1965+ {
1966+ "docs": [
1967+ {
1968+ "_id": "FishStew",
1969+ "servings": 4,
1970+ "subtitle": "Delicious with freshly baked bread",
1971+ "title": "FishStew"
1972+ },
1973+ {
1974+ "_id": "LambStew",
1975+ "servings": 6,
1976+ "subtitle": "Serve with a whole meal scone topping",
1977+ "title": "LambStew"
1978+ },
1979+ {
1980+ "_id": "BeefStew",
1981+ "servings": 8,
1982+ "subtitle": "Hand-made dumplings make a great accompaniment",
1983+ "title": "BeefStew"
1984+ }
1985+ ]
1986+ }
1987+
1988+
1989+The return type from a bulk insertion will be :statuscode:`201`,
1990+with the content of the returned structure indicating specific success
1991+or otherwise messages on a per-document basis.
1992
1993 The return structure from the example above contains a list of the
1994 documents created, here with the combination and their revision IDs:
1995
1996 .. code-block:: http
1997
1998- POST http://couchdb:5984/recipes/_bulk_docs
1999- Content-Type: application/json
2000+ HTTP/1.1 201 Created
2001+ Cache-Control: must-revalidate
2002+ Content-Length: 215
2003+ Content-Type: application/json
2004+ Date: Sat, 26 Oct 2013 00:10:39 GMT
2005+ Server: CouchDB (Erlang OTP)
2006
2007- [
2008- {
2009- "id" : "FishStew",
2010- "rev" : "1-9c65296036141e575d32ba9c034dd3ee",
2011- },
2012- {
2013- "id" : "LambStew",
2014- "rev" : "1-34c318924a8f327223eed702ddfdc66d",
2015- },
2016- {
2017- "id" : "7f7638c86173eb440b8890839ff35433",
2018- "rev" : "1-857c7cbeb6c8dd1dd34a0c73e8da3c44",
2019- }
2020- ]
2021+ [
2022+ {
2023+ "id": "FishStew",
2024+ "ok": true,
2025+ "rev": "1-6a466d5dfda05e613ba97bd737829d67"
2026+ },
2027+ {
2028+ "id": "LambStew",
2029+ "ok": true,
2030+ "rev": "1-648f1b989d52b8e43f05aa877092cc7c"
2031+ },
2032+ {
2033+ "id": "BeefStew",
2034+ "ok": true,
2035+ "rev": "1-e4602845fc4c99674f50b1d5a804fdfa"
2036+ }
2037+ ]
2038
2039
2040 The content and structure of the returned JSON will depend on the transaction
2041@@ -370,62 +384,76 @@
2042
2043 .. code-block:: http
2044
2045- POST http://couchdb:5984/recipes/_bulk_docs
2046- Content-Type: application/json
2047+ POST /recipes/_bulk_docs HTTP/1.1
2048+ Accept: application/json
2049+ Content-Length: 464
2050+ Content-Type: application/json
2051+ Host: localhost:5984
2052
2053- {
2054- "docs" : [
2055- {
2056- "_id" : "FishStew",
2057- "_rev" : "1-9c65296036141e575d32ba9c034dd3ee",
2058- "servings" : 4,
2059- "subtitle" : "Delicious with freshly baked bread",
2060- "title" : "Fish Stew"
2061- },
2062- {
2063- "_id" : "LambStew",
2064- "_rev" : "1-34c318924a8f327223eed702ddfdc66d",
2065- "servings" : 6,
2066- "subtitle" : "Serve with a wholemeal scone topping",
2067- "title" : "Lamb Stew"
2068- },
2069- {
2070- "_id" : "7f7638c86173eb440b8890839ff35433"
2071- "_rev" : "1-857c7cbeb6c8dd1dd34a0c73e8da3c44",
2072- "servings" : 8,
2073- "subtitle" : "Hand-made dumplings make a great accompaniment",
2074- "title" : "Beef Stew"
2075+ {
2076+ "docs": [
2077+ {
2078+ "_id": "FishStew",
2079+ "_rev": "1-6a466d5dfda05e613ba97bd737829d67",
2080+ "servings": 4,
2081+ "subtitle": "Delicious with freshly baked bread",
2082+ "title": "FishStew"
2083+ },
2084+ {
2085+ "_id": "LambStew",
2086+ "_rev": "1-648f1b989d52b8e43f05aa877092cc7c",
2087+ "servings": 6,
2088+ "subtitle": "Serve with a whole meal scone topping",
2089+ "title": "LambStew"
2090+ },
2091+ {
2092+ "_id": "BeefStew",
2093+ "_rev": "1-e4602845fc4c99674f50b1d5a804fdfa",
2094+ "servings": 8,
2095+ "subtitle": "Hand-made dumplings make a great accompaniment",
2096+ "title": "BeefStew"
2097 }
2098- ]
2099- }
2100+ ]
2101+ }
2102
2103 The return structure is the JSON of the updated documents, with the new
2104 revision and ID information:
2105
2106-.. code-block:: javascript
2107-
2108- [
2109- {
2110- "id" : "FishStew",
2111- "rev" : "2-e7af4c4e9981d960ecf78605d79b06d1"
2112- },
2113- {
2114- "id" : "LambStew",
2115- "rev" : "2-0786321986194c92dd3b57dfbfc741ce"
2116- },
2117- {
2118- "id" : "7f7638c86173eb440b8890839ff35433",
2119- "rev" : "2-bdd3bf3563bee516b96885a66c743f8e"
2120- }
2121- ]
2122+.. code-block:: http
2123+
2124+ HTTP/1.1 201 Created
2125+ Cache-Control: must-revalidate
2126+ Content-Length: 215
2127+ Content-Type: application/json
2128+ Date: Sat, 26 Oct 2013 00:10:39 GMT
2129+ Server: CouchDB (Erlang OTP)
2130+
2131+ [
2132+ {
2133+ "id": "FishStew",
2134+ "ok": true,
2135+ "rev": "2-2bff94179917f1dec7cd7f0209066fb8"
2136+ },
2137+ {
2138+ "id": "LambStew",
2139+ "ok": true,
2140+ "rev": "2-6a7aae7ac481aa98a2042718d09843c4"
2141+ },
2142+ {
2143+ "id": "BeefStew",
2144+ "ok": true,
2145+ "rev": "2-9801936a42f06a16f16c30027980d96f"
2146+ }
2147+ ]
2148+
2149
2150 You can optionally delete documents during a bulk update by adding the
2151 ``_deleted`` field with a value of ``true`` to each document ID/revision
2152 combination within the submitted JSON structure.
2153
2154-The return type from a bulk insertion will be :code:`201`, with the content of
2155-the returned structure indicating specific success or otherwise messages
2156-on a per-document basis.
2157+The return type from a bulk insertion will be :statuscode:`201`, with the
2158+content of the returned structure indicating specific success or otherwise
2159+messages on a per-document basis.
2160
2161 The content and structure of the returned JSON will depend on the transaction
2162 semantics being used for the bulk update; see :ref:`api/db/bulk_docs/semantics`
2163@@ -442,9 +470,9 @@
2164 the state of the documents in the event of system failure, and the level
2165 of conflict checking performed on each document. The two modes are:
2166
2167-- ``non-atomic``
2168+- **non-atomic**
2169
2170- The default mode is non-atomic, that is, CouchDB will only guarantee
2171+ The default mode is `non-atomic`, that is, CouchDB will only guarantee
2172 that some of the documents will be saved when you send the request.
2173 The response will contain the list of documents successfully inserted
2174 or updated during the process. In the event of a crash, some of the
2175@@ -470,7 +498,7 @@
2176 "reason" : "Document update conflict."
2177 },
2178 {
2179- "id" : "7f7638c86173eb440b8890839ff35433",
2180+ "id" : "BeefStew",
2181 "error" : "conflict",
2182 "reason" : "Document update conflict."
2183 }
2184@@ -481,9 +509,9 @@
2185 submit the document update, with the correct revision tag, to update
2186 the document.
2187
2188-- ``all-or-nothing``
2189+- **all-or-nothing**
2190
2191- In all-or-nothing mode, either all documents are written to the
2192+ In `all-or-nothing` mode, either all documents are written to the
2193 database, or no documents are written to the database, in the event
2194 of a system failure during commit.
2195
2196@@ -493,22 +521,32 @@
2197 The returned structure contains the list of documents with new
2198 revisions:
2199
2200- .. code-block:: javascript
2201-
2202- [
2203- {
2204- "id" : "FishStew",
2205- "rev" : "2-e7af4c4e9981d960ecf78605d79b06d1"
2206- },
2207- {
2208- "id" : "LambStew",
2209- "rev" : "2-0786321986194c92dd3b57dfbfc741ce"
2210- },
2211- {
2212- "id" : "7f7638c86173eb440b8890839ff35433",
2213- "rev" : "2-bdd3bf3563bee516b96885a66c743f8e"
2214+ .. code-block:: http
2215+
2216+ HTTP/1.1 201 Created
2217+ Cache-Control: must-revalidate
2218+ Content-Length: 215
2219+ Content-Type: application/json
2220+ Date: Sat, 26 Oct 2013 00:13:33 GMT
2221+ Server: CouchDB (Erlang OTP)
2222+
2223+ [
2224+ {
2225+ "id": "FishStew",
2226+ "ok": true,
2227+ "rev": "1-6a466d5dfda05e613ba97bd737829d67"
2228+ },
2229+ {
2230+ "id": "LambStew",
2231+ "ok": true,
2232+ "rev": "1-648f1b989d52b8e43f05aa877092cc7c"
2233+ },
2234+ {
2235+ "id": "BeefStew",
2236+ "ok": true,
2237+ "rev": "1-e4602845fc4c99674f50b1d5a804fdfa"
2238 }
2239- ]
2240+ ]
2241
2242 When updating documents using this mode the revision of a document
2243 included in views will be arbitrary. You can check the conflict
2244@@ -545,7 +583,7 @@
2245 Replication of documents is independent of the type of insert or update.
2246 The documents and revisions created during a bulk insert or update are
2247 replicated in the same way as any other document. This can mean that if
2248-you make use of the all-or-nothing mode the exact list of documents,
2249+you make use of the `all-or-nothing` mode the exact list of documents,
2250 revisions (and their conflict state) may or may not be replicated to
2251 other databases correctly.
2252
2253@@ -565,7 +603,7 @@
2254 determine error type and course of action. Errors will be one of the
2255 following type:
2256
2257-- ``conflict``
2258+- **conflict**
2259
2260 The document as submitted is in conflict. If you used the default
2261 bulk transaction mode then the new revision will not have been
2262@@ -577,23 +615,32 @@
2263 is identical to the resolution procedures used when resolving
2264 conflict errors during replication.
2265
2266-- ``forbidden``
2267+- **forbidden**
2268
2269 Entries with this error type indicate that the validation routine
2270 applied to the document during submission has returned an error.
2271
2272- For example, if your validation routine includes the following:
2273+ For example, if your :ref:`validation routine <vdufun>` includes
2274+ the following:
2275
2276 .. code-block:: javascript
2277
2278 throw({forbidden: 'invalid recipe ingredient'});
2279
2280- The error returned will be:
2281-
2282- .. code-block:: javascript
2283+ The error response returned will be:
2284+
2285+ .. code-block:: http
2286+
2287+ HTTP/1.1 417 Expectation Failed
2288+ Cache-Control: must-revalidate
2289+ Content-Length: 120
2290+ Content-Type: application/json
2291+ Date: Sat, 26 Oct 2013 00:05:17 GMT
2292+ Server: CouchDB (Erlang OTP)
2293
2294 {
2295- "id" : "7f7638c86173eb440b8890839ff35433",
2296- "error" : "forbidden",
2297- "reason" : "invalid recipe ingredient"
2298+ "error": "forbidden",
2299+ "id": "LambStew",
2300+ "reason": "invalid recipe ingredient",
2301+ "rev": "1-34c318924a8f327223eed702ddfdc66d"
2302 }
2303
2304=== modified file 'share/doc/build/html/_sources/api/database/changes.txt'
2305--- share/doc/build/html/_sources/api/database/changes.txt 2013-12-01 16:55:05 +0000
2306+++ share/doc/build/html/_sources/api/database/changes.txt 2014-07-28 15:45:29 +0000
2307@@ -18,6 +18,7 @@
2308 ================
2309
2310 .. http:get:: /{db}/_changes
2311+ :synopsis: Returns changes for the given database
2312
2313 Returns a sorted list of changes made to documents in the database, in time
2314 order of application, can be obtained from the database's ``_changes``
2315@@ -39,8 +40,8 @@
2316 previous connection. Overrides `since` query parameter.
2317 :query array doc_ids: List of document IDs to filter the changes feed as
2318 valid JSON array. Used with :ref:`_doc_ids <changes/filter/doc_ids>` filter.
2319- Since `length of URL is limited`_, you better use :post:`/{db}/_changes`
2320- method instead.
2321+ Since `length of URL is limited`_, it is better to use
2322+ :post:`/{db}/_changes` instead.
2323 :query boolean conflicts: Includes `conflicts` information in response.
2324 Ignored if `include_docs` isn't ``true``. Default is ``false``.
2325 :query boolean descending: Return the change results in descending sequence
2326@@ -48,7 +49,8 @@
2327 :query string feed: see :ref:`changes`. Default is ``normal``.
2328 :query string filter: Reference to a :ref:`filter function <filterfun>`
2329 from a design document that will filter whole stream emitting only filtered
2330- events. See the `section in the book`_ for more information.
2331+ events. See the section `Change Notifications in the book
2332+ CouchDB The Definitive Guide`_ for more information.
2333 :query number heartbeat: Period in *milliseconds* after which an empty line is
2334 sent in the results. Only applicable for :ref:`longpoll <changes/longpoll>`
2335 or :ref:`continuous <changes/continuous>` feeds. Overrides any timeout to
2336@@ -57,6 +59,13 @@
2337 :query boolean include_docs: Include the associated document with each result.
2338 If there are conflicts, only the winning revision is returned.
2339 Default is ``false``.
2340+ :query boolean attachments: Include the Base64-encoded content of
2341+ :ref:`attachments <api/doc/attachments>` in the documents that are included
2342+ if `include_docs` is ``true``. Ignored if `include_docs` isn't ``true``.
2343+ Default is ``false``.
2344+ :query boolean att_encoding_info: Include encoding information in attachment
2345+ stubs if `include_docs` is ``true`` and the particular attachment is
2346+ compressed. Ignored if `include_docs` isn't ``true``. Default is ``false``.
2347 :query number last-event-id: Alias of `Last-Event-ID` header.
2348 :query number limit: Limit number of result rows to the specified value
2349 (note that using ``0`` here has the same effect as ``1``).
2350@@ -160,13 +169,22 @@
2351 listen changes since current seq number.
2352 .. versionchanged:: 1.3.0 ``eventsource`` feed type added.
2353 .. versionchanged:: 1.4.0 Support ``Last-Event-ID`` header.
2354+.. versionchanged:: 1.6.0 added ``attachments`` and ``att_encoding_info``
2355+ parameters
2356+
2357+.. warning::
2358+ Using the ``attachments`` parameter to include attachments in the changes
2359+ feed is not recommended for large attachment sizes. Also note that the
2360+ Base64-encoding that is used leads to a 33% overhead (i.e. one third) in
2361+ transfer size for attachments.
2362
2363
2364 .. http:post:: /{db}/_changes
2365+ :synopsis: Returns changes for the given database for certain document IDs
2366
2367 Requests the database changes feed in the same way as
2368- :get:`/{db}/_changes` does, but this method is widely used with
2369- ``?filter=_doc_ids`` query parameter and allows to pass larger list of
2370+ :get:`/{db}/_changes` does, but is widely used with
2371+ ``?filter=_doc_ids`` query parameter and allows one to pass a larger list of
2372 document IDs to filter.
2373
2374 **Request**:
2375@@ -340,7 +358,7 @@
2376 Obviously, `... tum tee tum ...` does not appear in the actual response, but
2377 represents a long pause before the change with seq 6 occurred.  
2378
2379-.. _section in the book: http://guide.couchdb.org/draft/notifications.html
2380+.. _Change Notifications in the book CouchDB The Definitive Guide: http://guide.couchdb.org/draft/notifications.html
2381
2382 .. _changes/eventsource:
2383
2384@@ -495,9 +513,9 @@
2385
2386 .. versionadded:: 1.2
2387
2388-The special filter ``_view`` allows to use existed :ref:`map function <mapfun>`
2389+The special filter ``_view`` allows to use existing :ref:`map function <mapfun>`
2390 as the :ref:`filter <filterfun>`. If the map function emits anything for the
2391-processed document he counts as accepted and the changes event emits to the
2392+processed document it counts as accepted and the changes event emits to the
2393 feed. For most use-practice cases `filter` functions are very similar to `map`
2394 ones, so this feature helps to reduce amount of duplicated code.
2395
2396@@ -513,7 +531,7 @@
2397 Using ``_view`` filter doesn't queries the view index files, so you cannot
2398 use common :ref:`view query parameters <api/ddoc/view>` to additionally
2399 filter the changes feed by index key. Also, CouchDB doesn't returns
2400- the result instantly as he does for views - it really uses the specified
2401+ the result instantly as it does for views - it really uses the specified
2402 map function as filter.
2403
2404 Moreover, you cannot make such filters dynamic e.g. process the request
2405
2406=== modified file 'share/doc/build/html/_sources/api/database/common.txt'
2407--- share/doc/build/html/_sources/api/database/common.txt 2013-12-01 16:55:05 +0000
2408+++ share/doc/build/html/_sources/api/database/common.txt 2014-07-28 15:45:29 +0000
2409@@ -16,10 +16,12 @@
2410 =======
2411
2412 .. http:head:: /{db}
2413+ :synopsis: Checks the database existence
2414
2415 Returns the HTTP Headers containing a minimal amount of information
2416- about the specified database. Since the response body is empty this method
2417- is a lightweight way to check if the database exists already or not.
2418+ about the specified database. Since the response body is empty, using the
2419+ HEAD method is a lightweight way to check if the database exists already or
2420+ not.
2421
2422 :param db: Database name
2423 :code 200: Database exists
2424@@ -44,6 +46,7 @@
2425
2426
2427 .. http:get:: /{db}
2428+ :synopsis: Returns the database information
2429
2430 Gets information about the specified database.
2431
2432@@ -58,6 +61,7 @@
2433 :>json string db_name: The name of the database.
2434 :>json number disk_format_version: The version of the physical format used
2435 for the data when it is stored on disk.
2436+ :>json number data_size: Actual data size in bytes of the database data.
2437 :>json number disk_size: Size in bytes of the data as stored on the disk.
2438 Views indexes are not included in the calculation.
2439 :>json number doc_count: A count of the documents in the specified database.
2440@@ -104,6 +108,7 @@
2441
2442
2443 .. http:put:: /{db}
2444+ :synopsis: Creates a new database
2445
2446 Creates a new database. The database name ``{db}`` must be composed by
2447 following next rules:
2448@@ -213,10 +218,17 @@
2449
2450
2451 .. http:delete:: /{db}
2452+ :synopsis: Deletes an existing database
2453
2454 Deletes the specified database, and all the documents and attachments
2455 contained within it.
2456
2457+ .. note::
2458+
2459+ To avoid deleting a database, CouchDB will respond with the HTTP status code 400
2460+ when the request URL includes a ?rev= parameter. This suggests that one wants to delete
2461+ a document but forgot to add the document id to the URL.
2462+
2463 :param db: Database name
2464 :<header Accept: - :mimetype:`application/json`
2465 - :mimetype:`text/plain`
2466@@ -224,7 +236,7 @@
2467 - :mimetype:`text/plain; charset=utf-8`
2468 :>json boolean ok: Operation status
2469 :code 200: Database removed successfully
2470- :code 400: Invalid database name
2471+ :code 400: Invalid database name or forgotten document id by accident
2472 :code 401: CouchDB Server Administrator privileges required
2473 :code 404: Database doesn't exist
2474
2475@@ -253,6 +265,7 @@
2476
2477
2478 .. http:post:: /{db}
2479+ :synopsis: Creates a new document with generated ID if _id is not specified
2480
2481 Creates a new document in the specified database, using the supplied JSON
2482 document structure.
2483
2484=== modified file 'share/doc/build/html/_sources/api/database/compact.txt'
2485--- share/doc/build/html/_sources/api/database/compact.txt 2013-12-01 16:55:05 +0000
2486+++ share/doc/build/html/_sources/api/database/compact.txt 2014-07-28 15:45:29 +0000
2487@@ -17,6 +17,7 @@
2488 ================
2489
2490 .. http:post:: /{db}/_compact
2491+ :synopsis: Starts a compaction for the database
2492
2493 Request compaction of the specified database. Compaction compresses the
2494 disk database file by performing the following operations:
2495@@ -86,10 +87,11 @@
2496 ===========================
2497
2498 .. http:post:: /{db}/_compact/{ddoc}
2499+ :synopsis: Starts a compaction for all the views in the selected design document
2500
2501 Compacts the view indexes associated with the specified design document.
2502 If may be that compacting a large view can return more storage than
2503- compacting the atual db. Thus, you can use this in place of the full
2504+ compacting the actual db. Thus, you can use this in place of the full
2505 database compaction if you know a specific set of view indexes have been
2506 affected by a recent database change.
2507
2508@@ -143,6 +145,7 @@
2509 ===========================
2510
2511 .. http:post:: /{db}/_ensure_full_commit
2512+ :synopsis: Makes sure all uncommitted changes are written and synchronized to the disk
2513
2514 Commits any recent changes to the specified database to disk. You should
2515 call this if you want to ensure that recent changes have been flushed.
2516@@ -196,6 +199,7 @@
2517 =====================
2518
2519 .. http:post:: /{db}/_view_cleanup
2520+ :synopsis: Removes view files that are not used by any design document
2521
2522 Removes view index files that are no longer required by CouchDB as a result
2523 of changed views within design documents. As the view filename is based on
2524
2525=== modified file 'share/doc/build/html/_sources/api/database/index.txt'
2526--- share/doc/build/html/_sources/api/database/index.txt 2013-12-01 16:55:05 +0000
2527+++ share/doc/build/html/_sources/api/database/index.txt 2014-07-28 15:45:29 +0000
2528@@ -12,14 +12,14 @@
2529
2530 .. _api/database:
2531
2532-================
2533-Database Methods
2534-================
2535-
2536-The Database methods provide an interface to an entire database withing
2537-CouchDB. These are database, rather than document, level requests.
2538-
2539-For all the database methods, the database name within the URL path
2540+=========
2541+Databases
2542+=========
2543+
2544+The Database endpoint provides an interface to an entire database with in
2545+CouchDB. These are database-level, rather than document-level requests.
2546+
2547+For all these requests, the database name within the URL path
2548 should be the database name that you wish to perform the operation on.
2549 For example, to obtain the meta information for the database
2550 ``recipes``, you would use the HTTP request:
2551
2552=== modified file 'share/doc/build/html/_sources/api/database/misc.txt'
2553--- share/doc/build/html/_sources/api/database/misc.txt 2013-12-01 16:55:05 +0000
2554+++ share/doc/build/html/_sources/api/database/misc.txt 2014-07-28 15:45:29 +0000
2555@@ -17,6 +17,7 @@
2556 ==============
2557
2558 .. http:post:: /{db}/_purge
2559+ :synopsis: Purges some historical documents entirely from database history
2560
2561 A database purge permanently removes the references to deleted documents
2562 from the database. Normal deletion of a document within CouchDB does not
2563@@ -129,6 +130,7 @@
2564 =====================
2565
2566 .. http:post:: /{db}/_missing_revs
2567+ :synopsis: By given list of document revisions returns the document revisions that do not exist in the database
2568
2569 With given a list of document revisions, returns the document revisions that
2570 do not exist in the database.
2571@@ -187,6 +189,7 @@
2572 ==================
2573
2574 .. http:post:: /{db}/_revs_diff
2575+ :synopsis: By given list of document revisions returns differences between the given revisions and ones that are in the database
2576
2577 Given a set of document/revision IDs, returns the subset of those that do
2578 not correspond to revisions stored in the database.
2579@@ -202,9 +205,9 @@
2580
2581 - In the request, a value is an array of revision IDs for that document.
2582
2583- - In the response, a value is an object with a "missing": key, whose value
2584+ - In the response, a value is an object with a ``missing``: key, whose value
2585 is a list of revision IDs for that document (the ones that are not stored
2586- in the database) and optionally a "possible_ancestors" key, whose value is
2587+ in the database) and optionally a ``possible_ancestors`` key, whose value is
2588 an array of revision IDs that are known that might be ancestors of
2589 the missing revisions.
2590
2591@@ -215,7 +218,9 @@
2592 :<json object: Mapping of document ID to list of revisions to lookup
2593 :>header Content-Type: - :mimetype:`application/json`
2594 - :mimetype:`text/plain; charset=utf-8`
2595- :>json object missing_revs: Mapping of document ID to list of missed revisions
2596+ :>json array missing: List of missed revisions for specified document
2597+ :>json array possible_ancestors: List of revisions that *may be* ancestors
2598+ for specified document and its current revision in requested database
2599 :code 200: Request completed successfully
2600 :code 400: Invalid database name or JSON payload
2601
2602@@ -232,7 +237,8 @@
2603 {
2604 "190f721ca3411be7aa9477db5f948bbb": [
2605 "3-bb72a7682290f94a985f7afac8b27137",
2606- "4-10265e5a26d807a3cfa459cf1a82ef2e"
2607+ "4-10265e5a26d807a3cfa459cf1a82ef2e",
2608+ "5-067a00dff5e02add41819138abb3284d"
2609 ]
2610 }
2611
2612@@ -250,7 +256,11 @@
2613 {
2614 "190f721ca3411be7aa9477db5f948bbb": {
2615 "missing": [
2616- "3-bb72a7682290f94a985f7afac8b27137"
2617+ "3-bb72a7682290f94a985f7afac8b27137",
2618+ "5-067a00dff5e02add41819138abb3284d"
2619+ ],
2620+ "possible_ancestors": [
2621+ "4-10265e5a26d807a3cfa459cf1a82ef2e"
2622 ]
2623 }
2624 }
2625@@ -262,6 +272,7 @@
2626 ===================
2627
2628 .. http:get:: /{db}/_revs_limit
2629+ :synopsis: Returns the limit of historical revisions to store for a single document in the database
2630
2631 Gets the current ``revs_limit`` (revision limit) setting.
2632
2633@@ -295,6 +306,7 @@
2634
2635
2636 .. http:put:: /{db}/_revs_limit
2637+ :synopsis: Sets the limit of historical revisions to store for a single document in the database
2638
2639 Sets the maximum number of document revisions that will be tracked by
2640 CouchDB, even after compaction has occurred. You can set the revision
2641
2642=== modified file 'share/doc/build/html/_sources/api/database/security.txt'
2643--- share/doc/build/html/_sources/api/database/security.txt 2013-12-01 16:55:05 +0000
2644+++ share/doc/build/html/_sources/api/database/security.txt 2014-07-28 15:45:29 +0000
2645@@ -17,6 +17,7 @@
2646 =================
2647
2648 .. http:get:: /{db}/_security
2649+ :synopsis: Returns the special security object for the database
2650
2651 Returns the current security object from the specified database.
2652
2653@@ -117,6 +118,7 @@
2654
2655
2656 .. http:put:: /{db}/_security
2657+ :synopsis: Sets the special security object for the database
2658
2659 Sets the security object for the given database.
2660
2661
2662=== modified file 'share/doc/build/html/_sources/api/database/temp-views.txt'
2663--- share/doc/build/html/_sources/api/database/temp-views.txt 2013-12-01 16:55:05 +0000
2664+++ share/doc/build/html/_sources/api/database/temp-views.txt 2014-07-28 15:45:29 +0000
2665@@ -17,6 +17,7 @@
2666 ==================
2667
2668 .. http:post:: /{db}/_temp_view
2669+ :synopsis: Executes a given view function for all documents and returns the result
2670
2671 Creates (and executes) a temporary view based on the view function
2672 supplied in the JSON request.
2673
2674=== modified file 'share/doc/build/html/_sources/api/ddoc/common.txt'
2675--- share/doc/build/html/_sources/api/ddoc/common.txt 2013-12-01 16:55:05 +0000
2676+++ share/doc/build/html/_sources/api/ddoc/common.txt 2014-07-28 15:45:29 +0000
2677@@ -17,6 +17,7 @@
2678 ==========================
2679
2680 .. http:head:: /{db}/_design/{ddoc}
2681+ :synopsis: Returns bare information in the HTTP Headers for the design document
2682
2683 Returns the HTTP Headers containing a minimal amount of information
2684 about the specified design document.
2685@@ -27,10 +28,11 @@
2686
2687
2688 .. http:get:: /{db}/_design/{ddoc}
2689+ :synopsis: Returns the design document
2690
2691- Returns design document with the specified design document` from the specified
2692- database. Unless you request a specific revision, the latest revision of the
2693- document will always be returned.
2694+ Returns the contents of the design document specified with the name of the design
2695+ document and from the specified database from the URL. Unless you request a specific
2696+ revision, the latest revision of the document will always be returned.
2697
2698 .. seealso::
2699
2700@@ -38,12 +40,13 @@
2701
2702
2703 .. http:put:: /{db}/_design/{ddoc}
2704+ :synopsis: Creates a new design document or new version of an existing one
2705
2706 The :method:`PUT` method creates a new named design document, or creates
2707 a new revision of the existing design document.
2708
2709 The design documents have some agreement upon their fields and structure.
2710- Currently it is the next:
2711+ Currently it is the following:
2712
2713 * **language** (*string*): Defines :ref:`Query Server <query-server>`
2714 :config:section:`key <query_servers>` to process design document functions
2715@@ -68,6 +71,7 @@
2716
2717
2718 .. http:delete:: /{db}/_design/{ddoc}
2719+ :synopsis: Deletes the design document
2720
2721 Deletes the specified document from the database. You must supply the
2722 current (latest) revision, either by using the ``rev`` parameter to
2723@@ -78,6 +82,7 @@
2724 :delete:`/{db}/{docid}`
2725
2726 .. http:copy:: /{db}/_design/{ddoc}
2727+ :synopsis: Copies the design document
2728
2729 The :method:`COPY` (which is non-standard HTTP) copies an existing
2730 design document to a new or existing one.
2731@@ -98,6 +103,7 @@
2732 =====================================
2733
2734 .. http:head:: /{db}/_design/{ddoc}/{attname}
2735+ :synopsis: Returns bare information in the HTTP Headers for the attachment
2736
2737 Returns the HTTP headers containing a minimal amount of information
2738 about the specified attachment.
2739@@ -107,6 +113,7 @@
2740 :head:`/{db}/{docid}/{attname}`
2741
2742 .. http:get:: /{db}/_design/{ddoc}/{attname}
2743+ :synopsis: Gets the attachment of a design document
2744
2745 Returns the file attachment associated with the design document.
2746 The raw data of the associated attachment is returned (just as if you were
2747@@ -117,6 +124,7 @@
2748 :get:`/{db}/{docid}/{attname}`
2749
2750 .. http:put:: /{db}/_design/{ddoc}/{attname}
2751+ :synopsis: Adds an attachment of a design document
2752
2753 Uploads the supplied content as an attachment to the specified design
2754 document. The attachment name provided must be a URL encoded string.
2755@@ -126,6 +134,7 @@
2756 :put:`/{db}/{docid}/{attname}`
2757
2758 .. http:delete:: /{db}/_design/{ddoc}/{attname}
2759+ :synopsis: Deletes an attachment of a design document
2760
2761 Deletes the attachment of the specified design document.
2762
2763@@ -140,6 +149,7 @@
2764 ================================
2765
2766 .. http:get:: /{db}/_design/{ddoc}/_info
2767+ :synopsis: Returns view index information for the specified design document
2768
2769 Obtains information about the specified design document, including the index,
2770 index size and current status of the design document and associated
2771
2772=== modified file 'share/doc/build/html/_sources/api/ddoc/index.txt'
2773--- share/doc/build/html/_sources/api/ddoc/index.txt 2013-12-01 16:55:05 +0000
2774+++ share/doc/build/html/_sources/api/ddoc/index.txt 2014-07-28 15:45:29 +0000
2775@@ -13,9 +13,9 @@
2776
2777 .. _api/design-docs:
2778
2779-=======================
2780-Design Document Methods
2781-=======================
2782+================
2783+Design Documents
2784+================
2785
2786 In CouchDB, design documents provide the main interface for building a
2787 CouchDB application. The design document defines the views used to
2788
2789=== modified file 'share/doc/build/html/_sources/api/ddoc/render.txt'
2790--- share/doc/build/html/_sources/api/ddoc/render.txt 2013-12-01 16:55:05 +0000
2791+++ share/doc/build/html/_sources/api/ddoc/render.txt 2014-07-28 15:45:29 +0000
2792@@ -17,7 +17,10 @@
2793 ==========================================
2794
2795 .. http:get:: /{db}/_design/{ddoc}/_show/{func}
2796+ :synopsis: Executes a show function against null document
2797+
2798 .. http:post:: /{db}/_design/{ddoc}/_show/{func}
2799+ :synopsis: Same as GET method for the related endpoint
2800
2801 Applies :ref:`show function <showfun>` for `null` document.
2802
2803@@ -74,7 +77,9 @@
2804 =================================================
2805
2806 .. http:get:: /{db}/_design/{ddoc}/_show/{func}/{docid}
2807+ :synopsis: Executes a show function against the specified document
2808 .. http:post:: /{db}/_design/{ddoc}/_show/{func}/{docid}
2809+ :synopsis: Same as GET method for the related endpoint
2810
2811 Applies :ref:`show function <showfun>` for the specified document.
2812
2813@@ -132,7 +137,9 @@
2814 ====================================================
2815
2816 .. http:get:: /{db}/_design/{ddoc}/_list/{func}/{view}
2817+ :synopsis: Executes a list function against the view from the same design document
2818 .. http:post:: /{db}/_design/{ddoc}/_list/{func}/{view}
2819+ :synopsis: Same as GET method for the related endpoint
2820
2821 Applies :ref:`list function <listfun>` for the :ref:`view function <viewfun>`
2822 from the same design document.
2823@@ -194,7 +201,9 @@
2824 ===============================================================
2825
2826 .. http:get:: /{db}/_design/{ddoc}/_list/{func}/{other-ddoc}/{view}
2827+ :synopsis: Executes a list function against the view from other design document
2828 .. http:post:: /{db}/_design/{ddoc}/_list/{func}/{other-ddoc}/{view}
2829+ :synopsis: Same as GET method for the related endpoint
2830
2831 Applies :ref:`list function <listfun>` for the :ref:`view function <viewfun>`
2832 from the other design document.
2833@@ -257,6 +266,7 @@
2834 ==============================================
2835
2836 .. http:post:: /{db}/_design/{ddoc}/_update/{func}
2837+ :synopsis: Executes an update function against the null document
2838
2839 Executes :ref:`update function <updatefun>` on server side for ``null``
2840 document.
2841@@ -320,7 +330,7 @@
2842 =====================================================
2843
2844 .. http:put:: /{db}/_design/{ddoc}/_update/{func}/{docid}
2845-
2846+ :synopsis: Executes an update function against the specified document
2847
2848 Executes :ref:`update function <updatefun>` on server side for the specified
2849 document.
2850
2851=== modified file 'share/doc/build/html/_sources/api/ddoc/rewrites.txt'
2852--- share/doc/build/html/_sources/api/ddoc/rewrites.txt 2013-12-01 16:55:05 +0000
2853+++ share/doc/build/html/_sources/api/ddoc/rewrites.txt 2014-07-28 15:45:29 +0000
2854@@ -17,6 +17,7 @@
2855 ========================================
2856
2857 .. http:any:: /{db}/_design/{ddoc}/_rewrite/{path}
2858+ :synopsis: Rewrites HTTP request for the specified path by using stored routing rules
2859
2860 Rewrites the specified path by rules defined in the specified design document.
2861
2862@@ -28,8 +29,8 @@
2863 - **to** (*string*): Rule to rewrite an url. It can contain variables
2864 depending on binding variables discovered during pattern matching and
2865 query args (url args and from the query member)
2866- - **method** (*string*): Method to bind the request method to the rule.
2867- Default is ``"*"``
2868+ - **method** (*string*): HTTP request method to bind the request method to
2869+ the rule. Default is ``"*"``
2870 - **query** (*object*): Query args you want to define they can contain
2871 dynamic variable by binding the key
2872
2873@@ -49,18 +50,18 @@
2874 - If all tokens are matched and all `pathterms` are used, then the `pathspec`
2875 matches
2876
2877- The pattern matching is done by first matching the request method to a rule.
2878- By default all methods match a rule. (method is equal to ``"*"`` by default).
2879- Then It will try to match the path to one rule. If no rule match, then a
2880- :statuscode:`404` response returned.
2881+ The pattern matching is done by first matching the HTTP request method to a
2882+ rule. ``method`` is equal to ``"*"`` by default, and will match any HTTP
2883+ method. It will then try to match the path to one rule. If no rule matches,
2884+ then a :statuscode:`404` response returned.
2885
2886 Once a rule is found we rewrite the request url using the ``to`` and ``query``
2887 fields. The identified token are matched to the rule and will replace var.
2888 If ``'*'`` is found in the rule it will contain the remaining part if it
2889 exists.
2890-
2891+
2892 Examples:
2893-
2894+
2895 +--------------------------------------+----------+------------------+-------+
2896 | Rule | Url | Rewrite to | Tokens|
2897 +======================================+==========+==================+=======+
2898@@ -82,7 +83,7 @@
2899 +--------------------------------------+----------+------------------+-------+
2900
2901 Request method, header, query parameters, request payload and response body
2902- are depended on endpoint to which url will be rewrited.
2903+ are depended on endpoint to which url will be rewritten.
2904
2905 :param db: Database name
2906 :param ddoc: Design document name
2907
2908=== modified file 'share/doc/build/html/_sources/api/ddoc/views.txt'
2909--- share/doc/build/html/_sources/api/ddoc/views.txt 2013-12-01 16:55:05 +0000
2910+++ share/doc/build/html/_sources/api/ddoc/views.txt 2014-07-28 15:45:29 +0000
2911@@ -17,6 +17,7 @@
2912 ==========================================
2913
2914 .. http:get:: /{db}/_design/{ddoc}/_view/{view}
2915+ :synopsis: Returns results for the specified stored view
2916
2917 Executes the specified view function from the specified design document.
2918
2919@@ -40,8 +41,15 @@
2920 :query boolean group: Group the results using the reduce function to a group
2921 or single row. Default is ``false``
2922 :query number group_level: Specify the group level to be used. *Optional*
2923- :query boolean include_docs: Include the full content of the documents in
2924- the return. Default is ``false``
2925+ :query boolean include_docs: Include the associated document with each row.
2926+ Default is ``false``.
2927+ :query boolean attachments: Include the Base64-encoded content of
2928+ :ref:`attachments <api/doc/attachments>` in the documents that are included
2929+ if `include_docs` is ``true``. Ignored if `include_docs` isn't ``true``.
2930+ Default is ``false``.
2931+ :query boolean att_encoding_info: Include encoding information in attachment
2932+ stubs if `include_docs` is ``true`` and the particular attachment is
2933+ compressed. Ignored if `include_docs` isn't ``true``. Default is ``false``.
2934 :query boolean inclusive_end: Specifies whether the specified end key should
2935 be included in the result. Default is ``true``
2936 :query string key: Return only documents that match the specified key.
2937@@ -122,12 +130,22 @@
2938 "total_rows": 3
2939 }
2940
2941+.. versionchanged:: 1.6.0 added ``attachments`` and ``att_encoding_info``
2942+ parameters
2943+
2944+.. warning::
2945+ Using the ``attachments`` parameter to include attachments in view results
2946+ is not recommended for large attachment sizes. Also note that the
2947+ Base64-encoding that is used leads to a 33% overhead (i.e. one third) in
2948+ transfer size for attachments.
2949+
2950
2951 .. http:post:: /{db}/_design/{ddoc}/_view/{view}
2952+ :synopsis: Returns certain rows for the specified stored view
2953
2954 Executes the specified view function from the specified design document.
2955- Unlike the :get:`/{db}/_design/{ddoc}/_view/{view}` method
2956- for accessing views, the :method:`POST` method supports the specification
2957+ Unlike :get:`/{db}/_design/{ddoc}/_view/{view}` for accessing views, the
2958+ :method:`POST` method supports the specification
2959 of explicit keys to be retrieved from the view results. The remainder of the
2960 :method:`POST` view functionality is identical to the
2961 :get:`/{db}/_design/{ddoc}/_view/{view}` API.
2962@@ -341,107 +359,107 @@
2963 ETag: "8LA1LZPQ37B6R9U8BK9BGQH27"
2964 Server: CouchDB (Erlang/OTP)
2965 Transfer-Encoding: chunked
2966-
2967+
2968 {
2969- "offset": 0,
2970+ "offset": 0,
2971 "rows": [
2972 {
2973- "id": "dummy-doc",
2974- "key": null,
2975- "value": null
2976- },
2977- {
2978- "id": "dummy-doc",
2979- "key": false,
2980- "value": null
2981- },
2982- {
2983- "id": "dummy-doc",
2984- "key": true,
2985- "value": null
2986- },
2987- {
2988- "id": "dummy-doc",
2989- "key": 0,
2990- "value": null
2991- },
2992- {
2993- "id": "dummy-doc",
2994- "key": 1,
2995- "value": null
2996- },
2997- {
2998- "id": "dummy-doc",
2999- "key": 10,
3000- "value": null
3001- },
3002- {
3003- "id": "dummy-doc",
3004- "key": 42,
3005- "value": null
3006- },
3007- {
3008- "id": "dummy-doc",
3009- "key": "10",
3010- "value": null
3011- },
3012- {
3013- "id": "dummy-doc",
3014- "key": "hello",
3015- "value": null
3016- },
3017- {
3018- "id": "dummy-doc",
3019- "key": "Hello",
3020- "value": null
3021- },
3022- {
3023- "id": "dummy-doc",
3024+ "id": "dummy-doc",
3025+ "key": null,
3026+ "value": null
3027+ },
3028+ {
3029+ "id": "dummy-doc",
3030+ "key": false,
3031+ "value": null
3032+ },
3033+ {
3034+ "id": "dummy-doc",
3035+ "key": true,
3036+ "value": null
3037+ },
3038+ {
3039+ "id": "dummy-doc",
3040+ "key": 0,
3041+ "value": null
3042+ },
3043+ {
3044+ "id": "dummy-doc",
3045+ "key": 1,
3046+ "value": null
3047+ },
3048+ {
3049+ "id": "dummy-doc",
3050+ "key": 10,
3051+ "value": null
3052+ },
3053+ {
3054+ "id": "dummy-doc",
3055+ "key": 42,
3056+ "value": null
3057+ },
3058+ {
3059+ "id": "dummy-doc",
3060+ "key": "10",
3061+ "value": null
3062+ },
3063+ {
3064+ "id": "dummy-doc",
3065+ "key": "hello",
3066+ "value": null
3067+ },
3068+ {
3069+ "id": "dummy-doc",
3070+ "key": "Hello",
3071+ "value": null
3072+ },
3073+ {
3074+ "id": "dummy-doc",
3075 "key": "\u043f\u0440\u0438\u0432\u0435\u0442",
3076 "value": null
3077- },
3078- {
3079- "id": "dummy-doc",
3080- "key": [],
3081- "value": null
3082- },
3083- {
3084- "id": "dummy-doc",
3085- "key": [
3086- 1,
3087- 2,
3088- 3
3089- ],
3090- "value": null
3091- },
3092- {
3093- "id": "dummy-doc",
3094- "key": [
3095- 2,
3096- 3
3097- ],
3098- "value": null
3099- },
3100- {
3101- "id": "dummy-doc",
3102- "key": [
3103- 3
3104- ],
3105- "value": null
3106- },
3107- {
3108- "id": "dummy-doc",
3109- "key": {},
3110- "value": null
3111- },
3112- {
3113- "id": "dummy-doc",
3114+ },
3115+ {
3116+ "id": "dummy-doc",
3117+ "key": [],
3118+ "value": null
3119+ },
3120+ {
3121+ "id": "dummy-doc",
3122+ "key": [
3123+ 1,
3124+ 2,
3125+ 3
3126+ ],
3127+ "value": null
3128+ },
3129+ {
3130+ "id": "dummy-doc",
3131+ "key": [
3132+ 2,
3133+ 3
3134+ ],
3135+ "value": null
3136+ },
3137+ {
3138+ "id": "dummy-doc",
3139+ "key": [
3140+ 3
3141+ ],
3142+ "value": null
3143+ },
3144+ {
3145+ "id": "dummy-doc",
3146+ "key": {},
3147+ "value": null
3148+ },
3149+ {
3150+ "id": "dummy-doc",
3151 "key": {
3152 "foo": "bar"
3153- },
3154+ },
3155 "value": null
3156 }
3157- ],
3158+ ],
3159 "total_rows": 17
3160 }
3161
3162@@ -469,7 +487,7 @@
3163 ETag: "Z4N468R15JBT98OM0AMNSR8U"
3164 Server: CouchDB (Erlang/OTP)
3165 Transfer-Encoding: chunked
3166-
3167+
3168 {
3169 "offset": 0,
3170 "rows": [
3171
3172=== modified file 'share/doc/build/html/_sources/api/document/attachments.txt'
3173--- share/doc/build/html/_sources/api/document/attachments.txt 2013-12-01 16:55:05 +0000
3174+++ share/doc/build/html/_sources/api/document/attachments.txt 2014-07-28 15:45:29 +0000
3175@@ -17,6 +17,7 @@
3176 ======================
3177
3178 .. http:head:: /{db}/{docid}/{attname}
3179+ :synopsis: Returns bare information in the HTTP Headers for the attachment
3180
3181 Returns the HTTP headers containing a minimal amount of information
3182 about the specified attachment. The method supports the same query
3183@@ -70,6 +71,7 @@
3184
3185
3186 .. http:get:: /{db}/{docid}/{attname}
3187+ :synopsis: Gets the attachment of a document
3188
3189 Returns the file attachment associated with the document.
3190 The raw data of the associated attachment is returned (just as if you were
3191@@ -102,6 +104,7 @@
3192
3193
3194 .. http:put:: /{db}/{docid}/{attname}
3195+ :synopsis: Adds an attachment of a document
3196
3197 Uploads the supplied content as an attachment to the specified document.
3198 The attachment name provided must be a URL encoded string. You must also
3199@@ -182,6 +185,7 @@
3200
3201
3202 .. http:delete:: /{db}/{docid}/{attname}
3203+ :synopsis: Deletes an attachment of a document
3204
3205 Deletes the attachment ``attachment`` of the specified ``doc``. You must
3206 supply the ``rev`` query parameter or :header:`If-Match` with the current
3207
3208=== modified file 'share/doc/build/html/_sources/api/document/common.txt'
3209--- share/doc/build/html/_sources/api/document/common.txt 2013-12-01 16:55:05 +0000
3210+++ share/doc/build/html/_sources/api/document/common.txt 2014-07-28 15:45:29 +0000
3211@@ -17,6 +17,7 @@
3212 ===========
3213
3214 .. http:head:: /{db}/{docid}
3215+ :synopsis: Returns bare information in the HTTP Headers for the document
3216
3217 Returns the HTTP Headers containing a minimal amount of information
3218 about the specified document. The method supports the same query
3219@@ -63,6 +64,7 @@
3220
3221
3222 .. http:get:: /{db}/{docid}
3223+ :synopsis: Returns the document
3224
3225 Returns document by the specified ``docid`` from the specified ``db``.
3226 Unless you request a specific revision, the latest revision of the
3227@@ -78,8 +80,8 @@
3228
3229 :query boolean attachments: Includes attachments bodies in response.
3230 Default is ``false``
3231- :query boolean att_encoding_info: Includes encoding information into
3232- attachment's stubs for compressed ones. Default is ``false``
3233+ :query boolean att_encoding_info: Includes encoding information in attachment
3234+ stubs if the particular attachment is compressed. Default is ``false``.
3235 :query array atts_since: Includes attachments only since specified revisions.
3236 Doesn't includes attachments for specified revisions. *Optional*
3237 :query boolean conflicts: Includes information about conflicts in document.
3238@@ -165,9 +167,10 @@
3239 }
3240
3241 .. http:put:: /{db}/{docid}
3242+ :synopsis: Creates a new document or new version of an existing document
3243
3244 The :method:`PUT` method creates a new named document, or creates a new
3245- revision of the existing document. Unlike the :post:`/{db}` method, you
3246+ revision of the existing document. Unlike the :post:`/{db}`, you
3247 must specify the document ID in the request URL.
3248
3249 :param db: Database name
3250@@ -235,17 +238,22 @@
3251 "rev": "1-917fa2381192822767f010b95b45325b"
3252 }
3253
3254-
3255 .. http:delete:: /{db}/{docid}
3256-
3257- Deletes the specified document from the database. You must supply the
3258- current (latest) revision, either by using the ``rev`` parameter to
3259- specify the revision.
3260+ :synopsis: Deletes the document
3261+
3262+ Marks the specified document as deleted by adding a field ``_deleted`` with
3263+ the value ``true``. Documents with this field will not be returned within
3264+ requests anymore, but stay in the database. You must supply the current
3265+ (latest) revision, either by using the ``rev`` parameter or by using the
3266+ :header:`If-Match` header to specify the revision.
3267+
3268+ .. seealso::
3269+ :ref:`Retrieving Deleted Documents <api/doc/retrieving-deleted-documents>`
3270
3271 .. note::
3272- Note that deletion of a record increments the revision number.
3273- The use of a revision for deletion of the record allows replication of
3274- the database to correctly track the deletion in synchronized copies.
3275+ CouchDB doesn't actually delete documents. The reason is the need to track
3276+ them correctly during the replication process between databases to prevent
3277+ accidental document recovery for any previous state.
3278
3279 :param db: Database name
3280 :param docid: Document ID
3281@@ -309,6 +317,7 @@
3282
3283
3284 .. http:copy:: /{db}/{docid}
3285+ :synopsis: Copies the document within the same database
3286
3287 The :method:`COPY` (which is non-standard HTTP) copies an existing
3288 document to a new or existing document.
3289@@ -341,7 +350,7 @@
3290 :code 202: Request was accepted, but changes are not yet stored on disk
3291 :code 400: Invalid request body or parameters
3292 :code 401: Read or write privileges required
3293- :code 404: Specified database, document ID or his revision doesn't exists
3294+ :code 404: Specified database, document ID or revision doesn't exists
3295 :code 409: Document with the specified ID already exists or specified
3296 revision is not latest for target document
3297
3298@@ -391,16 +400,34 @@
3299
3300 - **content_type** (*string*): Attachment MIME type
3301 - **data** (*string*): Base64-encoded content. Available if attachment content
3302- requested by using ``attachments=true`` or ``atts_since`` query parameters
3303+ is requested by using the following query parameters:
3304+
3305+ - ``attachments=true`` when querying a document
3306+ - ``attachments=true&include_docs=true`` when querying a
3307+ :ref:`changes feed <api/db/changes>` or a :ref:`view <api/ddoc/view>`
3308+ - ``atts_since``.
3309+
3310 - **digest** (*string*): Content hash digest.
3311 It starts with prefix which announce hash type (``md5-``) and continues with
3312 Base64-encoded hash digest
3313-- **encoded_length** (*number*): Compressed attachment size in bytes
3314- Available when query parameter ``att_encoding_info=true`` was specified and
3315- ``content_type`` is in :config:option:`list of compressiable types
3316- <attachments/compressible_types>`
3317-- **encoding** (*string*): Compression codec. Available when query parameter
3318- ``att_encoding_info=true`` was specified
3319+- **encoded_length** (*number*): Compressed attachment size in bytes.
3320+ Available if ``content_type`` is in :config:option:`list of compressible types
3321+ <attachments/compressible_types>` when the attachment was added and the
3322+ following query parameters are specified:
3323+
3324+ - ``att_encoding_info=true`` when querying a document
3325+ - ``att_encoding_info=true&include_docs=true`` when querying a
3326+ :ref:`changes feed <api/db/changes>` or a :ref:`view <api/ddoc/view>`
3327+
3328+- **encoding** (*string*): Compression codec. Available if ``content_type`` is
3329+ in :config:option:`list of compressible types
3330+ <attachments/compressible_types>` when the attachment was added and the
3331+ following query parameters are specified:
3332+
3333+ - ``att_encoding_info=true`` when querying a document
3334+ - ``att_encoding_info=true&include_docs=true`` when querying a
3335+ :ref:`changes feed <api/db/changes>` or a :ref:`view <api/ddoc/view>`
3336+
3337 - **length** (*number*): Real attachment size in bytes. Not available if attachment
3338 content requested
3339 - **revpos** (*number*): Revision *number* when attachment was added
3340@@ -466,6 +493,7 @@
3341 "name": "Spaghetti with meatballs"
3342 }
3343
3344+.. _api/doc/retrieving-deleted-documents:
3345
3346 Retrieving Attachments Content
3347 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3348@@ -842,7 +870,7 @@
3349 ``_revisions`` structure that includes the revision information in next form:
3350
3351 - **ids** (*array*): Array of valid revision IDs, in reverse order
3352- (latest first)
3353+ (latest first)
3354 - **start** (*number*): Prefix number for the latest revision
3355
3356
3357@@ -918,7 +946,7 @@
3358 }
3359
3360
3361-The returned document contains ``_rev_info`` field with extended revision
3362+The returned document contains ``_revs_info`` field with extended revision
3363 information, including the availability and status of each revision. This array
3364 field contains objects with following structure:
3365
3366
3367=== modified file 'share/doc/build/html/_sources/api/document/index.txt'
3368--- share/doc/build/html/_sources/api/document/index.txt 2013-12-01 16:55:05 +0000
3369+++ share/doc/build/html/_sources/api/document/index.txt 2014-07-28 15:45:29 +0000
3370@@ -13,12 +13,11 @@
3371
3372 .. _api/document:
3373
3374-================
3375-Document Methods
3376-================
3377+=========
3378+Documents
3379+=========
3380
3381-The CouchDB API Server Document methods detail how to create, read,
3382-update and delete documents within a database.
3383+Details on how to create, read, update and delete documents within a database.
3384
3385 .. toctree::
3386
3387
3388=== modified file 'share/doc/build/html/_sources/api/local.txt'
3389--- share/doc/build/html/_sources/api/local.txt 2013-12-01 16:55:05 +0000
3390+++ share/doc/build/html/_sources/api/local.txt 2014-07-28 15:45:29 +0000
3391@@ -12,9 +12,9 @@
3392
3393 .. _api/local:
3394
3395-========================================
3396-Local (non-replicating) Document Methods
3397-========================================
3398+=================================
3399+Local (non-replicating) Documents
3400+=================================
3401
3402 The Local (non-replicating) document interface allows you to create
3403 local documents that are not replicated to other databases. These
3404@@ -56,24 +56,28 @@
3405 ========================
3406
3407 .. http:get:: /{db}/_local/{docid}
3408+ :synopsis: Returns the latest revision of the local document
3409
3410 Gets the specified local document. The semantics are identical to
3411 accessing a standard document in the specified database, except that the
3412 document is not replicated. See :get:`/{db}/{docid}`.
3413
3414 .. http:put:: /{db}/_local/{docid}
3415+ :synopsis: Inserts a new version of the local document
3416
3417 Stores the specified local document. The semantics are identical to
3418 storing a standard document in the specified database, except that the
3419 document is not replicated. See :put:`/{db}/{docid}`.
3420
3421 .. http:delete:: /{db}/_local/{docid}
3422+ :synopsis: Deletes the local document
3423
3424 Deletes the specified local document. The semantics are identical to
3425 deleting a standard document in the specified database, except that the
3426 document is not replicated. See :delete:`/{db}/{docid}`.
3427
3428 .. http:copy:: /{db}/_local/{docid}
3429+ :synopsis: Copies the local document within the same database
3430
3431 Copies the specified local document. The semantics are identical to
3432 copying a standard document in the specified database, except that the
3433
3434=== modified file 'share/doc/build/html/_sources/api/server/authn.txt'
3435--- share/doc/build/html/_sources/api/server/authn.txt 2013-12-01 16:55:05 +0000
3436+++ share/doc/build/html/_sources/api/server/authn.txt 2014-07-28 15:45:29 +0000
3437@@ -12,12 +12,11 @@
3438
3439 .. _api/auth:
3440
3441-======================
3442-Authentication Methods
3443-======================
3444+==============
3445+Authentication
3446+==============
3447
3448-The CouchDB Authentication methods provide an interface for obtaining
3449-session and authorization data.
3450+Interfaces for obtaining session and authorization data.
3451
3452 .. note:: We're also strongly recommend you to
3453 :ref:`setup SSL <config/ssl>` to improve all authentication methods security.
3454@@ -85,10 +84,11 @@
3455
3456 .. _api/auth/session:
3457
3458-``_session``
3459-------------
3460+``/_session``
3461+-------------
3462
3463 .. http:post:: /_session
3464+ :synopsis: Authenticates user by Cookie-based user login
3465
3466 Initiates new session for specified user credentials by providing `Cookie`
3467 value.
3468@@ -179,6 +179,7 @@
3469
3470
3471 .. http:get:: /_session
3472+ :synopsis: Returns Cookie-based login user information
3473
3474 Returns complete information about authenticated user.
3475 This information contains :ref:`userctx_object`, authentication method and
3476@@ -231,6 +232,7 @@
3477
3478
3479 .. http:delete:: /_session
3480+ :synopsis: Logout Cookie-based user
3481
3482 Closes user's session.
3483
3484
3485=== modified file 'share/doc/build/html/_sources/api/server/common.txt'
3486--- share/doc/build/html/_sources/api/server/common.txt 2013-12-01 16:55:05 +0000
3487+++ share/doc/build/html/_sources/api/server/common.txt 2014-07-28 15:45:29 +0000
3488@@ -17,6 +17,7 @@
3489 =====
3490
3491 .. http:get:: /
3492+ :synopsis: Returns the welcome message and version information
3493
3494 Accessing the root of a CouchDB instance returns meta information about
3495 the instance. The response is a JSON structure containing information
3496@@ -65,6 +66,7 @@
3497 ==================
3498
3499 .. http:get:: /_active_tasks
3500+ :synopsis: Obtains a list of the tasks running in the server
3501
3502 List of running tasks, including the task type, name, status
3503 and process ID. The result is a JSON array of the currently running tasks,
3504@@ -168,6 +170,7 @@
3505 =============
3506
3507 .. http:get:: /_all_dbs
3508+ :synopsis: Returns a list of all the databases
3509
3510 Returns a list of all the databases in the CouchDB instance.
3511
3512@@ -213,6 +216,7 @@
3513 .. versionadded:: 1.4
3514
3515 .. http:get:: /_db_updates
3516+ :synopsis: Return the server changes of databases
3517
3518 Returns a list of all database events in the CouchDB instance.
3519
3520@@ -269,6 +273,7 @@
3521 =========
3522
3523 .. http:get:: /_log
3524+ :synopsis: Returns the server log file
3525
3526 Gets the CouchDB log, equivalent to accessing the local log file of the
3527 corresponding CouchDB instance.
3528@@ -341,6 +346,7 @@
3529 ===============
3530
3531 .. http:post:: /_replicate
3532+ :synopsis: Starts or cancels the replication
3533
3534 Request, configure, or stop, a replication operation.
3535
3536@@ -353,7 +359,7 @@
3537 Required administrator's privileges on target server.
3538 :<json array doc_ids: Array of document IDs to be synchronized
3539 :<json string proxy: Address of a proxy server through which replication
3540- should occur
3541+ should occur (protocol can be "http" or "socks5")
3542 :<json string source: Source database name or URL
3543 :<json string target: Target database name or URL
3544 :>header Content-Type: - :mimetype:`application/json`
3545@@ -664,6 +670,7 @@
3546 =============
3547
3548 .. http:post:: /_restart
3549+ :synopsis: Restarts the server
3550
3551 Restarts the CouchDB instance. You must be authenticated as a user with
3552 administration privileges for this to work.
3553@@ -708,6 +715,7 @@
3554 ===========
3555
3556 .. http:get:: /_stats
3557+ :synopsis: Returns server statistics
3558
3559 The ``_stats`` resource returns a JSON object containing the statistics
3560 for the running server. The object is structured with top-level sections
3561@@ -888,6 +896,7 @@
3562 ===========
3563
3564 .. http:get:: /_utils
3565+ :synopsis: Redirects to /_utils/
3566
3567 Accesses the built-in Futon administration interface for CouchDB.
3568
3569@@ -895,6 +904,7 @@
3570 :code 301: Redirects to :get:`/_utils/`
3571
3572 .. http:get:: /_utils/
3573+ :synopsis: CouchDB administration interface (Futon)
3574
3575 :>header Content-Type: :mimetype:`text/html`
3576 :>header Last-Modified: Static files modification timestamp
3577@@ -906,7 +916,10 @@
3578 ``/_uuids``
3579 ===========
3580
3581+.. versionchanged:: 1.5.1
3582+
3583 .. http:get:: /_uuids
3584+ :synopsis: Generates a list of UUIDs from the server
3585
3586 Requests one or more Universally Unique Identifiers (UUIDs) from the
3587 CouchDB instance. The response is a JSON object providing a list of
3588@@ -919,6 +932,8 @@
3589 - :mimetype:`text/plain; charset=utf-8`
3590 :>header ETag: Response hash
3591 :code 200: Request completed successfully
3592+ :code 403: Requested more UUIDs than is :config:option:`allowed
3593+ <uuids/max_count>` to retrieve
3594
3595 **Request**:
3596
3597@@ -992,6 +1007,7 @@
3598 ================
3599
3600 .. http:get:: /favicon.ico
3601+ :synopsis: Returns the site icon
3602
3603 Binary content for the `favicon.ico` site icon.
3604
3605
3606=== modified file 'share/doc/build/html/_sources/api/server/configuration.txt'
3607--- share/doc/build/html/_sources/api/server/configuration.txt 2013-12-01 16:55:05 +0000
3608+++ share/doc/build/html/_sources/api/server/configuration.txt 2014-07-28 15:45:29 +0000
3609@@ -12,18 +12,18 @@
3610
3611 .. _api/config:
3612
3613-=====================
3614-Configuration Methods
3615-=====================
3616+=============
3617+Configuration
3618+=============
3619
3620-The CouchDB API Server Configuration Methods provide an interface to
3621-query and update the various configuration values within a running
3622-CouchDB instance.
3623+The CouchDB Server Configuration API provide an interface to query and update
3624+the various configuration values within a running CouchDB instance.
3625
3626 ``/_config``
3627 ============
3628
3629 .. http:get:: /_config
3630+ :synopsis: Obtains a list of the entire server configuration
3631
3632 Returns the entire CouchDB server configuration as a JSON structure. The
3633 structure is organized by different configuration sections, with
3634@@ -152,7 +152,7 @@
3635 "algorithm": "utc_random"
3636 }
3637 }
3638-
3639+
3640
3641 .. _api/config/section:
3642
3643@@ -160,6 +160,7 @@
3644 ====================
3645
3646 .. http:get:: /_config/{section}
3647+ :synopsis: Returns all the configuration values for the specified section
3648
3649 Gets the configuration structure for a single section.
3650
3651@@ -209,6 +210,7 @@
3652 ========================
3653
3654 .. http:get:: /_config/{section}/{key}
3655+ :synopsis: Returns a specific section/configuration value
3656
3657 Gets a single configuration value from within a specific configuration
3658 section.
3659@@ -251,6 +253,7 @@
3660
3661
3662 .. http:put:: /_config/{section}/{key}
3663+ :synopsis: Sets the specified configuration value
3664
3665 Updates a configuration value. The new value should be supplied in the
3666 request body in the corresponding JSON format. If you are setting a string
3667@@ -296,6 +299,7 @@
3668
3669
3670 .. http:delete:: /_config/{section}/{key}
3671+ :synopsis: Removes the current setting
3672
3673 Deletes a configuration value. The returned JSON will be the value of
3674 the configuration parameter before it was deleted.
3675
3676=== modified file 'share/doc/build/html/_sources/api/server/index.txt'
3677--- share/doc/build/html/_sources/api/server/index.txt 2013-12-01 16:55:05 +0000
3678+++ share/doc/build/html/_sources/api/server/index.txt 2014-07-28 15:45:29 +0000
3679@@ -13,9 +13,9 @@
3680
3681 .. _api/server:
3682
3683-==============
3684-Server Methods
3685-==============
3686+======
3687+Server
3688+======
3689
3690 The CouchDB server interface provides the basic interface to a
3691 CouchDB server for obtaining CouchDB information and getting and setting
3692
3693=== modified file 'share/doc/build/html/_sources/config/auth.txt'
3694--- share/doc/build/html/_sources/config/auth.txt 2013-12-01 16:55:05 +0000
3695+++ share/doc/build/html/_sources/config/auth.txt 2014-07-28 15:45:29 +0000
3696@@ -166,6 +166,30 @@
3697 [couch_httpd_auth]
3698 iterations = 10000
3699
3700+ .. config:option:: min_iterations :: Minimum PBKDF2 iterations count
3701+
3702+ .. versionadded:: 1.6
3703+
3704+ The minimum number of iterations allowed for passwords hashed by
3705+ the PBKDF2 algorithm. Any user with fewer iterations is forbidden.
3706+
3707+ ::
3708+
3709+ [couch_httpd_auth]
3710+ min_iterations = 100
3711+
3712+ .. config:option:: max_iterations :: Maximum PBKDF2 iterations count
3713+
3714+ .. versionadded:: 1.6
3715+
3716+ The maximum number of iterations allowed for passwords hashed by
3717+ the PBKDF2 algorithm. Any user with greater iterations is forbidden.
3718+
3719+ ::
3720+
3721+ [couch_httpd_auth]
3722+ max_iterations = 100000
3723+
3724
3725 .. config:option:: proxy_use_secret :: Force proxy auth use secret token
3726
3727
3728=== modified file 'share/doc/build/html/_sources/config/http.txt'
3729--- share/doc/build/html/_sources/config/http.txt 2013-12-01 16:55:05 +0000
3730+++ share/doc/build/html/_sources/config/http.txt 2014-07-28 15:45:29 +0000
3731@@ -530,7 +530,7 @@
3732 .. config:section:: vhosts :: Virtual Hosts
3733
3734 CouchDB can map requests to different locations based on the ``Host`` header,
3735- even if they arrive on the some inbound IP address.
3736+ even if they arrive on the same inbound IP address.
3737
3738 This allows different virtual hosts on the same machine to map to different
3739 databases or design documents, etc. The most common use case is to map a
3740
3741=== modified file 'share/doc/build/html/_sources/config/intro.txt'
3742--- share/doc/build/html/_sources/config/intro.txt 2013-12-01 16:55:05 +0000
3743+++ share/doc/build/html/_sources/config/intro.txt 2014-07-28 15:45:29 +0000
3744@@ -23,6 +23,14 @@
3745 Configuration files
3746 -------------------
3747
3748+.. warning::
3749+ The following section covering load order of config files
3750+ applies only to UNIX-ish systems.
3751+ For Windows, only the provided ``default.ini`` and ``local.ini``
3752+ files are relevant. These can of course have content
3753+ appended, which achieves the same type of functionality
3754+ as outlined for UNIX-ish systems below.
3755+
3756 By default, CouchDB reads configuration files from the following locations,
3757 in the following order:
3758
3759@@ -126,7 +134,7 @@
3760
3761 .. note::
3762 In case when you'd like to remove some parameter from the `default.ini`
3763- without his modification, you may specify him within the `local.ini`, but
3764+ without modifying that file, you may override in `local.ini`, but
3765 without any value::
3766
3767 [httpd_global_handlers]
3768@@ -148,7 +156,7 @@
3769
3770 Alternatively, configuration parameters could be set via the
3771 :ref:`HTTP API <api/config>`. This API allows to change CouchDB configuration
3772-on-fly without need for server restart::
3773+on-the-fly without requiring a server restart::
3774
3775 curl -X PUT http://localhost:5984/_config/uuids/algorithm -d '"random"'
3776
3777@@ -157,16 +165,17 @@
3778 "sequential"
3779
3780 You should be careful with changing configuration via the HTTP API since it's
3781-easy to make CouchDB unavailable. For instance, you'd like to change the
3782-:option:`httpd/bind_address` for new one::
3783+easy to make CouchDB unavailable. For instance, if you'd like to change the
3784+:option:`httpd/bind_address` for a new one::
3785
3786 curl -X PUT http://localhost:5984/_config/httpd/bind_address -d '"10.10.0.128"'
3787
3788-However, if you would made a typo or the specified IP address is not available
3789-from your network, you'll make CouchDB unavailable for you in both cases and
3790-you will have the only way to fix the problem by edit the configuration file
3791-and restart the server. To protect yourself against such accidents you may
3792-setup the :option:`httpd/config_whitelist` of configuration parameters that
3793-are allowed to edit via the HTTP API. For others you'll need to directly edit
3794-the configuration file so you may quick fix any problems that had occurred due
3795-to misconfiguring.
3796+However, if you make a typo, or the specified IP address is not available
3797+from your network, CouchDB will be unavailable for you in both cases and
3798+the only way to resolve this will be by remoting into the server, correcting
3799+the errant file, and restarting CouchDB. To protect yourself against such
3800+accidents you may set the :option:`httpd/config_whitelist` of permitted
3801+configuration parameters for updates via the HTTP API. Once this option is set,
3802+further changes to non-whitelisted parameters must take place via the
3803+configuration file, and in most cases, also requires a server restart before
3804+hand-edited options take effect.
3805
3806=== modified file 'share/doc/build/html/_sources/config/misc.txt'
3807--- share/doc/build/html/_sources/config/misc.txt 2013-12-01 16:55:05 +0000
3808+++ share/doc/build/html/_sources/config/misc.txt 2014-07-28 15:45:29 +0000
3809@@ -202,6 +202,17 @@
3810 [uuid]
3811 utc_id_suffix = my-awesome-suffix
3812
3813+ .. config:option:: max_count :: Per-Request UUID Limit
3814+
3815+ .. versionadded:: 1.5.1
3816+
3817+ No more than this number of UUIDs will be sent in a single request. If
3818+ more UUIDs are requested, an HTTP error response will be thrown.
3819+
3820+ ::
3821+
3822+ [uuid]
3823+ max_count = 1000
3824
3825
3826 .. _config/vendor:
3827
3828=== modified file 'share/doc/build/html/_sources/config/query-servers.txt'
3829--- share/doc/build/html/_sources/config/query-servers.txt 2013-12-01 16:55:05 +0000
3830+++ share/doc/build/html/_sources/config/query-servers.txt 2014-07-28 15:45:29 +0000
3831@@ -41,7 +41,7 @@
3832 - ``LANGUAGE``: is a programming language which code this query server may
3833 execute. For instance, there are `python`, `ruby`, `clojure` and other query
3834 servers in wild. This value is also used for `ddoc` field ``language``
3835- to determine query server that will process his functions.
3836+ to determine which query server processes the functions.
3837
3838 Note, that you may setup multiple query servers for the same programming
3839 language, but you have to name them different (like `python-dev` etc.).
3840
3841=== modified file 'share/doc/build/html/_sources/config/replicator.txt'
3842--- share/doc/build/html/_sources/config/replicator.txt 2013-12-01 16:55:05 +0000
3843+++ share/doc/build/html/_sources/config/replicator.txt 2014-07-28 15:45:29 +0000
3844@@ -111,6 +111,39 @@
3845 .. _inet: http://www.erlang.org/doc/man/inet.html#setopts-2
3846
3847
3848+ .. config:option:: checkpoint_interval
3849+
3850+ .. versionadded:: 1.6
3851+
3852+ Defines replication checkpoint interval in milliseconds. :ref:`Replicator
3853+ <replicator>` will :get:`requests </{db}>` from the Source database at
3854+ the specified interval::
3855+
3856+ [replicator]
3857+ checkpoint_interval = 5000
3858+
3859+ Lower intervals may be useful for frequently changing data, while higher
3860+ values will lower bandwidth and make fewer requests for infrequently
3861+ updated databases.
3862+
3863+
3864+ .. config:option:: use_checkpoints
3865+
3866+ .. versionadded:: 1.6
3867+
3868+ If ``use_checkpoints`` is set to ``true``, CouchDB will make checkpoints
3869+ during replication and at the completion of replication. CouchDB can
3870+ efficiently resume replication from any of these checkpoints::
3871+
3872+ [replicator]
3873+ use_checkpoints = true
3874+
3875+ .. note:: Checkpoints are stored in :ref:`local documents <api/local>`
3876+ on both the source and target databases (which requires write access).
3877+
3878+ .. warning:: Disabling checkpoints is **not recommended** as CouchDB
3879+ will scan the Source database's changes feed from the beginning.
3880+
3881
3882 .. config:option:: cert_file
3883
3884
3885=== modified file 'share/doc/build/html/_sources/couchapp/ddocs.txt'
3886--- share/doc/build/html/_sources/couchapp/ddocs.txt 2013-12-01 16:55:05 +0000
3887+++ share/doc/build/html/_sources/couchapp/ddocs.txt 2014-07-28 15:45:29 +0000
3888@@ -126,12 +126,12 @@
3889 .. code-block:: javascript
3890
3891 // could be replaced by _sum
3892- function(keys, values){
3893- sum(values);
3894+ function(keys, values) {
3895+ return sum(values);
3896 }
3897
3898 // could be replaced by _count
3899- function(keys, values, rereduce){
3900+ function(keys, values, rereduce) {
3901 if (rereduce) {
3902 return sum(values);
3903 } else {
3904@@ -140,21 +140,31 @@
3905 }
3906
3907 // could be replaced by _stats
3908- function(keys, values, rereduce){
3909- return {
3910- 'sum': sum(values),
3911- 'min': Math.min.apply(null, values),
3912- 'max': Math.max.apply(null, values),
3913- 'count': values.length,
3914- 'sumsqr': (function(){
3915- var sumsqr = 0;
3916-
3917- values.forEach(function (value) {
3918- sumsqr += value * value;
3919- });
3920-
3921- return sumsqr;
3922- })(),
3923+ function(keys, values, rereduce) {
3924+ if (rereduce) {
3925+ return {
3926+ 'sum': values.reduce(function(a, b) { return a + b.sum }, 0),
3927+ 'min': values.reduce(function(a, b) { return Math.min(a, b.min) }, Infinity),
3928+ 'max': values.reduce(function(a, b) { return Math.max(a, b.max) }, -Infinity),
3929+ 'count': values.reduce(function(a, b) { return a + b.count }, 0),
3930+ 'sumsqr': values.reduce(function(a, b) { return a + b.sumsqr }, 0)
3931+ }
3932+ } else {
3933+ return {
3934+ 'sum': sum(values),
3935+ 'min': Math.min.apply(null, values),
3936+ 'max': Math.max.apply(null, values),
3937+ 'count': values.length,
3938+ 'sumsqr': (function() {
3939+ var sumsqr = 0;
3940+
3941+ values.forEach(function (value) {
3942+ sumsqr += value * value;
3943+ });
3944+
3945+ return sumsqr;
3946+ })(),
3947+ }
3948 }
3949 }
3950
3951@@ -409,7 +419,7 @@
3952
3953 function(doc, req){
3954 if (!doc){
3955- if ('id' in req){
3956+ if ('id' in req && req['id']){
3957 // create new document
3958 return [{'_id': req['id']}, 'New World']
3959 }
3960@@ -437,10 +447,10 @@
3961 :param doc: Processed document object.
3962 :param req: :ref:`request_object`
3963 :return: Boolean value: ``true`` means that `doc` passes the filter rules,
3964- ``false`` that not.
3965+ ``false`` means that it does not.
3966
3967-Filter functions are mostly acts like :ref:`showfun` and :ref:`listfun`: they
3968-formats, but more correctly to say, they *filters* :ref:`changes feed<changes>`.
3969+Filter functions mostly act like :ref:`showfun` and :ref:`listfun`: they
3970+format, or *filter* the :ref:`changes feed<changes>`.
3971
3972 Classic filters
3973 ---------------
3974@@ -448,12 +458,11 @@
3975 By default the changes feed emits all database documents changes. But if you're
3976 waiting for some special changes, processing all documents is inefficient.
3977
3978-Filters are special design document functions that allows changes feed to emit
3979+Filters are special design document functions that allow the changes feed to emit
3980 only specific documents that pass filter rules.
3981
3982-Lets assume that our database is a mailbox and we need to to handle only new mails
3983-(documents with status `new`) events. Assuming that, our filter function
3984-will looks like next one:
3985+Let's assume that our database is a mailbox and we need to handle only new mail
3986+events (documents with status `new`). Our filter function will look like this:
3987
3988 .. code-block:: javascript
3989
3990@@ -469,8 +478,8 @@
3991 return true; // passed!
3992 }
3993  
3994-Filter functions must return ``true`` in fact if document passed all defined
3995-rules. Now, if you apply this function to changes feed it will emit only changes
3996+Filter functions must return ``true`` if a document passed all defined
3997+rules. Now, if you apply this function to the changes feed it will emit only changes
3998 about "new mails"::
3999
4000 GET /somedatabase/_changes?filter=mailbox/new_mail HTTP/1.1
4001@@ -483,20 +492,20 @@
4002 ],
4003 "last_seq":27}
4004
4005-Note, that ``last_seq`` number is 27, but we'd received only two records.
4006-Seems like any other changes was about documents that hasn't passed our filter.
4007-
4008-Probably, we also need to filter changes feed of our mailbox not only by single
4009-status value: we're also interested in statuses like "spam" to update
4010-spam-filter heuristic rules, "outgoing" to let mail daemon actually send mails
4011-and so on. Creating a lot of similar functions that actually does similar work
4012-isn't good idea - so we need dynamic filter to go.
4013-
4014-If you have noted, filter functions takes second argument as
4015-:ref:`request <request_object>` object - it allows to create dynamic filters
4016+Note that the value of ``last_seq`` is 27, but we'd received only two records.
4017+Seems like any other changes were for documents that haven't passed our filter.
4018+
4019+We probably need to filter the changes feed of our mailbox by more than a single
4020+status value. We're also interested in statuses like "spam" to update
4021+spam-filter heuristic rules, "outgoing" to let a mail daemon actually send mails,
4022+and so on. Creating a lot of similar functions that actually do similar work
4023+isn't good idea - so we need a dynamic filter.
4024+
4025+You may have noticed that filter functions take a second argument named
4026+:ref:`request <request_object>` - it allows creating dynamic filters
4027 based on query parameters, :ref:`user context <userctx_object>` and more.
4028
4029-The dynamic version of our filter now will be next:
4030+The dynamic version of our filter looks like this:
4031
4032 .. code-block:: javascript
4033
4034@@ -512,7 +521,7 @@
4035 return true; // passed!
4036 }
4037
4038-and now we have pass `status` query parameter in request to let filter match
4039+and now we have passed the `status` query parameter in request to let our filter match
4040 only required documents::
4041
4042 GET /somedatabase/_changes?filter=mailbox/by_status&status=new HTTP/1.1
4043@@ -525,7 +534,7 @@
4044 ],
4045 "last_seq":27}
4046
4047-and we can change filter behavior with easy::
4048+and we can easily change filter behavior with::
4049
4050 GET /somedatabase/_changes?filter=mailbox/by_status&status=spam HTTP/1.1
4051
4052@@ -537,7 +546,7 @@
4053 "last_seq":27}
4054
4055
4056-Combining filters with `continuous` feed allows to create powerful event-driven
4057+Combining filters with a `continuous` feed allows creating powerful event-driven
4058 systems.
4059
4060 .. _viewfilter:
4061
4062=== modified file 'share/doc/build/html/_sources/couchapp/views/collation.txt'
4063--- share/doc/build/html/_sources/couchapp/views/collation.txt 2013-12-01 16:55:05 +0000
4064+++ share/doc/build/html/_sources/couchapp/views/collation.txt 2014-07-28 15:45:29 +0000
4065@@ -32,8 +32,8 @@
4066 }
4067 }
4068
4069-CouchDB allows arbitrary JSON structures to be used as keys. You can use complex
4070-keys for fine-grained control over sorting and grouping.
4071+CouchDB allows arbitrary JSON structures to be used as keys. You can use JSON
4072+arrays as keys for fine-grained control over sorting and grouping.
4073
4074 Examples
4075 ========
4076@@ -49,12 +49,17 @@
4077
4078 function(doc) {
4079 if (doc.Type == "customer") {
4080- emit([doc._id, 0], doc);
4081+ emit([doc._id, 0], null);
4082 } else if (doc.Type == "order") {
4083- emit([doc.customer_id, 1], doc);
4084+ emit([doc.customer_id, 1], null);
4085 }
4086 }
4087
4088+To list a specific customer with ``_id`` XYZ, and all of that customer's orders, limit the startkey and endkey ranges to cover only documents for that customer's ``_id``::
4089+
4090+ startkey=["XYZ"]&endkey=["XYZ", {}]
4091+
4092+It is not recommended to emit the document itself in the view. Instead, to include the bodies of the documents when requesting the view, request the view with ``?include_docs=true``.
4093
4094 Sorting by Dates
4095 ================
4096@@ -67,14 +72,14 @@
4097
4098 .. code-block:: javascript
4099
4100- emit(Date.parse(doc.created_at).getTime(), doc);
4101+ emit(Date.parse(doc.created_at).getTime(), null);
4102
4103 Alternatively, if you use a date format which sorts lexicographically,
4104 such as ``"2013/06/09 13:52:11 +0000"`` you can just
4105
4106 .. code-block:: javascript
4107
4108- emit(doc.created_at, doc);
4109+ emit(doc.created_at, null);
4110
4111 and avoid the conversion. As a bonus, this date format is compatible with the
4112 JavaScript date parser, so you can use ``new Date(doc.created_at)`` in your
4113
4114=== modified file 'share/doc/build/html/_sources/couchapp/views/nosql.txt'
4115--- share/doc/build/html/_sources/couchapp/views/nosql.txt 2013-12-01 16:55:05 +0000
4116+++ share/doc/build/html/_sources/couchapp/views/nosql.txt 2014-07-28 15:45:29 +0000
4117@@ -20,7 +20,7 @@
4118 This is a collection of some common SQL queries and how to get the same result
4119 in CouchDB. The key to remember here is that CouchDB does not work like an SQL
4120 database at all and that best practices from the SQL world do not translate well
4121-or at all to CouchDB. This chapter’s “cookbook” assumes that you are familiar
4122+or at all to CouchDB. This documents’s “cookbook” assumes that you are familiar
4123 with the CouchDB basics such as creating and updating databases and documents.
4124
4125 Using Views
4126@@ -331,7 +331,7 @@
4127 sum of all years of life for the news headline,
4128 `“786 life years present at event.”` A little contrived, but very simple and
4129 thus good for demonstration purposes. Consider the documents and the map view we
4130-used earlier in this chapter.
4131+used earlier in this document.
4132
4133 The reduce function to calculate the total age of all girls is:
4134
4135
4136=== modified file 'share/doc/build/html/_sources/couchapp/views/pagination.txt'
4137--- share/doc/build/html/_sources/couchapp/views/pagination.txt 2013-12-01 16:55:05 +0000
4138+++ share/doc/build/html/_sources/couchapp/views/pagination.txt 2014-07-28 15:45:29 +0000
4139@@ -77,7 +77,7 @@
4140 if we’re not on the first page.
4141
4142 We learned how to use the ``startkey``, ``limit``, and ``skip`` parameters in
4143-earlier chapters. We’ll use these again here. First, let’s have a look at
4144+earlier documents. We’ll use these again here. First, let’s have a look at
4145 the full result set:
4146
4147 .. code-block:: javascript
4148@@ -125,12 +125,11 @@
4149 page.display_link('next');
4150 }
4151
4152-Slow Paging (Do Not Use)
4153-========================
4154+Paging
4155+======
4156
4157-**Don’t use this method!** We just show it because it might seem natural to use,
4158-and you need to know why it is a bad idea. To get the first five rows from
4159-the view result, you use the ``?limit=5`` query parameter::
4160+To get the first five rows from the view result, you use the ``?limit=5``
4161+query parameter::
4162
4163 curl -X GET http://127.0.0.1:5984/artists/_design/artists/_view/by-name?limit=5
4164
4165@@ -194,34 +193,17 @@
4166 return page != last_page;
4167 }
4168
4169-The dealbreaker
4170----------------
4171-
4172-This all looks easy and straightforward, but it has one fatal flaw. Remember
4173-how view results are generated from the underlying B-tree index: CouchDB
4174-jumps to the first row (or the first row that matches ``startkey``,
4175-if provided) and reads one row after the other from the index until there are
4176-no more rows (or ``limit`` or ``endkey`` match, if provided).
4177-
4178-The ``skip`` argument works like this: in addition to going to the first row and
4179-starting to read, skip will skip as many rows as specified, but CouchDB will
4180-still read from the first row; it just won’t return any values for the skipped
4181-rows. If you specify ``skip=100``, CouchDB will read 100 rows and not create
4182-output for them. This doesn’t sound too bad, but it is very bad, when you use
4183-1000 or even 10000 as skip values. CouchDB will have to look at a lot of rows
4184-unnecessarily.
4185-
4186-As a rule of thumb, skip should be used only with single digit values. While
4187-it’s possible that there are legitimate use cases where you specify a larger
4188-value, they are a good indicator for potential problems with your solution.
4189-Finally, for the calculations to work, you need to add a reduce function and
4190-make two calls to the view per page to get all the numbering right,
4191-and there’s still a potential for error.
4192-
4193-Fast Paging (Do Use)
4194-====================
4195-
4196-The correct solution is not much harder. Instead of slicing the result set
4197+Paging (Alternate Method)
4198+=========================
4199+
4200+The method described above performed poorly with large skip values until
4201+CouchDB 1.2. Additionally, some use cases may call for the following
4202+alternate method even with newer versions of CouchDB. One such case is when
4203+duplicate results should be prevented. Using skip alone it is possible for
4204+new documents to be inserted during pagination which could change the offset
4205+of the start of the subsequent page.
4206+
4207+A correct solution is not much harder. Instead of slicing the result set
4208 into equally sized pages, we look at 10 rows at a time and use ``startkey`` to
4209 jump to the next 10 rows. We even use skip, but only with the value 1.
4210
4211
4212=== modified file 'share/doc/build/html/_sources/install/freebsd.txt'
4213--- share/doc/build/html/_sources/install/freebsd.txt 2013-12-01 16:55:05 +0000
4214+++ share/doc/build/html/_sources/install/freebsd.txt 2014-07-28 15:45:29 +0000
4215@@ -37,7 +37,7 @@
4216 couchdb_enablelogs="YES"
4217 couchdb_user="couchdb"
4218
4219-After enabling couchdb rc service use the following to start CouchDB::
4220+After enabling the couchdb rc service use the following command to start CouchDB::
4221
4222 /usr/local/etc/rc.d/couchdb start
4223
4224
4225=== modified file 'share/doc/build/html/_sources/install/mac.txt'
4226--- share/doc/build/html/_sources/install/mac.txt 2013-12-01 16:55:05 +0000
4227+++ share/doc/build/html/_sources/install/mac.txt 2014-07-28 15:45:29 +0000
4228@@ -23,7 +23,7 @@
4229 Installation using the Apache CouchDB native application
4230 ========================================================
4231
4232-The easiest way to run CouchDB on Mac OS X is through his native Mac OS X
4233+The easiest way to run CouchDB on Mac OS X is through the native Mac OS X
4234 application. Just follow the below instructions:
4235
4236 #. `Download Apache CouchDB for Mac OS X`_.
4237
4238=== modified file 'share/doc/build/html/_sources/install/unix.txt'
4239--- share/doc/build/html/_sources/install/unix.txt 2013-12-01 16:55:05 +0000
4240+++ share/doc/build/html/_sources/install/unix.txt 2014-07-28 15:45:29 +0000
4241@@ -52,10 +52,10 @@
4242
4243 You should have the following installed:
4244
4245-* `Erlang OTP (>=R13B04, <R17) <http://erlang.org/>`_
4246+* `Erlang OTP (>=R14B01, =<R17) <http://erlang.org/>`_
4247 * `ICU <http://icu-project.org/>`_
4248 * `OpenSSL <http://www.openssl.org/>`_
4249-* `Mozilla SpiderMonkey (1.7) <http://www.mozilla.org/js/spidermonkey/>`_
4250+* `Mozilla SpiderMonkey (1.8.5) <http://www.mozilla.org/js/spidermonkey/>`_
4251 * `GNU Make <http://www.gnu.org/software/make/>`_
4252 * `GNU Compiler Collection <http://gcc.gnu.org/>`_
4253 * `libcurl <http://curl.haxx.se/libcurl/>`_
4254@@ -102,19 +102,20 @@
4255
4256 You can install the dependencies by running::
4257
4258- sudo yum groupinstall "Development Tools"
4259 sudo yum install autoconf
4260 sudo yum install autoconf-archive
4261 sudo yum install automake
4262- sudo yum install libtool
4263- sudo yum install perl-Test-Harness
4264- sudo yum install erlang-etap
4265+ sudo yum install curl-devel
4266+ sudo yum install erlang-asn1
4267 sudo yum install erlang-erts
4268+ sudo yum install erlang-eunit
4269 sudo yum install erlang-os_mon
4270- sudo yum install erlang-eunit
4271+ sudo yum install erlang-xmerl
4272+ sudo yum install help2man
4273+ sudo yum install js-devel
4274 sudo yum install libicu-devel
4275- sudo yum install js-devel
4276- sudo yum install curl-devel
4277+ sudo yum install libtool
4278+ sudo yum install perl-Test-Harness
4279
4280 While CouchDB builds against the default js-devel-1.7.0 included in some
4281 distributions, it's recommended to use a more recent js-devel-1.8.5.
4282@@ -175,7 +176,9 @@
4283
4284 http://127.0.0.1:5984/_utils/index.html
4285
4286-From here you should run the test suite in Firefox.
4287+From here you should verify your installation by pointing your web browser to::
4288+
4289+ http://localhost:5984/_utils/verify_install.html
4290
4291 Security Considerations
4292 -----------------------
4293
4294=== modified file 'share/doc/build/html/_sources/install/windows.txt'
4295--- share/doc/build/html/_sources/install/windows.txt 2013-12-01 16:55:05 +0000
4296+++ share/doc/build/html/_sources/install/windows.txt 2014-07-28 15:45:29 +0000
4297@@ -33,7 +33,7 @@
4298 - Accept the License agreement
4299 - Select the installation directory
4300 - Specify "Start Menu" group name
4301- - Approve that you'd like to install CouchDB as service and let him been
4302+ - Approve that you'd like to install CouchDB as service and let it be
4303 started automatically after installation (probably, you'd like so)
4304 - Verify installation settings
4305 - Install CouchDB
4306
4307=== modified file 'share/doc/build/html/_sources/intro/api.txt'
4308--- share/doc/build/html/_sources/intro/api.txt 2013-12-01 16:55:05 +0000
4309+++ share/doc/build/html/_sources/intro/api.txt 2014-07-28 15:45:29 +0000
4310@@ -17,18 +17,18 @@
4311 The Core API
4312 ============
4313
4314-This chapter explores the CouchDB in minute detail. It shows all the
4315+This document explores the CouchDB in minute detail. It shows all the
4316 nitty-gritty and clever bits. We show you best practices and guide you around
4317 common pitfalls.
4318
4319-We start out by revisiting the basic operations we ran in the last chapter,
4320-looking behind the scenes. We also show what Futon needs to do behind its
4321-user interface to give us the nice features we saw earlier.
4322+We start out by revisiting the basic operations we ran in the previous document
4323+:ref:`intro/tour`, looking behind the scenes. We also show what Futon needs to
4324+do behind its user interface to give us the nice features we saw earlier.
4325
4326-This chapter is both an introduction to the core CouchDB API as well as a
4327+This document is both an introduction to the core CouchDB API as well as a
4328 reference. If you can't remember how to run a particular request or why some
4329 parameters are needed, you can always come back here and look things up (we
4330-are probably the heaviest users of this chapter).
4331+are probably the heaviest users of this document).
4332
4333 While explaining the API bits and pieces, we sometimes need to take a larger
4334 detour to explain the reasoning for a particular request. This is a good
4335@@ -322,7 +322,7 @@
4336 opened in the beginning open for a moment, but then closed it after it
4337 received the entire response.
4338
4339-Throughout the book, we'll show more requests with the ``-v`` option,
4340+Throughout the documents, we'll show more requests with the ``-v`` option,
4341 but we'll omit some of the headers we've seen here and include only those
4342 that are important for the particular request.
4343
4344@@ -496,12 +496,12 @@
4345 code is static.
4346
4347 The revision system also has positive effects on replication and storage
4348-mechanisms, but we'll explore these later in the book.
4349+mechanisms, but we'll explore these later in the documents.
4350
4351 .. warning::
4352
4353 The terms *version* and *revision* might sound familiar (if you are
4354- programming without version control, drop this book right now and start
4355+ programming without version control, stop reading this guide right now and start
4356 learning one of the popular systems). Using new versions for document changes
4357 works a lot like version control, but there's an important difference:
4358 **CouchDB does not guarantee that older versions are kept around**.
4359@@ -567,7 +567,7 @@
4360 Attachments get their own URL where you can upload data. Say we want to add
4361 the album artwork to the ``6e1295ed6c29495e54cc05947f18c8af`` document
4362 (*"There is Nothing Left to Lose"*), and let's also say the artwork is in a file
4363-artwork `.jpg` in the current directory::
4364+`artwork.jpg` in the current directory::
4365
4366 curl -vX PUT http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-2739352689 \
4367 --data-binary @artwork.jpg -H "Content-Type:image/jpg"
4368@@ -636,8 +636,8 @@
4369 document revisions are on *source* that are not yet on *target*, and will
4370 proceed to move the missing documents and revisions over.
4371
4372-We'll take an in-depth look at replication later in the book; in this
4373-chapter, we'll just show you how to use it.
4374+We'll take an in-depth look at replication in the document :ref:`replication/intro`;
4375+in this document, we'll just show you how to use it.
4376
4377 First, we'll create a target database. Note that CouchDB won't automatically
4378 create a target database for you, and will return a replication failure if
4379@@ -747,7 +747,7 @@
4380 requests don't look very RESTy to the trained eye. What's up with that?
4381 While CouchDB's core database, document, and attachment API are RESTful,
4382 not all of CouchDB's API is. The replication API is one example. There are
4383- more, as we'll see later in the book.
4384+ more, as we'll see later in the documents.
4385
4386 Why are there RESTful and non-RESTful APIs mixed up here? Have the developers
4387 been too lazy to go REST all the way? Remember, REST is an architectural
4388
4389=== modified file 'share/doc/build/html/_sources/intro/consistency.txt'
4390--- share/doc/build/html/_sources/intro/consistency.txt 2013-12-01 16:55:05 +0000
4391+++ share/doc/build/html/_sources/intro/consistency.txt 2014-07-28 15:45:29 +0000
4392@@ -17,8 +17,8 @@
4393 Eventual Consistency
4394 ====================
4395
4396-In the previous chapter, we saw that CouchDB's flexibility allows us to
4397-evolve our data as our applications grow and change. In this chapter,
4398+In the previous document :ref:`intro/why`, we saw that CouchDB's flexibility allows us to
4399+evolve our data as our applications grow and change. In this topic,
4400 we'll explore how working "with the grain" of CouchDB promotes simplicity in
4401 our applications and helps us naturally build scalable, distributed systems.
4402
4403
4404=== modified file 'share/doc/build/html/_sources/intro/overview.txt'
4405--- share/doc/build/html/_sources/intro/overview.txt 2013-12-01 16:55:05 +0000
4406+++ share/doc/build/html/_sources/intro/overview.txt 2014-07-28 15:45:29 +0000
4407@@ -66,13 +66,13 @@
4408 Documents are indexed in `B-trees`_ by their name (DocID) and a Sequence ID.
4409 Each update to a database instance generates a new sequential number.
4410 Sequence IDs are used later for incrementally finding changes in a database.
4411-TheseBb-tree indexes are updated simultaneously when documents are saved or
4412+These B-tree indexes are updated simultaneously when documents are saved or
4413 deleted. The index updates always occur at the end of the file (append-only
4414 updates).
4415
4416 Documents have the advantage of data being already conveniently packaged for
4417 storage rather than split out across numerous tables and rows in most
4418-databases systems. When documents are committed to disk, the document fields
4419+database systems. When documents are committed to disk, the document fields
4420 and metadata are packed into buffers, sequentially one document after another
4421 (helpful later for efficient building of views).
4422
4423@@ -105,14 +105,14 @@
4424 database file exceeds a certain amount of wasted space, the compaction process
4425 clones all the active data to a new file and then discards the old file.
4426 The database remains completely online the entire time and all updates and
4427-reads are allowed to complete successfully. The old file is deleted only when
4428+reads are allowed to complete successfully. The old database file is deleted only when
4429 all the data has been copied and all users transitioned to the new file.
4430
4431
4432 Views
4433 =====
4434
4435-ACID properties only deal with storage and updates, we also need the ability
4436+ACID properties only deal with storage and updates, but we also need the ability
4437 to show our data in interesting and useful ways. Unlike SQL databases where
4438 data must be carefully decomposed into tables, data in CouchDB is stored in
4439 semi-structured documents. CouchDB documents are flexible and each has its
4440@@ -136,7 +136,7 @@
4441 To address this problem of adding structure back to unstructured and
4442 semi-structured data, CouchDB integrates a view model. Views are the method
4443 of aggregating and reporting on the documents in a database, and are built
4444-on-demand to aggregate, join and report on database documents. Views are built
4445+on-demand to aggregate, join and report on database documents. Because views are built
4446 dynamically and don’t affect the underlying document, you can have as many
4447 different view representations of the same data as you like.
4448
4449@@ -198,9 +198,10 @@
4450 is concurrently being refreshed for other clients without causing problems
4451 for the readers.
4452
4453-As documents are examined, their previous row values are removed from the
4454-view indexes, if they exist. If the document is selected by a view function,
4455-the function results are inserted into the view as a new row.
4456+As documents are processed by the view engine through your 'map' and 'reduce'
4457+functions, their previous row values are removed from the view indexes, if
4458+they exist. If the document is selected by a view function, the function results
4459+are inserted into the view as a new row.
4460
4461 When view index changes are written to disk, the updates are always appended
4462 at the end of the file, serving to both reduce disk head seek times during
4463@@ -260,9 +261,9 @@
4464 Distributed Updates and Replication
4465 ===================================
4466
4467-CouchDB is a peer-based distributed database system, it allows for users and
4468-servers to access and update the same shared data while disconnected and then
4469-bi-directionally replicate those changes later.
4470+CouchDB is a peer-based distributed database system. It allows users and servers
4471+to access and update the same shared data while disconnected. Those changes can
4472+then be replicated bi-directionally later.
4473
4474 The CouchDB document storage, view and security models are designed to work
4475 together to make true bi-directional replication efficient and reliable.
4476
4477=== modified file 'share/doc/build/html/_sources/intro/security.txt'
4478--- share/doc/build/html/_sources/intro/security.txt 2013-12-01 16:55:05 +0000
4479+++ share/doc/build/html/_sources/intro/security.txt 2014-07-28 15:45:29 +0000
4480@@ -17,7 +17,7 @@
4481 Security
4482 ********
4483
4484-In this chapter, we'll look at the basic security mechanisms in CouchDB: the
4485+In this document, we'll look at the basic security mechanisms in CouchDB: the
4486 `Admin Party`, `Basic Authentication`, `Cookie Authentication`; how CouchDB
4487 handles users and protects their credentials.
4488
4489@@ -65,16 +65,16 @@
4490 - Setup a database security (:put:`PUT /database/_security
4491 </{db}/_security>`)
4492 - Creating a design document (:put:`PUT /database/_design/app
4493- </{db}/_design/{ddocname}>`)
4494+ </{db}/_design/{ddoc}>`)
4495 - Updating a design document (:put:`PUT /database/_design/app?rev=1-4E2
4496- </{db}/_design/{ddocname}>`)
4497+ </{db}/_design/{ddoc}>`)
4498 - Deleting a design document (:delete:`DELETE /database/_design/app?rev=2-6A7
4499- </{db}/_design/{ddocname}>`)
4500+ </{db}/_design/{ddoc}>`)
4501 - Execute a temporary view (:post:`POST /database/_temp_view
4502 </{db}/_temp_view>`)
4503 - Triggering compaction (:post:`POST /database/_compact </{db}/_compact>`)
4504 - Reading the task status list (:get:`GET /_active_tasks </_active_tasks>`)
4505-- Restarting the server (:post:`:POST /_restart </_restart>`)
4506+- Restarting the server (:post:`POST /_restart </_restart>`)
4507 - Reading the active configuration (:get:`GET /_config </_config>`)
4508 - Updating the active configuration (:put:`PUT /_config/section/key
4509 </_config/{section}/{key}>`)
4510@@ -281,7 +281,7 @@
4511 any document (to be honest, that they always can do)
4512 - There is special design document ``_auth`` that cannot be modified
4513 - Every document (of course, except `design documents`) represents registered
4514- CouchDB users and belong to him
4515+ CouchDB users and belong to them
4516 - Users may only access (:get:`GET /_users/org.couchdb.user:Jan
4517 </{db}/{docid}>`) or modify (:put:`PUT /_users/org.couchdb.user:Jan
4518 </{db}/{docid}>`) documents that they owns
4519@@ -318,8 +318,8 @@
4520 - **type** (*string*): Document type. Constantly have value ``user``
4521
4522 Additionally, you may specify any custom fields that are relates to the target
4523-user. This is good place to store user's private information because only he and
4524-CouchDB administrators may browse it.
4525+user. This is good place to store user's private information because only the
4526+target user and CouchDB administrators may browse it.
4527
4528 .. _org.couchdb.user:
4529
4530@@ -396,7 +396,7 @@
4531 Password Changing
4532 =================
4533
4534-This is quite common situation: user had forgot his password, it was leaked
4535+This is quite common situation: user had forgot their password, it was leaked
4536 somehow (via copy-paste, screenshot, or by typing in wrong chat window) or
4537 something else. Let's change password for our user `jan`.
4538
4539@@ -466,7 +466,7 @@
4540 {"ok":true,"name":"jan","roles":[]}
4541
4542 Hooray! You may wonder why so complex: need to retrieve user's document, add
4543-special field to him, post it back - where is one big button that changes the
4544+special field to it, post it back - where is one big button that changes the
4545 password without worry about document's content? Actually, :ref:`Futon
4546 <intro/futon>` has such at the right bottom corner if you have logged in -
4547 all implementation details are hidden from your sight.
4548@@ -483,7 +483,7 @@
4549 .. versionadded:: 1.4
4550
4551 Sometimes users *wants* to share some information with the World. For instance,
4552-their contact email to let other users get in touch with him. To solve this
4553+their contact email to let other users get in touch with them. To solve this
4554 problem, but still keep sensitive and private information secured there is
4555 special :ref:`configuration <config>` option :config:option:`public_fields
4556 <couch_httpd_auth/public_fields>`. In this options you may define comma
4557@@ -503,7 +503,7 @@
4558
4559 Now let's share field ``name``. First, setup the ``public_fields`` configuration
4560 option. Remember, that this action requires administrator's privileges and
4561-the next command will ask for password for user `admin`, assuming that he is
4562+the next command will ask for password for user `admin`, assuming that they are
4563 the server administrator::
4564
4565 curl -X PUT http://localhost:5984/_config/couch_http_auth/public_fields \
4566
4567=== modified file 'share/doc/build/html/_sources/intro/tour.txt'
4568--- share/doc/build/html/_sources/intro/tour.txt 2013-12-01 16:55:05 +0000
4569+++ share/doc/build/html/_sources/intro/tour.txt 2014-07-28 15:45:29 +0000
4570@@ -17,7 +17,7 @@
4571 Getting Started
4572 ===============
4573
4574-In this chapter, we'll take a quick tour of CouchDB's features,
4575+In this document, we'll take a quick tour of CouchDB's features,
4576 familiarizing ourselves with Futon, the built-in administration interface.
4577 We'll create our first document and experiment with CouchDB views.
4578
4579@@ -28,7 +28,7 @@
4580 We'll have a very quick look at CouchDB's bare-bones Application Programming
4581 Interface (API) by using the command-line utility curl. Please note that this
4582 is not the only way of talking to CouchDB. We will show you plenty more
4583-throughout the rest of the book. What's interesting about curl is that it
4584+throughout the rest of the documents. What's interesting about curl is that it
4585 gives you control over raw HTTP requests, and you can see exactly what is
4586 going on "underneath the hood" of your database.
4587
4588@@ -175,8 +175,8 @@
4589 http://127.0.0.1:5984/_utils/
4590
4591 If you're running version 0.9 or later, you should see something similar to
4592-:ref:`intro/tour-01`. In later chapters, we'll focus on using CouchDB from
4593-server-side languages such as Ruby and Python. As such, this chapter is a great
4594+:ref:`intro/tour-01`. In later documents, we'll focus on using CouchDB from
4595+server-side languages such as Ruby and Python. As such, this document is a great
4596 opportunity to showcase an example of natively serving up a dynamic web
4597 application using nothing more than CouchDB's integrated web server, something
4598 you may wish to do with your own applications.
4599@@ -260,7 +260,7 @@
4600 You can experiment with other JSON values; e.g., ``[1, 2, "c"]`` or
4601 ``{"foo": "bar"}``. Once you've entered your values into the document,
4602 make a note of its ``_rev`` attribute and click "Save Document." The result
4603-should look like :ref:`intro/tour-04` document in Futon".
4604+should look like :ref:`intro/tour-04`.
4605
4606
4607 .. _intro/tour-03:
4608@@ -282,7 +282,7 @@
4609
4610
4611 You'll notice that the document's _rev has changed. We'll go into more detail
4612-about this in later chapters, but for now, the important thing to note is
4613+about this in later documents, but for now, the important thing to note is
4614 that _rev acts like a safety feature when saving a document. As long as you
4615 and CouchDB agree on the most recent _rev of a document, you can successfully
4616 save your changes.
4617@@ -534,7 +534,7 @@
4618
4619 Now that you've seen most of Futon's features, you'll be prepared to dive in
4620 and inspect your data as we build our example application in the next few
4621-chapters. Futon's pure JavaScript approach to managing CouchDB shows how it's
4622+documents. Futon's pure JavaScript approach to managing CouchDB shows how it's
4623 possible to build a fully featured web application using only CouchDB's HTTP
4624 API and integrated web server.
4625
4626
4627=== modified file 'share/doc/build/html/_sources/intro/why.txt'
4628--- share/doc/build/html/_sources/intro/why.txt 2013-12-01 16:55:05 +0000
4629+++ share/doc/build/html/_sources/intro/why.txt 2014-07-28 15:45:29 +0000
4630@@ -18,11 +18,11 @@
4631 ============
4632
4633 Apache CouchDB is one of a new breed of database management systems.
4634-This chapter explains why there's a need for new systems as well as the
4635+This topic explains why there's a need for new systems as well as the
4636 motivations behind building CouchDB.
4637
4638 As CouchDB developers, we're naturally very excited to be using CouchDB.
4639-In this chapter we'll share with you the reasons for our enthusiasm.
4640+In this topic we'll share with you the reasons for our enthusiasm.
4641 We'll show you how CouchDB's schema-free document model is a better fit
4642 for common applications, how the built-in query engine is a powerful way
4643 to use and process your data, and how CouchDB's design lends itself
4644@@ -32,9 +32,8 @@
4645 Relax
4646 =====
4647
4648-If there's one word to describe CouchDB, it is *relax*. It is in the title of
4649-this book, it is the byline to CouchDB's official logo,
4650-and when you start CouchDB, you see::
4651+If there's one word to describe CouchDB, it is *relax*. It is the byline
4652+to CouchDB's official logo and when you start CouchDB, you see::
4653
4654 Apache CouchDB has started. Time to relax.
4655
4656@@ -198,7 +197,7 @@
4657
4658 There are a multitude of knobs you could turn to make a system work better in
4659 one area, but you'll affect another area when doing so. One example would be
4660-the CAP theorem discussed in the next chapter. To give you an idea of other
4661+the CAP theorem discussed in :ref:`intro/consistency`. To give you an idea of other
4662 things that affect storage systems, see :ref:`Figure 2 <intro/why-figure-02>`
4663 and :ref:`Figure 3 <intro/why-figure-03>`.
4664
4665@@ -311,5 +310,6 @@
4666 Wrapping Up
4667 ===========
4668
4669-The next chapter further explores the distributed nature of CouchDB. We
4670-should have given you enough bites to whet your interest. Let's go!
4671+The next document :ref:`intro/consistency` further explores the distributed nature
4672+of CouchDB. We should have given you enough bites to whet your interest.
4673+Let's go!
4674
4675=== modified file 'share/doc/build/html/_sources/json-structure.txt'
4676--- share/doc/build/html/_sources/json-structure.txt 2013-12-01 16:55:05 +0000
4677+++ share/doc/build/html/_sources/json-structure.txt 2014-07-28 15:45:29 +0000
4678@@ -119,30 +119,30 @@
4679 +================================+=============================================+
4680 | db_name | The name of the database. |
4681 +--------------------------------+---------------------------------------------+
4682-| committed_update_seq | The number of committed update. |
4683-+--------------------------------+---------------------------------------------+
4684-| doc_count | A count of the documents in the specified |
4685-| | database. |
4686-+--------------------------------+---------------------------------------------+
4687-| doc_del_count | Number of deleted documents |
4688+| committed_update_seq | The number of committed updates. |
4689++--------------------------------+---------------------------------------------+
4690+| doc_count | The number of documents in the database. |
4691++--------------------------------+---------------------------------------------+
4692+| doc_del_count | The number of deleted documents. |
4693 +--------------------------------+---------------------------------------------+
4694 | compact_running | Set to true if the database compaction |
4695 | | routine is operating on this database. |
4696 +--------------------------------+---------------------------------------------+
4697 | disk_format_version | The version of the physical format used for |
4698-| | the data when it is stored on disk. |
4699+| | the data when it is stored on hard disk. |
4700 +--------------------------------+---------------------------------------------+
4701-| disk_size | Size in bytes of the data as stored on the |
4702-| | disk. Views indexes are not included in the |
4703+| disk_size | Size in bytes of the data as stored on disk.|
4704+| | View indexes are not included in the |
4705 | | calculation. |
4706 +--------------------------------+---------------------------------------------+
4707-| instance_start_time | Timestamp of when the database was opened, |
4708-| | expressed in microseconds since the epoch. |
4709+| instance_start_time | Timestamp indicating when the database was |
4710+| | opened, expressed in microseconds since the |
4711+| | epoch. |
4712 +--------------------------------+---------------------------------------------+
4713 | purge_seq | The number of purge operations on the |
4714 | | database. |
4715 +--------------------------------+---------------------------------------------+
4716-| update_seq | The current number of updates to the |
4717+| update_seq | The current number of updates made in the |
4718 | | database. |
4719 +--------------------------------+---------------------------------------------+
4720
4721@@ -227,7 +227,7 @@
4722 +--------------------------------+---------------------------------------------+
4723 | Field | Description |
4724 +================================+=============================================+
4725-| tasks [array] | Active Task |
4726+| tasks [array] | Active Tasks |
4727 +--------------------------------+---------------------------------------------+
4728 | pid | Process ID |
4729 +--------------------------------+---------------------------------------------+
4730@@ -265,11 +265,16 @@
4731 | | start |
4732 +--------------------------------+---------------------------------------------+
4733 | filter (optional) | name of the filter function in the form of |
4734-| | ddoc/myfilter |
4735-+--------------------------------+---------------------------------------------+
4736-| query_params (optional) | query parameter that are passed to the |
4737-| | filter function; value should be a document |
4738-| | containing parameters as members |
4739+| | ``ddoc/myfilter`` |
4740++--------------------------------+---------------------------------------------+
4741+| query_params (optional) | Query parameter that are passed to the |
4742+| | filter function; the value should be a |
4743+| | document containing parameters as members |
4744++--------------------------------+---------------------------------------------+
4745+| use_checkpoints (optional) | Whether to use replication checkpoints |
4746+| | or not |
4747++--------------------------------+---------------------------------------------+
4748+| checkpoint_interval (optional) | Specifies the checkpoint interval in ms. |
4749 +--------------------------------+---------------------------------------------+
4750
4751 .. _replication-status:
4752@@ -284,7 +289,7 @@
4753 +--------------------------------+---------------------------------------------+
4754 | session_id | Unique session ID |
4755 +--------------------------------+---------------------------------------------+
4756-| source_last_seq | Last sequence number read from source |
4757+| source_last_seq | Last sequence number read from the source |
4758 | | database |
4759 +--------------------------------+---------------------------------------------+
4760 | history [array] | Replication History |
4761@@ -321,16 +326,16 @@
4762 | Field | Description |
4763 +================================+=============================================+
4764 | body | Request body data as `string`. |
4765-| | If request method is `GET` method contains |
4766-| | this field contains ``"undefined"`` value, |
4767-| | while if `DELETE` or `HEAD` value is ``""`` |
4768-| | (empty string) |
4769+| | If the request method is `GET` this field |
4770+| | contains the value ``"undefined"``. If the |
4771+| | method is `DELETE` or `HEAD` the value is |
4772+| | ``""`` (empty string). |
4773 +--------------------------------+---------------------------------------------+
4774 | cookie | Cookies `object`. |
4775 +--------------------------------+---------------------------------------------+
4776 | form | Form data `object`. |
4777-| | Contains decoded body as key-value pairs if |
4778-| | `Content-Type` header was |
4779+| | Contains the decoded body as key-value |
4780+| | pairs if the `Content-Type` header was |
4781 | | ``application/x-www-form-urlencoded``. |
4782 +--------------------------------+---------------------------------------------+
4783 | headers | Request headers `object`. |
4784@@ -341,18 +346,18 @@
4785 | info | :ref:`Database information <dbinfo_object>` |
4786 +--------------------------------+---------------------------------------------+
4787 | method | Request method as `string` or `array`. |
4788-| | String value is method is one of: `HEAD`, |
4789+| | String value is a method as one of: `HEAD`, |
4790 | | `GET`, `POST`, `PUT`, `DELETE`, `OPTIONS`, |
4791-| | and `TRACE`, otherwise it will be |
4792-| | represented as array of char codes. |
4793+| | and `TRACE`. Otherwise it will be |
4794+| | represented as an array of char codes. |
4795 +--------------------------------+---------------------------------------------+
4796 | path | List of requested path sections. |
4797 +--------------------------------+---------------------------------------------+
4798 | peer | Request source IP address. |
4799 +--------------------------------+---------------------------------------------+
4800 | query | URL query parameters `object`. |
4801-| | Note that multiple keys not supported and |
4802-| | last key value suppress others. |
4803+| | Note that multiple keys are not supported |
4804+| | and the last key value suppresses others. |
4805 +--------------------------------+---------------------------------------------+
4806 | requested_path | List of actual requested path section. |
4807 +--------------------------------+---------------------------------------------+
4808@@ -362,8 +367,8 @@
4809 +--------------------------------+---------------------------------------------+
4810 | userCtx | :ref:`userctx_object`. |
4811 +--------------------------------+---------------------------------------------+
4812-| uuid | Generated UUID by specified algorithm in |
4813-| | config file. |
4814+| uuid | Generated UUID by a specified algorithm in |
4815+| | the config file. |
4816 +--------------------------------+---------------------------------------------+
4817
4818 .. code-block:: javascript
4819@@ -476,15 +481,15 @@
4820 +--------------------------------+---------------------------------------------+
4821
4822 .. warning::
4823- ``body``, ``base64`` and ``json`` object keys are overlaps each other and
4824- the last wins. Since most realizations of key-value objects doesn't preserve
4825- key order mixing them may create confusing situation. Try to use only one of
4826- them.
4827+ The ``body``, ``base64`` and ``json`` object keys are overlapping each other
4828+ where the last one wins. Since most realizations of key-value objects do
4829+ not preserve the key order or if they are mixed, confusing situations can
4830+ occure. Try to use only one of them.
4831
4832 .. note::
4833- Any custom property makes CouchDB raise internal exception.
4834- Also `Response object` could be a simple string value which would be
4835- implicitly wrapped into ``{"body": ...}`` object.
4836+ Any custom property makes CouchDB raise an internal exception.
4837+ Furthermore, the `Response object` could be a simple string value which would
4838+ be implicitly wrapped into a ``{"body": ...}`` object.
4839
4840
4841 Returned CouchDB Document with Detailed Revision Info
4842@@ -498,7 +503,7 @@
4843 | _rev (optional) | Revision ID (when updating an existing |
4844 | | document) |
4845 +--------------------------------+---------------------------------------------+
4846-| _revs_info [array] | CouchDB Document Extended Revision Info |
4847+| _revs_info [array] | CouchDB document extended revision info |
4848 +--------------------------------+---------------------------------------------+
4849 | rev | Full revision string |
4850 +--------------------------------+---------------------------------------------+
4851@@ -516,7 +521,7 @@
4852 | _rev (optional) | Revision ID (when updating an existing |
4853 | | document) |
4854 +--------------------------------+---------------------------------------------+
4855-| _revisions | CouchDB Document Revisions |
4856+| _revisions | CouchDB document revisions |
4857 +--------------------------------+---------------------------------------------+
4858 | ids [array] | Array of valid revision IDs, in reverse |
4859 | | order (latest first) |
4860@@ -535,7 +540,7 @@
4861 | _rev (optional) | Revision ID (when updating an existing |
4862 | | document) |
4863 +--------------------------------+---------------------------------------------+
4864-| _attachments (optional) | Document Attachment |
4865+| _attachments (optional) | Document attachment |
4866 +--------------------------------+---------------------------------------------+
4867 | filename | Attachment |
4868 +--------------------------------+---------------------------------------------+
4869@@ -596,8 +601,8 @@
4870 +--------------------------------+---------------------------------------------+
4871 | Field | Description |
4872 +================================+=============================================+
4873-| db | Database name in context of provided |
4874-| | operation. |
4875+| db | Database name in the context of the |
4876+| | provided operation. |
4877 +--------------------------------+---------------------------------------------+
4878 | name | User name. |
4879 +--------------------------------+---------------------------------------------+
4880
4881=== modified file 'share/doc/build/html/_sources/maintenance/compaction.txt'
4882--- share/doc/build/html/_sources/maintenance/compaction.txt 2013-12-01 16:55:05 +0000
4883+++ share/doc/build/html/_sources/maintenance/compaction.txt 2014-07-28 15:45:29 +0000
4884@@ -27,8 +27,8 @@
4885 first for the available disk space - it should be *twice greater* than the
4886 compacted file's data.
4887
4888-When all actual data successful transferred to the `compacted` file CouchDB
4889-*removes* the `target` replacing him with it.
4890+When all actual data is successfully transferred to the `compacted` file CouchDB
4891+replaces the `target` with the `compacted` file.
4892
4893
4894 .. _compact/db:
4895
4896=== modified file 'share/doc/build/html/_sources/query-server/javascript.txt'
4897--- share/doc/build/html/_sources/query-server/javascript.txt 2013-12-01 16:55:05 +0000
4898+++ share/doc/build/html/_sources/query-server/javascript.txt 2014-07-28 15:45:29 +0000
4899@@ -273,12 +273,12 @@
4900 "views": {
4901 "lib": {
4902 "security": "function user_context(userctx, secobj) { ... }"
4903- },
4904- "validate_doc_update": "function(newdoc, olddoc, userctx, secobj) {
4905- user = require('lib/security').user(userctx, secobj);
4906- return user.is_admin();
4907- }"
4908+ }
4909 },
4910+ "validate_doc_update": "function(newdoc, olddoc, userctx, secobj) {
4911+ user = require('lib/security').user(userctx, secobj);
4912+ return user.is_admin();
4913+ }"
4914 "_id": "_design/test"
4915 }
4916
4917
4918=== modified file 'share/doc/build/html/_sources/query-server/protocol.txt'
4919--- share/doc/build/html/_sources/query-server/protocol.txt 2013-12-01 16:55:05 +0000
4920+++ share/doc/build/html/_sources/query-server/protocol.txt 2014-07-28 15:45:29 +0000
4921@@ -515,7 +515,7 @@
4922 ]
4923
4924 When there is no more view rows to process, CouchDB sends special message,
4925- that signs about that there is no more data to send from his side::
4926+ that signs about that there is no more data to send from its side::
4927
4928 ["list_end"]
4929
4930@@ -573,7 +573,7 @@
4931 Note, that now the Query Server sends response by lightweight chunks and if
4932 our communication process was extremely slow, the client will see how response
4933 data appears on their screen. Chunk by chunk, without waiting for the complete
4934-result, like he have for our previous list function.
4935+result, like they have for our previous list function.
4936
4937 .. _qs/ddoc/updates:
4938
4939
4940=== modified file 'share/doc/build/html/_sources/replication/protocol.txt'
4941--- share/doc/build/html/_sources/replication/protocol.txt 2013-12-01 16:55:05 +0000
4942+++ share/doc/build/html/_sources/replication/protocol.txt 2014-07-28 15:45:29 +0000
4943@@ -40,7 +40,7 @@
4944
4945 The CouchDB_ replication protocol is using the `CouchDB REST API
4946 <http://wiki.apache.org/couchdb/Reference>`_ and so is based on HTTP and
4947-the Apache CouchDB MVC Data model. The primary goal of this
4948+the Apache CouchDB MVCC Data model. The primary goal of this
4949 specification is to describe the CouchDB replication algorithm.
4950
4951
4952@@ -107,7 +107,7 @@
4953
4954 5. GET each revisions from the source Database by calling the URL
4955 `/<source>/<docid>?revs=true&open_revs`=<revision>` . This
4956- will get the document with teh parent revisions. Also don't forget to
4957+ will get the document with its parent revisions. Also don't forget to
4958 get attachments that aren't already stored at the target. As an
4959 optimisation you can use the HTTP multipart api to get all.
4960
4961@@ -190,7 +190,7 @@
4962 Reference
4963 ---------
4964
4965-* `TouchDB Ios wiki <https://github.com/couchbaselabs/TouchDB-iOS/wiki/Replication-Algorithm>`_
4966+* `TouchDB iOS wiki <https://github.com/couchbaselabs/TouchDB-iOS/wiki/Replication-Algorithm>`_
4967 * `CouchDB documentation
4968 <http://wiki.apache.org/couchdb/Replication>`_
4969 * CouchDB `change notifications`_
4970
4971=== modified file 'share/doc/build/html/_sources/replication/replicator.txt'
4972--- share/doc/build/html/_sources/replication/replicator.txt 2013-12-01 16:55:05 +0000
4973+++ share/doc/build/html/_sources/replication/replicator.txt 2014-07-28 15:45:29 +0000
4974@@ -15,13 +15,18 @@
4975 Replicator Database
4976 ===================
4977
4978-A database where you ``PUT``/``POST`` documents to trigger replications
4979-and you ``DELETE`` to cancel ongoing replications. These documents have
4980-exactly the same content as the JSON objects we used to ``POST`` to
4981-``_replicate`` (fields ``source``, ``target``, ``create_target``,
4982-``continuous``, ``doc_ids``, ``filter``, ``query_params``.
4983-
4984-Replication documents can have a user defined ``_id``. Design documents
4985+The ``_replicator`` database works like any other in CouchDB, but documents
4986+added to it will trigger replications. Creating (``PUT`` or ``POST``) a
4987+document to start a replication. ``DELETE`` a replicaiton document to
4988+cancel an ongoing replication.
4989+
4990+These documents have exactly the same content as the JSON objects we use to
4991+``POST`` to ``_replicate`` (fields ``source``, ``target``, ``create_target``,
4992+``continuous``, ``doc_ids``, ``filter``, ``query_params``, ``use_checkpoints``,
4993+``checkpoint_interval``).
4994+
4995+Replication documents can have a user defined ``_id`` (handy for finding a
4996+specific replication request later). Design Documents
4997 (and ``_local`` documents) added to the replicator database are ignored.
4998
4999 The default name of this database is ``_replicator``. The name can be
5000@@ -31,7 +36,7 @@
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches