Co-authored-by: Lorenzo Lewis <lorenzo_lewis@icloud.com>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
This commit is contained in:
Josh Soref 2022-09-03 00:03:02 -04:00 committed by GitHub
parent 14f337d8ad
commit 8fd79b8fc0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
46 changed files with 71 additions and 71 deletions

View File

@ -24,7 +24,7 @@ Prerequisites are mainly derived from VS Code's instructions for usage of develo
### A note on filesystem performance
Due to limititations in how Docker shares files between the Docker host and a container, it's also recommended that developers [clone Tauri source code into a container volume](https://code.visualstudio.com/remote/advancedcontainers/improve-performance#_use-clone-repository-in-container-volume). This is optional, but highly advised as many filesystem/IO heavy opearations (`cargo build`, `yarn install`, etc) will be very slow if they operate on directories shared with a Docker container from the Docker host.
Due to limitations in how Docker shares files between the Docker host and a container, it's also recommended that developers [clone Tauri source code into a container volume](https://code.visualstudio.com/remote/advancedcontainers/improve-performance#_use-clone-repository-in-container-volume). This is optional, but highly advised as many filesystem/IO heavy operations (`cargo build`, `yarn install`, etc) will be very slow if they operate on directories shared with a Docker container from the Docker host.
To do this, open your project with VS Code and run **Remote-Containers: Clone Repository in Container Volume...** from the Command Palette (<kbd>F1</kbd>).

View File

