Commit graph

9 commits

Author SHA1 Message Date
fhajny
95f2c83d1f Update databases/couchdb to 2.1.1.
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
2017-11-07 15:33:27 +00:00
fhajny
008f42a54c Update databases/couchdb to 2.0.0.
- 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
2016-11-16 15:59:28 +00:00
fhajny
9b56aa5ba4 Update couchdb to 1.6.0.
- 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.
2014-06-11 15:34:16 +00:00
fhajny
cb50d5e092 Update couchdb to 1.5.0.
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.
2014-01-02 17:10:22 +00:00
fhajny
d8c5e1287c Update couchdb to 1.4.0.
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.
2013-09-09 13:39:10 +00:00
jperkin
8aaa84db56 Update databases/couchdb to 1.3.0. Changes since 1.2.1:
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.
2013-04-24 12:22:37 +00:00
fhajny
95c21e10c9 Update databases/couchdb to 1.2.0.
Changes in 1.2.0
* Updated bundled erlang_oauth library to the latest version.
* cURL is no longer required to build CouchDB as it is only
  required by the command line JS test runner.
* Added a native JSON parser.
* Optional file compression (database and view index files). This feature
  is enabled by default.
* Several performance improvements, especially regarding database
  writes and view indexing.
* Added a 'data_size' property to database and view group
  information URIs.
* Added support for automatic compaction. This feature is disabled
  by default, but it can be enabled via the .ini configuration.
* A new replicator implementation that offers more performance
  and configuration options.
* Added optional field 'since_seq' to replication objects/documents.
* Simpler replication cancelation.
* The _active_tasks API now exposes more granular fields for each
  task type.
* Futon's 'Status' screen (active tasks) now displays two new task
  status fields: 'Started on' and 'Updated on'.
* Added built-in changes feed filter '_view'.
* Fixed old index file descriptor leaks after a view cleanup.
* Performance improvements for the built-in changes feed filters
  '_doc_ids' and '_design'.
* Fixes to the '_changes' feed heartbeat option when combined with
  a filter. It affected continuous pull replications with a filter.
* Fix use of OAuth with VHosts and URL rewriting.
* OAuth secrets can now be stored in the users system database.
* Documents in the _users database can no longer be read by everyone.
* Confidential information in the _replication database can no longer
  be read by everyone.
* Password hashes are now calculated by CouchDB instead of the client.
* Allow persistent authentication cookies.
* The requested_path property of query server request objects now has
  the path requested by clients before VHosts and rewriting.
* Fixed incorrect reduce query results when using pagination parameters.
* Made icu_driver work with Erlang R15B and later.
* Improvements to the build system and etap test suite.
* Avoid invalidating view indexes when running out of file descriptors.
* Log correct stacktrace in all cases.
* Improvements to log messages for file-related errors.
2012-09-17 09:42:46 +00:00
fhajny
ae0a9140c2 Updated databases/couchdb to 1.1.0.
Also fixed INSTALL_PROGRAM patch to not break install-sh.

Changes since 1.0.1
============================================================================

HTTP Interface:

 * Native SSL support.
 * Added support for HTTP range requests for attachments.
 * Added built-in filters for '_changes': '_doc_ids' and '_design'.
 * Added configuration option for TCP_NODELAY aka "Nagle".
 * Allow POSTing arguments to '_changes'.
 * Allow 'keys' parameter for GET requests to views.
 * Allow wildcards in vhosts definitions.
 * More granular ETag support for views.
 * More flexible URL rewriter.
 * Added support for recognizing "Q values" and media parameters in
   HTTP Accept headers.
 * Validate doc ids that come from a PUT to a URL.

Externals:

 * Added OS Process module to manage daemons outside of CouchDB.
 * Added HTTP Proxy handler for more scalable externals.

Replicator:

 * Added '_replicator' database to manage replications.
 * Fixed issues when an endpoint is a remote database accessible via SSL.
 * Added support for continuous by-doc-IDs replication.
 * Fix issue where revision info was omitted when replicating attachments.
 * Integrity of attachment replication is now verified by MD5.

Storage System:

 * Multiple micro-optimizations when reading data.

View Server:

 * Added CommonJS support to map functions.
 * Added 'stale=update_after' query option that triggers a view update after
   returning a 'stale=ok' response.
 * Warn about empty result caused by 'startkey' and 'endkey' limiting.
 * Built-in reduce function '_sum' now accepts lists of integers as input.
 * Added view query aliases start_key, end_key, start_key_doc_id and
   end_key_doc_id.

Futon:

 * Added a "change password"-feature to Futon.

URL Rewriter & Vhosts:

 * Fix for variable substituion
2011-07-27 19:20:57 +00:00
fhajny
3aeda366a0 Import couchdb-1.0.1 as databases/couchdb.
Apache CouchDB is a distributed, fault-tolerant and schema-free document-
oriented database accessible via a RESTful HTTP/JSON API. Among other
features, it provides robust, incremental replication with bi-directional
conflict detection and resolution, and is queryable and indexable using
a table-oriented view engine with JavaScript acting as the default view
definition language.

CouchDB is written in Erlang, but can be easily accessed from any
environment that provides means to make HTTP requests. There are
a multitude of third-party client libraries that make this even easier
for a variety of programming languages and environments.

(Based on wip/couchdb.)
2010-09-21 12:11:39 +00:00