Files
games/deltas/0.1.0/0-pre.5.fix.3.md

3.1 KiB

Delta 0.1.0-0-pre.5.fix.3

Base

Base déclarée : 0.1.0-0-pre.5.fix.2, non validée intégralement.

Validation du delta précédent

L'utilisateur a exécuté les validations de 0.1.0-0-pre.5.fix.2 le 2026-09-16.

Préflight SDL3 propre :

pkg-config --modversion sdl3
3.2.10

et :

pkg-config --cflags --libs sdl3
-I/usr/include/pipewire-0.3 -I/usr/include/spa-0.2 -D_REENTRANT -I/usr/include/libdrm -I/usr/include/libdecor-0 -lSDL3

Résultats propres :

  • cargo fmt --all -- --check ;
  • audit Rust/workspace ;
  • audit Markdown : 1 table(s), 42 file(s) ;
  • cargo check --workspace ;
  • cargo test -p engine-v1-sdl --all-targets --all-features ;
  • cargo test -p game-reflex-poc --all-targets --all-features ;
  • cargo test -p game-snake-poc --all-targets --all-features ;
  • smoke game-reflex-poc-desktop ;
  • smoke game-snake-poc-desktop.

Les deux runners ont ouvert et fermé leur runtime SDL3 sans panic.

La gate Clippy a échoué sur une seule erreur projet :

clippy::duplicate_mod

Le même fichier unit_tests/runtime.rs était chargé à la fois depuis src/runtime.rs et src/unit_tests.rs.

0.1.0-0-pre.5.fix.2 n'est donc pas validé.

Correctifs

Tests SDL3

Le chargement direct du test depuis src/runtime.rs est supprimé.

Le seul point d'entrée reste :

src/unit_tests.rs
    -> ../unit_tests/runtime.rs

Le test n'est donc chargé qu'une fois.

Version SDL3

La dépendance commune passe à :

sdl3 = "^0.20"

La série 0.20 est utilisée plutôt que de rester sur 0.16.x.

Features Cargo

La racine conserve uniquement les versions des dépendances partagées :

sdl3 = "^0.20"
tracing-subscriber = "0.3.23"

Les features sont déplacées vers les crates qui les utilisent :

# engine-v1-sdl
sdl3 = { workspace = true, features = ["use-pkg-config"] }

# game-logging-lib
tracing-subscriber = { workspace = true, features = ["fmt"] }

Cette règle devient normative dans docs/rules/RULES_RUST.md.

Validation à exécuter par l'utilisateur

Le fix modifie du Rust :

cargo fmt --all
cargo fmt --all -- --check
python3 scripts/audit_rust_workspace_rules.py
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates Android deltas history
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings

Test ciblé principal :

cargo test -p engine-v1-sdl --all-targets --all-features

La montée de sdl3 à ^0.20 touche le runtime Desktop ; rejouer également les deux smokes :

cargo run -p game-reflex-poc-desktop
cargo run -p game-snake-poc-desktop

Les tests des crates de gameplay ne sont pas requis à nouveau : leur code et leurs dépendances propres ne sont pas modifiés par ce fix.

Règle de transition

Si toutes les validations sont propres, 0.1.0-0-pre.5.fix.3 est accepté et le travail passe automatiquement à 0.1.0-0-pre.6.

Si une gate échoue, rester sur 0-pre.5 et produire 0.1.0-0-pre.5.fix.4.