bootstrap/core/config/toml/
dist.rs

1//! This module defines the `Dist` struct, which represents the `[dist]` table
2//! in the `bootstrap.toml` configuration file.
3//!
4//! The `[dist]` table contains options related to the distribution process,
5//! including signing, uploading artifacts, source tarballs, compression settings,
6//! and inclusion of specific tools.
7
8use serde::{Deserialize, Deserializer};
9
10use crate::core::config::Merge;
11use crate::core::config::toml::ReplaceOpt;
12use crate::{HashSet, PathBuf, define_config, exit};
13
14define_config! {
15    #[derive(Default)]
16    struct Dist {
17        sign_folder: Option<String> = "sign-folder",
18        upload_addr: Option<String> = "upload-addr",
19        src_tarball: Option<bool> = "src-tarball",
20        compression_formats: Option<Vec<String>> = "compression-formats",
21        compression_profile: Option<String> = "compression-profile",
22        include_mingw_linker: Option<bool> = "include-mingw-linker",
23        vendor: Option<bool> = "vendor",
24    }
25}