diff --git a/README.md b/README.md index af42e64d1..37d86baf5 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ For game versions 3.1 and above, Cultivation automatically makes a small patch t # Download -[Find release builds here!](https://github.com/Grasscutters/Cultivation/releases) +[Find release builds here!](/releases) Download and open the MSI, and once installed, run Cultivation as administrator. Refer below for more [detailed setup instructions](#setup). @@ -46,15 +46,15 @@ Download and open the MSI, and once installed, run Cultivation as administrator. - If you use multiple Java versions, you can set the Java path to your Java 17 installation (only required if you are running your own server) - Decide if you want to download your own server, or just join a public one - If joining a public one, you're done. Just click "Connect with Grasscutter" and input the address and port. You do not have to continue these instructions. - - If you are getting System Error, or 4214, ask the [Discord support channels](https://discord.gg/grasscutter) + - If you are getting System Error, or 4214, ask the [Discord support channels](https://discord.gg/T5vZU6UyeG) - Open the "Downloads" menu (top right) - - Download "Grasscutter All-in-One" (top of the list) + - Download "Grasscutter All-in-One" (select **one** of the AIOs that matches the version you want) - Once that is done, click the icon next to "Launch" - To play on your new server: - Click "Connect with Grasscutter" - Input `localhost` as the address, and `443` as the port - Ensure HTTPS is disabled -- Any generic "I am getting XYZ error!" should go in the [Discord support channels](https://discord.gg/grasscutter) +- Any generic "I am getting XYZ error!" should go in the [Discord support channels](https://discord.gg/T5vZU6UyeG) - Any specific Cultivation issues should go in [the issues section](/issues) - Any Grasscutter server related issues should go in [the Grasscutter issues section](https://github.com/Grasscutters/Grasscutter) diff --git a/README_ja-JP.md b/README_ja-JP.md index 4d651769f..abf77b804 100644 --- a/README_ja-JP.md +++ b/README_ja-JP.md @@ -14,49 +14,49 @@ - [セットアップ](#セットアップ) - [ビルド](#ビルド) - [コードフォーマット・lint](#コードフォーマットlint) - - [artifactを生成](#artifactを生成) + - [artifact を生成](#artifactを生成) - [テーマについて](#テーマについて) - [スクリーンショット](#スクリーンショット) - [クレジット](#クレジット) # クライアントのパッチに関するお知らせ -ゲームバージョン3.1以降の場合、CultivationはGrasscutterを使用して起動するときにゲームクライアントに自動的に小さなパッチ(RSAパッチ)を適用し、ゲームを閉じると自動的に解除します。理論上は安全ですが、ゲームクライアント自体に変更を加えるため、公式サーバーに接続するとBANにつながる可能性があります。これによるBANについての既知の事例はありませんが、可能性は存在します。 +ゲームバージョン 3.1 以降の場合、Cultivation は Grasscutter を使用して起動するときにゲームクライアントに自動的に小さなパッチ(RSA パッチ)を適用し、ゲームを閉じると自動的に解除します。理論上は安全ですが、ゲームクライアント自体に変更を加えるため、公式サーバーに接続すると BAN につながる可能性があります。これによる BAN についての既知の事例はありませんが、可能性は存在します。 # ダウンロード [**リリースビルドはこちら**](https://github.com/Grasscutters/Cultivation/releases) -MSIインストーラーをダウンロードして開き、インストールしたら、管理者としてCultivationを実行します。[より詳細なセットアップ手順](#セットアップ)については、以下を参照してください。 +MSI インストーラーをダウンロードして開き、インストールしたら、管理者として Cultivation を実行します。[より詳細なセットアップ手順](#セットアップ)については、以下を参照してください。 -**Windows 7をお使いの場合:** [WebView2](https://developer.microsoft.com/ja-jp/microsoft-edge/webview2/#download-section)を手動でダウンロードしてインストールする必要があります。また、Cultivationのインストールには`.msi`の代わりに`.zip`を使用してください。 +**Windows 7 をお使いの場合:** [WebView2](https://developer.microsoft.com/ja-jp/microsoft-edge/webview2/#download-section)を手動でダウンロードしてインストールする必要があります。また、Cultivation のインストールには`.msi`の代わりに`.zip`を使用してください。 # セットアップ -5分間の解説動画(英語): https://youtu.be/e0irOYbQe7I +5 分間の解説動画(英語): https://youtu.be/e0irOYbQe7I -- Cultivationをダウンロードします。 - - Windows 10/11をお使いの場合は、MSIインストーラーを使用してください。 - - Windows 7をお使いの場合またはMSIインストーラーが動作しない場合、ZIPを使用してください。また、[WebView2](https://developer.microsoft.com/ja-jp/microsoft-edge/webview2/)をインストールしてください。 - - GNU/LinuxまたはmacOSをお使いの場合は、[Linux・macOSでの動作をサポートするのを手伝っていただけると嬉しいです!](https://github.com/Grasscutters/Cultivation/issues/7) -- Cultivationをインストールまたは展開します。 -- Cultivationを管理者権限で開きます。 +- Cultivation をダウンロードします。 + - Windows 10/11 をお使いの場合は、MSI インストーラーを使用してください。 + - Windows 7 をお使いの場合または MSI インストーラーが動作しない場合、ZIP を使用してください。また、[WebView2](https://developer.microsoft.com/ja-jp/microsoft-edge/webview2/)をインストールしてください。 + - GNU/Linux または macOS をお使いの場合は、[Linux・macOS での動作をサポートするのを手伝っていただけると嬉しいです!](https://github.com/Grasscutters/Cultivation/issues/7) +- Cultivation をインストールまたは展開します。 +- Cultivation を管理者権限で開きます。 - Options(右上の歯車アイコン)内で、ゲームのインストールパスを設定します。 - - 他の場所に既存のGrasscutterサーバーがインストールされている場合は、`.jar`ファイルのパスを設定できます。Cultivationを介して行われるすべてのダウンロードは、そのパスを自動的に使用します。追加の構成は必要ありません。 - - 複数のJavaバージョンを使用している場合、Java 17のパスをCultivationに設定できます(自分でGrasscutterサーバーを実行している場合にのみ必要です)。 + - 他の場所に既存の Grasscutter サーバーがインストールされている場合は、`.jar`ファイルのパスを設定できます。Cultivation を介して行われるすべてのダウンロードは、そのパスを自動的に使用します。追加の構成は必要ありません。 + - 複数の Java バージョンを使用している場合、Java 17 のパスを Cultivation に設定できます(自分で Grasscutter サーバーを実行している場合にのみ必要です)。 - 自分でサーバーをダウンロードするか、公開サーバーに参加するかどうかを決定します。 - - 公開サーバーに参加する場合は、[Grasscutterに接続]をクリックして、アドレスとポートを入力してください。 - - システムエラー、または4214エラーが表示されている場合は、[Discordサポートチャンネル](https://discord.gg/grasscutter)で問い合わせてください。 + - 公開サーバーに参加する場合は、[Grasscutter に接続]をクリックして、アドレスとポートを入力してください。 + - システムエラー、または 4214 エラーが表示されている場合は、[Discord サポートチャンネル](https://discord.gg/grasscutter)で問い合わせてください。 - 自分でサーバーをダウンロードする場合は、"Downloads"メニューを開きます。(右上の下矢印アイコン) - - "Grasscutter All-in-Oneをダウンロード"します。(一番上) + - "Grasscutter All-in-One をダウンロード"します。(一番上) - それが完了したら、「起動」の横にあるサーバーアイコンをクリックします。 - 自分のサーバーでプレイするには: - - [Grasscutterに接続]をクリックします。 + - [Grasscutter に接続]をクリックします。 - アドレスに`localhost`、ポート番号に`443`を指定します。 - - HTTPS接続を無効にします。 -- 何らかのエラーが発生した場合は、[Discordサポートチャンネル](https://discord.gg/grasscutter)で問い合わせてください。 -- 何らかのCultivationに関する問題は[Issuesページ](/issues)へお願いします。 -- 何らかのGrasscutterサーバーに関する問題は[GrasscutterのIssuesページ](https://github.com/Grasscutters/Grasscutter/issues)へお願いします。 + - HTTPS 接続を無効にします。 +- 何らかのエラーが発生した場合は、[Discord サポートチャンネル](https://discord.gg/grasscutter)で問い合わせてください。 +- 何らかの Cultivation に関する問題は[Issues ページ](/issues)へお願いします。 +- 何らかの Grasscutter サーバーに関する問題は[Grasscutter の Issues ページ](https://github.com/Grasscutters/Grasscutter/issues)へお願いします。 # トラブルシューティング @@ -67,9 +67,9 @@ MSIインストーラーをダウンロードして開き、インストール - アンインストール時に問題が発生する場合は、`HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\EdgeUpdate\Clients\{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}`レジストリを削除して再度試してください。 - [コマンドプロンプトからアンインストール](https://superuser.com/a/1743626)する方法を試すこともできます。 -### Cultivationを使用した後にインターネットに接続できない問題 +### Cultivation を使用した後にインターネットに接続できない問題 -ゲームを終了すると、Cultivationウィンドウに戻り再びポップアップすることを確認してください。これは、ゲームが終了されたこと、そしてプロキシ設定が正常に戻されたことを示しています。ウィンドウに戻る前にCultivationを閉じた場合、またはインターネットの他の問題が発生した場合は、[Windowsのプロキシ設定](https://is.gd/tZHkvl)を開き、"手動プロキシセットアップ"をオフにしてください。これでインターネット接続は元に戻ります。 +ゲームを終了すると、Cultivation ウィンドウに戻り再びポップアップすることを確認してください。これは、ゲームが終了されたこと、そしてプロキシ設定が正常に戻されたことを示しています。ウィンドウに戻る前に Cultivation を閉じた場合、またはインターネットの他の問題が発生した場合は、[Windows のプロキシ設定](https://is.gd/tZHkvl)を開き、"手動プロキシセットアップ"をオフにしてください。これでインターネット接続は元に戻ります。 # 開発者向けクイックスタート @@ -96,7 +96,7 @@ MSIインストーラーをダウンロードして開き、インストール - `yarn format` - `yarn lint`, `yarn lint:fix` -### artifactを生成 +### artifact を生成 - 秘密鍵へのパスを持つ環境変数として`TAURI_PRIVATE_KEY`を追加 - 秘密鍵のパスワードを持つ環境変数として`TAURI_KEY_PASSWORD`を追加 @@ -117,8 +117,8 @@ MSIインストーラーをダウンロードして開き、インストール ## クレジット -- [SpikeHD](https://github.com/SpikeHD): オリジナルである **GrassClipper** を製作し、Cultivationの素晴らしいUIを作成 -- [KingRainbow44](https://github.com/KingRainbow44): ゼロからプロキシデーモンを作成し、Cultivationへ統合 +- [SpikeHD](https://github.com/SpikeHD): オリジナルである **GrassClipper** を製作し、Cultivation の素晴らしい UI を作成 +- [KingRainbow44](https://github.com/KingRainbow44): ゼロからプロキシデーモンを作成し、Cultivation へ統合 - [Benj](https://github.com/4Benj): クライアントのパッチに関するアシスタント - [lilmayofuksu](https://github.com/lilmayofuksu): クライアントのパッチに関するアシスタント - [Tauri](https://tauri.app): 素晴らしく軽量でシンプルなデスクトップアプリケーションフレームワーク・ライブラリを提供 diff --git a/package.json b/package.json index 2130fa748..f15609c89 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cultivation", - "version": "1.0.26", + "version": "1.5.1", "private": true, "dependencies": { "@tauri-apps/api": "^1.0.0-rc.5", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index df958e60b..8c92b4450 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "addr2line" -version = "0.19.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" dependencies = [ "gimli", ] @@ -17,59 +17,67 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "adler32" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" - [[package]] name = "aes" -version = "0.7.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" dependencies = [ "cfg-if", "cipher", "cpufeatures", - "opaque-debug", ] [[package]] name = "ahash" -version = "0.7.6" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "getrandom 0.2.7", + "getrandom 0.2.15", "once_cell", "version_check", ] [[package]] name = "aho-corasick" -version = "0.7.18" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ "memchr", ] [[package]] name = "alloc-no-stdlib" -version = "2.0.3" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ef4730490ad1c4eae5c4325b2a95f521d023e5c885853ff7aca0a6a1631db3" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" [[package]] name = "alloc-stdlib" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "697ed7edc0f1711de49ce108c541623a0af97c6c60b2f6e2b65229847ac843c2" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" dependencies = [ "alloc-no-stdlib", ] +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + [[package]] name = "anime-game-core" version = "1.15.1" @@ -87,12 +95,12 @@ dependencies = [ "minreq", "serde", "serde_json", - "sysinfo 0.29.2", + "sysinfo 0.29.11", "tar", "thiserror", "tracing", "xz", - "zip 0.6.2", + "zip", ] [[package]] @@ -113,20 +121,11 @@ dependencies = [ "wincompatlib", ] -[[package]] -name = "ansi_term" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" -dependencies = [ - "winapi", -] - [[package]] name = "anyhow" -version = "1.0.58" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb07d2053ccdbe10e2af2995a2f116c1330396493dc1269f6a91d0ae82e19704" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" dependencies = [ "backtrace", ] @@ -141,6 +140,18 @@ dependencies = [ "log", ] +[[package]] +name = "arrayref" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + [[package]] name = "asn1-rs" version = "0.3.1" @@ -151,26 +162,26 @@ dependencies = [ "asn1-rs-impl", "displaydoc", "nom", - "num-traits 0.2.15", + "num-traits 0.2.19", "rusticata-macros", "thiserror", - "time 0.3.11", + "time", ] [[package]] name = "asn1-rs" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf6690c370453db30743b373a60ba498fc0d6d83b11f4abfd87a84a075db5dd4" +checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ "asn1-rs-derive 0.4.0", "asn1-rs-impl", "displaydoc", "nom", - "num-traits 0.2.15", + "num-traits 0.2.19", "rusticata-macros", "thiserror", - "time 0.3.11", + "time", ] [[package]] @@ -181,7 +192,7 @@ checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", "synstructure", ] @@ -193,7 +204,7 @@ checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", "synstructure", ] @@ -205,14 +216,14 @@ checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "async-compression" -version = "0.3.12" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2bf394cfbbe876f0ac67b13b6ca819f9c9f2fb9ec67223cceb1555fbab1c31a" +checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" dependencies = [ "brotli", "flate2", @@ -226,41 +237,42 @@ dependencies = [ [[package]] name = "async-io" -version = "1.7.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5e18f61464ae81cde0a23e713ae8fd299580c54d697a35820cfd0625b8b0e07" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" dependencies = [ + "async-lock", + "autocfg", + "cfg-if", "concurrent-queue", "futures-lite", - "libc", "log", - "once_cell", "parking", "polling", + "rustix 0.37.27", "slab", - "socket2 0.4.4", + "socket2 0.4.10", "waker-fn", - "winapi", ] [[package]] name = "async-lock" -version = "2.5.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6" +checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" dependencies = [ "event-listener", ] [[package]] name = "async-trait" -version = "0.1.68" +version = "0.1.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" +checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.66", ] [[package]] @@ -270,7 +282,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c3d816ce6f0e2909a96830d6911c2aff044370b1ef92d7f267b43bae5addedd" dependencies = [ "atk-sys", - "bitflags", + "bitflags 1.3.2", "glib", "libc", ] @@ -284,7 +296,7 @@ dependencies = [ "glib-sys", "gobject-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] @@ -307,21 +319,21 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.1.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" dependencies = [ "addr2line", "cc", "cfg-if", "libc", - "miniz_oxide 0.6.2", + "miniz_oxide", "object", "rustc-demangle", ] @@ -334,15 +346,27 @@ checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "base64" -version = "0.13.0" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.0.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a32fd6af2b5827bce66c29053ba0e7c42b9dcab01835835058558c10851a46b" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "bit-set" @@ -365,6 +389,25 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitflags" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" + +[[package]] +name = "blake3" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq 0.3.0", +] + [[package]] name = "block" version = "0.1.6" @@ -382,18 +425,18 @@ dependencies = [ [[package]] name = "block-buffer" -version = "0.10.2" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ "generic-array", ] [[package]] name = "brotli" -version = "3.3.4" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -402,9 +445,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.3.2" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" +checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -412,54 +455,44 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" -dependencies = [ - "memchr", -] - -[[package]] -name = "bstr" -version = "1.3.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ffdb39cb703212f3c11973452c2861b972f757b021158f3516ba10f2fa8b2c1" +checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706" dependencies = [ "memchr", - "once_cell", - "regex-automata", + "regex-automata 0.4.7", "serde", ] [[package]] name = "bumpalo" -version = "3.12.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytecount" -version = "0.6.3" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c" +checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce" [[package]] name = "bytemuck" -version = "1.10.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c53dfa917ec274df8ed3c572698f381a24eef2efba9492d797301b72b6db408a" +checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" [[package]] name = "byteorder" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.1.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" +checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "bzip2" @@ -482,12 +515,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "cache-padded" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c" - [[package]] name = "cached" version = "0.44.0" @@ -515,14 +542,14 @@ dependencies = [ "darling 0.14.4", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "cached_proc_macro_types" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a4f925191b4367301851c6d99b09890311d74b0d43f274c0b34c86d308a3663" +checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0" [[package]] name = "cairo-rs" @@ -530,7 +557,7 @@ version = "0.15.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c76ee391b03d35510d9fa917357c7f1855bd9a6659c95a1b392e33f49b3369bc" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-sys-rs", "glib", "libc", @@ -545,23 +572,23 @@ checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8" dependencies = [ "glib-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] name = "camino" -version = "1.0.9" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "869119e97797867fd90f5e22af7d0bd274bd4635ebb9eb68c04f3f513ae6c412" +checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239" dependencies = [ "serde", ] [[package]] name = "cargo-platform" -version = "0.1.2" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" +checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" dependencies = [ "serde", ] @@ -574,29 +601,30 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.12", + "semver", "serde", "serde_json", ] [[package]] name = "cargo_toml" -version = "0.11.5" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5809dd3e6444651fd1cdd3dbec71eca438c439a0fcc8081674a14da0afe50185" +checksum = "599aa35200ffff8f04c1925aa1acc92fa2e08874379ef42e210a80e527e60838" dependencies = [ "serde", - "serde_derive", - "toml", + "toml 0.7.8", ] [[package]] name = "cc" -version = "1.0.73" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" +checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" dependencies = [ "jobserver", + "libc", + "once_cell", ] [[package]] @@ -615,6 +643,17 @@ dependencies = [ "uuid 0.8.2", ] +[[package]] +name = "cfb" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" +dependencies = [ + "byteorder", + "fnv", + "uuid 1.8.0", +] + [[package]] name = "cfg-expr" version = "0.9.1" @@ -626,11 +665,12 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.10.3" +version = "0.15.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aacacf4d96c24b2ad6eb8ee6df040e4f27b0d0b39a5710c30091baa830485db" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" dependencies = [ "smallvec", + "target-lexicon", ] [[package]] @@ -639,22 +679,42 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "num-traits 0.2.19", + "serde", + "windows-targets 0.52.5", +] + [[package]] name = "cipher" -version = "0.3.0" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "generic-array", + "crypto-common", + "inout", ] [[package]] name = "cocoa" -version = "0.24.0" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63902e9223530efb4e26ccd0cf55ec30d592d3b42e21a28defc42a9586e832" +checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" dependencies = [ - "bitflags", + "bitflags 1.3.2", "block", "cocoa-foundation", "core-foundation", @@ -666,15 +726,14 @@ dependencies = [ [[package]] name = "cocoa-foundation" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" +checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" dependencies = [ - "bitflags", + "bitflags 1.3.2", "block", "core-foundation", "core-graphics-types", - "foreign-types", "libc", "objc", ] @@ -687,9 +746,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "combine" -version = "4.6.4" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a604e93b79d1808327a6fca85a6f2d69de66461e7620f5a4cbf5fb4d1d7c948" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ "bytes", "memchr", @@ -697,18 +756,18 @@ dependencies = [ [[package]] name = "concurrent-queue" -version = "1.2.3" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83827793632c72fa4f73c2edb31e7a997527dd8ffe7077344621fc62c5478157" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" dependencies = [ - "cache-padded", + "crossbeam-utils", ] [[package]] name = "configparser" -version = "3.0.2" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5458d9d1a587efaf5091602c59d299696a3877a439c8f6d461a2d3cce11df87a" +checksum = "e57e3272f0190c3f1584272d613719ba5fc7df7f4942fe542e63d949cf3a649b" [[package]] name = "constant_time_eq" @@ -716,6 +775,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +[[package]] +name = "constant_time_eq" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" + [[package]] name = "convert_case" version = "0.4.0" @@ -724,9 +789,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "core-foundation" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" dependencies = [ "core-foundation-sys", "libc", @@ -734,9 +799,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.3" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "core-graphics" @@ -744,7 +809,7 @@ version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", "core-graphics-types", "foreign-types", @@ -753,93 +818,81 @@ dependencies = [ [[package]] name = "core-graphics-types" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", - "foreign-types", "libc", ] [[package]] name = "cpufeatures" -version = "0.2.2" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b" +checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" dependencies = [ "libc", ] [[package]] name = "crc" -version = "3.0.1" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" dependencies = [ "crc-catalog", ] [[package]] name = "crc-catalog" -version = "2.2.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" -version = "1.3.2" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] [[package]] name = "crossbeam-channel" -version = "0.5.5" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c02a4d71819009c192cf4872265391563fd6a84c81ff2c0f2a7026ca4c1d85c" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ - "cfg-if", "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.1" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" dependencies = [ - "cfg-if", "crossbeam-epoch", "crossbeam-utils", ] [[package]] name = "crossbeam-epoch" -version = "0.9.9" +version = "0.9.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07db9d94cbd326813772c968ccd25999e5f8ae22f4f8d1b11effa37ef6ce281d" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" dependencies = [ - "autocfg", - "cfg-if", "crossbeam-utils", - "memoffset", - "once_cell", - "scopeguard", ] [[package]] name = "crossbeam-utils" -version = "0.8.10" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d82ee10ce34d7bc12c2122495e7593a9c41347ecdd64185af4ecf72cb1a7f83" -dependencies = [ - "cfg-if", - "once_cell", -] +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crypto-common" @@ -865,37 +918,37 @@ dependencies = [ "proc-macro2", "quote", "smallvec", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "cssparser-macros" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "ctor" -version = "0.1.22" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c" +checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" dependencies = [ "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "ctrlc" -version = "3.2.3" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d91974fbbe88ec1df0c24a4f00f99583667a7e2e6272b2b92d294d81e462173" +checksum = "672465ae37dc1bc6380a6547a8883d5dd397b0f1faaad4f265726cc7042a5345" dependencies = [ "nix", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -906,7 +959,7 @@ checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" [[package]] name = "cultivation" -version = "1.2.0" +version = "1.5.1" dependencies = [ "anime-launcher-sdk", "anyhow", @@ -943,116 +996,97 @@ dependencies = [ "unrar", "which", "windows-service", - "zip 0.6.2", + "zip", "zip-extract", ] [[package]] name = "darling" -version = "0.13.4" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", + "darling_core 0.14.4", + "darling_macro 0.14.4", ] [[package]] name = "darling" -version = "0.14.4" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" dependencies = [ - "darling_core 0.14.4", - "darling_macro 0.14.4", + "darling_core 0.20.9", + "darling_macro 0.20.9", ] [[package]] name = "darling_core" -version = "0.13.4" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "strsim", - "syn 1.0.98", + "strsim 0.10.0", + "syn 1.0.109", ] [[package]] name = "darling_core" -version = "0.14.4" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "strsim", - "syn 1.0.98", + "strsim 0.11.1", + "syn 2.0.66", ] [[package]] name = "darling_macro" -version = "0.13.4" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" dependencies = [ - "darling_core 0.13.4", + "darling_core 0.14.4", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "darling_macro" -version = "0.14.4" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ - "darling_core 0.14.4", + "darling_core 0.20.9", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "data-encoding" -version = "2.3.2" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "dbus" -version = "0.9.6" +version = "0.9.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f8bcdd56d2e5c4ed26a529c5a9029f5db8290d433497506f958eae3be148eb6" +checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b" dependencies = [ "libc", "libdbus-sys", "winapi", ] -[[package]] -name = "deflate" -version = "0.7.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4" -dependencies = [ - "adler32", - "byteorder", -] - -[[package]] -name = "deflate" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c86f7e25f518f4b81808a2cf1c50996a61f5c2eb394b2393bd87f2a4780a432f" -dependencies = [ - "adler32", -] - [[package]] name = "der-parser" version = "7.0.0" @@ -1062,36 +1096,46 @@ dependencies = [ "asn1-rs 0.3.1", "displaydoc", "nom", - "num-bigint 0.4.3", - "num-traits 0.2.15", + "num-bigint 0.4.5", + "num-traits 0.2.19", "rusticata-macros", ] [[package]] name = "der-parser" -version = "8.1.0" +version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42d4bc9b0db0a0df9ae64634ac5bdefb7afcb534e182275ca0beadbe486701c1" +checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "asn1-rs 0.5.1", + "asn1-rs 0.5.2", "displaydoc", "nom", - "num-bigint 0.4.3", - "num-traits 0.2.15", + "num-bigint 0.4.5", + "num-traits 0.2.19", "rusticata-macros", ] +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", + "serde", +] + [[package]] name = "derive_more" -version = "0.99.17" +version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ "convert_case", "proc-macro2", "quote", - "rustc_version 0.4.0", - "syn 1.0.98", + "rustc_version", + "syn 2.0.66", ] [[package]] @@ -1105,11 +1149,11 @@ dependencies = [ [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.2", + "block-buffer 0.10.4", "crypto-common", "subtle", ] @@ -1137,9 +1181,9 @@ dependencies = [ [[package]] name = "discord-rich-presence" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47fc4beffb85ee1461588499073a4d9c20dcc7728c4b13d6b282ab6c508947e5" +checksum = "f632a41e3e97febf8edff46b1405f9875894c29e20a25c5abe566872226b3f84" dependencies = [ "serde", "serde_derive", @@ -1155,13 +1199,13 @@ checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" [[package]] name = "displaydoc" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] @@ -1172,48 +1216,68 @@ checksum = "0688c2a7f92e427f44895cd63841bff7b29f8d7a1648b9e7e07a4a365b2e1257" [[package]] name = "dns-lookup" -version = "2.0.2" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f332aa79f9e9de741ac013237294ef42ce2e9c6394dc7d766725812f1238812" +checksum = "e5766087c2235fec47fafa4cfecc81e494ee679d0fd4a59887ea0919bfb0e4fc" dependencies = [ "cfg-if", "libc", - "socket2 0.5.3", + "socket2 0.5.7", "windows-sys 0.48.0", ] [[package]] name = "dtoa" -version = "0.4.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" +checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" [[package]] name = "dtoa-short" -version = "0.3.3" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6" +checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" dependencies = [ "dtoa", ] +[[package]] +name = "dunce" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" + [[package]] name = "either" -version = "1.7.0" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" + +[[package]] +name = "embed-resource" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be" +checksum = "e62abb876c07e4754fae5c14cafa77937841f01740637e17d78dc04352f32a5e" +dependencies = [ + "cc", + "rustc_version", + "toml 0.5.11", + "vswhom", + "winreg 0.10.1", +] [[package]] name = "embed-resource" -version = "1.7.2" +version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc24ff8d764818e9ab17963b0593c535f077a513f565e75e4352d758bc4d8c0" +checksum = "c6985554d0688b687c5cb73898a34fbe3ad6c24c58c238a4d91d5e840670ee9d" dependencies = [ "cc", - "rustc_version 0.4.0", - "toml", + "memchr", + "rustc_version", + "toml 0.8.14", "vswhom", - "winreg", + "winreg 0.52.0", ] [[package]] @@ -1224,24 +1288,24 @@ checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" [[package]] name = "encoding_rs" -version = "0.8.31" +version = "0.8.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" +checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" dependencies = [ "cfg-if", ] [[package]] name = "enum-ordinalize" -version = "3.1.13" +version = "3.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4f76552f53cefc9a7f64987c3701b99d982f7690606fd67de1d09712fbf52f1" +checksum = "1bf1fa3f06bbff1ea5b1a9c7b14aa992a39657db60a2759457328d7e058f49ee" dependencies = [ - "num-bigint 0.4.3", - "num-traits 0.2.15", + "num-bigint 0.4.5", + "num-traits 0.2.19", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.66", ] [[package]] @@ -1253,6 +1317,22 @@ dependencies = [ "num-traits 0.1.43", ] +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + [[package]] name = "error-chain" version = "0.12.4" @@ -1264,27 +1344,42 @@ dependencies = [ [[package]] name = "event-listener" -version = "2.5.2" +version = "2.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "fastrand" -version = "1.7.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" dependencies = [ "instant", ] [[package]] -name = "field-offset" +name = "fastrand" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" + +[[package]] +name = "fdeflate" version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92" +checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645" +dependencies = [ + "simd-adler32", +] + +[[package]] +name = "field-offset" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" dependencies = [ "memoffset", - "rustc_version 0.3.3", + "rustc_version", ] [[package]] @@ -1295,35 +1390,35 @@ checksum = "31a7a908b8f32538a2143e59a6e4e2508988832d5d4d6f7c156b3cbc762643a5" [[package]] name = "filetime" -version = "0.2.21" +version = "0.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" +checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" dependencies = [ "cfg-if", "libc", - "redox_syscall", - "windows-sys 0.48.0", + "redox_syscall 0.4.1", + "windows-sys 0.52.0", ] [[package]] name = "filetime_creation" -version = "0.1.5" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d961767622336521cc48b3de810fce4edbf02d0c21079d78f3a6eeaf45b9450" +checksum = "4d273b12293b73b44ab8a525e161f74ebe2f38dd50c33ce7f538a4ccf9077383" dependencies = [ "cfg-if", "filetime", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "flate2" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" +checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" dependencies = [ "crc32fast", - "miniz_oxide 0.5.3", + "miniz_oxide", ] [[package]] @@ -1349,11 +1444,10 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.0.1" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ - "matches", "percent-encoding", ] @@ -1381,9 +1475,9 @@ dependencies = [ [[package]] name = "futures" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ "futures-channel", "futures-core", @@ -1396,9 +1490,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", "futures-sink", @@ -1406,15 +1500,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" [[package]] name = "futures-executor" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" dependencies = [ "futures-core", "futures-task", @@ -1423,17 +1517,17 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-lite" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", + "fastrand 1.9.0", "futures-core", "futures-io", "memchr", @@ -1444,32 +1538,32 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "futures-sink" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" [[package]] name = "futures-task" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-util" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ "futures-channel", "futures-core", @@ -1498,7 +1592,7 @@ version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6e05c1f572ab0e1f15be94217f0dc29088c248b14f792a5ff0af0d84bcda9e8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-rs", "gdk-pixbuf", "gdk-sys", @@ -1514,7 +1608,7 @@ version = "0.15.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad38dd9cc8b099cceecdf41375bb6d481b1b5a7cd5cd603e10a69a9383f8619a" dependencies = [ - "bitflags", + "bitflags 1.3.2", "gdk-pixbuf-sys", "gio", "glib", @@ -1531,7 +1625,7 @@ dependencies = [ "glib-sys", "gobject-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] @@ -1548,7 +1642,7 @@ dependencies = [ "libc", "pango-sys", "pkg-config", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] @@ -1560,28 +1654,28 @@ dependencies = [ "gdk-sys", "glib-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", "x11", ] [[package]] name = "generator" -version = "0.7.1" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc184cace1cea8335047a471cc1da80f18acf8a76f3bab2028d499e328948ec7" +checksum = "5cc16584ff22b460a382b7feec54b23d2908d858152e5739a120b949293bd74e" dependencies = [ "cc", "libc", "log", "rustversion", - "windows 0.32.0", + "windows 0.48.0", ] [[package]] name = "generic-array" -version = "0.14.5" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", @@ -1609,9 +1703,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.7" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "libc", @@ -1620,9 +1714,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.3" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" +checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" [[package]] name = "gio" @@ -1630,7 +1724,7 @@ version = "0.15.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68fdbc90312d462781a395f7a16d96a2b379bb6ef8cd6310a2df272771c4283b" dependencies = [ - "bitflags", + "bitflags 1.3.2", "futures-channel", "futures-core", "futures-io", @@ -1650,7 +1744,7 @@ dependencies = [ "glib-sys", "gobject-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", "winapi", ] @@ -1660,7 +1754,7 @@ version = "0.15.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edb0306fbad0ab5428b0ca674a23893db909a98582969c9b537be4ced78c505d" dependencies = [ - "bitflags", + "bitflags 1.3.2", "futures-channel", "futures-core", "futures-executor", @@ -1676,17 +1770,17 @@ dependencies = [ [[package]] name = "glib-macros" -version = "0.15.11" +version = "0.15.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25a68131a662b04931e71891fb14aaf65ee4b44d08e8abc10f49e77418c86c64" +checksum = "10c6ae9f6fa26f4fb2ac16b528d138d971ead56141de489f8111e259b9df3c4a" dependencies = [ "anyhow", - "heck 0.4.0", + "heck 0.4.1", "proc-macro-crate", "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] @@ -1696,26 +1790,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4" dependencies = [ "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] name = "glob" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "globset" -version = "0.4.9" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a1e17342619edbc21a964c2afbeb6c820c6a2560032872f397bb97ea127bd0a" +checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" dependencies = [ "aho-corasick", - "bstr 0.2.17", - "fnv", + "bstr", "log", - "regex", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", ] [[package]] @@ -1726,7 +1820,7 @@ checksum = "0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a" dependencies = [ "glib-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] @@ -1736,7 +1830,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92e3004a2d5d6d8b5057d2b57b3712c9529b62e82c77f25c1fecde1fd5c23bd0" dependencies = [ "atk", - "bitflags", + "bitflags 1.3.2", "cairo-rs", "field-offset", "futures-channel", @@ -1767,28 +1861,28 @@ dependencies = [ "gobject-sys", "libc", "pango-sys", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] name = "gtk3-macros" -version = "0.15.4" +version = "0.15.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24f518afe90c23fba585b2d7697856f9e6a7bbc62f65588035e66f6afb01a2e9" +checksum = "684c0456c086e8e7e9af73ec5b84e35938df394712054550e81558d21c44ab0d" dependencies = [ "anyhow", "proc-macro-crate", "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "h2" -version = "0.3.18" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17f8a914c2987b688368b5138aa05321db91f4090cf26118185672ad588bce21" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" dependencies = [ "bytes", "fnv", @@ -1796,7 +1890,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap", + "indexmap 2.2.6", "slab", "tokio", "tokio-util", @@ -1818,6 +1912,12 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + [[package]] name = "heck" version = "0.3.3" @@ -1829,18 +1929,27 @@ dependencies = [ [[package]] name = "heck" -version = "0.4.0" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.1.19" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hmac" @@ -1848,39 +1957,48 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", +] + +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", ] [[package]] name = "html5ever" -version = "0.25.2" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148" +checksum = "bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7" dependencies = [ "log", "mac", "markup5ever", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "http" -version = "0.2.9" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" dependencies = [ "bytes", "fnv", - "itoa 1.0.2", + "itoa 1.0.11", ] [[package]] name = "http-body" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" dependencies = [ "bytes", "http", @@ -1895,15 +2013,15 @@ checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573" [[package]] name = "httparse" -version = "1.7.1" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c" +checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" [[package]] name = "httpdate" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hudsucker" @@ -1913,7 +2031,7 @@ checksum = "d1f3686f2987b902c5fafb0ee2ff369fd7f869822da20deed181d1d846a858bc" dependencies = [ "async-compression", "async-trait", - "bstr 1.3.0", + "bstr", "bytes", "futures", "http", @@ -1924,7 +2042,7 @@ dependencies = [ "rand 0.8.5", "rcgen 0.10.0", "thiserror", - "time 0.3.11", + "time", "tokio", "tokio-rustls", "tokio-tungstenite 0.18.0", @@ -1934,9 +2052,9 @@ dependencies = [ [[package]] name = "hyper" -version = "0.14.20" +version = "0.14.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac" +checksum = "f361cde2f109281a220d4307746cdfd5ee3f410da58a70377762396775634b33" dependencies = [ "bytes", "futures-channel", @@ -1947,9 +2065,9 @@ dependencies = [ "http-body", "httparse", "httpdate", - "itoa 1.0.2", + "itoa 1.0.11", "pin-project-lite", - "socket2 0.4.4", + "socket2 0.5.7", "tokio", "tower-service", "tracing", @@ -1958,17 +2076,17 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.23.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac" +checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" dependencies = [ "http", "hyper", "log", - "rustls", + "rustls 0.20.9", "tokio", "tokio-rustls", - "webpki-roots", + "webpki-roots 0.22.6", ] [[package]] @@ -1997,14 +2115,37 @@ dependencies = [ "tungstenite 0.18.0", ] +[[package]] +name = "iana-time-zone" +version = "0.1.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core 0.52.0", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + [[package]] name = "ico" -version = "0.1.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a4b3331534254a9b64095ae60d3dc2a8225a7a70229cd5888be127cdc1f6804" +checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae" dependencies = [ "byteorder", - "png 0.11.0", + "png", ] [[package]] @@ -2015,55 +2156,62 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.2.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ - "matches", "unicode-bidi", "unicode-normalization", ] [[package]] name = "ignore" -version = "0.4.18" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d" +checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1" dependencies = [ - "crossbeam-utils", + "crossbeam-deque", "globset", - "lazy_static", "log", "memchr", - "regex", + "regex-automata 0.4.7", "same-file", - "thread_local", "walkdir", "winapi-util", ] [[package]] name = "image" -version = "0.24.2" +version = "0.24.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28edd9d7bc256be2502e325ac0628bde30b7001b9b52e0abe31a1a9dc2701212" +checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d" dependencies = [ "bytemuck", "byteorder", "color_quant", - "num-iter", - "num-rational 0.4.1", - "num-traits 0.2.15", + "num-traits 0.2.19", ] [[package]] name = "indexmap" -version = "1.9.1" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +dependencies = [ + "equivalent", + "hashbrown 0.14.5", + "serde", ] [[package]] @@ -2072,32 +2220,52 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20b2b533137b9cad970793453d4f921c2e91312a6d88b1085c07bc15fc51bb3b" dependencies = [ - "cfb", + "cfb 0.6.1", ] [[package]] -name = "inflate" -version = "0.3.4" +name = "infer" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f551f8c3a39f68f986517db0d1759de85881894fdc7db798bd2a9df9cb04b7fc" +dependencies = [ + "cfb 0.7.3", +] + +[[package]] +name = "inout" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f9f47468e9a76a6452271efadc88fe865a82be91fe75e6c0c57b87ccea59d4" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" dependencies = [ - "adler32", + "generic-array", ] [[package]] name = "instant" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", ] +[[package]] +name = "io-lifetimes" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" +dependencies = [ + "hermit-abi", + "libc", + "windows-sys 0.48.0", +] + [[package]] name = "ipnet" -version = "2.5.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "is_elevated" @@ -2116,9 +2284,9 @@ checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "itoa" -version = "1.0.2" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "javascriptcore-rs" @@ -2126,7 +2294,7 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf053e7843f2812ff03ef5afe34bb9c06ffee120385caad4f6b9967fcd37d41c" dependencies = [ - "bitflags", + "bitflags 1.3.2", "glib", "javascriptcore-rs-sys", ] @@ -2179,31 +2347,31 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] name = "jobserver" -version = "0.1.24" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" +checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.61" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" dependencies = [ "wasm-bindgen", ] [[package]] name = "json-patch" -version = "0.2.6" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f995a3c8f2bc3dd52a18a583e90f9ec109c047fa1603a853e46bcda14d2e279d" +checksum = "ec9ad60d674508f3ca8f380a928cfe7b096bc729c4e2dbfe3852bc45da3ab30b" dependencies = [ "serde", "serde_json", - "treediff", + "thiserror", ] [[package]] @@ -2213,13 +2381,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca9325aac17917b5650f25d477ce2909f2e9539688227fdee3ceb5093f666c9e" [[package]] -name = "kuchiki" -version = "0.8.1" +name = "kuchikiki" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ea8e9c6e031377cff82ee3001dc8026cdf431ed4e2e6b51f98ab8c73484a358" +checksum = "f29e4755b7b995046f510a7520c42b2fed58b77bd94d5a87a8eb43d2fd126da8" dependencies = [ "cssparser", "html5ever", + "indexmap 1.9.3", "matches", "selectors", ] @@ -2232,33 +2401,52 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.146" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libdbus-sys" -version = "0.2.2" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b" +checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72" dependencies = [ "pkg-config", ] [[package]] -name = "line-wrap" -version = "0.1.1" +name = "libredox" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "safemem", + "bitflags 2.5.0", + "libc", ] +[[package]] +name = "line-wrap" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd1bc4d24ad230d21fb898d1116b1801d7adfc449d42026475862ab48b11e70e" + +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + [[package]] name = "lock_api" -version = "0.4.7" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ "autocfg", "scopeguard", @@ -2266,12 +2454,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if", -] +checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" [[package]] name = "loom" @@ -2290,9 +2475,9 @@ dependencies = [ [[package]] name = "lzma-rust" -version = "0.1.1" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808dc37ccba979c213304880eadaab444bb522a5fe79acca9e90ec62377125c2" +checksum = "d5edcf5d1f4d78221ea7861fb69899afd15c42601751f92f09a06f7b051fb289" dependencies = [ "byteorder", ] @@ -2316,22 +2501,22 @@ checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" [[package]] name = "mac-notification-sys" -version = "0.5.5" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff231a88fe2e9985f9d159a2f02986fe46daa0f6af976a0d934be4870cc9d02" +checksum = "51fca4d74ff9dbaac16a01b924bc3693fa2bba0862c2c633abc73f9a8ea21f64" dependencies = [ "cc", "dirs-next", "objc-foundation", "objc_id", - "time 0.3.11", + "time", ] [[package]] -name = "mach" -version = "0.3.2" +name = "mach2" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" +checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" dependencies = [ "libc", ] @@ -2347,13 +2532,13 @@ dependencies = [ [[package]] name = "markup5ever" -version = "0.10.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd" +checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016" dependencies = [ "log", - "phf 0.8.0", - "phf_codegen", + "phf 0.10.1", + "phf_codegen 0.10.0", "string_cache", "string_cache_codegen", "tendril", @@ -2365,54 +2550,55 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "regex-automata", + "regex-automata 0.1.10", ] [[package]] name = "matches" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] name = "md-5" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" dependencies = [ - "digest 0.10.6", + "cfg-if", + "digest 0.10.7", "md5-asm", ] [[package]] name = "md5-asm" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73b9a6f25ec11ea27e22d7fc8beafda909da44ece95f63e94f1eeb23d19bb5c7" +checksum = "d19b8ee7fc7d812058d3b708c7f719efd0713d53854648e4223c6fcae709e2df" dependencies = [ "cc", ] [[package]] name = "memchr" -version = "2.5.0" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memoffset" -version = "0.6.5" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" dependencies = [ "autocfg", ] [[package]] name = "mime" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "minimal-lexical" @@ -2422,56 +2608,47 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f5c75688da582b8ffc1f1799e9db273f32133c49e048f614d22ec3256773ccc" -dependencies = [ - "adler", -] - -[[package]] -name = "miniz_oxide" -version = "0.6.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", + "simd-adler32", ] [[package]] name = "minreq" -version = "2.8.1" +version = "2.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3de406eeb24aba36ed3829532fa01649129677186b44a49debec0ec574ca7da7" +checksum = "6fdef521c74c2884a4f3570bcdb6d2a77b3c533feb6b27ac2ae72673cc221c64" dependencies = [ "base64 0.12.3", "log", "once_cell", - "rustls", + "rustls 0.21.12", "rustls-native-certs", + "rustls-webpki", "serde", "serde_json", - "webpki", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] name = "mio" -version = "0.8.4" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", - "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.36.1", + "windows-sys 0.48.0", ] [[package]] name = "moka" -version = "0.10.0" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b6446f16d504e3d575df79cabb11bfbe9f24b17e9562d964a815db7b28ae3ec" +checksum = "0be0a3dd6fe7c99233c2b1476e703147fb7516c68dce585b19b51efc08fe93d8" dependencies = [ "async-io", "async-lock", @@ -2481,25 +2658,24 @@ dependencies = [ "futures-util", "num_cpus", "once_cell", - "parking_lot 0.12.1", + "parking_lot", "quanta", - "rustc_version 0.4.0", + "rustc_version", "scheduled-thread-pool", "skeptic", "smallvec", "tagptr", "thiserror", "triomphe", - "uuid 1.1.2", + "uuid 1.8.0", ] [[package]] name = "native-tls" -version = "0.2.10" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" dependencies = [ - "lazy_static", "libc", "log", "openssl", @@ -2517,7 +2693,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" dependencies = [ - "bitflags", + "bitflags 1.3.2", "jni-sys", "ndk-sys", "num_enum", @@ -2541,19 +2717,19 @@ dependencies = [ [[package]] name = "new_debug_unreachable" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "nix" -version = "0.25.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e322c04a9e3440c327fca7b6c8a63e6890a32fa2ad689db972425f07e0d22abb" +checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" dependencies = [ - "autocfg", - "bitflags", + "bitflags 2.5.0", "cfg-if", + "cfg_aliases", "libc", ] @@ -2565,9 +2741,9 @@ checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" [[package]] name = "nom" -version = "7.1.1" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" dependencies = [ "memchr", "minimal-lexical", @@ -2575,13 +2751,24 @@ dependencies = [ [[package]] name = "notify-rust" -version = "4.5.8" +version = "4.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a995a3d2834cefa389218e7a35156e8ce544bc95f836900da01ee0b26a07e9d4" +checksum = "5312f837191c317644f313f7b2b39f9cb1496570c74f7c17152dd3961219551f" dependencies = [ "dbus", + "log", "mac-notification-sys", - "winrt-notification", + "tauri-winrt-notification", +] + +[[package]] +name = "nt-time" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91dd7a30dbf611fc3c790404c9ef8e1631971a9dd020a45905c7685727e9cf43" +dependencies = [ + "chrono", + "time", ] [[package]] @@ -2593,6 +2780,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + [[package]] name = "num" version = "0.1.42" @@ -2603,8 +2800,8 @@ dependencies = [ "num-complex", "num-integer", "num-iter", - "num-rational 0.1.42", - "num-traits 0.2.15", + "num-rational", + "num-traits 0.2.19", ] [[package]] @@ -2614,20 +2811,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1" dependencies = [ "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.19", "rand 0.4.6", "rustc-serialize", ] [[package]] name = "num-bigint" -version = "0.4.3" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" dependencies = [ - "autocfg", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.19", ] [[package]] @@ -2636,29 +2832,34 @@ version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656" dependencies = [ - "num-traits 0.2.15", + "num-traits 0.2.19", "rustc-serialize", ] +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + [[package]] name = "num-integer" -version = "0.1.45" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "autocfg", - "num-traits 0.2.15", + "num-traits 0.2.19", ] [[package]] name = "num-iter" -version = "0.1.43" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" dependencies = [ "autocfg", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.19", ] [[package]] @@ -2669,44 +2870,33 @@ checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e" dependencies = [ "num-bigint 0.1.44", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.19", "rustc-serialize", ] -[[package]] -name = "num-rational" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits 0.2.15", -] - [[package]] name = "num-traits" version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" dependencies = [ - "num-traits 0.2.15", + "num-traits 0.2.19", ] [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.13.1" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ "hermit-abi", "libc", @@ -2714,32 +2904,23 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.98", -] - -[[package]] -name = "num_threads" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" -dependencies = [ - "libc", + "syn 1.0.109", ] [[package]] @@ -2783,9 +2964,9 @@ dependencies = [ [[package]] name = "object" -version = "0.30.4" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" +checksum = "576dfe1fc8f9df304abb159d767a29d0476f7750fbf8aa7ad07816004a207434" dependencies = [ "memchr", ] @@ -2805,20 +2986,20 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "asn1-rs 0.5.1", + "asn1-rs 0.5.2", ] [[package]] name = "once_cell" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "opaque-debug" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "open" @@ -2832,11 +3013,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.55" +version = "0.10.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d" +checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" dependencies = [ - "bitflags", + "bitflags 2.5.0", "cfg-if", "foreign-types", "libc", @@ -2847,13 +3028,13 @@ dependencies = [ [[package]] name = "openssl-macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] @@ -2864,9 +3045,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.90" +version = "0.9.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6" +checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" dependencies = [ "cc", "libc", @@ -2886,23 +3067,23 @@ dependencies = [ [[package]] name = "os_info" -version = "3.4.0" +version = "3.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eca3ecae1481e12c3d9379ec541b238a16f0b75c9a409942daa8ec20dbfdb62" +checksum = "ae99c7fa6dd38c7cafe1ec085e804f8f555a2f8659b0dbe03f1f9963a9b51092" dependencies = [ "log", "serde", - "winapi", + "windows-sys 0.52.0", ] [[package]] name = "os_pipe" -version = "1.0.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c92f2b54f081d635c77e7120862d48db8e91f7f21cef23ab1b4fe9971c59f55" +checksum = "29d73ba8daf8fac13b0501d1abeddcfe21ba7401ada61a819144b6c2a4f32209" dependencies = [ "libc", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -2914,13 +3095,19 @@ dependencies = [ "regex", ] +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + [[package]] name = "pango" version = "0.15.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f" dependencies = [ - "bitflags", + "bitflags 1.3.2", "glib", "libc", "once_cell", @@ -2936,79 +3123,54 @@ dependencies = [ "glib-sys", "gobject-sys", "libc", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] name = "parking" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" - -[[package]] -name = "parking_lot" -version = "0.11.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.5", -] +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" [[package]] name = "parking_lot" -version = "0.12.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", - "parking_lot_core 0.9.3", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" -dependencies = [ - "cfg-if", - "instant", - "libc", - "redox_syscall", - "smallvec", - "winapi", + "parking_lot_core", ] [[package]] name = "parking_lot_core" -version = "0.9.3" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.2", "smallvec", - "windows-sys 0.36.1", + "windows-targets 0.52.5", ] [[package]] name = "password-hash" -version = "0.3.2" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d791538a6dcc1e7cb7fe6f6b58aca40e7f79403c45b2bc274008b5e647af1d8" +checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" dependencies = [ "base64ct", - "rand_core 0.6.3", + "rand_core 0.6.4", "subtle", ] [[package]] name = "paste" -version = "1.0.7" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "pathdiff" @@ -3018,39 +3180,30 @@ checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" [[package]] name = "pbkdf2" -version = "0.10.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271779f35b581956db91a3e55737327a03aa051e90b1c47aeb189508533adfd7" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", "hmac", "password-hash", - "sha2 0.10.2", + "sha2 0.10.8", ] [[package]] name = "pem" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c64931a1a212348ec4f3b4362585eca7159d0d09cbdf4a7f74f02173596fd4" +checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" dependencies = [ - "base64 0.13.0", + "base64 0.13.1", ] [[package]] name = "percent-encoding" -version = "2.1.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" - -[[package]] -name = "pest" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53" -dependencies = [ - "ucd-trie", -] +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "phf" @@ -3069,14 +3222,22 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" dependencies = [ - "phf_macros 0.10.0", "phf_shared 0.10.0", - "proc-macro-hack", ] [[package]] -name = "phf_codegen" -version = "0.8.0" +name = "phf" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +dependencies = [ + "phf_macros 0.11.2", + "phf_shared 0.11.2", +] + +[[package]] +name = "phf_codegen" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" dependencies = [ @@ -3084,6 +3245,16 @@ dependencies = [ "phf_shared 0.8.0", ] +[[package]] +name = "phf_codegen" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd" +dependencies = [ + "phf_generator 0.10.0", + "phf_shared 0.10.0", +] + [[package]] name = "phf_generator" version = "0.8.0" @@ -3104,6 +3275,16 @@ dependencies = [ "rand 0.8.5", ] +[[package]] +name = "phf_generator" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +dependencies = [ + "phf_shared 0.11.2", + "rand 0.8.5", +] + [[package]] name = "phf_macros" version = "0.8.0" @@ -3115,21 +3296,20 @@ dependencies = [ "proc-macro-hack", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] name = "phf_macros" -version = "0.10.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" +checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" dependencies = [ - "phf_generator 0.10.0", - "phf_shared 0.10.0", - "proc-macro-hack", + "phf_generator 0.11.2", + "phf_shared 0.11.2", "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] @@ -3150,31 +3330,40 @@ dependencies = [ "siphasher", ] +[[package]] +name = "phf_shared" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +dependencies = [ + "siphasher", +] + [[package]] name = "pin-project" -version = "1.0.11" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78203e83c48cffbe01e4a2d35d566ca4de445d79a85372fc64e378bfc812a260" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.0.11" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "710faf75e1b33345361201d36d04e98ac1ed8909151a017ed384700836104c74" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" [[package]] name = "pin-utils" @@ -3184,66 +3373,64 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.25" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "plist" -version = "1.3.1" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd39bc6cdc9355ad1dc5eeedefee696bb35c34caf21768741e81826c0bbd7225" +checksum = "d9d34169e64b3c7a80c8621a48adaf44e0cf62c78a9b25dd9dd35f1881a17cf9" dependencies = [ - "base64 0.13.0", - "indexmap", + "base64 0.21.7", + "indexmap 2.2.6", "line-wrap", + "quick-xml", "serde", - "time 0.3.11", - "xml-rs", -] - -[[package]] -name = "png" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0b0cabbbd20c2d7f06dbf015e06aad59b6ca3d9ed14848783e98af9aaf19925" -dependencies = [ - "bitflags", - "deflate 0.7.20", - "inflate", - "num-iter", + "time", ] [[package]] name = "png" -version = "0.17.5" +version = "0.17.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc38c0ad57efb786dd57b9864e5b18bae478c00c824dc55a38bbc9da95dde3ba" +checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1" dependencies = [ - "bitflags", + "bitflags 1.3.2", "crc32fast", - "deflate 1.0.0", - "miniz_oxide 0.5.3", + "fdeflate", + "flate2", + "miniz_oxide", ] [[package]] name = "polling" -version = "2.2.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" dependencies = [ + "autocfg", + "bitflags 1.3.2", "cfg-if", + "concurrent-queue", "libc", "log", - "wepoll-ffi", - "winapi", + "pin-project-lite", + "windows-sys 0.48.0", ] +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + [[package]] name = "ppv-lite86" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "precomputed-hash" @@ -3253,12 +3440,12 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] name = "proc-macro-crate" -version = "1.1.3" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ - "thiserror", - "toml", + "once_cell", + "toml_edit 0.19.15", ] [[package]] @@ -3270,7 +3457,7 @@ dependencies = [ "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", "version_check", ] @@ -3287,51 +3474,60 @@ dependencies = [ [[package]] name = "proc-macro-hack" -version = "0.5.19" +version = "0.5.20+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.66" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" dependencies = [ "unicode-ident", ] [[package]] name = "pulldown-cmark" -version = "0.9.1" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34f197a544b0c9ab3ae46c359a7ec9cbbb5c7bf97054266fecb7ead794a181d6" +checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" dependencies = [ - "bitflags", + "bitflags 2.5.0", "memchr", "unicase", ] [[package]] name = "quanta" -version = "0.10.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bafd74c340a0a7e79415981ede3460df16b530fd071541901a57416eea950b17" +checksum = "a17e662a7a8291a865152364c20c7abc5e60486ab2001e8ec10b24862de0b9ab" dependencies = [ "crossbeam-utils", "libc", - "mach", + "mach2", "once_cell", "raw-cpuid", - "wasi 0.10.2+wasi-snapshot-preview1", + "wasi 0.11.0+wasi-snapshot-preview1", "web-sys", "winapi", ] +[[package]] +name = "quick-xml" +version = "0.31.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33" +dependencies = [ + "memchr", +] + [[package]] name = "quote" -version = "1.0.33" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] @@ -3371,7 +3567,7 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", "rand_chacha 0.3.1", - "rand_core 0.6.3", + "rand_core 0.6.4", ] [[package]] @@ -3391,7 +3587,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.3", + "rand_core 0.6.4", ] [[package]] @@ -3420,11 +3616,11 @@ dependencies = [ [[package]] name = "rand_core" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.7", + "getrandom 0.2.15", ] [[package]] @@ -3447,11 +3643,11 @@ dependencies = [ [[package]] name = "raw-cpuid" -version = "10.3.0" +version = "10.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "738bc47119e3eeccc7e94c4a506901aea5e7b4944ecd0829cbebf4af04ceda12" +checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332" dependencies = [ - "bitflags", + "bitflags 1.3.2", ] [[package]] @@ -3465,26 +3661,22 @@ dependencies = [ [[package]] name = "rayon" -version = "1.5.3" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ - "autocfg", - "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.3" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ - "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "num_cpus", ] [[package]] @@ -3494,8 +3686,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" dependencies = [ "pem", - "ring", - "time 0.3.11", + "ring 0.16.20", + "time", "x509-parser 0.13.2", "yasna", ] @@ -3507,8 +3699,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" dependencies = [ "pem", - "ring", - "time 0.3.11", + "ring 0.16.20", + "time", "x509-parser 0.14.0", "yasna", ] @@ -3524,33 +3716,43 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.13" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" +checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd" dependencies = [ - "bitflags", + "bitflags 2.5.0", ] [[package]] name = "redox_users" -version = "0.4.3" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ - "getrandom 0.2.7", - "redox_syscall", + "getrandom 0.2.15", + "libredox", "thiserror", ] [[package]] name = "regex" -version = "1.6.0" +version = "1.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", ] [[package]] @@ -3559,44 +3761,52 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "regex-syntax", + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.4", ] [[package]] name = "regex-syntax" -version = "0.6.27" +version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "registry" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83e4b158bf49b0d000013487636c92268de4cfd26cdbb629f020a612749f12c4" +checksum = "cf3b6d580d46b9d6d6c291f90c5d762e8b93a268a96e429556419fcd7e349f94" dependencies = [ - "bitflags", + "bitflags 1.3.2", "log", "thiserror", "utfx", "winapi", ] -[[package]] -name = "remove_dir_all" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" -dependencies = [ - "winapi", -] - [[package]] name = "reqwest" -version = "0.11.11" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75aa69a3f06bbcc66ede33af2af253c6f7a86b1ca0033f60c580a27074fbf92" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ - "base64 0.13.0", + "base64 0.21.7", "bytes", "encoding_rs", "futures-core", @@ -3608,15 +3818,18 @@ dependencies = [ "hyper-tls", "ipnet", "js-sys", - "lazy_static", "log", "mime", "native-tls", + "once_cell", "percent-encoding", "pin-project-lite", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", + "sync_wrapper", + "system-configuration", "tokio", "tokio-native-tls", "tokio-util", @@ -3624,8 +3837,9 @@ dependencies = [ "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams", "web-sys", - "winreg", + "winreg 0.50.0", ] [[package]] @@ -3636,7 +3850,7 @@ checksum = "f121348fd3b9035ed11be1f028e8944263c30641f8c5deacf57a4320782fb402" dependencies = [ "block", "dispatch", - "embed-resource", + "embed-resource 1.8.0", "glib-sys", "gobject-sys", "gtk-sys", @@ -3662,12 +3876,27 @@ dependencies = [ "cc", "libc", "once_cell", - "spin", - "untrusted", + "spin 0.5.2", + "untrusted 0.7.1", "web-sys", "winapi", ] +[[package]] +name = "ring" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.15", + "libc", + "spin 0.9.8", + "untrusted 0.9.0", + "windows-sys 0.52.0", +] + [[package]] name = "rust-ini" version = "0.18.0" @@ -3680,24 +3909,15 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-serialize" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" - -[[package]] -name = "rustc_version" -version = "0.3.3" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" -dependencies = [ - "semver 0.11.0", -] +checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401" [[package]] name = "rustc_version" @@ -3705,7 +3925,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.12", + "semver", ] [[package]] @@ -3717,18 +3937,57 @@ dependencies = [ "nom", ] +[[package]] +name = "rustix" +version = "0.37.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustix" +version = "0.38.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +dependencies = [ + "bitflags 2.5.0", + "errno", + "libc", + "linux-raw-sys 0.4.14", + "windows-sys 0.52.0", +] + [[package]] name = "rustls" -version = "0.20.6" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aab8ee6c7097ed6057f43c187a62418d0c05a4bd5f18b3571db50ee0f9ce033" +checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" dependencies = [ "log", - "ring", + "ring 0.16.20", "sct", "webpki", ] +[[package]] +name = "rustls" +version = "0.21.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" +dependencies = [ + "log", + "ring 0.17.8", + "rustls-webpki", + "sct", +] + [[package]] name = "rustls-native-certs" version = "0.6.3" @@ -3743,30 +4002,34 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7522c9de787ff061458fe9a829dc790a3f5b22dc571694fc5883f448b94d9a9" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" dependencies = [ - "base64 0.13.0", + "base64 0.21.7", ] [[package]] -name = "rustversion" -version = "1.0.8" +name = "rustls-webpki" +version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24c8ad4f0c00e1eb5bc7614d236a7f1300e3dbd76b68cac8e06fb00b015ad8d8" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring 0.17.8", + "untrusted 0.9.0", +] [[package]] -name = "ryu" -version = "1.0.10" +name = "rustversion" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] -name = "safemem" -version = "0.3.3" +name = "ryu" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "same-file" @@ -3779,52 +4042,51 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.20" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" +checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" dependencies = [ - "lazy_static", - "windows-sys 0.36.1", + "windows-sys 0.52.0", ] [[package]] name = "scheduled-thread-pool" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "977a7519bff143a44f842fd07e80ad1329295bd71686457f18e496736f4bf9bf" +checksum = "3cbc66816425a074528352f5789333ecff06ca41b36b0b0efdfbb29edc391a19" dependencies = [ - "parking_lot 0.12.1", + "parking_lot", ] [[package]] name = "scoped-tls" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sct" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "ring", - "untrusted", + "ring 0.17.8", + "untrusted 0.9.0", ] [[package]] name = "security-framework" -version = "2.6.1" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc" +checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" dependencies = [ - "bitflags", + "bitflags 2.5.0", "core-foundation", "core-foundation-sys", "libc", @@ -3833,9 +4095,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.6.1" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" +checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" dependencies = [ "core-foundation-sys", "libc", @@ -3847,14 +4109,14 @@ version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cssparser", "derive_more", "fxhash", "log", "matches", "phf 0.8.0", - "phf_codegen", + "phf_codegen 0.8.0", "precomputed-hash", "servo_arc", "smallvec", @@ -3863,71 +4125,62 @@ dependencies = [ [[package]] name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser", -] - -[[package]] -name = "semver" -version = "1.0.12" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2333e6df6d6598f2b1974829f853c2b4c5f4a6e503c10af918081aa6f8564e1" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" dependencies = [ "serde", ] -[[package]] -name = "semver-parser" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" -dependencies = [ - "pest", -] - [[package]] name = "serde" -version = "1.0.139" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0171ebb889e45aa68b44aee0859b3eede84c6f5f5c228e6f140c0b2a0a46cad6" +checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.139" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1d3230c1de7932af58ad8ffbe1d784bd55efd5a9d84ac24f69c72d83543dfb" +checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "serde_json" -version = "1.0.82" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ - "itoa 1.0.2", + "itoa 1.0.11", "ryu", "serde", ] [[package]] name = "serde_repr" -version = "0.1.8" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", +] + +[[package]] +name = "serde_spanned" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" +dependencies = [ + "serde", ] [[package]] @@ -3937,31 +4190,39 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" dependencies = [ "form_urlencoded", - "itoa 1.0.2", + "itoa 1.0.11", "ryu", "serde", ] [[package]] name = "serde_with" -version = "1.14.0" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20" dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.2.6", "serde", + "serde_derive", + "serde_json", "serde_with_macros", + "time", ] [[package]] name = "serde_with_macros" -version = "1.5.2" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2" dependencies = [ - "darling 0.13.4", + "darling 0.20.9", "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] @@ -3983,7 +4244,7 @@ checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] @@ -3998,9 +4259,9 @@ dependencies = [ [[package]] name = "sevenz-rust" -version = "0.2.9" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a12eea80650ae08d8fe6f657d6249d757298bc7a241e00d190ac57cef0e74e02" +checksum = "0bf83efe73d438a1aad929279a2fc0ff3fb32f841421c09a64f3d04c4d162a23" dependencies = [ "bit-set", "byteorder", @@ -4008,6 +4269,7 @@ dependencies = [ "filetime_creation", "js-sys", "lzma-rust", + "nt-time", "sha2 0.9.9", "wasm-bindgen", ] @@ -4020,18 +4282,18 @@ checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] name = "sha1" -version = "0.10.1" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77f4e7f65455545c2153c1253d25056825e77ee2533f0e41deb65a93a34852f" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -4049,20 +4311,20 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.2" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] name = "sharded-slab" -version = "0.1.4" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ "lazy_static", ] @@ -4079,18 +4341,24 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" dependencies = [ "libc", ] +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + [[package]] name = "siphasher" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" [[package]] name = "skeptic" @@ -4109,21 +4377,24 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.6" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] [[package]] name = "smallvec" -version = "1.9.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.4.4" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" dependencies = [ "libc", "winapi", @@ -4131,12 +4402,12 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.3" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" dependencies = [ "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -4145,7 +4416,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2b4d76501d8ba387cf0fefbe055c3e0a59891d09f0f995ae4e4b16f6b60f3c0" dependencies = [ - "bitflags", + "bitflags 1.3.2", "gio", "glib", "libc", @@ -4159,7 +4430,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "009ef427103fcb17f802871647a7fa6c60cbb654b4c4e4c0ac60a31c5f6dc9cf" dependencies = [ - "bitflags", + "bitflags 1.3.2", "gio-sys", "glib-sys", "gobject-sys", @@ -4173,6 +4444,12 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -4190,13 +4467,13 @@ dependencies = [ [[package]] name = "string_cache" -version = "0.8.4" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213494b7a2b503146286049378ce02b482200519accc31872ee8be91fa820a08" +checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" dependencies = [ "new_debug_unreachable", "once_cell", - "parking_lot 0.12.1", + "parking_lot", "phf_shared 0.10.0", "precomputed-hash", "serde", @@ -4221,31 +4498,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] -name = "strum" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7ac893c7d471c8a21f31cfe213ec4f6d9afeed25537c772e08ef3f005f8729e" -dependencies = [ - "strum_macros", -] - -[[package]] -name = "strum_macros" -version = "0.22.0" +name = "strsim" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339f799d8b549e3744c7ac7feb216383e4005d94bdb22561b3ab8f3b808ae9fb" -dependencies = [ - "heck 0.3.3", - "proc-macro2", - "quote", - "syn 1.0.98", -] +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "subtle" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "sudo" @@ -4259,9 +4521,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.98" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ "proc-macro2", "quote", @@ -4270,15 +4532,21 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.29" +version = "2.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + [[package]] name = "synstructure" version = "0.12.6" @@ -4287,7 +4555,7 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", "unicode-xid", ] @@ -4308,9 +4576,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.29.2" +version = "0.29.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9557d0845b86eea8182f7b10dff120214fb6cd9fd937b6f4917714e546a38695" +checksum = "cd727fc423c2060f6c92d9534cef765c65a6ed3f428a03d7def74a8c4348e666" dependencies = [ "cfg-if", "core-foundation-sys", @@ -4322,29 +4590,50 @@ dependencies = [ ] [[package]] -name = "system-deps" -version = "5.0.0" +name = "system-configuration" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18db855554db7bd0e73e06cf7ba3df39f97812cb11d3f75e71c39bf45171797e" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ - "cfg-expr 0.9.1", - "heck 0.3.3", - "pkg-config", - "toml", - "version-compare 0.0.11", + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", ] [[package]] -name = "system-deps" -version = "6.0.2" +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "system-deps" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18db855554db7bd0e73e06cf7ba3df39f97812cb11d3f75e71c39bf45171797e" +dependencies = [ + "cfg-expr 0.9.1", + "heck 0.3.3", + "pkg-config", + "toml 0.5.11", + "version-compare 0.0.11", +] + +[[package]] +name = "system-deps" +version = "6.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709" +checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" dependencies = [ - "cfg-expr 0.10.3", - "heck 0.4.0", + "cfg-expr 0.15.8", + "heck 0.5.0", "pkg-config", - "toml", - "version-compare 0.1.0", + "toml 0.8.14", + "version-compare 0.2.0", ] [[package]] @@ -4355,11 +4644,11 @@ checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" [[package]] name = "tao" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a71c32c2fa7bba46b01becf9cf470f6a781573af7e376c5e317a313ecce27545" +checksum = "f6fd7725dc1e593e9ecabd9fe49c112a204c8c8694db4182e78b2a5af490b1ae" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-rs", "cc", "cocoa", @@ -4386,30 +4675,36 @@ dependencies = [ "ndk-sys", "objc", "once_cell", - "parking_lot 0.11.2", + "parking_lot", "paste", - "png 0.17.5", + "png", "raw-window-handle", "scopeguard", "serde", "unicode-segmentation", - "uuid 0.8.2", + "uuid 1.8.0", "windows 0.37.0", - "windows-implement", + "windows-implement 0.37.0", "x11-dl", ] [[package]] name = "tar" -version = "0.4.38" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6" +checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" dependencies = [ "filetime", "libc", "xattr", ] +[[package]] +name = "target-lexicon" +version = "0.12.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" + [[package]] name = "tauri" version = "1.0.9" @@ -4427,7 +4722,7 @@ dependencies = [ "glib", "glob", "gtk", - "heck 0.4.0", + "heck 0.4.1", "http", "ignore", "notify-rust", @@ -4441,7 +4736,7 @@ dependencies = [ "raw-window-handle", "regex", "rfd", - "semver 1.0.12", + "semver", "serde", "serde_json", "serde_repr", @@ -4457,7 +4752,7 @@ dependencies = [ "thiserror", "tokio", "url", - "uuid 1.1.2", + "uuid 1.8.0", "webkit2gtk", "webview2-com", "windows 0.37.0", @@ -4465,56 +4760,59 @@ dependencies = [ [[package]] name = "tauri-build" -version = "1.0.4" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acafb1c515c5d14234a294461bd43c723639a84891a45f6a250fd3441ad2e8ed" +checksum = "ab30cba12974d0f9b09794f61e72cad6da2142d3ceb81e519321bab86ce53312" dependencies = [ "anyhow", "cargo_toml", - "heck 0.4.0", + "dirs-next", + "heck 0.5.0", "json-patch", - "semver 1.0.12", + "semver", + "serde", "serde_json", "tauri-utils", - "winres", + "tauri-winres", + "walkdir", ] [[package]] name = "tauri-codegen" -version = "1.0.4" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d62a3c8790d6cba686cea6e3f7f569d12c662c3274c2d165a4fd33e3871b72" +checksum = "c3a1d90db526a8cdfd54444ad3f34d8d4d58fa5c536463915942393743bd06f8" dependencies = [ - "base64 0.13.0", + "base64 0.21.7", "brotli", "ico", "json-patch", "plist", - "png 0.17.5", + "png", "proc-macro2", "quote", "regex", - "semver 1.0.12", + "semver", "serde", "serde_json", - "sha2 0.10.2", + "sha2 0.10.8", "tauri-utils", "thiserror", - "time 0.3.11", - "uuid 1.1.2", + "time", + "uuid 1.8.0", "walkdir", ] [[package]] name = "tauri-macros" -version = "1.0.4" +version = "1.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7296fa17996629f43081e1c66d554703900187ed900c5bf46f97f0bcfb069278" +checksum = "6a582d75414250122e4a597b9dd7d3c910a2c77906648fc2ac9353845ff0feec" dependencies = [ - "heck 0.4.0", + "heck 0.5.0", "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", "tauri-codegen", "tauri-utils", ] @@ -4528,14 +4826,14 @@ dependencies = [ "gtk", "http", "http-range", - "infer", + "infer 0.7.0", "raw-window-handle", "serde", "serde_json", "tauri-utils", "thiserror", "url", - "uuid 1.1.2", + "uuid 1.8.0", "webview2-com", "windows 0.37.0", ] @@ -4554,7 +4852,7 @@ dependencies = [ "tauri-runtime", "tauri-utils", "url", - "uuid 1.1.2", + "uuid 1.8.0", "webkit2gtk", "webview2-com", "windows 0.37.0", @@ -4563,43 +4861,65 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "1.0.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12ff4b68d9faeb57c9c727bf58c9c9768d2b67d8e84e62ce6146e7859a2e9c6b" +checksum = "450b17a7102e5d46d4bdabae0d1590fd27953e704e691fc081f06c06d2253b35" dependencies = [ "brotli", "ctor", + "dunce", "glob", - "heck 0.4.0", + "heck 0.5.0", "html5ever", + "infer 0.13.0", "json-patch", - "kuchiki", + "kuchikiki", + "log", "memchr", - "phf 0.10.1", + "phf 0.11.2", "proc-macro2", "quote", - "semver 1.0.12", + "semver", "serde", "serde_json", "serde_with", "thiserror", "url", "walkdir", - "windows 0.37.0", + "windows-version", +] + +[[package]] +name = "tauri-winres" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5993dc129e544393574288923d1ec447c857f3f644187f4fbf7d9a875fbfc4fb" +dependencies = [ + "embed-resource 2.4.2", + "toml 0.7.8", +] + +[[package]] +name = "tauri-winrt-notification" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f89f5fb70d6f62381f5d9b2ba9008196150b40b75f3068eb24faeddf1c686871" +dependencies = [ + "quick-xml", + "windows 0.56.0", + "windows-version", ] [[package]] name = "tempfile" -version = "3.3.0" +version = "3.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" +checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", - "fastrand", - "libc", - "redox_syscall", - "remove_dir_all", - "winapi", + "fastrand 2.1.0", + "rustix 0.38.34", + "windows-sys 0.52.0", ] [[package]] @@ -4632,60 +4952,64 @@ checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" [[package]] name = "thiserror" -version = "1.0.47" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.47" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.66", ] [[package]] name = "thread_local" -version = "1.1.4" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ + "cfg-if", "once_cell", ] [[package]] name = "time" -version = "0.1.43" +version = "0.3.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" dependencies = [ - "libc", - "winapi", + "deranged", + "itoa 1.0.11", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", ] [[package]] -name = "time" -version = "0.3.11" +name = "time-core" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c91f41dcb2f096c05f0873d667dceec1087ce5bcf984ec8ffb19acddbb3217" -dependencies = [ - "itoa 1.0.2", - "libc", - "num_threads", - "time-macros", -] +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.4" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792" +checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +dependencies = [ + "num-conv", + "time-core", +] [[package]] name = "tinyvec" @@ -4698,46 +5022,45 @@ dependencies = [ [[package]] name = "tinyvec_macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.26.0" +version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" dependencies = [ - "autocfg", + "backtrace", "bytes", "libc", - "memchr", "mio", "num_cpus", - "parking_lot 0.12.1", + "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.4.4", + "socket2 0.5.7", "tokio-macros", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] name = "tokio-macros" -version = "1.8.2" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "tokio-native-tls" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" dependencies = [ "native-tls", "tokio", @@ -4749,7 +5072,7 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls", + "rustls 0.20.9", "tokio", "webpki", ] @@ -4774,35 +5097,93 @@ checksum = "54319c93411147bced34cb5609a80e0a8e44c5999c93903a81cd866630ec0bfd" dependencies = [ "futures-util", "log", - "rustls", + "rustls 0.20.9", "tokio", "tokio-rustls", "tungstenite 0.18.0", "webpki", - "webpki-roots", + "webpki-roots 0.22.6", ] [[package]] name = "tokio-util" -version = "0.7.3" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45" +checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" dependencies = [ "bytes", "futures-core", "futures-sink", "pin-project-lite", "tokio", - "tracing", ] [[package]] name = "toml" -version = "0.5.9" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + +[[package]] +name = "toml" +version = "0.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" dependencies = [ "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.22.14", +] + +[[package]] +name = "toml_datetime" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.2.6", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.22.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38" +dependencies = [ + "indexmap 2.2.6", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.6.13", ] [[package]] @@ -4813,11 +5194,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.35" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a400e31aa60b9d44a52a8ee0343b5b18566b03a8321e0d321f695cf56e940160" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if", "log", "pin-project-lite", "tracing-attributes", @@ -4826,20 +5206,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.22" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", ] [[package]] name = "tracing-core" -version = "0.1.28" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b7358be39f2f274f322d2aaed611acc57f382e8eb1e5b48cb9ae30933495ce7" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -4847,23 +5227,23 @@ dependencies = [ [[package]] name = "tracing-log" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" dependencies = [ - "lazy_static", "log", + "once_cell", "tracing-core", ] [[package]] name = "tracing-subscriber" -version = "0.3.14" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a713421342a5a666b7577783721d3117f1b69a393df803ee17bb73b1e122a59" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" dependencies = [ - "ansi_term", "matchers", + "nu-ansi-term", "once_cell", "regex", "sharded-slab", @@ -4874,26 +5254,17 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "treediff" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "761e8d5ad7ce14bb82b7e61ccc0ca961005a275a060b9644a2431aa11553c2ff" -dependencies = [ - "serde_json", -] - [[package]] name = "triomphe" -version = "0.1.7" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe1b3800b35f9b936c28dc59dbda91b195371269396784d931fe2a5a2be3d2f" +checksum = "e6631e42e10b40c0690bf92f404ebcfe6e1fdb480391d15f17cc8e96eeed5369" [[package]] name = "try-lock" -version = "0.2.3" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "tungstenite" @@ -4901,7 +5272,7 @@ version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" dependencies = [ - "base64 0.13.0", + "base64 0.13.1", "byteorder", "bytes", "http", @@ -4920,14 +5291,14 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30ee6ab729cd4cf0fd55218530c4522ed30b7b6081752839b68fcec8d0960788" dependencies = [ - "base64 0.13.0", + "base64 0.13.1", "byteorder", "bytes", "http", "httparse", "log", "rand 0.8.5", - "rustls", + "rustls 0.20.9", "sha1", "thiserror", "url", @@ -4937,63 +5308,57 @@ dependencies = [ [[package]] name = "typenum" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" - -[[package]] -name = "ucd-trie" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89570599c4fe5585de2b388aab47e99f7fa4e9238a1399f707a02e356058141c" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicase" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" +checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" dependencies = [ "version_check", ] [[package]] name = "unicode-bidi" -version = "0.3.8" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" [[package]] name = "unicode-ident" -version = "1.0.2" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c61ba63f9235225a22310255a29b806b907c9b8c964bcbd0a2c70f3f2deea7" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854cbdc4f7bc6ae19c820d44abdc3277ac3e1b2b93db20a636825d9322fb60e6" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" dependencies = [ "tinyvec", ] [[package]] name = "unicode-segmentation" -version = "1.9.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" [[package]] name = "unicode-width" -version = "0.1.10" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" +checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" [[package]] name = "unicode-xid" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "unrar" @@ -5001,7 +5366,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "433cea4f0b7bec88d47becb380887b8786a3cfb1c82e1ef9d32a682ba6801814" dependencies = [ - "bitflags", + "bitflags 1.3.2", "enum_primitive", "lazy_static", "num", @@ -5026,15 +5391,20 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + [[package]] name = "url" -version = "2.2.2" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", - "matches", "percent-encoding", "serde", ] @@ -5057,16 +5427,16 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.7", + "getrandom 0.2.15", ] [[package]] name = "uuid" -version = "1.1.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd6469f4314d5f1ffec476e05f17cc9a78bc7a27a6a857842170bdf8d6f98d2f" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" dependencies = [ - "getrandom 0.2.7", + "getrandom 0.2.15", ] [[package]] @@ -5089,9 +5459,9 @@ checksum = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b" [[package]] name = "version-compare" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe88247b92c1df6b6de80ddc290f3976dbdf2f5f5d3fd049a9fb598c6dd5ca73" +checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b" [[package]] name = "version_check" @@ -5111,9 +5481,9 @@ dependencies = [ [[package]] name = "vswhom-sys" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22025f6d8eb903ebf920ea6933b70b1e495be37e2cb4099e62c80454aaf57c39" +checksum = "d3b17ae1f6c8a2b28506cd96d412eebf83b4a0ff2cbefeeb952f2f9dfa44ba18" dependencies = [ "cc", "libc", @@ -5121,28 +5491,26 @@ dependencies = [ [[package]] name = "waker-fn" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" [[package]] name = "walkdir" -version = "2.3.2" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" dependencies = [ "same-file", - "winapi", "winapi-util", ] [[package]] name = "want" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" dependencies = [ - "log", "try-lock", ] @@ -5152,12 +5520,6 @@ version = "0.9.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" -[[package]] -name = "wasi" -version = "0.10.2+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -5166,9 +5528,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -5176,24 +5538,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.31" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de9a9cec1733468a8c657e57fa2413d2ae2c0129b95e87c5b72b8ace4d13f31f" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" dependencies = [ "cfg-if", "js-sys", @@ -5203,9 +5565,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5213,28 +5575,41 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 2.0.66", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.84" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" + +[[package]] +name = "wasm-streams" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" +checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] [[package]] name = "web-sys" -version = "0.3.58" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fed94beee57daf8dd7d51f2b15dc2bcde92d7a72304cdf662a4371008b71b90" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" dependencies = [ "js-sys", "wasm-bindgen", @@ -5242,11 +5617,11 @@ dependencies = [ [[package]] name = "webkit2gtk" -version = "0.18.0" +version = "0.18.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29952969fb5e10fe834a52eb29ad0814ccdfd8387159b0933edf1344a1c9cdcc" +checksum = "b8f859735e4a452aeb28c6c56a852967a8a76c8eb1cc32dbf931ad28a13d6370" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-rs", "gdk", "gdk-sys", @@ -5271,7 +5646,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d76ca6ecc47aeba01ec61e480139dda143796abcae6f83bcddf50d6b5b1dcf3" dependencies = [ "atk-sys", - "bitflags", + "bitflags 1.3.2", "cairo-sys-rs", "gdk-pixbuf-sys", "gdk-sys", @@ -5284,28 +5659,34 @@ dependencies = [ "pango-sys", "pkg-config", "soup2-sys", - "system-deps 6.0.2", + "system-deps 6.2.2", ] [[package]] name = "webpki" -version = "0.22.2" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07ecc0cd7cac091bf682ec5efa18b1cff79d617b84181f38b3951dbe135f607f" +checksum = "ed63aea5ce73d0ff405984102c42de94fc55a6b75765d621c65262469b3c9b53" dependencies = [ - "ring", - "untrusted", + "ring 0.17.8", + "untrusted 0.9.0", ] [[package]] name = "webpki-roots" -version = "0.22.4" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1c760f0d366a6c24a02ed7816e23e691f5d92291f94d15e836006fd11b04daf" +checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" dependencies = [ "webpki", ] +[[package]] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" + [[package]] name = "webview2-com" version = "0.16.0" @@ -5315,7 +5696,7 @@ dependencies = [ "webview2-com-macros", "webview2-com-sys", "windows 0.37.0", - "windows-implement", + "windows-implement 0.37.0", ] [[package]] @@ -5326,7 +5707,7 @@ checksum = "eaebe196c01691db62e9e4ca52c5ef1e4fd837dcae27dae3ada599b5a8fd05ac" dependencies = [ "proc-macro2", "quote", - "syn 1.0.98", + "syn 1.0.109", ] [[package]] @@ -5343,37 +5724,29 @@ dependencies = [ "windows-bindgen", ] -[[package]] -name = "wepoll-ffi" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb" -dependencies = [ - "cc", -] - [[package]] name = "which" -version = "4.4.0" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" dependencies = [ "either", - "libc", + "home", "once_cell", + "rustix 0.38.34", ] [[package]] name = "widestring" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" [[package]] name = "wildmatch" -version = "2.1.1" +version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee583bdc5ff1cf9db20e9db5bb3ff4c3089a8f6b8b31aff265c9aba85812db86" +checksum = "3928939971918220fed093266b809d1ee4ec6c1a2d72692ff6876898f3b16c19" [[package]] name = "winapi" @@ -5393,11 +5766,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.5" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" dependencies = [ - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -5408,51 +5781,46 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "wincompatlib" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89cd8dd63a2925273bdc4efd837ac5b847b06b23f141ce73664e274d54bbfa83" +checksum = "07b1763cc16b78378280633bd4648b3c89064cb34105586ba73f4f75f7e428d8" dependencies = [ "anyhow", + "blake3", "minreq", ] [[package]] name = "windows" -version = "0.24.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9f39345ae0c8ab072c0ac7fe8a8b411636aa34f89be19ddd0d9226544f13944" +checksum = "57b543186b344cc61c85b5aab0d2e3adf4e0f99bc076eff9aa5927bcc0b8a647" dependencies = [ - "windows_i686_gnu 0.24.0", - "windows_i686_msvc 0.24.0", - "windows_x86_64_gnu 0.24.0", - "windows_x86_64_msvc 0.24.0", + "windows-implement 0.37.0", + "windows_aarch64_msvc 0.37.0", + "windows_i686_gnu 0.37.0", + "windows_i686_msvc 0.37.0", + "windows_x86_64_gnu 0.37.0", + "windows_x86_64_msvc 0.37.0", ] [[package]] name = "windows" -version = "0.32.0" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbedf6db9096bc2364adce0ae0aa636dcd89f3c3f2cd67947062aaf0ca2a10ec" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows_aarch64_msvc 0.32.0", - "windows_i686_gnu 0.32.0", - "windows_i686_msvc 0.32.0", - "windows_x86_64_gnu 0.32.0", - "windows_x86_64_msvc 0.32.0", + "windows-targets 0.48.5", ] [[package]] name = "windows" -version = "0.37.0" +version = "0.56.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b543186b344cc61c85b5aab0d2e3adf4e0f99bc076eff9aa5927bcc0b8a647" +checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132" dependencies = [ - "windows-implement", - "windows_aarch64_msvc 0.37.0", - "windows_i686_gnu 0.37.0", - "windows_i686_msvc 0.37.0", - "windows_x86_64_gnu 0.37.0", - "windows_x86_64_msvc 0.37.0", + "windows-core 0.56.0", + "windows-targets 0.52.5", ] [[package]] @@ -5465,29 +5833,81 @@ dependencies = [ "windows-tokens", ] +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.5", +] + +[[package]] +name = "windows-core" +version = "0.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6" +dependencies = [ + "windows-implement 0.56.0", + "windows-interface", + "windows-result", + "windows-targets 0.52.5", +] + [[package]] name = "windows-implement" version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67a1062e555f7d9d66fd1130ed4f7c6ec41a47529ee0850cd0e926d95b26bb14" dependencies = [ - "syn 1.0.98", + "syn 1.0.109", "windows-tokens", ] +[[package]] +name = "windows-implement" +version = "0.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "windows-interface" +version = "0.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + [[package]] name = "windows-metadata" version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f33f2b90a6664e369c41ab5ff262d06f048fc9685d9bf8a0e99a47750bb0463" +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets 0.52.5", +] + [[package]] name = "windows-service" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd9db37ecb5b13762d95468a2fc6009d4b2c62801243223aabd44fca13ad13c8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "widestring", "windows-sys 0.45.0", ] @@ -5520,7 +5940,16 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.5", ] [[package]] @@ -5540,17 +5969,33 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", ] [[package]] @@ -5559,6 +6004,15 @@ version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3263d25f1170419995b78ff10c06b949e8a986c35c208dc24333c64753a87169" +[[package]] +name = "windows-version" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6998aa457c9ba8ff2fb9f13e9d2a930dabcea28f1d0ab94d687d8b3654844515" +dependencies = [ + "windows-targets 0.52.5", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -5567,15 +6021,15 @@ checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] -name = "windows_aarch64_msvc" -version = "0.32.0" +name = "windows_aarch64_gnullvm" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" [[package]] name = "windows_aarch64_msvc" @@ -5597,21 +6051,15 @@ checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" - -[[package]] -name = "windows_i686_gnu" -version = "0.24.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0866510a3eca9aed73a077490bbbf03e5eaac4e1fd70849d89539e5830501fd" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] -name = "windows_i686_gnu" -version = "0.32.0" +name = "windows_aarch64_msvc" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" [[package]] name = "windows_i686_gnu" @@ -5633,21 +6081,21 @@ checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] -name = "windows_i686_msvc" -version = "0.24.0" +name = "windows_i686_gnu" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf0ffed56b7e9369a29078d2ab3aaeceea48eb58999d2cff3aa2494a275b95c6" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" [[package]] -name = "windows_i686_msvc" -version = "0.32.0" +name = "windows_i686_gnullvm" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" [[package]] name = "windows_i686_msvc" @@ -5669,21 +6117,15 @@ checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.24.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "384a173630588044205a2993b6864a2f56e5a8c1e7668c07b93ec18cf4888dc4" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] -name = "windows_x86_64_gnu" -version = "0.32.0" +name = "windows_i686_msvc" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" [[package]] name = "windows_x86_64_gnu" @@ -5705,33 +6147,33 @@ checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" +name = "windows_x86_64_gnu" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] -name = "windows_x86_64_msvc" -version = "0.24.0" +name = "windows_x86_64_gnullvm" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd8f062d8ca5446358159d79a90be12c543b3a965c847c8f3eedf14b321d399" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] -name = "windows_x86_64_msvc" -version = "0.32.0" +name = "windows_x86_64_gnullvm" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" [[package]] name = "windows_x86_64_msvc" @@ -5753,9 +6195,33 @@ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" + +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.6.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" +dependencies = [ + "memchr", +] [[package]] name = "winreg" @@ -5767,23 +6233,23 @@ dependencies = [ ] [[package]] -name = "winres" -version = "0.1.12" +name = "winreg" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b68db261ef59e9e52806f688020631e987592bd83619edccda9c47d42cde4f6c" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "toml", + "cfg-if", + "windows-sys 0.48.0", ] [[package]] -name = "winrt-notification" -version = "0.5.1" +name = "winreg" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "007a0353840b23e0c6dc73e5b962ff58ed7f6bc9ceff3ce7fe6fbad8d496edf4" +checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" dependencies = [ - "strum", - "windows 0.24.0", - "xml-rs", + "cfg-if", + "windows-sys 0.48.0", ] [[package]] @@ -5815,14 +6281,14 @@ dependencies = [ "webkit2gtk-sys", "webview2-com", "windows 0.37.0", - "windows-implement", + "windows-implement 0.37.0", ] [[package]] name = "x11" -version = "2.19.1" +version = "2.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd0565fa8bfba8c5efe02725b14dff114c866724eff2cfd44d76cea74bcd87a" +checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e" dependencies = [ "libc", "pkg-config", @@ -5830,12 +6296,12 @@ dependencies = [ [[package]] name = "x11-dl" -version = "2.19.1" +version = "2.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea26926b4ce81a6f5d9d0f3a0bc401e5a37c6ae14a1bfaa8ff6099ca80038c59" +checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" dependencies = [ - "lazy_static", "libc", + "once_cell", "pkg-config", ] @@ -5846,16 +6312,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fb9bace5b5589ffead1afb76e43e34cff39cd0f3ce7e170ae0c29e53b88eb1c" dependencies = [ "asn1-rs 0.3.1", - "base64 0.13.0", + "base64 0.13.1", "data-encoding", "der-parser 7.0.0", "lazy_static", "nom", "oid-registry 0.4.0", - "ring", + "ring 0.16.20", "rusticata-macros", "thiserror", - "time 0.3.11", + "time", ] [[package]] @@ -5864,34 +6330,30 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" dependencies = [ - "asn1-rs 0.5.1", - "base64 0.13.0", + "asn1-rs 0.5.2", + "base64 0.13.1", "data-encoding", - "der-parser 8.1.0", + "der-parser 8.2.0", "lazy_static", "nom", "oid-registry 0.6.1", - "ring", + "ring 0.16.20", "rusticata-macros", "thiserror", - "time 0.3.11", + "time", ] [[package]] name = "xattr" -version = "0.2.3" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc" +checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" dependencies = [ "libc", + "linux-raw-sys 0.4.14", + "rustix 0.38.34", ] -[[package]] -name = "xml-rs" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52839dc911083a8ef63efa4d039d1f58b5e409f923e44c80828f206f66e5541c" - [[package]] name = "xz" version = "0.1.0" @@ -5912,72 +6374,58 @@ dependencies = [ [[package]] name = "yasna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346d34a236c9d3e5f3b9b74563f238f955bbd05fa0b8b4efa53c130c43982f4c" -dependencies = [ - "time 0.3.11", -] - -[[package]] -name = "zip" -version = "0.5.13" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ab48844d61251bb3835145c521d88aa4031d7139e8485990f60ca911fa0815" +checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd" dependencies = [ - "byteorder", - "bzip2", - "crc32fast", - "flate2", - "thiserror", - "time 0.1.43", + "time", ] [[package]] name = "zip" -version = "0.6.2" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf225bcf73bb52cbb496e70475c7bd7a3f769df699c0020f6c7bd9a96dcf0b8d" +checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" dependencies = [ "aes", "byteorder", "bzip2", - "constant_time_eq", + "constant_time_eq 0.1.5", "crc32fast", "crossbeam-utils", "flate2", "hmac", "pbkdf2", "sha1", - "time 0.3.11", + "time", "zstd", ] [[package]] name = "zip-extract" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c5cc0309f6e81ab96c2b43d5e935025f8732c886690be8f78f68e06bad1d274" +checksum = "e109e5a291403b4c1e514d39f8a22d3f98d257e691a52bb1f16051bb1ffed63e" dependencies = [ "log", "thiserror", - "zip 0.5.13", + "zip", ] [[package]] name = "zstd" -version = "0.10.2+zstd.1.5.2" +version = "0.11.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4a6bd64f22b5e3e94b4e238669ff9f10815c27a5180108b849d24174a83847" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "4.1.6+zstd.1.5.2" +version = "5.0.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b61c51bb270702d6167b8ce67340d2754b088d0c091b06e593aa772c3ee9bb" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" dependencies = [ "libc", "zstd-sys", @@ -5985,10 +6433,10 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "1.6.3+zstd.1.5.2" +version = "2.0.11+zstd.1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc49afa5c8d634e75761feda8c592051e7eeb4683ba827211eb0d731d3402ea8" +checksum = "75652c55c0b6f3e6f12eb786fe1bc960396bf05a1eb3bf1f3691c3610ac2e6d4" dependencies = [ "cc", - "libc", + "pkg-config", ] diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 4d009006a..541bcec35 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cultivation" -version = "1.2.0" +version = "1.5.1" description = "A custom launcher for anime game." authors = ["KingRainbow44", "SpikeHD"] license = "" diff --git a/src-tauri/lang/chs.json b/src-tauri/lang/chs.json index 4cf32e44b..b6c394346 100644 --- a/src-tauri/lang/chs.json +++ b/src-tauri/lang/chs.json @@ -35,11 +35,13 @@ "un_elevated": "非提升运行游戏(无管理员)", "redirect_more": "还可以重定向其他MHY游戏", "web_cache": "删除 webCaches 文件夹", - "launch_args": "Launch Args" + "launch_args": "启动参数", + "offline_mode": "离线模式", + "fix_res": "修复登录超时" }, "downloads": { "grasscutter_fullbuild": "下载 Grasscutter 一体化", - "grasscutter_fullquest": "下载 Quest 一体化", + "grasscutter_fullquest": "下载 5.0 一体化", "grasscutter_stable_data": "下载 Grasscutter 稳定版数据", "grasscutter_latest_data": "下载 Grasscutter 开发版数据", "grasscutter_stable_data_update": "更新 Grasscutter 稳定版数据", @@ -67,7 +69,8 @@ "select_folder": "选择文件夹...", "download": "下载", "delete": "删除", - "install": "安装" + "install": "安装", + "fix": "Fix" }, "news": { "latest_commits": "最近提交", diff --git a/src-tauri/lang/cht.json b/src-tauri/lang/cht.json index 672bcbd8a..1cbafdebb 100644 --- a/src-tauri/lang/cht.json +++ b/src-tauri/lang/cht.json @@ -35,11 +35,13 @@ "un_elevated": "在不升高的情况下运行游戏(没有管理员)。", "redirect_more": "同時重定向其他 MHY 遊戲", "web_cache": "刪除 webCaches 文件夾", - "launch_args": "Launch Args" + "launch_args": "啟動參數", + "offline_mode": "離線模式", + "fix_res": "修復登入逾時" }, "downloads": { "grasscutter_fullbuild": "下載Grasscutter多合一下載", - "grasscutter_fullquest": "下载 Quest 一体化", + "grasscutter_fullquest": "下载 5.0 一体化", "grasscutter_stable_data": "下載Grasscutter穩定版數據(Data)", "grasscutter_latest_data": "下載Grasscutter開發板數據(Data)", "grasscutter_stable_data_update": "更新Grasscutter穩定版數據(Data)", @@ -67,7 +69,8 @@ "select_folder": "選擇資料夾...", "download": "下載", "delete": "刪除", - "install": "安裝" + "install": "安裝", + "fix": "Fix" }, "news": { "latest_commits": "最近的PR", diff --git a/src-tauri/lang/de.json b/src-tauri/lang/de.json index eb83f3f46..4bd8a8735 100644 --- a/src-tauri/lang/de.json +++ b/src-tauri/lang/de.json @@ -37,11 +37,13 @@ "check_aagl": "Für weitere Optionen, schaue weiter", "grasscutter_elevation": "Methode zur Ausführung von GC auf eingeschränkten Ports", "web_cache": "WebCaches-Ordner löschen", - "launch_args": "Launch Args" + "launch_args": "Start-Argumente", + "offline_mode": "Offline-Modus", + "fix_res": "Login-Zeitüberschreitung beheben" }, "downloads": { "grasscutter_fullbuild": "Grasscutter All-in-One herunterladen", - "grasscutter_fullquest": "Questing All-in-One herunterladen", + "grasscutter_fullquest": "5.0 All-in-One herunterladen", "grasscutter_stable_data": "Stabile Grasscutter-Daten herunterladen", "grasscutter_latest_data": "Neueste Grasscutter-Daten herunterladen", "grasscutter_stable_data_update": "Stabile Grasscutter-Daten aktualisieren", @@ -69,7 +71,8 @@ "select_folder": "Ordner auswählen...", "download": "Herunterladen", "delete": "Löschen", - "install": "Installieren" + "install": "Installieren", + "fix": "Fix" }, "news": { "latest_commits": "Neueste Commits", diff --git a/src-tauri/lang/en.json b/src-tauri/lang/en.json index 34a26f2a4..0efd6d79b 100644 --- a/src-tauri/lang/en.json +++ b/src-tauri/lang/en.json @@ -37,11 +37,13 @@ "check_aagl": "For more options, check the other launcher", "grasscutter_elevation": "Method of running GC on restricted ports", "web_cache": "Delete webCaches folder", - "launch_args": "Launch Args" + "launch_args": "Launch Args", + "offline_mode": "Offline Mode", + "fix_res": "Fix Login Timeout" }, "downloads": { "grasscutter_fullbuild": "Download Grasscutter All-in-One", - "grasscutter_fullquest": "Download Questing All-in-One", + "grasscutter_fullquest": "Download 5.0 All-in-One", "grasscutter_stable_data": "Download Grasscutter Stable Data", "grasscutter_latest_data": "Download Grasscutter Latest Data", "grasscutter_stable_data_update": "Update Grasscutter Stable Data", @@ -69,7 +71,8 @@ "select_folder": "Select folder...", "download": "Download", "delete": "Delete", - "install": "Install" + "install": "Install", + "fix": "Fix" }, "news": { "latest_commits": "Recent Commits", @@ -96,7 +99,7 @@ "akebi_name": "Akebi", "migoto_name": "Migoto", "reshade_name": "Reshade", - "akebi": "Set Akebi/Acrepi Executable", + "akebi": "Set Akebi/Other Cheat Executable", "migoto": "Set 3DMigoto Executable", "reshade": "Set Reshade Injector" } diff --git a/src-tauri/lang/es.json b/src-tauri/lang/es.json index 29dc75a05..2054147e7 100644 --- a/src-tauri/lang/es.json +++ b/src-tauri/lang/es.json @@ -35,11 +35,13 @@ "un_elevated": "Ejecutar el juego sin permisos de administrador", "redirect_more": "También redirigir otros juegos MHY", "web_cache": "Eliminar la carpeta webCaches", - "launch_args": "Launch Args" + "launch_args": "Args de lanzamiento", + "offline_mode": "Modo sin conexión", + "fix_res": "Reparar el tiempo de espera" }, "downloads": { "grasscutter_fullbuild": "Descargar datos todo en uno de Grasscutter", - "grasscutter_fullquest": "Descargar datos todo en uno de Questing", + "grasscutter_fullquest": "Descargar datos todo en uno de 5.0", "grasscutter_stable_data": "Descargar datos Estables de Grasscutter", "grasscutter_latest_data": "Descargar datos más Recientes de Grasscutter", "grasscutter_stable_data_update": "Actualizar datos estables de Grasscutter", @@ -67,7 +69,8 @@ "select_folder": "Seleccionar la carpeta", "download": "Descargar", "delete": "Borrar", - "install": "Instalar" + "install": "Instalar", + "fix": "Fix" }, "news": { "latest_commits": "Commits recientes", diff --git a/src-tauri/lang/fr.json b/src-tauri/lang/fr.json index 238ff7b2c..f635ce610 100644 --- a/src-tauri/lang/fr.json +++ b/src-tauri/lang/fr.json @@ -35,11 +35,13 @@ "un_elevated": "Exécuter le jeu sans élévation (pas d'administrateur)", "redirect_more": "Réorienter également les autres jeux MHY", "web_cache": "Supprimer le dossier webCaches", - "launch_args": "Launch Args" + "launch_args": "Arguments de lancement", + "offline_mode": "Mode hors ligne", + "fix_res": "Réparation du login" }, "downloads": { "grasscutter_fullbuild": "Telecharger Grasscutter tout-en-un", - "grasscutter_fullquest": "Télécharger les Quêtes tout-en-un", + "grasscutter_fullquest": "Télécharger les 5.0 tout-en-un", "grasscutter_stable_data": "Télécharger les donnees de Grasscutter (version stable)", "grasscutter_latest_data": "Télécharger les donnees de Grasscutter (derniere version)", "grasscutter_stable_data_update": "Mettre à jour les données de Grasscutter (version stable)", @@ -66,7 +68,8 @@ "select_folder": "Choisir un dossier...", "download": "Télécharger", "delete": "Supprimer", - "install": "Installer" + "install": "Installer", + "fix": "Fix" }, "news": { "latest_commits": "Commits récents", diff --git a/src-tauri/lang/id.json b/src-tauri/lang/id.json index 0497edb54..aa3f1f6b3 100644 --- a/src-tauri/lang/id.json +++ b/src-tauri/lang/id.json @@ -34,11 +34,13 @@ "un_elevated": "Jalankan game yang tidak ditinggikan (tanpa admin)", "redirect_more": "Juga mengarahkan ulang game MHY lainnya", "web_cache": "Hapus folder webCaches", - "launch_args": "Launch Args" + "launch_args": "Luncurkan Args", + "offline_mode": "Mode Offline", + "fix_res": "Perbaiki batas waktu login" }, "downloads": { "grasscutter_fullbuild": "Sedang Mendownload Grasscutter Semua Dalam Satu", - "grasscutter_fullquest": "Unduh pencarian semua dalam satu", + "grasscutter_fullquest": "Unduh 5.0 semua dalam satu", "grasscutter_stable_data": "Sedang Mendownload Grasscutter Versi Stabil", "grasscutter_latest_data": "Sedang Mendownload Grasscutter Data Terbaru", "grasscutter_stable_data_update": "Memperbaharui Grasscutter Data Stabil", @@ -64,7 +66,8 @@ "select_file": "Pilih File Atau Folder...", "select_folder": "Pilih Folder...", "download": "download", - "delete": "Menghapus" + "delete": "Menghapus", + "fix": "Fix" }, "news": { "latest_commits": "Commit Terbaru", diff --git a/src-tauri/lang/it.json b/src-tauri/lang/it.json index 313415793..eb986ab04 100644 --- a/src-tauri/lang/it.json +++ b/src-tauri/lang/it.json @@ -35,11 +35,13 @@ "un_elevated": "Avvia il gioco non-elevato (non admin)", "redirect_more": "Reindirizza anche altri giochi MHY", "web_cache": "Elimina la cartella webCaches", - "launch_args": "Launch Args" + "launch_args": "Argomenti di lancio", + "offline_mode": "Modalità Offline", + "fix_res": "Correggere il timeout dell'accesso" }, "downloads": { "grasscutter_fullbuild": "Scarica Grasscutter Tutto-in-Uno", - "grasscutter_fullquest": "Scarica Questing Tutto-in-Uno", + "grasscutter_fullquest": "Scarica 5.0 Tutto-in-Uno", "grasscutter_stable_data": "Scarica i dati di Grasscutter Stabili", "grasscutter_latest_data": "Scarica i dati di Grasscutter Più Recenti", "grasscutter_stable_data_update": "Aggiorna i dati di Grasscutter Stabili", @@ -67,7 +69,8 @@ "select_folder": "Seleziona cartella...", "download": "Scarica", "delete": "Cancella", - "install": "Installa" + "install": "Installa", + "fix": "Fix" }, "news": { "latest_commits": "Commit Recenti", diff --git a/src-tauri/lang/ko.json b/src-tauri/lang/ko.json index cab2b1bce..bec9172a1 100644 --- a/src-tauri/lang/ko.json +++ b/src-tauri/lang/ko.json @@ -35,11 +35,13 @@ "un_elevated": "게임 비상승 실행(관리자 없음)", "redirect_more": "다른 MHY 게임도 리디렉션", "web_cache": "webCaches 폴더 삭제", - "launch_args": "Launch Args" + "launch_args": "실행 인수", + "offline_mode": "오프라인 모드", + "fix_res": "로그인 시간 초과 수정" }, "downloads": { "grasscutter_fullbuild": "올인원 Grasscutter 다운로드", - "grasscutter_fullquest": "퀘스트 올인원 다운로드", + "grasscutter_fullquest": "5.0 올인원 다운로드", "grasscutter_stable_data": "안정적인 데이터 다운로드", "grasscutter_latest_data": "최신 데이터 다운로드", "grasscutter_stable_data_update": "안정적 데이터 업데이트", @@ -67,7 +69,8 @@ "select_folder": "폴더 선택...", "download": "다운로드", "delete": "삭제", - "install": "설치" + "install": "설치", + "fix": "Fix" }, "news": { "latest_commits": "공지 사항", diff --git a/src-tauri/lang/lv.json b/src-tauri/lang/lv.json index 03caacfbe..31dc2caf3 100644 --- a/src-tauri/lang/lv.json +++ b/src-tauri/lang/lv.json @@ -33,11 +33,13 @@ "un_elevated": "Palaist spēli bez paaugstinājuma (bez administratora)", "redirect_more": "Arī novirzīt citas MHY spēles", "web_cache": "Dzēsiet mapi WebCaches", - "launch_args": "Launch Args" + "launch_args": "Palaišanas args", + "offline_mode": "Bezsaistes režīms", + "fix_res": "Fiksēt pieteikšanās laika" }, "downloads": { "grasscutter_fullbuild": "Lejupielādējiet Grasscutter viss vienā", - "grasscutter_fullquest": "Lejupielādēt questing viss vienā", + "grasscutter_fullquest": "Lejupielādēt 5.0 viss vienā", "grasscutter_stable_data": "Lejupielādējiet Grasscutter stabilos datus", "grasscutter_latest_data": "Lejupielādējiet Grasscutter jaunākos datus", "grasscutter_stable_data_update": "Atjauniniet Grasscutter stabilos datus", @@ -63,7 +65,8 @@ "select_file": "Izvēlēties failu vai mapu...", "select_folder": "Izvēlēties mapu...", "download": "Lejupielādēt", - "delete": "Dzēst" + "delete": "Dzēst", + "fix": "Fix" }, "news": { "latest_commits": "Nesen kommitus", diff --git a/src-tauri/lang/nl.json b/src-tauri/lang/nl.json index c539be29e..c49a615bf 100644 --- a/src-tauri/lang/nl.json +++ b/src-tauri/lang/nl.json @@ -34,11 +34,13 @@ "un_elevated": "Voer het spel uit zonder hoogtevrees (geen admin)", "redirect_more": "Richt ook andere MHY-spellen", "web_cache": "Verwijder de webCaches-map", - "launch_args": "Launch Args" + "launch_args": "Args starten", + "offline_mode": "Offline Modus", + "fix_res": "Time-out inloggen verhelpen" }, "downloads": { "grasscutter_fullbuild": "Grasscutter Alles-in-één Downloaden", - "grasscutter_fullquest": "Alles-in-één zoeken downloaden", + "grasscutter_fullquest": "Alles-in-één 5.0 downloaden", "grasscutter_stable_data": "Download Stabiele Gegevens Van Grasscutter", "grasscutter_latest_data": "Download De Nieuwste Gegevens Van Grasscutter", "grasscutter_stable_data_update": "Stabiele gegevens Van Grasscutter bijwerken", @@ -66,7 +68,8 @@ "select_folder": "Select folder...", "download": "Download", "delete": "Verwijder", - "install": "Install" + "install": "Install", + "fix": "Fix" }, "news": { "latest_commits": "Recente Opdrachten", diff --git a/src-tauri/lang/pl.json b/src-tauri/lang/pl.json index b0031b948..e5ac75769 100644 --- a/src-tauri/lang/pl.json +++ b/src-tauri/lang/pl.json @@ -37,11 +37,13 @@ "check_aagl": "Więcej opcji znajdziesz w drugim launcherze", "grasscutter_elevation": "Sposób uruchomienia GC na ograniczonym porcie", "web_cache": "Usuń folder webCaches", - "launch_args": "Launch Args" + "launch_args": "Argumenty uruchamiania", + "offline_mode": "Tryb offline", + "fix_res": "Napraw limit czasu logowania" }, "downloads": { "grasscutter_fullbuild": "Pobierz Grasscutter (wszystko w jednym)", - "grasscutter_fullquest": "Pobierz Questing (wszystko w jednym)", + "grasscutter_fullquest": "Pobierz 5.0 (wszystko w jednym)", "grasscutter_stable_data": "Pobierz stabilne dane Grasscuttera", "grasscutter_latest_data": "Pobierz najnowsze dane Grasscuttera", "grasscutter_stable_data_update": "Zaaktualizuj stabilne dane Grasscuttera", @@ -69,7 +71,8 @@ "select_folder": "Wybierz folder...", "download": "Pobierz", "delete": "Usuń", - "install": "Zainstaluj" + "install": "Zainstaluj", + "fix": "Fix" }, "news": { "latest_commits": "Ostatnie Commity", diff --git a/src-tauri/lang/pt-br.json b/src-tauri/lang/pt-br.json index 57ea64a69..0fe27ebb1 100644 --- a/src-tauri/lang/pt-br.json +++ b/src-tauri/lang/pt-br.json @@ -35,11 +35,13 @@ "un_elevated": "Executar o jogo não-elevated (sem admin)", "redirect_more": "Também redirecionar outros jogos MHY", "web_cache": "Excluir pasta webCaches", - "launch_args": "Launch Args" + "launch_args": "Argumentos de lançamento", + "offline_mode": "Modo offline", + "fix_res": "Corrigir o tempo limite de login" }, "downloads": { "grasscutter_fullbuild": "Baixar o Grasscutter Tudo-em-Um", - "grasscutter_fullquest": "Baixar de missões em um só lugar", + "grasscutter_fullquest": "Baixar de 5.0 em um só lugar", "grasscutter_stable_data": "Baixar os Dados do Grasscutter Estável", "grasscutter_latest_data": "Baixar os Dados do Grasscutter Mais Recente", "grasscutter_stable_data_update": "Atualizar os Dados do Grasscutter Estável", @@ -67,7 +69,8 @@ "select_folder": "Selecione a pasta...", "download": "Baixar", "delete": "Deletar", - "install": "Instalar" + "install": "Instalar", + "fix": "Fix" }, "news": { "latest_commits": "Commits Recentes", diff --git a/src-tauri/lang/ru.json b/src-tauri/lang/ru.json index 26bb60204..63036e8e2 100644 --- a/src-tauri/lang/ru.json +++ b/src-tauri/lang/ru.json @@ -34,11 +34,13 @@ "un_elevated": "Запустите игру в неэлегантном режиме (без администратора)", "redirect_more": "Также перенаправьте другие игры MHY", "web_cache": "Удалить папку webCaches", - "launch_args": "Launch Args" + "launch_args": "Параметры запуска", + "offline_mode": "Автономный режим", + "fix_res": "Исправить таймаут входа в систему" }, "downloads": { "grasscutter_fullbuild": "Скачать все в одном Grasscutter", - "grasscutter_fullquest": "Скачать квесты все в одном", + "grasscutter_fullquest": "Скачать 5.0 все в одном", "grasscutter_stable_data": "Скачать стабильные данные Grasscutter", "grasscutter_latest_data": "Скачать последние данные Grasscutter", "grasscutter_stable_data_update": "Обновить стабильные данные Grasscutter", @@ -66,7 +68,8 @@ "select_folder": "Выберите папку...", "download": "Скачать", "delete": "Удалить", - "install": "Установить" + "install": "Установить", + "fix": "Fix" }, "news": { "latest_commits": "Последние коммиты", diff --git a/src-tauri/lang/vi.json b/src-tauri/lang/vi.json index 24c128c98..ad0c41a34 100644 --- a/src-tauri/lang/vi.json +++ b/src-tauri/lang/vi.json @@ -35,11 +35,13 @@ "un_elevated": "Chạy trò chơi không nâng cao (không có quản trị viên)", "redirect_more": "Đồng thời chuyển hướng các trò chơi MHY khác", "web_cache": "Xóa thư mục webCaches", - "launch_args": "Launch Args" + "launch_args": "Khởi chạy đối số", + "offline_mode": "Chế độ ngoại tuyến", + "fix_res": "Sửa lỗi hết thời gian đăng nhập" }, "downloads": { "grasscutter_fullbuild": "Tải Grasscutter tất cả trong một", - "grasscutter_fullquest": "Tải xuống truy vấn tất cả trong một", + "grasscutter_fullquest": "Tải 5.0 tất cả trong một", "grasscutter_stable_data": "Tải dữ liệu Grasscutter bản ổn định", "grasscutter_latest_data": "Tải dữ liệu Grasscutter bản mới nhất", "grasscutter_stable_data_update": "Cập nhật dữ liệu Grasscutter bản ổn định", @@ -67,7 +69,8 @@ "select_folder": "Chọn thư mục...", "download": "Tải", "delete": "Xóa bỏ", - "install": "Cài" + "install": "Cài", + "fix": "Fix" }, "news": { "latest_commits": "Thay Đổi Gần Đây", diff --git a/src-tauri/patch/46version.dll b/src-tauri/patch/46version.dll new file mode 100644 index 000000000..33a0dc8b1 Binary files /dev/null and b/src-tauri/patch/46version.dll differ diff --git a/src-tauri/patch/47version.dll b/src-tauri/patch/47version.dll new file mode 100644 index 000000000..ae152a517 Binary files /dev/null and b/src-tauri/patch/47version.dll differ diff --git a/src-tauri/patch/50version.dll b/src-tauri/patch/50version.dll new file mode 100644 index 000000000..64b00e8a6 Binary files /dev/null and b/src-tauri/patch/50version.dll differ diff --git a/src-tauri/src/file_helpers.rs b/src-tauri/src/file_helpers.rs index 3caf0c8e4..c111920fd 100644 --- a/src-tauri/src/file_helpers.rs +++ b/src-tauri/src/file_helpers.rs @@ -1,6 +1,6 @@ use file_diff::diff; use std::fs; -use std::io::{Read, Write}; +use std::io::{Read, Seek, SeekFrom, Write}; use std::path::PathBuf; #[tauri::command] @@ -57,6 +57,11 @@ pub fn are_files_identical(path1: &str, path2: &str) -> bool { diff(path1, path2) } +#[tauri::command] +pub fn does_file_exist(path1: &str) -> bool { + fs::metadata(path1).is_ok() +} + #[tauri::command] pub fn copy_file(path: String, new_path: String) -> bool { let filename = &path.split('/').last().unwrap(); @@ -127,21 +132,46 @@ pub fn delete_file(path: String) -> bool { #[tauri::command] pub fn read_file(path: String) -> String { let path_buf = PathBuf::from(&path); + println!("Debug: Reading file of path {}", path.clone(),); - let mut file = match fs::File::open(path_buf) { - Ok(file) => file, - Err(e) => { - println!("Failed to open file {}: {}", &path, e); - if path.contains("config") { - // Server.ts won't print the error so handle the message here for the user - println!("Server config not found or invalid. Be sure to run the server at least once to generate it before making edits."); + let mut contents = String::new(); + + // Version data is 3 bytes long, 3 bytes in + let ext = path_buf.extension().unwrap(); + if ext.eq("bytes") { + let offset_bytes = 3; + let num_bytes = 3; + + let mut byte_file = match std::fs::File::open(path_buf) { + Ok(byte_file) => byte_file, + Err(e) => { + println!("{}", e); + return String::new(); } - return String::new(); // Send back error for handling by the caller - } - }; + }; + byte_file + .seek(SeekFrom::Start(offset_bytes)) + .unwrap_or_default(); + let mut buf = vec![0; num_bytes]; + byte_file.read_exact(&mut buf).unwrap_or_default(); + + contents = String::from_utf8_lossy(&buf).to_string(); + } else { + let mut file = match fs::File::open(path_buf) { + Ok(file) => file, + Err(e) => { + if path.contains("config") { + // Server.ts won't print the error so handle the message here for the user + println!("Server config not found or invalid. Be sure to run the server at least once to generate it before making edits."); + } else { + println!("Failed to open file: {}", e); + } + return String::new(); // Send back error for handling by the caller + } + }; - let mut contents = String::new(); - file.read_to_string(&mut contents).unwrap(); + file.read_to_string(&mut contents).unwrap(); + } contents } diff --git a/src-tauri/src/lang.rs b/src-tauri/src/lang.rs index a7c5b280f..08a9579ff 100644 --- a/src-tauri/src/lang.rs +++ b/src-tauri/src/lang.rs @@ -28,12 +28,7 @@ pub async fn get_languages() -> std::collections::HashMap { for entry in lang_files { let entry = entry.unwrap(); let path = entry.path(); - let filename = path - .file_name() - .unwrap_or_else(|| panic!("Failed to get filename from path: {:?}", path)) - .to_str() - .unwrap_or_else(|| panic!("Failed to convert filename to string: {:?}", path)) - .to_string(); + let filename = path.file_name().unwrap().to_str().unwrap(); let content = match std::fs::read_to_string(&path) { Ok(x) => x, diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 32128ab67..0c038046e 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -108,15 +108,15 @@ async fn parse_args(inp: &Vec) -> Result { std::process::exit(0); } + // Patch if needed + if args.value_of("patch")? { + patch::patch_game(false, 0.to_string()).await; + } + if args.value_of("launch-game")? { let game_path = config.game_install_path; let game_args: String = args.value_of("game-args").unwrap_or_default(); - // Patch if needed - if args.value_of("patch")? { - patch::patch_game().await; - } - if game_path.is_some() { if args.value_of("non-elevated-game")? { system_helpers::run_un_elevated(game_path.unwrap(), Some(game_args)) @@ -154,8 +154,8 @@ async fn parse_args(inp: &Vec) -> Result { pathbuf.push("cultivation"); pathbuf.push("ca"); - if args.value_of("other_redirects")? { - proxy::set_redirect_more(); + if args.value_of("other-redirects")? { + // proxy::set_redirect_more(); // Unused } connect(8035, pathbuf.to_str().unwrap().to_string()).await; @@ -218,7 +218,6 @@ fn main() -> Result<(), ArgsError> { system_helpers::open_in_browser, system_helpers::install_location, system_helpers::is_elevated, - system_helpers::set_migoto_target, system_helpers::set_migoto_delay, system_helpers::wipe_registry, system_helpers::get_platform, @@ -229,7 +228,6 @@ fn main() -> Result<(), ArgsError> { patch::unpatch_game, proxy::set_proxy_addr, proxy::generate_ca_files, - proxy::set_redirect_more, release::get_latest_release, unzip::unzip, file_helpers::rename, @@ -243,6 +241,7 @@ fn main() -> Result<(), ArgsError> { file_helpers::are_files_identical, file_helpers::read_file, file_helpers::write_file, + file_helpers::does_file_exist, downloader::download_file, downloader::stop_download, lang::get_lang, @@ -297,7 +296,7 @@ fn enable_process_watcher(window: tauri::Window, process: String) { thread::spawn(move || { // Initial sleep for 8 seconds, since running 20 different injectors or whatever can take a while - std::thread::sleep(std::time::Duration::from_secs(10)); + std::thread::sleep(std::time::Duration::from_secs(60)); let mut system = System::new_all(); @@ -336,7 +335,7 @@ fn enable_process_watcher(window: tauri::Window, process: String) { fn enable_process_watcher(window: tauri::Window, process: String) { drop(process); thread::spawn(move || { - let end_time = Instant::now() + Duration::from_secs(60); + let end_time = Instant::now() + Duration::from_secs(90); let game_thread = loop { let mut lock = AAGL_THREAD.lock().unwrap(); if lock.is_some() { diff --git a/src-tauri/src/patch.rs b/src-tauri/src/patch.rs index 13a38a4fd..856f53d8b 100644 --- a/src-tauri/src/patch.rs +++ b/src-tauri/src/patch.rs @@ -50,8 +50,90 @@ struct WhatToUnpach { #[cfg(windows)] #[tauri::command] -pub async fn patch_game() -> bool { - let patch_path = PathBuf::from(system_helpers::install_location()).join("patch/version.dll"); +pub async fn patch_game(newer_game: bool, version: String) -> bool { + let mut patch_path; + // Altpatch first - Now using as hoyonet switch + if newer_game { + let alt_patch_path = PathBuf::from(system_helpers::install_location()).join("altpatch"); + + // Should handle overwriting backup with new version backup later + let backup_path = PathBuf::from(system_helpers::install_location()) + .join("altpatch/original-mihoyonet.dll") + .to_str() + .unwrap() + .to_string(); + let backup_exists = file_helpers::does_file_exist(&backup_path); + + if !backup_exists { + let backup = file_helpers::copy_file_with_new_name( + get_game_rsa_path().await.unwrap() + + &String::from("/GenshinImpact_Data/Plugins/mihoyonet.dll"), + alt_patch_path.clone().to_str().unwrap().to_string(), + String::from("original-mihoyonet.dll"), + ); + + if !backup { + println!("Unable to backup file!"); + } + } + + patch_path = PathBuf::from(system_helpers::install_location()).join("altpatch/mihoyonet.dll"); + // Copy the other part of patch to game files + let alt_replaced = file_helpers::copy_file_with_new_name( + patch_path.clone().to_str().unwrap().to_string(), + get_game_rsa_path().await.unwrap() + &String::from("/GenshinImpact_Data/Plugins"), + String::from("mihoyonet.dll"), + ); + + if !alt_replaced { + return false; + } + + /*** For replacing old backup file with new one, for example when version changes + * Currently replaces when it shouldn't. Will figure it out when it matters + * ***/ + // else { + // // Check if game file matches backup + // let matching_alt_backup = file_helpers::are_files_identical( + // &backup_path.clone(), + // PathBuf::from(get_game_rsa_path().await.unwrap()) + // .join("/GenshinImpact_Data/Plugins/mihoyonet.dll") + // .to_str() + // .unwrap(), + // ); + + // let is_alt_patched = file_helpers::are_files_identical( + // PathBuf::from(system_helpers::install_location()).join("altpatch/mihoyonet.dll").to_str().unwrap(), + // PathBuf::from(get_game_rsa_path().await.unwrap()) + // .join("/GenshinImpact_Data/Plugins/mihoyonet.dll") + // .to_str() + // .unwrap(), + // ); + + // // Check if already alt patched + // if !matching_alt_backup { + // // Copy new backup if it is not patched + // if !is_alt_patched { + // file_helpers::copy_file_with_new_name( + // get_game_rsa_path().await.unwrap() + &String::from("/GenshinImpact_Data/Plugins/mihoyonet.dll"), + // alt_patch_path.clone().to_str().unwrap().to_string(), + // String::from("original-mihoyonet.dll"), + // ); + // } + // } + // } + } + + // Standard patch + patch_path = PathBuf::from(system_helpers::install_location()).join("patch/version.dll"); + + let i_ver = version.parse::().unwrap(); + + // For newer than 4.0, use specific patch files + if i_ver > 40 { + let patch_version = format!("patch/{version}version.dll"); + patch_path = PathBuf::from(system_helpers::install_location()).join(patch_version); + } // Are we already patched with mhypbase? If so, that's fine, just continue as normal let game_is_patched = file_helpers::are_files_identical( @@ -70,6 +152,17 @@ pub async fn patch_game() -> bool { return true; } + // For 5.0 and up + if i_ver > 49 { + let replaced50 = file_helpers::copy_file_with_new_name( + patch_path.clone().to_str().unwrap().to_string(), + get_game_rsa_path().await.unwrap(), + String::from("Astrolabe.dll"), + ); + + return replaced50; + } + // Copy the patch to game files let replaced = file_helpers::copy_file_with_new_name( patch_path.clone().to_str().unwrap().to_string(), @@ -86,7 +179,7 @@ pub async fn patch_game() -> bool { #[cfg(target_os = "linux")] #[tauri::command] -pub async fn patch_game() -> bool { +pub async fn patch_game(_newer_game: bool, _version: String) -> bool { let mut patch_state_mutex = PATCH_STATE.lock().await; if patch_state_mutex.is_some() { println!("Game already patched!"); @@ -170,6 +263,36 @@ pub async fn unpatch_game() -> bool { .to_string(), ); + file_helpers::delete_file( + PathBuf::from(get_game_rsa_path().await.unwrap()) + .join("Astrolabe.dll") + .to_str() + .unwrap() + .to_string(), + ); + + let core_patch_path = PathBuf::from(system_helpers::install_location()); + let patch_path = core_patch_path.clone().join("altpatch/mihoyonet.dll"); + let backup_path = core_patch_path + .clone() + .join("altpatch/original-mihoyonet.dll"); + + let is_alt_patched = file_helpers::are_files_identical( + patch_path.clone().to_str().unwrap(), + PathBuf::from(get_game_rsa_path().await.unwrap()) + .join("GenshinImpact_Data/Plugins/mihoyonet.dll") + .to_str() + .unwrap(), + ); + + if is_alt_patched { + file_helpers::copy_file_with_new_name( + backup_path.clone().to_str().unwrap().to_string(), + get_game_rsa_path().await.unwrap() + &String::from("/GenshinImpact_Data/Plugins"), + String::from("mihoyonet.dll"), + ); + } + deleted } diff --git a/src-tauri/src/proxy.rs b/src-tauri/src/proxy.rs index 5e96ffd08..c1b82fc2d 100644 --- a/src-tauri/src/proxy.rs +++ b/src-tauri/src/proxy.rs @@ -3,8 +3,6 @@ * https://github.com/omjadas/hudsucker/blob/main/examples/log.rs */ -use crate::config::get_config; - use once_cell::sync::Lazy; use std::{path::PathBuf, str::FromStr, sync::Mutex}; @@ -41,8 +39,6 @@ async fn shutdown_signal() { // Global ver for getting server address. static SERVER: Lazy> = Lazy::new(|| Mutex::new("http://localhost:443".to_string())); -static REDIRECT_MORE: Lazy> = Lazy::new(|| Mutex::new(false)); - #[derive(Clone)] struct ProxyHandler; @@ -58,11 +54,6 @@ pub fn set_proxy_addr(addr: String) { println!("Set server to {}", SERVER.lock().unwrap()); } -#[tauri::command] -pub fn set_redirect_more() { - *REDIRECT_MORE.lock().unwrap() = true; -} - #[async_trait] impl HttpHandler for ProxyHandler { async fn handle_request( @@ -72,93 +63,33 @@ impl HttpHandler for ProxyHandler { ) -> RequestOrResponse { let uri = req.uri().to_string(); - let mut more = get_config().redirect_more; - - if *REDIRECT_MORE.lock().unwrap() { - more = Some(true); - } - - match more { - Some(true) => { - if uri.contains("hoyoverse.com") - || uri.contains("mihoyo.com") - || uri.contains("yuanshen.com") - || uri.contains("starrails.com") - || uri.contains("bhsr.com") - || uri.contains("bh3.com") - || uri.contains("honkaiimpact3.com") - || uri.contains("zenlesszonezero.com") - { - // Handle CONNECTs - if req.method().as_str() == "CONNECT" { - let builder = Response::builder() - .header("DecryptEndpoint", "Created") - .status(StatusCode::OK); - let res = builder.body(()).unwrap(); - - // Respond to CONNECT - *res.body() - } else { - let uri_path_and_query = req.uri().path_and_query().unwrap().as_str(); - // Create new URI. - let new_uri = - Uri::from_str(format!("{}{}", SERVER.lock().unwrap(), uri_path_and_query).as_str()) - .unwrap(); - // Set request URI to the new one. - *req.uri_mut() = new_uri; - } - } - } - Some(false) => { - if uri.contains("hoyoverse.com") - || uri.contains("mihoyo.com") - || uri.contains("yuanshen.com") - { - // Handle CONNECTs - if req.method().as_str() == "CONNECT" { - let builder = Response::builder() - .header("DecryptEndpoint", "Created") - .status(StatusCode::OK); - let res = builder.body(()).unwrap(); - - // Respond to CONNECT - *res.body() - } else { - let uri_path_and_query = req.uri().path_and_query().unwrap().as_str(); - // Create new URI. - let new_uri = - Uri::from_str(format!("{}{}", SERVER.lock().unwrap(), uri_path_and_query).as_str()) - .unwrap(); - // Set request URI to the new one. - *req.uri_mut() = new_uri; - } - } - } - // Use default as fallback - None => { - if uri.contains("hoyoverse.com") - || uri.contains("mihoyo.com") - || uri.contains("yuanshen.com") - { - // Handle CONNECTs - if req.method().as_str() == "CONNECT" { - let builder = Response::builder() - .header("DecryptEndpoint", "Created") - .status(StatusCode::OK); - let res = builder.body(()).unwrap(); - - // Respond to CONNECT - *res.body() - } else { - let uri_path_and_query = req.uri().path_and_query().unwrap().as_str(); - // Create new URI. - let new_uri = - Uri::from_str(format!("{}{}", SERVER.lock().unwrap(), uri_path_and_query).as_str()) - .unwrap(); - // Set request URI to the new one. - *req.uri_mut() = new_uri; - } - } + if uri.contains("hoyoverse.com") + || uri.contains("mihoyo.com") + || uri.contains("yuanshen.com") + || uri.ends_with(".yuanshen.com:12401") + || uri.contains("starrails.com") + || uri.contains("bhsr.com") + || uri.contains("bh3.com") + || uri.contains("honkaiimpact3.com") + || uri.contains("zenlesszonezero.com") + { + // Handle CONNECTs + if req.method().as_str() == "CONNECT" { + let builder = Response::builder() + .header("DecryptEndpoint", "Created") + .status(StatusCode::OK); + let res = builder.body(()).unwrap(); + + // Respond to CONNECT + *res.body() + } else { + let uri_path_and_query = req.uri().path_and_query().unwrap().as_str(); + // Create new URI. + let new_uri = + Uri::from_str(format!("{}{}", SERVER.lock().unwrap(), uri_path_and_query).as_str()) + .unwrap(); + // Set request URI to the new one. + *req.uri_mut() = new_uri; } } @@ -176,26 +107,14 @@ impl HttpHandler for ProxyHandler { async fn should_intercept(&mut self, _ctx: &HttpContext, _req: &Request) -> bool { let uri = _req.uri().to_string(); - let more = get_config().redirect_more; - - match more { - Some(true) => { - uri.contains("hoyoverse.com") - || uri.contains("mihoyo.com") - || uri.contains("yuanshen.com") - || uri.contains("starrails.com") - || uri.contains("bhsr.com") - || uri.contains("bh3.com") - || uri.contains("honkaiimpact3.com") - || uri.contains("zenlesszonezero.com") - } - Some(false) => { - uri.contains("hoyoverse.com") || uri.contains("mihoyo.com") || uri.contains("yuanshen.com") - } - None => { - uri.contains("hoyoverse.com") || uri.contains("mihoyo.com") || uri.contains("yuanshen.com") - } - } + uri.contains("hoyoverse.com") + || uri.contains("mihoyo.com") + || uri.contains("yuanshen.com") + || uri.contains("starrails.com") + || uri.contains("bhsr.com") + || uri.contains("bh3.com") + || uri.contains("honkaiimpact3.com") + || uri.contains("zenlesszonezero.com") } } @@ -307,7 +226,7 @@ pub fn connect_to_proxy(proxy_port: u16) { Config::update(config); } -#[cfg(target_od = "macos")] +#[cfg(target_os = "macos")] pub fn connect_to_proxy(_proxy_port: u16) { println!("No Mac support yet. Someone mail me a Macbook and I will do it B)") } diff --git a/src-tauri/src/release.rs b/src-tauri/src/release.rs index 4341ba11e..14ef17d13 100644 --- a/src-tauri/src/release.rs +++ b/src-tauri/src/release.rs @@ -16,7 +16,6 @@ pub async fn get_latest_release() -> Release { .unwrap(); let text = response.text().await.unwrap(); - // This includes ip when github rate limits you, so avoid it for now to avoid leaks through screenshots //println!("Response: {}", text); // Parse "tag_name" from JSON diff --git a/src-tauri/src/system_helpers.rs b/src-tauri/src/system_helpers.rs index 15b82c9b4..e8c473290 100644 --- a/src-tauri/src/system_helpers.rs +++ b/src-tauri/src/system_helpers.rs @@ -390,44 +390,6 @@ pub fn install_location() -> String { } } -#[tauri::command] -pub fn set_migoto_target(window: tauri::Window, migoto_path: String) -> bool { - let mut migoto_pathbuf = PathBuf::from(migoto_path); - - migoto_pathbuf.pop(); - migoto_pathbuf.push("d3dx.ini"); - - let mut conf = match Ini::load_from_file(&migoto_pathbuf) { - Ok(c) => { - println!("Loaded migoto ini"); - c - } - Err(e) => { - println!("Error loading migoto config: {}", e); - return false; - } - }; - - window.emit("migoto_set", &()).unwrap(); - - // Set options - conf - .with_section(Some("Loader")) - .set("target", "GenshinImpact.exe"); - - // Write file - match conf.write_to_file(&migoto_pathbuf) { - Ok(_) => { - println!("Wrote config!"); - true - } - Err(e) => { - println!("Error writing config: {}", e); - false - } - } -} - #[tauri::command] pub fn set_migoto_delay(migoto_path: String) -> bool { let mut migoto_pathbuf = PathBuf::from(migoto_path); @@ -448,9 +410,18 @@ pub fn set_migoto_delay(migoto_path: String) -> bool { // Set options conf.with_section(Some("Loader")).set("delay", "20"); + conf + .with_section(Some("Include")) + .set("include", "ShaderFixes\\help.ini"); // Write file - match conf.write_to_file(&migoto_pathbuf) { + match conf.write_to_file_opt( + &migoto_pathbuf, + ini::WriteOption { + escape_policy: (ini::EscapePolicy::Nothing), + line_separator: (ini::LineSeparator::SystemDefault), + }, + ) { Ok(_) => { println!("Wrote delay!"); true @@ -483,6 +454,33 @@ pub fn wipe_registry(exec_name: String) { Ok(_) => (), Err(e) => println!("Error wiping registry: {}", e), } + + match settings.set_value( + "MIHOYOSDK_ADL_PROD_CN_h3123967166", + &Data::String("".parse().unwrap()), + ) { + Ok(_) => (), + Err(e) => println!("Error wiping registry: {}", e), + } + + let hsr_settings = match Hive::CurrentUser.open( + "Software\\Cognosphere\\Star Rail".to_string(), + Security::Write, + ) { + Ok(s) => s, + Err(e) => { + println!("Error getting registry setting: {}", e); + return; + } + }; + + match hsr_settings.set_value( + "MIHOYOSDK_ADL_PROD_OVERSEA_h1158948810", + &Data::String("".parse().unwrap()), + ) { + Ok(_) => (), + Err(e) => println!("Error wiping registry: {}", e), + } } #[cfg(windows)] diff --git a/src-tauri/src/unzip.rs b/src-tauri/src/unzip.rs index bfe415d89..2f2dcf4f7 100644 --- a/src-tauri/src/unzip.rs +++ b/src-tauri/src/unzip.rs @@ -107,7 +107,8 @@ pub fn unzip( .unwrap(); } - if zipfile.contains("GrasscutterQuests") { + // Alternate builds + if zipfile.contains("GrasscutterQuests") || zipfile.contains("Grasscutter50") { window .emit("jar_extracted", destpath.to_string() + "grasscutter.jar") .unwrap(); diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 14d214632..edadf92b7 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,5 +1,5 @@ { - "$schema": "../node_modules/@tauri-apps/cli/schema.json", + "$schema": "..\\node_modules/@tauri-apps/cli\\schema.json", "build": { "beforeDevCommand": "yarn start", "devPath": "http://localhost:3000", @@ -7,7 +7,7 @@ }, "package": { "productName": "Cultivation", - "version": "1.2.0" + "version": "1.5.1" }, "tauri": { "allowlist": { diff --git a/src/ui/App.tsx b/src/ui/App.tsx index 3c465411f..0208c024d 100644 --- a/src/ui/App.tsx +++ b/src/ui/App.tsx @@ -17,7 +17,7 @@ interface IState { } const downloadHandler = new DownloadHandler() -const DEFAULT_BG = 'https://api.grasscutter.io/cultivation/bgfile' +const WEB_BG = 'https://api.grasscutter.io/cultivation/bgfile' class App extends React.Component, IState> { constructor(props: Readonly) { @@ -25,7 +25,7 @@ class App extends React.Component, IState> { this.state = { page: 'main', - bgFile: DEFAULT_BG, + bgFile: FALLBACK_BG, } } @@ -39,8 +39,9 @@ class App extends React.Component, IState> { // Get custom bg AFTER theme is loaded !! important !! const custom_bg = await getConfigOption('custom_background') + const offline_mode = await getConfigOption('offline_mode') - if (custom_bg) { + if (custom_bg || offline_mode) { const isUrl = /^http(s)?:\/\//gm.test(custom_bg) if (!isUrl) { @@ -50,7 +51,7 @@ class App extends React.Component, IState> { this.setState( { - bgFile: isValid ? convertFileSrc(custom_bg) : DEFAULT_BG, + bgFile: isValid ? convertFileSrc(custom_bg) : FALLBACK_BG, }, this.forceUpdate ) @@ -62,7 +63,7 @@ class App extends React.Component, IState> { this.setState( { - bgFile: isValid ? custom_bg : DEFAULT_BG, + bgFile: isValid ? custom_bg : FALLBACK_BG, }, this.forceUpdate ) @@ -70,12 +71,12 @@ class App extends React.Component, IState> { } else { // Check if api bg is accessible const isDefaultValid = await invoke('valid_url', { - url: DEFAULT_BG, + url: WEB_BG, }) this.setState( { - bgFile: isDefaultValid ? DEFAULT_BG : FALLBACK_BG, + bgFile: isDefaultValid ? WEB_BG : FALLBACK_BG, }, this.forceUpdate ) @@ -86,6 +87,7 @@ class App extends React.Component, IState> { // @ts-expect-error - TS doesn't like our custom event page: e.detail, }) + this.forceUpdate }) } diff --git a/src/ui/Debug.tsx b/src/ui/Debug.tsx index 54c76fb3c..41ad966e4 100644 --- a/src/ui/Debug.tsx +++ b/src/ui/Debug.tsx @@ -15,7 +15,7 @@ async function setProxyAddress(address: string) { } async function startProxy() { - await invoke('connect', { port: 2222, certificatePath: (await dataDir()) + 'cultivation/ca' }) + await invoke('connect', { port: 2222, certificatePath: (await dataDir()) + '\\cultivation\\ca' }) await invoke('open_in_browser', { url: 'https://hoyoverse.com' }) } @@ -24,12 +24,12 @@ async function stopProxy() { } async function generateCertificates() { - await invoke('generate_ca_files', { path: (await dataDir()) + 'cultivation' }) + await invoke('generate_ca_files', { path: (await dataDir()) + '\\cultivation' }) } async function generateInfo() { console.log({ - certificatePath: (await dataDir()) + 'cultivation/ca', + certificatePath: (await dataDir()) + '\\cultivation\\ca', isAdmin: await invoke('is_elevated'), connectingTo: proxyAddress, }) diff --git a/src/ui/Main.tsx b/src/ui/Main.tsx index fb49570e2..475776f9c 100644 --- a/src/ui/Main.tsx +++ b/src/ui/Main.tsx @@ -76,8 +76,10 @@ export class Main extends React.Component { setConfigOption('grasscutter_path', payload) }) - listen('migoto_extracted', ({ payload }: { payload: string }) => { - setConfigOption('migoto_path', payload) + listen('migoto_extracted', async ({ payload }: { payload: string }) => { + await setConfigOption('migoto_path', payload) + this.setState({ migotoSet: true }) + window.location.reload() }) // Emitted for rsa replacing-purposes @@ -93,14 +95,6 @@ export class Main extends React.Component { } }) - listen('migoto_set', async () => { - this.setState({ - migotoSet: !!(await getConfigOption('migoto_path')), - }) - - window.location.reload() - }) - // Emitted for automatic processes listen('grasscutter_closed', async () => { const autoService = await getConfigOption('auto_mongodb') @@ -182,33 +176,35 @@ export class Main extends React.Component { // Update launch args to allow launching when updating from old versions await setConfigOption('launch_args', await getConfigOption('launch_args')) - // Get latest version and compare to this version - const latestVersion: { - tag_name: string - link: string - } = await invoke('get_latest_release') - const tagName = latestVersion?.tag_name.replace(/[^\d.]/g, '') - - // Check if tagName is different than current version - if (tagName && tagName !== (await getVersion())) { - // Display notification of new release - this.setState({ - notification: ( - <> - Cultivation{' '} - invoke('open_in_browser', { url: latestVersion.link })}> - {latestVersion?.tag_name} - {' '} - is now available! - - ), - }) - - setTimeout(() => { + if (!(await getConfigOption('offline_mode'))) { + // Get latest version and compare to this version + const latestVersion: { + tag_name: string + link: string + } = await invoke('get_latest_release') + const tagName = latestVersion?.tag_name.replace(/[^\d.]/g, '') + + // Check if tagName is different than current version + if (tagName && tagName !== (await getVersion())) { + // Display notification of new release this.setState({ - notification: null, + notification: ( + <> + Cultivation{' '} + invoke('open_in_browser', { url: latestVersion.link })}> + {latestVersion?.tag_name} + {' '} + is now available! + + ), }) - }, 6000) + + setTimeout(() => { + this.setState({ + notification: null, + }) + }, 6000) + } } // Period check to only show progress bar when downloading files @@ -355,7 +351,7 @@ export class Main extends React.Component { }
- +
{ }, this.forceUpdate ) - }, 500) + }, 300) } render() { @@ -211,7 +211,7 @@ export class Mods extends React.Component { { this.setSearch(text) }} diff --git a/src/ui/components/ServerLaunchSection.tsx b/src/ui/components/ServerLaunchSection.tsx index 2cfa0df7d..ef53ab8ef 100644 --- a/src/ui/components/ServerLaunchSection.tsx +++ b/src/ui/components/ServerLaunchSection.tsx @@ -17,9 +17,11 @@ import { getGameExecutable, getGameVersion, getGrasscutterJar } from '../../util import { patchGame, unpatchGame } from '../../utils/rsa' import { listen } from '@tauri-apps/api/event' import { confirm } from '@tauri-apps/api/dialog' +import DownloadHandler from '../../utils/download' interface IProps { openExtras: (playGame: () => void) => void + downloadHandler: DownloadHandler } interface IState { @@ -72,10 +74,15 @@ export default class ServerLaunchSection extends React.Component this.setPort = this.setPort.bind(this) this.toggleHttps = this.toggleHttps.bind(this) this.launchServer = this.launchServer.bind(this) + this.setButtonLabel = this.setButtonLabel.bind(this) listen('start_grasscutter', async () => { this.launchServer() }) + + listen('set_game', async () => { + this.setButtonLabel() + }) } async componentDidMount() { @@ -96,6 +103,8 @@ export default class ServerLaunchSection extends React.Component migotoSet: config.migoto_path !== '', unElevated: config.un_elevated || false, }) + + this.setButtonLabel() } async toggleGrasscutter() { @@ -140,8 +149,9 @@ export default class ServerLaunchSection extends React.Component // Connect to proxy if (config.toggle_grasscutter) { const game_exe = await getGameExecutable() + let newerGame = false - const patchable = game_exe?.toLowerCase().includes('genshin' || 'yuanshen') + const patchable = game_exe?.toLowerCase().includes('yuanshen') || game_exe?.toLowerCase().includes('genshin') if (config.patch_rsa && patchable) { const gameVersion = await getGameVersion() @@ -164,10 +174,58 @@ export default class ServerLaunchSection extends React.Component return } - const patched = await patchGame() + if (gameVersion?.major == 4 && gameVersion?.minor == 5) { + await confirm( + 'Please use Cultivation version 1.4.0 for game version 4.5. You can find that here: https://github.com/NotThorny/Cultivation/releases/tag/1.4.0' + ) + return + } + + const versionString = gameVersion?.major.toString() + gameVersion?.minor.toString() + + if ((gameVersion?.major == 4 && gameVersion?.minor > 5) || config.newer_game) { + newerGame = true + + const path = (await invoke('install_location')) as string + + const patchstring = '\\altpatch\\' + const altPatch = path + patchstring + + const ALT_PATCH = + 'https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20231030132335_iOEfPMcbrXpiA8Ca/ScatteredFiles/GenshinImpact_Data/Plugins/mihoyonet.dll' + const pExists = (await invoke('dir_exists', { + path: altPatch, + })) as boolean + + if (!pExists) { + await invoke('dir_create', { + path: altPatch, + }) + this.props.downloadHandler.addDownload(ALT_PATCH, path + '/altpatch/mihoyonet.dll') + await confirm('Please wait for the download in the bottom left to disappear, then click yes') + } + + /* For custom address patch only, used in 4.5 */ + // let httpString = 'http://' + // if (this.state.httpsEnabled) { + // httpString = 'https://' + // } + // config.launch_args = '-server=' + httpString + this.state.ip + ':' + this.state.port + } + + const patched = await patchGame(newerGame, versionString) if (!patched) { - alert('Could not patch! Try launching again, or patching manually.') + alert( + "Could not patch! You're trying to launch a version that you don't have a patch for!" + + "\nEnsure you're using a valid game version, and have the patch for this version in your Cultivation install folder." + + '\n\nIf this means nothing to you, YOU HAVE THE WRONG GAME VERSION.' + + // Add game version due to overwhelming number of people saying they are using a version they are not using + '\n\nYOUR GAME VERSION: ' + + gameVersion?.major + + '.' + + gameVersion?.minor + ) return } } @@ -186,7 +244,7 @@ export default class ServerLaunchSection extends React.Component addr: (this.state.httpsEnabled ? 'https' : 'http') + '://' + this.state.ip + ':' + this.state.port, }) // Connect to proxy - await invoke('connect', { port: 8365, certificatePath: (await dataDir()) + 'cultivation/ca' }) + await invoke('connect', { port: 8365, certificatePath: (await dataDir()) + '\\cultivation\\ca' }) } // Open server as well if the options are set @@ -314,6 +372,19 @@ export default class ServerLaunchSection extends React.Component await saveConfig(config) } + async setButtonLabel() { + const ver = await getGameVersion() + if (ver != null) { + this.setState({ + buttonLabel: (await translate('main.launch_button')) + ' ' + ver?.major + '.' + ver?.minor, + }) + } else { + this.setState({ + buttonLabel: await translate('main.launch_button'), + }) + } + } + render() { return (
diff --git a/src/ui/components/menu/Downloads.tsx b/src/ui/components/menu/Downloads.tsx index badd477cb..5b2413902 100644 --- a/src/ui/components/menu/Downloads.tsx +++ b/src/ui/components/menu/Downloads.tsx @@ -8,19 +8,23 @@ import { dataDir } from '@tauri-apps/api/path' import './Downloads.css' import Divider from './Divider' -import { getConfigOption } from '../../../utils/configuration' +import { getConfigOption, setConfigOption } from '../../../utils/configuration' import { invoke } from '@tauri-apps/api' import { listen } from '@tauri-apps/api/event' import HelpButton from '../common/HelpButton' +import { ask } from '@tauri-apps/api/dialog' -const FULL_BUILD_DOWNLOAD = 'https://github.com/NotThorny/Grasscutter/releases/download/culti-aio/GrasscutterCulti.zip' +const FULL_BUILD_DOWNLOAD = 'https://github.com/NotThorny/Grasscutter/releases/download/culti-aio/GrasscutterCulti.zip' // Change to link that can be updated without modifying here const FULL_QUEST_DOWNLOAD = 'https://github.com/NotThorny/Grasscutter/releases/download/culti-aio/GrasscutterQuests.zip' +const FULL_50_DOWNLOAD = 'https://github.com/NotThorny/Grasscutter/releases/download/culti-aio/GrasscutterLunaGC50.zip' // https://github.com/Kei-Luna/LunaGC_5.0.0 const STABLE_REPO_DOWNLOAD = 'https://github.com/Grasscutters/Grasscutter/archive/refs/heads/stable.zip' const DEV_REPO_DOWNLOAD = 'https://github.com/Grasscutters/Grasscutter/archive/refs/heads/development.zip' +const UNSTABLE_DOWNLOAD = 'https://nightly.link/Grasscutters/Grasscutter/workflows/build/unstable/Grasscutter.zip' const DEV_DOWNLOAD = 'https://nightly.link/Grasscutters/Grasscutter/workflows/build/development/Grasscutter.zip' const RESOURCES_DOWNLOAD = 'https://gitlab.com/api/v4/projects/35984297/repository/archive.zip' // Use Yuuki res as grasscutter crepe res are broken const MIGOTO_DOWNLOAD = - 'https://github.com/SilentNightSound/GI-Model-Importer/releases/download/V7.0/3dmigoto-GIMI-for-playing-mods.zip' + 'https://github.com/SilentNightSound/GI-Model-Importer/releases/download/v7.0/3dmigoto-GIMI-for-playing-mods.zip' +const MIGOTO_FALLBACK = 'https://cdn.discordapp.com/attachments/615655311960965130/1177724469847003268/GIMI7.zip' // Since main dl fails for a few too many users interface IProps { closeFn: () => void @@ -56,8 +60,10 @@ export default class Downloads extends React.Component { this.getGrasscutterFolder = this.getGrasscutterFolder.bind(this) this.downloadGrasscutterFullBuild = this.downloadGrasscutterFullBuild.bind(this) this.downloadGrasscutterFullQuest = this.downloadGrasscutterFullQuest.bind(this) + this.downloadGrasscutterFull50 = this.downloadGrasscutterFull50.bind(this) this.downloadGrasscutterStableRepo = this.downloadGrasscutterStableRepo.bind(this) this.downloadGrasscutterDevRepo = this.downloadGrasscutterDevRepo.bind(this) + this.downloadGrasscutterUnstable = this.downloadGrasscutterUnstable.bind(this) this.downloadGrasscutterLatest = this.downloadGrasscutterLatest.bind(this) this.downloadResources = this.downloadResources.bind(this) this.downloadMigoto = this.downloadMigoto.bind(this) @@ -76,6 +82,19 @@ export default class Downloads extends React.Component { this.setState({ grasscutter_set: true }, this.forceUpdate) }) + // Listen for GIMI failure to initiate fallback + listen('download_error', ({ payload }) => { + // @ts-expect-error shut up typescript + const errorData: { + path: string + error: string + } = payload + + if (errorData.path.includes('GIMI.zip')) { + this.downloadMigotoFallback() + } + }) + if (!gc_path || gc_path === '') { this.setState({ grasscutter_set: false, @@ -85,15 +104,15 @@ export default class Downloads extends React.Component { return } - const path = gc_path.substring(0, gc_path.lastIndexOf('/')) + const path = gc_path.substring(0, gc_path.lastIndexOf('\\')) if (gc_path) { const resources_exist: boolean = ((await invoke('dir_exists', { - path: path + '/resources', + path: path + '\\resources', })) as boolean) && (!(await invoke('dir_is_empty', { - path: path + '/resources', + path: path + '\\resources', })) as boolean) this.setState({ @@ -110,7 +129,7 @@ export default class Downloads extends React.Component { // Set to default if not set if (!path || path === '') { const appdata = await dataDir() - folderPath = appdata + 'cultivation/grasscutter' + folderPath = appdata + 'cultivation\\grasscutter' // Early return since its formatted properly return folderPath @@ -133,8 +152,8 @@ export default class Downloads extends React.Component { async downloadGrasscutterFullBuild() { const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(FULL_BUILD_DOWNLOAD, folder + '/GrasscutterCulti.zip', async () => { - await unzip(folder + '/GrasscutterCulti.zip', folder + '/', true) + this.props.downloadManager.addDownload(FULL_BUILD_DOWNLOAD, folder + '\\GrasscutterCulti.zip', async () => { + await unzip(folder + '\\GrasscutterCulti.zip', folder + '\\', true) this.toggleButtons() }) @@ -143,8 +162,18 @@ export default class Downloads extends React.Component { async downloadGrasscutterFullQuest() { const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(FULL_QUEST_DOWNLOAD, folder + '/GrasscutterQuests.zip', async () => { - await unzip(folder + '/GrasscutterQuests.zip', folder + '/', true) + this.props.downloadManager.addDownload(FULL_QUEST_DOWNLOAD, folder + '\\GrasscutterQuests.zip', async () => { + await unzip(folder + '\\GrasscutterQuests.zip', folder + '\\', true) + this.toggleButtons() + }) + + this.toggleButtons() + } + + async downloadGrasscutterFull50() { + const folder = await this.getGrasscutterFolder() + this.props.downloadManager.addDownload(FULL_50_DOWNLOAD, folder + '\\Grasscutter50.zip', async () => { + await unzip(folder + '\\Grasscutter50.zip', folder + '\\', true) this.toggleButtons() }) @@ -153,8 +182,8 @@ export default class Downloads extends React.Component { async downloadGrasscutterStableRepo() { const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(STABLE_REPO_DOWNLOAD, folder + '/grasscutter_repo.zip', async () => { - await unzip(folder + '/grasscutter_repo.zip', folder + '/', true) + this.props.downloadManager.addDownload(STABLE_REPO_DOWNLOAD, folder + '\\grasscutter_repo.zip', async () => { + await unzip(folder + '\\grasscutter_repo.zip', folder + '\\', true) this.toggleButtons() }) @@ -163,18 +192,28 @@ export default class Downloads extends React.Component { async downloadGrasscutterDevRepo() { const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(DEV_REPO_DOWNLOAD, folder + '/grasscutter_repo.zip', async () => { - await unzip(folder + '/grasscutter_repo.zip', folder + '/', true) + this.props.downloadManager.addDownload(DEV_REPO_DOWNLOAD, folder + '\\grasscutter_repo.zip', async () => { + await unzip(folder + '\\grasscutter_repo.zip', folder + '\\', true) this.toggleButtons() }) this.toggleButtons() } + async downloadGrasscutterUnstable() { + const folder = await this.getGrasscutterFolder() + this.props.downloadManager.addDownload(UNSTABLE_DOWNLOAD, folder + '\\grasscutter.zip', async () => { + await unzip(folder + '\\grasscutter.zip', folder + '\\', true) + this.toggleButtons + }) + + this.toggleButtons() + } + async downloadGrasscutterLatest() { const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(DEV_DOWNLOAD, folder + '/grasscutter.zip', async () => { - await unzip(folder + '/grasscutter.zip', folder + '/', true) + this.props.downloadManager.addDownload(DEV_DOWNLOAD, folder + '\\grasscutter.zip', async () => { + await unzip(folder + '\\grasscutter.zip', folder + '\\', true) this.toggleButtons() }) @@ -185,27 +224,38 @@ export default class Downloads extends React.Component { } async downloadResources() { + // Tell the user this is not needed in most cases + if ( + !(await ask( + 'These are not needed if you have already downloaded the All-in-One!! \nAre you sure you want to continue this download?' + )) + ) { + // If refusing confirmation + return + } + // Tell the user this takes some time alert( 'Extracting resources can take time! If your resources appear to be "stuck" extracting for less than 15-20 mins, they likely still are extracting.' ) + const folder = await this.getGrasscutterFolder() - this.props.downloadManager.addDownload(RESOURCES_DOWNLOAD, folder + '/resources.zip', async () => { + this.props.downloadManager.addDownload(RESOURCES_DOWNLOAD, folder + '\\resources.zip', async () => { // Delete the existing folder if it exists if ( await invoke('dir_exists', { - path: folder + '/resources', + path: folder + '\\resources', }) ) { await invoke('dir_delete', { - path: folder + '/resources', + path: folder + '\\resources', }) } - await unzip(folder + '/resources.zip', folder + '/', true) + await unzip(folder + '\\resources.zip', folder + '\\', true) // Rename folder to resources invoke('rename', { - path: folder + '/Resources', + path: folder + '\\Resources', newName: 'resources', }) @@ -216,13 +266,27 @@ export default class Downloads extends React.Component { } async downloadMigoto() { - const folder = (await this.getCultivationFolder()) + '/3dmigoto' - await invoke('dir_create', { - path: folder, + if (!this.state.swag) { + await setConfigOption('swag_mode', true) + this.setState({ swag: true }) + await setConfigOption('last_extras', { migoto: true, akebi: false, reshade: false }) + } + + const folder = await this.getCultivationFolder() + + this.props.downloadManager.addDownload(MIGOTO_DOWNLOAD, folder + '\\GIMI.zip', async () => { + await unzip(folder + '\\GIMI.zip', folder + '\\', true, true) + this.toggleButtons() }) - this.props.downloadManager.addDownload(MIGOTO_DOWNLOAD, folder + '/GIMI-3dmigoto.zip', async () => { - await unzip(folder + '/GIMI-3dmigoto.zip', folder + '/', true) + this.toggleButtons() + } + + async downloadMigotoFallback() { + const folder = await this.getCultivationFolder() + + this.props.downloadManager.addDownload(MIGOTO_FALLBACK, folder + '\\GIMI7.zip', async () => { + await unzip(folder + '\\GIMI7.zip', folder + '\\', true, true) this.toggleButtons() }) @@ -256,7 +320,6 @@ export default class Downloads extends React.Component {
-
{
-
@@ -276,18 +338,38 @@ export default class Downloads extends React.Component {
+
+ {/*
+
+ + +
+
+ + + +
+
*/}
{
-
+ {/*
+
+ + +
+
+ + + +
+
*/} + {/*
{
-
+
*/}
@@ -344,25 +447,23 @@ export default class Downloads extends React.Component {
- {this.state.swag && ( - <> - -
- + <> + +
+ +
+
+
+ +
-
-
- - -
-
- - - -
+
+ + +
- - )} +
+ ) } diff --git a/src/ui/components/menu/Game.tsx b/src/ui/components/menu/Game.tsx index 384a77538..c623ba58a 100644 --- a/src/ui/components/menu/Game.tsx +++ b/src/ui/components/menu/Game.tsx @@ -45,8 +45,8 @@ export default class Downloads extends React.Component { async downloadGame() { const folder = this.state.gameDownloadFolder - this.props.downloadManager.addDownload(GAME_DOWNLOAD, folder + '/game.zip', async () => { - await unzip(folder + '/game.zip', folder + '/', true) + this.props.downloadManager.addDownload(GAME_DOWNLOAD, folder + '\\game.zip', async () => { + await unzip(folder + '\\game.zip', folder + '\\', true) this.setState({ gameDownloading: false, }) diff --git a/src/ui/components/menu/Options.tsx b/src/ui/components/menu/Options.tsx index f77d5dabe..3b5c9f593 100644 --- a/src/ui/components/menu/Options.tsx +++ b/src/ui/components/menu/Options.tsx @@ -16,8 +16,11 @@ import DownloadHandler from '../../../utils/download' import * as meta from '../../../utils/rsa' import HelpButton from '../common/HelpButton' import SmallButton from '../common/SmallButton' -import { confirm } from '@tauri-apps/api/dialog' +import { ask, confirm } from '@tauri-apps/api/dialog' import TextInput from '../common/TextInput' +import { unzip } from '../../../utils/zipUtils' +import { getGameExecutable } from '../../../utils/game' +import { emit } from '@tauri-apps/api/event' export enum GrasscutterElevation { None = 'None', @@ -52,6 +55,8 @@ interface IState { un_elevated: boolean redirect_more: boolean launch_args: string + offline_mode: boolean + newer_game: boolean // Linux stuff grasscutter_elevation: string @@ -88,6 +93,8 @@ export default class Options extends React.Component { un_elevated: false, redirect_more: false, launch_args: '', + offline_mode: false, + newer_game: false, // Linux stuff grasscutter_elevation: GrasscutterElevation.None, @@ -118,13 +125,10 @@ export default class Options extends React.Component { const languages = await getLanguages() const platform: string = await invoke('get_platform') - let encEnabled - if (config.grasscutter_path) { - // Remove jar from path - const path = config.grasscutter_path.replace(/\\/g, '/') - const folderPath = path.substring(0, path.lastIndexOf('/')) - encEnabled = await server.encryptionEnabled(folderPath + '/config.json') - } + // Remove jar from path + const path = config.grasscutter_path.replace(/\\/g, '/') + const folderPath = path.substring(0, path.lastIndexOf('/')) + const encEnabled = await server.encryptionEnabled(folderPath + '/config.json') console.log(platform) @@ -150,6 +154,8 @@ export default class Options extends React.Component { un_elevated: config.un_elevated || false, redirect_more: config.redirect_more || false, launch_args: config.launch_args, + offline_mode: config.offline_mode || false, + newer_game: config.newer_game || false, // Linux stuff grasscutter_elevation: config.grasscutter_elevation || GrasscutterElevation.None, @@ -163,22 +169,28 @@ export default class Options extends React.Component { this.forceUpdate() } - setGameExecutable(value: string) { - setConfigOption('game_install_path', value) + async setGameExecutable(value: string) { + await setConfigOption('game_install_path', value) // I hope this stops people setting launcher.exe because oml it's annoying - if (value.endsWith('launcher.exe')) { + if (value.endsWith('launcher.exe') || value.endsWith('.lnk')) { const pathArr = value.replace(/\\/g, '/').split('/') pathArr.pop() const path = pathArr.join('/') + '/Genshin Impact Game/' - alert( - `You have set your game execuatable to "launcher.exe". You should not do this. Your game executable is located in:\n\n${path}` - ) + if (value.endsWith('.lnk')) { + alert( + 'You have set your game executable to a shortcut. You should not do this. Your patching will not work, and your proxy may shut off unexpectedly.' + ) + } else { + alert( + `You have set your game execuatable to "launcher.exe". You should not do this. Your game executable is located in:\n\n${path}` + ) + } } // If setting any other game, automatically set to redirect more - if (!value.toLowerCase().includes('genshin' || 'yuanshen')) { + if (!value.toLowerCase().includes('genshin') || !value.toLowerCase().includes('yuanshen')) { if (!this.state.redirect_more) { this.toggleOption('redirect_more') } @@ -187,26 +199,24 @@ export default class Options extends React.Component { this.setState({ game_install_path: value, }) + + emit('set_game', { game_path: value }) } async setGrasscutterJar(value: string) { setConfigOption('grasscutter_path', value) - - this.setState({ - grasscutter_path: value, - }) - const config = await getConfig() const path = config.grasscutter_path.replace(/\\/g, '/') const folderPath = path.substring(0, path.lastIndexOf('/')) const encEnabled = await server.encryptionEnabled(folderPath + '/config.json') - // Update encryption button when setting new jar this.setState({ + grasscutter_path: value, encryption: encEnabled, }) - window.location.reload() + // Encryption refuses to re-render w/o reload unless updated twice + this.forceUpdateEncyption() } setJavaPath(value: string) { @@ -267,7 +277,7 @@ export default class Options extends React.Component { if (!isUrl) { const filename = value.replace(/\\/g, '/').split('/').pop() - const localBgPath = (await dataDir()).replace(/\\/g, '/') + const localBgPath = ((await dataDir()) as string).replace(/\\/g, '/') await setConfigOption('custom_background', `${localBgPath}/cultivation/bg/${filename}`) @@ -284,6 +294,16 @@ export default class Options extends React.Component { } } + async forceUpdateEncyption() { + const config = await getConfig() + const path = config.grasscutter_path.replace(/\\/g, '/') + const folderPath = path.substring(0, path.lastIndexOf('/')) + + this.setState({ + encryption: await server.encryptionEnabled(folderPath + '/config.json'), + }) + } + async toggleEncryption() { const config = await getConfig() @@ -343,6 +363,15 @@ export default class Options extends React.Component { } async addMigotoDelay() { + if ( + !(await ask( + 'Set delay for 3dmigoto loader? This is specifically made for GIMI v6 and earlier. Using it on latest GIMI or SRMI will cause issues!!! \n\nWould you like to continue?', + { title: 'GIMI Delay', type: 'warning' } + )) + ) { + return + } + invoke('set_migoto_delay', { migotoPath: this.state.migoto_path, }) @@ -355,6 +384,15 @@ export default class Options extends React.Component { } async deleteWebCache() { + if (await ask('Would you like to clear login cache? Yes to clear login cache. No to clear web cache.')) { + await invoke('wipe_registry', { + // The exe is always PascalCase so we can get the dir using regex + execName: (await getGameExecutable())?.split('.exe')[0].replace(/([a-z\d])([A-Z])/g, '$1 $2'), + }) + alert('Cleared login cache!') + return + } + alert('Cultivation may freeze for a moment while this occurs!') // Get webCaches folder path @@ -364,8 +402,70 @@ export default class Options extends React.Component { const path2 = pathArr.join('/') + '/Yuanshen_Data/webCaches' // Delete the folder - await invoke('dir_delete', { path: path }) - await invoke('dir_delete', { path: path2 }) + if (await invoke('dir_exists', { path: path })) { + await invoke('dir_delete', { path: path }) + } + if (await invoke('dir_exists', { path: path2 })) { + await invoke('dir_delete', { path: path2 }) + } + } + + async fixRes() { + const config = await getConfig() + + const path = config.grasscutter_path.replace(/\\/g, '/') + let folderPath = path.substring(0, path.lastIndexOf('/')) + + // Set to default if not set + if (!path || path === '') { + const appdata = await dataDir() + folderPath = appdata + 'cultivation\\grasscutter' + } + + if (path.includes('/')) { + folderPath = path.substring(0, path.lastIndexOf('/')) + } else { + folderPath = path.substring(0, path.lastIndexOf('\\')) + } + + // Check if Grasscutter path exists + if (folderPath.length < 1) { + alert('Grasscutter not installed or not set! This option can only work when it is installed.') + return + } + + // Check if resources zip exists + if ( + !(await invoke('dir_exists', { + path: folderPath + '\\GC-Resources-4.0.zip', + })) + ) { + alert('Resources are already unzipped or do not exist! Ensure your resources zip is named "GC-Resources-4.0.zip"') + return + } + + alert( + 'This may fix white screen issues on login! Please be patient while extraction occurs, it may take some time (5-10 minutes). \n\n !! You will be alerted when it is done !!' + ) + + // Unzip resources + await unzip(folderPath + '\\GC-Resources-4.0.zip', folderPath + '\\', true) + // Rename folder to resources + invoke('rename', { + path: folderPath + '\\Resources', + newName: 'resources', + }) + + // Update config.json to read from folder + await server.changeResourcePath(folderPath + '/config.json') + + // Check if Grasscutter is running, and restart if so to apply changes + if (await invoke('is_grasscutter_running')) { + alert('Automatically restarting Grasscutter for changes to apply!') + await invoke('restart_grasscutter') + } + + alert('Resource fixing finished! Please launch the server again and try playing.') } async toggleOption(opt: keyof Configuration) { @@ -542,7 +642,7 @@ export default class Options extends React.Component {
@@ -599,6 +699,31 @@ export default class Options extends React.Component {
) : null} + + + @@ -709,6 +834,15 @@ export default class Options extends React.Component { value={this.state.launch_args} /> + + + ) } diff --git a/src/ui/components/news/NewsSection.tsx b/src/ui/components/news/NewsSection.tsx index b5e279b6e..62b2487eb 100644 --- a/src/ui/components/news/NewsSection.tsx +++ b/src/ui/components/news/NewsSection.tsx @@ -2,6 +2,7 @@ import { invoke } from '@tauri-apps/api/tauri' import React from 'react' import Tr from '../../../utils/language' +import { getConfig, getConfigOption } from '../../../utils/configuration' import './NewsSection.css' @@ -10,6 +11,7 @@ interface IProps { } interface IState { + offline: boolean selected: string news?: JSX.Element commitList?: JSX.Element[] @@ -40,6 +42,7 @@ export default class NewsSection extends React.Component { super(props) this.state = { + offline: false, selected: props.selected || 'commits', } @@ -47,7 +50,16 @@ export default class NewsSection extends React.Component { this.showNews = this.showNews.bind(this) } - componentDidMount() { + async componentDidMount() { + const config = await getConfig() + this.setState({ + offline: config.offline_mode || false, + }) + + // If offline, don't call news + if (this.state.offline) { + return + } // Call showNews off the bat this.showNews() this.setSelected('commits') @@ -110,6 +122,11 @@ export default class NewsSection extends React.Component { } async showNews() { + const offline_mode = await getConfigOption('offline_mode') + if (offline_mode) { + return + } + let news: JSX.Element | JSX.Element[] = switch (this.state.selected) { @@ -124,7 +141,10 @@ export default class NewsSection extends React.Component { case 'latest_version': news = ( - Latest version: Grasscutter 1.7.0 - Cultivation 1.2.0 + + Work in progress area! These numbers may be outdated, so please do not use them as reference. Latest + version: Grasscutter 1.7.4 - Cultivation 1.5.1 + ) break @@ -144,6 +164,10 @@ export default class NewsSection extends React.Component { } render() { + if (this.state.offline) { + return null + } + return (
diff --git a/src/utils/configuration.ts b/src/utils/configuration.ts index 9d7e777a0..c00eabfdc 100644 --- a/src/utils/configuration.ts +++ b/src/utils/configuration.ts @@ -29,6 +29,8 @@ let defaultConfig: Configuration un_elevated: false, redirect_more: false, launch_args: '', + offline_mode: false, + newer_game: false, // Linux stuff grasscutter_elevation: 'None', @@ -64,6 +66,8 @@ export interface Configuration { un_elevated: boolean redirect_more: boolean launch_args: string + offline_mode: boolean + newer_game: boolean // Linux stuff grasscutter_elevation: string @@ -128,7 +132,7 @@ async function readConfigFile() { await fs.createDir(local + 'cultivation').catch((e) => console.log(e)) } - const innerDirs = await fs.readDir(local + 'cultivation') + const innerDirs = await fs.readDir(local + '/cultivation') // Create grasscutter dir for potential installation if (!innerDirs.find((fileOrDir) => fileOrDir?.name === 'grasscutter')) { diff --git a/src/utils/download.ts b/src/utils/download.ts index ebbccdce6..d8160b81c 100644 --- a/src/utils/download.ts +++ b/src/utils/download.ts @@ -73,6 +73,11 @@ export default class DownloadHandler { const index = this.downloads.findIndex((download) => download.path === errorData.path) this.downloads[index].status = 'error' this.downloads[index].error = errorData.error + + // Remove GIMI from list as fallback will replace it + if (errorData.path.includes('GIMI.zip')) { + this.downloads.splice(index, 1) + } }) // Extraction events @@ -92,6 +97,9 @@ export default class DownloadHandler { // Find the download that is not extracting and set it's status as such const index = this.downloads.findIndex((download) => download.path === obj.file) this.downloads[index].status = 'finished' + + // Remove completed extraction from list + this.downloads.splice(index, 1) }) } diff --git a/src/utils/game.ts b/src/utils/game.ts index 0c17edd48..119fd4590 100644 --- a/src/utils/game.ts +++ b/src/utils/game.ts @@ -45,7 +45,7 @@ export async function getGameDataFolder() { return null } - return (await getGameFolder()) + '/' + gameExec.replace('.exe', '_Data') + return (await getGameFolder()) + '\\' + gameExec.replace('.exe', '_Data') } export async function getGameVersion() { @@ -55,9 +55,33 @@ export async function getGameVersion() { return null } + const hasAsb = await invoke('dir_exists', { + path: GameData + '\\StreamingAssets\\asb_settings.json', + }) + + if (!hasAsb) { + // For games that cannot determine game version + const otherGameVer: string = await invoke('read_file', { + path: GameData + '\\StreamingAssets\\BinaryVersion.bytes', + }) + const versionRaw = otherGameVer.split('.') + const version = { + major: parseInt(versionRaw[0]), + minor: parseInt(versionRaw[1]), + // This will probably never matter, just use major/minor. If needed, full version values are near EOF + release: 0, + } + + if (otherGameVer == null || otherGameVer.length < 1) { + return null + } + + return version + } + const settings = JSON.parse( await invoke('read_file', { - path: GameData + '/StreamingAssets/asb_settings.json', + path: GameData + '\\StreamingAssets\\asb_settings.json', }) ) diff --git a/src/utils/language.ts b/src/utils/language.ts index 76dcde86f..edd186290 100644 --- a/src/utils/language.ts +++ b/src/utils/language.ts @@ -65,7 +65,7 @@ export default class Tr extends React.Component { }) } else { this.setState({ - translated_text: translation_obj[text] || '', + translated_text: translation_obj[text] || text, }) } } diff --git a/src/utils/rsa.ts b/src/utils/rsa.ts index 657331042..4beed9d23 100644 --- a/src/utils/rsa.ts +++ b/src/utils/rsa.ts @@ -1,8 +1,8 @@ import { invoke } from '@tauri-apps/api' // Patch file from: https://github.com/34736384/RSAPatch/ -export async function patchGame() { - return invoke('patch_game') +export async function patchGame(newerGame: boolean, version: string) { + return invoke('patch_game', { newerGame, version }) } export async function unpatchGame() { diff --git a/src/utils/server.ts b/src/utils/server.ts index e1e572c88..4572fc2b6 100644 --- a/src/utils/server.ts +++ b/src/utils/server.ts @@ -40,5 +40,32 @@ export async function encryptionEnabled(path: string) { return false } - return serverConf.server.http.encryption.useEncryption + if ('server' in serverConf) { + return serverConf.server.http.encryption.useEncryption + } + + return false +} + +export async function changeResourcePath(path: string) { + let serverConf + + try { + serverConf = JSON.parse( + await invoke('read_file', { + path, + }) + ) + } catch (e) { + console.log(`Server config at ${path} not found or invalid. Be sure to run the server at least once to generate it`) + return + } + + serverConf.folderStructure.resources = './resources/' + + // Write file + await invoke('write_file', { + path, + contents: JSON.stringify(serverConf, null, 2), + }) } diff --git a/src/utils/themes.ts b/src/utils/themes.ts index 11d3b155d..c7afe4f3a 100644 --- a/src/utils/themes.ts +++ b/src/utils/themes.ts @@ -40,7 +40,7 @@ const defaultTheme = { export async function getThemeList() { // Do some invoke to backend to get the theme list const themes = (await invoke('get_theme_list', { - dataDir: `${await dataDir()}cultivation`, + dataDir: `${await dataDir()}/cultivation`, })) as BackendThemeList[] const list: ThemeList[] = [ // ALWAYS include default theme