"Rob Wilton (rwilton)" <rwil...@cisco.com> wrote: > Hi Juergen, > > > -----Original Message----- > > From: Juergen Schoenwaelder <j.schoenwael...@jacobs-university.de> > > Sent: 24 March 2019 15:31 > > To: Rob Wilton (rwilton) <rwil...@cisco.com> > > Cc: Andy Bierman <a...@yumaworks.com>; NetMod WG <netmod@ietf.org> > > Subject: Re: [netmod] import-by-semver issue > > > > On Sun, Mar 24, 2019 at 02:07:15PM +0000, Rob Wilton (rwilton) wrote: > > > Hi Andy, > > > > > > There are many ways to write and design compilers. > > > > > > Compilers that don’t understand import-by-semver just ignore the > > > extension, > > no deviation is required. They just import whichever arbitrary > > revision that they > > would have imported anyway, as specified by YANG 1.1. The > > import-by-semver > > statement just reduces the set of valid modules revisions that can be > > used for > > import. > > > > > > > If two compilers (one supporting semver, the other not) resolve > > imports > > differently, then the design is in my view somewhat broken, in > > particular if you > > allow NBC changes. > > But that is true of YANG compilers today. If there are multiple > revisions of a module that could be chosen, then each compiler is at > liberty to decide which revision to choose (last paragraph of section > 5.1.1 in RFC 7950).
This is by design, of course. With an "open" import (not import by revision), the server implementor is free to implement any set of modules that work together. > So, I would argue that "import-by-version" doesn't make YANG compilers > any less consistent that they are already today, since that > inconsistency already exists. I don't think I understand Andy's objection. I also think that this is just another implementation detail. > I presume that the real solution here is to explicitly define the full > set of implemented, import-only-modules to the compiler so that it > always compiles a consistent schema. Perhaps other compilers have > different ways to solve this problem. > > Note, I also think that YANG library has a similar inconsistency. > I.e. there is no guarantee that two different compilers will construct > exactly the same datastore schema from the YANG library output. Can you elaborate? Given an instance of YANG library, it should be clear which set of modules are used. > I > think that this is a design bug, but also one that we attempt to > address in draft-verdt-netmod-yang-semver-00. > > Thanks, > Rob > > > > > /js > > > > -- > > Juergen Schoenwaelder Jacobs University Bremen gGmbH > > Phone: +49 421 200 3587 Campus Ring 1 | 28759 Bremen | Germany > > Fax: +49 421 200 3103 <https://www.jacobs-university.de/> > _______________________________________________ > netmod mailing list > netmod@ietf.org > https://www.ietf.org/mailman/listinfo/netmod _______________________________________________ netmod mailing list netmod@ietf.org https://www.ietf.org/mailman/listinfo/netmod