Unified · Split
| @@ -85,6 +85,18 @@ pub enum ArgumentSafety<'a> { · 84 unmodified lines | ||
| 85 | 85 | /// parameters, but never be accepted as an instance of this type and then reconstructed, to maintain |
| 86 | 86 | /// validity guarantees. |
| 87 | 87 | /// |
| 88 | +/// # Serialization | |
| 89 | +/// | |
| 90 | +/// This type does not implement `Into<String>` or `From<Url> for String` because URLs can contain | |
| 91 | +/// non-UTF-8 sequences in the path component. Use [to_bstring()](Url::to_bstring()) for lossless | |
| 92 | +/// serialization, or use the [`Display`](std::fmt::Display) trait for a UTF-8 representation that | |
| 93 | +/// redacts passwords for safe logging. | |
| 94 | +/// | |
| 95 | +/// When the `serde` feature is enabled, this type implements `serde::Serialize` and `serde::Deserialize`, | |
| 96 | +/// which will serialize *all* fields including passwords. The password is never serialized through the | |
| 97 | +/// `Display` trait or in any other context unless the `serde` feature is enabled and serde serialization | |
| 98 | +/// is explicitly used. | |
| 99 | +/// | |
| 88 | 100 | /// # Security Warning |
| 89 | 101 | /// |
| 90 | 102 | /// URLs may contain passwords and using standard [formatting](std::fmt::Display) will redact |