estado: clasificación Rust corregida (había ~180 Rust escondidas como C) + musl
Señal fuerte para Rust: la receta copia su binario de target/release/ en las fases. Medido 225 recetas, 0 con dep go ⇒ sin falsos positivos con Go (findutils entra bien: es uutils/findutils, find en Rust). LÍMITE: un crate BuildSys::Cargo PURO sin fase install propia (zellij) no deja rastro en el TOML y cae a 'c' — sólo se ve bajando la fuente, que el generador no hace. Efecto: clases c 322→141, rust 45→226 (la mayoría eran Rust auto sin fase cargo explícita). Y la LECTURA de la deuda cambia: la deuda C REAL es sólo 8 (casi toda saldada esta sesión), no 74. Lo que queda es Rust (15, CLI pesados → granja), GUI (29 → granja), Go (5 → worker), kernel (4). musl sellado (base). Avance: sealed 703→704, debt 53→52. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -45,8 +45,12 @@ def classify(name, d):
|
||||
# Go: declara el toolchain `go` como dep de build (la vía Go auto lo exige). 362 recetas.
|
||||
if "go" in deps and name != "go":
|
||||
return "go"
|
||||
# Rust: fase cargo, o dep de un toolchain rust, o el linker zig-cc wrapper típico de cargo.
|
||||
if "cargo" in blob or "cargo" in deps or "rust" in deps:
|
||||
# Rust: fase cargo, dep rust, o —la señal fuerte— copia el binario de `target/release/` en sus
|
||||
# fases (todo binario cargo sale de ahí). Medido: 225 recetas lo tienen, 0 con dep `go` ⇒ sin
|
||||
# falsos positivos con Go. LÍMITE conocido: un crate BuildSys::Cargo PURO (Cargo.toml en el árbol,
|
||||
# sin fase install propia — p.ej. zellij) no deja rastro en el TOML y cae a "c"; sólo se distingue
|
||||
# bajando la fuente, que este generador no hace a propósito.
|
||||
if "cargo" in blob or "cargo" in deps or "rust" in deps or "target/release" in blob:
|
||||
return "rust"
|
||||
if any(g in name for g in GUI_RE):
|
||||
return "gui"
|
||||
|
||||
Reference in New Issue
Block a user