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
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
Lucas Fernandes Nogueira
cbd9755e09
fix: process logs not showing on iOS ( #8977 )
2024-02-25 17:38:27 -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
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
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
Amr Bashir
77f49ad55e
refactor: optimize undecorated resizing handling ( #8790 )
...
* refactor: optimize undecorated resizing handling
* license
* separate modules
* fix windows
* rename export
* fix export
* same for gtk
* shared hit_test function
* change cursor on drag
* only set cursor on windows
* Revert "only set cursor on windows"
This reverts commit 03294a8430
.
* fix flickering on Windows, change cursor on motion on Linux
* remove changing cursor on move on linux
* fix linux implementation
* clippy
* Windows, on left click only
* prevent on fullscreen, use OS border size on Windows
* fix build
* clippy
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-02-18 15:56:57 -03:00
dependabot[bot]
d72b6f3842
chore(deps): bump undici from 5.26.5 to 5.28.3 in /examples/api ( #8877 )
...
Bumps [undici](https://github.com/nodejs/undici ) from 5.26.5 to 5.28.3.
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v5.26.5...v5.28.3 )
---
updated-dependencies:
- dependency-name: undici
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-18 10:42:24 -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
edb11c138d
feat(build): support plugins that are defined in app crate ( #8781 )
...
* feat(build): support plugins that are defined in app crate
* dx
2024-02-16 08:24:40 -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
Lucas Fernandes Nogueira
2f55bfecbf
chore(deps): update wry to 0.36 ( #8795 )
...
* chore(deps): update wry to 0.36
* rwh 0.6
* remove raw_window_handle usage
* fix build
* fix windows test
2024-02-07 22:26:29 -03: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
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
Lucas Fernandes Nogueira
0f2789cd67
fix(build): do not rewrite unchanged schema ( #8757 )
...
* fix(build): do not rewrite unchanged schema
* typo
2024-02-04 12:45:59 +01:00
Lucas Nogueira
f1d0f452a2
chore: pin tao to 0.25
2024-02-03 11:57:54 -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
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
0a01b5b720
fix(core): do not embed assets on dev when using a URL ( #8739 )
2024-02-03 08:18:59 -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
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
3e5c28ff4f
feat(tauri-plugin): generate permissions reference markdown file for plugin ( #8729 )
...
* feat(acl): generate reference markdown file
* lint
* generate plugin docs instead
2024-02-01 17:14:23 -03:00
Lucas Fernandes Nogueira
7315189e76
chore: preserve order on schemas ( #8724 )
2024-02-01 09:16:10 -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
Lucas Fernandes Nogueira
aa758a850f
refactor(core): delete the command module ( #8716 )
2024-01-31 14:02:52 -03:00
Amr Bashir
e1eb911f5e
fix(menu): ensure init & drop is done on main thread ( #8582 )
...
* fix(menu): ensure init & drop is done on main thread
* move macros back
* fix doctests
* fix macos doctests
* generate inner types and add drop implementation on inner
* clippy
* fix leftoever merge conflicts
* fix doctests
* update api example
* add missing change file
* move macro
* fix tray import
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-31 12:01:05 -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
Lucas Fernandes Nogueira
00e1567584
refactor(core): exit() and restart() triggers ExitRequested and Exit ( #8708 )
...
* refactor(core): exit() and restart() triggers ExitRequested and Exit
* update docs
* update doc
2024-01-30 12:10:22 -03:00
Lucas Fernandes Nogueira
57e3d43d96
feat(acl): generate schema for scope ( #8690 )
...
* feat(acl): generate schema for scope
* allow plugin to define its global scope schema
* refactor to use schemas folder instead of individual files
* change signature
* delete .schema.json files
2024-01-29 13:36:31 -03:00
Lucas Fernandes Nogueira
049ca2d54f
fix(examples): deadlock on api example unit test ( #8671 )
2024-01-24 21:52:28 -03:00
Lucas Fernandes Nogueira
30a64a9cda
refactor: global scope error handling, fix usage with multiple plugins ( #8669 )
...
* refactor: global scope error handling, fix usage with multiple plugins
* lint
2024-01-24 20:57:46 -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
Lucas Fernandes Nogueira
74a2a6036a
chore: add change files for #8428 ( #8661 )
2024-01-23 13:19:51 -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
dependabot[bot]
303708d0aa
chore(deps-dev): bump vite from 4.4.12 to 4.5.2 in /examples/api ( #8646 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 4.4.12 to 4.5.2.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v4.5.2/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v4.5.2/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-20 04:50:55 +02:00
Lucas Nogueira
d621d3437c
feat: add tracing (port from #8289 ) ( #8607 )
...
* feat(tracing): add IPC tracing
* span for deserialization
* trace spans for IPC command handlers
* fix spans usage
* app tracing [skip ci]
* window tracing
* fix run never resolving all spans
* fix draw not entered
* change level
* feat(core): Manager::emit_filter and optimize serialization (#7512 )
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
* event spans
* lint & fix tests
* change eval to run sync
* fix instrument
* update wry
* change separator
* Update core/tauri/src/plugin.rs
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
* Update core/tauri/src/window.rs
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
* Update core/tauri/src/window.rs
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
* Update core/tauri/src/window.rs
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
* Update core/tauri/src/window.rs
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
* instrument separators
* remove on_event trace
* skip all arguments on App::build tracing
* ipc spans adjustments
* delete change file
* improve how request and response are added as values (serialize)
* do not run evalScript sync on android :( freezes the app
* wry 0.35.2
* add change file
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Jonas Kruckenberg <118265418+CrabNejonas@users.noreply.github.com>
2024-01-16 02:37:50 +02:00
Lucas Nogueira
a9b87c057d
Merge branch '1.x' into dev
2023-12-19 13:52:53 -03:00
dependabot[bot]
ea03adee74
chore(deps-dev): bump vite from 4.4.9 to 4.4.12 in /examples/api ( #8342 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 4.4.9 to 4.4.12.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v4.4.12/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v4.4.12/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-18 18:42:51 -03:00
Lucas Fernandes Nogueira
0d0501cb7b
refactor(clipboard): use arboard instead of tao closes #8177 ( #8394 )
...
* refactor(clipboard): use arboard instead of tao closes #8177
* update api lock
* add change file
2023-12-14 13:41:20 -03:00
Lucas Nogueira
5e05236b49
feat(core): add tracing for vital functionality closes #5204 ( #8289 )
...
* feat(core): add tracing for vital functionality
* Update core/tauri-runtime-wry/src/lib.rs [skip ci]
* Update Cargo.toml [skip ci]
* tracing feature
* wry 0.24.6
* add change tag
* add tracing to CI test
* enhance spans for update check
* remove app from debug impl
2023-11-27 16:56:46 +02:00
Lucas Fernandes Nogueira
ebc3e78e68
feat: update to latest wry ( #8213 )
...
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
2023-11-21 12:32:06 -03:00
Amr Bashir
bf095df55a
feat: expose Manager::resources_table
( #8276 )
...
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2023-11-21 07:57:35 -03:00
Fabian-Lars
c2ad4d28c4
refactor(api)!: Rename primitives
mod to core
( #8273 )
2023-11-20 17:53:13 -03:00
renovate[bot]
aa1d67ab75
chore(deps) Update Tauri Core (dev) ( #8227 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-11-19 14:21:12 -03:00
Amr Bashir
f93148eac0
feat: add tray and menu javascript APIs and events, closes #6617 ( #7709 )
...
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-11-19 08:38:24 -03:00
renovate[bot]
b6ed4ecb37
chore(deps) Update Rust crate syn to v2 (dev) ( #7634 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-11-13 08:20:19 -03:00