Hi, CouchDB used to have some special-case code (added in r663055)
that would allow the '/' in a design document URL to be supplied
without encoding. The associated JIRA issue is
https://issues.apache.org/jira/browse/COUCHDB-49
Recent trunk builds still have that special case code, but it only
takes effect if the HTTP verb is POST (see line 233 of
couch_httpd_db.erl). This actually breaks remote replication, since
the _all_docs_by_seq view still reports design doc IDs as "_design/
blah", and couch_rep:open_doc_revs falls over when it tries to GET a
document with that ID.
I'm happy to submit a patch to restore the old behavior. Was there a
reason for restricting the unencoded '/' code to POSTs?
By the way, using a '/' in the design doc ID suggests to me that
_design/ is itself a valid resource. Perhaps it would also make sense
to add:
GET /dbname/_design/ -> retrieve a list of design documents
POST /dbname/_design/ -> create a new design doc with an auto-
generated ID
GET /dbname/_view/blah/ -> retrieve a list of views defined in this
design doc
What do others think? Regards, Adam