0.1.0-0-pre.6
This commit is contained in:
140
deltas/0.1.0/0-pre.6.md
Normal file
140
deltas/0.1.0/0-pre.6.md
Normal file
@@ -0,0 +1,140 @@
|
||||
<!-- file: deltas/0.1.0/0-pre.6.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta 0.1.0-0-pre.6
|
||||
|
||||
## Base
|
||||
|
||||
Base validée : `0.1.0-0-pre.5.fix.3`.
|
||||
|
||||
## Validation du delta précédent
|
||||
|
||||
`0.1.0-0-pre.5.fix.3` a été validée par l'utilisateur le 2026-09-16.
|
||||
|
||||
Les résultats fournis étaient propres pour :
|
||||
|
||||
- formatage Rust ;
|
||||
- audits Rust/workspace ;
|
||||
- audit Markdown : `1 table(s), 43 file(s)` ;
|
||||
- `cargo check --workspace` ;
|
||||
- Clippy global strict ;
|
||||
- test ciblé `engine-v1-sdl` ;
|
||||
- runners SDL3 Reflex et Snake.
|
||||
|
||||
Les runners ont utilisé `sdl3 0.20.0` / `sdl3-sys 0.7.1` et se sont fermés proprement.
|
||||
|
||||
## Objectifs
|
||||
|
||||
- préparer le projet Gradle Android réel sans introduire prématurément le `cdylib` Rust ;
|
||||
- utiliser l'AAR officiel SDL3 comme frontière Android commune ;
|
||||
- conserver Java comme langage Android du projet ;
|
||||
- réduire la taille initiale des fenêtres Desktop et autoriser leur redimensionnement.
|
||||
|
||||
## Desktop
|
||||
|
||||
Les runners portrait utilisent désormais une fenêtre initiale :
|
||||
|
||||
```text
|
||||
405 × 720
|
||||
```
|
||||
|
||||
La fenêtre SDL3 est redimensionnable.
|
||||
|
||||
Cette dimension est une taille physique de développement, pas une résolution logique de gameplay.
|
||||
|
||||
## Android
|
||||
|
||||
Le projet Android introduit :
|
||||
|
||||
- AGP `9.4.0` ;
|
||||
- `compileSdk 36` ;
|
||||
- `targetSdk 36` ;
|
||||
- `minSdk 21` ;
|
||||
- Java 17 ;
|
||||
- SDL3 AAR `3.4.16` ;
|
||||
- module `common` Android Library ;
|
||||
- modules applications `game-reflex-poc` et `game-snake-poc` ;
|
||||
- manifests de lancement portrait ;
|
||||
- `SaseGameActivity` dérivée de `org.libsdl.app.SDLActivity`.
|
||||
|
||||
L'AAR SDL3 reste externe et n'est pas commité dans le dépôt.
|
||||
|
||||
## Découpage volontaire de la roadmap
|
||||
|
||||
Le précédent objectif `0-pre.6` regroupait trop de frontières à la fois : Gradle, AAR SDL3, NDK, Rust `cdylib` et lancement.
|
||||
|
||||
Il est scindé en :
|
||||
|
||||
- `0-pre.6` : projet Gradle + AAR + Java SDLActivity ;
|
||||
- `0-pre.7` : Rust Android `cdylib` + point d'entrée SDL + premier APK lancé ;
|
||||
- `0-pre.8` : Java/JNI services + input tactile.
|
||||
|
||||
## Validation Rust à exécuter par l'utilisateur
|
||||
|
||||
Le delta modifie du Rust :
|
||||
|
||||
```bash
|
||||
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é SDL3 :
|
||||
|
||||
```bash
|
||||
cargo test -p engine-v1-sdl --all-targets --all-features
|
||||
```
|
||||
|
||||
Smokes Desktop :
|
||||
|
||||
```bash
|
||||
cargo run -p game-reflex-poc-desktop
|
||||
cargo run -p game-snake-poc-desktop
|
||||
```
|
||||
|
||||
Vérifier notamment que :
|
||||
|
||||
- la fenêtre initiale est sensiblement plus petite que précédemment ;
|
||||
- elle est redimensionnable ;
|
||||
- `Escape` et la fermeture système restent fonctionnels.
|
||||
|
||||
## Préflight Android
|
||||
|
||||
Vérifier Java :
|
||||
|
||||
```bash
|
||||
java -version
|
||||
```
|
||||
|
||||
Une JVM 17 doit être disponible pour AGP 9.4.
|
||||
|
||||
Placer l'AAR officiel SDL3 :
|
||||
|
||||
```text
|
||||
Android/libs/SDL3-3.4.16.aar
|
||||
```
|
||||
|
||||
Le build Gradle est alors validable avec Gradle `9.6.0` ou via Android Studio compatible AGP 9.4.
|
||||
|
||||
Si une installation Gradle 9.6.0 est disponible :
|
||||
|
||||
```bash
|
||||
cd Android
|
||||
gradle :common:assembleDebug
|
||||
gradle :game-reflex-poc:assembleDebug
|
||||
gradle :game-snake-poc:assembleDebug
|
||||
cd ..
|
||||
```
|
||||
|
||||
Le lancement des APK n'est pas une gate de ce delta : le `cdylib` Rust et le point d'entrée SDL Android seront ajoutés en `0-pre.7`.
|
||||
|
||||
## Règle de transition
|
||||
|
||||
Si les gates Rust sont propres et que la synchronisation/build Android Java+SDL3 AAR est propre sur la machine équipée, passer automatiquement à `0.1.0-0-pre.7`.
|
||||
|
||||
En cas d'échec provoqué par les fichiers de ce delta, produire `0.1.0-0-pre.6.fix.1`.
|
||||
Reference in New Issue
Block a user