@ -50,7 +50,7 @@ First, [join our Discord server](https://discord.gg/SpmNs4S) and let us know tha
To set up your machine for development, follow the [Tauri setup guide](https://tauri.app/v1/guides/getting-started/prerequisites/) to get all the tools you need to develop Tauri apps. The only additional tool you may need is [Yarn](https://yarnpkg.com/), it is only required if you are developing the Node CLI or API packages (`tooling/cli/node` and `tooling/api`). Next, fork and clone this repo. It is structured as a monorepo, which means that all the various Tauri packages are under the same repository. The development process varies depending on what part of Tauri you are contributing to, see the guides below for per-package instructions.
Some Tauri packages will be automatically built when running one of the examples. Others, however, will need to be built beforehand. To build these automatically, run the `.scripts/setup.sh` (Linux and macOS) or `.scripts/setup.ps1` (Windows) script. This will install the Rust and Node.js CLI and build the JS API. After that, you should be able to run all the examples. Note that the setup script should be executed from the root folder of the respository in order to run correctly.
Some Tauri packages will be automatically built when running one of the examples. Others, however, will need to be built beforehand. To build these automatically, run the `.scripts/setup.sh` (Linux and macOS) or `.scripts/setup.ps1` (Windows) script. This will install the Rust and Node.js CLI and build the JS API. After that, you should be able to run all the examples. Note that the setup script should be executed from the root folder of the repository in order to run correctly.
### Packages Overview
@ -87,4 +87,4 @@ The JS API provides bindings between the developer's JS in the Webview and the b
## Financial Contribution
Tauri is an MIT-licensed open source project. Its ongoing development can be supported via [Github Sponsors](https://github.com/sponsors/nothingismagick) or [Open Collective](https://opencollective.com/tauri). We prefer Github Sponsors as donations made are doubled through the matching fund program.
Tauri is an MIT-licensed open source project. Its ongoing development can be supported via [GitHub Sponsors](https://github.com/sponsors/nothingismagick) or [Open Collective](https://opencollective.com/tauri). We prefer GitHub Sponsors as donations made are doubled through the matching fund program.

View File

@ -24,7 +24,7 @@ concurrency:
cancel-in-progress: true
jobs:
build-artifacs:
build-artifacts:
runs-on: ${{ matrix.platform }}
strategy:

View File

@ -43,7 +43,7 @@ jobs:
python-version: '3.x'
architecture: x64
- name: install depedencies
- name: install dependencies
run: |
python -m pip install --upgrade pip
sudo apt-get update

View File

@ -40,7 +40,7 @@ This is common code that is reused in many places and offers useful utilities li
### Tauri Tooling
#### [api](https://github.com/tauri-apps/tauri/tree/dev/tooling/api) [TS -> JS]
A typescript library that creates `cjs` and `esm` Javascript endpoints for you to import into your Frontend framework so that the Webview can call and listen to backend activity. We also ship the pure typescript, because for some frameworks this is more optimal. It uses the message passing of webviews to their hosts.
A TypeScript library that creates `cjs` and `esm` JavaScript endpoints for you to import into your Frontend framework so that the Webview can call and listen to backend activity. We also ship the pure TypeScript, because for some frameworks this is more optimal. It uses the message passing of webviews to their hosts.
#### [bundler](https://github.com/tauri-apps/tauri/tree/dev/tooling/bundler) [RUST / SHELL]
The bundler is a library that builds a Tauri App for the platform triple it detects / is told. At the moment it currently supports macOS, Windows and Linux - but in the near future will support mobile platforms as well. May be used outside of Tauri projects.

View File

@ -106,7 +106,7 @@ pub struct WindowsAttributes {
///
/// For MSVC the Windows SDK has to be installed. It comes with the resource compiler rc.exe.
/// This should be set to the root directory of the Windows SDK, e.g., "C:\Program Files (x86)\Windows Kits\10" or,
/// if multiple 10 versions are installed, set it directly to the corret bin directory "C:\Program Files (x86)\Windows Kits\10\bin\10.0.14393.0\x64"
/// if multiple 10 versions are installed, set it directly to the correct bin directory "C:\Program Files (x86)\Windows Kits\10\bin\10.0.14393.0\x64"
///
/// If it is left unset, it will look up a path in the registry, i.e. HKLM\SOFTWARE\Microsoft\Windows Kits\Installed Roots
sdk_dir: Option<PathBuf>,

View File

@ -70,7 +70,7 @@ pub fn get_config(path: &Path) -> Result<(Config, PathBuf), CodegenConfigError>
let config = serde_json::from_value(config)?;
// Reset workding directory.
// Reset working directory.
std::env::set_current_dir(old_cwd).map_err(CodegenConfigError::CurrentDir)?;
Ok((config, parent))

View File

@ -88,7 +88,7 @@ pub fn derive_command_module(input: TokenStream) -> TokenStream {
/// The `run` method takes a `tauri::endpoints::InvokeContext`
/// and returns a `tauri::Result<tauri::endpoints::InvokeResponse>`.
/// It matches on each enum variant and call a method with name equal to the variant name, lowercased and snake_cased,
/// passing the the context and the variant's fields as arguments.
/// passing the context and the variant's fields as arguments.
/// That function must also return the same `Result<InvokeResponse>`.
#[doc(hidden)]
#[proc_macro_attribute]

View File

@ -134,7 +134,7 @@ pub trait WindowBuilder: WindowBuilderBase {
#[must_use]
fn visible(self, visible: bool) -> Self;
/// Whether the the window should be transparent. If this is true, writing colors
/// Whether the window should be transparent. If this is true, writing colors
/// with alpha values different than `1.0` will produce a transparent window.
#[cfg(any(not(target_os = "macos"), feature = "macos-private-api"))]
#[cfg_attr(

View File

@ -671,7 +671,7 @@ pub struct CliArg {
pub required: bool,
/// Sets an arg that override this arg's required setting
/// i.e. this arg will be required unless this other argument is present.
#[serde(alias = "requred-unless-present")]
#[serde(alias = "required-unless-present")]
pub required_unless_present: Option<String>,
/// Sets args that override this arg's required setting
/// i.e. this arg will be required unless all these other arguments are present.
@ -2551,7 +2551,7 @@ pub struct PackageConfig {
/// App name.
#[serde(alias = "product-name")]
pub product_name: Option<String>,
/// App version. It is a semver version number or a path to a `package.json` file contaning the `version` field.
/// App version. It is a semver version number or a path to a `package.json` file containing the `version` field.
#[serde(deserialize_with = "version_deserializer", default)]
pub version: Option<String>,
}

View File

@ -23,7 +23,7 @@ pub enum Error {
#[error("CSPRNG error")]
Csprng(#[from] CsprngError),
/// Something went wrong with decryping an AES-GCM payload
/// Something went wrong with decrypting an AES-GCM payload
#[error("AES-GCM")]
Aes,

View File

@ -1357,7 +1357,7 @@ Note: The order that event handlers are called when triggered is still non-deter
- The HTTP API was improved with client caching and better payload and response types.
- [a7bc472](https://www.github.com/tauri-apps/tauri/commit/a7bc472e994730071f960d09a12ac85296a080ae) refactor(core): improve HTTP API, closes [#1098](https://www.github.com/tauri-apps/tauri/pull/1098) ([#1237](https://www.github.com/tauri-apps/tauri/pull/1237)) on 2021-02-15
- [a6def70](https://www.github.com/tauri-apps/tauri/commit/a6def7066eec19c889b0f14cc1e475bf209a332e) Refactor(tauri): move tauri-api and tauri-updater to tauri ([#1455](https://www.github.com/tauri-apps/tauri/pull/1455)) on 2021-04-11
- Added new Javascript API to extract `name`, `version`, `tauri version` from the running application. We exposed `relaunch` and `exit` as well to control your application state.
- Added new JavaScript API to extract `name`, `version`, `tauri version` from the running application. We exposed `relaunch` and `exit` as well to control your application state.
- [e511d39](https://www.github.com/tauri-apps/tauri/commit/e511d3991041a974273a2674a9bf60230b7519ee) feat(api): Expose application metadata and functions to JS api - fix [#1387](https://www.github.com/tauri-apps/tauri/pull/1387) ([#1445](https://www.github.com/tauri-apps/tauri/pull/1445)) on 2021-04-08
- [a6def70](https://www.github.com/tauri-apps/tauri/commit/a6def7066eec19c889b0f14cc1e475bf209a332e) Refactor(tauri): move tauri-api and tauri-updater to tauri ([#1455](https://www.github.com/tauri-apps/tauri/pull/1455)) on 2021-04-11
- The event listener `once` kind was moved to a dedicated function.

View File

@ -219,7 +219,7 @@ impl From<MessageDialogKind> for rfd::MessageLevel {
/// which makes them easier to use.
///
/// **NOTE:** You cannot block the main thread when executing the dialog APIs, so you must use the [`crate::api::dialog`] methods instead.
/// Examples of main thread context are the [`crate::App::run`] closure and non-async commmands.
/// Examples of main thread context are the [`crate::App::run`] closure and non-async commands.
pub mod blocking {
use super::{MessageDialogButtons, MessageDialogKind};
use crate::{Runtime, Window};

View File

@ -865,7 +865,7 @@ impl<R: Runtime> App<R> {
// we only listen for `tauri://update`
// once we receive the call, we check if an update is available or not
// if there is a new update we emit `tauri://update-available` with details
// this is the user responsabilities to display dialog and ask if user want to install
// this is the user responsibilities to display dialog and ask if user want to install
// to install the update you need to invoke the Event `tauri://update-install`
updater::listener(handle);
}

View File

@ -25,7 +25,7 @@ type ChildId = u32;
type ChildStore = Arc<Mutex<HashMap<ChildId, crate::api::process::CommandChild>>>;
#[cfg(any(shell_execute, shell_sidecar))]
fn command_childs() -> &'static ChildStore {
fn command_child_store() -> &'static ChildStore {
use once_cell::sync::Lazy;
static STORE: Lazy<ChildStore> = Lazy::new(Default::default);
&STORE
@ -160,12 +160,12 @@ impl Cmd {
let (mut rx, child) = command.spawn()?;
let pid = child.pid();
command_childs().lock().unwrap().insert(pid, child);
command_child_store().lock().unwrap().insert(pid, child);
crate::async_runtime::spawn(async move {
while let Some(event) = rx.recv().await {
if matches!(event, crate::api::process::CommandEvent::Terminated(_)) {
command_childs().lock().unwrap().remove(&pid);
command_child_store().lock().unwrap().remove(&pid);
}
let js = crate::api::ipc::format_callback(on_event_fn, &event)
.expect("unable to serialize CommandEvent");
@ -184,7 +184,7 @@ impl Cmd {
pid: ChildId,
buffer: Buffer,
) -> super::Result<()> {
if let Some(child) = command_childs().lock().unwrap().get_mut(&pid) {
if let Some(child) = command_child_store().lock().unwrap().get_mut(&pid) {
match buffer {
Buffer::Text(t) => child.write(t.as_bytes())?,
Buffer::Raw(r) => child.write(&r)?,
@ -195,7 +195,7 @@ impl Cmd {
#[module_command_handler(shell_script)]
fn kill_child<R: Runtime>(_context: InvokeContext<R>, pid: ChildId) -> super::Result<()> {
if let Some(child) = command_childs().lock().unwrap().remove(&pid) {
if let Some(child) = command_child_store().lock().unwrap().remove(&pid) {
child.kill()?;
}
Ok(())

View File

@ -18,7 +18,7 @@ use tauri_macros::default_runtime;
pub type SetupHook<R> =
Box<dyn FnOnce(&mut App<R>) -> Result<(), Box<dyn std::error::Error>> + Send>;
/// A closure that is run everytime Tauri receives a message it doesn't explicitly handle.
/// A closure that is run every time Tauri receives a message it doesn't explicitly handle.
pub type InvokeHandler<R> = dyn Fn(Invoke<R>) + Send + Sync + 'static;
/// A closure that is responsible for respond a JS message.

View File

@ -215,7 +215,7 @@ pub struct InnerWindowManager<R: Runtime> {
pub(crate) tray_icon: Option<Icon>,
package_info: PackageInfo,
/// The webview protocols protocols available to all windows.
/// The webview protocols available to all windows.
uri_scheme_protocols: HashMap<String, Arc<CustomProtocol<R>>>,
/// The menu set to all windows.
menu: Option<Menu>,

View File

@ -32,7 +32,7 @@ type EventListener = Box<dyn Fn(&Event) + Send>;
/// Scope for filesystem access.
#[derive(Clone)]
pub struct Scope {
alllowed_patterns: Arc<Mutex<HashSet<Pattern>>>,
allowed_patterns: Arc<Mutex<HashSet<Pattern>>>,
forbidden_patterns: Arc<Mutex<HashSet<Pattern>>>,
event_listeners: Arc<Mutex<HashMap<Uuid, EventListener>>>,
}
@ -41,9 +41,9 @@ impl fmt::Debug for Scope {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_struct("Scope")
.field(
"alllowed_patterns",
"allowed_patterns",
&self
.alllowed_patterns
.allowed_patterns
.lock()
.unwrap()
.iter()
@ -86,10 +86,10 @@ impl Scope {
env: &Env,
scope: &FsAllowlistScope,
) -> crate::Result<Self> {
let mut alllowed_patterns = HashSet::new();
let mut allowed_patterns = HashSet::new();
for path in scope.allowed_paths() {
if let Ok(path) = parse_path(config, package_info, env, path) {
push_pattern(&mut alllowed_patterns, path)?;
push_pattern(&mut allowed_patterns, path)?;
}
}
@ -103,7 +103,7 @@ impl Scope {
}
Ok(Self {
alllowed_patterns: Arc::new(Mutex::new(alllowed_patterns)),
allowed_patterns: Arc::new(Mutex::new(allowed_patterns)),
forbidden_patterns: Arc::new(Mutex::new(forbidden_patterns)),
event_listeners: Default::default(),
})
@ -111,7 +111,7 @@ impl Scope {
/// The list of allowed patterns.
pub fn allowed_patterns(&self) -> HashSet<Pattern> {
self.alllowed_patterns.lock().unwrap().clone()
self.allowed_patterns.lock().unwrap().clone()
}
/// The list of forbidden patterns.
@ -141,7 +141,7 @@ impl Scope {
pub fn allow_directory<P: AsRef<Path>>(&self, path: P, recursive: bool) -> crate::Result<()> {
let path = path.as_ref().to_path_buf();
{
let mut list = self.alllowed_patterns.lock().unwrap();
let mut list = self.allowed_patterns.lock().unwrap();
// allow the directory to be read
push_pattern(&mut list, &path)?;
@ -157,7 +157,7 @@ impl Scope {
/// After this function has been called, the frontend will be able to use the Tauri API to read the contents of this file.
pub fn allow_file<P: AsRef<Path>>(&self, path: P) -> crate::Result<()> {
let path = path.as_ref();
push_pattern(&mut self.alllowed_patterns.lock().unwrap(), &path)?;
push_pattern(&mut self.allowed_patterns.lock().unwrap(), &path)?;
self.trigger(Event::PathAllowed(path.to_path_buf()));
Ok(())
}
@ -212,7 +212,7 @@ impl Scope {
false
} else {
let allowed = self
.alllowed_patterns
.allowed_patterns
.lock()
.unwrap()
.iter()

View File

@ -363,7 +363,7 @@ impl<R: Runtime> UpdateBuilder<R> {
let mut last_error: Option<Error> = None;
for url in &self.urls {
// replace {{current_version}}, {{target}} and {{arch}} in the provided URL
// this is usefull if we need to query example
// this is useful if we need to query example
// https://releases.myapp.com/update/{{target}}/{{arch}}/{{current_version}}
// will be translated into ->
// https://releases.myapp.com/update/darwin/aarch64/1.0.0
@ -420,7 +420,7 @@ impl<R: Runtime> UpdateBuilder<R> {
// Extracted remote metadata
let final_release = remote_release.ok_or(Error::ReleaseNotFound)?;
// did the announced version is greated than our current one?
// is the announced version greater than our current one?
let should_update = if let Some(comparator) = self.should_install.take() {
comparator(&self.current_version, &final_release)
} else {
@ -520,7 +520,7 @@ impl<R: Runtime> Update<R> {
// We fail here because later we can add more linux support
// actually if we use APPIMAGE, our extract path should already
// be set with our APPIMAGE env variable, we don't need to do
// anythin with it yet
// anything with it yet
#[cfg(target_os = "linux")]
if self.app.state::<Env>().appimage.is_none() {
return Err(Error::UnsupportedLinuxPackage);
@ -1309,7 +1309,7 @@ mod test {
}
#[test]
fn http_updater_fallback_urls_withs_array() {
fn http_updater_fallback_urls_with_array() {
let _m = mockito::mock("GET", "/")
.with_status(200)
.with_header("content-type", "application/json")

View File

@ -64,7 +64,7 @@
//!
//! If the user accepts, the download and install are initialized. The user will be then prompted to restart the application.
//!
//! ## Javascript API
//! ## JavaScript API
//!
//! **Attention, you need to _disable built-in dialog_ in your [tauri configuration](#configuration), otherwise, events aren't emitted and the javascript API will NOT work.**
//!
@ -107,7 +107,7 @@
//! });
//! ```
//!
//! #### Javascript
//! #### JavaScript
//! ```js
//! import { emit } from "@tauri-apps/api/event";
//! emit("tauri://update");
@ -145,7 +145,7 @@
//! });
//! ```
//!
//! #### Javascript
//! #### JavaScript
//! ```js
//! import { listen } from "@tauri-apps/api/event";
//! listen("tauri://update-available", function (res) {
@ -180,7 +180,7 @@
//! });
//! ```
//!
//! #### Javascript
//! #### JavaScript
//! ```js
//! import { emit } from "@tauri-apps/api/event";
//! emit("tauri://update-install");
@ -209,7 +209,7 @@
//! });
//! ```
//!
//! #### Javascript
//! #### JavaScript
//!
//! Event : `tauri://update-download-progress`
//!
@ -270,7 +270,7 @@
//! });
//! ```
//!
//! #### Javascript
//! #### JavaScript
//! Event : `tauri://update-status`
//!
//! Emitted data:

View File

@ -358,7 +358,7 @@ impl<'a, R: Runtime> WindowBuilder<'a, R> {
self
}
/// Whether the the window should be transparent. If this is true, writing colors
/// Whether the window should be transparent. If this is true, writing colors
/// with alpha values different than `1.0` will produce a transparent window.
#[cfg(any(not(target_os = "macos"), feature = "macos-private-api"))]
#[cfg_attr(
@ -844,7 +844,7 @@ impl<R: Runtime> Window<R> {
self.window.dispatcher.is_resizable().map_err(Into::into)
}
/// Gets the window's current vibility state.
/// Gets the window's current visibility state.
pub fn is_visible(&self) -> crate::Result<bool> {
self.window.dispatcher.is_visible().map_err(Into::into)
}
@ -917,7 +917,7 @@ impl<R: Runtime> Window<R> {
})
}
/// Returns the `ApplicatonWindow` from gtk crate that is used by this window.
/// Returns the `ApplicationWindow` from gtk crate that is used by this window.
///
/// Note that this can only be used on the main thread.
#[cfg(any(

View File

@ -400,7 +400,7 @@
target="_blank"
href="https://github.com/tauri-apps/tauri"
>
Github
GitHub
<span class="i-codicon-link-external" />
</a>
<a

View File

@ -3,7 +3,7 @@
// This example show how updater events work when dialog is disabled.
// This allow you to use custom dialog for the updater.
// This is your responsability to restart the application after you receive the STATUS: DONE.
// This is your responsibility to restart the application after you receive the STATUS: DONE.
import { checkUpdate, installUpdate } from '@tauri-apps/api/updater'
import { listen } from '@tauri-apps/api/event'

View File

@ -14,7 +14,7 @@
<style>
body {
/* Add a nice colorscheme to our page and text */
/* Add a nice color scheme to our page and text */
background-color: #222831;
color: #ececec;

View File

@ -2,7 +2,7 @@
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
// This is an example of a taui app built into a dll
// This is an example of a tauri app built into a dll
// Calling lib_test1 within the dll will launch the webview
#![cfg_attr(

View File

@ -23,7 +23,7 @@ Tauri apps can have custom menus and have tray-type interfaces. They can be upda
## This module
This is a typescript library that creates `cjs` and `esm` Javascript endpoints for you to import into your Frontend framework so that the Webview can call and listen to backend activity. We also ship the pure typescript, because for some frameworks this is more optimal. It uses the message passing of webviews to their hosts.
This is a typescript library that creates `cjs` and `esm` JavaScript endpoints for you to import into your Frontend framework so that the Webview can call and listen to backend activity. We also ship the pure typescript, because for some frameworks this is more optimal. It uses the message passing of webviews to their hosts.
To learn more about the details of how all of these pieces fit together, please consult this [ARCHITECTURE.md](https://github.com/tauri-apps/tauri/blob/dev/ARCHITECTURE.md) document.

View File

@ -54,7 +54,7 @@ async function listen<T>(
* token: string
* }
* const unlisten = await once<LoadedPayload>('loaded', (event) => {
* console.log(`App is loaded, logggedIn: ${event.payload.loggedIn}, token: ${event.payload.token}`);
* console.log(`App is loaded, loggedIn: ${event.payload.loggedIn}, token: ${event.payload.token}`);
* });
*
* // you need to call unlisten if your handler goes out of scope e.g. the component is unmounted

View File

@ -456,7 +456,7 @@ async function removeDir(
}
/**
* Copys a file to a destination.
* Copies a file to a destination.
* @example
* ```typescript
* import { copyFile, BaseDirectory } from '@tauri-apps/api/fs';

View File

@ -589,7 +589,7 @@ async function resolve(...paths: string[]): Promise<string> {
}
/**
* Normalizes the given `path`, resolving `'..'` and `'.'` segments and resolve symolic links.
* Normalizes the given `path`, resolving `'..'` and `'.'` segments and resolve symbolic links.
* @example
* ```typescript
* import { normalize, appDir } from '@tauri-apps/api/path';

View File

@ -37,7 +37,7 @@
- [82eb6e79](https://www.github.com/tauri-apps/tauri/commit/82eb6e79e8098bccd2b3d3581056b5350beb46c6) fix(bundler): Fix appimage bundler crashing if path has spaces ([#4471](https://www.github.com/tauri-apps/tauri/pull/4471)) on 2022-06-26
- Ensure `usr/lib` is a directory in the AppImage bundle.
- [aa0336d6](https://www.github.com/tauri-apps/tauri/commit/aa0336d6c5764f1357d845f2bf3763a89a3771a1) fix(bundler): ensure AppImage usr/lib is a dir ([#4419](https://www.github.com/tauri-apps/tauri/pull/4419)) on 2022-06-21
- AppImage bundling will now prefer bundling correctly named appincidator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- AppImage bundling will now prefer bundling correctly named appindicator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- [bf45ca1d](https://www.github.com/tauri-apps/tauri/commit/bf45ca1df6691c05bdf72c5716cc01e89a7791d4) fix(cli,bundler): prefer AppImage libraries with ABI version ([#4505](https://www.github.com/tauri-apps/tauri/pull/4505)) on 2022-06-29
- Fix language code for korean (ko-KR).
- [08a73acd](https://www.github.com/tauri-apps/tauri/commit/08a73acde877453ca5b45ea7548cdd3d407366a2) fix(bundler): fix language code. closes [#4437](https://www.github.com/tauri-apps/tauri/pull/4437) ([#4444](https://www.github.com/tauri-apps/tauri/pull/4444)) on 2022-06-24

View File

@ -365,7 +365,7 @@ mod tests {
AppCategory::from_str("Developer Tool"),
Ok(AppCategory::DeveloperTool)
);
// Lowercase, spaces, and hypens are fine:
// Lowercase, spaces, and hyphens are fine:
assert_eq!(
AppCategory::from_str(" puzzle game "),
Ok(AppCategory::PuzzleGame)

View File

@ -15,7 +15,7 @@ use std::{
};
/// Returns true if the path has a filename indicating that it is a high-density
/// "retina" icon. Specifically, returns true the the file stem ends with
/// "retina" icon. Specifically, returns true the file stem ends with
/// "@2x" (a convention specified by the [Apple developer docs](
/// https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html)).
#[allow(dead_code)]

View File

@ -18,7 +18,7 @@ const KEYCHAIN_PWD: &str = "tauri-build";
// APPLE_CERTIFICATE is the p12 certificate base64 encoded.
// By example you can use; openssl base64 -in MyCertificate.p12 -out MyCertificate-base64.txt
// Then use the value of the base64 in APPLE_CERTIFICATE env variable.
// You need to set APPLE_CERTIFICATE_PASSWORD to the password you set when youy exported your certificate.
// You need to set APPLE_CERTIFICATE_PASSWORD to the password you set when you exported your certificate.
// https://help.apple.com/xcode/mac/current/#/dev154b28f09 see: `Export a signing certificate`
pub fn setup_keychain(
certificate_encoded: OsString,

View File

@ -474,7 +474,7 @@ impl SettingsBuilder {
///
/// Package settings will be read from Cargo.toml.
///
/// Bundle settings will be read from from $TAURI_DIR/tauri.conf.json if it exists and fallback to Cargo.toml's [package.metadata.bundle].
/// Bundle settings will be read from $TAURI_DIR/tauri.conf.json if it exists and fallback to Cargo.toml's [package.metadata.bundle].
pub fn build(self) -> crate::Result<Settings> {
let target = if let Some(t) = self.target {
t

View File

@ -26,7 +26,7 @@ use tauri_utils::{config::WebviewInstallMode, resources::resource_relpath};
use uuid::Uuid;
use zip::ZipArchive;
// URLS for the WIX toolchain. Can be used for crossplatform compilation.
// URLS for the WIX toolchain. Can be used for cross-platform compilation.
pub const WIX_URL: &str =
"https://github.com/wixtoolset/wix3/releases/download/wix3112rtm/wix311-binaries.zip";
pub const WIX_SHA256: &str = "2c1888d5d1dba377fc7fa14444cf556963747ff9a0a289a3599cf09da03b9e2e";

View File

@ -91,7 +91,7 @@ fn locate_signtool() -> crate::Result<PathBuf> {
}
pub fn sign<P: AsRef<Path>>(path: P, params: &SignParams) -> crate::Result<()> {
// Convert path to string reference, as we need to pass it as a commandline parameter to signtool
// Convert path to string reference, as we need to pass it as a command-line parameter to signtool
let path_str = path.as_ref().to_str().unwrap();
info!(action = "Signing"; "{} with identity \"{}\"", path_str, params.certificate_thumbprint);

View File

@ -39,7 +39,7 @@
This only works with recent versions of `libappindicator-sys` (including https://github.com/tauri-apps/libappindicator-rs/pull/38),
so a `cargo update` may be necessary if you create `.deb` bundles and use the tray feature.
- [0e6edeb1](https://www.github.com/tauri-apps/tauri/commit/0e6edeb14f379af1e02a7cebb4e3a5c9e87ebf7f) fix(cli): Don't add `pkg-config` to `deb` ([#4508](https://www.github.com/tauri-apps/tauri/pull/4508)) on 2022-06-29
- AppImage bundling will now prefer bundling correctly named appincidator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- AppImage bundling will now prefer bundling correctly named appindicator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- [bf45ca1d](https://www.github.com/tauri-apps/tauri/commit/bf45ca1df6691c05bdf72c5716cc01e89a7791d4) fix(cli,bundler): prefer AppImage libraries with ABI version ([#4505](https://www.github.com/tauri-apps/tauri/pull/4505)) on 2022-06-29
- Improve error message when `cargo` is not installed.
- [e0e5f772](https://www.github.com/tauri-apps/tauri/commit/e0e5f772430f6349ec99ba891e601331e376e3c7) feat(cli): improve `cargo not found` error message, closes [#4428](https://www.github.com/tauri-apps/tauri/pull/4428) ([#4430](https://www.github.com/tauri-apps/tauri/pull/4430)) on 2022-06-21

View File

@ -41,7 +41,7 @@
This only works with recent versions of `libappindicator-sys` (including https://github.com/tauri-apps/libappindicator-rs/pull/38),
so a `cargo update` may be necessary if you create `.deb` bundles and use the tray feature.
- [0e6edeb1](https://www.github.com/tauri-apps/tauri/commit/0e6edeb14f379af1e02a7cebb4e3a5c9e87ebf7f) fix(cli): Don't add `pkg-config` to `deb` ([#4508](https://www.github.com/tauri-apps/tauri/pull/4508)) on 2022-06-29
- AppImage bundling will now prefer bundling correctly named appincidator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- AppImage bundling will now prefer bundling correctly named appindicator library (including `.1` version suffix). With a symlink for compatibility with the old naming.
- [bf45ca1d](https://www.github.com/tauri-apps/tauri/commit/bf45ca1df6691c05bdf72c5716cc01e89a7791d4) fix(cli,bundler): prefer AppImage libraries with ABI version ([#4505](https://www.github.com/tauri-apps/tauri/pull/4505)) on 2022-06-29
- Improve error message when `cargo` is not installed.
- [e0e5f772](https://www.github.com/tauri-apps/tauri/commit/e0e5f772430f6349ec99ba891e601331e376e3c7) feat(cli): improve `cargo not found` error message, closes [#4428](https://www.github.com/tauri-apps/tauri/pull/4428) ([#4430](https://www.github.com/tauri-apps/tauri/pull/4430)) on 2022-06-21

View File

@ -205,7 +205,7 @@
]
},
"version": {
"description": "App version. It is a semver version number or a path to a `package.json` file contaning the `version` field.",
"description": "App version. It is a semver version number or a path to a `package.json` file containing the `version` field.",
"default": null,
"type": [
"string",

View File

@ -285,7 +285,7 @@ pub fn command(mut options: Options) -> Result<()> {
let pub_key_decoded = String::from_utf8_lossy(&pubkey);
let public_key = minisign::PublicKeyBox::from_string(&pub_key_decoded)?.into_public_key()?;
// make sure we have our package builts
// make sure we have our package built
let mut signed_paths = Vec::new();
for elem in updater_bundles {
// we expect to have only one path in the vec but we iter if we add

View File

@ -927,7 +927,7 @@ fn get_package_manager<T: AsRef<str>>(app_dir_entries: &[T]) -> crate::Result<Pa
if found.len() > 1 {
return Err(anyhow::anyhow!(
"only one package mangager should be used, but found {}\nplease remove unused package manager lock files",
"only one package manager should be used, but found {}\nplease remove unused package manager lock files",
found.join(" and ")
));
}

View File

@ -73,7 +73,7 @@ fn format_error<I: IntoApp>(err: clap::Error) -> clap::Error {
err.format(&mut app)
}
/// Run the Tauri CLI with the passed arguments, exiting if an error occurrs.
/// Run the Tauri CLI with the passed arguments, exiting if an error occurs.
///
/// The passed arguments should have the binary argument(s) stripped out before being passed.
///

View File

@ -50,7 +50,7 @@ pub fn command(options: Options) -> Result<()> {
);
}
println!("\nEnvironment variabled used to sign:\n`TAURI_PRIVATE_KEY` Path or String of your private key\n`TAURI_KEY_PASSWORD` Your private key password (optional)\n\nATTENTION: If you lose your private key OR password, you'll not be able to sign your update package and updates will not work.\n---------------------------\n");
println!("\nEnvironment variables used to sign:\n`TAURI_PRIVATE_KEY` Path or String of your private key\n`TAURI_KEY_PASSWORD` Your private key password (optional)\n\nATTENTION: If you lose your private key OR password, you'll not be able to sign your update package and updates will not work.\n---------------------------\n");
Ok(())
}

View File

@ -23,6 +23,6 @@ tauri = {{{ tauri_dep }}}
# by default Tauri runs in production mode
# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL
default = [ "custom-protocol" ]
# this feature is used used for production builds where `devPath` points to the filesystem
# this feature is used for production builds where `devPath` points to the filesystem
# DO NOT remove this
custom-protocol = [ "tauri/custom-protocol" ]

View File

@ -3,7 +3,7 @@
As you create PRs and make changes that require a version bump, please add a new markdown file in this folder. You do not note the version *number*, but rather the type of bump that you expect: major, minor, or patch. The filename is not important, as long as it is a `.md`, but we recommend it represents the overall change for our sanity.
When you select the version bump required, you do *not* need to consider depedencies. Only note the package with the actual change, and any packages that depend on that package will be bumped automatically in the process.
When you select the version bump required, you do *not* need to consider dependencies. Only note the package with the actual change, and any packages that depend on that package will be bumped automatically in the process.
Use the following format:
```md

View File

@ -3,7 +3,7 @@
As you create PRs and make changes that require a version bump, please add a new markdown file in this folder. You do not note the version *number*, but rather the type of bump that you expect: major, minor, or patch. The filename is not important, as long as it is a `.md`, but we recommend it represents the overall change for our sanity.
When you select the version bump required, you do *not* need to consider depedencies. Only note the package with the actual change, and any packages that depend on that package will be bumped automatically in the process.
When you select the version bump required, you do *not* need to consider dependencies. Only note the package with the actual change, and any packages that depend on that package will be bumped automatically in the process.
Use the following format:
```md