I agree with Ryan that the problem is more existing applications that use the config system – ones that we wouldn’t normally be re-using the mvn archetype but have to re-factor the app to use blueprint instead of Config subsystem.
Brian From: Ryan Goulding [mailto:ryandgould...@gmail.com] Sent: Thursday, November 17, 2016 8:06 AM To: Colin Dixon Cc: FREEMAN, BRIAN D; controller-dev Subject: Re: [controller-dev] deprecating the config subsystem in Carbon? You could thus deprecate the generated class: in this case org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.lacp.main.rev141216.AbstractLacpMainModule Yeah because LCAP team modified the Module and thus copied it into src/. The @Deprecated generation would never traverse to this file... it would just be present in new generated Module(s) (in target), which is really only helpful to projects that: 1) don't modify the Module 2) are implementing a new service from scratch without using the archetype. Since the archetypes have already been modified to utilize blueprint, I'd wager that most people wouldn't see any effect from making a change to the code generator. Not to mention the fact that I highly doubt it would be "simple"... it would probably require special casing code generation for provider yang since I believe it utilizes the standard mdsal-binding-java-api-generator. Just my $0.02, someone else may have a good idea for this. IMHO the best approach is to advertise this loud and clear across mailing lists and release notes, since most people ignore deprecated notices anyway (coming from someone who did the initial work to deprecate DCL, which is still used EVERYWHERE). Best Regards, Ryan On Wed, Nov 16, 2016 at 9:33 PM, Colin Dixon <co...@colindixon.com<mailto:co...@colindixon.com>> wrote: So, even though the file is in src/ it imports a generated file, see here: https://github.com/opendaylight/lacp/blob/master/lacp-main/implementation/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/lacp/lacp/main/rev141216/LacpMainModule.java#L35 You could thus deprecate the generated class: in this case org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.lacp.main.rev141216.AbstractLacpMainModule That would work with a relatively simple change in the code generator and apply everywhere, right? --Colin On Wed, Nov 16, 2016 at 7:11 PM, Ryan Goulding <ryandgould...@gmail.com<mailto:ryandgould...@gmail.com>> wrote: You mean the Provider? Most people adapt the Provider and put it in src/ anyway; I would guess this wouldn't really raise much awareness but that is my own $0.02. The easiest path forward is probably to make sweeping announcements via email and strong suggestions in the release notes... but I could be wrong. Open to discussion on the strategy going forward. Tom Pantelis may have a clever suggestion for this too... Regards, Ryan Goulding On Wed, Nov 16, 2016 at 2:50 PM, Colin Dixon <co...@colindixon.com<mailto:co...@colindixon.com>> wrote: That sounds good to me. What's the right way for us to "deprecate" the config subsystem. I guess the simplest thing would be add an @deprecated decorator to the relevant classes that get generated with a pointer to the docs on how to migrate. --Colin On Tue, Nov 15, 2016 at 5:07 PM, FREEMAN, BRIAN D <bf1...@att.com<mailto:bf1...@att.com>> wrote: I think Option 2 is a reasonable approach. Brian -----Original Message----- From: controller-dev-boun...@lists.opendaylight.org<mailto:controller-dev-boun...@lists.opendaylight.org> [mailto:controller-dev-boun...@lists.opendaylight.org<mailto:controller-dev-boun...@lists.opendaylight.org>] On Behalf Of Robert Varga Sent: Tuesday, November 15, 2016 4:46 PM To: Alexis de Talhouët; thomas nadeau Cc: controller-dev Subject: Re: [controller-dev] deprecating the config subsystem in Carbon? On 11/15/2016 10:08 PM, Alexis de Talhouët wrote: > > Option 2: > Deprecation notice in Carbon > Adaptation in Nitrogen > Removal in Oxygen > > During the kernel meeting I was more after option 3, but I think option > 2 make sense so downstream consumer can be notified earlier in the > process and start migrating things to blueprint. I think option 2 works best, especially since we can decide on when the actual removal takes place -- which I think should be one release after we have shipped without internal projects using it. Bye, Robert _______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org<mailto:controller-dev@lists.opendaylight.org> https://lists.opendaylight.org/mailman/listinfo/controller-dev _______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org<mailto:controller-dev@lists.opendaylight.org> https://lists.opendaylight.org/mailman/listinfo/controller-dev
_______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev