Re: [netmod] versioning procedures (RFC vs. I-D)

Andy Bierman <andy@yumaworks.com> Thu, 02 April 2020 14:26 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A3F633A136C for <netmod@ietfa.amsl.com>; Thu, 2 Apr 2020 07:26:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.887
X-Spam-Level:
X-Spam-Status: No, score=-1.887 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Uz0rpBmw_fOD for <netmod@ietfa.amsl.com>; Thu, 2 Apr 2020 07:26:15 -0700 (PDT)
Received: from mail-yb1-xb33.google.com (mail-yb1-xb33.google.com [IPv6:2607:f8b0:4864:20::b33]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3B6453A0EE5 for <netmod@ietf.org>; Thu, 2 Apr 2020 07:26:15 -0700 (PDT)
Received: by mail-yb1-xb33.google.com with SMTP id o70so2211024ybg.10 for <netmod@ietf.org>; Thu, 02 Apr 2020 07:26:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UxKvX1vkTiAubRF9ZqFRMOHU6MVwTevtcDCNTs1M+TA=; b=LIl553ach7VMfeyhfREQQlgFKzyC1kLz7AfwbdcRsmmgbeAa7vBHTjWyai5frb1TH7 cEXOcBcV7Y6F3eAJTCOdDopYVmI3/0fVq1wgzdtNz/NUeA0s0cSMyC6XTzppE6dr6iWY SQIDHVf3qgC0OevCzs9crSIMRkK7t8PwJiHTnQjVE/pOrFb4KG9YfcXvkpog4gz1i5Zr O/lrhmrYAjCH/TS6x2vklP0lgZ3jcmEBDXSswvB24qqICTI2XvJtd/XfZ5ZbfIGzQPlW jkbUk4/MeeKKVu+cmdlLxr1b1inFBvPWJi71sgImo3oKwwd+PhQluQ3zrVALPGEKtLDs TvJg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UxKvX1vkTiAubRF9ZqFRMOHU6MVwTevtcDCNTs1M+TA=; b=gnli6bb8mCWZiIJhbeUBbrOdR0meZZF9KpnzWUJj1UaHRqIq6DvO+EIrrnEBNar0GH tXcWp941Oar4Aenq4r1vs9KpP2NsPOUAE0rhqZuzEwfycCMqpiTs06oFUImoTE4zKns8 ZWvIpG6KKnKY5b5ndbwqFfsgkzUaOgd0SxjPybF0DImC7gLLgVYpqca4M2Swhv9INMjJ CNYgxFoG2fdaXoGotRqzsL5+Zl2UW3cw10+X0STzeYKSymB3Kdyb1sk6tcNk+ylL/ziw R8urEOWmgsPOkIcsuMM0W1OsEiztC/DwF8f4BgUwapCVQcm1FSd9R0/Bc2/eAXFuDkY/ QH8g==
X-Gm-Message-State: AGi0PubCWYxFgR7A9RSKwr+/52nwHfkkM5H6m0H3RaoS0QuAhqY/X8KN IftHTWUL00GpmjiaRipjwi/NflYi22S8B4FwYfXDqw==
X-Google-Smtp-Source: APiQypLjxQpGFIMln6qegGxa+52E/HAMqJKUQ/1ri4rWFnzsPplzTb/tAG3bxJE3nD5wDTTqxv+aaXAIObNenl3ADDg=
X-Received: by 2002:a5b:c4a:: with SMTP id d10mr6037686ybr.59.1585837573198; Thu, 02 Apr 2020 07:26:13 -0700 (PDT)
MIME-Version: 1.0
References: <CABCOCHQWssUucRvnsi8O8+GhCHb0-xS--swf3R4q-6P3Qfq0TA@mail.gmail.com> <D63416FC-2C33-4015-BF23-51ABCD75A020@cisco.com> <CABCOCHSTnYJbB9ainkmCuBinjRZAi-wEWgQoFCrhs+m8NBAAYQ@mail.gmail.com> <50052092-0380-44C6-8AE0-1AB3C15C30B4@cisco.com> <b688d8372a1a49e8828c74b5366458c0@huawei.com> <1DE96CAC-43BC-4638-AE96-2E770CA7CE20@cisco.com>
In-Reply-To: <1DE96CAC-43BC-4638-AE96-2E770CA7CE20@cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 02 Apr 2020 07:26:02 -0700
Message-ID: <CABCOCHRDKKmU1+BL_4RPkn4sMhjN8w20_5rHWOoBCm8PCTTi1Q@mail.gmail.com>
To: "Reshad Rahman (rrahman)" <rrahman@cisco.com>
Cc: Italo Busi <Italo.Busi@huawei.com>, "Joe Clarke (jclarke)" <jclarke@cisco.com>, NetMod WG <netmod@ietf.org>
Content-Type: multipart/related; boundary="00000000000039915505a24f9581"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/KaLcsN1tmz7TlFXsaPbZotAU_ig>
Subject: Re: [netmod] versioning procedures (RFC vs. I-D)
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 02 Apr 2020 14:26:18 -0000

On Thu, Apr 2, 2020 at 4:11 AM Reshad Rahman (rrahman) <rrahman@cisco.com>
wrote:

> Hi,
>
>
>
> *From: *Italo Busi <Italo.Busi@huawei.com>
> *Date: *Thursday, April 2, 2020 at 5:06 AM
> *To: *"Reshad Rahman (rrahman)" <rrahman@cisco.com>, 'Andy Bierman' <
> andy@yumaworks.com>, "Joe Clarke (jclarke)" <jclarke@cisco.com>
> *Cc: *NetMod WG <netmod@ietf.org>
> *Subject: *RE: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
> Reshad,
>
>
>
> My doubt and, if I understand well also Andy’s question, is about the fact
> that before publishing an RFC-bis with e.g., 1.1.0, we will have a set of
> Internet-Drafts updating the RFC with 1.0.0
>
>
>
> What versions should be used in the YANG modules published in these
> Internet-Drafts?
>
>
>
> Think about the following scenario: -00 version provide BC changes to the
> RFC module but the -01 version provide NBC changes to what has been added
> in the -00 module (thus the -01 version is BC with the RFC 1.0.0 module but
> NBC with the -00 version module)
>
> <RR> So bis 00 would be 1.1.0 (BC with RFC module).
>
> Bis 01 should be updated according to its relationship to the RFC module
> (bis 00 doesn’t matter anymore), when RFC bis is published it won’t have
> the full history.
>
>
>
> Hope I correctly understood your question.
>
>
>

This semver plan is not very intuitive and not sure it works.

draft-00

   container the-container;             version 0.1.0      OK

draft-01:
   container my-container;             version 0.2.0;   rules violated; NBC
should force 1.0.0

draft-02:

    container my-container {           version 0.3.0; should be 1.1.0
        leaf my-leaf { type int32; }
    }

RFC-1:

    container my-container {           version 1.0.0;  should be 2.0.0
according to NBC rules
        leaf my-leaf { type uint32; }
    }

bis-draft-00:

   container my-container {           version 1.1.0; OK
        leaf my-leaf { type uint32; }
        leaf another-leaf { type int32; }
    }

bis-draft-01:

  container my-container {                  diff against RFC-1:  version
1.1.0 but already used; use 1.2.0?
        leaf my-leaf { type uint32; }
        leaf another-leaf { type uint32; }
    }

bis-draft-02:

  container example-my-container {                  diff against RFC-1:
version 2.0.0 but use 1.3.0 instead?
        leaf my-leaf { type uint32; }
        leaf another-leaf { type uint32; }
    }

[repeat NBC step bis-draft-02 10 times.... now up to version 12.0.0 or is
it 1.13.0? something else?

RFC-2:   publish draft-12 as RFC-2: now change the label from 1.13.0 to
2.0.0? or leave it 12.0.0?

IMO it is very confusing that the stated rules are so inconsistent and
are violated so many ways.
There should be no revision-label at all in Internet Drafts because these
documents are unpublished.
They should only be added to the RFC version.

The semver procedures are not intended to work for unpublished modules that
are only
meant for review, not for implementation. The revision-label provides only
noise in Internet Drafts.



Regards,
>
> Reshad.
>
>
>
> Thanks, Italo
>


Andy


>
>
> *Italo Busi*
>
> Principal Optical Transport Network Research Engineer
>
> Huawei Technologies Co., Ltd.
>
> Tel : +39 345 4721946
>
> Email : italo.busi@huawei.com
>
>
>
> This e-mail and its attachments contain confidential information from
> HUAWEI, which is intended only for the person or entity whose address is
> listed above. Any use of the information contained herein in any way
> (including, but not limited to, total or partial disclosure, reproduction,
> or dissemination) by persons other than the intended recipient(s) is
> prohibited. If you receive this e-mail in error, please notify the sender
> by phone or email immediately and delete it!
>
>
>
> *From:* Reshad Rahman (rrahman) [mailto:rrahman@cisco.com]
> *Sent:* mercoledì 1 aprile 2020 20:13
> *To:* Andy Bierman <andy@yumaworks.com>; Joe Clarke (jclarke) <
> jclarke@cisco.com>
> *Cc:* NetMod WG <netmod@ietf.org>
> *Subject:* Re: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
>
>
> *From: *netmod <netmod-bounces@ietf.org> on behalf of 'Andy Bierman' <
> andy@yumaworks.com>
> *Date: *Wednesday, April 1, 2020 at 2:07 PM
> *To: *"Joe Clarke (jclarke)" <jclarke@cisco.com>
> *Cc: *NetMod WG <netmod@ietf.org>
> *Subject: *Re: [netmod] versioning procedures (RFC vs. I-D)
>
>
>
>
>
>
>
> On Wed, Apr 1, 2020 at 10:39 AM Joe Clarke (jclarke) <jclarke@cisco.com>
> wrote:
>
>
>
> > On Apr 1, 2020, at 13:28, Andy Bierman <andy@yumaworks.com> wrote:
> >
> > Hi,
> >
> > I just want to confirm that all the proposed documentation procedures
> > using new extensions are limited in scope to published modules only,
> > and not applied to unpublished modules (terms defined in RFC 8407).
> >
> > IMO it would be harmful to module usability to assign revision-labels or
> > include revision-related extensions in unpublished modules (e.g.,
> Internet Drafts).
> > Consider how cluttered and confusing the client-server modules would be
> > if the 50+ NBC changes and versions were tracked through all the I-Ds.
> >
> > For IETF modules, the first usage of the revision-label
> > should be in the initial RFC, and be set to 1.0.0.
> >
> > If the RFC is ever republished then one can expect to find an updated
> > revision-label and possibly extensions tracking NBC changes.
>
> The semver scheme allocates a major version of 0 for pre-releases where
> the BC/NBC rules do not apply.  I agree that a first official RFC release
> should be 1.0.0 (from a semver revision-label standpoint).  From a design
> team standpoint, I know we mentioned the 0 versioning early on, but I don’t
> think we spent much time talking about modules under development overall.
>
>
>
>
>
> IMO it is confusing to ignore the semver rules for the special 0.x.y
> releases.
>
> There are many NBC changes made at this point which are treated as minor
> or patch changes.
>
> The procedure is really broken once you consider a WG developing any
> RFC-bis module.
>
> Now the major version is not 0 and all updates look like real releases.
>
> <RR> I don’t think that’s needed. Initial module in RFC has 1.0.0, module
> in (released) RFC-bis can go to 1.0.1, 1.1.0 or 2.0.0 depending on the
> change.
>
>
>
> Regards,
>
> Reshad.
>
>
>
> My take would align to yours that we wouldn’t clutter a module with
> development NBC tracking.
>
> Joe
>
>
>
> Andy
>
>
>