Are jenkins releases supposed to be backwards code compatible?

60 views
Skip to first unread message

Surya Gaddipati

unread,
Dec 3, 2014, 1:00:43 PM12/3/14
to jenkin...@googlegroups.com
I just upgraded Jenkins version from 1.567 to 1.590  and seems like 

 public interface FileCallable<T> extends Serializable, RoleSensitive 

now extends 'RoleSensitive' . 


Is that expected that when I upgrade my jenkins dependency?

Jesse Glick

unread,
Dec 3, 2014, 5:51:43 PM12/3/14
to Jenkins Dev
On Wed, Dec 3, 2014 at 1:00 PM, Surya Gaddipati <suryap...@gmail.com> wrote:
> I just upgraded Jenkins version from 1.567 to 1.590 and seems like
>
> public interface FileCallable<T> extends Serializable, RoleSensitive
>
> now extends 'RoleSensitive' .

In this special case we decided to break _source_ (but not binary)
compatibility.

https://wiki.jenkins-ci.org/display/JENKINS/Slave+To+Master+Access+Control#SlaveToMasterAccessControl-I%27maplugindeveloper.WhatshouldIdo%3F

Surya Gaddipati

unread,
Dec 9, 2014, 12:58:53 PM12/9/14
to jenkin...@googlegroups.com
Thank you for pointing me that wiki, I hadn't seen it before. I was able to resolve that issue. 

However, 

I have this line in my code 
 <AtrifactArchiver>.perform((AbstractBuild) dynamicBuild, launcher, listener);

Which now wants me to handle IOException in my code.
Seems like this commit introduced the incompatible change 

Jesse Glick

unread,
Dec 9, 2014, 1:43:13 PM12/9/14
to Jenkins Dev
On Tue, Dec 9, 2014 at 12:58 PM, Surya Gaddipati
<suryap...@gmail.com> wrote:
> I have this line in my code
> <AtrifactArchiver>.perform((AbstractBuild) dynamicBuild, launcher, listener);
>
> Which now wants me to handle IOException in my code.

True; better to use the new overload anyway:

<ArtifactArchiver>.perform(dynamicBuild, dynamicBuild.getWorkspace(),
launcher, listener);
Reply all
Reply to author
Forward
0 new messages