Deriving `zeroize::Zeroize` requires the `Zeroize` trait to already be in scope
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Ejecuta la reproducción mínima en src/lib.rs e inspecciona la expansión del derive de zeroize::Zeroize, usando la comparación del derive de serde como contexto. Confirma que el problema está resuelto cuando derivar zeroize::Zeroize ya no requiere un import explícito de use zeroize::Zeroize, mientras la reproducción sigue compilando.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi, while trying to add zeroize support to a crate I'm making, I found that I was getting a weird error about the Zeroize trait not being in scope:
error[E0405]: cannot find trait `Zeroize` in this scope
--> src\lib.rs:13:40
|
13 | #[cfg_attr(feature = "zeroize", derive(zeroize::Zeroize))]
| ^^^^^^^^^^^^^^^^ not found in this scope
|
= note: this error originates in the derive macro `zeroize::Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider importing this trait
|
3 + use zeroize::Zeroize;
|
Here's a minimal reproduction (unfortunately I can't send a playground link, since the playground doesn't provide the zeroize derives):
#[derive(zeroize::Zeroize)]
struct A;
The fix is relatively simple:
use zeroize::Zeroize;
#[derive(zeroize::Zeroize)]
struct A;
though having a trait in scope solely for a derive feels... wrong.
I will note that serde is able to derive without its relevant traits in scope:
#[derive(serde::Serialize, serde::Deserialize)]
struct A;
So perhaps zeroize should be changed to do the same?
Thank you for your time, and hopefully this is a relatively easy fix.
- Lenguaje dominante
- Rust
- Estrellas
- 674
- Forks
- 170
- Merge medio
- 1 d 12 h
- PR fusionados (30 d)
- 10
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
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 RustCrypto/utils
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
RustCrypto/utils#1546 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
RustCrypto/utils#1537 · 7 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
RustCrypto/utils#1534 · 2 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
RustCrypto/utils#1529 · 4 comentarios ·
-
x86: guard CPUID leaf 7 by the maximum basic leaf; AVX detection may need XMM+YMM XCR0 state Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
RustCrypto/utils#1510 · 1 comentario ·
Todos los issues de RustCrypto/utils
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
bug good first issue package: quic
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
-
`dora trace view` sends a non-canonical full UUID as-is, so a valid trace ID shows "No spans found" Abiertocli coordinator rust
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
area: tasks enhancement good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Jason-jo17/Polybench#15 · 1 comentario ·