couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <>
Subject [Couchdb Wiki] Update of "Breaking_changes" by SebastianCohnen
Date Mon, 22 Feb 2010 08:37:26 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for change notification.

The "Breaking_changes" page has been changed by SebastianCohnen.
The comment on this change is: added TOC; added more changes between 0.10.x and 0.11.0.


+ = Breaking Changes =
+ <<TableOfContents(3)>>
  This page documents backwards-incompatible changes made during the evolution of CouchDB.
While not all such changes will necessarily affect all users, most of them probably will.
This page should show you what changed and how you'll need to adapt your code.
  == Changes Between 0.10.x and 0.11.0 ==
+ === show, list, update and validation functions ===
  The `req` argument to show, list, update and validation functions now contains the member
`method` with the specified HTTP method of the current request. Previously, this member was
called `verb`. `method` is following RFC 2616 (HTTP 1.1) closer.
+ === _admins -> _security ===
+ The /db/_admins handler has been removed and replaced with a /db/_security object. Any existing
`_admins` will be dropped and need to be added to the security object again. The reason for
this is that the old system made no distinction between names and roles, while the new one
does, so there is no way to automatically upgrade the old admins list.
+ The security object has 2 special fields, `admins` and `readers`, which contain lists of
names and roles which are admins or readers on that database. Anything else may be stored
in other fields on the security object. The entire object is made available to validation
+ === json2.js ===
+ JSON handling in the query server has been upgraded to use json2.js. This allows us to use
faster native JSON serialization when it is available.
+ In previous versions, attempts to serialize `undefined` would throw an exception, causing
the doc that emitted undefined to be dropped from the view index. The new behavior is to serialize
undefined as `null`. Applications depending on the old behavior will need to explicitly check
for undefined.
+ Another change is that E4X's XML objects will not automatically be stringified. XML users
will need to call my_xml_object.toXMLString() to return a string value.
+ (see commit [[|8d3b7ab3]])
+ === WWW-Authenticate (popup) ===
+ The default configuration has been changed to avoid causing basic-auth popups which result
from sending the WWW-Authenticate header. To enable basic-auth popups, uncomment the WWW-Authenticate
line in local.ini.
+ === Query server line protocol ===
+ The query server line protocol has changed for all functions except map, reduce, and rereduce.
This allows us to cache the entire design document in the query server process, which results
in faster performance for common operations. It also gives more flexibility to query server
implementators and shouldn't require major changes in the future when adding new query server
+ === UTF8 JSON ===
+ JSON request bodies are validated for proper UTF-8 before saving, instead of waiting to
fail on subsequent read requests.
+ === _changes line format ===
+ Continuous changes are now newline delimited, instead of having each line followed by a
  == Changes Between 0.9.x and 0.10.0 ==

View raw message