Subject: Re: [netmod] Y45: conformance-stmt proposal
From: Ladislav Lhotka <[email-masked]>
To: Andy Bierman <[email-masked]>, "netmod\@ietf.org" <[email-masked]>
Date: Thu, 08 Jan 2015 10:51:39 +0100
List-Id: NETMOD WG list <netmod.ietf.org>

Andy Bierman <[email-masked]> writes:

> Hi,
>
> I hope we can resolve this issue on the mailing list, since
> it was skipped in the interim meeting.
>
> IMO import-by-revision is fatally flawed.
> The problem with representing the conformance dependency chain
> in the import-stmt is that not every module is using import-by-revision,
> and if A.1 imports B.1 and B.1 imports C.any, then the dependency
> chain for module A.1 is not deterministic.
>
> import-by-revision everywhere is going to be unmanageable,
> even if all the effort to update every YANG module in existence
> was made.

Why is it necessary to do such updates? If module A imports
B@2014-01-08, then it can continue using definitions from that
particular revision of B forever, even if B is updated.

>
> Instead, a conformance-stmt much simpler than the SMIv2
> MODULE-COMPLIANCE macro is needed:
>
> module foo {
>    ...
>    import ietf-yang-types { prefix yang; }
>    import ietf-inet-types { prefix inet; }
>    import ietf-interfaces { prefix if; }
>
>    revision 2014-01-05;
>    ....
>
>    conformance 2014-01-05 {
>       module ietf-inet-types@2013-07-15;
>       module ietf-yang-types@2013-07-15;
>       module ietf-interfaces@2014-05-08;
>    }
> }
>

I don't understand: how is this different from the case when the
revisions of imported modules are specified directly in import statements? 

Lada

>
> Tools can generate this stmt or can be fairly easily generated by hand.
> Import-by-revision would no longer be used.
>
> There would be 1 or more conformance-stmts in descending
> date order, like the revision-stmt history.
>
>
> Andy
>
> _______________________________________________
> netmod mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/netmod

-- 
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C