consider using/copying backtrace-ext to more properly filter the backtrace
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 42/100
Línea de trabajo
Comienza en src/report.rs, en las dos secciones codificadas de forma rígida para omitir frames enlazadas en el issue, y compara después su comportamiento con backtrace_ext::short_frames_strict. Comprueba las implicaciones sobre las dependencias y el MSRV descritas en el issue; la tarea estará terminada cuando se sustituya el filtrado frágil por el comportamiento propuesto y se verifique que el informe de panic sigue mostrando el stack previsto.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
human-panic currently skips a hardcoded number of frames which is... not what you want to do:
https://github.com/rust-cli/human-panic/blob/c0e52f47213eebfb3212f8029ff5705fd0e0c091/src/report.rs#L47-L52
https://github.com/rust-cli/human-panic/blob/c0e52f47213eebfb3212f8029ff5705fd0e0c091/src/report.rs#L66-L71
Rust emits two magic frame names to delimit the "runtime glue" from the "real stack". Unfortunately the backtrace crate doesn't support handling that for you. As such I made backtrace-ext::short_frames_strict to do that for everyone who is implementing this kind of logic.
The example is basically already human-panic's impl because I found this problem in miette which copied your impl. I can do the PR for you but I wasn't sure if you were ok with adding this dep (it's basically one complicated function but slightly factored out so I could unit test the crap out of it because you should never trust backtraces to provide decent input).
(NB: at the time of filing this issue I've published 0.2.0 but docs.rs is super backlogged. 0.2.0 includes fixes from me adding all the comprehensive tests, and also removes the "re-export of all of Backtrace" because I realized it's goody. If you see this issue soon enough just know that this line in the example changed to import Backtrace from backtrace and not backtrace-ext.)
(0.2.0 is live now, also I cut 0.2.1 to lower the msrv)
- Lenguaje dominante
- Rust
- Estrellas
- 1.9k
- Forks
- 65
- Merge medio
- 4 h 10 min
- PR fusionados (30 d)
- 2
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de rust-cli/human-panic
-
breaking-change enhancement
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
rust-cli/human-panic#194 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-cli/human-panic#167 · 2 comentarios ·
-
Dependency DashboardAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
rust-cli/human-panic#106 ·
-
Custom error messageAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-cli/human-panic#54 · 11 comentarios · 19 reacciones ·
-
Tracking Issue: v2.0.0Abiertoenhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
rust-cli/human-panic#46 · 8 comentarios ·
Todos los issues de rust-cli/human-panic
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
bytecodealliance/wasmtime#14433 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día