Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 579FB10B26 for ; Mon, 22 Jul 2013 11:49:13 +0000 (UTC) Received: (qmail 61471 invoked by uid 500); 22 Jul 2013 11:49:03 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 61396 invoked by uid 500); 22 Jul 2013 11:49:00 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 61308 invoked by uid 99); 22 Jul 2013 11:48:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 22 Jul 2013 11:48:40 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW X-Spam-Check-By: apache.org Received-SPF: error (nike.apache.org: local policy) Received: from [74.125.83.50] (HELO mail-ee0-f50.google.com) (74.125.83.50) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 22 Jul 2013 11:48:32 +0000 Received: by mail-ee0-f50.google.com with SMTP id d49so3806597eek.9 for ; Mon, 22 Jul 2013 04:47:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=q73Cj1GlSuEUJlqW55iqaEOXUhvJjC1jr6W5ZUJML9s=; b=dcCcdZrxsSdKm2IsQngDC3ZmNVd7eNZ7bG4y3BkGLYhVuC0KTf28PMQ7ln0n2xt/4B heVW4LlGIsNufwgurzFVUV/PBrARX+0Xnkw017XUik6QUo3I25lavaJkycUxajHYKA7N 2qMhiriLDwcWEAmL9FWYyztBi4ZqSWhCxrjBN5kY9O58ud2n7E0oWo7WR1r8d4sfTq+N z9Rrv0Hwu6KnXRsm35ynNm5A9KuoMoXkJn0tqjlDUvnHBdxLedQbVqr3uuz5KQY2Ri/b MlHm7YDNfrhiYbnymuKa7jVL4xPkxUUoMwW7GOgwLWA1CLorBgqIJVVcqJXvdscb118t fphg== X-Received: by 10.14.206.196 with SMTP id l44mr27367643eeo.142.1374493672448; Mon, 22 Jul 2013 04:47:52 -0700 (PDT) Received: from [192.168.2.112] ([77.72.35.178]) by mx.google.com with ESMTPSA id i2sm50238513eeu.4.2013.07.22.04.47.50 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 22 Jul 2013 04:47:51 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1283) Subject: Re: Releasing experimental features (was: Re: [PROPOSAL] Port _db_updates from rcouch to master) From: Filippo Fadda In-Reply-To: Date: Mon, 22 Jul 2013 13:47:49 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: References: <7D8897CB-8A85-4A57-9ACA-FB9B3715D351@apache.org> <7A898837-D997-478A-92D7-0C9341BA86B6@apache.org> To: dev@couchdb.apache.org X-Mailer: Apple Mail (2.1283) X-Gm-Message-State: ALoCoQnoA7oRSaj3fvhOrZG+6MLCbfgd1IHODmd/94IlYEn5a+FQCnPJDOD7c3bf423jaTEOfy3a X-Virus-Checked: Checked by ClamAV on apache.org Experimental in PHP is used for extensions that are not bundled with = PHP. Instead deprecated is used to inform the user that a function = shouldn't be used anymore. In the same way CouchDB could inform that an = API is deprecated or experimental. 1) X-Couch-Deprecated 2) X-Couch-Experimental Stable makes no sense at all, and unstable too, because an unstable = feature should not be included in an official release. My two cents. -Filippo On Jul 22, 2013, at 12:21 PM, Jan Lehnardt wrote: >=20 > On Jul 22, 2013, at 12:13 , Alexander Shorin wrote: >=20 >> On Mon, Jul 22, 2013 at 1:48 PM, Jan Lehnardt wrote: >>> We have talked about deprecating features using HTTP headers like >>> `X-Couch-Deprecated: true` to denote a deprecation to be included in >>> releases that happen before the actual removal of a feature. We = could >>> make that `X-Couch-API-Stability: [0-5]` instead, if we adopt the = scale >>> above (and maybe only optionally show anything >0 to save some bytes >>> in the general case). And whatever powers that information could be >>> used to feed into the capabilities we have talked about for the = welcome >>> message on `/`. >>=20 >> X-Couch-API-Stability idea is too complex. Better to have only >> `X-Couch-Deprecated: true`. Experimental features should be enabled = in >> configs so user takes responsibility for any behavior it provides. >=20 > Fair point, happy to have the 1-5 scale in docs only, if we want to=20 > go that route. >=20 >> Also, this information is useless in caps. Caps notifies what server >> able to do, not how good he can. >=20 > Well, if we have comprehensive encoded info on what state everything > is in, we will also know what we have, which could be used to form > the capabilities info. >=20 > Best > Jan > -- >=20 >=20 >=20