3.5 KiB
Delta 0.1.0-0-pre.5.fix.2
Base
Base déclarée : 0.1.0-0-pre.5.fix.1, non validée.
Validation du delta précédent
L'utilisateur a exécuté les validations de 0.1.0-0-pre.5.fix.1 le 2026-09-16.
Les audits Rust/workspace étaient propres avant la phase de compilation SDL3.
La compilation a ensuite échoué dans le build script de sdl3-sys v0.5.12+SDL3-3.2.30.
Erreur déterminante :
CMake Error at CMakeLists.txt:4363 (add_subdirectory):
add_subdirectory given source "test" which is not an existing directory.
Le build vendored utilisait :
sdl3-src-3.4.16/SDL
avec SDL_TESTS activé par défaut alors que le package source utilisé par le build ne fournissait pas le répertoire test.
Les commandes cargo check, Clippy, tests ciblés et runners n'ont donc pas pu atteindre la compilation du code projet SDL3.
Une commande de test a également été collée accidentellement sous la forme :
--all-featurescargo
Cet incident de saisie est indépendant du défaut principal : plusieurs autres commandes distinctes ont reproduit le même échec CMake SDL3.
0.1.0-0-pre.5.fix.1 n'est donc pas validé.
Correctif
La stratégie Desktop Linux passe de :
features = ["build-from-source"]
à :
features = ["use-pkg-config"]
Le workspace utilise ainsi une SDL3 système pour le développement Desktop.
Aucun fichier Rust n'est modifié par ce fix.
Prérequis Desktop Linux
Sur Debian 13/Trixie :
sudo apt update
sudo apt install pkg-config libsdl3-dev
Préflight :
pkg-config --modversion sdl3
pkg-config --cflags --libs sdl3
Le package Debian libsdl3-dev fournit le fichier sdl3.pc utilisé par pkg-config.
Documentation
Ajout de :
docs/development/004-SDL3_DESKTOP_PREREQUISITES.md
Ce document sépare explicitement :
- dépendance SDL3 système pour le développement Desktop Linux ;
- intégration Android future via NDK/AAR ;
- intégration Web future via Emscripten/WASM.
Validation à exécuter par l'utilisateur
Aucun fichier Rust n'est modifié ; cargo fmt --all mutatif n'est pas requis.
Préflight SDL3
pkg-config --modversion sdl3
pkg-config --cflags --libs sdl3
Si pkg-config ne trouve pas SDL3 :
sudo apt update
sudo apt install pkg-config libsdl3-dev
Puis exécuter :
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
Tests ciblés :
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
Smokes Desktop :
cargo run -p game-reflex-poc-desktop
cargo run -p game-snake-poc-desktop
Pour chaque runner :
- une fenêtre SDL3 doit s'ouvrir ;
Escapedoit fermer proprement la fenêtre ;- la fermeture système doit fonctionner ;
Spacedoit être traité commeGameAction::Primary;- aucun panic ne doit apparaître.
Règle de transition
Si toutes les validations sont propres, 0.1.0-0-pre.5.fix.2 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.3.