backward compatibility strategy

42 views
Skip to first unread message

nicolas de loof

unread,
Jan 27, 2015, 4:35:51 AM1/27/15
to jenkin...@googlegroups.com
Hi folks,

maintaining backward compatibility on jenkins codebase is hard and introduces hundred @Deprecated methods.

and wonder if we could apply some of those recipes.

OR

maybe we could consider some cleanup period, what I mean is code that has been deprecated in a > 2 years old release (for sample) could now be removed from codebase.

wdyt ?

Andrew Gray

unread,
Jan 27, 2015, 7:41:44 AM1/27/15
to jenkin...@googlegroups.com
+1 for Option 2.

Clean up old code and move forward.
--
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 jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANMVJzn1QUg4JebA4dSiWOJoBmv1XB1H7vL8CP1xt2cSLswdYA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Robert Sandell

unread,
Jan 27, 2015, 8:21:04 AM1/27/15
to jenkin...@googlegroups.com
We had a show of hands on FOSDEM two years ago for how far people there thought we should keep backwards compatibility. I think most thought 2 years was enough.

/B


For more options, visit https://groups.google.com/d/optout.



--
Robert Sandell
Software Engineer
CloudBees Inc.

Jesse Glick

unread,
Jan 27, 2015, 12:23:51 PM1/27/15
to Jenkins Dev
On Tue, Jan 27, 2015 at 4:35 AM, nicolas de loof
<nicolas...@gmail.com> wrote:
> http://massol.myxwiki.org/xwiki/bin/view/Blog/BackwardCompatibilityStrategy
> and wonder if we could apply some of those recipes.

In particular the use of AspectJ sounds a lot more attractive and
powerful than the current grab bag of tricks we use, like @AdaptField.

Stephen Connolly

unread,
Jan 27, 2015, 12:55:22 PM1/27/15
to jenkin...@googlegroups.com
And now jesse has signed up for a third fight... After two rounds with KK he will have another round with me over that aspectj shite
--
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 jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr12HhqrTu2E%2BupxgBHzGZxw8n6t6X%2BcQSmk_DN3Gcsn4Q%40mail.gmail.com.

For more options, visit https://groups.google.com/d/optout.


--
Sent from my phone

nicolas de loof

unread,
Jan 27, 2015, 12:56:41 PM1/27/15
to jenkin...@googlegroups.com
What's wrong with ApsectJ from your pov ?

Jesse Glick

unread,
Jan 27, 2015, 5:23:22 PM1/27/15
to Jenkins Dev
On Tue, Jan 27, 2015 at 12:55 PM, Stephen Connolly
<stephen.al...@gmail.com> wrote:
> now jesse has signed up for a third fight

Well, I see a lot of problems with using AspectJ as well, starting
with the novel source language. I just wonder if there is any less
controversial technique that would be powerful enough to handle the
kinds of signature changes we would like to make.

The single most important use case seems to be injection of a (static
or instance) method into an existing class, which could perhaps be
solved with an annotation on a static method living in another module
(and taking an explicit receiver argument if necessary). For example,
this would have let getTestResultAction be deleted entirely from
AbstractBuild.java, with a method somewhere in junit-plugin

@Compatibility public static AbstractTestResultAction
getTestResultAction(AbstractBuild $this) {
return $this.getAction(AbstractTestResultAction.class);
}

There are some other more marginal cases involving field references and so on.

nicolas de loof

unread,
Jan 28, 2015, 1:11:16 AM1/28/15
to jenkin...@googlegroups.com
If you don't like AspectJ, using lombok with custom annotation processors could do something comparable

--
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 jenkinsci-de...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages