Skip to content

Upgrade to Ubuntu 22.04 with modern language versions#25

Open
rogerheykoop wants to merge 1 commit intojudge0:masterfrom
rogerheykoop:ubuntu-22.04-upgrade
Open

Upgrade to Ubuntu 22.04 with modern language versions#25
rogerheykoop wants to merge 1 commit intojudge0:masterfrom
rogerheykoop:ubuntu-22.04-upgrade

Conversation

@rogerheykoop
Copy link

Overview

Major upgrade from Debian Buster (EOL) to Ubuntu 22.04 LTS with significantly updated compiler and interpreter versions.

Base Image Change

  • Before: judge0/buildpack-deps:buster-2019-12-28 (Debian Buster - EOL)
  • After: ubuntu:22.04 (LTS until 2027)

Updated Languages

Language Old Version New Version
GCC 7.4, 8.3, 9.2 11, 12, 13
Clang 7.0.1 17
Python 2.7.17, 3.8.1 3.11, 3.12
Ruby 2.7.0 3.3.0
Node.js 12.14.0 20.11.0
Java OpenJDK 13 OpenJDK 21
Go 1.13.5 1.22.0
Rust 1.40.0 1.75.0
Kotlin 1.3.70 1.9.22
Scala 2.13.2 3.3.1
Swift 5.2.3 5.9.2
TypeScript 3.7.4 5.3.3
.NET SDK 3.1 8.0
Haskell (GHC) 8.8.1 apt default
PHP 7.4.1 apt default
Lua 5.3.5 5.4
R 4.0.0 apt default

New Languages Added

  • Zig 0.11.0
  • Nim 2.0.2
  • Dart (latest from apt)
  • Julia 1.10.0

Architecture Support

Added ARM64 architecture detection for cross-platform builds:

  • Node.js
  • Go
  • Zig
  • Julia
  • Nim

This enables building on Apple Silicon Macs and ARM servers.

Sandbox Update

  • Isolate updated from ad39cc4 to 1.10.1

Breaking Changes

  • Python 2.7 removed (EOL since 2020)
  • Some older GCC versions removed (7.x, 8.x, 9.x replaced with 11, 12, 13)
  • Version label updated to 2.0.0

Why This Upgrade?

  1. Debian Buster reached EOL - security updates no longer available
  2. Many language versions were severely outdated (Python 3.8, Node 12, etc.)
  3. Ubuntu 22.04 LTS provides support until 2027
  4. Modern language versions have better performance and security

🤖 Generated with Claude Code

Major upgrade from Debian Buster to Ubuntu 22.04 LTS with significantly
updated compiler and interpreter versions.

## Base Image
- FROM buildpack-deps:buster → ubuntu:22.04

## Updated Languages
| Language | Old | New |
|----------|-----|-----|
| GCC | 7.4, 8.3, 9.2 | 11, 12, 13 |
| Clang | 7.0.1 | 17 |
| Python | 2.7.17, 3.8.1 | 3.11, 3.12 |
| Ruby | 2.7.0 | 3.3.0 |
| Node.js | 12.14.0 | 20.11.0 |
| Java | OpenJDK 13 | OpenJDK 21 |
| Go | 1.13.5 | 1.22.0 |
| Rust | 1.40.0 | 1.75.0 |
| Kotlin | 1.3.70 | 1.9.22 |
| Scala | 2.13.2 | 3.3.1 |
| Swift | 5.2.3 | 5.9.2 |
| TypeScript | 3.7.4 | 5.3.3 |
| .NET SDK | 3.1 | 8.0 |

## New Languages
- Zig 0.11.0
- Nim 2.0.2
- Dart (latest)
- Julia 1.10.0

## Architecture Support
Added ARM64 architecture detection for:
- Node.js, Go, Zig, Julia, Nim

## Sandbox
- Isolate updated to 1.10.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant