diff --git a/Cargo.toml b/Cargo.toml index afe5eca..e74590d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,7 +6,7 @@ resolver = "3" members = ["crates/ksp-app-config-desk", "crates/ksp-app-solprices-desk", "crates/ksp-app-wallet-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-interface-lib", "crates/ksp-logging-lib", "crates/ksp-offchain-transport-lib", "crates/ksp-onchain-transport-lib", "crates/ksp-program-api", "crates/ksp-store-api", "crates/ksp-wallet-lib"] [workspace.package] -version = "0.3.1-pre.3" +version = "0.3.1-pre.3-fix.1" edition = "2024" license = "MIT" repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project" diff --git a/crates/ksp-store-api/src/model/raw_primitives.rs b/crates/ksp-store-api/src/model/raw_primitives.rs index 8014940..7258333 100644 --- a/crates/ksp-store-api/src/model/raw_primitives.rs +++ b/crates/ksp-store-api/src/model/raw_primitives.rs @@ -441,7 +441,7 @@ fn valid_raw_code(value: &str) -> bool { if value.is_empty() || value.len() > crate::MAX_RAW_CODE_BYTES { return false; } - return value.bytes().all(|byte| byte.is_ascii_alphanumeric() || matches!(byte, b'_' | b'-' | b'.' | b':')); + return value.bytes().all(|byte| return byte.is_ascii_alphanumeric() || matches!(byte, b'_' | b'-' | b'.' | b':')); } #[cfg(test)] diff --git a/deltas/0.3.1/pre.003-fix.001.md b/deltas/0.3.1/pre.003-fix.001.md new file mode 100644 index 0000000..7b668bb --- /dev/null +++ b/deltas/0.3.1/pre.003-fix.001.md @@ -0,0 +1,93 @@ + + + +# Delta `0.3.1-pre.003-fix.001` — conformité Clippy `implicit_return` + +## Base + +```text +0.3.1-pre.003 +``` + +Le gate opérateur de `pre.003` confirme : + +- `cargo fmt --all` propre ; +- audits Rust/Markdown propres ; +- `cargo check --workspace` propre ; +- `cargo test -p ksp-store-api` propre : 6 unitaires, 2 dependency-boundary, 3 public-api ; +- `cargo clippy --workspace --all-targets` échoue uniquement sur `clippy::implicit_return` dans `valid_raw_code`. + +## Objet + +Corriger exclusivement le lint Clippy signalé dans la closure passée à `Iterator::all` : + +```text +crates/ksp-store-api/src/model/raw_primitives.rs +``` + +Le workspace impose `-D clippy::implicit-return`. La closure exprime donc explicitement son `return` sans changer la condition de validation des logical RAW codes. + +## Changement fonctionnel + +```text +aucun +``` + +La condition reste exactement : + +```text +ASCII alphanumeric +ou `_`, `-`, `.`, `:` +``` + +Les bornes, erreurs, API publique, modèles RAW, provenance, payload, dépendances et tests restent inchangés. + +## Version Cargo + +Correctif ciblé sans nouvelle tranche fonctionnelle. Conformément au workflow de versioning KSP, `workspace.package.version` devient : + +```text +0.3.1-pre.3-fix.1 +``` + +## Fichiers inclus dans le payload + +```text +Cargo.toml +crates/ksp-store-api/src/model/raw_primitives.rs +deltas/0.3.1/pre.003-fix.001.md +``` + +`Cargo.toml` est inclus pour rendre le fix directement applicable avec le workflow d'overlay KSP et porte l'identité exacte du fix : + +```text +workspace.package.version = "0.3.1-pre.3-fix.1" +``` + +Le seul fichier de code modifié est : + +```text +crates/ksp-store-api/src/model/raw_primitives.rs +``` + +## Fichier ajouté + +```text +deltas/0.3.1/pre.003-fix.001.md +``` + +## Validations exécutées dans l'environnement de génération + +```text +python3 scripts/audit_rust_workspace_rules.py +python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.1 +``` + +`cargo`, `rustc` et `rustfmt` ne sont pas disponibles dans l'environnement de génération. Le gate opérateur doit donc rejouer : + +```text +cargo fmt --all +cargo check --workspace +cargo clippy --workspace --all-targets +cargo test -p ksp-store-api +```