couchdb 2.1.1
- CouchDB now supports compilation and running under Erlang/OTP 20.x
- The couch_peruser functionality is now really fixed
- The cookie domain for AuthSession cookies, used in a proxy
authentication configuration, can now be customized via the ini file
- It is now possible to modify shard maps for system databases
- Due to an Erlang bug (ERL-343), invalid paths can be returned if
volumes are mounted containing whitespace in their name (fixed)
- The current node's local interface can now be accessed at
/_node/_local/{endpoint} as well as at
/_node/<nodename>@<hostname>/{endpoint}.- The Dockerfile in the source
repository has been retired
- Fauxton now uses a version of React with a BSD license.
- CouchDB now no longer decompresses documents just to determine their
uncompressed size
- The design document cache (ddoc_cache) has been rewritten to improve
performance
- Mango now supports partial indexes
- Mango queries can now be paginated
- Mango _find accepts an execution_stats parameter
- Mango now requires that all of the fields in a candidate index must
exist in a query's selector
- Other minor improvements.
couchdb 2.1.0
- The Mango _find endpoint supports a new combination operator,
$allMatch.
- New scheduling replicator.
- Other minor improvements.
See changelog for the 2.1.x branch for more:
http://docs.couchdb.org/en/latest/whatsnew/2.1.html
- The build system embeds the Erlang VM into the package, which means that
the PLIST may differ across build systems. Hence why we use a semi-dynamic
PLIST here.
- That also means that lang/erlang is now a build dependency only.
- Include a couch-epmd service for the Erlang Port Mapper Daemon using the
embedded binary.
- Basic RCD script added.
Upstream changes since 1.6.x:
- Native clustering is now supported. Rather than use CouchDB replication
between multiple, distinct CouchDB servers, configure a cluster of CouchDB
nodes.
- Futon replaced by brand-new, completely re-engineered Fauxton interface.
URL remains the same.
- The new Mango Query Server provides a simple JSON-based way to perform
CouchDB queries without JavaScript or MapReduce.
- Mango selectors can be used in _changes feeds instead of JavaScript
MapReduce filters. Mango has been tested to be up to an order of magnitude
(10x) faster than JavaScript in this application.
- Rewrite rules for URLs can be performed using JavaScript functions.
- Multiple queries can be made of a view with a single HTTP request.
- Views can be queried with sorting turned off ( sorted=false) for a
performance boost.
- The global changes feed has been enhanced. It is now resumable and
persistent.
- New endpoints added (documentation forthcoming):
- /_membership shows all nodes in a cluster
- /_bulk_get speeds up the replication protocol over low-latency connections
- /_node/ api to access individual nodes' configuration and compaction
features
- /_cluster_setup api to set up a cluster from scratch.
- /_up api to signal health of a node to a load-balancer
- /db/_local_docs and /db/_design_docs (similar to /db/_all_docs)
- "Backend" interface on port 5986 used for specific cluster admin tasks. Of
interest are the _nodes and _dbs databases visible only through this
interface.
- Support added for Erlang/OTP 17.x, 18.x and 19
- New streamlined build system written for Unix-like systems and Microsoft
Windows
Upgrade Notes
- The update sequences returned by the /db/_changes feed are no longer
integers. They can be any JSON value. Applications should treat them as
opaque values and return them to CouchDB as-is.
- Temporary views are no longer supported.
- It is possible to have multiple replicator databases. replicator/db config
option has been removed. Instead _replicator and any database names ending
with the /_replicator suffix will be recognized as replicator databases by
the system.
- Note that the semantics of some API calls have changed due to the
introduction of the clustering feature. Specifically, make note of the
difference between receiving a 201 and a 202 when storing a document.
- all_or_nothing is no longer supported by the bulk_docs API
See full release notes:
http://docs.couchdb.org/en/latest/whatsnew/2.0.html
Problems found with existing distfiles:
distfiles/D6.data.ros.gz
distfiles/cstore0.2.tar.gz
distfiles/data4.tar.gz
distfiles/sphinx-2.2.7-release.tar.gz
No changes made to the cstore or mariadb55-client distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
- COUCHDB-2200: support Erlang/OTP 17.0 #35e16032
- Fauxton: many improvements in our experimental new user interface,
including switching the code editor from CodeMirror to Ace as well
as better support for various browsers.
- Add the max_count option (UUIDs Configuration) to allow rate-limiting
the amount of UUIDs that can be requested from the /_uuids handler
in a single request (CVE 2014-2668).
- COUCHDB-1986: increase socket buffer size to improve replication speed
for large documents and attachments, and fix tests on BSD-like systems.
- COUCHDB-1953: improve performance of multipart/related requests.
- COUCHDB-2221: verify that authentication-related configuration settings
are well-formed.
- COUCHDB-1922: fix CORS exposed headers.
- Rename proxy_authentification_handler to proxy_authentication_handler.
- COUCHDB-1795: ensure the startup script clears the pid file on termination.
- COUCHDB-1962: replication can now be performed without having write access
to the source database, the replication checkpoint interval is now
configurable.
- COUCHDB-2025: add support for SOCKS5 proxies for replication.
- COUCHDB-1930: redirect to the correct page after submitting a new document
with a different ID than the one suggested by Futon.
- COUCHDB-1923: add support for attachments and att_encoding_info options
(formerly only available on the documents API) to the view API.
- COUCHDB-1647: for failed replications originating from a document
in the _replicator database, store the failure reason in the document.
- A number of improvements for the documentation.
Changes since 1.5.0:
- Add the max_count option (UUIDs Configuration) to allow rate-limiting
the amount of UUIDs that can be requested from the /_uuids handler
in a single request.
Changes since 1.4.0:
- COUCHDB-1781: The official documentation has been overhauled.
- New administration UI, included as an experimental preview.
- COUCHDB-1888: Fixed an issue where admin users would be restricted
by the public_fields feature.
- Fixed an issue with the JavaScript CLI test runner.
- COUCHDB-1867: An experimental plugin feature has been added.
- COUCHDB-1894: An experimental Node.js-based query server runtime added.
- COUCHDB-1901: Better retry mechanism for transferring attachments during
replication.
CouchDB 1.4.0
* We now support Erlang/OTP R16B and R16B01; the minimum required
version is R14B.
* User document role values must now be strings. Other types of values
will be refused when saving the user document.
* COUCHDB-1684: Support for server-wide changes feed reporting on
creation, updates and deletion of databases.
* COUCHDB-1139: it's possible to apply list functions to _all_docs view.
* Automatic loading of CouchDB plugins.
* COUCHDB-1634: Reduce PBKDF2 work factor.
* Allow storing pre-hashed admin passwords via _config API.
* COUCHDB-1772: Prevent invalid JSON output when using all_or_nothing
_bulk_docs API.
* Add a configurable whitelist of user document properties.
* COUCHDB-1852: Support Last-Event-ID header in EventSource changes
feeds.
* Much improved documentation, including an expanded description of
validate_doc_update functions and a description of how CouchDB handles
JSON number values.
* COUCHDB-1632: Ignore epilogues in multipart/related MIME attachments.
* Split up replicator_db tests into multiple independent tests.
CouchDB 1.3.1
* Tolerate missing source and target fields in _replicator docs (COUCHDB-1788).
* Don't log about missing .compact files.
* Fix bug in WARN level logging from 1.3.0 (COUCHDB-1794).
* Fix the -S option to couchjs to increase memory limits (COUCHDB-1792).
* Improve documentation: better structure, improve language, less duplication.
* Improvements to test suite and VPATH build system.
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
Version 1.3.0
-------------
HTTP Interface:
* No longer rewrites the X-CouchDB-Requested-Path during recursive calls to the
rewriter.
* Limit recursion depth in the URL rewriter. Defaults to a maximum of 100
invocations but is configurable.
* Fix _session for IE7.
* Added Server-Sent Events protocol to db changes API. See
http://www.w3.org/TR/eventsource/ for details.
* Make password hashing synchronous when using the /_config/admins API.
* Include user name in show/list ETags.
* Experimental support for Cross-Origin Resource Sharing (CORS). See
http://www.w3.org/TR/cors/ for details.
Replicator:
* The replicator will use a new server-wide UUID in checkpoint IDs to
improve the chances of an efficient resume.
Storage System:
* Fixed unnecessary conflict when deleting and creating a
document in the same batch.
View Server:
* Additional response headers may be varied prior to send().
* GetRow() is now side-effect free.
Futon:
* Disabled the link to the Futon test suite. These tests were causing problems
when run from a browser, and are now available via the CLI instead.
* Added view request duration to Futon.
* Disable buttons for actions that the user doesn't have permissions to.
Security:
* Passwords are now hashed using the PBKDF2 algorithm with a configurable work
factor.
Test Suite:
* Moved the JS test suite to the CLI.
* Improved tracebacks printed by the JS CLI tests.
* Improved the reliability of a number of tests.
UUID Algorithms:
* Added the utc_id algorithm.
URL Rewriter & Vhosts:
* Database name is encoded during rewriting (allowing embedded /'s, etc).
* Reset rewrite counter on new request, avoiding unnecessary request failures
due to bogus rewrite limit reports.
Build System:
* C/C++ compiler detection has been improved.
* Autoconf v2.63 is now required if building from Git checkout directly. See
DEVELOPERS file for more details.
* Fixed issue in couchdb script where stopped status returns before process
exits.
Version 1.2.2
-------------
HTTP Interface:
* Reset rewrite counter on new request, avoiding unnecessary request failures
due to bogus rewrite limit reports.
Build System:
* Fixed issue in couchdb script where stopped status returns before process
exits.
Changes in 1.2.1:
* Fixed CVE-2012-5641: Apache CouchDB Information disclosure via unescaped
backslashes in URLs on Windows
* Fixed CVE-2012-5649: Apache CouchDB JSONP arbitrary code execution with Adobe
Flash
* Fixed CVE-2012-5650: Apache CouchDB DOM based Cross-Site Scripting via Futon
UI
* Fix various bugs in the URL rewriter when recursion is involved.
* Fix couchdb start script.
* Futon: Disable buttons that aren't available for the logged-in user.
* Fix potential replication timeouts.
* Change use of signals to avoid broken view groups.