You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Alexander Shorin <kx...@gmail.com> on 2014/08/18 21:59:44 UTC

CouchDB 1.x deprecation list.

Hi devs,

Following the last meeting minutes I grep couchdb 1.x and 2.x sources
for the HTTP API / config options and compare them to define
deprecation list.

Removed HTTP endpoints:
/_log - removed in favor of lager configuration


Deprecation in HTTP API query params:
/db/_bulk_docs doesn't supports all_or_nothing anymore


Worth to finally deprecate:
/db/_missing_revs - should be removed in favor of /db/_revs_diff which
provides the same functionality + is able to find possible ancestors
and is actually uses by modern replicator (since 1.2 release).


Not available HTTP API through cluster interface:
/_stats
/_restart
/db/_compact
/db/_purge - not implemented
/db/_temp_view

So at least the change is that they are gone from public API for the
world and only available for internal, in-cluster, usage which gives
them some special status in new documentation.


Removed config options:
couchdb/util_driver_dir
httpd/log_max_chunk_size
log/file
log/include_sasl
log/level


Anything I miss?

--
,,,^..^,,,

Re: CouchDB 1.x deprecation list.

Posted by Alexander Shorin <kx...@gmail.com>.
As far as I see, people mostly wants to use some mock version of
couchdb/queryserver to test their views and other functions, like

https://github.com/janl/couchdb-test-couchjs
http://chris-l.github.io/mock-couch/

and similar because they fits more modern best practices. I think we
can just recommend some of these projects and lead people on the right
way from start.

I'm not sure how other users uses temp_views, but personally, I used
them only in cases when I don't care about the result much and
databases are small enough.

However, some API for random documents extraction definitely will get
warm welcome since this feature is the one that users miss (following
SO questions).

--
,,,^..^,,,


