[ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

[ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Oleg Nenashev
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAPfivLCycqjfwp7UzXQOOOVQUWOfNMwuhe3H_p5aq5db4B%3DATA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Mark Waite-2
I tried to start my JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the <a href="https://issues.jenkins-ci.org/browse/JENKINS-40689" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;">JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in <a href="https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;">this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/b32e8dea-1b2a-4775-ba62-0a265fcbb011%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Oleg Nenashev
Hi Mark,

Yes, I know about this issue: https://issues.jenkins-ci.org/browse/JENKINS-51155 .
My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
  • https://github.com/jenkinsci/extras-executable-war/pull/17
  • https://github.com/jenkinsci/jenkins/pull/3486
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my <a href="https://github.com/MarkEWaite/docker-lfs/tree/lts-jdk10-with-plugins" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;">JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the <a href="https://issues.jenkins-ci.org/browse/JENKINS-40689" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;">JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in <a href="https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;">this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Mark Waite-2
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAO49JtG-790wZtfEeeR4wMJXo0DobnWyggrVfHYuEzbMzJSzKA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Oleg Nenashev
Hi Mark,

As you asked, letting you know that it's available. Thank you and Daniel Beck for reviews on the weekend :)

Updates:
  • We have posted a blogpose about the hackathon with some extra details: https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/ . Will appreciate reposts and tweets
  • I have landed the JENKINS-51155 patch in 2.127 (no changelog so far). You can run Jenkins with Java 10 using the following command-line: "${JAVA10_HOME}/bin/java --add-modules java.xml.bind -jar jenkins.war --enable-future-java --httpPort=8080 --prefix=/jenkins".
  • I have started a java10-support branch and label in the Jenkins repo
  • I have created an EPIC for the hackathon prep-work: JENKINS-51833. If I am missing any tasks, please add them there
Some exploratory testing results:
  • Jenkins starts up successfully on Java 10. You can configure and run freestyle jobs
  • Pipeline crashes immediately, even with the new Bytecode transformer based on ASM 6.0-BETA. We need to update all libs to ASM 6.2 IMHO (tickets are in the EPIC)
  • Remoting agents are able to start on Java 10 and to connect to the master. They execute freestyle jobs, so we are "fine" there
  • It won't work on Java 11, because Java EE libraries are removed from it. For Java 11 we will likely need to repackage Jenkins. I created a Java 11 compatibility EPIC - JENKINS-51805.
So the biggest obstacles ahead are Pipeline support. We could also do cleanup of reflection calls, which will eventually blow up in our face (in Java 10 it's warning by default). We should also consider some major efforts like updating to Groovy 3.x + testing reflection-based functionality (e.g. databinding in XStream, Jackson, SnakeYML).

Best regards,
Oleg


On Saturday, June 9, 2018 at 5:51:27 PM UTC+2, Mark Waite wrote:
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="l_Q7g85ZAwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">o.v.ne...@...> wrote:
Hi Mark,

Yes, I know about this issue: <a href="https://issues.jenkins-ci.org/browse/JENKINS-51155" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;">https://issues.jenkins-ci.org/browse/JENKINS-51155 .
My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
  • <a href="https://github.com/jenkinsci/extras-executable-war/pull/17" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;">https://github.com/jenkinsci/extras-executable-war/pull/17
  • <a href="https://github.com/jenkinsci/jenkins/pull/3486" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;">https://github.com/jenkinsci/jenkins/pull/3486
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for <a href="https://issues.jenkins-ci.org/browse/JENKINS-51832" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;">JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my <a href="https://github.com/MarkEWaite/docker-lfs/tree/lts-jdk10-with-plugins" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;">JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the <a href="https://issues.jenkins-ci.org/browse/JENKINS-40689" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;">JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in <a href="https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;">this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 <a href="javascript:" target="_blank" gdf-obfuscated-mailto="l_Q7g85ZAwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium=email&amp;utm_source=footer" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Carlos Sanchez
I have created a branch for the docker image at https://github.com/jenkinsci/docker/tree/java10

On Mon, Jun 11, 2018 at 4:36 PM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

As you asked, letting you know that it's available. Thank you and Daniel Beck for reviews on the weekend :)

Updates:
  • We have posted a blogpose about the hackathon with some extra details: https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/ . Will appreciate reposts and tweets
  • I have landed the JENKINS-51155 patch in 2.127 (no changelog so far). You can run Jenkins with Java 10 using the following command-line: "${JAVA10_HOME}/bin/java --add-modules java.xml.bind -jar jenkins.war --enable-future-java --httpPort=8080 --prefix=/jenkins".
  • I have started a java10-support branch and label in the Jenkins repo
  • I have created an EPIC for the hackathon prep-work: JENKINS-51833. If I am missing any tasks, please add them there
Some exploratory testing results:
  • Jenkins starts up successfully on Java 10. You can configure and run freestyle jobs
  • Pipeline crashes immediately, even with the new Bytecode transformer based on ASM 6.0-BETA. We need to update all libs to ASM 6.2 IMHO (tickets are in the EPIC)
  • Remoting agents are able to start on Java 10 and to connect to the master. They execute freestyle jobs, so we are "fine" there
  • It won't work on Java 11, because Java EE libraries are removed from it. For Java 11 we will likely need to repackage Jenkins. I created a Java 11 compatibility EPIC - JENKINS-51805.
So the biggest obstacles ahead are Pipeline support. We could also do cleanup of reflection calls, which will eventually blow up in our face (in Java 10 it's warning by default). We should also consider some major efforts like updating to Groovy 3.x + testing reflection-based functionality (e.g. databinding in XStream, Jackson, SnakeYML).

Best regards,
Oleg


On Saturday, June 9, 2018 at 5:51:27 PM UTC+2, Mark Waite wrote:
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Mark Waite-2
Thanks!

I've confirmed that I Jenkins 2.127 starts with JDK 10 when I use the --enable-future-java you've provided.  Multiple agents connected successfully.

Mark Waite

On Mon, Jun 11, 2018 at 8:55 AM Carlos Sanchez <[hidden email]> wrote:
I have created a branch for the docker image at https://github.com/jenkinsci/docker/tree/java10

On Mon, Jun 11, 2018 at 4:36 PM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

As you asked, letting you know that it's available. Thank you and Daniel Beck for reviews on the weekend :)

Updates:
  • We have posted a blogpose about the hackathon with some extra details: https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/ . Will appreciate reposts and tweets
  • I have landed the JENKINS-51155 patch in 2.127 (no changelog so far). You can run Jenkins with Java 10 using the following command-line: "${JAVA10_HOME}/bin/java --add-modules java.xml.bind -jar jenkins.war --enable-future-java --httpPort=8080 --prefix=/jenkins".
  • I have started a java10-support branch and label in the Jenkins repo
  • I have created an EPIC for the hackathon prep-work: JENKINS-51833. If I am missing any tasks, please add them there
Some exploratory testing results:
  • Jenkins starts up successfully on Java 10. You can configure and run freestyle jobs
  • Pipeline crashes immediately, even with the new Bytecode transformer based on ASM 6.0-BETA. We need to update all libs to ASM 6.2 IMHO (tickets are in the EPIC)
  • Remoting agents are able to start on Java 10 and to connect to the master. They execute freestyle jobs, so we are "fine" there
  • It won't work on Java 11, because Java EE libraries are removed from it. For Java 11 we will likely need to repackage Jenkins. I created a Java 11 compatibility EPIC - JENKINS-51805.
So the biggest obstacles ahead are Pipeline support. We could also do cleanup of reflection calls, which will eventually blow up in our face (in Java 10 it's warning by default). We should also consider some major efforts like updating to Groovy 3.x + testing reflection-based functionality (e.g. databinding in XStream, Jackson, SnakeYML).

Best regards,
Oleg


On Saturday, June 9, 2018 at 5:51:27 PM UTC+2, Mark Waite wrote:
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com.
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAO49JtHEP%3DMddMdGO5gsEAhXCP9xUTw%3DxgTgyz57xS10ZwU5Cg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Oleg Nenashev
Hi all,

Just some logistics updates:
  • I have created a sync-up Google Document, which we will be using during the Hackathon
  • I have added guidelines for running Jenkins with Java 10/11 (here)
  • Finally, we have scheduled the meetings (here):
    • On Monday 7:00 AM UTC we will have an opening session for EMEA/APAC. There we will decide whether we do regular meetings
    • On Monday 4:00 PM UTC we will have an opening session for EMEA/Americas
    • Each day we will have sync-ups at 4PM UTC
See you on Monday!

Best regards,
Oleg Nenashev




On Monday, June 11, 2018 at 5:36:41 PM UTC+2, Mark Waite wrote:
Thanks!

I've confirmed that I Jenkins 2.127 starts with JDK 10 when I use the --enable-future-java you've provided.  Multiple agents connected successfully.

Mark Waite

On Mon, Jun 11, 2018 at 8:55 AM Carlos Sanchez <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="fRIUWyn2AwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">car...@...> wrote:
I have created a branch for the docker image at <a href="https://github.com/jenkinsci/docker/tree/java10" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fdocker%2Ftree%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNERUnuMUuVauj8OxYwc8nH7RGxX7w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fdocker%2Ftree%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNERUnuMUuVauj8OxYwc8nH7RGxX7w&#39;;return true;">https://github.com/jenkinsci/docker/tree/java10

On Mon, Jun 11, 2018 at 4:36 PM Oleg Nenashev <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="fRIUWyn2AwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">o.v.ne...@...> wrote:
Hi Mark,

As you asked, letting you know that it's available. Thank you and Daniel Beck for reviews on the weekend :)

Updates:
  • We have posted a blogpose about the hackathon with some extra details: <a href="https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2018%2F06%2F08%2Fjenkins-java10-hackathon%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGQ8JirR-dq8zaROwPzo1ciNpLKVg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2018%2F06%2F08%2Fjenkins-java10-hackathon%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGQ8JirR-dq8zaROwPzo1ciNpLKVg&#39;;return true;">https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/ . Will appreciate reposts and tweets
  • I have landed the <a href="https://issues.jenkins-ci.org/browse/JENKINS-51155" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;">JENKINS-51155 patch in 2.127 (no changelog so far). You can run Jenkins with Java 10 using the following command-line: "${JAVA10_HOME}/bin/java --add-modules java.xml.bind -jar jenkins.war --enable-future-java --httpPort=8080 --prefix=/jenkins".
  • I have started a java10-support <a href="https://github.com/jenkinsci/jenkins/tree/java10-support" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Ftree%2Fjava10-support\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNExs4hPvI7x-BB7FCUgHZcYGtb5KQ&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Ftree%2Fjava10-support\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNExs4hPvI7x-BB7FCUgHZcYGtb5KQ&#39;;return true;">branch and <a href="https://github.com/jenkinsci/jenkins/labels/java10" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Flabels%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFHSjZyrvKNB-GwDFLnXLZM-Voc2A&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Flabels%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFHSjZyrvKNB-GwDFLnXLZM-Voc2A&#39;;return true;">label in the Jenkins repo
  • I have created an EPIC for the hackathon prep-work: <a href="https://issues.jenkins-ci.org/browse/JENKINS-51833" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51833\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEkDmKd3CmLOEcWZ8X29Mq1V04XYQ&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51833\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEkDmKd3CmLOEcWZ8X29Mq1V04XYQ&#39;;return true;">JENKINS-51833. If I am missing any tasks, please add them there
Some exploratory testing results:
  • Jenkins starts up successfully on Java 10. You can configure and run freestyle jobs
  • Pipeline crashes immediately, even with the new Bytecode transformer based on ASM 6.0-BETA. We need to update all libs to ASM 6.2 IMHO (tickets are in the EPIC)
  • Remoting agents are able to start on Java 10 and to connect to the master. They execute freestyle jobs, so we are "fine" there
  • It won't work on Java 11, because Java EE libraries are removed from it. For Java 11 we will likely need to repackage Jenkins. I created a Java 11 compatibility EPIC - <a href="https://issues.jenkins-ci.org/browse/JENKINS-51805" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51805\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG-vPPAh1nZjzhneZtVWY3MZsWHUA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51805\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG-vPPAh1nZjzhneZtVWY3MZsWHUA&#39;;return true;">JENKINS-51805.
So the biggest obstacles ahead are Pipeline support. We could also do cleanup of reflection calls, which will eventually blow up in our face (in Java 10 it's warning by default). We should also consider some major efforts like updating to Groovy 3.x + testing reflection-based functionality (e.g. databinding in XStream, Jackson, SnakeYML).

Best regards,
Oleg


On Saturday, June 9, 2018 at 5:51:27 PM UTC+2, Mark Waite wrote:
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

Yes, I know about this issue: <a href="https://issues.jenkins-ci.org/browse/JENKINS-51155" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;">https://issues.jenkins-ci.org/browse/JENKINS-51155 .
My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
  • <a href="https://github.com/jenkinsci/extras-executable-war/pull/17" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;">https://github.com/jenkinsci/extras-executable-war/pull/17
  • <a href="https://github.com/jenkinsci/jenkins/pull/3486" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;">https://github.com/jenkinsci/jenkins/pull/3486
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for <a href="https://issues.jenkins-ci.org/browse/JENKINS-51832" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;">JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my <a href="https://github.com/MarkEWaite/docker-lfs/tree/lts-jdk10-with-plugins" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;">JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the <a href="https://issues.jenkins-ci.org/browse/JENKINS-40689" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;">JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in <a href="https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;">this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 <a href="https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium=email&amp;utm_source=footer" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
For more options, visit <a href="https://groups.google.com/d/optout" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 <a href="javascript:" target="_blank" gdf-obfuscated-mailto="fRIUWyn2AwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium=email&amp;utm_source=footer" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com.
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 <a href="javascript:" target="_blank" gdf-obfuscated-mailto="fRIUWyn2AwAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium=email&amp;utm_source=footer" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com.
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/01025ab7-fcf4-44e0-9cb9-a14fc489a871%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] - Jenkins & Java 10 Online Hackathon (Jun 18-22)

Oleg Nenashev
Hi all,

We have published an update after the first two days of the hackathon: https://jenkins.io/blog/2018/06/19/jenkins-java10-hackathon-day2/ . TL;DR: We have got Jenkins Pipeline working with Java 11, so the main blocker for Java 10 adoption and exploratory testing is resolved. There are lots of ongoing patches for Jenkins libraries and development tools.

If you are interested to try out Jenkins with your plugins on Java 10 or 11, see these guidelines. If you want to try out Pipeline support, we also have a jenkins/jenkins-experimental:blueocean-jdk10 image with core Pipeline plugins and Blue Ocean bundled. "Pipeline: Support" plugin currently requires a custom patch which has not been released yet, so this is the most straightforward way to get it running.

Tomorrow we will have 2 sessions: Intro to Jenkins development for patch contributors (8AM UTC) and a meeting with JDK Project Jigsaw committers (4PM UTC). Please feel free to join these sessions if you are interested. Links are provided in the Day 2 update blogpost.

Best regards,
Oleg








On Friday, June 15, 2018 at 12:09:04 PM UTC+2, Oleg Nenashev wrote:
Hi all,

Just some logistics updates:
  • I have created a <a href="https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading=h.t0iuzge0hwlb" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.t0iuzge0hwlb&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.t0iuzge0hwlb&#39;;return true;">sync-up Google Document, which we will be using during the Hackathon
  • I have added guidelines for running Jenkins with Java 10/11 (<a href="https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading=h.t0iuzge0hwlb" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.t0iuzge0hwlb&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.t0iuzge0hwlb&#39;;return true;">here)
  • Finally, we have scheduled the meetings (<a href="https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading=h.y6gkcyuktlzr" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.y6gkcyuktlzr&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/document/d/1ed6wFOlq4cWrSL6UkCSzFbaY80AT-sk8ncB4Fz5QXyM/edit#heading\x3dh.y6gkcyuktlzr&#39;;return true;">here):
    • On Monday 7:00 AM UTC we will have an opening session for EMEA/APAC. There we will decide whether we do regular meetings
    • On Monday 4:00 PM UTC we will have an opening session for EMEA/Americas
    • Each day we will have sync-ups at 4PM UTC
See you on Monday!

Best regards,
Oleg Nenashev




On Monday, June 11, 2018 at 5:36:41 PM UTC+2, Mark Waite wrote:
Thanks!

I've confirmed that I Jenkins 2.127 starts with JDK 10 when I use the --enable-future-java you've provided.  Multiple agents connected successfully.

Mark Waite

On Mon, Jun 11, 2018 at 8:55 AM Carlos Sanchez <[hidden email]> wrote:
I have created a branch for the docker image at <a href="https://github.com/jenkinsci/docker/tree/java10" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fdocker%2Ftree%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNERUnuMUuVauj8OxYwc8nH7RGxX7w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fdocker%2Ftree%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNERUnuMUuVauj8OxYwc8nH7RGxX7w&#39;;return true;">https://github.com/jenkinsci/docker/tree/java10

On Mon, Jun 11, 2018 at 4:36 PM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

As you asked, letting you know that it's available. Thank you and Daniel Beck for reviews on the weekend :)

Updates:
  • We have posted a blogpose about the hackathon with some extra details: <a href="https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2018%2F06%2F08%2Fjenkins-java10-hackathon%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGQ8JirR-dq8zaROwPzo1ciNpLKVg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2018%2F06%2F08%2Fjenkins-java10-hackathon%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGQ8JirR-dq8zaROwPzo1ciNpLKVg&#39;;return true;">https://jenkins.io/blog/2018/06/08/jenkins-java10-hackathon/ . Will appreciate reposts and tweets
  • I have landed the <a href="https://issues.jenkins-ci.org/browse/JENKINS-51155" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;">JENKINS-51155 patch in 2.127 (no changelog so far). You can run Jenkins with Java 10 using the following command-line: "${JAVA10_HOME}/bin/java --add-modules java.xml.bind -jar jenkins.war --enable-future-java --httpPort=8080 --prefix=/jenkins".
  • I have started a java10-support <a href="https://github.com/jenkinsci/jenkins/tree/java10-support" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Ftree%2Fjava10-support\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNExs4hPvI7x-BB7FCUgHZcYGtb5KQ&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Ftree%2Fjava10-support\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNExs4hPvI7x-BB7FCUgHZcYGtb5KQ&#39;;return true;">branch and <a href="https://github.com/jenkinsci/jenkins/labels/java10" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Flabels%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFHSjZyrvKNB-GwDFLnXLZM-Voc2A&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Flabels%2Fjava10\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFHSjZyrvKNB-GwDFLnXLZM-Voc2A&#39;;return true;">label in the Jenkins repo
  • I have created an EPIC for the hackathon prep-work: <a href="https://issues.jenkins-ci.org/browse/JENKINS-51833" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51833\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEkDmKd3CmLOEcWZ8X29Mq1V04XYQ&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51833\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEkDmKd3CmLOEcWZ8X29Mq1V04XYQ&#39;;return true;">JENKINS-51833. If I am missing any tasks, please add them there
Some exploratory testing results:
  • Jenkins starts up successfully on Java 10. You can configure and run freestyle jobs
  • Pipeline crashes immediately, even with the new Bytecode transformer based on ASM 6.0-BETA. We need to update all libs to ASM 6.2 IMHO (tickets are in the EPIC)
  • Remoting agents are able to start on Java 10 and to connect to the master. They execute freestyle jobs, so we are "fine" there
  • It won't work on Java 11, because Java EE libraries are removed from it. For Java 11 we will likely need to repackage Jenkins. I created a Java 11 compatibility EPIC - <a href="https://issues.jenkins-ci.org/browse/JENKINS-51805" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51805\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG-vPPAh1nZjzhneZtVWY3MZsWHUA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51805\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG-vPPAh1nZjzhneZtVWY3MZsWHUA&#39;;return true;">JENKINS-51805.
So the biggest obstacles ahead are Pipeline support. We could also do cleanup of reflection calls, which will eventually blow up in our face (in Java 10 it's warning by default). We should also consider some major efforts like updating to Groovy 3.x + testing reflection-based functionality (e.g. databinding in XStream, Jackson, SnakeYML).

Best regards,
Oleg


On Saturday, June 9, 2018 at 5:51:27 PM UTC+2, Mark Waite wrote:
That sounds like a great plan to me.  

Let me know as parts and pieces of that become available.  I may be able to squeeze some initial testing in during the evenings as prep for the hackathon.

Mark Waite

On Sat, Jun 9, 2018 at 9:44 AM Oleg Nenashev <[hidden email]> wrote:
Hi Mark,

Yes, I know about this issue: <a href="https://issues.jenkins-ci.org/browse/JENKINS-51155" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51155\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGDw7Uk6E8wjFm5BVQckf_Bi7ZgjA&#39;;return true;">https://issues.jenkins-ci.org/browse/JENKINS-51155 .
My plan is to get it in the core weekly or java10-support before we start the hackathon so that it does not block others.

Pull requests:
  • <a href="https://github.com/jenkinsci/extras-executable-war/pull/17" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fextras-executable-war%2Fpull%2F17\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHMU0mlAsRBrt7mZp1UD6PRGWFWnA&#39;;return true;">https://github.com/jenkinsci/extras-executable-war/pull/17
  • <a href="https://github.com/jenkinsci/jenkins/pull/3486" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2Fjenkinsci%2Fjenkins%2Fpull%2F3486\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEX8ofEnPqMLs_lkNJdW7l4qt-dSA&#39;;return true;">https://github.com/jenkinsci/jenkins/pull/3486
In order to run the core reliably for exploratory testing, we will also need to do some patches in the core:
  • Bump Binary Compatibility Transformer to 2.0.3-alpha-3 (ASM 5 => ASM 6, Baptiste did updates in September)
  • Add java.xml.bind libraries to the scope (as module or, preferably, as external dependencies): for <a href="https://issues.jenkins-ci.org/browse/JENKINS-51832" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-51832\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHcTZCZLudM28iCswnso_JOMIjZJA&#39;;return true;">JENKINS-51832
  • Much more non-mergeable magic (?)
My proposal is to...
  1. Create a java10 development branch in the core
  2. Adjust Jenkins version in the branch
  3. Tweak Jenkinsfile in this branch to speedup builds
    • e.g. "run unit tests, but not ATH or JTH"
    • Keep incrementals so that we ship builds to users for consumption
  4. Add Dockerfile directly to the Repo, setup automatic build on DockerHub

Best regards,
Oleg

On Saturday, June 9, 2018 at 4:05:52 PM UTC+2, Mark Waite wrote:
I tried to start my <a href="https://github.com/MarkEWaite/docker-lfs/tree/lts-jdk10-with-plugins" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FMarkEWaite%2Fdocker-lfs%2Ftree%2Flts-jdk10-with-plugins\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGjqnGP6liommnxovR1lOm70nyz4w&#39;;return true;">JDK 10 Docker image with Jenkins 1.121.1 LTS and was immediately stopped by a "Jenkins requires Java 8" message.  That is a very good message since it prevents others from accidentally trying Java 9 or Java 10 when it is known to not work.

Can someone point me to the technique that will be used to retain that message for production users but still allow experiments with newer Java versions?

Mark Waite

On Wednesday, June 6, 2018 at 10:58:54 AM UTC-6, Oleg Nenashev wrote:
Hi all,

On behalf of the Jenkins Events Team, I would like to invite you to the “Jenkins & Java 10 Online Hackathon” which we are going to have from June 18th to 22nd.

Jenkins project currently requires Java 8 to run reliably. There are some known compatibility issues with higher Java versions. During the Jenkins World 2017 Hackathon, Mark Waite and Baptiste Mathus spent some time exploring Java 9 compatibility in Jenkins. We are currently tracking compatibility issues in the <a href="https://issues.jenkins-ci.org/browse/JENKINS-40689" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-40689\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEW-AIR2pSG7R6vxvSHQ-pGF6ubsg&#39;;return true;">JENKINS-40689 EPIC, but there are likely many unknown issues in Jenkins core, plugins and in libraries we use in the project.

It has been almost a year since that effort. Java 9 has recently been end-of-lifed, Java 10 in GA, and Java 11 is in early beta. We would like to continue the effort and work on Java 10+ support. So, we are going to have an online hackathon on June 18th-22th in order to collaborate on finding and fixing compatibility issues, share experience and have some fun. Everybody is welcome to join, independently of their Jenkins experience and amount of time they have available.

If you are interested in participating in the hackathon, please sign-up in <a href="https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;" onclick="this.href=&#39;https://docs.google.com/forms/d/1ReYyuyCGC0PIz2quh6XehnjpH2K52inx-veHLPlNreE/&#39;;return true;">this form.

Currently the event is in the planning stage. We will be organizing some sync-up and knowledge transfer sessions during the event, and we also want to have some special swag for participants. Stay tuned, we are going to provide more details about the logistics in a blogpost to be published soon. If you have any questions, please reply to this thread.

Best regards,
Oleg Nenashev

--
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 <a href="https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium=email&amp;utm_source=footer" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/cf2db149-c658-4e26-8512-e447c7ab9bcb%40googlegroups.com.
For more options, visit <a href="https://groups.google.com/d/optout" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium=email&amp;utm_source=footer" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/8eeaadd0-33cb-40d2-9cf4-863ea2f484ba%40googlegroups.com.
For more options, visit <a href="https://groups.google.com/d/optout" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium=email&amp;utm_source=footer" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com?utm_medium\x3demail\x26utm_source\x3dfooter&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/CALHFn6OrnsN10SnLtFXGJs1nr%3D3XU6_%3D3uJv8a%2B86uBV3D61RQ%40mail.gmail.com.
For more options, visit <a href="https://groups.google.com/d/optout" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/075276d0-ec6a-4e79-8828-3ef939969264%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.