Basil Crow
Basil is a long-time Jenkins user and contributor, a Jenkins core maintainer, and the maintainer of the Email Extension, Timestamper, and Swarm plugins (among others). Basil enjoys working on open source software in his free time.
Summary tl;dr Jenkins 2.426.1 LTS will support Java 11, 17, and 21. In Fall 2024, Jenkins will require Java 17 or 21 and drop support for Java 11. Thereafter, Jenkins will support each Java LTS release for approximately four years; i.e., Jenkins will support two Java LTS releases at any given time. Background Java’s historically slow release cadence has accelerated significantly in recent years. At present, Java feature...
Following up on my previous post about removing Prototype from Jenkins, Prototype has been removed from the 2.426 weekly release and will be removed from the November LTS release. This removal required changes in about 60 plugins. Use the Plugin Manager to upgrade all plugins before and after upgrading to Jenkins 2.426. A migration of this scope would not have been possible without the...
Summary Usage of the Prototype JavaScript framework has been deprecated in recent versions of Jenkins core and will be removed completely in the future. Plugin developers should prepare for this transition by removing usages of Prototype and testing with Prototype removed. Motivation Prototype was created by Sam Stephenson in February 2005 as part of Ajax support in Ruby on Rails. While it was considered a...
🚀 Java Platform update Jenkins has required Java 11 or newer since 2.361.1 LTS (released on September 7, 2022) and has supported Java 17 since 2.346.1 LTS (released on June 16, 2022). At the time, more users were running Jenkins on Java 8 than on Java 11, and a negligible number of users were running Jenkins on Java 17. In recent months, usage of Java 11...
Introduction The Jenkins project is committed to delivering a world-class platform experience for end users and developers alike. At the core of this experience is Java, an object-oriented programming language with a cross-platform runtime in the form of the Java virtual machine (JVM). Since its inception, the Jenkins project has been a major consumer of Java, distributing over 1,800 plugins to an installed...
The Jenkins project provides Docker images for controllers (and more). Beginning with Jenkins 2.344 released April 18, 2022 and Jenkins 2.332.3 released May 04, 2022, the behavior of the "Exit" and "Restart" lifecycle of the controller image jenkins/jenkins changed. TL;DR; Ensure that you have a Container Restart Policy For quick readers: check the How to Add a Container Restart Policy section for immediate...
Beginning with Jenkins 2.335 and Jenkins 2.332.1, the Jenkins project is migrating from System V init(8) to systemd(1) in its official Debian, Red Hat, and openSUSE packages. The official Docker image and Helm chart remain unchanged. For up-to-date information, refer to the Managing systemd services page in the documentation. Background Beginning in 2008, the Jenkins (then Hudson) project has delivered Linux OS installation packages...
Please refer to the Java requirements documentation for up-to-date details on how to run Jenkins on Java 17. Jenkins, one of the leading open-source automation servers, does not yet officially support Java 17. On September 14, 2021, OpenJDK 17 was released. This is a Long-Term-Support (LTS) release, and it will stay around for years. The Jenkins project is eager to offer full support of...
Summary Jenkins bundles Guava, a core Java library from Google. Beginning with Jenkins 2.320 (released on November 10, 2021), Jenkins has upgraded the Guava library from 11.0.1 (released on January 9, 2012) to 31.0.1 (released on September 27, 2021). Plugins have already been prepared to support the new version of Guava in JEP-233. Use the Plugin Manager to upgrade all plugins before and after upgrading to...