diff --git a/.cargo/config.toml.mustache b/.cargo/config.toml.mustache index 08036d93..8e682e1a 100644 --- a/.cargo/config.toml.mustache +++ b/.cargo/config.toml.mustache @@ -32,6 +32,3 @@ linker = "clang" rustflags = ["-C", "link-args=-fuse-ld={{{linker}}}"] {{/hasLLD}} {{/isLinux}} - -[alias] -prisma = "run -p onelauncher_prisma_cli --bin prisma --" diff --git a/.github/actions/setup-rust/action.yml b/.github/actions/setup-rust/action.yml index 5029c4ec..3fd88d7d 100644 --- a/.github/actions/setup-rust/action.yml +++ b/.github/actions/setup-rust/action.yml @@ -40,47 +40,3 @@ runs: - name: Prepare Cargo shell: bash run: echo '{}' | npx -y mustache - .cargo/config.toml.mustache .cargo/config.toml - - - name: Prisma Cache - id: prisma-cache - uses: actions/cache/restore@v4 - with: - key: prisma-v1-${{ runner.os }}-${{ hashFiles('./packages/core/prisma/*', './Cargo.*') }} - path: packages/prisma/src/**/*.rs - - - name: Generate Prisma - if: ${{ steps.prisma-cache.outputs.cache-hit != 'true' }} - shell: bash - run: | - set -euxo pipefail - npx -y prisma generate --schema packages/core/prisma/schema.prisma - - if ! [ -f packages/prisma/src/prisma/mod.rs ]; then - echo "prisma generation failed" >&2 - exit 1 - fi - - npx -y prisma migrate dev --schema packages/core/prisma/schema.prisma -n test --create-only --skip-generate - _new_migrations="$( - git ls-files --others --exclude-standard \ - | { grep '^prisma/migrations/' || true; } \ - | xargs sh -euxc '[ "$#" -lt 2 ] || grep -L "$@" || true' sh 'empty migration' \ - | wc -l \ - | awk '{$1=$1};1' - )" - if [ "$_new_migrations" -gt 0 ]; then - echo "::error file=packages/core/prisma/schema.prisma,title=missing migration::new migration should be generated due to changes in prisma schema" - case "$GITHUB_REF" in - "refs/heads/main" | "refs/heads/gh-readonly-queue/main/"* | "refs/tags/"*) - exit 1 - ;; - esac - fi - - - name: Save Prisma Cache - id: prisma-cache-save - if: ${{ steps.prisma-cache.outputs.cache-hit != 'true' && (github.ref == 'refs/heads/main' || inputs.save-cache == 'true') }} - uses: actions/cache/save@v4 - with: - key: ${{ steps.cache-prisma-restore.outputs.cache-primary-key }} - path: packages/prisma/src/**/*.rs diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index db0c132c..5557aa96 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -23,9 +23,7 @@ jobs: run: echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} + 1))" >> "${GITHUB_ENV}" - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - fetch-depth: ${{ env.PR_FETCH_DEPTH }} + uses: actions/checkout@4 - name: Setup Pnpm uses: ./.github/actions/setup-pnpm @@ -38,6 +36,10 @@ jobs: name: Rust Checks runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v4 + - name: Install system packages + + - name: Checkout + uses: actions/checkout@v4 + - name: Run Clippy run: cargo clippy --all-targets --all-features diff --git a/.gitignore b/.gitignore index 6a5e4381..02f7b27e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ -crates/prisma/src/prisma.rs dev.db dev.db-journal .cargo/config.toml diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 030db4a5..20cdd5ec 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -6,7 +6,6 @@ "oscarbeaumont.rspc-vscode", // RSPC is a framework for Routers. "antfu.unocss", // Provides UnoCSS intellisense. "EditorConfig.EditorConfig", // Maintains consistent coding styles. - "prisma.prisma", // Prisma is an open-source ORM database toolkit. "dbaeumer.vscode-eslint" // Code formatting using ESLint. ] } diff --git a/Cargo.lock b/Cargo.lock index d69f9fe3..aa81e667 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -70,17 +70,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom 0.2.15", - "once_cell", - "version_check", -] - [[package]] name = "ahash" version = "0.8.11" @@ -93,15 +82,6 @@ dependencies = [ "zerocopy", ] -[[package]] -name = "aho-corasick" -version = "0.7.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" -dependencies = [ - "memchr", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -181,7 +161,7 @@ dependencies = [ "objc2", "objc2-app-kit", "objc2-foundation", - "parking_lot 0.12.3", + "parking_lot", "windows-sys 0.48.0", "x11rb", ] @@ -209,12 +189,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -[[package]] -name = "ascii" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" - [[package]] name = "ashpd" version = "0.9.2" @@ -455,15 +429,6 @@ dependencies = [ "system-deps", ] -[[package]] -name = "atomic-shim" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cd4b51d303cf3501c301e8125df442128d3c6d7c69f71b27833d253de47e77" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -514,34 +479,12 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "base-x" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" - [[package]] name = "base16ct" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" -[[package]] -name = "base36" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9c26bddc1271f7112e5ec797e8eeba6de2de211c1488e506b9500196dbf77c5" -dependencies = [ - "base-x", - "failure", -] - -[[package]] -name = "base64" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" - [[package]] name = "base64" version = "0.13.1" @@ -566,31 +509,6 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" -[[package]] -name = "bigdecimal" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" -dependencies = [ - "num-bigint", - "num-integer", - "num-traits", -] - -[[package]] -name = "bigdecimal" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d712318a27c7150326677b321a5fa91b55f6d9034ffd67f20319e147d40cee" -dependencies = [ - "autocfg", - "libm", - "num-bigint", - "num-integer", - "num-traits", - "serde", -] - [[package]] name = "bincode" version = "1.3.3" @@ -633,7 +551,7 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" dependencies = [ - "digest 0.10.7", + "digest", ] [[package]] @@ -653,15 +571,6 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -729,21 +638,6 @@ version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c360505aed52b7ec96a3636c3f039d99103c37d1d9b4f7a8c743d3ea9ffcd03b" -[[package]] -name = "builtin-psl-connectors" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "connection-string", - "either", - "enumflags2", - "indoc 2.0.5", - "lsp-types", - "once_cell", - "psl-core", - "regex", -] - [[package]] name = "bumpalo" version = "3.16.0" @@ -985,7 +879,7 @@ dependencies = [ "cocoa-foundation", "core-foundation 0.10.0", "core-graphics 0.24.0", - "foreign-types 0.5.0", + "foreign-types", "libc", "objc", ] @@ -1010,29 +904,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" -[[package]] -name = "colored" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" -dependencies = [ - "lazy_static", - "windows-sys 0.48.0", -] - -[[package]] -name = "combine" -version = "3.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680" -dependencies = [ - "ascii", - "byteorder", - "either", - "memchr", - "unreachable", -] - [[package]] name = "combine" version = "4.6.7" @@ -1052,12 +923,6 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "connection-string" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510ca239cf13b7f8d16a2b48f263de7b4f8c566f0af58d901031473c76afb1e3" - [[package]] name = "console" version = "0.15.8" @@ -1115,21 +980,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" -[[package]] -name = "convert_case" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4a24b1aaf0fd0ce8b45161144d6f42cd91677fd5940fd431183eb023b3a2b8" - -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "core-foundation" version = "0.9.4" @@ -1165,7 +1015,7 @@ dependencies = [ "bitflags 1.3.2", "core-foundation 0.9.4", "core-graphics-types 0.1.3", - "foreign-types 0.5.0", + "foreign-types", "libc", ] @@ -1178,7 +1028,7 @@ dependencies = [ "bitflags 2.6.0", "core-foundation 0.10.0", "core-graphics-types 0.2.0", - "foreign-types 0.5.0", + "foreign-types", "libc", ] @@ -1354,41 +1204,6 @@ dependencies = [ "cipher", ] -[[package]] -name = "cuid" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7fe01ebbba358b9af4850d1a2b16d45f765137398e34134643790f19dc935a0" -dependencies = [ - "base36", - "cuid-util", - "cuid2", - "hostname", - "num", - "once_cell", - "rand 0.8.5", - "uuid 1.10.0", -] - -[[package]] -name = "cuid-util" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d59a706635108a7e8eaae7ec8e6154504fafa4a415ef38690d94fccea051757" - -[[package]] -name = "cuid2" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50e281dc36864ea88fae2ec4e21eb280e8239487acb1ddc59b528b0afa7997bd" -dependencies = [ - "cuid-util", - "getrandom 0.2.15", - "num", - "rand 0.8.5", - "sha3", -] - [[package]] name = "curve25519-dalek" version = "4.1.3" @@ -1398,7 +1213,7 @@ dependencies = [ "cfg-if", "cpufeatures", "curve25519-dalek-derive", - "digest 0.10.7", + "digest", "fiat-crypto", "rustc_version", "subtle", @@ -1463,17 +1278,6 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" -[[package]] -name = "datamodel-renderer" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "base64 0.13.1", - "once_cell", - "psl", - "regex", -] - [[package]] name = "deflate64" version = "0.1.9" @@ -1529,53 +1333,25 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case 0.4.0", + "convert_case", "proc-macro2", "quote", "rustc_version", "syn 2.0.79", ] -[[package]] -name = "diagnostics" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "colored", - "indoc 2.0.5", - "pest", -] - -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - [[package]] name = "digest" version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", + "block-buffer", "const-oid", "crypto-common", "subtle", ] -[[package]] -name = "directories" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f51c5d4ddabd36886dd3e1438cb358cdcb0d7c499cb99cb4ac2e38e18b5cb210" -dependencies = [ - "dirs-sys 0.3.7", -] - [[package]] name = "dirs" version = "4.0.0" @@ -1708,35 +1484,6 @@ dependencies = [ "const-random", ] -[[package]] -name = "dmmf" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "bigdecimal 0.3.1", - "indexmap 1.9.3", - "prisma-models", - "psl", - "schema", - "serde", - "serde_json", -] - -[[package]] -name = "document-features" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" -dependencies = [ - "litrs", -] - -[[package]] -name = "dotenvy" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" - [[package]] name = "dotenvy" version = "0.15.7" @@ -1791,7 +1538,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" dependencies = [ "der", - "digest 0.10.7", + "digest", "elliptic-curve", "rfc6979", "signature", @@ -1818,7 +1565,7 @@ dependencies = [ "hashbrown 0.14.5", "hex", "rand_core 0.6.4", - "sha2 0.10.8", + "sha2", "zeroize", ] @@ -1836,7 +1583,7 @@ checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ "base16ct", "crypto-bigint", - "digest 0.10.7", + "digest", "ff", "generic-array", "group", @@ -1859,7 +1606,7 @@ dependencies = [ "rustc_version", "toml 0.8.2", "vswhom", - "winreg 0.52.0", + "winreg", ] [[package]] @@ -1889,12 +1636,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf" -[[package]] -name = "endian-type" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" - [[package]] name = "enumflags2" version = "0.7.10" @@ -1985,40 +1726,6 @@ dependencies = [ "zune-inflate", ] -[[package]] -name = "failure" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" -dependencies = [ - "backtrace", - "failure_derive", -] - -[[package]] -name = "failure_derive" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "synstructure", -] - -[[package]] -name = "fallible-iterator" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" - -[[package]] -name = "fallible-streaming-iterator" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" - [[package]] name = "fastrand" version = "2.1.1" @@ -2072,12 +1779,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "fixedbitset" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33" - [[package]] name = "flate2" version = "1.0.34" @@ -2112,15 +1813,6 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared 0.1.1", -] - [[package]] name = "foreign-types" version = "0.5.0" @@ -2128,7 +1820,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" dependencies = [ "foreign-types-macros", - "foreign-types-shared 0.3.1", + "foreign-types-shared", ] [[package]] @@ -2142,12 +1834,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - [[package]] name = "foreign-types-shared" version = "0.3.1" @@ -2266,12 +1952,6 @@ version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" -[[package]] -name = "futures-timer" -version = "3.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" - [[package]] name = "futures-util" version = "0.3.30" @@ -2565,16 +2245,6 @@ dependencies = [ "system-deps", ] -[[package]] -name = "graphql-parser" -version = "0.3.0" -source = "git+https://github.com/prisma/graphql-parser#6a3f58bd879065588e710cb02b5bd30c1ce182c3" -dependencies = [ - "combine 3.8.1", - "indexmap 1.9.3", - "thiserror", -] - [[package]] name = "group" version = "0.13.0" @@ -2638,25 +2308,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "h2" -version = "0.3.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap 2.5.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - [[package]] name = "h2" version = "0.4.6" @@ -2668,7 +2319,7 @@ dependencies = [ "fnv", "futures-core", "futures-sink", - "http 1.1.0", + "http", "indexmap 2.5.0", "slab", "tokio", @@ -2686,23 +2337,11 @@ dependencies = [ "crunchy", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash 0.7.8", -] - [[package]] name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] [[package]] name = "hashbrown" @@ -2710,28 +2349,10 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash 0.8.11", + "ahash", "allocator-api2", ] -[[package]] -name = "hashlink" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" -dependencies = [ - "hashbrown 0.14.5", -] - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "heck" version = "0.4.1" @@ -2777,7 +2398,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.7", + "digest", ] [[package]] @@ -2789,17 +2410,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "hostname" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba" -dependencies = [ - "cfg-if", - "libc", - "windows 0.52.0", -] - [[package]] name = "html5ever" version = "0.26.0" @@ -2814,17 +2424,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa 1.0.11", -] - [[package]] name = "http" version = "1.1.0" @@ -2836,17 +2435,6 @@ dependencies = [ "itoa 1.0.11", ] -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", -] - [[package]] name = "http-body" version = "1.0.1" @@ -2854,7 +2442,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http", ] [[package]] @@ -2865,8 +2453,8 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", - "http-body 1.0.1", + "http", + "http-body", "pin-project-lite", ] @@ -2882,36 +2470,6 @@ version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "hyper" -version = "0.14.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa 1.0.11", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - [[package]] name = "hyper" version = "1.4.1" @@ -2921,9 +2479,9 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.6", - "http 1.1.0", - "http-body 1.0.1", + "h2", + "http", + "http-body", "httparse", "itoa 1.0.11", "pin-project-lite", @@ -2939,8 +2497,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", - "http 1.1.0", - "hyper 1.4.1", + "http", + "hyper", "hyper-util", "rustls", "rustls-pki-types", @@ -2950,19 +2508,6 @@ dependencies = [ "webpki-roots", ] -[[package]] -name = "hyper-tls" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" -dependencies = [ - "bytes", - "hyper 0.14.30", - "native-tls", - "tokio", - "tokio-native-tls", -] - [[package]] name = "hyper-util" version = "0.1.9" @@ -2972,9 +2517,9 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "hyper 1.4.1", + "http", + "http-body", + "hyper", "pin-project-lite", "socket2", "tokio", @@ -3070,25 +2615,6 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0263a3d970d5c054ed9312c0057b4f3bde9c0b33836d3637361d4a9e6e7a408" -[[package]] -name = "include_dir" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" -dependencies = [ - "include_dir_macros", -] - -[[package]] -name = "include_dir_macros" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" -dependencies = [ - "proc-macro2", - "quote", -] - [[package]] name = "indexmap" version = "1.9.3" @@ -3124,18 +2650,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "indoc" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" - -[[package]] -name = "indoc" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" - [[package]] name = "infer" version = "0.16.0" @@ -3205,7 +2719,7 @@ dependencies = [ "chrono", "serde", "serde_json", - "specta 2.0.0-rc.20", + "specta", "thiserror", ] @@ -3224,7 +2738,7 @@ dependencies = [ "chacha20poly1305", "cipher", "curve25519-dalek", - "digest 0.10.7", + "digest", "ed25519-zebra", "generic-array", "getrandom 0.2.15", @@ -3236,7 +2750,7 @@ dependencies = [ "rand 0.8.5", "scrypt", "serde", - "sha2 0.10.8", + "sha2", "tiny-keccak", "unicode-normalization", "x25519-dalek", @@ -3292,15 +2806,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d101775d2bc8f99f4ac18bf29b9ed70c0dd138b9a1e88d7b80179470cbbe8bd2" -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.12.1" @@ -3353,7 +2858,7 @@ checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" dependencies = [ "cesu8", "cfg-if", - "combine 4.6.7", + "combine", "jni-sys", "log", "thiserror", @@ -3403,17 +2908,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "json-rpc-api-build" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "backtrace", - "heck 0.3.3", - "serde", - "toml 0.5.11", -] - [[package]] name = "jsonptr" version = "0.4.7" @@ -3425,21 +2919,6 @@ dependencies = [ "serde_json", ] -[[package]] -name = "jsonrpc-core" -version = "17.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4467ab6dfa369b69e52bd0692e480c4d117410538526a57a304a0f2250fd95e" -dependencies = [ - "futures", - "futures-executor", - "futures-util", - "log", - "serde", - "serde_derive", - "serde_json", -] - [[package]] name = "k256" version = "0.13.4" @@ -3450,16 +2929,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "once_cell", - "sha2 0.10.8", -] - -[[package]] -name = "keccak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", + "sha2", ] [[package]] @@ -3593,12 +3063,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - [[package]] name = "libmimalloc-sys" version = "0.1.39" @@ -3617,7 +3081,7 @@ checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ "bitflags 2.6.0", "libc", - "redox_syscall 0.5.6", + "redox_syscall", ] [[package]] @@ -3637,29 +3101,12 @@ dependencies = [ "zip", ] -[[package]] -name = "libsqlite3-sys" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326" -dependencies = [ - "cc", - "pkg-config", - "vcpkg", -] - [[package]] name = "linux-raw-sys" version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" -[[package]] -name = "litrs" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" - [[package]] name = "lock_api" version = "0.4.12" @@ -3691,28 +3138,6 @@ dependencies = [ "imgref", ] -[[package]] -name = "lru" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" -dependencies = [ - "hashbrown 0.12.3", -] - -[[package]] -name = "lsp-types" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2368312c59425dd133cb9a327afee65be0a633a8ce471d248e2202a48f8f68ae" -dependencies = [ - "bitflags 1.3.2", - "serde", - "serde_json", - "serde_repr", - "url", -] - [[package]] name = "lzma-rs" version = "0.3.0" @@ -3740,15 +3165,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" -[[package]] -name = "mach" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" -dependencies = [ - "libc", -] - [[package]] name = "malloc_buf" version = "0.0.6" @@ -3820,103 +3236,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "metrics" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e52eb6380b6d2a10eb3434aec0885374490f5b82c8aaf5cd487a183c98be834" -dependencies = [ - "ahash 0.7.8", - "metrics-macros", -] - -[[package]] -name = "metrics" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "142c53885123b68d94108295a09d4afe1a1388ed95b54d5dacd9a454753030f2" -dependencies = [ - "ahash 0.7.8", - "metrics-macros", -] - -[[package]] -name = "metrics" -version = "0.22.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2be3cbd384d4e955b231c895ce10685e3d8260c5ccffae898c96c723b0772835" -dependencies = [ - "ahash 0.8.11", - "portable-atomic", -] - -[[package]] -name = "metrics-exporter-prometheus" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953cbbb6f9ba4b9304f4df79b98cdc9d14071ed93065a9fca11c00c5d9181b66" -dependencies = [ - "hyper 0.14.30", - "indexmap 1.9.3", - "ipnet", - "metrics 0.19.0", - "metrics-util 0.13.0", - "parking_lot 0.11.2", - "quanta", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "metrics-macros" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49e30813093f757be5cf21e50389a24dc7dbb22c49f23b7e8f51d69b508a5ffa" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "metrics-util" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65a9e83b833e1d2e07010a386b197c13aa199bbd0fca5cf69bfa147972db890a" -dependencies = [ - "aho-corasick 0.7.20", - "atomic-shim", - "crossbeam-epoch", - "crossbeam-utils", - "hashbrown 0.11.2", - "indexmap 1.9.3", - "metrics 0.18.1", - "num_cpus", - "ordered-float", - "parking_lot 0.11.2", - "quanta", - "radix_trie", - "sketches-ddsketch", -] - -[[package]] -name = "metrics-util" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd1f4b69bef1e2b392b2d4a12902f2af90bb438ba4a66aa222d1023fa6561b50" -dependencies = [ - "atomic-shim", - "crossbeam-epoch", - "crossbeam-utils", - "hashbrown 0.11.2", - "metrics 0.19.0", - "num_cpus", - "parking_lot 0.11.2", - "quanta", - "sketches-ddsketch", -] - [[package]] name = "mimalloc" version = "0.1.43" @@ -3997,25 +3316,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "mobc" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8d3681f0b299413df040f53c6950de82e48a8e1a9f79d442ed1ad3694d660b9" -dependencies = [ - "async-trait", - "futures-channel", - "futures-core", - "futures-timer", - "futures-util", - "log", - "metrics 0.22.3", - "thiserror", - "tokio", - "tracing", - "tracing-subscriber", -] - [[package]] name = "muda" version = "0.15.1" @@ -4036,32 +3336,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "nanoid" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ffa00dec017b5b1a8b7cf5e2c008bfda1aa7e0697ac1508b491fdf2622fb4d8" -dependencies = [ - "rand 0.8.5", -] - -[[package]] -name = "native-tls" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" -dependencies = [ - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", -] - [[package]] name = "ndk" version = "0.9.0" @@ -4098,15 +3372,6 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" -[[package]] -name = "nibble_vec" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" -dependencies = [ - "smallvec", -] - [[package]] name = "nix" version = "0.24.3" @@ -4201,20 +3466,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "num" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" -dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", -] - [[package]] name = "num-bigint" version = "0.4.6" @@ -4225,15 +3476,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-complex" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" -dependencies = [ - "num-traits", -] - [[package]] name = "num-conv" version = "0.1.0" @@ -4260,17 +3502,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - [[package]] name = "num-rational" version = "0.4.2" @@ -4291,16 +3522,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - [[package]] name = "num_enum" version = "0.7.3" @@ -4585,7 +3806,7 @@ dependencies = [ "chrono", "dirs 5.0.1", "discord-rich-presence", - "dotenvy 0.15.7 (git+https://github.com/allan2/dotenvy/?rev=db0d6aa8fc8d1b0ddbfe94b5c833372e463eb1c5)", + "dotenvy", "flate2", "futures", "indicatif", @@ -4596,20 +3817,19 @@ dependencies = [ "notify-debouncer-mini", "onelauncher_gamemode", "onelauncher_macros", - "onelauncher_prisma", "onelauncher_utils", "p256", "paste", "rand 0.8.5", "regex", - "reqwest 0.12.7", + "reqwest", "serde", "serde_ini", "serde_json", "serde_repr", "sha1_smol", - "sha2 0.10.8", - "specta 2.0.0-rc.20", + "sha2", + "specta", "sysinfo", "tauri", "tauri-specta", @@ -4625,7 +3845,7 @@ dependencies = [ "url", "uuid 1.10.0", "whoami", - "winreg 0.52.0", + "winreg", "zeroize", "zip", ] @@ -4653,7 +3873,7 @@ dependencies = [ "onelauncher_macros", "serde", "serde_json", - "specta 2.0.0-rc.20", + "specta", "specta-typescript", "strum", "tauri", @@ -4682,22 +3902,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "onelauncher_prisma" -version = "1.0.0-alpha.1" -dependencies = [ - "prisma-client-rust", - "serde", - "uuid 1.10.0", -] - -[[package]] -name = "onelauncher_prisma_cli" -version = "1.0.0-alpha.1" -dependencies = [ - "prisma-client-rust-generator", -] - [[package]] name = "onelauncher_test" version = "1.0.0-alpha.1" @@ -4719,9 +3923,7 @@ dependencies = [ "futures", "interpulse", "nom", - "onelauncher_prisma", "pin-project-lite", - "prisma-client-rust", "regex", "serde", "sys-info", @@ -4750,97 +3952,12 @@ dependencies = [ "pathdiff", ] -[[package]] -name = "openssl" -version = "0.10.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" -dependencies = [ - "bitflags 2.6.0", - "cfg-if", - "foreign-types 0.3.2", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - -[[package]] -name = "openssl-src" -version = "300.3.2+3.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a211a18d945ef7e648cc6e0058f4c548ee46aab922ea203e0d30e966ea23647b" -dependencies = [ - "cc", -] - -[[package]] -name = "openssl-sys" -version = "0.9.103" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" -dependencies = [ - "cc", - "libc", - "openssl-src", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "opentelemetry" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6105e89802af13fdf48c49d7646d3b533a70e536d818aae7e78ba0433d01acb8" -dependencies = [ - "async-trait", - "crossbeam-channel", - "futures-channel", - "futures-executor", - "futures-util", - "js-sys", - "lazy_static", - "percent-encoding", - "pin-project", - "rand 0.8.5", - "serde", - "thiserror", - "tokio", - "tokio-stream", -] - [[package]] name = "option-ext" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" -[[package]] -name = "ordered-float" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" -dependencies = [ - "num-traits", -] - [[package]] name = "ordered-multimap" version = "0.7.3" @@ -4861,12 +3978,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "ordermap" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a86ed3f5f244b372d6b1a00b72ef7f8876d0bc6a78a4c9985c53614041512063" - [[package]] name = "os_pipe" version = "1.2.1" @@ -4892,7 +4003,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "primeorder", - "sha2 0.10.8", + "sha2", ] [[package]] @@ -4926,17 +4037,6 @@ version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.6", -] - [[package]] name = "parking_lot" version = "0.12.3" @@ -4944,21 +4044,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", - "parking_lot_core 0.9.10", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" -dependencies = [ - "cfg-if", - "instant", - "libc", - "redox_syscall 0.2.16", - "smallvec", - "winapi", + "parking_lot_core", ] [[package]] @@ -4969,24 +4055,11 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.6", + "redox_syscall", "smallvec", "windows-targets 0.52.6", ] -[[package]] -name = "parser-database" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "diagnostics", - "either", - "enumflags2", - "indexmap 1.9.3", - "rustc-hash 1.1.0", - "schema-ast", -] - [[package]] name = "paste" version = "1.0.15" @@ -5005,7 +4078,7 @@ version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" dependencies = [ - "digest 0.10.7", + "digest", "hmac", ] @@ -5024,61 +4097,6 @@ version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" -[[package]] -name = "pest" -version = "2.7.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" -dependencies = [ - "memchr", - "thiserror", - "ucd-trie", -] - -[[package]] -name = "pest_derive" -version = "2.7.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0" -dependencies = [ - "pest", - "pest_generator", -] - -[[package]] -name = "pest_generator" -version = "2.7.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e" -dependencies = [ - "pest", - "pest_meta", - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "pest_meta" -version = "2.7.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f" -dependencies = [ - "once_cell", - "pest", - "sha2 0.10.8", -] - -[[package]] -name = "petgraph" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c3659d1ee90221741f65dd128d9998311b0e40c5d3c23a62445938214abce4f" -dependencies = [ - "fixedbitset", - "ordermap", -] - [[package]] name = "phf" version = "0.8.0" @@ -5372,136 +4390,6 @@ dependencies = [ "elliptic-curve", ] -[[package]] -name = "prisma-client-rust" -version = "0.6.8" -source = "git+https://github.com/brendonovich/prisma-client-rust?rev=4f9ef9d38ca732162accff72b2eb684d2f120bab#4f9ef9d38ca732162accff72b2eb684d2f120bab" -dependencies = [ - "base64 0.13.1", - "bigdecimal 0.3.1", - "bigdecimal 0.4.5", - "chrono", - "diagnostics", - "dotenvy 0.15.7 (registry+https://github.com/rust-lang/crates.io-index)", - "futures", - "include_dir", - "indexmap 1.9.3", - "paste", - "prisma-client-rust-generator-macros", - "prisma-models", - "psl", - "query-core", - "request-handlers", - "rspc", - "schema-core", - "serde", - "serde-value", - "serde_json", - "specta 2.0.0-rc.20", - "tempfile", - "thiserror", - "tokio", - "tracing", - "user-facing-errors", - "uuid 1.10.0", -] - -[[package]] -name = "prisma-client-rust-generator" -version = "0.6.8" -source = "git+https://github.com/brendonovich/prisma-client-rust?rev=4f9ef9d38ca732162accff72b2eb684d2f120bab#4f9ef9d38ca732162accff72b2eb684d2f120bab" -dependencies = [ - "directories", - "flate2", - "http 0.2.12", - "prisma-client-rust-generator-shared", - "prisma-client-rust-sdk", - "proc-macro2", - "quote", - "regex", - "reqwest 0.11.27", - "serde", - "serde_json", - "serde_path_to_error", - "syn 1.0.109", - "thiserror", -] - -[[package]] -name = "prisma-client-rust-generator-macros" -version = "0.6.8" -source = "git+https://github.com/brendonovich/prisma-client-rust?rev=4f9ef9d38ca732162accff72b2eb684d2f120bab#4f9ef9d38ca732162accff72b2eb684d2f120bab" -dependencies = [ - "convert_case 0.6.0", - "prisma-client-rust-generator-shared", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "prisma-client-rust-generator-shared" -version = "0.1.0" -source = "git+https://github.com/brendonovich/prisma-client-rust?rev=4f9ef9d38ca732162accff72b2eb684d2f120bab#4f9ef9d38ca732162accff72b2eb684d2f120bab" -dependencies = [ - "convert_case 0.6.0", - "prisma-client-rust-sdk", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "prisma-client-rust-sdk" -version = "0.6.8" -source = "git+https://github.com/brendonovich/prisma-client-rust?rev=4f9ef9d38ca732162accff72b2eb684d2f120bab#4f9ef9d38ca732162accff72b2eb684d2f120bab" -dependencies = [ - "convert_case 0.5.0", - "dmmf", - "prisma-models", - "proc-macro2", - "psl", - "query-core", - "quote", - "request-handlers", - "serde", - "serde_json", - "serde_path_to_error", - "syn 1.0.109", - "thiserror", -] - -[[package]] -name = "prisma-models" -version = "0.0.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "bigdecimal 0.3.1", - "chrono", - "cuid", - "itertools 0.10.5", - "nanoid", - "prisma-value", - "psl", - "thiserror", - "uuid 1.10.0", -] - -[[package]] -name = "prisma-value" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "base64 0.13.1", - "bigdecimal 0.3.1", - "chrono", - "once_cell", - "regex", - "serde", - "serde_json", - "uuid 1.10.0", -] - [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -5580,37 +4468,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "psl" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "builtin-psl-connectors", - "psl-core", -] - -[[package]] -name = "psl-core" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "bigdecimal 0.3.1", - "chrono", - "diagnostics", - "enumflags2", - "indoc 2.0.5", - "itertools 0.10.5", - "lsp-types", - "once_cell", - "parser-database", - "prisma-value", - "regex", - "schema-ast", - "serde", - "serde_json", - "url", -] - [[package]] name = "qoi" version = "0.4.1" @@ -5620,122 +4477,6 @@ dependencies = [ "bytemuck", ] -[[package]] -name = "quaint" -version = "0.2.0-alpha.13" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "async-trait", - "base64 0.12.3", - "bigdecimal 0.3.1", - "chrono", - "connection-string", - "futures", - "hex", - "metrics 0.18.1", - "mobc", - "num_cpus", - "percent-encoding", - "rusqlite", - "serde_json", - "sqlformat", - "thiserror", - "tokio", - "tracing", - "tracing-core", - "url", - "uuid 1.10.0", -] - -[[package]] -name = "quanta" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20afe714292d5e879d8b12740aa223c6a88f118af41870e8b6196e39a02238a8" -dependencies = [ - "crossbeam-utils", - "libc", - "mach", - "once_cell", - "raw-cpuid", - "wasi 0.10.2+wasi-snapshot-preview1", - "web-sys", - "winapi", -] - -[[package]] -name = "query-connector" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "anyhow", - "async-trait", - "chrono", - "futures", - "indexmap 1.9.3", - "itertools 0.10.5", - "prisma-models", - "prisma-value", - "serde", - "serde_json", - "thiserror", - "user-facing-errors", - "uuid 1.10.0", -] - -[[package]] -name = "query-core" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "async-trait", - "bigdecimal 0.3.1", - "chrono", - "connection-string", - "crossbeam-channel", - "cuid", - "enumflags2", - "futures", - "indexmap 1.9.3", - "itertools 0.10.5", - "lru", - "once_cell", - "opentelemetry", - "petgraph", - "prisma-models", - "psl", - "query-connector", - "query-engine-metrics", - "schema", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "tracing-opentelemetry", - "tracing-subscriber", - "user-facing-errors", - "uuid 1.10.0", -] - -[[package]] -name = "query-engine-metrics" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "metrics 0.18.1", - "metrics-exporter-prometheus", - "metrics-util 0.12.1", - "once_cell", - "parking_lot 0.12.3", - "serde", - "serde_json", - "tracing", - "tracing-futures", - "tracing-subscriber", -] - [[package]] name = "quick-error" version = "2.0.1" @@ -5770,7 +4511,7 @@ dependencies = [ "pin-project-lite", "quinn-proto", "quinn-udp", - "rustc-hash 2.0.0", + "rustc-hash", "rustls", "socket2", "thiserror", @@ -5787,7 +4528,7 @@ dependencies = [ "bytes", "rand 0.8.5", "ring", - "rustc-hash 2.0.0", + "rustc-hash", "rustls", "slab", "thiserror", @@ -5817,16 +4558,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "radix_trie" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" -dependencies = [ - "endian-type", - "nibble_vec", -] - [[package]] name = "rand" version = "0.7.3" @@ -5922,7 +4653,7 @@ dependencies = [ "built", "cfg-if", "interpolate_name", - "itertools 0.12.1", + "itertools", "libc", "libfuzzer-sys", "log", @@ -5957,15 +4688,6 @@ dependencies = [ "rgb", ] -[[package]] -name = "raw-cpuid" -version = "10.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "raw-window-handle" version = "0.6.2" @@ -5992,15 +4714,6 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.5.6" @@ -6027,7 +4740,7 @@ version = "1.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" dependencies = [ - "aho-corasick 1.1.3", + "aho-corasick", "memchr", "regex-automata 0.4.7", "regex-syntax 0.8.4", @@ -6048,7 +4761,7 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" dependencies = [ - "aho-corasick 1.1.3", + "aho-corasick", "memchr", "regex-syntax 0.8.4", ] @@ -6065,71 +4778,6 @@ version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" -[[package]] -name = "request-handlers" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "bigdecimal 0.3.1", - "connection-string", - "dmmf", - "futures", - "graphql-parser", - "indexmap 1.9.3", - "itertools 0.10.5", - "once_cell", - "prisma-models", - "psl", - "query-core", - "serde", - "serde_json", - "sql-query-connector", - "thiserror", - "tracing", - "url", - "user-facing-errors", -] - -[[package]] -name = "reqwest" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" -dependencies = [ - "base64 0.21.7", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.30", - "hyper-tls", - "ipnet", - "js-sys", - "log", - "mime", - "native-tls", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls-pemfile 1.0.4", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 0.1.2", - "system-configuration 0.5.1", - "tokio", - "tokio-native-tls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "winreg 0.50.0", -] - [[package]] name = "reqwest" version = "0.12.7" @@ -6143,11 +4791,11 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.4.6", - "http 1.1.0", - "http-body 1.0.1", + "h2", + "http", + "http-body", "http-body-util", - "hyper 1.4.1", + "hyper", "hyper-rustls", "hyper-util", "ipnet", @@ -6160,13 +4808,13 @@ dependencies = [ "pin-project-lite", "quinn", "rustls", - "rustls-pemfile 2.1.3", + "rustls-pemfile", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.1", - "system-configuration 0.6.1", + "sync_wrapper", + "system-configuration", "tokio", "tokio-rustls", "tokio-util", @@ -6249,35 +4897,6 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" -[[package]] -name = "rspc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e058686e5fd778bae4f6e8ebae041dc58ce60479a686f11002d146c9e59c2ab" -dependencies = [ - "futures", - "serde", - "serde_json", - "specta 1.0.5", - "thiserror", - "tokio", -] - -[[package]] -name = "rusqlite" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2" -dependencies = [ - "bitflags 2.6.0", - "chrono", - "fallible-iterator", - "fallible-streaming-iterator", - "hashlink", - "libsqlite3-sys", - "smallvec", -] - [[package]] name = "rust-argon2" version = "1.0.0" @@ -6307,12 +4926,6 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - [[package]] name = "rustc-hash" version = "2.0.0" @@ -6355,15 +4968,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64 0.21.7", -] - [[package]] name = "rustls-pemfile" version = "2.1.3" @@ -6421,76 +5025,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "schannel" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "schema" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "once_cell", - "prisma-models", - "psl", - "rustc-hash 1.1.0", -] - -[[package]] -name = "schema-ast" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "diagnostics", - "pest", - "pest_derive", -] - -[[package]] -name = "schema-connector" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "chrono", - "enumflags2", - "psl", - "quaint", - "serde", - "serde_json", - "sha2 0.9.9", - "tracing", - "tracing-error", - "user-facing-errors", -] - -[[package]] -name = "schema-core" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "async-trait", - "chrono", - "enumflags2", - "json-rpc-api-build", - "jsonrpc-core", - "psl", - "schema-connector", - "serde", - "serde_json", - "sql-schema-connector", - "tokio", - "tracing", - "tracing-futures", - "tracing-subscriber", - "url", - "user-facing-errors", -] - [[package]] name = "schemars" version = "0.8.21" @@ -6538,7 +5072,7 @@ checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" dependencies = [ "pbkdf2", "salsa20", - "sha2 0.10.8", + "sha2", ] [[package]] @@ -6555,29 +5089,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.6.0", - "core-foundation 0.9.4", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "selectors" version = "0.22.0" @@ -6627,16 +5138,6 @@ dependencies = [ "typeid", ] -[[package]] -name = "serde-value" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" -dependencies = [ - "ordered-float", - "serde", -] - [[package]] name = "serde_derive" version = "1.0.210" @@ -6676,23 +5177,12 @@ version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" dependencies = [ - "indexmap 2.5.0", "itoa 1.0.11", "memchr", "ryu", "serde", ] -[[package]] -name = "serde_path_to_error" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" -dependencies = [ - "itoa 1.0.11", - "serde", -] - [[package]] name = "serde_repr" version = "0.1.19" @@ -6795,7 +5285,7 @@ checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.7", + "digest", ] [[package]] @@ -6804,19 +5294,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.8" @@ -6825,17 +5302,7 @@ checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha3" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" -dependencies = [ - "digest 0.10.7", - "keccak", + "digest", ] [[package]] @@ -6878,7 +5345,7 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ - "digest 0.10.7", + "digest", "rand_core 0.6.4", ] @@ -6903,12 +5370,6 @@ version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" -[[package]] -name = "sketches-ddsketch" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04d2ecae5fcf33b122e2e6bd520a57ccf152d2dde3b38c71039df1a6867264ee" - [[package]] name = "slab" version = "0.4.9" @@ -6943,14 +5404,14 @@ dependencies = [ "bytemuck", "cfg_aliases", "core-graphics 0.24.0", - "foreign-types 0.5.0", + "foreign-types", "js-sys", "log", "objc2", "objc2-foundation", "objc2-quartz-core", "raw-window-handle", - "redox_syscall 0.5.6", + "redox_syscall", "wasm-bindgen", "web-sys", "windows-sys 0.59.0", @@ -6982,35 +5443,17 @@ dependencies = [ "system-deps", ] -[[package]] -name = "specta" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2240c3aa020aa61d2c569087d213baafbb212f4ceb9de9dd162376ea6aa0fe3" -dependencies = [ - "document-features", - "indoc 1.0.9", - "once_cell", - "paste", - "serde", - "serde_json", - "specta-macros 1.0.5", - "thiserror", -] - [[package]] name = "specta" version = "2.0.0-rc.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ccbb212565d2dc177bc15ecb7b039d66c4490da892436a4eee5b394d620c9bc" dependencies = [ - "bigdecimal 0.4.5", "chrono", - "indexmap 2.5.0", "paste", "serde", "serde_json", - "specta-macros 2.0.0-rc.17", + "specta-macros", "thiserror", "time", "uuid 1.10.0", @@ -7022,25 +5465,11 @@ version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "831df54bbb99fe669440885cde83531e4e1e617b48b444ed5739d3d8478890f8" dependencies = [ - "specta 2.0.0-rc.20", + "specta", "specta-serde", "specta-typescript", ] -[[package]] -name = "specta-macros" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4605306321c356e03873b8ee71d7592a5e7c508add325c3ed0677c16fdf1bcfb" -dependencies = [ - "Inflector", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 1.0.109", - "termcolor", -] - [[package]] name = "specta-macros" version = "2.0.0-rc.17" @@ -7059,7 +5488,7 @@ version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12260cbb21abb2e83a0375b1521867910e3aed8a7afa782206150ce552cd2e5a" dependencies = [ - "specta 2.0.0-rc.20", + "specta", "thiserror", ] @@ -7069,7 +5498,7 @@ version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1e4472229365ceb6395487e3a60d921ad8e21f9ad06eaecc396f098902c9adc" dependencies = [ - "specta 2.0.0-rc.20", + "specta", "specta-serde", "thiserror", ] @@ -7093,114 +5522,6 @@ dependencies = [ "der", ] -[[package]] -name = "sql-ddl" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" - -[[package]] -name = "sql-query-connector" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "anyhow", - "async-trait", - "bigdecimal 0.3.1", - "chrono", - "cuid", - "futures", - "itertools 0.10.5", - "once_cell", - "opentelemetry", - "prisma-models", - "prisma-value", - "psl", - "quaint", - "query-connector", - "rand 0.7.3", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "tracing-opentelemetry", - "user-facing-errors", - "uuid 1.10.0", -] - -[[package]] -name = "sql-schema-connector" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "chrono", - "connection-string", - "datamodel-renderer", - "either", - "enumflags2", - "indoc 2.0.5", - "once_cell", - "prisma-value", - "psl", - "quaint", - "regex", - "schema-connector", - "serde", - "serde_json", - "sql-ddl", - "sql-schema-describer", - "sqlformat", - "sqlparser", - "tokio", - "tracing", - "tracing-futures", - "url", - "user-facing-errors", - "uuid 1.10.0", -] - -[[package]] -name = "sql-schema-describer" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "async-trait", - "bigdecimal 0.3.1", - "either", - "enumflags2", - "indexmap 1.9.3", - "indoc 2.0.5", - "once_cell", - "prisma-value", - "psl", - "quaint", - "regex", - "serde", - "tracing", - "tracing-error", - "tracing-futures", -] - -[[package]] -name = "sqlformat" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bba3a93db0cc4f7bdece8bb09e77e2e785c20bfebf79eb8340ed80708048790" -dependencies = [ - "nom", - "unicode_categories", -] - -[[package]] -name = "sqlparser" -version = "0.32.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0366f270dbabb5cc2e4c88427dc4c08bba144f81e32fbd459a013f26a4d16aa0" -dependencies = [ - "log", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -7221,7 +5542,7 @@ checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" dependencies = [ "new_debug_unreachable", "once_cell", - "parking_lot 0.12.3", + "parking_lot", "phf_shared 0.10.0", "precomputed-hash", "serde", @@ -7364,12 +5685,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - [[package]] name = "sync_wrapper" version = "1.0.1" @@ -7379,18 +5694,6 @@ dependencies = [ "futures-core", ] -[[package]] -name = "synstructure" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "unicode-xid", -] - [[package]] name = "sys-info" version = "0.9.1" @@ -7416,17 +5719,6 @@ dependencies = [ "windows 0.57.0", ] -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation 0.9.4", - "system-configuration-sys 0.5.0", -] - [[package]] name = "system-configuration" version = "0.6.1" @@ -7435,17 +5727,7 @@ checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ "bitflags 2.6.0", "core-foundation 0.9.4", - "system-configuration-sys 0.6.0", -] - -[[package]] -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", + "system-configuration-sys", ] [[package]] @@ -7498,7 +5780,7 @@ dependencies = [ "ndk-sys", "objc", "once_cell", - "parking_lot 0.12.3", + "parking_lot", "raw-window-handle", "scopeguard", "tao-macros", @@ -7554,7 +5836,7 @@ dependencies = [ "glob", "gtk", "heck 0.5.0", - "http 1.1.0", + "http", "http-range", "image", "jni", @@ -7568,12 +5850,12 @@ dependencies = [ "percent-encoding", "plist", "raw-window-handle", - "reqwest 0.12.7", + "reqwest", "serde", "serde_json", "serde_repr", "serialize-to-javascript", - "specta 2.0.0-rc.20", + "specta", "swift-rs", "tauri-build", "tauri-macros", @@ -7632,7 +5914,7 @@ dependencies = [ "semver", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "syn 2.0.79", "tauri-utils", "thiserror", @@ -7794,11 +6076,11 @@ dependencies = [ "dirs 5.0.1", "flate2", "futures-util", - "http 1.1.0", + "http", "infer", "minisign-verify", "percent-encoding", - "reqwest 0.12.7", + "reqwest", "semver", "serde", "serde_json", @@ -7837,7 +6119,7 @@ checksum = "c8f437293d6f5e5dce829250f4dbdce4e0b52905e297a6689cc2963eb53ac728" dependencies = [ "dpi", "gtk", - "http 1.1.0", + "http", "jni", "raw-window-handle", "serde", @@ -7855,7 +6137,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1431602bcc71f2f840ad623915c9842ecc32999b867c4a787d975a17a9625cc6" dependencies = [ "gtk", - "http 1.1.0", + "http", "jni", "log", "objc2", @@ -7884,7 +6166,7 @@ dependencies = [ "heck 0.5.0", "serde", "serde_json", - "specta 2.0.0-rc.20", + "specta", "specta-jsdoc", "specta-typescript", "tauri", @@ -7974,15 +6256,6 @@ dependencies = [ "utf-8", ] -[[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - [[package]] name = "thin-slice" version = "0.1.1" @@ -8095,7 +6368,7 @@ dependencies = [ "bytes", "libc", "mio 1.0.2", - "parking_lot 0.12.3", + "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2", @@ -8115,16 +6388,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", -] - [[package]] name = "tokio-rustls" version = "0.26.0" @@ -8161,15 +6424,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -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" @@ -8241,7 +6495,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -8290,27 +6543,6 @@ dependencies = [ "tracing-subscriber", ] -[[package]] -name = "tracing-futures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" -dependencies = [ - "pin-project", - "tracing", -] - -[[package]] -name = "tracing-log" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -8322,20 +6554,6 @@ dependencies = [ "tracing-core", ] -[[package]] -name = "tracing-opentelemetry" -version = "0.17.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbbe89715c1dbbb790059e2565353978564924ee85017b5fff365c872ff6721f" -dependencies = [ - "once_cell", - "opentelemetry", - "tracing", - "tracing-core", - "tracing-log 0.1.4", - "tracing-subscriber", -] - [[package]] name = "tracing-subscriber" version = "0.3.18" @@ -8352,7 +6570,7 @@ dependencies = [ "thread_local", "tracing", "tracing-core", - "tracing-log 0.2.0", + "tracing-log", ] [[package]] @@ -8397,7 +6615,7 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.1.0", + "http", "httparse", "log", "rand 0.8.5", @@ -8420,12 +6638,6 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" -[[package]] -name = "ucd-trie" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" - [[package]] name = "uds_windows" version = "1.1.0" @@ -8520,18 +6732,6 @@ version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" -[[package]] -name = "unicode-xid" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" - -[[package]] -name = "unicode_categories" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" - [[package]] name = "universal-hash" version = "0.5.1" @@ -8542,15 +6742,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" -dependencies = [ - "void", -] - [[package]] name = "untrusted" version = "0.9.0" @@ -8593,31 +6784,6 @@ dependencies = [ "url", ] -[[package]] -name = "user-facing-error-macros" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "user-facing-errors" -version = "0.1.0" -source = "git+https://github.com/Brendonovich/prisma-engines?branch=5.1.0-patched#75852858f43e426c423b263f7e1473f49044f788" -dependencies = [ - "backtrace", - "indoc 2.0.5", - "itertools 0.10.5", - "quaint", - "serde", - "serde_json", - "tracing", - "user-facing-error-macros", -] - [[package]] name = "utf-8" version = "0.7.6" @@ -8729,12 +6895,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" @@ -9016,7 +7176,7 @@ version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "372d5b87f58ec45c384ba03563b03544dc5fadc3983e434b286913f5b4a9bb6d" dependencies = [ - "redox_syscall 0.5.6", + "redox_syscall", "wasite", "web-sys", ] @@ -9079,16 +7239,6 @@ dependencies = [ "windows_x86_64_msvc 0.36.1", ] -[[package]] -name = "windows" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" -dependencies = [ - "windows-core 0.52.0", - "windows-targets 0.52.6", -] - [[package]] name = "windows" version = "0.57.0" @@ -9508,16 +7658,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - [[package]] name = "winreg" version = "0.52.0" @@ -9542,7 +7682,7 @@ dependencies = [ "gdkx11", "gtk", "html5ever", - "http 1.1.0", + "http", "javascriptcore-rs", "jni", "kuchikiki", @@ -9556,7 +7696,7 @@ dependencies = [ "once_cell", "percent-encoding", "raw-window-handle", - "sha2 0.10.8", + "sha2", "soup3", "tao-macros", "thiserror", diff --git a/Cargo.toml b/Cargo.toml index d2a663dc..8e62c8b6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,8 +6,6 @@ members = [ "packages/core", # onelauncher -- the rust core for onelauncher "packages/macros", # onelauncher_macros -- utility procedural macros for onelauncher "packages/gamemode", # onelauncher_gamemode -- rust wrapper for feral gamemode - "packages/prisma-cli", # onelauncher_prisma_cli -- rust wrapper for prisma cli - "packages/prisma", # onelauncher_prisma -- rust client for prisma "packages/utils" # onelauncher_utils -- standard utilities for use within all crates ] @@ -30,8 +28,6 @@ onelauncher_macros = { path = "./packages/macros" } onelauncher_gui = { path = "./apps/desktop" } onelauncher_test = { path = "./apps/testing" } onelauncher_gamemode = { path = "./packages/gamemode" } -onelauncher_prisma = { path = "./packages/prisma" } -onelauncher_prisma_cli = { path = "./packages/prisma-cli" } onelauncher_utils = { path = "./packages/utils" } # # ============= TAURI ============= # # @@ -165,30 +161,6 @@ dotenvy = { git = "https://github.com/allan2/dotenvy/", rev = "db0d6aa8fc8d1b0dd # https://github.com/tauri-apps/tauri/blob/dev/crates/tauri/Cargo.toml#L102 webkit2gtk = { version = "=2.0.1", features = [ "v2_40" ] } -[workspace.dependencies.prisma-client-rust] -git = "https://github.com/brendonovich/prisma-client-rust" -rev = "4f9ef9d38ca732162accff72b2eb684d2f120bab" -features = [ - "migrations", - "specta", - "sqlite", - "sqlite-create-many", - "rspc" -] -default-features = false - -[workspace.dependencies.prisma-client-rust-generator] -git = "https://github.com/brendonovich/prisma-client-rust" -rev = "4f9ef9d38ca732162accff72b2eb684d2f120bab" -features = [ - "migrations", - "specta", - "sqlite", - "sqlite-create-many", - "rspc" -] -default-features = false - [workspace.lints.clippy] all = { level = "warn", priority = -1 } pedantic = { level = "warn", priority = -1 } diff --git a/package.json b/package.json index 6111cfd9..ee323048 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,6 @@ "scripts": { "prep": "pnpm scripts prep", "typecheck": "pnpm -r typecheck", - "codegen": "pnpm prisma:gen", "bootstrap": "cargo clean && ./packages/scripts/setup.sh && pnpm install && pnpm prep && pnpm codegen", "autoformat": "./packages/scripts/format.sh", "test": "pnpm test:vi && pnpm --filter=./* run test", @@ -45,9 +44,7 @@ "lint:es": "eslint . --cache --flag unstable_ts_config", "format:es": "pnpm lint:es --fix", "lint:rs": "cargo +nightly fmt --check && cargo clippy -- -D warnings", - "format:rs": "cargo +nightly fmt && cargo clippy --fix", - "prisma:gen": "pnpm prisma generate --schema packages/core/prisma/schema.prisma", - "prisma:migrate": "pnpm prisma migrate dev --schema packages/core/prisma/schema.prisma" + "format:rs": "cargo +nightly fmt && cargo clippy --fix" }, "workspaces": { "packages": [ @@ -63,7 +60,6 @@ "eslint": "^9.11.1", "eslint-plugin-solid": "^0.14.3", "jiti": "^2.0.0", - "prisma": "^5.20.0", "rimraf": "^6.0.1", "ts-node": "^10.9.2", "tsx": "^4.19.1", diff --git a/packages/core/Cargo.toml b/packages/core/Cargo.toml index 649f39c5..8d7944a5 100644 --- a/packages/core/Cargo.toml +++ b/packages/core/Cargo.toml @@ -24,7 +24,6 @@ workspace = true [dependencies] # features[default] onelauncher_macros = { workspace = true } -onelauncher_prisma = { workspace = true } onelauncher_utils = { workspace = true } interpulse = { workspace = true } tracing = { workspace = true } diff --git a/packages/core/prisma/migrations/20240827043814_init/migration.sql b/packages/core/prisma/migrations/20240827043814_init/migration.sql deleted file mode 100644 index ae60de04..00000000 --- a/packages/core/prisma/migrations/20240827043814_init/migration.sql +++ /dev/null @@ -1,210 +0,0 @@ --- CreateTable -CREATE TABLE "settings" ( - "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT DEFAULT 0, - "theme" TEXT NOT NULL DEFAULT 'dark', - "hide_close_prompt" BOOLEAN NOT NULL DEFAULT true, - "reduced_motion" BOOLEAN NOT NULL DEFAULT false, - "disable_analytics" BOOLEAN NOT NULL DEFAULT false, - "debug_mode" BOOLEAN NOT NULL DEFAULT false, - "hide_on_launch" BOOLEAN NOT NULL DEFAULT false, - "force_fullscreen" BOOLEAN NOT NULL DEFAULT false, - "disable_discord" BOOLEAN NOT NULL DEFAULT false, - "release_channel" TEXT NOT NULL DEFAULT 'stable', - "show_news" BOOLEAN NOT NULL DEFAULT true, - "advanced_rendering" BOOLEAN NOT NULL DEFAULT true, - "allow_parallel" BOOLEAN NOT NULL DEFAULT true, - "enable_gamemode" BOOLEAN NOT NULL DEFAULT true, - "custom_java_args" TEXT NOT NULL, - "custom_env_args" TEXT NOT NULL, - "max_async_io_operations" INTEGER NOT NULL DEFAULT 10, - "max_async_fetches" INTEGER NOT NULL DEFAULT 10, - "max_async_api_fetches" INTEGER NOT NULL DEFAULT 25, - "resolution_x" INTEGER NOT NULL DEFAULT 854, - "resolution_y" INTEGER NOT NULL DEFAULT 480, - "memory_max" INTEGER NOT NULL DEFAULT 2048, - "memory_min" INTEGER NOT NULL DEFAULT 256, - "hook_pre" TEXT, - "hook_wrapper" TEXT, - "hook_post" TEXT -); - --- CreateTable -CREATE TABLE "java_version" ( - "id" TEXT NOT NULL PRIMARY KEY, - "major_version" INTEGER NOT NULL, - "full_version" TEXT NOT NULL, - "arch" TEXT NOT NULL, - "os" TEXT NOT NULL, - "type" TEXT NOT NULL, - "vendor" TEXT NOT NULL, - "path" TEXT NOT NULL, - "valid" BOOLEAN NOT NULL DEFAULT true -); - --- CreateTable -CREATE TABLE "java_profile" ( - "name" TEXT NOT NULL PRIMARY KEY, - "system" BOOLEAN NOT NULL DEFAULT false, - "java_id" TEXT, - CONSTRAINT "java_profile_java_id_fkey" FOREIGN KEY ("java_id") REFERENCES "java_version" ("id") ON DELETE SET NULL ON UPDATE CASCADE -); - --- CreateTable -CREATE TABLE "minecraft_user" ( - "uuid" TEXT NOT NULL PRIMARY KEY, - "active" BOOLEAN NOT NULL DEFAULT false, - "username" TEXT NOT NULL, - "access_token" TEXT NOT NULL, - "refresh_token" TEXT NOT NULL, - "expires" DATETIME NOT NULL, - "last_used" DATETIME NOT NULL, - "skin_id" TEXT -); - --- CreateTable -CREATE TABLE "skin" ( - "id" TEXT NOT NULL PRIMARY KEY, - "skin" BLOB NOT NULL -); - --- CreateTable -CREATE TABLE "minecraft_device_token" ( - "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT DEFAULT 0, - "uuid" TEXT NOT NULL, - "private_key" TEXT NOT NULL, - "x" TEXT NOT NULL, - "y" TEXT NOT NULL, - "issue_instant" INTEGER NOT NULL, - "not_after" INTEGER NOT NULL, - "token" TEXT NOT NULL, - "display_claims" TEXT NOT NULL -); - --- CreateTable -CREATE TABLE "cluster" ( - "path" TEXT NOT NULL PRIMARY KEY, - "stage" TEXT NOT NULL, - "name" TEXT NOT NULL, - "icon_path" TEXT, - "mc_version" TEXT NOT NULL, - "loader" TEXT NOT NULL DEFAULT 'vanilla', - "loader_version" TEXT DEFAULT 'stable', - "group_id" INTEGER NOT NULL, - "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "updated_at" DATETIME NOT NULL, - "played_at" DATETIME, - "overall_played" INTEGER NOT NULL DEFAULT 0, - "recently_played" INTEGER NOT NULL DEFAULT 0, - "override_java_path" TEXT, - "override_custom_java_args" TEXT NOT NULL, - "override_custom_env_args" TEXT NOT NULL, - "override_memory_max" INTEGER, - "override_memory_min" INTEGER, - "override_force_fullscreen" INTEGER, - "override_resolution_x" INTEGER, - "override_resolution_y" INTEGER, - "override_hook_pre" TEXT, - "override_hook_wrapper" TEXT, - "override_hook_post" TEXT, - CONSTRAINT "cluster_group_id_fkey" FOREIGN KEY ("group_id") REFERENCES "cluster_group" ("id") ON DELETE RESTRICT ON UPDATE CASCADE -); - --- CreateTable -CREATE TABLE "cluster_group" ( - "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, - "name" TEXT NOT NULL, - "index" INTEGER NOT NULL -); - --- CreateTable -CREATE TABLE "process" ( - "pid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, - "start_time" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "name" TEXT NOT NULL, - "executable" TEXT NOT NULL, - "cluster_path" TEXT NOT NULL, - "post_exit" TEXT, - CONSTRAINT "process_cluster_path_fkey" FOREIGN KEY ("cluster_path") REFERENCES "cluster" ("path") ON DELETE RESTRICT ON UPDATE CASCADE -); - --- CreateTable -CREATE TABLE "version_info_cache" ( - "id" TEXT NOT NULL PRIMARY KEY, - "updated_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "version_info" BLOB NOT NULL -); - --- CreateTable -CREATE TABLE "partial_version_info" ( - "id" TEXT NOT NULL PRIMARY KEY, - "updated_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "version_info" BLOB NOT NULL -); - --- CreateTable -CREATE TABLE "assets_index_cache" ( - "id" TEXT NOT NULL PRIMARY KEY, - "updated_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "assets_index" BLOB NOT NULL -); - --- CreateTable -CREATE TABLE "package_cache" ( - "id" TEXT NOT NULL PRIMARY KEY, - "updated_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "sha512" TEXT NOT NULL, - "file_name" TEXT NOT NULL, - "file_size" INTEGER NOT NULL, - "disabled" BOOLEAN NOT NULL, - "meta_id" TEXT NOT NULL, - CONSTRAINT "package_cache_meta_id_fkey" FOREIGN KEY ("meta_id") REFERENCES "package_metadata" ("id") ON DELETE RESTRICT ON UPDATE CASCADE -); - --- CreateTable -CREATE TABLE "package_metadata" ( - "id" TEXT NOT NULL PRIMARY KEY, - "updated_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - "name" TEXT, - "package_id" TEXT, - "version" TEXT, - "description" TEXT, - "authors" TEXT, - "loader" TEXT NOT NULL -); - --- CreateTable -CREATE TABLE "managed_mod_cache" ( - "meta_id" TEXT NOT NULL PRIMARY KEY, - "project_id" INTEGER NOT NULL, - "file_id" INTEGER NOT NULL, - "name" TEXT NOT NULL, - "version" TEXT NOT NULL, - "urlslug" TEXT NOT NULL, - "summary" TEXT NOT NULL, - "authors" TEXT NOT NULL, - "release_type" INTEGER NOT NULL, - "update_paths" TEXT NOT NULL, - "cached_at" DATETIME NOT NULL, - CONSTRAINT "managed_mod_cache_meta_id_fkey" FOREIGN KEY ("meta_id") REFERENCES "package_metadata" ("id") ON DELETE CASCADE ON UPDATE CASCADE -); - --- CreateIndex -CREATE UNIQUE INDEX "settings_id_key" ON "settings"("id"); - --- CreateIndex -CREATE UNIQUE INDEX "java_version_id_key" ON "java_version"("id"); - --- CreateIndex -CREATE UNIQUE INDEX "java_version_path_key" ON "java_version"("path"); - --- CreateIndex -CREATE UNIQUE INDEX "minecraft_user_active_key" ON "minecraft_user"("active"); - --- CreateIndex -CREATE INDEX "process_cluster_path_idx" ON "process"("cluster_path"); - --- CreateIndex -CREATE UNIQUE INDEX "process_pid_key" ON "process"("pid"); - --- CreateIndex -CREATE UNIQUE INDEX "package_cache_file_name_key" ON "package_cache"("file_name"); diff --git a/packages/core/prisma/migrations/migration_lock.toml b/packages/core/prisma/migrations/migration_lock.toml deleted file mode 100644 index 6fcf33da..00000000 --- a/packages/core/prisma/migrations/migration_lock.toml +++ /dev/null @@ -1,3 +0,0 @@ -# Please do not edit this file manually -# It should be added in your version-control system (i.e. Git) -provider = "sqlite" diff --git a/packages/core/prisma/schema.prisma b/packages/core/prisma/schema.prisma deleted file mode 100644 index 0f0b7704..00000000 --- a/packages/core/prisma/schema.prisma +++ /dev/null @@ -1,272 +0,0 @@ -datasource db { - provider = "sqlite" - url = "file:dev.db" -} - -generator client { - provider = "cargo prisma" - output = "../../prisma/src/prisma" - module_path = "prisma" - client_format = "folder" -} - -/// A global settings state for the launcher. -model Settings { - /// The unique ID associated with this Settings instance. - id Int @id @unique @default(0) - /// A OneLauncher theme managed by the core GUI. (system, light, dark, oled, mocha) - theme String @default("dark") - /// Whether or not ask for confirmation when closing the core GUI. - hide_close_prompt Boolean @default(true) - /// Disables animations in the core GUI. - reduced_motion Boolean @default(false) - /// Whether or not to disable Plausible and Sentry analytics. - disable_analytics Boolean @default(false) - /// Whether or not to enable a debug mode in the launcher. - debug_mode Boolean @default(false) - /// Whether or not to minimize the launcher upon a game launch. - hide_on_launch Boolean @default(false) - /// A global fullscreen Minecraft state. - force_fullscreen Boolean @default(false) - /// Whether or not to disable Discord IPC. - disable_discord Boolean @default(false) - /// The release channel of the launcher. ("stable","beta","alpha"). - release_channel String @default("stable") - /// Whether or not to show news and release notes in the launcher. - show_news Boolean @default(true) - /// Enable/disable advanced rendering and window decorations. - advanced_rendering Boolean @default(true) - /// Whether to allow launching the same cluster under the same account. - allow_parallel Boolean @default(true) - /// Whether to launch Feral Gamemode on Linux systems. - enable_gamemode Boolean @default(true) - - /// Global and default custom Java arguments. This is parsed as a `Vec` in Rust. - custom_java_args String - /// Global and default custom environment variables. This is parsed as a `Vec` in Rust. - custom_env_args String - - /// Global and default maximum `Semaphore` I/O operations. - max_async_io_operations Int @default(10) - /// Global and default maximum `Semaphore` HTTP operations. - max_async_fetches Int @default(10) - /// Global and default maximum `Semaphore` API HTTP operations. - max_async_api_fetches Int @default(25) - - /// Global and default Minecraft window resoluton on the X axis. - resolution_x Int @default(854) - /// Global and default Minecraft window resoluton on the Y axis. - resolution_y Int @default(480) - - /// Maximum amount of Java memory available globally. - memory_max Int @default(2048) - /// Minimum amount of Java memory available globally. - memory_min Int @default(256) - - /// Global and default preinitialization hook. - hook_pre String? - /// Global and default wrapper hook. - hook_wrapper String? - /// Global and default postinitialization hook. - hook_post String? - - @@map("settings") -} - -/// A structure representing a single version of the Java Runtime Environment. -model JavaVersion { - /// The unique UUID associated with this Java version. - id String @id @unique @default(uuid()) - /// The major Java version of this Java version (8, 16, 21). - major_version Int - /// The full Java version of this Java version. - full_version String - /// The architecture that this Java version was built for. - arch String - /// The OS that this Java version was built for. - os String - /// The type of Java installation that this Java version is. - type String - /// The vendor of this Java version (Adoptium, OpenJDK, Oracle). - vendor String - /// The unique path location of this Java version. - path String @unique - /// Whether or not this Java version is valid. - valid Boolean @default(true) - profile JavaProfile[] - - @@map("java_version") -} - -model JavaProfile { - name String @id - system Boolean @default(false) - java_version JavaVersion? @relation(fields: [java_id], references: [id], onDelete: SetNull) - java_id String? - - @@map("java_profile") -} - -model MinecraftUser { - uuid String @id - active Boolean @default(false) - username String - access_token String - refresh_token String - expires DateTime - last_used DateTime - skin_id String? - - @@unique([active]) - @@map("minecraft_user") -} - -model Skin { - id String @id - skin Bytes - - @@map("skin") -} - -// TODO: packages/caching - -model MinecraftDeviceToken { - id Int @id @default(0) - uuid String - private_key String - x String - y String - issue_instant Int - not_after Int - token String - display_claims String - - @@map("minecraft_device_token") -} - -model Cluster { - path String @id - stage String - name String - icon_path String? - mc_version String - loader String @default("vanilla") - loader_version String? @default("stable") - group ClusterGroup @relation(fields: [group_id], references: [id]) - group_id Int - created_at DateTime @default(now()) - updated_at DateTime @updatedAt - played_at DateTime? - overall_played Int @default(0) - recently_played Int @default(0) - - override_java_path String? - override_custom_java_args String - override_custom_env_args String - override_memory_max Int? - override_memory_min Int? - override_force_fullscreen Int? - override_resolution_x Int? - override_resolution_y Int? - override_hook_pre String? - override_hook_wrapper String? - override_hook_post String? - processes Process[] - - @@map("cluster") -} - -model ClusterGroup { - id Int @id @default(autoincrement()) - name String - index Int - clusters Cluster[] - - @@map("cluster_group") -} - -model Process { - pid Int @id - start_time DateTime @default(now()) - name String - executable String - cluster_path String - post_exit String? - cluster Cluster @relation(fields: [cluster_path], references: [path]) - - @@unique([pid]) - @@index([cluster_path]) - @@map("process") -} - -model VersionInfoCache { - id String @id - updated_at DateTime @default(now()) @updatedAt - version_info Bytes - - @@map("version_info_cache") -} - -model PartialVersionInfoCache { - id String @id - updated_at DateTime @default(now()) @updatedAt - version_info Bytes - - @@map("partial_version_info") -} - -model AssetsIndexCache { - id String @id - updated_at DateTime @default(now()) @updatedAt - assets_index Bytes - - @@map("assets_index_cache") -} - -model PackageCache { - id String @id @default(uuid()) - updated_at DateTime @default(now()) @updatedAt - sha512 String - file_name String - file_size Int - disabled Boolean - meta_id String - meta PackageMetadata @relation(fields: [meta_id], references: [id], onDelete: Restrict) - - @@unique([file_name]) - @@map("package_cache") -} - -model PackageMetadata { - id String @id - updated_at DateTime @default(now()) @updatedAt - name String? - package_id String? - version String? - description String? - authors String? - loader String - // icon IconCache? - managed ManagedModCache? - // inferred InferredModCache? - cached PackageCache[] - - @@map("package_metadata") -} - -model ManagedModCache { - meta_id String @id - project_id Int - file_id Int - name String - version String - urlslug String - summary String - authors String - release_type Int - update_paths String - cached_at DateTime - meta PackageMetadata @relation(fields: [meta_id], references: [id], onDelete: Cascade) - - @@map("managed_mod_cache") -} diff --git a/packages/core/src/api/metadata.rs b/packages/core/src/api/metadata.rs index 75c6bfee..b9c9c4ff 100644 --- a/packages/core/src/api/metadata.rs +++ b/packages/core/src/api/metadata.rs @@ -4,7 +4,7 @@ use crate::State; pub use interpulse::api::minecraft::VersionManifest; pub use interpulse::api::modded::Manifest; -// TODO: better error handling (prisma?) +// TODO: better error handling // TODO: fix this lmao /// Get a [`VersionManifest`] for all available Minecraft versions. diff --git a/packages/core/src/store/clusters.rs b/packages/core/src/store/clusters.rs index 49fa4d7f..faba14b6 100644 --- a/packages/core/src/store/clusters.rs +++ b/packages/core/src/store/clusters.rs @@ -182,7 +182,7 @@ impl From for RawPackagePath { } } -// TODO: make it not a pathbuf, just get rid of all packagepath and clusterpath into str. maybe even just go straight to prisma with strings +// TODO: make it not a pathbuf, just get rid of all packagepath and clusterpath into str. /// Relative [`PathBuf`] for a specific [`Package`] of a [`Cluster`]. #[cfg_attr(feature = "specta", derive(specta::Type))] diff --git a/packages/prisma-cli/Cargo.toml b/packages/prisma-cli/Cargo.toml deleted file mode 100644 index b042b66d..00000000 --- a/packages/prisma-cli/Cargo.toml +++ /dev/null @@ -1,14 +0,0 @@ -[package] -name = "onelauncher_prisma_cli" -description = "prisma cli wrapper for onelauncher" -version = { workspace = true } -license = { workspace = true } -edition = { workspace = true } -repository = { workspace = true } -documentation = { workspace = true } -readme = { workspace = true } -homepage = { workspace = true } -authors = { workspace = true } - -[dependencies] -prisma-client-rust-generator = { workspace = true } diff --git a/packages/prisma-cli/package.json b/packages/prisma-cli/package.json deleted file mode 100644 index 2c54b1e6..00000000 --- a/packages/prisma-cli/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "@onelauncher/prisma-cli", - "version": "1.0.0-alpha.1", - "description": "Next-generation open source Minecraft launcher primsa cli bindings", - "license": "GPL-3.0-only", - "repository": { - "type": "git", - "url": "git@github.com:polyfrost/onelauncher", - "directory": "packages/prisma-cli" - }, - "bugs": "https://github.com/polyfrost/onelauncher/issues", - "sideEffects": false, - "scripts": {} -} diff --git a/packages/prisma-cli/src/bin/prisma.rs b/packages/prisma-cli/src/bin/prisma.rs deleted file mode 100644 index 70c2c362..00000000 --- a/packages/prisma-cli/src/bin/prisma.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - prisma_client_rust_generator::run(); -} diff --git a/packages/prisma/.gitignore b/packages/prisma/.gitignore deleted file mode 100644 index 4d20cf2e..00000000 --- a/packages/prisma/.gitignore +++ /dev/null @@ -1 +0,0 @@ -src/*/ diff --git a/packages/prisma/Cargo.toml b/packages/prisma/Cargo.toml deleted file mode 100644 index 2ac104de..00000000 --- a/packages/prisma/Cargo.toml +++ /dev/null @@ -1,16 +0,0 @@ -[package] -name = "onelauncher_prisma" -description = "prisma client for onelauncher" -version = { workspace = true } -license = { workspace = true } -edition = { workspace = true } -repository = { workspace = true } -documentation = { workspace = true } -readme = { workspace = true } -homepage = { workspace = true } -authors = { workspace = true } - -[dependencies] -prisma-client-rust = { workspace = true } -serde = { workspace = true } -uuid = { workspace = true } diff --git a/packages/prisma/package.json b/packages/prisma/package.json deleted file mode 100644 index 66bbb049..00000000 --- a/packages/prisma/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "@onelauncher/prisma", - "version": "1.0.0-alpha.1", - "description": "Next-generation open source Minecraft launcher prisma bindings", - "license": "GPL-3.0-only", - "repository": { - "type": "git", - "url": "git@github.com:polyfrost/onelauncher", - "directory": "packages/prisma" - }, - "bugs": "https://github.com/polyfrost/onelauncher/issues", - "sideEffects": false, - "scripts": {} -} diff --git a/packages/prisma/src/lib.rs b/packages/prisma/src/lib.rs deleted file mode 100644 index 6ab08612..00000000 --- a/packages/prisma/src/lib.rs +++ /dev/null @@ -1,15 +0,0 @@ -#![recursion_limit = "256"] -#[allow(warnings, unused)] -#[rustfmt::skip] -pub mod prisma; - - -pub async fn test_db() -> std::sync::Arc { - std::sync::Arc::new( - prisma::PrismaClient::_builder() - .with_url(format!("file:/tmp/test-db-{}", uuid::Uuid::new_v4())) - .build() - .await - .unwrap(), - ) -} diff --git a/packages/utils/Cargo.toml b/packages/utils/Cargo.toml index 9ede110b..e74022d0 100644 --- a/packages/utils/Cargo.toml +++ b/packages/utils/Cargo.toml @@ -14,7 +14,6 @@ authors = { workspace = true } workspace = true [dependencies] -onelauncher_prisma = { workspace = true } serde = { workspace = true } uuid = { workspace = true } async-channel = { workspace = true } @@ -30,6 +29,5 @@ chrono = { workspace = true } thiserror = { workspace = true } tracing = { workspace = true } nom = { workspace = true } -prisma-client-rust = { workspace = true } regex = { workspace = true } interpulse = { workspace = true } diff --git a/packages/utils/src/lib.rs b/packages/utils/src/lib.rs index 19c004f0..d55c1dd7 100644 --- a/packages/utils/src/lib.rs +++ b/packages/utils/src/lib.rs @@ -8,7 +8,6 @@ pub mod io; pub mod logging; pub mod platform; -pub mod prisma; /// Simple macro that takes a mutable reference and inserts it into a codeblock closure /// as an owned reference. diff --git a/packages/utils/src/prisma.rs b/packages/utils/src/prisma.rs deleted file mode 100644 index 8bfddf48..00000000 --- a/packages/utils/src/prisma.rs +++ /dev/null @@ -1,136 +0,0 @@ -use onelauncher_prisma::prisma::PrismaClient; -use prisma_client_rust::migrations::{DbPushError, MigrateDeployError}; -use prisma_client_rust::NewClientError; - -/// Represents an error that occured while opening and running migrations -/// on the [`prisma_client_rust`] database. -#[derive(thiserror::Error, Debug)] -pub enum MigrationError { - #[error("failed to initialize a new database connection: {0}")] - NewClient(#[from] Box), - #[error("failed to migrate the database: {0}")] - MigrateFailed(#[from] MigrateDeployError), - #[cfg(debug_assertions)] - #[error("failed to migrate the database: {0}")] - DbPushFailed(#[from] DbPushError), -} - -/// Loads the database from the given path and migrates it to the latest schema. -pub async fn load_and_migrate(db_url: &str) -> Result { - let client = PrismaClient::_builder() - .with_url(db_url.to_string()) - .build() - .await - .map_err(Box::new)?; - client._migrate_deploy().await?; - - #[cfg(debug_assertions)] - { - let mut builder = client._db_push(); - if std::env::var("ONELAUNCHER_DO_NOT_USE_THIS") - .map(|v| v == "true") - .unwrap_or(false) - { - builder = builder.accept_data_loss(); - } - - if std::env::var("ONELAUNCHER_FORCE_RESET") - .map(|v| v == "true") - .unwrap_or(false) - { - builder = builder.force_reset(); - } - - let res = builder.await; - - match res { - Ok(_) => {} - Err(e @ DbPushError::PossibleDataLoss(_)) => { - eprintln!("pushing prisma schema may result in data loss. use `ONELAUNCHER_DO_NOT_USE_THIS=true` to force it."); - Err(e)?; - } - Err(e) => Err(e)?, - } - } - - Ok(client) -} - -/// Construct back an inode after storing it in database -#[must_use] -pub const fn inode_from_db(db_inode: &[u8]) -> u64 { - u64::from_le_bytes([ - db_inode[0], - db_inode[1], - db_inode[2], - db_inode[3], - db_inode[4], - db_inode[5], - db_inode[6], - db_inode[7], - ]) -} - -#[must_use] -pub fn inode_to_db(inode: u64) -> Vec { - inode.to_le_bytes().to_vec() -} - -#[must_use] -pub const fn size_in_bytes_from_db(db_size_in_bytes: &[u8]) -> u64 { - u64::from_be_bytes([ - db_size_in_bytes[0], - db_size_in_bytes[1], - db_size_in_bytes[2], - db_size_in_bytes[3], - db_size_in_bytes[4], - db_size_in_bytes[5], - db_size_in_bytes[6], - db_size_in_bytes[7], - ]) -} - -#[must_use] -pub fn size_in_bytes_to_db(size: u64) -> Vec { - size.to_be_bytes().to_vec() -} - -#[derive(thiserror::Error, Debug)] -#[error("missing database field {0}")] -pub struct MissingFieldError(&'static str); - -impl MissingFieldError { - #[must_use] - pub const fn new(value: &'static str) -> Self { - Self(value) - } -} - -pub trait OptionalField: Sized { - type Out; - - fn transform(self) -> Option; -} - -impl OptionalField for Option { - type Out = T; - - fn transform(self) -> Self { - self - } -} - -impl<'a, T> OptionalField for &'a Option { - type Out = &'a T; - - fn transform(self) -> Option { - self.as_ref() - } -} - -pub fn maybe_missing( - data: T, - field: &'static str, -) -> Result { - data.transform().ok_or(MissingFieldError(field)) -}