Juergen Schoenwaelder <j.schoenwael...@jacobs-university.de> wrote: > On Fri, Nov 09, 2018 at 05:31:59PM +0100, Martin Bjorklund wrote: > > Juergen Schoenwaelder <j.schoenwael...@jacobs-university.de> wrote: > > > On Fri, Nov 09, 2018 at 02:37:29PM +0100, Martin Bjorklund wrote: > > > > > > > > > I think we need to distinguish between the agreement on the > > > > > requirement, namely that a server should be able to provide support > > > > > for an old and a new definition, and agreement on the solution. > > > > > > > > > > Do you disagree with the requirement? Or do you disagree with the > > > > > consequences of implementing multiple versions of the same module > > > > > for some of the proposed new versioning schemes? Or both? > > > > > > > > I do not agree with the requirement that a server MUST be able to > > > > support multiple revisions of the same module, which is how I > > > > interpret 3.2. If this is not the intention of 3.2, maybe it can be > > > > clarified. > > > > > > > > > > Here is what 3.2 says: > > > > > > 3.2 The solution MUST provide a mechanism to allow servers to > > > simultaneously support clients using different revisions of > > > modules. A client's choice of particular revision of one or > > > more modules may restrict the particular revision of other > > > modules that may be used in the same request or session. > > > > > > This does _not_ say servers MUST implement this. > > > > > > Item 3.2 establishes a requirement and for some solutions it may be > > > easy to satisfy this requirement, for others it may be more costly to > > > satisfy this requirement. > > > > > > The whole requirements exercise becomes a rather pointless exercise if > > > we remove requirements so that certain solutions look more > > > attractive. > > > > Ok, but that's not what I wrote. I don't agree with this requirement > > which says that it MUST be possible for a server to support > > different revisions of a given module (again, if this is not the > > intention of the text, please clarify). I simply don't think that > > this is a good requirement. > > > > I can't follow you or I do not understand what you are after. > > In some versioning schemes, providing support for different > 'versions' is relatively easy. If I have modules foo-1 and foo-2, > then I can implement foo-1 and foo-2 (or proper workable subsets of > them) easily. And older clients expecting foo-1 may continue to work > while newer clients move to foo-2. In other versioning schemes, > providing the same possibility to migrate from foo version 1 to foo > version 2, would lead to the support of foo in two different > versions.
But module 'foo-2' is not a new revision of module 'foo-1'. It might be that 'foo-2' represents a new version of the underlying "function" that 'foo-1' represents; but that is a different issue. > The requirement tries to express that it must be possible to have a > transition path where old clients can continue to function with the > old version while new clients start using the new version. The idea is > to state this as a requirement without making any assumptions about > the solutions. > > Are you saying that a requirement saying that there should be a > possibility of a transition path is in general a bad requirement? No (but I agree w/ Rob Wilton that it is unclear how this should be done in non-trivial examples), but again, that is not what I think 3.2 says. IMO 3.2 doesn't allow a solution that requires a new module for new NBC stuff, since it says that a client should be able to pick a particular revision of a module. /martin > > /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