Commit Graph

2089 Commits

Author SHA1 Message Date
Amr Bashir
f8fde4f845
fix(cli): disable directory traversal in builtin dev server (#9344)
* fix(cli): disable directory traversal in builtin dev server

This PR also includes a cleanup refactor of the server

* Update builtin_dev_server.rs
2024-04-02 13:59:16 -03:00
Amr Bashir
dd07a36749
chore(cli/add): clippy, use char instead of str (#9333) 2024-04-01 14:22:30 -03:00
amrbashir
93e0e1392e
feat(cli/add): support specifying version
closes #9325
2024-04-01 18:22:26 +02:00
Lucas Fernandes Nogueira
06833f4fa8
feat(ipc): enhance request URL checks, update wry, refactor file drop (#9100)
* feat(ipc): enhance request URL checks

* actually use req url

* fix windows, tests

* wry 0.38, file drop refactor

* wry 0.38.1

* adjust for windows [skip ci]

* wry 0.38.2 [skip ci]

* update to latest tao, wry, muda and tray-icon

* change tag

* serde

* use published crates

* downgrade cargo-platform to 0.1.7

---------

Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
2024-04-01 13:03:39 -03:00
Amr Bashir
b78f90bc9c
chore(cli): fix clippy errors (#9330) 2024-04-01 12:44:12 -03:00
scottpledger
6703b7cbca
fix: use $CARGO_MANIFEST_DIR to fully specify include_dir paths in tauri-cli (#9310)
* Allow tauri-cli to work with Bazel.

Signed-off-by: Scott Pledger <scottpledger2005@gmail.com>

* change file

---------

Signed-off-by: Scott Pledger <scottpledger2005@gmail.com>
2024-04-01 16:43:52 +02:00
Vladimir Stoilov
259d845290
feat(bundler): add post/pre install/remove scripts for linux deb and rpm packages (#9209)
* feat(cli/add): add post/pre install/remove scripts for linux

* fix(cli): clippy errors

* fix(cli): remove script struct from deb/rpm bundle

* change files and aliases
2024-03-28 05:13:26 +02:00
Fabian-Lars
c33f6e6cf3
fix(core): Announce new webviews and windows (#9211)
* fix(core): Announce new webviews and windows

fixes #9200
fixes #8144

* fix js import in example

* emit created events to all listeners.

* remove duplicate event
2024-03-28 02:23:19 +02:00
github-actions[bot]
7898b601d1
Apply Version Updates From Current Changes (#9222)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-03-20 19:59:04 -03:00
Lucas Fernandes Nogueira
b525ddadf7
fix(cli): openssl is no longer a required macOS dep (#9237) 2024-03-20 19:15:58 -03:00
Fabian-Lars
a799f24f97
fix(bundler): Fix path seperators for deep link registry entries (#9185)
* fix(bundler): Fix path seperators for deep link registry entries

* Update bundler-deep-link-reg-path.md
2024-03-19 10:41:55 -03:00
Amr Bashir
ac76a22f38
feat(cli/init): allow empty responses non-crucial questions (#9183)
closes #9181
2024-03-19 10:41:41 -03:00
github-actions[bot]
f1df6b2c35
Apply Version Updates From Current Changes (#9162)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-03-18 09:43:47 -03:00
Amr Bashir
379cc2b354
fix(core/path): remove suffix in basename only once (#9165)
* fix(core/path): remove suffix in `basename` only once

closes #9064

* Update tooling/api/src/path.ts

* remove extra assert

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2024-03-18 08:40:23 -03:00
Lucas Fernandes Nogueira
ea0242db4a
refactor(image): expose constructor, unify size getters (#9179) 2024-03-13 22:02:05 -03:00
Amr Bashir
7213b9e472
feat(cli/add): add default permission to capabilities (#9124)
* feat(cli/add): add default permission to capabilities

also cleanup `tauri add` command

* license headers & clippy

* print permission name

* do not error out if default permission is not set

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-03-13 11:58:25 -03:00
Amr Bashir
acdd76833d
feat(api/tray): add TrayIcon.getById/removeById (#9155)
* feat(api/tray): add `TrayIcon.getById/removeById`

closes #9135

* generate

* add permissions

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-03-12 13:07:51 -03:00
github-actions[bot]
d349558abb
Apply Version Updates From Current Changes (#9149)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-03-11 15:14:25 -03:00
Lucas Fernandes Nogueira
e673854c83
fix(acl): inconsistencies on urlpattern usage for remote domain URL (#9133)
* fix(acl): inconsistencies on urlpattern usage for remote domain URL

* remove println!

* typo

* fix tests
2024-03-11 13:39:17 -03:00
Tony
c3ea3a2b7d
fix(windows): relax UpdaterWindowsConfig to not deny unknowns fields (#9126) 2024-03-11 17:30:14 +02:00
Lucas Fernandes Nogueira
db0a24a973
refactor(core): use the image crate (#9132) 2024-03-11 11:46:34 -03:00
Dimitris Apostolou
26f0f71a40
chore: fix various typos (#9131) 2024-03-11 16:25:20 +02:00
Lucas Nogueira
9247ecf2a4
chore(cli): update Cargo.lock 2024-03-07 20:24:53 -03:00
github-actions[bot]
d701f29f17
Apply Version Updates From Current Changes (#9117)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-03-07 19:56:45 -03:00
renovate[bot]
94ab97a884
chore(deps) Update Rust crate rpm to 0.14.0 (dev) (#9102)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-07 19:35:15 -03:00
renovate[bot]
5deb1202f6
chore(deps) Update dependency rollup to v4.12.1 (dev) (#9101)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-07 19:34:29 -03:00
Lucas Fernandes Nogueira
ed48e2b3c7
feat(core): expose the image module (#9122)
* feat(core): expose the image module

* code review

* fix import

* fix

* fix codegen

* jsimage owned

* fmt

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-03-07 19:23:21 -03:00
Lucas Fernandes Nogueira
3e472d0afc
refactor(acl): permission and capability platforms are optional (#9115)
* refactor(acl): permission and capability platforms are optional

* add iterator version

* fix build

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-03-07 14:18:15 -03:00
Lucas Fernandes Nogueira
4ef17d0833
refactor(acl): use URLPattern instead of glob for remote URLs (#9116) 2024-03-07 13:08:57 -03:00
github-actions[bot]
e7f245e81e
Apply Version Updates From Current Changes (#9035)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-03-06 19:00:57 -03:00
renovate[bot]
8383bea741
chore(deps) Update Rust crate env_logger to 0.11.3 (dev) (#9090)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-06 13:32:57 -03:00
dependabot[bot]
253a661516
chore(deps): bump mio from 0.8.8 to 0.8.11 in /tooling/webdriver (#9077)
Bumps [mio](https://github.com/tokio-rs/mio) from 0.8.8 to 0.8.11.
- [Release notes](https://github.com/tokio-rs/mio/releases)
- [Changelog](https://github.com/tokio-rs/mio/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/mio/compare/v0.8.8...v0.8.11)

---
updated-dependencies:
- dependency-name: mio
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-05 14:35:48 -03:00
Lucas Fernandes Nogueira
b5c7432769
feat(core): use a strict CSP on the isolation iframe (#9086) 2024-03-05 14:20:17 -03:00
Lucas Fernandes Nogueira
e62ca4ee95
feat(ipc): preserve channel message order (#9070) 2024-03-04 17:03:24 -03:00
Amr Bashir
9aa0d6e959
chore: remove unstable log features & use qualified log::<macro> path (#9069)
* chore: remove unstable log features & use qualified `log::<macro>` path

* fmt

* fix build
2024-03-04 21:22:07 +02:00
renovate[bot]
b4ffbe7aa2
chore(deps) Update Tauri CLI (dev) (#8226)
* chore(deps) Update Tauri CLI

* updates

* fmt

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-03-03 11:36:35 -03:00
renovate[bot]
ab37d6724e
chore(deps) Update Tauri Bundler (dev) (#8224)
* chore(deps) Update Tauri Bundler

* fix windows

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-03-03 11:36:20 -03:00
renovate[bot]
1b18b7006f
chore(deps) Update Tauri API Definitions (dev) (#8225)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-03 10:30:35 -03:00
i-c-b
947a50b8e2
fix(cli): migration for http plugin ACL (#9049)
* fix cli migration of http allowlist to ACL

* Create fix-cli-migration-http-acl.md
2024-03-03 09:28:31 -03:00
Amr Bashir
77b9a508a4
feat(api): add Image class (#9042)
* feat(api): add `Image` class

* clippy

* license headers

* small cleanup

* fixes

* code review

* readd from_png_bytes and from_ico_bytes

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-03-03 04:31:08 +02:00
Amr Bashir
4b75834a41
chore: update license headers 2024 (#9043) 2024-03-01 08:29:01 -03:00
Amr Bashir
c68218b362
refactor(cli): add --no-bundle flag, skip bundling on invalid formats (#8990)
* refactor(cli): add `--no-bundle` flag, skip bundling on invalid formats

* enhance bundle format parsing

* lint [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-29 10:49:42 -03:00
Lucas Fernandes Nogueira
4f78941763
chore(cli): update deps, fix log compilation issue (#9034) 2024-02-29 10:22:47 -03:00
Amr Bashir
d1e77acd8d
refactor!(core): remove Icon enum and add Image type (#9011)
* refactor!(core): remove `Icon` enum and add `Image` type

* clippy

* revert api example config change

* Update image.rs

* fix build

* clippy

* change files

* add back removed methods as setter functions

* simplify error message

* Update .changes/runtime-icon-lifetime.md

* Update .changes/ico-featrue-flags.md

* Update core/tauri/src/image.rs

* update api lockfile

* update api ref

* lint

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-29 09:05:11 -03:00
github-actions[bot]
ab060ebb34
Apply Version Updates From Current Changes (#9000)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-29 00:06:59 -03:00
Lucas Fernandes Nogueira
d7f56fef85
feat(acl): allow a permission to apply to a subset of target platforms (#9014)
* feat(acl): allow a permission to apply to a subset of target platforms

* fix cli
2024-02-28 17:23:52 -03:00
Lucas Fernandes Nogueira
d7d03c7197
fix(cli): dev watcher infinite loop on mobile (#9017) 2024-02-28 17:22:45 -03:00
Amr Bashir
f5f3ed5f6f
fix(cli): CLI path issues on mobile project initialization (#9009)
* fix(cli): fix panic when `android init` using cargo or yarn

closes #8531

* clippy

* try with fullpath

* clippy

* move cli

* Update test-android.yml

* add to path instead

* clippy

* try moving

* use cargo subcommand

* delete unused logic [skip ci]

* truncate on init [skip ci]

* enhance binary/args check

* update change files

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-28 14:38:24 -03:00
Lucas Fernandes Nogueira
cb92cfd6a6
fix(cli): wrong metadata for crate versions (#9022) 2024-02-28 13:48:14 -03:00
i-c-b
b658ded614
fix(cli): Truncate BuildTask.kt before writing (#9015)
* truncate BuildTask.kt before write

* Create truncate-before-write-buildtask.md

* remove unused checks

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-28 13:42:21 -03:00
Lucas Fernandes Nogueira
3657ad82f8
feat(core): allow defining permissions for the app commands (#9008)
* feat(core): allow defining permissions for the app commands

* global scope

* command scope

* write to disk

* lint

* fix path

* get autogenerated commands from generate_handler macro

* revert

* remove cli

* use const instead of empty str
2024-02-28 08:45:28 -03:00
github-actions[bot]
5a19147b06
Apply Version Updates From Current Changes (#8991)
* apply version updates

* update versions

---------

Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-26 23:53:48 -03:00
github-actions[bot]
31a33d4680
Apply Version Updates From Current Changes (#8980)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2024-02-26 23:05:51 -03:00
Amr Bashir
b9e6a01879
refactor(cli): use tauri/custom-protocol instead of relying on user having custom-protocol in their cargo features (#8937)
* refactor(cli): use `tauri/custom-protocol` instead of relying on user having `custom-protocol` in their cargo features

* tauri-build dev cfg

* pass build-feature when building apk

* run beforeBuildCommand before first build for plugins

* clippy

* fix

* mut

* enhance dev/prod checks

* lint [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-26 15:17:45 -03:00
Amr Bashir
06d63d67a0
feat(cli): add new acl subcommands (#8827)
* unify `CI` var handling, and lay foundation for `permission` subcommand

* feat(cli/init&new): create `permissions` directory by default for plugins

* generate permissions with consistent pathing on windows and unix

* `pemrission create` initial implementation

* add ls command

* finalize `permission create` subcommand

* `permission rm` subcommand

* `permission add` subcommand

* remove empty `permission copy` subcommand

* clippy

* `capability create` subcommand and move modules under `acl` directory

* fix multiselect for `permission add` when capabilty doesn't have identifier

* clippy

* `create` -> `new`  and change file

* license headers

* more license headers

* clippy

* Discard changes to examples/resources/src-tauri/.gitignore

* fix build

* cleanup

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-26 14:42:13 -03:00
Amr Bashir
9be314f07a
feat(cli/migrate): add plugins to Cargo.toml (#8951)
* feat(cli/migrate): add plugins to Cargo.toml

closes #8933

* small cleanup

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-26 13:29:16 -03:00
Lucas Fernandes Nogueira
cbd9755e09
fix: process logs not showing on iOS (#8977) 2024-02-25 17:38:27 -03:00
i-c-b
9cc014f2df
fix(docs): fix API webview/window class doc example (#8971)
* fix class doc example

* fix class doc example
2024-02-24 22:36:45 +02:00
github-actions[bot]
f5e4b67203
Apply Version Updates From Current Changes (#8954)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-22 22:24:49 -03:00
github-actions[bot]
0606ab326b
Apply Version Updates From Current Changes (#8938)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-22 18:50:24 -03:00
Lucas Nogueira
5ddea72c50
chore: update cargo-mobile2 to 0.10.2 ref #8949 2024-02-22 15:35:14 -03:00
Lucas Fernandes Nogueira
a76fb118ce
refactor(core): allow configuring both local and remote URLs on capability (#8950) 2024-02-22 15:15:16 -03:00
Lucas Fernandes Nogueira
e538ba586c
fix(cli): process spawn not working on Node.js for mobile commands, closes #6203 (#8949) 2024-02-22 15:14:55 -03:00
Amr Bashir
84c783f6bc
fix(bundler): remove fallback for license_file (#8948)
* fix(bundler): remove fallback for license_file

closes #8944

* Update .changes/bundler-license.md

* use license only on rpm

* change file

* Update .changes/bundler-rpm-license.md

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2024-02-22 14:56:22 -03:00
Lucas Fernandes Nogueira
fdcaf935fa
feat(webview): add reparent API (#8939)
* feat(webview): add reparent API

* fix build

* fix import

* remove cfg

* fix windows

* clone

* clone value

* ()
2024-02-22 08:52:27 -03:00
Amr Bashir
b5eb64728a
feat(bundler): enable dpi awareness for NSIS (#8940)
closes #8896
2024-02-22 08:52:19 -03:00
github-actions[bot]
af646520cf
Apply Version Updates From Current Changes (#8918)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-21 12:00:32 -03:00
Lucas Fernandes Nogueira
361ec37fd4
chore(deps): update to tao 0.26 (#8932)
* chore(deps): update to tao 0.26

* fallback to crate name

* move struct to runtime

* tests
2024-02-21 11:25:42 -03:00
Amr Bashir
33bbd7fe94
fix(cli/add): fix generating code for stronghold (#8908)
closes 8880
2024-02-21 10:23:04 -03:00
Lucas Fernandes Nogueira
a029b9f77e
feat(cli): codesign on iOS is optional for the simulator (#8910)
* feat(cli): codesign on iOS is optional for the simulator

* cargo-mobile2 0.10
2024-02-21 09:52:46 -03:00
github-actions[bot]
18ff84fc81
Apply Version Updates From Current Changes (#8775)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-19 15:49:28 -03:00
Lucas Fernandes Nogueira
c115a978bb
fix(cli): adjust template for capabilities (#8907) 2024-02-19 15:12:52 -03:00
Lucas Fernandes Nogueira
f284f9c545
refactor: configure URLs instead of domains on capability remote (#8898) 2024-02-19 11:14:09 -03:00
Lucas Fernandes Nogueira
8d16a80d2f
feat(codegen): allow defining additional capabilities, closes #8798 (#8802)
* refactor(core): capabilities must be referenced on the Tauri config file

* add all capabilities by default

* feat(codegen): allow defining additional capabilities, closes #8798

* undo example

* lint

* move add_capability to runtime authority

* add change files

* go through code review

* fix tests

* remove tokens option
2024-02-19 11:13:36 -03:00
Lucas Nogueira
c426c0dca2
merge from 1.x 2024-02-19 08:03:05 -03:00
Lucas Nogueira
e816a46b95
chore: update lock files 2024-02-18 23:46:17 -03:00
Lucas Nogueira
a4b82d9dba
chore: bump tauri-utils 2024-02-18 22:31:35 -03:00
github-actions[bot]
b735b6799f
Apply Version Updates From Current Changes (v1) (#8475)
* chore: change bump to patch

* apply version updates

---------

Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2024-02-18 19:31:52 -03:00
Marc Espin
dbd525ca64
docs: Update doc comment from normalize function in path plugin to match definition (#8886)
The doc comment from the normalize function in the path plugin was not matching the actual definition.

Rust definition: 0cb0a15ce2/core/tauri/src/path/plugin.rs (L18)

Typescript definition: 0cb0a15ce2/tooling/api/src/path.ts (L589)
2024-02-18 15:12:46 -03:00
Sam Willis
28fb036ce4
fix(core): Incorrect resource_dir when app run from new style target/PLATFORM+ARCH/(debug|release) dir (#8852)
* Fix resource_dir when app run from new target/someting/(debug|release) dir

* Update core/tauri-utils/src/platform.rs

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* change file, update logic, add tests

* lint

* fix tests

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-18 15:10:21 -03:00
Lucas Fernandes Nogueira
83a68deb56
refactor(core): allow referencing capabilities on the Tauri config file (#8797)
* refactor(core): capabilities must be referenced on the Tauri config file

* add all capabilities by default

* refactor(cli): reference all capabilities by default
2024-02-18 10:42:09 -03:00
Lucas Fernandes Nogueira
0cb0a15ce2
feat(core): capabilities on multiwebview contexts (#8789)
* feat(core): capabilities on multiwebview contexts

* fix cli

* lint

* sort
2024-02-16 08:24:51 -03:00
Fabian-Lars
052e8b4311
fix(cli): Downgrade minisign to 0.7.3 once again (#8838)
* fix(cli): Downgrade minisign to 0.7.3 once again

* add tests

* add change file

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-16 08:24:00 -03:00
Amr Bashir
16e550ec15
refactor(core): add webview events (#8844)
* refactor(core): add webview events

* license header

* clippy

* fix doctests

* more doctests

* fix JS `listen` with `EventTarget::Any`

* typo

* update module import

* clippy

* remove console.log

* fix api example

* fix documentation for emiTo [skip ci]

* actually add RunEvent::WebviewEvent

* update migration

* lint

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-16 08:07:39 -03:00
Jason Tsai
3cee26a58a
fix(cli): use UTF-8 encoding for vswhere.exe output (#8865) 2024-02-15 16:55:31 +02:00
amrbashir
7b5e8712e7
ci: update msrv test and cargo.lock 2024-02-14 04:01:01 +02:00
Priyadarshan Giri
aa06a0534c
fix(cli): fix code output of tauri plugin android init (#8810)
* Fix: code output of tauri plugin android init
double quotes `"` wasn't matching in plugin android init command

* change file
2024-02-07 18:40:46 +02:00
Lucas Fernandes Nogueira
fb0d997117
fix(cli): regression on --config not accepting file paths (#8783)
* fix(cli): regression on --config not accepting file paths

* enhance dev server config parsing

* use serde_json::json!

* pass config to setup
2024-02-07 17:08:05 +02:00
Amr Bashir
b0f27814b9
fix(cli): map --profile dev to debug folder when finding executable (#8776) 2024-02-05 16:12:08 +02:00
Lucas Fernandes Nogueira
baca704d4b
fix(cli): skip migrating updater config if not active (#8768) 2024-02-05 09:54:29 -03:00
github-actions[bot]
d54a2b055a
Apply Version Updates From Current Changes (#8759)
Co-authored-by: FabianLars <FabianLars@users.noreply.github.com>
2024-02-04 17:06:31 -03:00
Lucas Fernandes Nogueira
f99d140bbe
fix(cli): OsString::as_encoded_bytes is only available on Rust 1.74 (#8764) 2024-02-04 16:51:49 -03:00
Fabian-Lars
3bf6bc36da
docs: Fix broken config link (#8752)
* docs: Fix broken config link

* regen
2024-02-04 11:56:28 -03:00
Lucas Fernandes Nogueira
4e101f8016
refactor(core): enhance app rerun-if-changed for capabilities and frontend dist (#8756)
* refactor(core): enhance app rerun-if-changed for capabilities and frontend dist

* always rerun-if-changed=capabilities

* fix todo

* rerun if plugin permissions change

* add change files
2024-02-04 11:42:13 -03:00
github-actions[bot]
509e35f209
Apply Version Updates From Current Changes (#8751)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-02-03 17:55:13 -03:00
Lucas Fernandes Nogueira
ce1655ec22
fix(cli): integration tests not failing when build fails (#8746) 2024-02-03 17:18:34 -03:00
Lucas Nogueira
8f0e50f396
fix(webdriver): update lock file 2024-02-03 13:38:16 -03:00
Lucas Nogueira
c31c94ceb7
fix(cli): trailing comma on capability template 2024-02-03 13:14:56 -03:00
Lucas Nogueira
ab57f9531a
chore: run pnpm format on the repo 2024-02-03 11:08:13 -03:00
github-actions[bot]
88a1dd17c3
Apply Version Updates From Current Changes (#8638)
* apply version updates

* promote to beta

* fix check version

* update dependencies section [skip ci]

* update npm versions

---------

Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-03 10:59:09 -03:00
Lucas Fernandes Nogueira
3364b6727c
fix(cli): build command features and bundles can have multiple values (#8744)
* fix(cli): build command  and  can have multiple values

* add value delimiter on bundles

* gitignore dist
2024-02-03 09:14:02 -03:00
Fabian-Lars
4806f9fc70
fix(core): Rename FrontendDist::Dist to Dir (#8743)
* fix(core): Rename FrontendDist::Dist to Dir

* Directory

* fix totokens impl

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-03 09:08:20 -03:00
Lucas Fernandes Nogueira
0cdfda2876
refactor: move plugin functionality from tauri-build to tauri-plugin (#8737)
* refactor: move plugin functionality from tauri-build to tauri-plugin

* fixes

* fix build

* move docs function

* autogenerated

* fix path
2024-02-03 08:48:57 -03:00
Lucas Fernandes Nogueira
63d6d474fd
fix(cli): UpdaterConfig is not flexible (#8741) 2024-02-03 08:24:15 -03:00
Lucas Fernandes Nogueira
1d21446e21
fix(bundler): add default value for xdg_mime env var (#8742) 2024-02-03 08:24:05 -03:00
Amr Bashir
8de308d1bf
feat(core): implement new config structure (#8723)
* feat(core): implement new config structure

RFC#5 f3e82a6b0c/texts/0005-tauri-config-restructure.md

* fixes

* remove tauri-plugin copy [skip ci]

* move platform specific configs

* fix build

* fix cli

* doctests

* change files

* read updater plugin config on CLI

* doctests

* remove env var from docs

* fix getting pubkey

* add migrations

* clippy

* update change file [skip ci]

* rename frontendDist to prodFrontend?

* Revert "rename frontendDist to prodFrontend?"

This reverts commit ef7394f085.

* fix all_features check

* fix field name

* single license getter on bundler

* readd msiexec_args

* remove unused fixture

* update template

* Update .changes/tauri-bundle-settings-rfc-5.md

* Update .changes/config-restructure-rfc-5.md

* lint bundler, fix change file

* rename AppUrl to FrontendDist, add explicit variants for docs

* fix build

* lint

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2024-02-03 00:39:48 -03:00
Lucas Fernandes Nogueira
e691208e7b
fix(cli): prevent creating interface twice avoiding double manifest rewrite (#7837) 2024-02-02 21:43:33 -03:00
Amr Bashir
e8d3793c3c
feat(tauri-build): add config-json feature flag (#8732)
* feat(tauri-build): add `config-json` feature flag

This allows disabling rebuilding when `tauri.conf.json` when using another config format

see https://github.com/tauri-apps/tauri/issues/8721

* document feature flag

* Update .changes/tauri-build-config-json.md [skip ci]

* Update core/tauri/src/lib.rs [skip ci]

* disable default features for tauri-build on tauri, plugins

* fmt

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-02 14:11:59 -03:00
Lucas Fernandes Nogueira
f492efd714
feat(cli): update template with permissions and capabilities (#8666)
* feat(cli): update template with permissions and capabilities

* update gitignore [skip ci]
2024-02-01 08:53:56 -03:00
time-river
6639a579c7
feat(core): add support to setting a webview proxy, closes #4263 (#8441)
* feat(wry): support proxy in wry runtime

wry has been supported http/socks5 proxy in
[#1006](https://github.com/tauri-apps/wry/pull/1006), which has been
merged in [commit
3cc4d79](3cc4d79843).

This patch aims to support its feature.

Signed-off-by: lin fu <river@vvl.me>

* Apply suggestions from code review

* Apply suggestions from code review

* Update core/tauri-runtime-wry/src/lib.rs

* Update core/tauri/src/window/mod.rs

* add macos-proxy flag

* add change file

* delete file

* update change file

* use macos-14 runner to test core

---------

Signed-off-by: lin fu <river@vvl.me>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-02-01 08:53:32 -03:00
Amr Bashir
a093682d2d
refactor(core): refactor and fix event system following multiwebview support (#8621)
* clippy

* refactor(core): refactor and fix event system following multiwebview support

* update documentation

* update js docs

* lint

* clippy

* update multiwindow example [skip ci]

* enhance event tests

* fix example

* Update .changes/tauri-event-after-multiwebview.md

Co-authored-by: Lucas Nogueira <118899497+lucasfernog-crabnebula@users.noreply.github.com>

* fix tests

* add diagram

* Add `App/AppHandle` even target

* Discard changes to examples/api/src-tauri/tauri-plugin-sample/permissions/schemas/schema.json

* revert accidental changes

* regenerate schemas

* fix doctests

* add helper methods

* update docs

* update api

* update docs [skip ci]

* update docs [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <118899497+lucasfernog-crabnebula@users.noreply.github.com>
2024-02-01 08:06:27 -03:00
Amr Bashir
7fcc0bcd34
feat(cli/add): add plugin init code to main.rs (#8490)
* feat(cli/add): add plugin to `main.rs`

closes #7696

* clippy

* fix change file

* adjust regex

* run cargo fmt

* check if already exists

* typo [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-01 08:05:45 -03:00
ChAyLom
30be0e3057
feat(bundler/NSIS): Add Russian to supported NSIS languages (#8303)
* Create Russian.nsh

* Update nsis.rs

* Create nsis-russian.md
2024-02-01 11:25:11 +01:00
Naman Garg
d6c7568c27
feat(bundler): Add files option to the AppImage Configuration. (#8720)
* Add `files` option to Appimage

* Add .changes file
2024-02-01 02:53:26 +02:00
Amr Bashir
8ce51cec3b
feat: retain cli args when relaunching after update, closes #7402 (#7718)
* feat: retain cli args when relaunching after update, closes #7402

* 1.61 compatible OsString join

* fix msi impl as well

* fix tests

* Update .changes/tauri-bundler-nsis-args.md

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>

* Update .changes/tauri-updater-retain-args.md

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>

* more typos

* fix update args

* pull args from Env

* check if not empty

* pin memchr

* Update core.rs

* Update core.rs

* move /args

* fix build

* lint

* more lints

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2024-01-31 16:02:48 -03:00
thewh1teagle
435d7513e4
feat: add webdriver options for windows (#8609)
* feat: add webdriver options for windows

* add change file, camel case

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-31 15:49:43 -03:00
Lucas Fernandes Nogueira
af61023273
refactor(core)!: Window::close triggers RunEvent::CloseRequested (#8710)
* refactor(core): Window::close triggers RunEvent::CloseRequested

* Update .changes/runtime-wry-window-close-event.md

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* add destroy [skip ci]

* change files

* delete files

* fix tests

* fix tests

* fix test impl of the close flow

* fmt

* build bundle

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-01-31 14:54:49 -03:00
Amr Bashir
9eaeb5a8cd
refactor: refactor parent APIs on WindowBuilder (#8622)
* refactor: refactor parent APIs on `WindowBuilder`

closes #8587 #1643

* fix build

* clippy

* support parent in JS and config

* change files

* fix build

* clippy

* fix doctests

* fix linux build

* fix doctests

* update docs

* fix api, update example to use JS API

* fix merge

* lint

* fix tests on windows

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-31 13:59:14 -03:00
Amr Bashir
a2fc3a6357
feat(api/window): add visible-on-all-workspaces, closes #8652 (#8657)
* feat(api/window): add visible-on-all-worksapces, closes #8652

* fix build and generate schema

* Update .changes/api-set-visible-on-all-workspaces.md

* revert permissions

* fix alias

* revert set_icon change

* add missing permission

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2024-01-31 12:36:39 -03:00
Amr Bashir
58fe2e812a
fix: improvements and ipc fixes for loading window content using custom protocol (#8670)
* fix: improvements and ipc fixes for loading window content using custom protocol

closes #5478

* Discard changes to tooling/cli/Cargo.lock

* clippy

* fix tests

* typo

* fix webviewurl deserialize

* resolve todo, fixes

* fmt

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-31 09:38:25 -03:00
Fabian-Lars
38b8e67237
feat: Add support for deep links (#8680)
* initial windows impl

* macos

* adapt windows impl to config changes for macos

* debian

* add missing x-scheme-handler prefix

* bundle xdg-mime

* typo

* revert messed up fmt

* rm pnpm lock

* rm todo

* Update core/tauri-utils/src/config.rs

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* Update core/tauri-utils/src/config.rs

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* &Option<> -> Option<&>

* DL0 -> R7

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-01-29 18:59:45 +02:00
Lucas Fernandes Nogueira
11de49788a
feat(cli): migrate allowlist scope (#8698)
* feat(cli): migrate allowlist scope

* fix tests

* lint

* fix totokens impl
2024-01-29 12:50:21 -03:00
Kasper Seweryn
b3209bb28b
fix(cli): disable global gitignore during tauri.conf.* lookup (#8688)
* fix: disable global gitignore

There are cases when people use git to manage their dotfiles in the home directory. When a tauri projects uses other name than `src-tauri` for the rust source code, the lookup may fail if there's a global gitignore.

* change file
2024-01-29 17:39:05 +02:00
Fabian-Lars
0bff8c325d
fix(cli): Ignore query parameter in dev server (#8697)
* fix(cli): Ignore query parameter in dev server

fixes #8148
additional ref: https://discord.com/channels/616186924390023171/1201199918379974766

* Update .changes/cli-devserver-queryparam.md

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-01-29 14:58:23 +02:00
Andrew
9cb9aa7978
fix(cli): add MaybeWorkspace to license field (#8672)
* Add MaybeWorkspace to license field

* Fix last changes

* Fix formatting

* Add change .MD file
2024-01-26 23:46:51 +01:00
Lucas Fernandes Nogueira
d70470f868
feat(build): save ACL metadata (#8678)
* feat(build): save ACL metadata

metadata will be read by the CLI later to show the user what has been enabled and what can be done

* lint

* fix cli
2024-01-25 15:33:36 -03:00
Lucas Fernandes Nogueira
1878766f7f
feat(cli): migrate allowlist to new ACL (#8667) 2024-01-24 16:57:40 -03:00
Lucas Fernandes Nogueira
c77b40324e
refactor(core): add support to multiple webviews on a Tauri window (#8280)
* feat: update to latest wry

* wry dev branch [skip ci]

* fix linux [skip ci]

* refactor(runtime): split webview and window types

* split dispatch

* implement create_webview

* move webview message

* wip webview mod

* create webview manager, finish webview struct and builder

* fix tests and docs

* rename WindowUrl to WebviewUrl

* update examples

* event refactor

* update JS API

* fix events

* update example

* add WebviewWindow class on JS

* fix macos build

* allow creating window+webview on the same runtime call

* rename tauri://window-created to tauri://webview-created

* Window::add_child

* use inner_size from webview on macOS

* add multiwebview example

* automatically resize webviews on window resize

* fix tests

* set_position, set_size

* position, size getters

* set_focus

* add close fn

* update mock runtime

* lint [skip ci]

* fix inner_size getter [skip ci]

* import hwnd [skip ci]

* update webview bound ratios on set_size/set_position

* add auto_resize option

* fix android

* fix build on windows

* typo

* with_webview isnt desktop only

* add WebviewWindow rust struct (and builder)

* fix build on android

* license header

* fix macos/windows

* fix macos build

* resolve todo

* handle window not found

* hide unstable features

* document unstable feature [skip ci]

* webview plugin permissions

* hide more stuff

* fix doctests

* typos

* add change files

* fix examples

* rename hook
2024-01-24 11:05:18 -03:00
tweidinger
3c2f79f6f3
Tauri ACL/Allowlist v2 Implementation and Plugin System Refactor (#8428)
* tauri-plugin concept

* wip

* move command module to its own directory

* wip: new command traits and generated code

* wip: whip

* wip: static dispatch

there is a man standing behind me

* wip

* re-add authority

* fix build [skip ci]

* parse plugin permissions

* merge permission files [skip ci]

* parse capabilities [skip ci]

* resolve acl (untested) [skip ci]

* split functionality, add some docs

* remove command2 stuff

* actually check runtime authority

* small fixes [skip ci]

* add function to auto generate basic permission for a command [skip ci]

* retrieve command scope, implement CommandArg [skip ci]

* fix tests [skip ci]

* global scope

* lint

* license headers [skip ci]

* skip canonicalize

* separate scope type in example

* remove inlinedpermission struct [skip ci]

* permission file schema

* capabilities schema

* move items from tauri-plugin to tauri-utils

this allows tauri-plugin to depend on tauri directly again
which will be used by the runtime feature as a superset to
existing plugin traits

* enable schema and glob [skip ci]

* fix glob [skip ci]

* fix capability schema [skip ci]

* enhance schema for permission set possible values [skip ci]

* permission set can reference other sets [skip ci]

* setup tests for resolving ACL

* fixture for permission set [skip ci]

* remote context test and small fix[skip ci]

* ignore empty scope [skip ci]

* code review [skip ci]

* lint [skip ci]

* runtime fixes

* readd schema feature on tauri-config-schema [skip ci]

* remove plugin example from workspace, it breaks workspace features resolution [skip ci]

* scope as array, add test [skip ci]

* accept new shapshot [skip ci]

* core plugin permissions, default is now a set

* license headers

* fix  on windows

* update global api

* glob is no longer optional on tauri-utils

* add missing permissions on api example [skip ci]

* remove ipc scope and dangerous remote access config

* lint

* fix asset scope usage

* create out dir [skip ci]

* reuse cargo_pkg_name [skip ci]

* capability window glob pattern [skip ci]

* add platforms for capability [skip ci]

* per platform schema [skip ci]

* lint [skip ci]

* rename allowlist build mod [skip ci]

* check restricted visibility

* simplify capability target [skip ci]

* hide codegen build behind tauri-build::try_run

* optimize build scripts [skip ci]

* fix tests

* tests for RuntimeAuthority::resolve_access

* remote domain glob pattern

* lint

---------

Co-authored-by: Chip Reed <chip@chip.sh>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@crabnebula.dev>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-22 21:24:15 -03:00
Olivier Lemasle
4ca4148e64
fix(bundler): fix error message (#8642) 2024-01-19 22:14:46 +02:00
Amr Bashir
7f033f6dcd
fix(core): fix undecorated window resizing, #8519 (#8537)
* fix(core): fix undecorated window resizing, fixes #8519

* js api

* fix invoke call

* Update tauri-window-start-resize-dragging.md

* clippy
2024-01-18 19:34:55 +02:00
Naman Garg
7aa30dec85
feat: Add Section, Priority and Changelog options (#8620)
* Init section, priority and changelog

* Add section. priority and changelog support

* fix variable name

* Add .changes file

* Fix Formatting

* Apply suggestions from code review
2024-01-17 04:21:46 +02:00
github-actions[bot]
e0b38d7434
Apply Version Updates From Current Changes (#8438)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2024-01-16 18:11:50 -03:00
Ning Sun
ef9fb982f8
feat: upgrade handlebars to 5.0 (#8615) 2024-01-16 17:21:18 +02:00
Naman Garg
4926648751
deps: Libflate to flate2 (#8618)
* Replace libflate with flate2

* Add .changes file

* Cargo fmt
2024-01-16 15:52:19 +02:00
Amr Bashir
06890c70c6
feat: enable socks-proxy for bundler download (#8596) (#8611)
* feat: enable socks-proxy for bundler download

* change file

Co-authored-by: Lai Zn <laizenan@gmail.com>
2024-01-16 15:42:53 +02:00
Lai Zn
8032b22f2a
feat: enable socks-proxy for bundler download (#8596)
* feat: enable socks-proxy for bundler download

* change file
2024-01-16 04:03:35 +02:00
Naman Garg
6bdba1f330
fix(bundler/deb): use lintian-compliant permissions , closes #7992 (#8585) 2024-01-15 18:08:07 +02:00
Fabian-Lars
b546b42db7
fix(core): Retain order of map keys in ipc, fixes #7922 (#8577)
* fix(core): Retain order of map keys in ipc, fixes #7922

* enable dep on http-api feature instead of http-request

* Create fix-formbody-order.md

* Update fix-formbody-order.md
2024-01-10 21:03:25 +02:00
Fabian-Lars
97e3341299
fix(api.js): mock __TAURI_INTERNALS__ in mockIPC and mockWindows (#8534)
* fix(api.js): mock `__TAURI_INTERNALS__` in `mockIPC` and `mockWindows`

* mock internals.invoke instead of internals.ipc
2024-01-04 01:37:27 +02:00
Fabian-Lars
67d7877f27
fix(cli): Watch workspace members if tauri dir is workspace root (#8520)
* fix(cli): Watch workspace members if tauri dir is ws root

See title. This PR also includes a fix/workaround for paths with funny characters that may not make the glob expansion panic.

Fixes #8509

* extract into function

* cleanup
2024-01-04 01:37:05 +02:00
Lucas Fernandes Nogueira
0ec28c39f4
feat(cli): migrate tauri-build version (#8529)
* feat(cli): migrate tauri-build version

This changes the migrate command to also migrate the tauri-build dependency to v2, previously it only updated the tauri dependency.

* lint
2024-01-02 15:24:50 -03:00
Jason Tsai
89911296e4
feat(bundler): codesign nested code on macos (#8259)
* feat(bundler): codesign nested code on macos

* chore: update changelog tag

* typo

* also sign stuff in the Libraries folder

tested this for spacedrive, which has a bunch of dylib inside the libraries folder

* Update .changes/mac-bundler-nested-code-sign.md [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-12-28 13:58:24 -03:00
Palash Bansal
27bad32d4d
feat: Add files field in macos build config, closes #3290 (#7798)
* Add appContents field in macos tauri config.

* Change MacConfig::appContents to MacConfig::files to make it similar to DebConfig::files.

* Change appContents to files in helloworld/tauri.conf.json

* use common::copy_dir helper

* add change files [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-12-28 12:10:50 -03:00
Amr Bashir
4f73057e6f
refactor!: match target triple for TAURI_ENV_ARCH (#8486)
* refactor!: match target triple for `TAURI_ENV_ARCH`

* fix build

* Update .changes/cli-hooks-env-vars-breaking.md

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>

* Update tooling/cli/ENVIRONMENT_VARIABLES.md

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2023-12-28 12:10:12 -03:00
Jérôme Rx
3e00116e9f
rename appimage.sh => build_appimage.sh in error (#8295) 2023-12-28 08:04:43 -03:00
Olivier Lemasle
091100acbb
feat(bundler): Add RPM packaging, closes #4402 (#5202)
* feat(bundler): Add RPM packaging

* feat(bundler): Update 'rpm' to 0.13.1

* Fix fmt
2023-12-23 18:38:15 +01:00
Lucas Fernandes Nogueira
7e4580afed
fix(cli): remove test only relevant to v1 branch, adjust migration test (#8451) 2023-12-20 18:35:50 -03:00
renovate[bot]
883e52153e
chore(deps) Update Tauri API Definitions (1.x) (#8449)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-20 14:16:58 -03:00
Fabian-Lars
41990cd344
fix(cli): Handle target triples with 4 components (#8448)
* fix(cli): Handle target triples with 4 components

Follow up of #8321 which broke the `TAURI_ENV_` vars for linux, windows and ios-sim

* use host for platform as is

* clippy
2023-12-20 14:14:49 -03:00