rust-cli / rust-cli/human-panic
Custom path to save a panic report
Personne n'a encore pris cette issue.
- Langage dominant
- Rust
- Étoiles
- 1.9k
- Forks
- 65
- Merge moyen
- 2 h 48 min
- PR mergées (30 j)
- 3
Description
Currently Report::persist uses env::temp_dir() to get a base folder to save a panic report
/// Write a file to disk.
pub fn persist(&self) -> Result<PathBuf, Box<dyn Error + 'static>> {
let uuid = Uuid::new_v4().hyphenated().to_string();
let tmp_dir = env::temp_dir();
let file_name = format!("report-{}.toml", &uuid);
let file_path = Path::new(&tmp_dir).join(file_name);
let toml = self.serialize().expect("only using toml-compatible types");
std::fs::write(&file_path, toml.as_bytes())?;
Ok(file_path)
}
However on some platforms TMPDIR may not be defined or be RO (yes, weird but true) . Sure TMPDIR may be overwritten when starting application however it would be nice to configure a base dir either as a parameter to ::handle_dump (breaking change) of through Metadata object
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par lire Report::persist ainsi que les points d’entrée ::handle_dump et Metadata mentionnés dans l’issue afin de comprendre où le répertoire des rapports est sélectionné. Décidez comment le répertoire de base doit être configuré, puis vérifiez qu’un rapport peut être écrit à l’emplacement configuré tout en préservant le comportement par défaut existant.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- rust
- Domaine
- tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100