Web sites and other programs placed on the silk hosting service will require periodic updates to continue working as the software they use changes. The developers of each programming language publish their own support timeline, and every few years the underlying silk service hosts are replaced with a newer operating system along with other improvements. Enterprise Technology Services attempts to provide information well in advance of changes that may break your site.
Most software uses one of the following support models:
- Only the most recent version is supported, but upgrades should generally be safe for existing code.
- The most recent several versions (or several recent versions labeled for long-term support) receive updates. New versions and retirement of old versions follow a predictable timetable. Backward compatibility in new versions varies. For example, upgrades are usually safe with Node.js; with PHP, each version introduces warnings that become errors in the following release.
When we make changes
New software versions are generally made available soon after they are released.
Unsupported software will be removed from the silk hosting service. If possible, this is done at the end of the current semester, but security vulnerabilities may require this to occur before then. You should always plan to migrate sites off of software well before it becomes end-of-life.
Software with multiple versions available has a default version for when you do not specify otherwise. As new versions become available and old versions are retired, this default is periodically changed. The default version of PHP is changed annually on the first non-holiday Monday of January. Other software is generally changed the following Monday.
Support timetables
Go, Perl, PowerShell, R, and Rust
These languages have a recent version available on silk that will be updated periodically. New releases do not usually require changes to your code to continue functioning, though they may require changes if you wish to use new features.
Java
Long-term supported (LTS) releases of Java OpenJDK are available for the timeframes described by the Eclipse Adoptium (formerly AdoptOpenJDK) Project.
| Version | Sunset date |
|---|---|
| 17 (default) | October 2027 |
| 21 | December 2029 |
| 25 | September 2031 |
Node.js
The Node.js Releases page shows the official support timeline for each release of Node.js. The silk hosting service offers LTS (long time support) releases as they are available.
| Version | Sunset date |
|---|---|
| 20 (default) | April 30, 2026 |
| 22 | April 30, 2027 |
| 24 | April 30, 2028 |
PHP
The table below summarizes current releases from the PHP Supported Versions page available on silk. End-of-life releases are removed from silk at the end of fall semester exams.
| Version | Sunset date |
|---|---|
| 8.2 | December 31, 2026 |
| 8.3 (default) | December 31, 2027 |
| 8.4 | December 31, 2028 |
| 8.5 | December 31, 2029 |
Python
The Status of Python Versions page in the Python Developer’s Guide describes the official support matrix for each version.
| Version | Sunset date |
|---|---|
| 3.10 (default) | October 2026 |
| 3.12 | October 2028 |
| 3.14 | October 2030 |
Ruby
The table below summarizes end of life dates for releases on silk as listed on the Ruby Maintenance Branches page.
| Version | Sunset date |
|---|---|
| 3.2 (default) | March 31, 2026 |
| 3.3 | March 31, 2027 |
| 3.4 | March 31, 2028 |