fix(core): apply clippy suggestions (#10394)

* fix(core): apply clippy suggestions

* more fixes
This commit is contained in:
Lucas Fernandes Nogueira 2024-07-29 05:53:53 -03:00 committed by GitHub
parent e1776946ad
commit efdce038bb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
19 changed files with 69 additions and 64 deletions

12
Cargo.lock generated
View File

@ -3470,8 +3470,9 @@ dependencies = [
[[package]]
name = "specta"
version = "2.0.0-rc.15"
source = "git+https://github.com/oscartbeaumont/specta?branch=optional-feature#e4cce4040a6cb8048273b531fe79b367fbac96c5"
version = "2.0.0-rc.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5fd9fd8ec58ec895d2e947a7b431b5c8d2218956a1e378bbfdc3b7414109e2c5"
dependencies = [
"paste",
"specta-macros",
@ -3480,13 +3481,14 @@ dependencies = [
[[package]]
name = "specta-macros"
version = "2.0.0-rc.15"
source = "git+https://github.com/oscartbeaumont/specta?branch=optional-feature#e4cce4040a6cb8048273b531fe79b367fbac96c5"
version = "2.0.0-rc.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "649713524bd94bb77336b3d2924e3686a88de3cea780a57d45051923d5a5add4"
dependencies = [
"Inflector",
"proc-macro2",
"quote",
"syn 2.0.71",
"syn 2.0.72",
]
[[package]]

View File

@ -355,7 +355,7 @@ impl WebviewAttributes {
///
/// - **Windows**: Controls WebView2's [`IsZoomControlEnabled`](https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.2420.47#iszoomcontrolenabled) setting.
/// - **MacOS / Linux**: Injects a polyfill that zooms in and out with `ctrl/command` + `-/=`,
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
///
/// - **Android / iOS**: Unsupported.
#[must_use]

View File

@ -361,7 +361,7 @@ pub trait WindowBuilder: WindowBuilderBase {
/// - **Windows:**
/// - `false` has no effect on decorated window, shadows are always ON.
/// - `true` will make ndecorated window have a 1px white border,
/// and on Windows 11, it will have a rounded corners.
/// and on Windows 11, it will have a rounded corners.
/// - **Linux:** Unsupported.
#[must_use]
fn shadow(self, enable: bool) -> Self;

View File

@ -172,7 +172,7 @@ pub fn is_configuration_file(target: Target, path: &Path) -> bool {
/// - `tauri.windows.conf.json[5]` or `Tauri.windows.toml` on Windows
/// - `tauri.android.conf.json[5]` or `Tauri.android.toml` on Android
/// - `tauri.ios.conf.json[5]` or `Tauri.ios.toml` on iOS
/// Merging the configurations using [JSON Merge Patch (RFC 7396)].
/// Merging the configurations using [JSON Merge Patch (RFC 7396)].
///
/// [JSON Merge Patch (RFC 7396)]: https://datatracker.ietf.org/doc/html/rfc7396.
pub fn read_from(target: Target, root_dir: PathBuf) -> Result<Value, ConfigError> {
@ -224,15 +224,15 @@ pub fn does_supported_file_name_exist(target: Target, path: impl Into<PathBuf>)
///
/// Hierarchy:
/// 1. Check if `tauri.conf.json` exists
/// a. Parse it with `serde_json`
/// b. Parse it with `json5` if `serde_json` fails
/// c. Return original `serde_json` error if all above steps failed
/// a. Parse it with `serde_json`
/// b. Parse it with `json5` if `serde_json` fails
/// c. Return original `serde_json` error if all above steps failed
/// 2. Check if `tauri.conf.json5` exists
/// a. Parse it with `json5`
/// b. Return error if all above steps failed
/// a. Parse it with `json5`
/// b. Return error if all above steps failed
/// 3. Check if `Tauri.json` exists
/// a. Parse it with `toml`
/// b. Return error if all above steps failed
/// a. Parse it with `toml`
/// b. Return error if all above steps failed
/// 4. Return error if all above steps failed
pub fn parse(target: Target, path: impl Into<PathBuf>) -> Result<(Config, PathBuf), ConfigError> {
do_parse(target, path.into())

View File

@ -23,7 +23,7 @@
//! - **isolation**: Enables the isolation pattern. Enabled by default if the `app > security > pattern > use` config option is set to `isolation` on the `tauri.conf.json` file.
//! - **custom-protocol**: Feature managed by the Tauri CLI. When enabled, Tauri assumes a production environment instead of a development one.
//! - **devtools**: Enables the developer tools (Web inspector) and [`window::Window#method.open_devtools`]. Enabled by default on debug builds.
//! On macOS it uses private APIs, so you can't enable it if your app will be published to the App Store.
//! On macOS it uses private APIs, so you can't enable it if your app will be published to the App Store.
//! - **native-tls**: Provides TLS support to connect over HTTPS.
//! - **native-tls-vendored**: Compile and statically link to a vendored copy of OpenSSL.
//! - **rustls-tls**: Provides TLS support to connect over HTTPS using rustls.

View File

@ -17,7 +17,7 @@ impl CheckMenuItemBuilder {
/// Create a new menu item builder.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<S: AsRef<str>>(text: S) -> Self {
Self {
id: None,
@ -31,7 +31,7 @@ impl CheckMenuItemBuilder {
/// Create a new menu item builder with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<I: Into<MenuId>, S: AsRef<str>>(id: I, text: S) -> Self {
Self {
id: Some(id.into()),

View File

@ -22,7 +22,7 @@ impl<'a> IconMenuItemBuilder<'a> {
/// Create a new menu item builder.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<S: AsRef<str>>(text: S) -> Self {
Self {
id: None,
@ -37,7 +37,7 @@ impl<'a> IconMenuItemBuilder<'a> {
/// Create a new menu item builder with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<I: Into<MenuId>, S: AsRef<str>>(id: I, text: S) -> Self {
Self {
id: Some(id.into()),

View File

@ -16,7 +16,7 @@ impl MenuItemBuilder {
/// Create a new menu item builder.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<S: AsRef<str>>(text: S) -> Self {
Self {
id: None,
@ -29,7 +29,7 @@ impl MenuItemBuilder {
/// Create a new menu item builder with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<I: Into<MenuId>, S: AsRef<str>>(id: I, text: S) -> Self {
Self {
id: Some(id.into()),

View File

@ -48,7 +48,7 @@ impl<'m, R: Runtime, M: Manager<R>> SubmenuBuilder<'m, R, M> {
/// Create a new submenu builder.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<S: AsRef<str>>(manager: &'m M, text: S) -> Self {
Self {
id: None,
@ -62,7 +62,7 @@ impl<'m, R: Runtime, M: Manager<R>> SubmenuBuilder<'m, R, M> {
/// Create a new submenu builder with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<I: Into<MenuId>, S: AsRef<str>>(manager: &'m M, id: I, text: S) -> Self {
Self {
id: Some(id.into()),

View File

@ -15,7 +15,7 @@ impl<R: Runtime> CheckMenuItem<R> {
/// Create a new menu item.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<M, T, A>(
manager: &M,
text: T,
@ -49,7 +49,7 @@ impl<R: Runtime> CheckMenuItem<R> {
/// Create a new menu item with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<M, I, T, A>(
manager: &M,
id: I,

View File

@ -14,7 +14,7 @@ impl<R: Runtime> IconMenuItem<R> {
/// Create a new menu item.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<M, T, A>(
manager: &M,
text: T,
@ -52,7 +52,7 @@ impl<R: Runtime> IconMenuItem<R> {
/// Create a new menu item with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<M, I, T, A>(
manager: &M,
id: I,

View File

@ -15,7 +15,7 @@ impl<R: Runtime> MenuItem<R> {
/// Create a new menu item.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn new<M, T, A>(
manager: &M,
text: T,
@ -48,7 +48,7 @@ impl<R: Runtime> MenuItem<R> {
/// Create a new menu item with the specified id.
///
/// - `text` could optionally contain an `&` before a character to assign this character as the mnemonic
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
/// for this menu item. To display a `&` without assigning a mnemenonic, use `&&`.
pub fn with_id<M, I, T, A>(
manager: &M,
id: I,

View File

@ -73,7 +73,7 @@ impl From<tray_icon::MouseButton> for MouseButton {
/// ## Platform-specific:
///
/// - **Linux**: Unsupported. The event is not emmited even though the icon is shown
/// and will still show a context menu on right click.
/// and will still show a context menu on right click.
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
#[non_exhaustive]
@ -194,7 +194,7 @@ impl<R: Runtime> TrayIconBuilder<R> {
/// ## Platform-specific:
///
/// - **Linux:** Sometimes the icon won't be visible unless a menu is set.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
pub fn new() -> Self {
Self {
inner: tray_icon::TrayIconBuilder::new(),
@ -208,7 +208,7 @@ impl<R: Runtime> TrayIconBuilder<R> {
/// ## Platform-specific:
///
/// - **Linux:** Sometimes the icon won't be visible unless a menu is set.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
pub fn with_id<I: Into<TrayIconId>>(id: I) -> Self {
let mut builder = Self::new();
builder.inner = builder.inner.with_id(id);
@ -230,7 +230,7 @@ impl<R: Runtime> TrayIconBuilder<R> {
/// ## Platform-specific:
///
/// - **Linux:** Sometimes the icon won't be visible unless a menu is set.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
/// Setting an empty [`Menu`](crate::menu::Menu) is enough.
pub fn icon(mut self, icon: Image<'_>) -> Self {
let icon = icon.try_into().ok();
if let Some(icon) = icon {
@ -254,10 +254,10 @@ impl<R: Runtime> TrayIconBuilder<R> {
/// ## Platform-specific
///
/// - **Linux:** The title will not be shown unless there is an icon
/// as well. The title is useful for numerical and other frequently
/// updated information. In general, it shouldn't be shown unless a
/// user requests it as it can take up a significant amount of space
/// on the user's panel. This may not be shown in all visualizations.
/// as well. The title is useful for numerical and other frequently
/// updated information. In general, it shouldn't be shown unless a
/// user requests it as it can take up a significant amount of space
/// on the user's panel. This may not be shown in all visualizations.
/// - **Windows:** Unsupported.
pub fn title<S: AsRef<str>>(mut self, title: S) -> Self {
self.inner = self.inner.with_title(title);
@ -471,10 +471,10 @@ impl<R: Runtime> TrayIcon<R> {
/// ## Platform-specific:
///
/// - **Linux:** The title will not be shown unless there is an icon
/// as well. The title is useful for numerical and other frequently
/// updated information. In general, it shouldn't be shown unless a
/// user requests it as it can take up a significant amount of space
/// on the user's panel. This may not be shown in all visualizations.
/// as well. The title is useful for numerical and other frequently
/// updated information. In general, it shouldn't be shown unless a
/// user requests it as it can take up a significant amount of space
/// on the user's panel. This may not be shown in all visualizations.
/// - **Windows:** Unsupported
pub fn set_title<S: AsRef<str>>(&self, title: Option<S>) -> crate::Result<()> {
let s = title.map(|s| s.as_ref().to_string());

View File

@ -84,7 +84,7 @@ pub enum DownloadEvent<'a> {
/// ## Platform-specific:
///
/// - **macOS**: The second parameter indicating the path the file was saved to is always empty, due to API
/// limitations.
/// limitations.
path: Option<PathBuf>,
/// Indicates if the download succeeded or not.
success: bool,
@ -785,7 +785,7 @@ fn main() {
///
/// - **Windows**: Controls WebView2's [`IsZoomControlEnabled`](https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.2420.47#iszoomcontrolenabled) setting.
/// - **MacOS / Linux**: Injects a polyfill that zooms in and out with `ctrl/command` + `-/=`,
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
///
/// - **Android / iOS**: Unsupported.
#[must_use]
@ -1367,7 +1367,7 @@ fn main() {
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
///
/// # Examples
///
@ -1397,7 +1397,7 @@ tauri::Builder::default()
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// - **Windows:** Unsupported.
///
/// # Examples
@ -1435,7 +1435,7 @@ tauri::Builder::default()
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// - **Windows:** Unsupported.
///
/// # Examples

View File

@ -591,7 +591,7 @@ impl<'a, R: Runtime, M: Manager<R>> WebviewWindowBuilder<'a, R, M> {
/// - **Windows:**
/// - `false` has no effect on decorated window, shadows are always ON.
/// - `true` will make ndecorated window have a 1px white border,
/// and on Windows 11, it will have a rounded corners.
/// and on Windows 11, it will have a rounded corners.
/// - **Linux:** Unsupported.
#[must_use]
pub fn shadow(mut self, enable: bool) -> Self {
@ -876,7 +876,7 @@ impl<'a, R: Runtime, M: Manager<R>> WebviewWindowBuilder<'a, R, M> {
///
/// - **Windows**: Controls WebView2's [`IsZoomControlEnabled`](https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.2420.47#iszoomcontrolenabled) setting.
/// - **MacOS / Linux**: Injects a polyfill that zooms in and out with `ctrl/command` + `-/=`,
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
/// 20% in each step, ranging from 20% to 1000%. Requires `webview:allow-set-webview-zoom` permission
///
/// - **Android / iOS**: Unsupported.
#[must_use]
@ -1031,7 +1031,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// ## Platform-specific:
///
/// - **macOS:** Unsupported. The menu on macOS is app-wide and not specific to one
/// window, if you need to set it, use [`AppHandle::set_menu`] instead.
/// window, if you need to set it, use [`AppHandle::set_menu`] instead.
#[cfg_attr(target_os = "macos", allow(unused_variables))]
pub fn set_menu(&self, menu: Menu<R>) -> crate::Result<Option<Menu<R>>> {
self.webview.window().set_menu(menu)
@ -1042,7 +1042,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// ## Platform-specific:
///
/// - **macOS:** Unsupported. The menu on macOS is app-wide and not specific to one
/// window, if you need to remove it, use [`AppHandle::remove_menu`] instead.
/// window, if you need to remove it, use [`AppHandle::remove_menu`] instead.
pub fn remove_menu(&self) -> crate::Result<Option<Menu<R>>> {
self.webview.window().remove_menu()
}
@ -1395,7 +1395,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// - **Windows:**
/// - `false` has no effect on decorated window, shadow are always ON.
/// - `true` will make ndecorated window have a 1px white border,
/// and on Windows 11, it will have a rounded corners.
/// and on Windows 11, it will have a rounded corners.
/// - **Linux:** Unsupported.
pub fn set_shadow(&self, enable: bool) -> crate::Result<()> {
self.webview.window().set_shadow(enable)
@ -1680,7 +1680,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
///
/// # Examples
///
@ -1705,7 +1705,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// - **Windows:** Unsupported.
///
/// # Examples
@ -1738,7 +1738,7 @@ impl<R: Runtime> WebviewWindow<R> {
/// ## Platform-specific
///
/// - **macOS:** Only supported on macOS 10.15+.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// This is a private API on macOS, so you cannot use this if your application will be published on the App Store.
/// - **Windows:** Unsupported.
///
/// # Examples

View File

@ -680,7 +680,7 @@ impl<'a, R: Runtime, M: Manager<R>> WindowBuilder<'a, R, M> {
/// - **Windows:**
/// - `false` has no effect on decorated window, shadows are always ON.
/// - `true` will make undecorated window have a 1px white border,
/// and on Windows 11, it will have a rounded corners.
/// and on Windows 11, it will have a rounded corners.
/// - **Linux:** Unsupported.
#[must_use]
pub fn shadow(mut self, enable: bool) -> Self {
@ -1157,7 +1157,7 @@ tauri::Builder::default()
/// ## Platform-specific:
///
/// - **macOS:** Unsupported. The menu on macOS is app-wide and not specific to one
/// window, if you need to set it, use [`AppHandle::set_menu`] instead.
/// window, if you need to set it, use [`AppHandle::set_menu`] instead.
#[cfg_attr(target_os = "macos", allow(unused_variables))]
pub fn set_menu(&self, menu: Menu<R>) -> crate::Result<Option<Menu<R>>> {
let prev_menu = self.remove_menu()?;
@ -1203,7 +1203,7 @@ tauri::Builder::default()
/// ## Platform-specific:
///
/// - **macOS:** Unsupported. The menu on macOS is app-wide and not specific to one
/// window, if you need to remove it, use [`AppHandle::remove_menu`] instead.
/// window, if you need to remove it, use [`AppHandle::remove_menu`] instead.
pub fn remove_menu(&self) -> crate::Result<Option<Menu<R>>> {
let prev_menu = self.menu_lock().take().map(|m| m.menu);
@ -1743,7 +1743,7 @@ impl<R: Runtime> Window<R> {
/// - **Windows:**
/// - `false` has no effect on decorated window, shadow are always ON.
/// - `true` will make undecorated window have a 1px white border,
/// and on Windows 11, it will have a rounded corners.
/// and on Windows 11, it will have a rounded corners.
/// - **Linux:** Unsupported.
pub fn set_shadow(&self, enable: bool) -> crate::Result<()> {
self

View File

@ -10,3 +10,6 @@ path = "../../tauri"
[dev-dependencies]
tempfile = "3"
[features]
process-relaunch-dangerous-allow-symlink-macos = []

View File

@ -5368,9 +5368,9 @@ dependencies = [
[[package]]
name = "time"
version = "0.3.34"
version = "0.3.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
dependencies = [
"deranged",
"itoa 1.0.10",
@ -5389,9 +5389,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
version = "0.2.17"
version = "0.2.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
dependencies = [
"num-conv",
"time-core",

View File

@ -142,7 +142,7 @@ pub fn command(options: Options) -> Result<()> {
for (capability, path) in &mut capabilities {
capability.insert_permission(options.identifier.clone());
std::fs::write(&path, capability.to_string()?)?;
std::fs::write(&*path, capability.to_string()?)?;
log::info!(action = "Added"; "permission `{}` to `{}` at {}", options.identifier, capability.identifier(), dunce::simplified(path).display());
}