normogen/backend/docker/EDITION2024-FIX.md

1.3 KiB

Fix for Rust Edition 2024 Docker Build Error

Problem

The error occurs because:

  1. Your Dockerfile uses FROM rust:latest which pulled rust:1.83-alpine
  2. Several dependencies require Rust 1.85+ for Edition 2024 support:
    • time-core 0.1.8 requires Rust 1.88.0
    • getrandom 0.4.1 requires Rust 1.85.0
    • uuid 1.21.0 requires Rust 1.85.0
    • deranged 0.5.6 requires Rust 1.85.0
    • wasip2/wasip3 require Rust 1.87.0

Root Cause

Rust Edition 2024 became stable in Rust 1.85.0 (released February 20, 2025). Some of your transitive dependencies have updated to use Edition 2024, which requires a newer Rust version than 1.83.

Solutions

Change FROM rust:latest to FROM rust:1.93 or newer.

Pros:

  • Future-proof solution
  • Gets latest Rust improvements and security fixes
  • No dependency management overhead
  • Standard practice (update base images regularly)

Cons:

  • None (this is the correct approach)

Pin problematic dependencies to older versions that don't require Edition 2024. This creates technical debt and should only be used if you have a specific constraint preventing Rust version updates.

Implementation

See the fixed Dockerfiles in this directory.