Commit Graph

562 Commits

Author SHA1 Message Date
Lucas Fernandes Nogueira
8483fde975
feat(core): expose run_return on Linux (#3352) 2022-02-07 11:30:45 -03:00
Lucas Fernandes Nogueira
55aa22de80
feat(core): add Window#open_devtools API, closes #1213 (#3350) 2022-02-07 10:04:33 -03:00
Lucas Fernandes Nogueira
03fc92c830
fix(core): resolve request instead of panicking on asset protocol (#3347) 2022-02-06 23:54:47 -03:00
Lucas Fernandes Nogueira
f739e446f5
fix(core): set window URL before preparing asset protocol CORS header (#3346) 2022-02-06 18:50:59 -03:00
Lucas Fernandes Nogueira
9b34055264
fix(core): window-specific event delivery, closes #3302 (#3344) 2022-02-06 17:50:02 -03:00
Lucas Fernandes Nogueira
6330b66be7
fix(core): sidecar usage on Windows, closes #3341 (#3345) 2022-02-06 16:59:20 -03:00
Fabian-Lars
7d2a6d8055
Fix(core): import regex if shell-open is enabled. (#3339)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-06 10:50:27 -03:00
Ngo Iok Ui (Wu Yu Wei)
343ea3e2e8
Update wry to 0.13 (#3336)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-06 10:08:12 -03:00
Kasper
d0f9a03d20
Add tauri::Builder doc comment examples (#3151)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2022-02-05 20:36:36 -03:00
renovate[bot]
78bf08e9ad
chore(deps) Update Rust crate clap to v3.0.6 (#3194)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-02-05 15:17:55 -03:00
Lucas Fernandes Nogueira
af329f2722
feat(bundler): wix localization, closes #3174 (#3179) 2022-02-05 15:13:07 -03:00
Lucas Nogueira
a017fbc71d
fix(core): regression on dialog and updater feature flag usage 2022-02-05 14:55:28 -03:00
Ngo Iok Ui (Wu Yu Wei)
2815bf6511
Update gtk to 0.15 (#3247) 2022-02-05 13:29:03 +08:00
Lucas Fernandes Nogueira
4818531aba
refactor(core): add blocking dialog APIs, improve docs, closes #3255 (#3270) 2022-02-05 00:43:19 -03:00
renovate[bot]
effba95dd6
chore(deps) Update Rust crate zstd to 0.10 (#3282)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-05 00:43:03 -03:00
Lucas Fernandes Nogueira
1dbd887a6e
fix(core): emit tauri://window-created event for windows created on Rust (#3299) 2022-02-04 23:47:44 -03:00
Lucas Fernandes Nogueira
878b8b9a1f
fix(core): immediately listen to window-created, closes #3297 (#3298) 2022-02-04 23:39:23 -03:00
Jonas Kruckenberg
9b19a805aa
fix(api.js) Replace number[]with Uint8Array. fixes #3306 (#3305)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-04 22:18:23 -03:00
Lucas Fernandes Nogueira
f5109e0c96
fix(api): window label null instead of actual value, closes #3295 (#3332) 2022-02-04 21:57:41 -03:00
Lucas Nogueira
a76abc48f2
fix(config): doc for beforeDevCommand and beforeBuildCommand 2022-02-04 18:13:46 -03:00
Cobalt
15358b1895
Expose event interface. fixes #2733 (#3321)
Co-authored-by: Cobalt <c0balt@disroot.org>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2022-02-04 17:44:12 -03:00
Lucas Fernandes Nogueira
bff86ee4c4
chore: remove egui feature (#3330) 2022-02-04 17:02:54 -03:00
Lucas Nogueira
a434393413
fix(core): feature flag usage on the shell APIs 2022-02-04 16:28:11 -03:00
Lucas Nogueira
01f8fff34b
fix(ci): Rust workspace test with all features 2022-02-04 15:17:08 -03:00
Lucas Nogueira
c6ba7f6524
fix(ci): update lockfiles 2022-02-04 14:48:45 -03:00
Lucas Nogueira
0fcd7bec37
fix(deps): remove unused dependencies 2022-02-04 14:24:56 -03:00
Lucas Nogueira
675d171eed
fix(core): tests, lint 2022-02-04 14:03:27 -03:00
Lucas Nogueira
5fe3a37da3
fix(build): allowlist features mismatch detection 2022-02-04 13:37:23 -03:00
Lucas Nogueira
a08509c641
fix(api): remove currentDir API from the path module 2022-02-04 11:49:23 -03:00
Lucas Nogueira
224f81b4d0
chore(deps): update wry rev 2022-02-04 11:40:56 -03:00
Lucas Nogueira
06cbc1ee57
chore(core): fix clippy warnings 2022-02-03 10:18:24 -03:00
Lucas Nogueira
995de57a76
Add seamless support for using JSON5 in the config file (#47)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-03 10:16:00 -03:00
Lucas Fernandes Nogueira
61851f49ea
refactor(core): use regex only for the shell scope API (#46)
Co-authored-by: chip <chip@chip.sh>
2022-02-03 10:01:30 -03:00
Lucas Nogueira
d740ae66ac
refactor: move data-url usage behind window-data-url feature 2022-02-02 20:43:14 -03:00
Lucas Nogueira
0d1e3219b4
Merge branch 'next' into feat/audit-patches 2022-02-02 20:09:41 -03:00
chip
7c3db7a381
cache current binary path much sooner (#45)
* use ctor to cache starting executable

* clean up symlink checking logic

* changefile

* use wrapper for the static, put it in tauri_utils

* cargo +nightly fmt

* add license header to `StartingBinary`

* fix clippy warning

* fix: test

* simplify macOS dangerous flag detection

* update restart test to allow expected failure on macOS

* finish documentation

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-02-02 19:58:56 -03:00
Lucas Nogueira
b82e2b5cf7
feat(core): configure HTTP scope using glob patterns 2022-01-31 10:30:32 -03:00
Lucas Nogueira
de35f4b624
fix(core): use std::env::temp_dir instead of fixed /tmp 2022-01-31 10:30:27 -03:00
Lucas Nogueira
ff37a715ab
fix(core): remove $APP from fs scope default 2022-01-31 10:30:10 -03:00
Lucas Nogueira
645b5a8b8a
chore: fix clippy warnings and tests 2022-01-31 10:30:05 -03:00
Lucas Nogueira
dc8ae7485e
fix: put eprintln usage behind #[cfg(debug_assertions)] 2022-01-31 10:29:56 -03:00
Lucas Nogueira
696dca58a9
refactor(core): remove BaseDirectory::Current variant 2022-01-26 16:48:31 -03:00
Lucas Nogueira
c80e8b6886
fix: fs-read-file allowlist usage 2022-01-26 16:47:42 -03:00
chip
10314cd5cf
feat(core): add argument parsing on shell scope (#44)
* feat: initial implementation

* feat: arg parser

* refactor: move codegen to context struct

* feat: regex validation

* fix tests

* fix: support magic argument value `-`

* feat: support value regex starting with `-`

* refactor: shell_scope mod, add happy path tests

* wip: scope command arguments

* wip: commands

* add better scoped errors and pattern matching

* add documentation to scoped command items

* support using the new shell scope for open

* use the proper items in tauri::scope during codegen

* shell-open uses ScopeError::Validation also

* use shell scoping for sidecar commands

* fix: cli.rs build

* fix: validation when arg list is empty

* require args in a non-fixed, non-empty config list

Co-authored-by: Chip Reed <chip@chip.sh>
2022-01-26 16:43:24 -03:00
Lucas Nogueira
28a67fdb60
chore(docs): update platform-specific documentation notes 2022-01-22 14:35:36 -03:00
Lucas Nogueira
ec8661f18e
fix: do not enforce updater's pubkey field when active is false 2022-01-17 10:48:03 -03:00
Lucas Nogueira
487441c991
fix: update dev dependencies 2022-01-17 10:47:54 -03:00
chip
d5d6d2abc1
Isolation Pattern (#43)
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2022-01-17 10:46:14 -03:00
Lucas Nogueira
8376e3c035
chore(deps): update webview2-com to 0.30 on tauri-runtime 2022-01-16 15:58:17 -03:00
Jonas Kruckenberg
ce03909fb6
[feat] add dialog title option. closes #3232 (#3233) 2022-01-16 19:41:11 +01:00
Lucas Fernandes Nogueira
9014fe88b6
refactor(core): cleanup egui implementation (#3227) 2022-01-16 01:14:18 -03:00
Lucas Nogueira
b9c00d2db5
chore(deps): update windows to 0.30 2022-01-15 13:20:30 -03:00
Lucas Fernandes Nogueira
ab7d3b51eb
feat: emit CloseRequested event for egui windows (#3222) 2022-01-15 12:23:26 -03:00
Lucas Fernandes Nogueira
e15a8af843
refactor(core): return Window on create_window API (#3211) 2022-01-13 13:51:45 -03:00
renovate[bot]
85b738fe68
chore(deps) Update Rust crate blake3 to 1.3 (#3200)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-12 10:19:27 -03:00
Ahmad AlHallak
c6e05380f7
fix: getter macro panicking on RecvError, closes #3188 (#3192)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-01-10 15:33:35 -03:00
Lucas Nogueira
c077f44927
feat: force endpoint URL to use https on release [TRI-015] (#41) 2022-01-09 16:40:22 -03:00
Lucas Nogueira
d95cc83105
feat: enforce updater public key [TRI-015] (#42) 2022-01-09 16:37:03 -03:00
Lucas Nogueira
b43019a2b0
fix: shell allowlist scope 2022-01-09 16:31:40 -03:00
chip
2e212e1eac
use our current_exe implementation in more places (#39) 2022-01-09 16:30:25 -03:00
david
be096623bf
feat(updater): refactor in-memory (#37)
* refactor: updater archive is now fully validated from memory

Signed-off-by: David Lemarier <david@lemarier.ca>

* fix CI

Signed-off-by: David Lemarier <david@lemarier.ca>

* make clippy happy

Signed-off-by: David Lemarier <david@lemarier.ca>

* update documentation and fmt

Signed-off-by: David Lemarier <david@lemarier.ca>

* cleanup and add final doc

Signed-off-by: David Lemarier <david@lemarier.ca>

* fmt

Signed-off-by: David Lemarier <david@lemarier.ca>

* make clippy happy

Signed-off-by: David Lemarier <david@lemarier.ca>

* remove unwanted clone

Signed-off-by: David Lemarier <david@lemarier.ca>

* [ci skip] cleanup

Signed-off-by: David Lemarier <david@lemarier.ca>

* run `http_updater_complete_process` on all platforms

Signed-off-by: David Lemarier <david@lemarier.ca>

* fix CI: `cargo test --all-features` on core tests

Signed-off-by: David Lemarier <david@lemarier.ca>

* fix appimage build

Signed-off-by: David Lemarier <david@lemarier.ca>

* update

Signed-off-by: David Lemarier <david@lemarier.ca>

* chore(deps) Update dependency @types/imagemin to v8 (#2635)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
Co-authored-by: david <david@lemarier.ca>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: chip <chip@chip.sh>
Co-authored-by: David Von Edge <david.vonedge@smiths.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Amr Bashir <48618675+amrbashir@users.noreply.github.com>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Elvinas Predkelis <elvinas.predkelis@gmail.com>
Co-authored-by: edgex004 <edgex004@gmail.com>
Co-authored-by: Barry Simons <linuxuser586@gmail.com>
Co-authored-by: Kris Scott <kscott91@gmail.com>
Co-authored-by: grey4owl <66082492+grey4owl@users.noreply.github.com>
Co-authored-by: cybai <cyb.ai.815@gmail.com>
Co-authored-by: Lucas Nogueira <lucasfernandesnog@gmail.com>
Co-authored-by: Robert Buchanan <robbie.buchanan@ioneyed.com>
Co-authored-by: Kasper <kasperkh.kh@gmail.com>
Co-authored-by: Manuel Quarneti <manuelquarneti@gmail.com>
Co-authored-by: Stef Kors <stef.kors@gmail.com>
Co-authored-by: David D <1168397+davedbase@users.noreply.github.com>
Co-authored-by: Adilson Schmitt Junior <adilsonschj@gmail.com>
Co-authored-by: Bill Avery <wravery@users.noreply.github.com>
Co-authored-by: Julien Kauffmann <90217528+jkauffmann-legion@users.noreply.github.com>
Co-authored-by: Andrea Giammarchi <andrea.giammarchi@gmail.com>
Co-authored-by: ThisSeanZhang <46880100+ThisSeanZhang@users.noreply.github.com>
Co-authored-by: Jonas Kruckenberg <iterpre@protonmail.com>

* Revert "chore(deps) Update dependency @types/imagemin to v8 (#2635)"

This reverts commit c0285e873d.

* [ci skip] fix errors

Signed-off-by: David Lemarier <david@lemarier.ca>

* [ci skip] fix build errors

Signed-off-by: David Lemarier <david@lemarier.ca>

* [ci skip] path `SafePathBuf` tests

Signed-off-by: David Lemarier <david@lemarier.ca>

* allow minisign legacy

Signed-off-by: David Lemarier <david@lemarier.ca>

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: chip <chip@chip.sh>
Co-authored-by: David Von Edge <david.vonedge@smiths.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Amr Bashir <48618675+amrbashir@users.noreply.github.com>
Co-authored-by: Elvinas Predkelis <elvinas.predkelis@gmail.com>
Co-authored-by: edgex004 <edgex004@gmail.com>
Co-authored-by: Barry Simons <linuxuser586@gmail.com>
Co-authored-by: Kris Scott <kscott91@gmail.com>
Co-authored-by: grey4owl <66082492+grey4owl@users.noreply.github.com>
Co-authored-by: cybai <cyb.ai.815@gmail.com>
Co-authored-by: Lucas Nogueira <lucasfernandesnog@gmail.com>
Co-authored-by: Robert Buchanan <robbie.buchanan@ioneyed.com>
Co-authored-by: Kasper <kasperkh.kh@gmail.com>
Co-authored-by: Manuel Quarneti <manuelquarneti@gmail.com>
Co-authored-by: Stef Kors <stef.kors@gmail.com>
Co-authored-by: David D <1168397+davedbase@users.noreply.github.com>
Co-authored-by: Adilson Schmitt Junior <adilsonschj@gmail.com>
Co-authored-by: Bill Avery <wravery@users.noreply.github.com>
Co-authored-by: Julien Kauffmann <90217528+jkauffmann-legion@users.noreply.github.com>
Co-authored-by: Andrea Giammarchi <andrea.giammarchi@gmail.com>
Co-authored-by: ThisSeanZhang <46880100+ThisSeanZhang@users.noreply.github.com>
Co-authored-by: Jonas Kruckenberg <iterpre@protonmail.com>
2022-01-09 16:30:14 -03:00
Lucas Nogueira
24fa21c9b7
fix: build with all features 2022-01-09 16:29:56 -03:00
Lucas Fernandes Nogueira
4d89f60d77
refactor(core): prevent path traversal [TRI-012] (#35) 2022-01-09 16:28:56 -03:00
Lucas Fernandes Nogueira
d4db95e716
feat(core): shell execute API scope [TRI-002] (#36)
* feat(core): shell execute API scope [TRI-002]

* fix tests

* also check with empty extension

* lockfile
2022-01-09 16:28:22 -03:00
Lucas Nogueira
eae311e6e2
fix(core): ipc and tests 2022-01-09 16:27:57 -03:00
Lucas Nogueira
766c4f2c57
refactor: unify fs read and write cmds for binary/text data [TRI-009] (#34) 2022-01-09 16:24:44 -03:00
Lucas Fernandes Nogueira
bf5667f21c
fix(core): resolve symbolic links on current_exe calls [TRI-048] (#33) 2022-01-09 16:21:21 -03:00
Lucas Fernandes Nogueira
6ad702920f
feat(core): allowlist tests [TRI-028] (#28) 2022-01-09 16:20:55 -03:00
chip
fa21fe9ca6
fix typo in current_binary docs (#31) 2022-01-09 16:20:48 -03:00
chip
5f3487d0c4
Resolve symlinks during tauri::api::process::current_binary [TRI-047] (#29)
* create integration test for tauri process restart

most notably, this integration test is entirely self-contained and
should successfully run with a regular `cargo test`.

* cargo fmt

* canonicalize the current_binary path to resolve links

* add licensing metadata to restart test cargo project

* remove use statements for simpler restart test binary code

* allow windows to fail creating the symlink due to permissions

* provide an overload of information on current_binary

* add nested symlinking to the restart test

* user -> attacker

* grammar (i think)
2022-01-09 16:20:32 -03:00
Lucas Nogueira
6feb5a0c50
refactor(core): api feature flags, documentation (#26) 2022-01-09 16:20:13 -03:00
Lucas Fernandes Nogueira
85df94f2b0
feat(core): config for fixed webview2 runtime version path (#27) 2022-01-09 16:16:45 -03:00
Lucas Fernandes Nogueira
0ad1c6515f
feat(core): add http allowlist scope [TRI-008] (#24) 2022-01-09 16:16:12 -03:00
Lucas Nogueira
239bba5666
refactor(core): check notification permission on the Rust endpoint [TRI-017] (#23) 2022-01-09 16:15:47 -03:00
Lucas Nogueira
a48b8b18d4
feat(core): validate callbacks and event names [TRI-038] [TRI-020] (#21) 2022-01-09 16:12:29 -03:00
Lucas Nogueira
5687b7fdcd
refactor: use macros to match core commands with allowlist conditionals [TRI-028] (#20) 2022-01-09 15:41:28 -03:00
Lucas Nogueira
828b9ee54c
fix: build failing on env validation on windows/macos 2022-01-09 15:20:14 -03:00
Lucas Nogueira
ae60a6e892
fix: use default values for scopes on serde 2022-01-09 15:19:08 -03:00
Lucas Nogueira
9b4c47c4f8
refactor(build): use cargo_toml instead of toml_edit for perf [TRI-023] 2022-01-09 14:59:06 -03:00
Lucas Nogueira
63921fada4
refactor: change tauri::api::open with argument to an enum [TRI-022] (#19) 2022-01-09 14:58:38 -03:00
Lucas Fernandes Nogueira
eed017287f
feat(core): add shell > sidecar allowlist and process feature flag [TRI-037] (#18) 2022-01-09 14:57:43 -03:00
Lucas Fernandes Nogueira
6fbd6dba52
feat(core): validate AppImage execution when env vars are set [TRI-041] (#17) 2022-01-09 14:57:29 -03:00
Lucas Nogueira
8259cd64c2
feat(core): inject CSP on data URLs [TRI-049] (#16) 2022-01-09 14:57:12 -03:00
Lucas Fernandes Nogueira
d4017d505c
chore: remove eprintln! usage on release [TRI-051] (#15) 2022-01-09 14:49:17 -03:00
Lucas Nogueira
d660cab38d
feat: enhance allowlist configuration [TRI-027] (#11) 2022-01-09 14:48:55 -03:00
Lucas Fernandes Nogueira
680554de3e
feat: validate window label [TRI-021] (#13) 2022-01-09 14:30:43 -03:00
Lucas Fernandes Nogueira
d42ccfb34f
feat: add clipboard flag to WebviewAttributes [TRI-032] (#12) 2022-01-09 14:30:31 -03:00
Lucas Nogueira
7920ff14e6
feat: scope the fs API and the asset protocol [TRI-026] [TRI-010] [TRI-011] (#10) 2022-01-09 14:30:04 -03:00
Lucas Nogueira
3420aa5031
refactor: IPC handler [TRI-019] (#9)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2022-01-09 14:17:29 -03:00
Lucas Nogueira
6ac21b3cef
feat: add private api feature flag (#7) 2022-01-09 11:29:29 -03:00
Lucas Nogueira
cf54dcf9c8
feat: improve CSP security with nonces and hashes, add devCsp [TRI-004] (#8) 2022-01-09 11:11:59 -03:00
Lucas Nogueira
dd83217301
fix: build on windows 2022-01-09 10:58:06 -03:00
Lucas Nogueira
7209fdf732
refactor(core): load APPIMAGE and APPDIR env vars on startup [TRI-007] [TRI-041] 2022-01-09 10:57:29 -03:00
Lucas Nogueira
4de285c396
feat(core): validate Cargo features matching allowlist [TRI-023] 2022-01-09 10:55:09 -03:00
Lucas Fernandes Nogueira
46f2eae8aa
feat: allow config's version to be a path to package.json, closes #2967 (#2971) 2022-01-07 16:55:30 -03:00
Lucas Fernandes Nogueira
0600099696
feat(api): support unknown types for event emit payload, closes #2929 (#2964) 2022-01-07 16:50:07 -03:00
Lucas Fernandes Nogueira
b7a2345b06
feat(core): add raw headers to HTTP API, closes #2695 (#3053) 2022-01-07 13:53:04 -03:00
renovate[bot]
e637361e4c
chore(deps) Update Rust crate clap to v3.0.4 (#3159)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 13:52:11 -03:00
Lucas Nogueira
c7621aa019
chore: fix some clippy warnings 2022-01-06 10:39:21 -03:00
Ngo Iok Ui (Wu Yu Wei)
3dddce5436
fix(tauri-runtime-wry): egui deps should be added behind the flag (#3170)
* Add egui deps behind feature flag

* Fix errors on Linux
2022-01-05 22:39:43 +08:00