On Tue, Aug 19, 2014 at 12:46 AM, Paul Davis
<pa...@gmail.com> wrote:
> I should note that while we *could* add that, I'd also just vote to
> remove the API endpoint completely. All it does now is create a design
> document with a UUID id and then query is normally. In my experience
> seems like most people think its more of a lightweight thing for
> testing view code which is quite misleading.
>
> Instead I think we should add a new API that allows Fauxton and
> friends to run a map/reduce pair against a random selection of
> documents in the database without attempting to return a proper view
> response (ie, just return the input doc ids and emit'ed KVs maybe?).
> This way users could test their functions easily without confusion as
> to what the endpoint is intended for.
>
> On Mon, Aug 18, 2014 at 3:12 PM, Paul Davis <pa...@gmail.com> wrote:
>> I can't think of anything else off the top of my head.
>>
>> For _temp_view we could probably add that to the clustered API rather
>> easily given that its now just a simplistic front-end to the standard
>> view engine.
>>
>> On Mon, Aug 18, 2014 at 2:59 PM, Alexander Shorin <kx...@gmail.com> wrote:
>>> Hi devs,
>>>
>>> Following the last meeting minutes I grep couchdb 1.x and 2.x sources
>>> for the HTTP API / config options and compare them to define
>>> deprecation list.
>>>
>>> Removed HTTP endpoints:
>>> /_log - removed in favor of lager configuration
>>>
>>>
>>> Deprecation in HTTP API query params:
>>> /db/_bulk_docs doesn't supports all_or_nothing anymore
>>>
>>>
>>> Worth to finally deprecate:
>>> /db/_missing_revs - should be removed in favor of /db/_revs_diff which
>>> provides the same functionality + is able to find possible ancestors
>>> and is actually uses by modern replicator (since 1.2 release).
>>>
>>>
>>> Not available HTTP API through cluster interface:
>>> /_stats
>>> /_restart
>>> /db/_compact
>>> /db/_purge - not implemented
>>> /db/_temp_view
>>>
>>> So at least the change is that they are gone from public API for the
>>> world and only available for internal, in-cluster, usage which gives
>>> them some special status in new documentation.
>>>
>>>
>>> Removed config options:
>>> couchdb/util_driver_dir
>>> httpd/log_max_chunk_size
>>> log/file
>>> log/include_sasl
>>> log/level
>>>
>>>
>>> Anything I miss?
>>>
>>> --
>>> ,,,^..^,,,

Re: CouchDB 1.x deprecation list.

Posted by Joan Touzet <wo...@apache.org>.
+1 to this. There are a lot of view engines these days, and Fauxton's
previous approaches (i.e. running PouchDB in the browser) for a preview
don't easily extend to full-text search, geo search, Cloudant Query
(coming soon to an open-source CouchDB near you), etc.

Defining this and getting it right for the core and exposing it to
engines in an abstracted fashion is a great idea.

----- Original Message -----
From: "Paul Davis" <pa...@gmail.com>
To: dev@couchdb.apache.org
Sent: Monday, August 18, 2014 4:46:24 PM
Subject: Re: CouchDB 1.x deprecation list.

I should note that while we *could* add that, I'd also just vote to
remove the API endpoint completely. All it does now is create a design
document with a UUID id and then query is normally. In my experience
seems like most people think its more of a lightweight thing for
testing view code which is quite misleading.

Instead I think we should add a new API that allows Fauxton and
friends to run a map/reduce pair against a random selection of
documents in the database without attempting to return a proper view
response (ie, just return the input doc ids and emit'ed KVs maybe?).
This way users could test their functions easily without confusion as
to what the endpoint is intended for.

On Mon, Aug 18, 2014 at 3:12 PM, Paul Davis <pa...@gmail.com> wrote:
> I can't think of anything else off the top of my head.
>
> For _temp_view we could probably add that to the clustered API rather
> easily given that its now just a simplistic front-end to the standard
> view engine.
>
> On Mon, Aug 18, 2014 at 2:59 PM, Alexander Shorin <kx...@gmail.com> wrote:
>> Hi devs,
>>
>> Following the last meeting minutes I grep couchdb 1.x and 2.x sources
>> for the HTTP API / config options and compare them to define
>> deprecation list.
>>
>> Removed HTTP endpoints:
>> /_log - removed in favor of lager configuration
>>
>>
>> Deprecation in HTTP API query params:
>> /db/_bulk_docs doesn't supports all_or_nothing anymore
>>
>>
>> Worth to finally deprecate:
>> /db/_missing_revs - should be removed in favor of /db/_revs_diff which
>> provides the same functionality + is able to find possible ancestors
>> and is actually uses by modern replicator (since 1.2 release).
>>
>>
>> Not available HTTP API through cluster interface:
>> /_stats
>> /_restart
>> /db/_compact
>> /db/_purge - not implemented
>> /db/_temp_view
>>
>> So at least the change is that they are gone from public API for the
>> world and only available for internal, in-cluster, usage which gives
>> them some special status in new documentation.
>>
>>
>> Removed config options:
>> couchdb/util_driver_dir
>> httpd/log_max_chunk_size
>> log/file
>> log/include_sasl
>> log/level
>>
>>
>> Anything I miss?
>>
>> --
>> ,,,^..^,,,

Re: CouchDB 1.x deprecation list.

Posted by Paul Davis <pa...@gmail.com>.
I should note that while we *could* add that, I'd also just vote to
remove the API endpoint completely. All it does now is create a design
document with a UUID id and then query is normally. In my experience
seems like most people think its more of a lightweight thing for
testing view code which is quite misleading.

Instead I think we should add a new API that allows Fauxton and
friends to run a map/reduce pair against a random selection of
documents in the database without attempting to return a proper view
response (ie, just return the input doc ids and emit'ed KVs maybe?).
This way users could test their functions easily without confusion as
to what the endpoint is intended for.

On Mon, Aug 18, 2014 at 3:12 PM, Paul Davis <pa...@gmail.com> wrote:
> I can't think of anything else off the top of my head.
>
> For _temp_view we could probably add that to the clustered API rather
> easily given that its now just a simplistic front-end to the standard
> view engine.
>
> On Mon, Aug 18, 2014 at 2:59 PM, Alexander Shorin <kx...@gmail.com> wrote:
>> Hi devs,
>>
>> Following the last meeting minutes I grep couchdb 1.x and 2.x sources
>> for the HTTP API / config options and compare them to define
>> deprecation list.
>>
>> Removed HTTP endpoints:
>> /_log - removed in favor of lager configuration
>>
>>
>> Deprecation in HTTP API query params:
>> /db/_bulk_docs doesn't supports all_or_nothing anymore
>>
>>
>> Worth to finally deprecate:
>> /db/_missing_revs - should be removed in favor of /db/_revs_diff which
>> provides the same functionality + is able to find possible ancestors
>> and is actually uses by modern replicator (since 1.2 release).
>>
>>
>> Not available HTTP API through cluster interface:
>> /_stats
>> /_restart
>> /db/_compact
>> /db/_purge - not implemented
>> /db/_temp_view
>>
>> So at least the change is that they are gone from public API for the
>> world and only available for internal, in-cluster, usage which gives
>> them some special status in new documentation.
>>
>>
>> Removed config options:
>> couchdb/util_driver_dir
>> httpd/log_max_chunk_size
>> log/file
>> log/include_sasl
>> log/level
>>
>>
>> Anything I miss?
>>
>> --
>> ,,,^..^,,,

Re: CouchDB 1.x deprecation list.

Posted by Paul Davis <pa...@gmail.com>.
I can't think of anything else off the top of my head.

For _temp_view we could probably add that to the clustered API rather
easily given that its now just a simplistic front-end to the standard
view engine.

On Mon, Aug 18, 2014 at 2:59 PM, Alexander Shorin <kx...@gmail.com> wrote:
> Hi devs,
>
> Following the last meeting minutes I grep couchdb 1.x and 2.x sources
> for the HTTP API / config options and compare them to define
> deprecation list.
>
> Removed HTTP endpoints:
> /_log - removed in favor of lager configuration
>
>
> Deprecation in HTTP API query params:
> /db/_bulk_docs doesn't supports all_or_nothing anymore
>
>
> Worth to finally deprecate:
> /db/_missing_revs - should be removed in favor of /db/_revs_diff which
> provides the same functionality + is able to find possible ancestors
> and is actually uses by modern replicator (since 1.2 release).
>
>
> Not available HTTP API through cluster interface:
> /_stats
> /_restart
> /db/_compact
> /db/_purge - not implemented
> /db/_temp_view
>
> So at least the change is that they are gone from public API for the
> world and only available for internal, in-cluster, usage which gives
> them some special status in new documentation.
>
>
> Removed config options:
> couchdb/util_driver_dir
> httpd/log_max_chunk_size
> log/file
> log/include_sasl
> log/level
>
>
> Anything I miss?
>
> --
> ,,,^..^,,,