Compare commits

...

120 Commits

Author SHA1 Message Date
github-actions[bot]
b7ae725c5e Apply Version Updates From Current Changes (#6901)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2023-06-14 12:59:28 -03:00
Lucas Fernandes Nogueira
bd96edd2b9 fix: bump macros, codegen and build crates with minor (#7203) 2023-06-14 12:09:11 -03:00
Lucas Fernandes Nogueira
aa94f049c1 fix(tests): adjust default bundle target for updater integration test (#7201) 2023-06-14 11:17:02 -03:00
Lucas Fernandes Nogueira
c1d36e4953 chore: remove duplicated crate in change file (#7198) 2023-06-14 15:05:44 +03:00
Fabian-Lars
4cfb686d2b fix(cli): Pin minisign to 0.7.3 to prevent issues with empty key passwords (#7197) 2023-06-14 08:00:28 -03:00
renovate[bot]
d5769b3bfb chore(deps) Update Rust crate log to 0.4.19 (#7193)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-14 07:37:06 -03:00
renovate[bot]
066417d3f0 chore(deps) Update Rust crate log to 0.4.19 (#7194)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-14 07:36:46 -03:00
renovate[bot]
29a287ee82 chore(deps) Update Tauri API Definitions to v5.59.11 (#7195)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-14 07:36:26 -03:00
Amr Bashir
d75c1b829b fix(cli): warn about bundling updater target without appropriate targets, closes #7181 (#7189)
* fix(cli): warn about bundling updater target without appropriate targets, closes #7181

* change tags

* cleanup

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-06-14 02:14:35 +03:00
Lucas Fernandes Nogueira
696d77c3ce fix(core): global events now reaches window listeners, closes #4493 (#7163)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-06-13 08:05:58 -03:00
Fabian-Lars
5d85d0990c fix(core): Send updater status events when default dialog is enabled, closes #7128 (#7157) 2023-06-13 08:05:42 -03:00
Amr Bashir
076e1a81a5 fix(core): use u32 for js listeners ids, closes #7119 (#7159) 2023-06-07 17:54:04 -03:00
Amr Bashir
fc2e4083b0 ci: check for change tag (#7149)
* ci: check for change tag

* fix workflow

* Update .scripts/ci/check-change-tags.js

* feat: also check if tag is known

seems like covector does not check that so we can do it here for now

* remove push run

* only check changed files

* add missing tag

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2023-06-07 16:32:36 +03:00
Lucas Fernandes Nogueira
1d99f8a3c2 feat(core): expose test utils (#4752) 2023-06-07 10:22:14 -03:00
renovate[bot]
d33672cffe chore(deps) Update Tauri Bundler (#7152)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-07 09:39:31 -03:00
renovate[bot]
ba6e5813e6 chore(deps) Update Tauri API Definitions (#7151)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-07 09:38:27 -03:00
dependabot[bot]
a6da7ef8af chore(deps-dev): bump vite from 2.9.13 to 2.9.16 in /examples/api (#7138)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 14:06:29 -03:00
Fabian-Lars
db7c5fbf2e refactor(core): Remove attohttpc in favor of reqwest (#7143)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2023-06-06 13:29:52 -03:00
Lucas Fernandes Nogueira
52474e479d feat(cli): enhance Cargo features injection, add tests (#7141) 2023-06-06 13:29:28 -03:00
Amr Bashir
b41b57ebb2 fix(core): avoid panics in global shortcut, closes #7105 (#7136) 2023-06-05 16:43:44 -03:00
Lucas Fernandes Nogueira
647800c563 refactor(cli): use rewrite manifest logic on table entry (#7134) 2023-06-05 14:38:26 -03:00
renovate[bot]
3a8bb4c153 chore(deps) Update Tauri JS CLI (#7093)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-05 10:06:45 -03:00
renovate[bot]
c2acf96306 chore(deps) Update Tauri API Definitions to v5.59.8 (#7091)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-05 09:52:05 -03:00
renovate[bot]
f8bdc7be62 chore(deps) Update Rust crate log to 0.4.18 (#7090)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-05 09:51:40 -03:00
Amr Bashir
0503eb69ce fix(core): account for data: uri when calculating origin, closes #7078 (#7133)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-06-05 09:47:21 -03:00
Reupen Shah
85e77fb797 fix: correct MIME type of .txt files (ref: #6762) (#7111)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-06-05 09:16:05 -03:00
fcfangcc
3327dd641d fix(bundler/macos): clean up .app bundle if only .dmg is enabled #7081 (#7116)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-06-05 08:49:37 -03:00
icedrocket
c596aaefcf fix(examples): make video fits within window (#7129) 2023-06-05 08:11:32 -03:00
Raphii
4d4b72ba38 Fix missing quote in Japanese NSIS language file. (#7086)
* Update Japanese.nsh

* Create nsis-japanese-fix.md

* Update .changes/nsis-japanese-fix.md

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

---------

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
2023-06-03 13:08:10 +02:00
Fabian-Lars
d7a0a2cd1a ci: Use correct native-tls feature flags for win32-arm64 cli, ref #7098 (#7107) 2023-06-02 19:04:48 +08:00
Fabian-Lars
0ddbb3a1dc feat(cli): Build the CLI for Windows ARM64, closes #7015 (#7098)
* feat(cli): Build the CLI for Windows ARM64

* lockfile
2023-06-01 11:04:14 +08:00
Lucas Fernandes Nogueira
3303041c92 chore(api): document new options from #6665 (#7072) 2023-05-27 04:39:37 -07:00
Lucas Fernandes Nogueira
27c5f364a8 fix(macros): use full path to Result to avoid issues with type aliases (#7071) 2023-05-27 04:37:19 -07:00
Amr Bashir
000104bc3b feat: add is_focused APIs, closes #6472 (#6530)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-26 13:37:28 -03:00
Kevin Yue
8fd9cfa1f2 fix(doc): correct the doc of content_protected() (#7065) 2023-05-26 09:23:57 -03:00
Bo
17d5a4f51f feat(core): early panic if the PNG icon is not RGBA, closes #6706 (#6712) 2023-05-26 15:26:21 +08:00
Pascal Sommer
d68a25e32e Improve compile errors for async commands without Result return type (#6124)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-26 01:04:30 -03:00
Lucas Fernandes Nogueira
154ccbe503 fix(tests): only download update when it is available (#7061) 2023-05-25 21:22:55 -03:00
Jonas Kruckenberg
6c5ade08d9 feat(cli.rs) Shell completions (#4537)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Simon Hyll <hyllsimon@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-05-25 11:34:37 -03:00
Amr Bashir
1b8001b8b8 fix(bundler/nsis): calculate accurate app size, closes #7056 (#7057) 2023-05-25 11:34:05 -03:00
Tomáš Diblík
c4d6fb4b1e feat(core): Ability to disable minimize/maximize/close native window's buttons, closes #2353 (#6665)
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>
2023-05-24 17:23:32 -03:00
Lej77
65fd674f50 fix: sound for notifications on windows (fix #6652) (#6680) 2023-05-24 17:20:13 -03:00
Francis The Basilisk
35cd751adc feat(bundler): custom desktop file template, closes #5176 (#5180)
Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-24 16:04:54 -03:00
Amr Bashir
ff5e4dbbb0 fix(core): populate webview_attrs from config, closes #6794 (#6797)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-24 15:39:51 -03:00
Amr Bashir
df89ccc191 feat(nsis): implement passive mode, closes #6955 (#6998)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-24 14:16:12 -03:00
Amr Bashir
60334f9e02 feat(bundler/NSIS): uninstall previous wix if exist, closes #6859 (#6933) 2023-05-24 13:33:30 -03:00
renovate[bot]
0f707d2b53 chore(deps) Update Rust crate serde_with to v3 (#7048)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-24 13:17:21 -03:00
Amr Bashir
2317913b71 fix(core): use safe_block_on (#7047)
fixes regression introduced in 45330e3819

ref: https://github.com/tauri-apps/tauri/issues/6375#issuecomment-1560063696
2023-05-24 05:07:31 +03:00
Amr Bashir
359058cecc feat(api): add locale function, closes #5939 (#5960) 2023-05-23 16:02:33 -03:00
Amr Bashir
45330e3819 fix(core): rewrite asset protocol streaming, closes #6375 (#6390)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-23 15:30:31 -03:00
Amr Bashir
17da87d3cd fix(bundler/nsis): write installer templates UTF16LE encoded, closes #7036 (#7040)
* fix(bundler/nsis): write installer templates UTF16LE encoded, closes #7036

* cleanup

* lint

* return err instead of panic

* Update .changes/nsis-encoding.md [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-23 19:00:21 +03:00
Amr Bashir
8b9f6cf868 chore: add change tags for existing change files (#7041) 2023-05-23 18:56:47 +03:00
Amirhossein Akhlaghpour
4c39e46a3b feat: current_version feature (#7026)
* feat: reexport webview_verion

* chore: clippy problems

* fix: add .changes md file

* Update .changes/add-webview-version.md
2023-05-23 18:35:49 +03:00
Usman Rajab
43858a3197 feat(bundler/NSIS): Add Swedish to supported NSIS languages (#7038) 2023-05-23 17:41:40 +03:00
Amr Bashir
3cb7a3e642 fix(cli/devserver): inject autoreload into HTML only, closes #6997 (#7032) 2023-05-23 17:39:11 +03:00
Amr Bashir
baa581b814 ci: fix version-or-publish workflow (#7031)
* ci: fix version-or-publish workflow

* test syntax

* how about this?

* just use jq

* Delete test.js
2023-05-23 17:38:31 +03:00
Nathanael Rea
fb7ef8dacd fix(cli.js): detect node-20 binary (#6667)
* fix nodejs binary regex

* Update clijs-node-version-20.md
2023-05-23 01:09:49 +03:00
dependabot[bot]
1161b6788e chore(deps): bump h2 from 0.3.15 to 0.3.19 in /examples/api/src-tauri (#7030)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-22 16:35:19 -03:00
renovate[bot]
76714dc628 chore(deps) Update Tauri API Definitions (#6798)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-22 16:34:55 -03:00
Amr Bashir
af93729031 fix: add missing file properties on Windows, closes #6676 (#6693)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2023-05-22 16:34:33 -03:00
Amr Bashir
262776d8d8 docs(tauri-build): clarify common-controls-v6 dependency, closes #6732 (#6736) 2023-05-22 15:07:08 -03:00
renovate[bot]
86d3c0cc0f chore(deps) Update Tauri CLI (major) (#6688)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-22 14:22:46 -03:00
Lucas Fernandes Nogueira
a541820aa8 fix(cli): revert metadata.json field rename from #6795 (#7029) 2023-05-22 14:07:53 -03:00
renovate[bot]
0974ecccd6 chore(deps) Update Tauri Bundler (#6683)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-22 14:06:16 -03:00
Amr Bashir
5ec6353a60 refactor: change package names to match published packages (#6795)
Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
2023-05-22 12:52:44 -03:00
renovate[bot]
9e67ec68ac chore(deps) Update dependency prettier to v2.8.8 (#6799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-22 11:41:03 -03:00
dependabot[bot]
ffd4db5ae4 chore(deps): bump enumflags2 from 0.7.5 to 0.7.7 in /examples/api/src-tauri (#6786)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-22 11:40:40 -03:00
Gökçe Merdun
ac183948d6 feat(bundler/NSIS): Add Turkish to supported NSIS languages (#7018) 2023-05-21 19:15:17 +03:00
Risto Stevcev
0032daf2a3 Docs: Added void linux to readme (#6711) 2023-05-21 11:29:09 -03:00
Amr Bashir
5eba069b1d docs: curate and document tauri's env vars (#6983)
* docs: curate and document tauri's env vars

* fill apple env vars

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-05-21 13:23:47 +03:00
yutotnh
2b487c9467 Fix typo (#7012)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-20 08:24:07 -03:00
Amr Bashir
b9eac96cdc ci: pin toml to 0.7.3 (#7011)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-20 07:52:21 -03:00
Lucas Fernandes Nogueira
1253bbf7ae fix(cli): correctly remove Cargo features (#7013) 2023-05-20 00:12:11 -03:00
Soumt
61e3ad89e9 feat(bundler/NSIS): Add Korean to supported NSIS languages (#7010)
* Feat: Add Korean language

* fmt
2023-05-20 01:49:20 +03:00
Simon Hyll
fc7f9ebada feat: adding copyright text to BrandingText (#7001) 2023-05-19 19:42:24 +08:00
Risto Stevcev
0302138f2f fix: updated appimage script to follow symlinks for /usr/lib* (fix: #6992) (#6996)
* Updated appimage script to follow symlinks for /usr/lib*

* Added appimage-follow-symlinks change file
2023-05-19 13:22:22 +08:00
Fabian-Lars
c7056d1b20 fix(cli): improve vs build tools detection (#6982)
* fix(cli): improve vs build tools detection

* clean up

* typos

* changefile

* patch instead of minor

* update vswhere

* use vswhere instead of custom logic. update wording

* sort and dedup manually
2023-05-18 22:47:28 +03:00
Amr Bashir
acc36fe117 feat(core): add option for require_literal_leading_dot, closes #6158 (#6969)
* feat(core): add option for `require_literal_leading_dot`, closes #6158

* change to `Option<bool>`

* fix to tokens impl

* Apply suggestions from code review

Co-authored-by: Simon Hyll <hyllsimon@gmail.com>

---------

Co-authored-by: Simon Hyll <hyllsimon@gmail.com>
2023-05-18 16:11:50 +03:00
Amr Bashir
cd3846c8ce feat(nsis): restart app after updating, closes #6955 (#6987)
* feat(nsis): restart app after updating, closes #6955

* Apply suggestions from code review
2023-05-18 16:11:31 +03:00
Amr Bashir
fd3b5a16b1 fix(cli): find correct binary when --profile is used, closes #6954 (#6979)
* fix(cli): find correct binary when `--profile` is used, closes #6954

* clippy
2023-05-17 16:17:47 +03:00
Amr Bashir
82169e69fc fix(core): remove trailing slash in http scope url, closes #5208 (#6974)
* fix(core): remove trailing slash in http scope url, closes #5208

* fix tests

* one more tests fix

* clippy
2023-05-17 14:33:10 +03:00
Amr Bashir
aecf146909 fix(core/ipc): access url through webview native object, closes #6889 (#6976) 2023-05-17 14:32:45 +03:00
Fabian-Lars
2b26b2e611 fix(bundler): Add new lang_file option in persian variant. (#6972) 2023-05-16 15:33:08 +03:00
Fabian-Lars
d2710e9d2e fix(core): unpin all dependencies, closes #6944 (#6966) 2023-05-16 19:27:15 +08:00
Amr Bashir
3700793a2f fix(updater): emit UPTODATE when server responds with 204, closes #6934 (#6970) 2023-05-16 13:00:00 +08:00
Amirhossein Akhlaghpour
21d5eb84ab feat: add Persian language to NSIS installer (#6965) 2023-05-16 12:58:30 +08:00
Amr Bashir
46a58afd9e chore: remove duplicate tauri in tauri-config-schema name (#6967) 2023-05-15 15:12:51 -03:00
Amr Bashir
3cc295e997 fix(nsis): prefill $INSTDIR with previous install path and respect /D flag, closes #6928 (#6935)
* fix(bundler/nsis): prefill $INSTDIR with previous install path

* fix(nsis): prefill $INSTDIR with previous install path and respect `/D` flag, closes #6928
2023-05-15 18:14:15 +03:00
Amr Bashir
2948820579 feat(bundler/NSIS): allow specifying custom lang files (#6867)
* feat(bundler/NSIS): allow specifying custom lang files

* add dunc as dep on all platforms

* clippy

* Update tooling/bundler/src/bundle/windows/nsis.rs

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

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

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

* schema files

---------

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-05-15 18:11:10 +03:00
Amr Bashir
e0c30a7e8b refactor: use const instead of a function (#6958) 2023-05-14 17:03:40 -03:00
Jack Wills
441f964654 feat(core/tauri): add try_get_item for SystemTray and WindowMenu, closes #5491 (#6408)
* feat: try_get_item() for window menu

Add a method in the MenuHandle struct, that will return an Optional MenuItemHandle

feat: try_get_item() for systemtray

Add a method in the SystemTrayHandle struct, that will return an Optional SystemTrayMenuItemHandle

docs: features documented in ./changes/minor.md

fix: suggested changes

fix CI

* Update .changes/tray_get_item.md

---------
2023-05-12 16:15:36 +03:00
Pierre Cashon
2c1fd570f8 fix(bundler): ensure that there are no duplicate extension arguments when bundling on Windows, fixes #6103 (#6917)
* fix(bundler): ensure that there are no duplicate extension arguments during bundling on Windows (fix #6103)

* fix(bundler): ensure that there are no duplicate extension arguments during bundling on Windows (fix #6103)
2023-05-12 15:52:26 +03:00
Guilherme Oenning
7c23720920 feat: add tauri::version, similar to getTauriVersion available on JS API (#6546)
Signed-off-by: goenning <me@goenning.net>

Apply suggestions from code review
2023-05-12 15:36:31 +03:00
KurikoMoe
fb485d25a0 fix(cli): fix cli connection timeout to dev server (fix #6045) (#6046)
Fix tauri-cli connection to dev server stucks and waits for TCP timeout.
2023-05-12 15:01:24 +03:00
Akshay
a08d1b248f chore: fix broken symlinks in license files (#6336)
symlink to repo root
2023-05-12 14:56:32 +03:00
Amr Bashir
dc682155de fix(core): Fix WindowBuilder::on_navigation handler never registerd, closes #6865 (#6921)
* fix(core): Fix `WindowBuilder::on_navigation` handler never registerd, closes #6865

* clippy
2023-05-12 14:03:42 +03:00
Amr Bashir
e092f79946 feat(bundler/nsis): allow specifying custom template, closes #6887 (#6922) 2023-05-12 14:02:07 +03:00
Fabian-Lars
c2b0dab7ef docs: Fix api.js docs pipeline with updated typedoc dependencies (#6945) 2023-05-12 07:54:15 -03:00
nathan-fall
b257bebf9e feat(bundler): Add Japanese to supported NSIS languages, ref #6906 (#6940) 2023-05-11 09:50:35 +02:00
hanaTsuk1
bf49a7679a update bundler nsis template(SimpChinese, TradChinese) (#6939) 2023-05-11 14:30:13 +08:00
Simon Hyll
469d9f8a4a docs(tauri-utils): described behavior of version field when omitted (#6938) 2023-05-11 14:18:45 +08:00
Simon Hyll
41e10b22fa chore: fixed grammar and typos (#6937) 2023-05-11 02:21:15 +03:00
Ronie Martinez
96d346222f docs: Update Github workflow status shields (#6910)
* docs: Update Github workflow status shields

* Update with name, icon and fix
2023-05-10 04:04:12 +03:00
Amr Bashir
2b47426be8 chore: explain covector tags (#6923) 2023-05-09 21:59:01 +03:00
Amr Bashir
aa2a30e96b chore: setup covector change tags/sections/groups (#6920)
![image](https://github.com/tauri-apps/tauri/assets/48618675/ac4f22dd-630d-4bfc-8966-48d19492593f)
2023-05-09 17:45:50 +03:00
Raphii
540ddd4e6a feat(bundler): Add Dutch to supported NSIS languages, ref #6906 (#6907)
* Add Dutch to supported NSIS languages

* Added change file

* Reference Dutch language in nsis bundler

* Fix formatting
2023-05-09 15:37:05 +02:00
Lucas Fernandes Nogueira
2659ca1ab4 feat(cli): add rustls as default Cargo feature (#6900) 2023-05-08 09:29:17 -03:00
chip
24490bca19 use handlebars::no_escape instead of closures (#6899) 2023-05-08 08:39:54 -03:00
github-actions[bot]
73a0ad41c7 apply version updates (#6858)
Co-authored-by: wusyong <wusyong@users.noreply.github.com>
2023-05-08 18:51:23 +08:00
LuisFerLCC
422b481798 Add Spanish and SpanishInternational languages (#6871) 2023-05-06 16:25:10 +08:00
Fabian-Lars
6a6b1388ea fix(bundler): correctly escape resource xml, fixes #6853 (#6855) 2023-05-04 09:10:33 -03:00
Amr Bashir
6788bb4984 chore: update reproduction wording (#6850)
* chore: update reproduction wording

* Update bug_report.yml

* Update .github/ISSUE_TEMPLATE/bug_report.yml

Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <yuweiwu@pm.me>

* Update bug_report.yml

---------

Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <yuweiwu@pm.me>
2023-05-04 19:28:22 +08:00
Fabian-Lars
2915bd068e fix(bundler): Fix webview install modes in NSIS bundler (#6854) 2023-05-04 19:27:27 +08:00
Lucas Fernandes Nogueira
5053a9c4c4 fix(ci): use rustls on publish-cli-js workflow (#6847) 2023-05-03 14:59:09 -03:00
Lucas Fernandes Nogueira
20f582f6c3 chore: update changelog with v1.3 remote IPC backport (#6848) 2023-05-03 14:58:57 -03:00
Lucas Nogueira
dafdcc9b42 fix(ci): use ubuntu-20.04 to build the CLI 2023-05-03 12:05:49 -03:00
Lucas Nogueira
7fd4ca0aef chore(api): downgrade documentation dependencies 2023-05-03 10:10:59 -03:00
Lucas Fernandes Nogueira
0dfd5f875f fix(core): pin winnow dependency to 0.4.1 to keep 1.60 MSRV (#6845) 2023-05-03 09:31:59 -03:00
Lucas Fernandes Nogueira
14b3667420 fix(api): downgrade typedoc to 0.23 (#6844) 2023-05-03 09:19:37 -03:00
github-actions[bot]
bf804657f5 Apply Version Updates From Current Changes (#5815)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2023-05-03 08:19:06 -03:00
245 changed files with 6460 additions and 3374 deletions

View File

@@ -1,5 +0,0 @@
---
"tauri-bundler": patch
---
Add dylib support to `tauri.bundle.macOS.frameworks`.

View File

@@ -1,5 +0,0 @@
---
"tauri-utils": minor
---
Added the `additional_browser_args` option to the window configuration.

View File

@@ -1,7 +0,0 @@
---
"tauri": minor
"tauri-runtime-wry": minor
"tauri-runtime": minor
---
Added the `additional_browser_args` option when creating a window.

View File

@@ -1,5 +0,0 @@
---
'api': 'patch'
---
Return correct type for `event.payload ` in `onResized` and `onMoved` window event handlers.

View File

@@ -1,5 +0,0 @@
---
'tauri-bundler': 'minor'
---
Added support for pre-release identifiers and build numbers for the `.msi` bundle target. Only one of each can be used and it must be numeric only. The version must still be semver compatible according to https://semver.org/.

View File

@@ -1,5 +0,0 @@
---
'tauri': 'patch'
---
Fix passing `--profile` to cargo in `tauri build` causing conflict with `--release` passed by the CLI.

View File

@@ -1,5 +0,0 @@
---
'cli.rs': 'patch'
---
Look for available port when using the built-in dev server for static files.

View File

@@ -1,5 +0,0 @@
---
'cli.rs': 'patch'
---
Add `--port` to specify the port used for static files dev server. It can also be specified through `TAURI_DEV_SERVER_PORT` env var.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": "patch"
---
Fix `tauri info` panicking when parsing crates version on a newly created project without a `Cargo.lock` file.

View File

@@ -1,5 +0,0 @@
---
"cli.rs": "patch"
---
Improve the error message when `rustc` couldn't be found.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": patch
"cli.js": patch
---
Add `--ci` flag and respect the `CI` environment variable on the `signer generate` command. In this case the default password will be an empty string and the CLI will not prompt for a value.

View File

@@ -1,7 +0,0 @@
---
"cli.rs": "patch"
"cli.js": "patch"
---
Fix Outdated Github Actions in the Plugin Templates `with-api` and `backend`

View File

@@ -1,6 +0,0 @@
---
"cli.rs": patch
"cli.js": patch
---
Do not crash on Cargo.toml watcher.

View File

@@ -1,7 +0,0 @@
---
"cli.rs": "patch"
"tauri-bundler": "patch"
---
On Windows, printing consistent paths on Windows with backslashs only.

View File

@@ -1,5 +0,0 @@
---
'cli.js': patch
---
Fix crash when nodejs binary has the version in its name, for example `node-18`

View File

@@ -1,6 +1,15 @@
{
"gitSiteUrl": "https://www.github.com/tauri-apps/tauri/",
"timeout": 3600000,
"changeTags": {
"feat": "New Features",
"enhance": "Enhancements",
"bug": "Bug Fixes",
"pref": "Performance Improvements",
"changes": "What's Changed",
"deps": "Dependencies"
},
"defaultChangeTag": "changes",
"pkgManagers": {
"rust": {
"errorOnVersionRange": "^2.0.0-0",
@@ -123,13 +132,13 @@
}
},
"packages": {
"api": {
"@tauri-apps/api": {
"path": "./tooling/api",
"manager": "javascript",
"assets": [
{
"path": "./tooling/api/dist/tauri-apps-api-${ pkgFile.version }.tgz",
"name": "api-${ pkgFile.version }.tgz"
"name": "tauri-apps-api-${ pkgFile.version }.tgz"
}
],
"prepublish": [
@@ -231,11 +240,11 @@
],
"postversion": "node ../../.scripts/covector/sync-cli-metadata.js ${ pkg.pkg } ${ release.type }"
},
"cli.js": {
"@tauri-apps/cli": {
"path": "./tooling/cli/node",
"manager": "javascript",
"getPublishedVersion": "node ../../../.scripts/covector/package-latest-version.js npm ${ pkgFile.pkg.name } ${ pkgFile.pkg.version }",
"dependencies": ["cli.rs"],
"dependencies": ["tauri-cli"],
"postversion": [
"node ../../../.scripts/covector/sync-cli-metadata.js ${ pkg.pkg } ${ release.type }",
"cargo build --manifest-path ../../../core/tauri-config-schema/Cargo.toml"
@@ -244,7 +253,7 @@
"publish": [],
"postpublish": []
},
"cli.rs": {
"tauri-cli": {
"path": "./tooling/cli",
"manager": "rust",
"dependencies": ["tauri-bundler", "tauri-utils"],

View File

@@ -1,5 +0,0 @@
---
"api": "minor"
---
Added the `WindowOptions::contentProtected` option and `WebviewWindow#setContentProtected` to change it at runtime.

View File

@@ -1,5 +0,0 @@
---
"tauri-utils": "patch"
---
Added the `content_protected` option to the window configuration.

View File

@@ -1,7 +0,0 @@
---
"tauri": "minor"
"tauri-runtime": "minor"
"tauri-runtime-wry": "minor"
---
Added the `content_protected` option when creating a window and `Window::set_content_protected` to change it at runtime.

View File

@@ -1,5 +0,0 @@
---
"tauri": "patch"
---
Fix serialization of js `Map` when used in `invoke`.

View File

@@ -1,5 +0,0 @@
---
"tauri": minor
---
Added `Window::on_navigation`.

View File

@@ -1,5 +0,0 @@
---
"tauri": "patch"
---
Sync `__TAURI_METADATA__.__windows` across all windows.

View File

@@ -1,5 +0,0 @@
---
'tauri': 'patch'
---
Fix `UpdaterBuilder::check` returning a parsing error when `204` is sent from server where it should instead return a `UpToDate` error.

View File

@@ -1,5 +0,0 @@
---
"tauri-utils": patch
---
Correctly determine mime type of `.less`, `.sass` and `.styl` files.

View File

@@ -1,5 +0,0 @@
---
"api": minor
---
Allow setting the text of the dialog buttons.

View File

@@ -1,5 +0,0 @@
---
"tauri": minor
---
Added `OkWithLabel` and `OkCancelWithLabels` variants to the `api::dialog::MessageDialogButtons` enum to set the text of the dialog buttons.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": minor
"cli.js": minor
---
Add `--png` option for the `icon` command to generate custom icon sizes.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": patch
"cli.js": patch
---
Skip the password prompt on the build command when `TAURI_KEY_PASSWORD` environment variable is empty and the `--ci` argument is provided or the `CI` environment variable is set.

View File

@@ -1,7 +0,0 @@
---
"tauri-runtime-wry": minor
"tauri-runtime": minor
"tauri": minor
---
Added `Builder::device_event_filter` and `App::set_device_event_filter` methods.

View File

@@ -1,5 +0,0 @@
---
"tauri": "patch"
---
Fix resize glitch when double clicking a custom titlebar in the top resize area.

View File

@@ -1,5 +0,0 @@
---
'tauri-bundler': 'patch'
---
Fixed error during bundling process for the appimage target on subsequent bundling attempts.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": patch
"cli.js": patch
---
Fix `default-run` not deserialized.

View File

@@ -1,6 +0,0 @@
---
"cli.rs": patch
"cli.js": patch
---
Fixes HTML serialization removing template tags on the dev server.

View File

@@ -1,5 +0,0 @@
---
"tauri-bundler": patch
---
Fixes DMG bundling not finding bundle to set icon position.

View File

@@ -1,6 +0,0 @@
---
"tauri-runtime-wry": patch
"tauri": patch
---
Fixes tray events not being delivered.

View File

@@ -1,5 +0,0 @@
---
"tauri": "patch"
---
Fix the filesystem scope allowing sub-directories of the directory picked by the dialog when `recursive` option was `false`.

View File

@@ -1,7 +0,0 @@
---
"tauri-bundler": patch
"cli.rs": patch
"cli.js": patch
---
Use escaping on Handlebars templates.

View File

@@ -1,5 +0,0 @@
---
"cli.rs": "patch"
---
Fix building apps with unicode characters in their `productName`.

View File

@@ -1,8 +0,0 @@
---
"tauri": minor
"tauri-runtime": minor
"tauri-runtime-wry": minor
"api": minor
---
Add `is_minimized()` window method.

View File

@@ -1,5 +0,0 @@
---
"tauri-runtime-wry": patch
---
Disable cursor mouse events on Linux.

View File

@@ -1,13 +0,0 @@
---
"cli.rs": minor
"tauri-bundler": minor
"tauri": minor
"tauri-build": minor
"tauri-codegen": minor
"tauri-macros": minor
"tauri-utils": minor
"tauri-runtime": minor
"tauri-runtime-wry": minor
---
Bump minimum supported Rust version to 1.60.

View File

@@ -1,9 +0,0 @@
---
"tauri-bundler": minor
"tauri-utils": minor
"cli.rs": minor
"cli.js": minor
"tauri-build": minor
---
Add initial support for building `nsis` bundles on non-Windows platforms.

View File

@@ -1,8 +0,0 @@
---
"tauri-bundler": minor
"tauri-utils": minor
"cli.rs": minor
"cli.js": minor
---
Add `nsis` bundle target

View File

@@ -1,5 +0,0 @@
---
"tauri": patch
---
Update the `open` crate to v3.2 to fix an URL encoding bug on Windows.

View File

@@ -1,5 +0,0 @@
---
"tauri": minor
---
Added support to `mailto:` and `tel:` links on the shell API.

View File

@@ -1,5 +0,0 @@
---
"tauri": patch
---
Pin `os_info` to `=3.5`.

View File

@@ -1,7 +0,0 @@
---
"tauri": patch
"tauri-runtime": patch
"tauri-runtime-wry": patch
---
Pin raw-window-handle to 0.5.0 to keep MSRV.

View File

@@ -1,6 +0,0 @@
---
"tauri": patch
"tauri-codegen": patch
---
Pin `time` to `0.3.15`.

View File

@@ -1,31 +1,44 @@
# Changes
##### via https://github.com/jbolda/covector
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 that it represents the overall change for organizational purposes.
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
---
"package-a": patch
"package-b": patch
---
Change summary goes here
```
Summaries do not have a specific character limit, but are text only. These summaries are used within the (future implementation of) changelogs. They will give context to the change and also point back to the original PR if more details and context are needed.
Changes will be designated as a `major`, `minor` or `patch` as further described in [semver](https://semver.org/).
Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards compatible manner, and
- PATCH version when you make backwards compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format, but will be discussed prior to usage (as extra steps will be necessary in consideration of merging and publishing).
# Changes
##### via https://github.com/jbolda/covector
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 that it represents the overall change for organizational purposes.
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
---
'package-a': patch
'package-b': patch
---
Change summary goes here
```
Summaries do not have a specific character limit, but are text only. These summaries are used within the (future implementation of) changelogs. They will give context to the change and also point back to the original PR if more details and context are needed.
Changes will be designated as a `major`, `minor` or `patch` as further described in [semver](https://semver.org/).
Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards compatible manner, and
- PATCH version when you make backwards compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format, but will be discussed prior to usage (as extra steps will be necessary in consideration of merging and publishing).
Additionally you could specify a tag for the change file to group it with other changes by prefixing the bump with `:<tag>`, for example:
```md
---
'package-a': patch:bug
---
Change summary goes here
```
which will group this change file with other changes that specify the `bug` tag.
For list of available tags, see the `changeTags` key in [./config.json](./config.json)

View File

@@ -1,6 +0,0 @@
---
"tauri": patch
"tauri-utils": patch
---
Added configuration to specify remote URLs allowed to access the IPC.

View File

@@ -1,5 +0,0 @@
---
"tauri-runtime": minor
---
Added `navigation_handler` field on `PendingWindow`.

View File

@@ -1,5 +0,0 @@
---
"tauri-build": "minor"
---
Add `WindowsAttributes::app_manifest` to specify the application manifest on Windows.

View File

@@ -1,6 +0,0 @@
---
'cli.rs': minor
'cli.js': minor
---
Remove default features from Cargo.toml template.

View File

@@ -1,8 +0,0 @@
---
"tauri": "minor"
"api": "minor"
"tauri-runtime": "minor"
"tauri-runtime-wry": "minor"
---
Add `title` getter on window.

View File

@@ -1,6 +0,0 @@
---
"tauri-runtime": minor
"tauri-runtime-wry": minor
---
Added `TrayHandle::set_tooltip` and `SystemTray::with_tooltip`.

View File

@@ -1,5 +0,0 @@
---
"tauri": patch
---
Implement `SystemTray::with_tooltip` and `SystemTrayHandle::set_tooltip` for Windows and macOS.

View File

@@ -1,7 +0,0 @@
---
"tauri-runtime": minor
"tauri-runtime-wry": minor
"tauri": minor
---
Added window's `url()` getter.

View File

@@ -1,6 +0,0 @@
---
'cli.rs': 'minor'
'tauri-build': 'minor'
---
Added support for Cargo's workspace inheritance for package information. The cli now also detects inherited `tauri` and `tauri-build` dependencies and disables manifest rewrites accordingly.

View File

@@ -1,7 +0,0 @@
---
"tauri": "patch"
"tauri-runtime": "patch"
"tauri-runtime-wry": "patch"
---
On Windows, change webview theme based on Window theme for more accurate `prefers-color-scheme` support.

View File

@@ -1,5 +0,0 @@
---
'tauri': 'minor'
---
Add a method to the `WindowBuilder` struct to recreate windows from tauri.conf.json configurations.

View File

@@ -1,6 +0,0 @@
---
'tauri': 'patch'
'tauri-runtime-wry': 'patch'
---
On Windows, Fix missing `WindowEvent::Focused` in `App::run` callback.

View File

@@ -1,6 +0,0 @@
---
"tauri-bundler": "patch"
---
On Windows, the `msi` installer's `Launch App` checkbox will be checked by default.

View File

@@ -1,5 +0,0 @@
---
"tauri-runtime-wry": minor
---
Implement the webview navigation handler.

View File

@@ -54,20 +54,20 @@ Some Tauri packages will be automatically built when running one of the examples
### Packages Overview
- The JS API (`/tooling/api`) contains JS bindings to the builtin Rust functions in the Rust API.
- cli.rs (`/tooling/cli`) is the primary CLI for creating and developing Tauri apps.
- cli.js (`/tooling/cli/node`) is a Node.js CLI wrapper for `cli.rs`.
- Tauri Bundler (`/tooling/bundler`) is used by the Rust CLI to package executables into installers.
- Tauri Core (`/core/tauri`) is the heart of Tauri. It contains the code that starts the app, configures communication between Rust and the Webview, and ties all the other packages together.
- The Macros (`/core/tauri-macros`) are used by Tauri Core for various functions.
### Developing The Node.js CLI (cli.js)
`cli.js` is a wrapper to `cli.rs` so most changes should be written on the Rust CLI. The `[Tauri repo root]/tooling/cli/node` folder contains only packaging scripts to properly publish the Rust CLI binaries to NPM.
- Tauri Bundler (`/tooling/bundler`) is used by the Rust CLI to package executables into installers.
- The Rust CLI aka `tauri-cli` (`/tooling/cli`) is the primary CLI for creating and developing Tauri apps.
- The JS CLI aka `@tauri-apps/cli` (`/tooling/cli/node`) is a Node.js CLI wrapper for `tauri-cli`.
- The JS API aka `@tauri-apps/api` (`/tooling/api`) contains JS bindings to the builtin Rust functions in the Rust API.
### Developing Tauri Bundler and Rust CLI
The code for the bundler is located in `[Tauri repo root]/tooling/bundler`, and the code for the Rust CLI is located in `[Tauri repo root]/tooling/cli`. If you are using your local copy of cli.js (see above), any changes you make to the bundler and CLI will be automatically built and applied when running the build or dev command. Otherwise, running `cargo install --path .` in the Rust CLI directory will allow you to run `cargo tauri build` and `cargo tauri dev` anywhere, using the updated copy of the bundler and cli. You will have to run this command each time you make a change in either package.
The code for the bundler is located in `[Tauri repo root]/tooling/bundler`, and the code for the Rust CLI is located in `[Tauri repo root]/tooling/cli`. If you are using your local copy of `@tauri-apps/cli` (see above), any changes you make to the bundler and CLI will be automatically built and applied when running the build or dev command. Otherwise, running `cargo install --path .` in the Rust CLI directory will allow you to run `cargo tauri build` and `cargo tauri dev` anywhere, using the updated copy of the bundler and cli. You will have to run this command each time you make a change in either package.
### Developing The Node.js CLI (`@tauri-apps/cli`)
`@tauri-apps/cli` is a wrapper to `tauri-cli` so most changes should be written on the Rust CLI. The `[Tauri repo root]/tooling/cli/node` folder contains only packaging scripts to properly publish the Rust CLI binaries to NPM.
### Developing Tauri Core and Related Components (Rust API, Macros, Codegen, and Utils)

View File

@@ -30,11 +30,10 @@ body:
id: reproduction
attributes:
label: Reproduction
description: Steps to reproduce the behavior.
description: A link to a reproduction repo or steps to reproduce the behaviour.
placeholder: |
1. Go to ...
2. Click on ...
3. See error
Please provide a minimal reproduction or steps to reproduce, see this guide https://stackoverflow.com/help/minimal-reproducible-example
Why reproduction is required? see this article https://antfu.me/posts/why-reproductions-are-required
- type: textarea
id: expected-behavior

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: benches
name: bench
on:
push:

32
.github/workflows/check-change-tags.yml vendored Normal file
View File

@@ -0,0 +1,32 @@
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: check change tags
on:
pull_request:
paths:
- '.changes/*.md'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dorny/paths-filter@v2
id: filter
with:
list-files: shell
filters: |
changes:
- '.changes/*.md'
- name: check
run: node ./.scripts/ci/check-change-tags.js ${{ steps.filter.outputs.changes_files }}
if: ${{ steps.filter.outputs.changes == 'true' }}

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: Check generated files
name: check generated files
on:
pull_request:
@@ -13,16 +13,6 @@ on:
- 'core/tauri-utils/src/config.rs'
- 'tooling/cli/schema.json'
- 'core/tauri-config-schema/schema.json'
push:
branches:
- dev
paths:
- '.github/workflows/check-generated-files.yml'
- 'tooling/api/src/**'
- 'core/tauri/scripts/bundle.global.js'
- 'core/tauri-utils/src/config.rs'
- 'tooling/cli/schema.json'
- 'core/tauri-config-schema/schema.json'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -49,7 +39,7 @@ jobs:
- 'tooling/cli/schema.json'
- 'core/tauri-config-schema/schema.json'
check-api:
api:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.api == 'true'
@@ -64,7 +54,7 @@ jobs:
git restore tooling/api/docs/js-api.json
./.scripts/ci/has-diff.sh
check-schema:
schema:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.schema == 'true'

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: Check generated files
name: check license headers
on:
pull_request:
@@ -25,4 +25,4 @@ jobs:
- added: '**'
- name: check header license on new files
if: ${{ steps.filter.outputs.added == 'true' }}
run: node check-license-header.js ${{ steps.filter.outputs.added_files }}
run: node ./.scripts/ci/check-license-header.js ${{ steps.filter.outputs.added_files }}

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: version or publish
name: covector version or publish
on:
push:
@@ -115,21 +115,30 @@ jobs:
repository: tauri-apps/tauri-docs
event-type: update-docs
- name: Trigger cli.js publishing workflow
- name: Get `@tauri-apps/cli` release id
id: cliReleaseId
if: |
steps.covector.outputs.successfulPublish == 'true' &&
contains(steps.covector.outputs.packagesPublished, 'cli.rs')
contains(steps.covector.outputs.packagesPublished, '@tauri-apps/cli')
run: |
id=$(jq '.-tauri-apps-cli-releaseId' <<< "${{ steps.covector.outputs }}")
echo "cliReleaseId=$id" >> "$GITHUB_OUTPUT"
- name: Trigger `@tauri-apps/cli` publishing workflow
if: |
steps.covector.outputs.successfulPublish == 'true' &&
contains(steps.covector.outputs.packagesPublished, '@tauri-apps/cli')
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.ORG_TAURI_BOT_PAT }}
repository: tauri-apps/tauri
event-type: publish-clijs
client-payload: '{"releaseId": "${{ steps.covector.outputs.cli.js-releaseId }}" }'
event-type: publish-js-cli
client-payload: '{"releaseId": "${{ steps.cliReleaseId.outputs.cliReleaseId }}" }'
- name: Trigger cli.rs publishing workflow
- name: Trigger `tauri-cli` publishing workflow
if: |
steps.covector.outputs.successfulPublish == 'true' &&
contains(steps.covector.outputs.packagesPublished, 'cli.rs')
contains(steps.covector.outputs.packagesPublished, 'tauri-cli')
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.ORG_TAURI_BOT_PAT }}

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: cli clippy and fmt check
name: lint cli
on:
push:
@@ -11,7 +11,7 @@ on:
- next
pull_request:
paths:
- '.github/workflows/lint-fmt-cli.yml'
- '.github/workflows/lint-cli.yml'
- 'tooling/cli/**'
env:
@@ -23,7 +23,7 @@ concurrency:
cancel-in-progress: true
jobs:
fmt_check:
fmt:
runs-on: ubuntu-latest
steps:
@@ -41,7 +41,7 @@ jobs:
command: fmt
args: --manifest-path ./tooling/cli/Cargo.toml --all -- --check
cli_clippy_check:
clippy:
runs-on: ubuntu-latest
steps:

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: core clippy and fmt check
name: lint core
on:
push:
@@ -11,7 +11,7 @@ on:
- next
pull_request:
paths:
- '.github/workflows/lint-fmt-core.yml'
- '.github/workflows/lint-core.yml'
- 'core/**'
- '!core/tauri/scripts/**'
- 'examples/**'
@@ -25,7 +25,7 @@ concurrency:
cancel-in-progress: true
jobs:
fmt_check:
fmt:
runs-on: ubuntu-latest
steps:
@@ -43,14 +43,14 @@ jobs:
command: fmt
args: --all -- --check
core_clippy_check:
clippy:
runs-on: ubuntu-latest
strategy:
matrix:
clippy:
- { args: '', key: 'empty' }
- {
args: '--features compression,wry,linux-protocol-headers,isolation,custom-protocol,api-all,cli,updater,system-tray,windows7-compat,http-multipart',
args: '--features compression,wry,linux-protocol-headers,isolation,custom-protocol,api-all,cli,updater,system-tray,windows7-compat,http-multipart,test',
key: 'all'
}
- { args: '--features custom-protocol', key: 'custom-protocol' }

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: api and cli.js lint check
name: lint js
on:
pull_request:
@@ -16,7 +16,7 @@ concurrency:
cancel-in-progress: true
jobs:
eslint-check:
eslint-cli:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
@@ -24,24 +24,34 @@ jobs:
with:
node-version: '14'
cache: yarn
cache-dependency-path: tooling/*/yarn.lock
- name: install cli.js deps via yarn
cache-dependency-path: tooling/cli/node/yarn.lock
- name: install deps via yarn
working-directory: ./tooling/cli/node/
run: yarn
# nothing to lint
#- name: run cli.js lint
#- name: run lint
# working-directory: ./tooling/cli/node/
# run: yarn lint
- name: run cli.js format
- name: run format
working-directory: ./tooling/cli/node/
run: yarn format:check
- name: install api deps via yarn
eslint-api:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '14'
cache: yarn
cache-dependency-path: tooling/api/yarn.lock
- name: install deps via yarn
working-directory: ./tooling/api/
run: yarn
- name: run api lint
- name: run lint
working-directory: ./tooling/api/
run: yarn lint
- name: run api format
- name: run format
working-directory: ./tooling/api/
run: yarn format:check

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: publish cli.js
name: publish `@tauri-apps/cli`
env:
DEBUG: napi:*
APP_NAME: cli
@@ -11,10 +11,10 @@ on:
workflow_dispatch:
inputs:
releaseId:
description: 'ID of the cli.js release'
description: 'ID of the `@tauri-apps/cli` release'
required: true
repository_dispatch:
types: [publish-clijs]
types: [publish-js-cli]
defaults:
run:
@@ -40,14 +40,18 @@ jobs:
build: yarn build:release --target i686-pc-windows-msvc
target: i686-pc-windows-msvc
architecture: x64
- host: ubuntu-18.04
- host: windows-latest
architecture: x64
target: aarch64-pc-windows-msvc
build: yarn build:release --target aarch64-pc-windows-msvc --features native-tls,native-tls-vendored --cargo-flags="--no-default-features"
- host: ubuntu-20.04
target: x86_64-unknown-linux-gnu
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian
build: |
cd tooling/cli/node
yarn build:release --target x86_64-unknown-linux-gnu
strip *.node
- host: ubuntu-18.04
- host: ubuntu-20.04
target: x86_64-unknown-linux-musl
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
build: |
@@ -59,14 +63,14 @@ jobs:
build: |
yarn build:release --target=aarch64-apple-darwin
strip -x *.node
- host: ubuntu-18.04
- host: ubuntu-20.04
target: aarch64-unknown-linux-gnu
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian-aarch64
build: |
cd tooling/cli/node
yarn build:release --target aarch64-unknown-linux-gnu
aarch64-unknown-linux-gnu-strip *.node
- host: ubuntu-18.04
- host: ubuntu-20.04
architecture: x64
target: armv7-unknown-linux-gnueabihf
setup: |
@@ -75,7 +79,7 @@ jobs:
build: |
yarn build:release --target=armv7-unknown-linux-gnueabihf
arm-linux-gnueabihf-strip *.node
- host: ubuntu-18.04
- host: ubuntu-20.04
architecture: x64
target: aarch64-unknown-linux-musl
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
@@ -84,10 +88,6 @@ jobs:
rustup target add aarch64-unknown-linux-musl
yarn build:release --target aarch64-unknown-linux-musl
/aarch64-linux-musl-cross/bin/aarch64-linux-musl-strip *.node
#- host: windows-latest
# architecture: x64
# target: aarch64-pc-windows-msvc
# build: yarn build:release --target aarch64-pc-windows-msvc
name: stable - ${{ matrix.settings.target }} - node@16
runs-on: ${{ matrix.settings.host }}
steps:
@@ -299,7 +299,7 @@ jobs:
shell: bash
- name: Install system dependencies
run: |
apk add openssl-dev musl-dev glib-dev cairo-dev pkgconfig gdk-pixbuf-dev webkit2gtk-dev curl libappindicator-dev gtk+3.0-dev
apk add openssl-dev musl-dev glib-dev cairo-dev pkgconfig gdk-pixbuf-dev webkit2gtk-dev curl gtk+3.0-dev
- name: Setup and run tests
run: |
yarn tauri --help

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: publish cli.rs
name: publish `tauri-cli`
env:
MACOSX_DEPLOYMENT_TARGET: '10.13'
on:
@@ -18,18 +18,26 @@ jobs:
fail-fast: false
matrix:
config:
- os: ubuntu-18.04
- os: ubuntu-20.04
rust_target: x86_64-unknown-linux-gnu
ext: ''
args: ''
- os: macos-latest
rust_target: x86_64-apple-darwin
ext: ''
args: ''
- os: macos-latest
rust_target: aarch64-apple-darwin
ext: ''
args: ''
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
ext: '.exe'
args: ''
- os: windows-latest
rust_target: aarch64-pc-windows-msvc
ext: '.exe'
args: '--no-default-features --features native-tls,native-tls-vendored'
steps:
- name: Checkout
@@ -39,7 +47,7 @@ jobs:
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.config.rust_target }}
- uses: Swatinem/rust-cache@v2
with:
key: ${{ matrix.config.rust_target }}
@@ -54,7 +62,7 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: build
args: --manifest-path ./tooling/cli/Cargo.toml --release
args: --manifest-path ./tooling/cli/Cargo.toml --release ${{ matrix.config.args }}
- name: Upload CLI
uses: actions/upload-artifact@v3
@@ -80,12 +88,12 @@ jobs:
run: ./.scripts/ci/pack-cli.sh
- name: Get CLI version
run: echo "CLI_VERSION=$(cat tooling/cli/metadata.json | jq '."cli.js".version' -r)" >> $GITHUB_ENV
run: echo "CLI_VERSION=$(cat tooling/cli/metadata.json | jq '."@tauri-apps/cli".version' -r)" >> $GITHUB_ENV
- name: Publish release
uses: softprops/action-gh-release@50195ba7f6f93d1ac97ba8332a178e008ad176aa
with:
tag_name: cli.rs-v${{ env.CLI_VERSION }}
tag_name: tauri-cli-v${{ env.CLI_VERSION }}
files: |
outputs/cargo-tauri-*.zip
outputs/cargo-tauri-*.tgz

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: test cli.js
name: test `@tauri-apps/cli`
on:
push:
@@ -12,7 +12,7 @@ on:
pull_request:
paths:
- '.github/workflows/test-cli-js.yml'
# currently cli.js only tests the template
# currently` @tauri-apps/cli` only tests the template
- 'tooling/cli/templates/app/**'
env:
@@ -24,7 +24,7 @@ concurrency:
cancel-in-progress: true
jobs:
test-tauri-js-cli:
test:
runs-on: ${{ matrix.platform }}
strategy:

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: test cli.rs
name: test `tauri-cli`
on:
push:
@@ -23,7 +23,7 @@ concurrency:
cancel-in-progress: true
jobs:
test-tauri-cli:
test:
runs-on: ${{ matrix.platform }}
strategy:

View File

@@ -24,7 +24,7 @@ concurrency:
cancel-in-progress: true
jobs:
test-tauri-core:
test:
runs-on: ${{ matrix.platform.os }}
strategy:
@@ -56,7 +56,7 @@ jobs:
key: api-all
}
- {
args: --features compression,wry,linux-protocol-headers,isolation,custom-protocol,api-all,cli,updater,system-tray,windows7-compat,http-multipart,
args: --features compression,wry,linux-protocol-headers,isolation,custom-protocol,api-all,cli,updater,system-tray,windows7-compat,http-multipart,test,
key: all
}
@@ -82,5 +82,18 @@ jobs:
workspaces: core -> ../target
save-if: ${{ matrix.features.key == 'all' }}
- name: Downgrade crates with MSRV conflict
# The --precise flag can only be used once per invocation.
run: |
cargo update -p toml:0.7.4 --precise 0.7.3
cargo update -p toml_edit --precise 0.19.8
cargo update -p toml_datetime --precise 0.6.1
cargo update -p serde_spanned --precise 0.6.1
cargo update -p winnow --precise 0.4.1
cargo update -p time --precise 0.3.15
cargo update -p ignore --precise 0.4.18
cargo update -p raw-window-handle --precise 0.5.0
cargo update -p cargo_toml:0.15.3 --precise 0.15.2
- name: test
run: cargo test --target ${{ matrix.platform.target }} ${{ matrix.features.args }}

View File

@@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: test bundler
name: test and lint bundler
on:
push:
@@ -23,7 +23,7 @@ concurrency:
cancel-in-progress: true
jobs:
build-tauri-bundler:
test:
runs-on: ${{ matrix.platform }}
strategy:
@@ -48,7 +48,7 @@ jobs:
cd ./tooling/bundler
cargo test
fmt_check:
fmt:
runs-on: ubuntu-latest
steps:
@@ -66,7 +66,7 @@ jobs:
command: fmt
args: --manifest-path ./tooling/bundler/Cargo.toml --all -- --check
clippy-check:
clippy:
runs-on: ubuntu-latest
steps:

View File

@@ -2,13 +2,13 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: updater test artifacts
name: test updater artifacts
on:
schedule:
- cron: '0 0 * * *'
pull_request:
paths:
- '.github/workflows/artifacts-updater.yml'
- '.github/workflows/test-updater-artifacts.yml'
- 'examples/updater/**'
workflow_dispatch:
@@ -21,7 +21,7 @@ concurrency:
cancel-in-progress: true
jobs:
build-artifacts:
test:
runs-on: ${{ matrix.platform }}
strategy:
@@ -48,7 +48,7 @@ jobs:
core -> ../target
tooling/cli
- name: build and install cli.rs
- name: build and install `tauri-cli`
run: cargo install --path tooling/cli --force
- name: Check whether code signing should be enabled
id: enablecodesigning

View File

@@ -16,7 +16,7 @@ else
fi
if [ -z "$(git diff --name-only tooling/cli/node)" ]; then
echo "skipping cli.js - no changes detected"
echo "skipping \`@tauri-apps/cli\` - no changes detected"
else
cd tooling/cli/node
yarn format

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env pwsh
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env sh
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

View File

@@ -0,0 +1,79 @@
#!/usr/bin/env node
// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
const fs = require('fs')
const path = require('path')
const ignorePackages = [
'tauri-macros',
'tauri-codegen',
'tauri-runtime',
'tauri-runtime-wry',
'tauri-driver'
]
const covectorConfig = JSON.parse(
fs.readFileSync('.changes/config.json', 'utf8')
)
const tags = Object.keys(covectorConfig.changeTags)
const missingTagsFiles = {}
const unknownTagsFiles = {}
function checkChangeFiles(changeFiles) {
for (const file of changeFiles) {
const content = fs.readFileSync(file, 'utf8')
const [frontMatter] = /^---[\s\S.]*---\n/i.exec(content)
const packages = frontMatter
.split('\n')
.filter((l) => !(l === '---' || !l))
.map((l) => l.replace(/('|")/g, '').split(':'))
for (const [package, _, tag] of packages) {
if (!tag) {
if (ignorePackages.includes(package)) continue
if (!missingTagsFiles[file]) missingTagsFiles[file] = []
missingTagsFiles[file].push(package)
} else if (!tags.includes(tag)) {
if (!unknownTagsFiles[file]) unknownTagsFiles[file] = []
unknownTagsFiles[file].push({ package, tag })
}
}
}
const missingTagsEntries = Object.entries(missingTagsFiles)
const unknownTagsEntries = Object.entries(unknownTagsFiles)
if (missingTagsEntries.length > 0 || unknownTagsEntries.length > 0) {
for (const [file, packages] of missingTagsEntries) {
for (const package of packages) {
console.error(
`Package \`${package}\` is missing a change tag in ${file} `
)
}
}
for (const [file, packages] of unknownTagsEntries) {
for (const { package, tag } of packages) {
console.error(
`Package \`${package}\` has an uknown change tag ${tag} in ${file} `
)
}
}
process.exit(1)
}
}
const [_bin, _script, ...files] = process.argv
if (files.length > 0) {
checkChangeFiles(files.filter((f) => f.toLowerCase() !== 'readme.md'))
} else {
const changeFiles = fs
.readdirSync('.changes')
.filter((f) => f.endsWith('.md') && f.toLowerCase() !== 'readme.md')
.map((p) => path.join('.changes', p))
checkChangeFiles(changeFiles)
}

View File

@@ -1,3 +1,5 @@
#!/usr/bin/env node
// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
@@ -9,13 +11,22 @@ const readline = require('readline')
const header = `Copyright 2019-2023 Tauri Programme within The Commons Conservancy
SPDX-License-Identifier: Apache-2.0
SPDX-License-Identifier: MIT`
const bundlerLicense = '// Copyright 2016-2019 Cargo-Bundle developers <https://github.com/burtonageo/cargo-bundle>'
const bundlerLicense =
'// Copyright 2016-2019 Cargo-Bundle developers <https://github.com/burtonageo/cargo-bundle>'
const extensions = ['.rs', '.js', '.ts', '.yml']
const ignore = ['target', 'templates', 'node_modules', 'gen', 'dist', 'bundle.js', 'bundle.global.js']
const ignore = [
'target',
'templates',
'node_modules',
'gen',
'dist',
'bundle.js',
'bundle.global.js'
]
async function checkFile(file) {
if (extensions.some(e => file.endsWith(e))) {
if (extensions.some((e) => file.endsWith(e))) {
const fileStream = fs.createReadStream(file)
const rl = readline.createInterface({
input: fileStream,
@@ -26,7 +37,11 @@ async function checkFile(file) {
let i = 0
for await (let line of rl) {
// ignore empty lines, allow shebang and bundler license
if (line.length === 0 || line.startsWith("#!") || line === bundlerLicense) {
if (
line.length === 0 ||
line.startsWith('#!') ||
line === bundlerLicense
) {
continue
}
@@ -93,7 +108,7 @@ if (files.length > 0) {
run()
} else {
check('.').then(missing => {
check('.').then((missing) => {
if (missing.length > 0) {
console.log(missing.join('\n'))
process.exit(1)

View File

@@ -1,5 +1,9 @@
#!/bin/bash
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
if git diff --quiet --ignore-submodules HEAD
then
echo "working directory is clean"

View File

@@ -1,4 +1,9 @@
#!/bin/bash
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
set -euxo pipefail
for o in outputs/*; do

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env node
// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env node
// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
@@ -6,7 +7,7 @@
/*
This script is solely intended to be run as part of the `covector version` step to
keep the `../tooling/cli/metadata.json` up to date with other version bumps. Long term
we should look to find a more "rusty way" to import / "pin" a version value in our cli.rs
we should look to find a more "rusty way" to import / "pin" a version value in our tauri-cli
rust binaries.
*/
@@ -14,7 +15,7 @@ const { readFileSync, writeFileSync } = require('fs')
const packageNickname = process.argv[2]
const filePath =
packageNickname === 'cli.js'
packageNickname === '@tauri-apps/cli'
? `../../../tooling/cli/metadata.json`
: `../../tooling/cli/metadata.json`
const bump = process.argv[3]
@@ -51,9 +52,9 @@ const metadata = JSON.parse(readFileSync(filePath, 'utf-8'))
// set field version
let version
if (packageNickname === 'cli.js') {
version = inc(metadata[packageNickname].version)
metadata[packageNickname].version = version
if (packageNickname === '@tauri-apps/cli') {
version = inc(metadata['cli.js'].version)
metadata['cli.js'].version = version
} else {
version = inc(metadata[packageNickname])
metadata[packageNickname] = version

View File

@@ -1,3 +1,7 @@
#!/bin/sh
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
docker build -t aarch64-unknown-linux-gnu:latest --file .docker/cross/aarch64.Dockerfile .docker/cross

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env pwsh
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env bash
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env sh
# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

View File

@@ -1,3 +1,7 @@
: Copyright 2019-2023 Tauri Programme within The Commons Conservancy
: SPDX-License-Identifier: Apache-2.0
: SPDX-License-Identifier: MIT
@ECHO OFF
REM Copyright 2019-2023 Tauri Programme within The Commons Conservancy

View File

@@ -39,16 +39,16 @@ 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]
#### [@tauri-apps/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.
#### [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.
#### [cli.js](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli/node) [JS]
It is a wrapper around [cli.rs](https://github.com/tauri-apps/tauri/blob/dev/tooling/cli) using [napi-rs](https://github.com/napi-rs/napi-rs) to produce NPM packages for each platform.
#### [@tauri-apps/cli](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli/node) [JS]
It is a wrapper around [tauri-cli](https://github.com/tauri-apps/tauri/blob/dev/tooling/cli) using [napi-rs](https://github.com/napi-rs/napi-rs) to produce NPM packages for each platform.
#### [cli.rs](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli) [RUST]
#### [tauri-cli](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli) [RUST]
This rust executable provides the full interface to all of the required activities for which the CLI is required. It will run on macOS, Windows, and Linux.
#### [create-tauri-app](https://github.com/tauri-apps/create-tauri-app) [JS]
@@ -67,9 +67,6 @@ Tauri uses WRY as the abstract layer responsible to determine which webview is u
# Additional tooling
## [binary-releases](https://github.com/tauri-apps/binary-releases)
This is the delivery mechanism for tauri prebuilt binaries: currently the cli.rs (used by cli.js) and rustup binaries (used by the deps install command of cli.js). These artifacts are automatically created on release.
## [tauri-action](https://github.com/tauri-apps/tauri-action)
This is a github workflow that builds tauri binaries for all platforms. It is not the fastest out there, but it gets the job done and is highly configurable. Even allowing you to create a (very basic) tauri app even if tauri is not setup.
@@ -119,7 +116,7 @@ This will do several things:
1. start the JS Framework devserver
2. begin the long process of downloading and compiling the rust libraries
3. open an application window with devtools enabled
4. keep a long-lived console alive
4. keep a long-lived console alive
If you change your HTML/CSS/TS/JS, your framework devserver should give you its best shot at instant hot module reloading and you will see the changes instantly.
@@ -149,7 +146,7 @@ After some time, the process will end and you can see the results in the `./src-
End users will be provided with binaries in ways that are appropriate for their systems. Whether macOS, Linux, or Windows, direct download or store installations - they will be able to follow procedures for installing and removing that they are used to.
## What does the Updating flow look like?
When a new version is ready, the developer publishes the new signed artifacts to a server (that they have configured within `tauri.conf.json`).
When a new version is ready, the developer publishes the new signed artifacts to a server (that they have configured within `tauri.conf.json`).
The application can poll this server to see if there is a new release. When there is a new release, the user is prompted to update. The application update is downloaded, verified (checksum & signature), updated, closed, and restarted.

View File

@@ -2,7 +2,7 @@
[![status](https://img.shields.io/badge/status-stable-blue.svg)](https://github.com/tauri-apps/tauri/tree/dev)
[![License](https://img.shields.io/badge/License-MIT%20or%20Apache%202-green.svg)](https://opencollective.com/tauri)
[![test library](https://img.shields.io/github/workflow/status/tauri-apps/tauri/test%20library?label=test%20library)](https://github.com/tauri-apps/tauri/actions?query=workflow%3A%22test+library%22)
[![test core](https://img.shields.io/github/actions/workflow/status/tauri-apps/tauri/test-core.yml?label=test%20core&logo=github)](https://github.com/tauri-apps/tauri/actions/workflows/test-core.yml)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri?ref=badge_shield)
[![Chat Server](https://img.shields.io/badge/chat-discord-7289da.svg)](https://discord.gg/SpmNs4S)
[![website](https://img.shields.io/badge/website-tauri.app-purple.svg)](https://tauri.app)
@@ -25,12 +25,12 @@
### Tooling
| Component | Description | Version | Lin | Win | Mac |
| --------------------------------------------------------------------------- | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ | --- | --- | --- |
| [**bundler**](https://github.com/tauri-apps/tauri/tree/dev/tooling/bundler) | manufacture the final binaries | [![](https://img.shields.io/crates/v/tauri-bundler.svg)](https://crates.io/crates/tauri-bundler) | ✅ | ✅ | ✅ |
| [**api.js**](https://github.com/tauri-apps/tauri/tree/dev/tooling/api) | JS API for interaction with Rust backend | [![](https://img.shields.io/npm/v/@tauri-apps/api.svg)](https://www.npmjs.com/package/@tauri-apps/api) | ✅ | ✅ | ✅ |
| [**cli.rs**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli) | create, develop and build apps | [![](https://img.shields.io/crates/v/tauri-cli.svg)](https://crates.io/crates/tauri-cli) | ✅ | ✅ | ✅ |
| [**cli.js**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli/node) | Node.js CLI wrapper for cli.rs | [![](https://img.shields.io/npm/v/@tauri-apps/cli.svg)](https://www.npmjs.com/package/@tauri-apps/cli) | ✅ | ✅ | ✅ |
| Component | Description | Version | Lin | Win | Mac |
| ------------------------------------------------------------------------------------ | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ | --- | --- | --- |
| [**bundler**](https://github.com/tauri-apps/tauri/tree/dev/tooling/bundler) | manufacture the final binaries | [![](https://img.shields.io/crates/v/tauri-bundler.svg)](https://crates.io/crates/tauri-bundler) | ✅ | ✅ | ✅ |
| [**tauri-cli**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli) | create, develop and build apps | [![](https://img.shields.io/crates/v/tauri-cli.svg)](https://crates.io/crates/tauri-cli) | ✅ | ✅ | ✅ |
| [**@tauri-apps/cli**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli/node) | Node.js CLI wrapper for `tauri-cli` | [![](https://img.shields.io/npm/v/@tauri-apps/cli.svg)](https://www.npmjs.com/package/@tauri-apps/cli) | ✅ | ✅ | ✅ |
| [**@tauri-apps/api**](https://github.com/tauri-apps/tauri/tree/dev/tooling/api) | JS API for interaction with Rust backend | [![](https://img.shields.io/npm/v/@tauri-apps/api.svg)](https://www.npmjs.com/package/@tauri-apps/api) | ✅ | ✅ | ✅ |
### Utilities and Plugins
@@ -75,6 +75,8 @@ For **running** Tauri apps we support the below configurations (these are automa
- `webkit2gtk`, `gtk3`, `libayatana-appindicator`<sup>1</sup>
- Fedora (latest 2 versions) with the following packages installed:
- `webkit2gtk3`, `gtk3`, `libappindicator-gtk3`<sup>1</sup>
- Void with the following packages installed:
- `webkit2gtk`, `gtk+3`, `libappindicator`<sup>1</sup>
<sup>1</sup> `appindicator` is only required if system trays are used

View File

@@ -1,5 +1,26 @@
# Changelog
## \[1.4.0]
### Enhancements
- [`52474e47`](https://www.github.com/tauri-apps/tauri/commit/52474e479d695865299d8c8d868fb98b99731020)([#7141](https://www.github.com/tauri-apps/tauri/pull/7141)) Enhance Cargo features check.
- [`af937290`](https://www.github.com/tauri-apps/tauri/commit/af93729031565a69d1fde6cf16bea3b9b6e43a65)([#6676](https://www.github.com/tauri-apps/tauri/pull/6676)) On Windows, set `LegalCopyright` and `FileDescription` file properties on the executable from `tauri.bundle.copyright` and `tauri.bundle.shortDescription`,
- [`d2710e9d`](https://www.github.com/tauri-apps/tauri/commit/d2710e9d2e8fd93975ef6494512370faa8cb3b7e)([#6944](https://www.github.com/tauri-apps/tauri/pull/6944)) Unpin `time`, `ignore`, and `winnow` crate versions. Developers now have to pin crates if needed themselves. A list of crates that need pinning to adhere to Tauri's MSRV will be visible in Tauri's GitHub workflow: https://github.com/tauri-apps/tauri/blob/dev/.github/workflows/test-core.yml#L85.
## \[1.3.0]
- Bump minimum supported Rust version to 1.60.
- [5fdc616d](https://www.github.com/tauri-apps/tauri/commit/5fdc616df9bea633810dcb814ac615911d77222c) feat: Use the zbus-backed of notify-rust ([#6332](https://www.github.com/tauri-apps/tauri/pull/6332)) on 2023-03-31
- Add initial support for building `nsis` bundles on non-Windows platforms.
- [60e6f6c3](https://www.github.com/tauri-apps/tauri/commit/60e6f6c3f1605f3064b5bb177992530ff788ccf0) feat(bundler): Add support for creating NSIS bundles on unix hosts ([#5788](https://www.github.com/tauri-apps/tauri/pull/5788)) on 2023-01-19
- Add `WindowsAttributes::app_manifest` to specify the application manifest on Windows.
- [bca09f7f](https://www.github.com/tauri-apps/tauri/commit/bca09f7f5ff1c9c5a4b51da043bdd5da668a179b) feat(tauri-build): add option to specify Windows manifest, closes [#5584](https://www.github.com/tauri-apps/tauri/pull/5584) ([#5730](https://www.github.com/tauri-apps/tauri/pull/5730)) on 2022-12-14
- Added support for Cargo's workspace inheritance for package information. The cli now also detects inherited `tauri` and `tauri-build` dependencies and disables manifest rewrites accordingly.
- [cd8c074a](https://www.github.com/tauri-apps/tauri/commit/cd8c074ae6592303d3f6844a4fb6d262eae913b2) feat(cli): add support for Cargo's workspace inheritance for the package version, closes [#5070](https://www.github.com/tauri-apps/tauri/pull/5070) ([#5775](https://www.github.com/tauri-apps/tauri/pull/5775)) on 2022-12-14
- [d20a7288](https://www.github.com/tauri-apps/tauri/commit/d20a728892eee1858ab525ab6216cd721f473ab5) feat: Further improve workspace inheritance, closes [#6122](https://www.github.com/tauri-apps/tauri/pull/6122), [#5070](https://www.github.com/tauri-apps/tauri/pull/5070) ([#6144](https://www.github.com/tauri-apps/tauri/pull/6144)) on 2023-01-26
- Pin `winnow` crate to 0.4.1 to keep the 1.60 MSRV.
## \[1.2.1]
- Fix `allowlist > app > show/hide` always disabled when `allowlist > app > all: false`.

View File

@@ -1,6 +1,6 @@
[package]
name = "tauri-build"
version = "1.2.1"
version = "1.4.0"
authors = [ "Tauri Programme within The Commons Conservancy" ]
categories = [ "gui", "web-programming" ]
license = "Apache-2.0 OR MIT"
@@ -19,15 +19,13 @@ rustdoc-args = [ "--cfg", "doc_cfg" ]
[dependencies]
anyhow = "1"
quote = { version = "1", optional = true }
tauri-codegen = { version = "1.2.1", path = "../tauri-codegen", optional = true }
tauri-utils = { version = "1.2.1", path = "../tauri-utils", features = [ "build", "resources" ] }
tauri-codegen = { version = "1.4.0", path = "../tauri-codegen", optional = true }
tauri-utils = { version = "1.4.0", path = "../tauri-utils", features = [ "build", "resources" ] }
cargo_toml = "0.15"
serde = "1"
serde_json = "1"
heck = "0.4"
json-patch = "1.0"
# dependencies for Windows targets
tauri-winres = "0.1"
semver = "1"

View File

@@ -4,7 +4,7 @@
[![status](https://img.shields.io/badge/status-stable-blue.svg)](https://github.com/tauri-apps/tauri/tree/dev)
[![License](https://img.shields.io/badge/License-MIT%20or%20Apache%202-green.svg)](https://opencollective.com/tauri)
[![test library](https://img.shields.io/github/workflow/status/tauri-apps/tauri/test%20library?label=test%20library)](https://github.com/tauri-apps/tauri/actions?query=workflow%3A%22test+library%22)
[![test core](https://img.shields.io/github/actions/workflow/status/tauri-apps/tauri/test-core.yml?label=test%20core&logo=github)](https://github.com/tauri-apps/tauri/actions/workflows/test-core.yml)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri?ref=badge_shield)
[![Chat Server](https://img.shields.io/badge/chat-discord-7289da.svg)](https://discord.gg/SpmNs4S)
[![website](https://img.shields.io/badge/website-tauri.app-purple.svg)](https://tauri.app)

Some files were not shown because too many files have changed in this diff Show More