Thanks Daniel :-) 

I will not start with the implemtation until we are clear here. Ok, could 
it maybe a solution to create a complete separate plugin like in this 
request proposed? In this case we have not a problem with Groovy code in 
the Promoted Builds Plugin and Daniel has no compatiblity problems in the 
Job DSL Plugin.

Best Regards
Dennis

Am Montag, 28. September 2015 12:44:04 UTC+2 schrieb Daniel Spilker:
>
> I don't like that option. The optional dependencies have been added before 
> the extension point was available. They will be kept for compatibility, but 
> any new DSL features which require more logic than simply generating a 
> config.xml should be implemented through the extension point. Otherwise the 
> Job DSL plugin will end up with dozens of optional dependencies for all 
> plugins which require extra configuration and relying on API which might 
> not be considered as public and stable API by the plugin maintainers 
> because it was not intended to be used by something like the Job DSL 
> plugin. And I don't want to spend time with tracking API changes from 
> plugins. I'm maintaining the Job DSL plugin for some month now and there 
> have been plugins which changed the on-disk config.xml format 
> (accidentially and not, e.g. JENKINS-26561 and JENKINS-29678). And that 
> broke the Job DSL plugin from a user perspective. I expect that API-level 
> changes happen more often because plugin developers are aware to keep the 
> on-disk config stable, but do not expect that "internal" plugin classes are 
> used from the outside (e.g. JENKINS-30013). The Job DSL plugin on the other 
> hand offers a stable extension point for all plugins to contribute DSL 
> features designed for that very specific reason.
>
> If this boils down to having Groovy code or not in a plugin, the decision 
> is up the the plugin's maintainers. Groovy code is as testable and 
> maintainable as Java code if done right. You can use JUnit to test Groovy 
> classes, you do not have to use Groovy frameworks like Spock. And you can 
> use CodeNarc for static code analysis.
>
> The Job DSL extension point can be implemented in Java or Groovy. I 
> expected a discussion like this and avoided any Groovy dependencies when 
> designing the extension point API.
>
> I just want to make sure that we send a clear signal to Dennis before he 
> creates a pull request that has little or no chance to get merged.
>
>
>
> On Sun, Sep 27, 2015 at 10:39 AM, Oleg Nenashev <[email protected] 
> <javascript:>> wrote:
>
>> Yes, it ay be the best option, because Job DSL plugin already optionally 
>> depends on 4 plugins due to the same reason.
>> Daniel (Spilker), WDYT?
>>
>>
>> On 27 Sep 2015, at 10:17, Stephen Connolly <[email protected] 
>> <javascript:>> wrote:
>>
>> Why can't he optional dep not be inverted and just have job-dsl 
>> optionally depend on promoted builds. 
>>
>> Would seem to me that promotion is the more "core" functionality than 
>> job-dsl so the onus should be on job-dsl to add support for promoted builds 
>> rather than the other way.
>>
>> In any case I see nothing wrong with having this as a separate plugin 
>> either
>>
>> On Sunday 27 September 2015, Damien <[email protected] <javascript:>> 
>> wrote:
>>
>>> Hi All,
>>> as Oleg mentioned, he is the current maintainer. As my current job 
>>> responsibilities does not involve using Jenkins as much, I don't have a 
>>> strong opinion what the direction is. Groovy or Java is irrelevant to me as 
>>> long as a strong focus on maintainability and testability remains.
>>>
>>> good luck with the merge.
>>>
>>> On Sat, Sep 26, 2015 at 3:16 PM, Oleg Nenashev <[email protected]> 
>>> wrote:
>>>
>>>> The previous maintainer (Damien Nozay, in Cc) of Promoted Builds plugin 
>>>> granted me the persmissions to merge PRs and relelase . Technically I'm 
>>>> the 
>>>> current plugin's maintainer.
>>>>
>>>> I don't think that Groovy is a showstopper for integrating the 
>>>> functionality into Promoted Builds plugin. Personally I would prefer to 
>>>> have a Java-only code due to the maintenability & static analysis reasons, 
>>>> but I will accept Groovy-based pieces if they are tested enough and do not 
>>>> require a special build flow.
>>>>
>>>> Best regards,
>>>> Oleg
>>>>
>>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Jenkins Developers" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jenkinsci-dev/CAAe5jyNwkCaURREs3WAbpeFk8QHHgct7UvUAnEby-EVBXF7DGA%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/jenkinsci-dev/CAAe5jyNwkCaURREs3WAbpeFk8QHHgct7UvUAnEby-EVBXF7DGA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> -- 
>> Sent from my phone
>>
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "Jenkins Developers" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/jenkinsci-dev/IZ3kBFhIYYg/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-dev/CA%2BnPnMwpJ0Rb6bcSeZqb%2B92uXoBQCnuo8dsoKqP%2BtejTCCYYDQ%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/jenkinsci-dev/CA%2BnPnMwpJ0Rb6bcSeZqb%2B92uXoBQCnuo8dsoKqP%2BtejTCCYYDQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Jenkins Developers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-dev/6AA7F6BE-3E4C-4038-A8BD-A7EFD4F03151%40gmail.com
>>  
>> <https://groups.google.com/d/msgid/jenkinsci-dev/6AA7F6BE-3E4C-4038-A8BD-A7EFD4F03151%40gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/9db42acd-b5f3-4f3c-8b41-095dc9846037%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to