From cc153e3063a268428d608bd63a493782fcc702a8 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Tue, 8 Jul 2025 16:03:56 -0700 Subject: [PATCH 01/16] fix: addressed cargo feature issue --- programs/idl-example/Cargo.toml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/programs/idl-example/Cargo.toml b/programs/idl-example/Cargo.toml index 85d7f3f..02f263f 100644 --- a/programs/idl-example/Cargo.toml +++ b/programs/idl-example/Cargo.toml @@ -14,9 +14,7 @@ no-idl = [] no-log-ix-name = [] cpi = ["no-entrypoint"] default = [] +idl-build = ["anchor-lang/idl-build", "anchor-spl/idl-build"] [dependencies] -anchor-lang = "0.31.1" - -[features] -idl-build = ["anchor-lang/idl-build", "anchor-spl/idl-build"] \ No newline at end of file +anchor-lang = "0.31.1" \ No newline at end of file From 6f8a0069e73d77650939adbc5e68181d2a2f8008 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Tue, 8 Jul 2025 16:12:53 -0700 Subject: [PATCH 02/16] removed anchor-spl from cargo --- programs/idl-example/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/idl-example/Cargo.toml b/programs/idl-example/Cargo.toml index 02f263f..fac0d92 100644 --- a/programs/idl-example/Cargo.toml +++ b/programs/idl-example/Cargo.toml @@ -14,7 +14,7 @@ no-idl = [] no-log-ix-name = [] cpi = ["no-entrypoint"] default = [] -idl-build = ["anchor-lang/idl-build", "anchor-spl/idl-build"] +idl-build = ["anchor-lang/idl-build"] [dependencies] anchor-lang = "0.31.1" \ No newline at end of file From f8334f648230934e0d967fcc66c5e25be9155d37 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Tue, 8 Jul 2025 16:24:34 -0700 Subject: [PATCH 03/16] hardcoding solana version to 2.2.15 --- programs/idl-example/Cargo.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/programs/idl-example/Cargo.toml b/programs/idl-example/Cargo.toml index fac0d92..2e40d01 100644 --- a/programs/idl-example/Cargo.toml +++ b/programs/idl-example/Cargo.toml @@ -17,4 +17,5 @@ default = [] idl-build = ["anchor-lang/idl-build"] [dependencies] -anchor-lang = "0.31.1" \ No newline at end of file +anchor-lang = "0.31.1" +solana-program="2.2.15" \ No newline at end of file From 548c586f07286f9093cc2eb343283eaa09bedfc2 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Tue, 8 Jul 2025 16:58:32 -0700 Subject: [PATCH 04/16] modified anchor install for 0.31.1 as npm install was giving build errors --- .github/actions/setup/action.yaml | 2 +- programs/idl-example/Cargo.toml | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup/action.yaml b/.github/actions/setup/action.yaml index 18dc684..9a14f41 100644 --- a/.github/actions/setup/action.yaml +++ b/.github/actions/setup/action.yaml @@ -47,5 +47,5 @@ runs: run: echo "/home/runner/.local/share/solana/install/active_release/bin" >> $GITHUB_PATH shell: bash - name: Install Anchor - run: npm i -g @coral-xyz/anchor-cli@${{ inputs.anchor-version }} + run: cargo install --git https://github.com/coral-xyz/anchor --tag v${{ inputs.anchor-version }} anchor-cli --locked shell: bash \ No newline at end of file diff --git a/programs/idl-example/Cargo.toml b/programs/idl-example/Cargo.toml index 2e40d01..fac0d92 100644 --- a/programs/idl-example/Cargo.toml +++ b/programs/idl-example/Cargo.toml @@ -17,5 +17,4 @@ default = [] idl-build = ["anchor-lang/idl-build"] [dependencies] -anchor-lang = "0.31.1" -solana-program="2.2.15" \ No newline at end of file +anchor-lang = "0.31.1" \ No newline at end of file From c07bfcaa8cf2a67cf4faf5c083e8a02c1685d2d6 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 07:39:21 -0700 Subject: [PATCH 05/16] resolving rebase issues --- .github/workflows/release-program.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index 934e66b..2a43a32 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -70,7 +70,10 @@ jobs: anchor-version: ${{ inputs.anchor-version }} solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - - run: 'git pull --rebase' + - run: | + git stash + git pull --rebase + git stash pop - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json From e88740edfd10d90704d3963c5fedc25a2445c881 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 9 Jul 2025 14:58:17 +0000 Subject: [PATCH 06/16] Update idl_example verifiable build --- Cargo.lock | 1497 +++++++++++++++++----------- verifiable-builds/idl_example.json | 50 +- verifiable-builds/idl_example.so | Bin 180984 -> 182080 bytes 3 files changed, 956 insertions(+), 591 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cbc58a7..f42d5db 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,35 +1,33 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "ahash" -version = "0.7.8" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ - "getrandom 0.2.15", + "cfg-if", "once_cell", "version_check", + "zerocopy 0.7.35", ] [[package]] -name = "ahash" -version = "0.8.11" +name = "aho-corasick" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy 0.7.35", + "memchr", ] [[package]] name = "anchor-attribute-access-control" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5f619f1d04f53621925ba8a2e633ba5a6081f2ae14758cbb67f38fd823e0a3e" +checksum = "3f70fd141a4d18adf11253026b32504f885447048c7494faf5fa83b01af9c0cf" dependencies = [ "anchor-syn", "proc-macro2", @@ -39,12 +37,12 @@ dependencies = [ [[package]] name = "anchor-attribute-account" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7f2a3e1df4685f18d12a943a9f2a7456305401af21a07c9fe076ef9ecd6e400" +checksum = "715a261c57c7679581e06f07a74fa2af874ac30f86bd8ea07cca4a7e5388a064" dependencies = [ "anchor-syn", - "bs58 0.5.1", + "bs58", "proc-macro2", "quote", "syn 1.0.109", @@ -52,9 +50,9 @@ dependencies = [ [[package]] name = "anchor-attribute-constant" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9423945cb55627f0b30903288e78baf6f62c6c8ab28fb344b6b25f1ffee3dca7" +checksum = "730d6df8ae120321c5c25e0779e61789e4b70dc8297102248902022f286102e4" dependencies = [ "anchor-syn", "quote", @@ -63,9 +61,9 @@ dependencies = [ [[package]] name = "anchor-attribute-error" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ed12720033cc3c3bf3cfa293349c2275cd5ab99936e33dd4bf283aaad3e241" +checksum = "27e6e449cc3a37b2880b74dcafb8e5a17b954c0e58e376432d7adc646fb333ef" dependencies = [ "anchor-syn", "quote", @@ -74,9 +72,9 @@ dependencies = [ [[package]] name = "anchor-attribute-event" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eef4dc0371eba2d8c8b54794b0b0eb786a234a559b77593d6f80825b6d2c77a2" +checksum = "d7710e4c54adf485affcd9be9adec5ef8846d9c71d7f31e16ba86ff9fc1dd49f" dependencies = [ "anchor-syn", "proc-macro2", @@ -86,20 +84,26 @@ dependencies = [ [[package]] name = "anchor-attribute-program" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b18c4f191331e078d4a6a080954d1576241c29c56638783322a18d308ab27e4f" +checksum = "05ecfd49b2aeadeb32f35262230db402abed76ce87e27562b34f61318b2ec83c" dependencies = [ + "anchor-lang-idl", "anchor-syn", + "anyhow", + "bs58", + "heck", + "proc-macro2", "quote", + "serde_json", "syn 1.0.109", ] [[package]] name = "anchor-derive-accounts" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de10d6e9620d3bcea56c56151cad83c5992f50d5960b3a9bebc4a50390ddc3c" +checksum = "be89d160793a88495af462a7010b3978e48e30a630c91de47ce2c1d3cb7a6149" dependencies = [ "anchor-syn", "quote", @@ -108,12 +112,12 @@ dependencies = [ [[package]] name = "anchor-derive-serde" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4e2e5be518ec6053d90a2a7f26843dbee607583c779e6c8395951b9739bdfbe" +checksum = "abc6ee78acb7bfe0c2dd2abc677aaa4789c0281a0c0ef01dbf6fe85e0fd9e6e4" dependencies = [ "anchor-syn", - "borsh-derive-internal 0.10.4", + "borsh-derive-internal", "proc-macro2", "quote", "syn 1.0.109", @@ -121,9 +125,9 @@ dependencies = [ [[package]] name = "anchor-derive-space" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ecc31d19fa54840e74b7a979d44bcea49d70459de846088a1d71e87ba53c419" +checksum = "134a01c0703f6fd355a0e472c033f6f3e41fac1ef6e370b20c50f4c8d022cea7" dependencies = [ "proc-macro2", "quote", @@ -132,9 +136,9 @@ dependencies = [ [[package]] name = "anchor-lang" -version = "0.29.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35da4785497388af0553586d55ebdc08054a8b1724720ef2749d313494f2b8ad" +checksum = "e6bab117055905e930f762c196e08f861f8dfe7241b92cee46677a3b15561a0a" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", @@ -145,156 +149,64 @@ dependencies = [ "anchor-derive-accounts", "anchor-derive-serde", "anchor-derive-space", - "arrayref", - "base64 0.13.1", + "anchor-lang-idl", + "base64 0.21.7", "bincode", "borsh 0.10.4", "bytemuck", - "getrandom 0.2.15", "solana-program", - "thiserror", + "thiserror 1.0.69", ] [[package]] -name = "anchor-syn" -version = "0.29.0" +name = "anchor-lang-idl" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9101b84702fed2ea57bd22992f75065da5648017135b844283a2f6d74f27825" +checksum = "32e8599d21995f68e296265aa5ab0c3cef582fd58afec014d01bd0bce18a4418" dependencies = [ + "anchor-lang-idl-spec", "anyhow", - "bs58 0.5.1", "heck", - "proc-macro2", - "quote", + "regex", "serde", "serde_json", "sha2 0.10.8", - "syn 1.0.109", - "thiserror", -] - -[[package]] -name = "anyhow" -version = "1.0.98" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" - -[[package]] -name = "ark-bn254" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-ec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" -dependencies = [ - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", - "itertools", - "num-traits", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", - "derivative", - "digest 0.10.7", - "itertools", - "num-bigint", - "num-traits", - "paste", - "rustc_version", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-poly" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", ] [[package]] -name = "ark-serialize" -version = "0.4.2" +name = "anchor-lang-idl-spec" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +checksum = "2bdf143115440fe621bdac3a29a1f7472e09f6cd82b2aa569429a0c13f103838" dependencies = [ - "ark-serialize-derive", - "ark-std", - "digest 0.10.7", - "num-bigint", + "anyhow", + "serde", ] [[package]] -name = "ark-serialize-derive" -version = "0.4.2" +name = "anchor-syn" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +checksum = "5dc7a6d90cc643df0ed2744862cdf180587d1e5d28936538c18fc8908489ed67" dependencies = [ + "anyhow", + "bs58", + "cargo_toml", + "heck", "proc-macro2", "quote", + "serde", + "serde_json", + "sha2 0.10.8", "syn 1.0.109", + "thiserror 1.0.69", ] [[package]] -name = "ark-std" -version = "0.4.0" +name = "anyhow" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand 0.8.5", -] +checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" [[package]] name = "arrayref" @@ -322,15 +234,15 @@ checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "base64" -version = "0.13.1" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" [[package]] name = "base64" -version = "0.21.7" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "bincode" @@ -346,18 +258,6 @@ name = "bitflags" version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" -dependencies = [ - "serde", -] - -[[package]] -name = "bitmaps" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" -dependencies = [ - "typenum", -] [[package]] name = "blake3" @@ -391,16 +291,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "borsh" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15bf3650200d8bffa99015595e10f1fbd17de07abbc25bb067da79e769939bfa" -dependencies = [ - "borsh-derive 0.9.3", - "hashbrown 0.11.2", -] - [[package]] name = "borsh" version = "0.10.4" @@ -421,27 +311,14 @@ dependencies = [ "cfg_aliases", ] -[[package]] -name = "borsh-derive" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6441c552f230375d18e3cc377677914d2ca2b0d36e52129fe15450a2dce46775" -dependencies = [ - "borsh-derive-internal 0.9.3", - "borsh-schema-derive-internal 0.9.3", - "proc-macro-crate 0.1.5", - "proc-macro2", - "syn 1.0.109", -] - [[package]] name = "borsh-derive" version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "831213f80d9423998dd696e2c5345aba6be7a0bd8cd19e31c5243e13df1cef89" dependencies = [ - "borsh-derive-internal 0.10.4", - "borsh-schema-derive-internal 0.10.4", + "borsh-derive-internal", + "borsh-schema-derive-internal", "proc-macro-crate 0.1.5", "proc-macro2", "syn 1.0.109", @@ -460,17 +337,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "borsh-derive-internal" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "borsh-derive-internal" version = "0.10.4" @@ -482,17 +348,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "borsh-schema-derive-internal" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "borsh-schema-derive-internal" version = "0.10.4" @@ -504,12 +359,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "bs58" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" - [[package]] name = "bs58" version = "0.5.1" @@ -540,9 +389,6 @@ name = "bytemuck" version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" -dependencies = [ - "bytemuck_derive", -] [[package]] name = "bytemuck_derive" @@ -556,10 +402,14 @@ dependencies = [ ] [[package]] -name = "byteorder" -version = "1.5.0" +name = "cargo_toml" +version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +checksum = "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be" +dependencies = [ + "serde", + "toml 0.8.23", +] [[package]] name = "cc" @@ -567,8 +417,6 @@ version = "1.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e3a13707ac958681c13b39b458c073d0d9bc8a22cb1b2f4c8e55eb72c13f362" dependencies = [ - "jobserver", - "libc", "shlex", ] @@ -619,31 +467,6 @@ dependencies = [ "libc", ] -[[package]] -name = "crossbeam-deque" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" - [[package]] name = "crunchy" version = "0.2.3" @@ -660,39 +483,32 @@ dependencies = [ "typenum", ] -[[package]] -name = "crypto-mac" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" -dependencies = [ - "generic-array", - "subtle", -] - [[package]] name = "curve25519-dalek" -version = "3.2.1" +version = "4.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90f9d052967f590a76e62eb387bd0bbb1b000182c3cefe5364db6b7211651bc0" +checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ - "byteorder", - "digest 0.9.0", - "rand_core 0.5.1", - "serde", + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "rand_core 0.6.4", + "rustc_version", "subtle", "zeroize", ] [[package]] -name = "derivative" -version = "2.2.0" +name = "curve25519-dalek-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.100", ] [[package]] @@ -715,12 +531,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "either" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" - [[package]] name = "equivalent" version = "1.0.2" @@ -733,13 +543,42 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da" +[[package]] +name = "fiat-crypto" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" + +[[package]] +name = "five8" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75b8549488b4715defcb0d8a8a1c1c76a80661b5fa106b4ca0e7fce59d7d875" +dependencies = [ + "five8_core", +] + +[[package]] +name = "five8_const" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26dec3da8bc3ef08f2c04f61eab298c3ab334523e55f076354d6d6f613799a7b" +dependencies = [ + "five8_core", +] + +[[package]] +name = "five8_core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2551bf44bc5f776c15044b9b94153a00198be06743e262afaaa61f11ac7523a5" + [[package]] name = "generic-array" version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ - "serde", "typenum", "version_check", ] @@ -751,10 +590,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" dependencies = [ "cfg-if", - "js-sys", "libc", "wasi 0.9.0+wasi-snapshot-preview1", - "wasm-bindgen", ] [[package]] @@ -770,34 +607,13 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "getrandom" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" -dependencies = [ - "cfg-if", - "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", -] - -[[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.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.11", + "ahash", ] [[package]] @@ -815,27 +631,6 @@ dependencies = [ "unicode-segmentation", ] -[[package]] -name = "hmac" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" -dependencies = [ - "crypto-mac", - "digest 0.9.0", -] - -[[package]] -name = "hmac-drbg" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" -dependencies = [ - "digest 0.9.0", - "generic-array", - "hmac", -] - [[package]] name = "idl-example" version = "0.1.0" @@ -843,22 +638,6 @@ dependencies = [ "anchor-lang", ] -[[package]] -name = "im" -version = "15.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9" -dependencies = [ - "bitmaps", - "rand_core 0.6.4", - "rand_xoshiro", - "rayon", - "serde", - "sized-chunks", - "typenum", - "version_check", -] - [[package]] name = "indexmap" version = "2.9.0" @@ -869,31 +648,12 @@ dependencies = [ "hashbrown 0.15.2", ] -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" -[[package]] -name = "jobserver" -version = "0.1.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" -dependencies = [ - "getrandom 0.3.2", - "libc", -] - [[package]] name = "js-sys" version = "0.3.77" @@ -934,14 +694,12 @@ dependencies = [ "arrayref", "base64 0.12.3", "digest 0.9.0", - "hmac-drbg", "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", "rand 0.7.3", "serde", "sha2 0.9.9", - "typenum", ] [[package]] @@ -973,18 +731,6 @@ dependencies = [ "libsecp256k1-core", ] -[[package]] -name = "light-poseidon" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c9a85a9752c549ceb7578064b4ed891179d20acd85f27318573b64d2d7ee7ee" -dependencies = [ - "ark-bn254", - "ark-ff", - "num-bigint", - "thiserror", -] - [[package]] name = "lock_api" version = "0.4.12" @@ -1007,15 +753,6 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" -[[package]] -name = "memmap2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" -dependencies = [ - "libc", -] - [[package]] name = "memoffset" version = "0.9.1" @@ -1099,21 +836,6 @@ dependencies = [ "windows-targets", ] -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pbkdf2" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd" -dependencies = [ - "crypto-mac", -] - [[package]] name = "ppv-lite86" version = "0.2.21" @@ -1129,7 +851,7 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" dependencies = [ - "toml", + "toml 0.5.11", ] [[package]] @@ -1159,12 +881,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "r-efi" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" - [[package]] name = "rand" version = "0.7.3" @@ -1237,48 +953,42 @@ dependencies = [ ] [[package]] -name = "rand_xoshiro" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" -dependencies = [ - "rand_core 0.6.4", -] - -[[package]] -name = "rayon" -version = "1.10.0" +name = "redox_syscall" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" dependencies = [ - "either", - "rayon-core", + "bitflags", ] [[package]] -name = "rayon-core" -version = "1.12.1" +name = "regex" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ - "crossbeam-deque", - "crossbeam-utils", + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", ] [[package]] -name = "redox_syscall" -version = "0.5.11" +name = "regex-automata" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ - "bitflags", + "aho-corasick", + "memchr", + "regex-syntax", ] [[package]] -name = "rustc-hash" -version = "1.1.0" +name = "regex-syntax" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustc_version" @@ -1354,6 +1064,15 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_spanned" +version = "0.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +dependencies = [ + "serde", +] + [[package]] name = "sha2" version = "0.9.9" @@ -1395,126 +1114,804 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] -name = "sized-chunks" -version = "0.6.5" +name = "smallvec" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" +checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" + +[[package]] +name = "solana-account" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f949fe4edaeaea78c844023bfc1c898e0b1f5a100f8a8d2d0f85d0a7b090258" dependencies = [ - "bitmaps", - "typenum", + "solana-account-info", + "solana-clock", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] -name = "smallvec" -version = "1.15.0" +name = "solana-account-info" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "c8f5152a288ef1912300fc6efa6c2d1f9bb55d9398eb6c72326360b8063987da" +dependencies = [ + "bincode", + "serde", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", +] [[package]] -name = "solana-frozen-abi" -version = "1.18.26" +name = "solana-address-lookup-table-interface" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ab2c30c15311b511c0d1151e4ab6bc9a3e080a37e7c6e7c2d96f5784cf9434" +checksum = "d1673f67efe870b64a65cb39e6194be5b26527691ce5922909939961a6e6b395" +dependencies = [ + "bincode", + "bytemuck", + "serde", + "serde_derive", + "solana-clock", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-slot-hashes", +] + +[[package]] +name = "solana-atomic-u64" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52e52720efe60465b052b9e7445a01c17550666beec855cce66f44766697bc2" +dependencies = [ + "parking_lot", +] + +[[package]] +name = "solana-big-mod-exp" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75db7f2bbac3e62cfd139065d15bcda9e2428883ba61fc8d27ccb251081e7567" +dependencies = [ + "num-bigint", + "num-traits", + "solana-define-syscall", +] + +[[package]] +name = "solana-bincode" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19a3787b8cf9c9fe3dd360800e8b70982b9e5a8af9e11c354b6665dd4a003adc" +dependencies = [ + "bincode", + "serde", + "solana-instruction", +] + +[[package]] +name = "solana-blake3-hasher" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a0801e25a1b31a14494fc80882a036be0ffd290efc4c2d640bfcca120a4672" +dependencies = [ + "blake3", + "solana-define-syscall", + "solana-hash", + "solana-sanitize", +] + +[[package]] +name = "solana-borsh" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "718333bcd0a1a7aed6655aa66bef8d7fb047944922b2d3a18f49cbc13e73d004" +dependencies = [ + "borsh 0.10.4", + "borsh 1.5.7", +] + +[[package]] +name = "solana-clock" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bb482ab70fced82ad3d7d3d87be33d466a3498eb8aa856434ff3c0dfc2e2e31" +dependencies = [ + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] + +[[package]] +name = "solana-cpi" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8dc71126edddc2ba014622fc32d0f5e2e78ec6c5a1e0eb511b85618c09e9ea11" +dependencies = [ + "solana-account-info", + "solana-define-syscall", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-stable-layout", +] + +[[package]] +name = "solana-decode-error" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c781686a18db2f942e70913f7ca15dc120ec38dcab42ff7557db2c70c625a35" +dependencies = [ + "num-traits", +] + +[[package]] +name = "solana-define-syscall" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ae3e2abcf541c8122eafe9a625d4d194b4023c20adde1e251f94e056bb1aee2" + +[[package]] +name = "solana-epoch-rewards" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b575d3dd323b9ea10bb6fe89bf6bf93e249b215ba8ed7f68f1a3633f384db7" +dependencies = [ + "serde", + "serde_derive", + "solana-hash", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] + +[[package]] +name = "solana-epoch-schedule" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fce071fbddecc55d727b1d7ed16a629afe4f6e4c217bc8d00af3b785f6f67ed" +dependencies = [ + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] + +[[package]] +name = "solana-example-mocks" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84461d56cbb8bb8d539347151e0525b53910102e4bced875d49d5139708e39d3" +dependencies = [ + "serde", + "serde_derive", + "solana-address-lookup-table-interface", + "solana-clock", + "solana-hash", + "solana-instruction", + "solana-keccak-hasher", + "solana-message", + "solana-nonce", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", + "thiserror 2.0.12", +] + +[[package]] +name = "solana-feature-gate-interface" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43f5c5382b449e8e4e3016fb05e418c53d57782d8b5c30aa372fc265654b956d" +dependencies = [ + "bincode", + "serde", + "serde_derive", + "solana-account", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-system-interface", +] + +[[package]] +name = "solana-fee-calculator" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89bc408da0fb3812bc3008189d148b4d3e08252c79ad810b245482a3f70cd8d" dependencies = [ - "block-buffer 0.10.4", - "bs58 0.4.0", - "bv", - "either", - "generic-array", - "im", - "lazy_static", "log", - "memmap2", - "rustc_version", + "serde", + "serde_derive", +] + +[[package]] +name = "solana-hash" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b96e9f0300fa287b545613f007dfe20043d7812bee255f418c1eb649c93b63" +dependencies = [ + "borsh 1.5.7", + "bytemuck", + "bytemuck_derive", + "five8", + "js-sys", + "serde", + "serde_derive", + "solana-atomic-u64", + "solana-sanitize", + "wasm-bindgen", +] + +[[package]] +name = "solana-instruction" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47298e2ce82876b64f71e9d13a46bc4b9056194e7f9937ad3084385befa50885" +dependencies = [ + "bincode", + "borsh 1.5.7", + "getrandom 0.2.15", + "js-sys", + "num-traits", + "serde", + "serde_derive", + "solana-define-syscall", + "solana-pubkey", + "wasm-bindgen", +] + +[[package]] +name = "solana-instructions-sysvar" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0e85a6fad5c2d0c4f5b91d34b8ca47118fc593af706e523cdbedf846a954f57" +dependencies = [ + "bitflags", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-sysvar-id", +] + +[[package]] +name = "solana-keccak-hasher" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7aeb957fbd42a451b99235df4942d96db7ef678e8d5061ef34c9b34cae12f79" +dependencies = [ + "sha3", + "solana-define-syscall", + "solana-hash", + "solana-sanitize", +] + +[[package]] +name = "solana-last-restart-slot" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a6360ac2fdc72e7463565cd256eedcf10d7ef0c28a1249d261ec168c1b55cdd" +dependencies = [ + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] + +[[package]] +name = "solana-loader-v2-interface" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8ab08006dad78ae7cd30df8eea0539e207d08d91eaefb3e1d49a446e1c49654" +dependencies = [ "serde", "serde_bytes", "serde_derive", - "sha2 0.10.8", - "solana-frozen-abi-macro", - "subtle", - "thiserror", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] -name = "solana-frozen-abi-macro" -version = "1.18.26" +name = "solana-loader-v3-interface" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c142f779c3633ac83c84d04ff06c70e1f558c876f13358bed77ba629c7417932" +checksum = "6f7162a05b8b0773156b443bccd674ea78bb9aa406325b467ea78c06c99a63a2" dependencies = [ - "proc-macro2", - "quote", - "rustc_version", - "syn 2.0.100", + "serde", + "serde_bytes", + "serde_derive", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", +] + +[[package]] +name = "solana-loader-v4-interface" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "706a777242f1f39a83e2a96a2a6cb034cb41169c6ecbee2cf09cb873d9659e7e" +dependencies = [ + "serde", + "serde_bytes", + "serde_derive", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", +] + +[[package]] +name = "solana-message" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1796aabce376ff74bf89b78d268fa5e683d7d7a96a0a4e4813ec34de49d5314b" +dependencies = [ + "bincode", + "blake3", + "lazy_static", + "serde", + "serde_derive", + "solana-bincode", + "solana-hash", + "solana-instruction", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", + "solana-short-vec", + "solana-system-interface", + "solana-transaction-error", + "wasm-bindgen", +] + +[[package]] +name = "solana-msg" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f36a1a14399afaabc2781a1db09cb14ee4cc4ee5c7a5a3cfcc601811379a8092" +dependencies = [ + "solana-define-syscall", +] + +[[package]] +name = "solana-native-token" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61515b880c36974053dd499c0510066783f0cc6ac17def0c7ef2a244874cf4a9" + +[[package]] +name = "solana-nonce" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "703e22eb185537e06204a5bd9d509b948f0066f2d1d814a6f475dafb3ddf1325" +dependencies = [ + "serde", + "serde_derive", + "solana-fee-calculator", + "solana-hash", + "solana-pubkey", + "solana-sha256-hasher", ] [[package]] name = "solana-program" -version = "1.18.26" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c10f4588cefd716b24a1a40dd32c278e43a560ab8ce4de6b5805c9d113afdfa1" +checksum = "98eca145bd3545e2fbb07166e895370576e47a00a7d824e325390d33bf467210" dependencies = [ - "ark-bn254", - "ark-ec", - "ark-ff", - "ark-serialize", - "base64 0.21.7", "bincode", - "bitflags", "blake3", "borsh 0.10.4", - "borsh 0.9.3", "borsh 1.5.7", - "bs58 0.4.0", - "bv", + "bs58", "bytemuck", - "cc", "console_error_panic_hook", "console_log", - "curve25519-dalek", "getrandom 0.2.15", - "itertools", - "js-sys", "lazy_static", - "libc", - "libsecp256k1", - "light-poseidon", "log", "memoffset", "num-bigint", "num-derive", "num-traits", - "parking_lot", "rand 0.8.5", - "rustc_version", - "rustversion", "serde", "serde_bytes", "serde_derive", - "serde_json", - "sha2 0.10.8", - "sha3", - "solana-frozen-abi", - "solana-frozen-abi-macro", + "solana-account-info", + "solana-address-lookup-table-interface", + "solana-atomic-u64", + "solana-big-mod-exp", + "solana-bincode", + "solana-blake3-hasher", + "solana-borsh", + "solana-clock", + "solana-cpi", + "solana-decode-error", + "solana-define-syscall", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-example-mocks", + "solana-feature-gate-interface", + "solana-fee-calculator", + "solana-hash", + "solana-instruction", + "solana-instructions-sysvar", + "solana-keccak-hasher", + "solana-last-restart-slot", + "solana-loader-v2-interface", + "solana-loader-v3-interface", + "solana-loader-v4-interface", + "solana-message", + "solana-msg", + "solana-native-token", + "solana-nonce", + "solana-program-entrypoint", + "solana-program-error", + "solana-program-memory", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-rent", + "solana-sanitize", + "solana-sdk-ids", "solana-sdk-macro", - "thiserror", - "tiny-bip39", + "solana-secp256k1-recover", + "solana-serde-varint", + "solana-serialize-utils", + "solana-sha256-hasher", + "solana-short-vec", + "solana-slot-hashes", + "solana-slot-history", + "solana-stable-layout", + "solana-stake-interface", + "solana-system-interface", + "solana-sysvar", + "solana-sysvar-id", + "solana-vote-interface", + "thiserror 2.0.12", "wasm-bindgen", - "zeroize", +] + +[[package]] +name = "solana-program-entrypoint" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32ce041b1a0ed275290a5008ee1a4a6c48f5054c8a3d78d313c08958a06aedbd" +dependencies = [ + "solana-account-info", + "solana-msg", + "solana-program-error", + "solana-pubkey", +] + +[[package]] +name = "solana-program-error" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ee2e0217d642e2ea4bee237f37bd61bb02aec60da3647c48ff88f6556ade775" +dependencies = [ + "borsh 1.5.7", + "num-traits", + "serde", + "serde_derive", + "solana-decode-error", + "solana-instruction", + "solana-msg", + "solana-pubkey", +] + +[[package]] +name = "solana-program-memory" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a5426090c6f3fd6cfdc10685322fede9ca8e5af43cd6a59e98bfe4e91671712" +dependencies = [ + "solana-define-syscall", +] + +[[package]] +name = "solana-program-option" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc677a2e9bc616eda6dbdab834d463372b92848b2bfe4a1ed4e4b4adba3397d0" + +[[package]] +name = "solana-program-pack" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "319f0ef15e6e12dc37c597faccb7d62525a509fec5f6975ecb9419efddeb277b" +dependencies = [ + "solana-program-error", +] + +[[package]] +name = "solana-pubkey" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b62adb9c3261a052ca1f999398c388f1daf558a1b492f60a6d9e64857db4ff1" +dependencies = [ + "borsh 0.10.4", + "borsh 1.5.7", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek", + "five8", + "five8_const", + "getrandom 0.2.15", + "js-sys", + "num-traits", + "serde", + "serde_derive", + "solana-atomic-u64", + "solana-decode-error", + "solana-define-syscall", + "solana-sanitize", + "solana-sha256-hasher", + "wasm-bindgen", +] + +[[package]] +name = "solana-rent" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1aea8fdea9de98ca6e8c2da5827707fb3842833521b528a713810ca685d2480" +dependencies = [ + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] + +[[package]] +name = "solana-sanitize" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61f1bc1357b8188d9c4a3af3fc55276e56987265eb7ad073ae6f8180ee54cecf" + +[[package]] +name = "solana-sdk-ids" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5d8b9cc68d5c88b062a33e23a6466722467dde0035152d8fb1afbcdf350a5f" +dependencies = [ + "solana-pubkey", ] [[package]] name = "solana-sdk-macro" -version = "1.18.26" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b75d0f193a27719257af19144fdaebec0415d1c9e9226ae4bd29b791be5e9bd" +checksum = "86280da8b99d03560f6ab5aca9de2e38805681df34e0bb8f238e69b29433b9df" dependencies = [ - "bs58 0.4.0", + "bs58", "proc-macro2", "quote", - "rustversion", "syn 2.0.100", ] +[[package]] +name = "solana-secp256k1-recover" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baa3120b6cdaa270f39444f5093a90a7b03d296d362878f7a6991d6de3bbe496" +dependencies = [ + "libsecp256k1", + "solana-define-syscall", + "thiserror 2.0.12", +] + +[[package]] +name = "solana-serde-varint" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a7e155eba458ecfb0107b98236088c3764a09ddf0201ec29e52a0be40857113" +dependencies = [ + "serde", +] + +[[package]] +name = "solana-serialize-utils" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "817a284b63197d2b27afdba829c5ab34231da4a9b4e763466a003c40ca4f535e" +dependencies = [ + "solana-instruction", + "solana-pubkey", + "solana-sanitize", +] + +[[package]] +name = "solana-sha256-hasher" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0037386961c0d633421f53560ad7c80675c0447cba4d1bb66d60974dd486c7ea" +dependencies = [ + "sha2 0.10.8", + "solana-define-syscall", + "solana-hash", +] + +[[package]] +name = "solana-short-vec" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c54c66f19b9766a56fa0057d060de8378676cb64987533fa088861858fc5a69" +dependencies = [ + "serde", +] + +[[package]] +name = "solana-slot-hashes" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c8691982114513763e88d04094c9caa0376b867a29577939011331134c301ce" +dependencies = [ + "serde", + "serde_derive", + "solana-hash", + "solana-sdk-ids", + "solana-sysvar-id", +] + +[[package]] +name = "solana-slot-history" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97ccc1b2067ca22754d5283afb2b0126d61eae734fc616d23871b0943b0d935e" +dependencies = [ + "bv", + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sysvar-id", +] + +[[package]] +name = "solana-stable-layout" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f14f7d02af8f2bc1b5efeeae71bc1c2b7f0f65cd75bcc7d8180f2c762a57f54" +dependencies = [ + "solana-instruction", + "solana-pubkey", +] + +[[package]] +name = "solana-stake-interface" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5269e89fde216b4d7e1d1739cf5303f8398a1ff372a81232abbee80e554a838c" +dependencies = [ + "borsh 0.10.4", + "borsh 1.5.7", + "num-traits", + "serde", + "serde_derive", + "solana-clock", + "solana-cpi", + "solana-decode-error", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-system-interface", + "solana-sysvar-id", +] + +[[package]] +name = "solana-system-interface" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94d7c18cb1a91c6be5f5a8ac9276a1d7c737e39a21beba9ea710ab4b9c63bc90" +dependencies = [ + "js-sys", + "num-traits", + "serde", + "serde_derive", + "solana-decode-error", + "solana-instruction", + "solana-pubkey", + "wasm-bindgen", +] + +[[package]] +name = "solana-sysvar" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d50c92bc019c590f5e42c61939676e18d14809ed00b2a59695dd5c67ae72c097" +dependencies = [ + "base64 0.22.1", + "bincode", + "bytemuck", + "bytemuck_derive", + "lazy_static", + "serde", + "serde_derive", + "solana-account-info", + "solana-clock", + "solana-define-syscall", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-hash", + "solana-instruction", + "solana-instructions-sysvar", + "solana-last-restart-slot", + "solana-program-entrypoint", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", + "solana-rent", + "solana-sanitize", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-slot-hashes", + "solana-slot-history", + "solana-stake-interface", + "solana-sysvar-id", +] + +[[package]] +name = "solana-sysvar-id" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5762b273d3325b047cfda250787f8d796d781746860d5d0a746ee29f3e8812c1" +dependencies = [ + "solana-pubkey", + "solana-sdk-ids", +] + +[[package]] +name = "solana-transaction-error" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "222a9dc8fdb61c6088baab34fc3a8b8473a03a7a5fd404ed8dd502fa79b67cb1" +dependencies = [ + "solana-instruction", + "solana-sanitize", +] + +[[package]] +name = "solana-vote-interface" +version = "2.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef4f08746f154458f28b98330c0d55cb431e2de64ee4b8efc98dcbe292e0672b" +dependencies = [ + "bincode", + "num-derive", + "num-traits", + "serde", + "serde_derive", + "solana-clock", + "solana-decode-error", + "solana-hash", + "solana-instruction", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-serde-varint", + "solana-serialize-utils", + "solana-short-vec", + "solana-system-interface", +] + [[package]] name = "subtle" version = "2.6.1" @@ -1549,7 +1946,16 @@ version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +dependencies = [ + "thiserror-impl 2.0.12", ] [[package]] @@ -1564,22 +1970,14 @@ dependencies = [ ] [[package]] -name = "tiny-bip39" -version = "0.8.2" +name = "thiserror-impl" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc59cb9dfc85bb312c3a78fd6aa8a8582e310b0fa885d5bb877f6dcc601839d" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ - "anyhow", - "hmac", - "once_cell", - "pbkdf2", - "rand 0.7.3", - "rustc-hash", - "sha2 0.9.9", - "thiserror", - "unicode-normalization", - "wasm-bindgen", - "zeroize", + "proc-macro2", + "quote", + "syn 2.0.100", ] [[package]] @@ -1606,23 +2004,47 @@ dependencies = [ "serde", ] +[[package]] +name = "toml" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + [[package]] name = "toml_datetime" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +dependencies = [ + "serde", +] [[package]] name = "toml_edit" -version = "0.22.24" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ "indexmap", + "serde", + "serde_spanned", "toml_datetime", + "toml_write", "winnow", ] +[[package]] +name = "toml_write" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" + [[package]] name = "typenum" version = "1.18.0" @@ -1635,15 +2057,6 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" -[[package]] -name = "unicode-normalization" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] - [[package]] name = "unicode-segmentation" version = "1.12.0" @@ -1668,15 +2081,6 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" -[[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" -dependencies = [ - "wit-bindgen-rt", -] - [[package]] name = "wasm-bindgen" version = "0.2.100" @@ -1811,22 +2215,13 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.7.6" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63d3fcd9bba44b03821e7d699eeee959f3126dcc4aa8e4ae18ec617c2a5cea10" +checksum = "74c7b26e3480b707944fc872477815d29a8e429d2f93a1ce000f5fa84a15cbcd" dependencies = [ "memchr", ] -[[package]] -name = "wit-bindgen-rt" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags", -] - [[package]] name = "zerocopy" version = "0.7.35" @@ -1872,17 +2267,3 @@ name = "zeroize" version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", -] diff --git a/verifiable-builds/idl_example.json b/verifiable-builds/idl_example.json index fad5966..60cff6f 100644 --- a/verifiable-builds/idl_example.json +++ b/verifiable-builds/idl_example.json @@ -1,42 +1,26 @@ { - "version": "0.1.0", - "name": "idl_example", + "address": "YMEAkN6gFcPhRYAHs8qvo1b78X5FPUErFCidpkkmdev", + "metadata": { + "name": "idl_example", + "version": "0.1.0", + "spec": "0.1.0", + "description": "Created with Anchor" + }, "instructions": [ { "name": "initialize", + "discriminator": [ + 175, + 175, + 109, + 31, + 13, + 152, + 155, + 237 + ], "accounts": [], "args": [] } - ], - "accounts": [ - { - "name": "User", - "type": { - "kind": "struct", - "fields": [ - { - "name": "name", - "type": "string" - }, - { - "name": "age", - "type": "u8" - }, - { - "name": "bump", - "type": "u8" - }, - { - "name": "isAdmin", - "type": "bool" - }, - { - "name": "isVerified", - "type": "bool" - - } - ] - } - } ] } \ No newline at end of file diff --git a/verifiable-builds/idl_example.so b/verifiable-builds/idl_example.so index 94b18ed983454bd778e7abada2a4490ecdbb79d6..8cff80acc03134da1650c7c16560dd3c8d54e4a0 100755 GIT binary patch literal 182080 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 kxVgKphuLS%g$y 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�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 From fa8b2a7963f7a352dc721073b277604ae7aa779e Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 08:09:17 -0700 Subject: [PATCH 07/16] changed solana commands to match 2.2.15 --- .github/actions/deploy-verifiable-buffer/action.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/deploy-verifiable-buffer/action.yaml b/.github/actions/deploy-verifiable-buffer/action.yaml index 0d45c4a..206f1a9 100644 --- a/.github/actions/deploy-verifiable-buffer/action.yaml +++ b/.github/actions/deploy-verifiable-buffer/action.yaml @@ -65,7 +65,7 @@ runs: timeout_minutes: 30 max_attempts: 10 shell: bash - command: solana program write-buffer --max-sign-attempts 50 --with-compute-unit-price 100000 --use-rpc --buffer ./keyp -k ./deploy-keypair.json ./target/deploy/$PROGRAM.so -u $NETWORK > ./buffer.out + command: solana program write-buffer ./target/deploy/$PROGRAM.so --buffer ./keyp -k ./deploy-keypair.json --url $NETWORK --with-compute-unit-price 100000 --max-sign-attempts 50 --use-rpc > ./buffer.out env: NETWORK: ${{ inputs.network }} PROGRAM: ${{ inputs.program }} @@ -115,7 +115,7 @@ runs: max_attempts: 20 shell: bash # this might not work for 0.31.1, need to fix - command: solana program set-buffer-authority $BUFFER -k ./deploy-keypair.json --new-buffer-authority $AUTHORITY -u $NETWORK + command: solana program set-buffer-authority $BUFFER --keypair ./deploy-keypair.json --new-buffer-authority $AUTHORITY --url $NETWORK env: BUFFER: ${{ steps.buffer-deploy-store.outputs.BUFFER }} AUTHORITY: ${{ inputs.buffer-authority }} From e20bbb155e09bf989bb4c25945386e33c61b1cc4 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 08:33:13 -0700 Subject: [PATCH 08/16] added in endpoint to deploy-verifiable-builds --- .github/actions/deploy-verifiable-buffer/action.yaml | 8 ++++++-- .github/workflows/release-program.yaml | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/actions/deploy-verifiable-buffer/action.yaml b/.github/actions/deploy-verifiable-buffer/action.yaml index 206f1a9..6603f02 100644 --- a/.github/actions/deploy-verifiable-buffer/action.yaml +++ b/.github/actions/deploy-verifiable-buffer/action.yaml @@ -33,6 +33,10 @@ inputs: description: "The node version to use" required: false default: "20.18.0" + endpoint: + description: "The endpoint to use" + required: false + default: "https://api.devnet.solana.com" outputs: buffer: description: "The buffer address" @@ -65,7 +69,7 @@ runs: timeout_minutes: 30 max_attempts: 10 shell: bash - command: solana program write-buffer ./target/deploy/$PROGRAM.so --buffer ./keyp -k ./deploy-keypair.json --url $NETWORK --with-compute-unit-price 100000 --max-sign-attempts 50 --use-rpc > ./buffer.out + command: solana program write-buffer ./target/deploy/$PROGRAM.so --buffer ./keyp -k ./deploy-keypair.json --url ${{ inputs.endpoint }} --with-compute-unit-price 100000 --max-sign-attempts 50 --use-rpc > ./buffer.out env: NETWORK: ${{ inputs.network }} PROGRAM: ${{ inputs.program }} @@ -101,7 +105,7 @@ runs: max_attempts: 20 shell: bash # this might not work for 0.31.1, need to fix - command: anchor idl set-authority $IDL_BUFFER --provider.cluster $NETWORK --program-id $PROGRAM_ID --new-authority $AUTHORITY --provider.wallet ./deploy-keypair.json + command: anchor idl set-authority $IDL_BUFFER --provider.cluster ${{ inputs.network }} --program-id $PROGRAM_ID --new-authority $AUTHORITY --provider.wallet ./deploy-keypair.json env: IDL_BUFFER: ${{ steps.buffer-deploy-store.outputs.IDL_BUFFER }} AUTHORITY: ${{ inputs.buffer-authority }} diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index 2a43a32..cd97052 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -93,6 +93,7 @@ jobs: buffer-authority: ${{ inputs.multisig-vault-address }} anchor-version: ${{ inputs.anchor-version }} node-version: '20.16.0' + endpoint: ${{ inputs.endpoint }} - name: Log buffer and IDL addresses run: | echo "Buffer address: ${{ steps.deploy-verifiable-buffer.outputs.buffer }}" From 4571eb1333e0e4090a6e58ce2f3de280f0c05b88 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 08:57:16 -0700 Subject: [PATCH 09/16] minor changes to worflow --- .github/actions/deploy-verifiable-buffer/action.yaml | 4 ++-- .github/workflows/release-program.yaml | 3 ++- package.json | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/actions/deploy-verifiable-buffer/action.yaml b/.github/actions/deploy-verifiable-buffer/action.yaml index 6603f02..0871758 100644 --- a/.github/actions/deploy-verifiable-buffer/action.yaml +++ b/.github/actions/deploy-verifiable-buffer/action.yaml @@ -102,7 +102,7 @@ runs: if: steps.cache-buffer.outputs.cache-hit != 'true' with: timeout_minutes: 10 - max_attempts: 20 + max_attempts: 10 shell: bash # this might not work for 0.31.1, need to fix command: anchor idl set-authority $IDL_BUFFER --provider.cluster ${{ inputs.network }} --program-id $PROGRAM_ID --new-authority $AUTHORITY --provider.wallet ./deploy-keypair.json @@ -116,7 +116,7 @@ runs: if: steps.cache-buffer.outputs.cache-hit != 'true' with: timeout_minutes: 10 - max_attempts: 20 + max_attempts: 10 shell: bash # this might not work for 0.31.1, need to fix command: solana program set-buffer-authority $BUFFER --keypair ./deploy-keypair.json --new-buffer-authority $AUTHORITY --url $NETWORK diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index cd97052..5c800eb 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -86,7 +86,8 @@ jobs: id: deploy-verifiable-buffer uses: ./.github/actions/deploy-verifiable-buffer with: - network: ${{ inputs.network }} + # this will need to be manually assigned per env install unless we change one of the 10 inputs + network: "devnet" keypair: ${{ secrets.DEPLOY_KEYPAIR }} program: ${{ inputs.program }} program-id: ${{ inputs.program-id }} diff --git a/package.json b/package.json index cd83bac..89b3a41 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "lint": "prettier */*.js \"*/**/*{.js,.ts}\" --check" }, "dependencies": { - "@coral-xyz/anchor": "^0.29.0" + "@coral-xyz/anchor": "^0.31.1" }, "devDependencies": { "chai": "^4.3.4", From c27013835fe7318ed87be16b938ebdf1cb095f1b Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 09:18:20 -0700 Subject: [PATCH 10/16] more minor changes to worflow --- .github/actions/deploy-verifiable-buffer/action.yaml | 6 +++--- .github/workflows/release-program.yaml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/actions/deploy-verifiable-buffer/action.yaml b/.github/actions/deploy-verifiable-buffer/action.yaml index 0871758..fad09c2 100644 --- a/.github/actions/deploy-verifiable-buffer/action.yaml +++ b/.github/actions/deploy-verifiable-buffer/action.yaml @@ -7,7 +7,7 @@ inputs: default: "false" network: description: "The Solana network" - required: true + required: false default: "devnet" program: description: "The program to build and upload" @@ -82,7 +82,7 @@ runs: max_attempts: 50 shell: bash # this command doesn't work for 0.31.1, need to fix - command: anchor idl write-buffer $PROGRAM_ID --filepath ./target/idl/$PROGRAM.json --provider.cluster $NETWORK --provider.wallet ./deploy-keypair.json > idl-buffer.out + command: anchor idl write-buffer $PROGRAM_ID --filepath ./target/idl/$PROGRAM.json --provider.cluster ${{ inputs.network }} --provider.wallet ./deploy-keypair.json > idl-buffer.out env: PROGRAM_ID: ${{ inputs.program-id }} PROGRAM: ${{ inputs.program }} @@ -119,7 +119,7 @@ runs: max_attempts: 10 shell: bash # this might not work for 0.31.1, need to fix - command: solana program set-buffer-authority $BUFFER --keypair ./deploy-keypair.json --new-buffer-authority $AUTHORITY --url $NETWORK + command: solana program set-buffer-authority $BUFFER --keypair ./deploy-keypair.json --new-buffer-authority $AUTHORITY --url ${{ inputs.network }} env: BUFFER: ${{ steps.buffer-deploy-store.outputs.BUFFER }} AUTHORITY: ${{ inputs.buffer-authority }} diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index 5c800eb..bc0dc8e 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -87,7 +87,7 @@ jobs: uses: ./.github/actions/deploy-verifiable-buffer with: # this will need to be manually assigned per env install unless we change one of the 10 inputs - network: "devnet" + network: 'devnet' keypair: ${{ secrets.DEPLOY_KEYPAIR }} program: ${{ inputs.program }} program-id: ${{ inputs.program-id }} From 0207b97bce9bfee2ac01419bf93174fec3998327 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 09:38:32 -0700 Subject: [PATCH 11/16] even more minor changes --- .github/workflows/release-program.yaml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index bc0dc8e..ba3349e 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -71,9 +71,11 @@ jobs: solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - run: | - git stash - git pull --rebase - git stash pop + git stash + git pull --rebase + git stash pop || true + git checkout --theirs Cargo.lock || true + git add Cargo.lock || true - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json From c416ae93a8fa246c451506b0fd9bf5b3a2b4b85d Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 10:00:28 -0700 Subject: [PATCH 12/16] upgrading versions --- .github/workflows/release-program.yaml | 8 +- package-lock.json | 2104 ++++++++++++++++++++++++ yarn.lock | 535 +++--- 3 files changed, 2363 insertions(+), 284 deletions(-) create mode 100644 package-lock.json diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index ba3349e..bc0dc8e 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -71,11 +71,9 @@ jobs: solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - run: | - git stash - git pull --rebase - git stash pop || true - git checkout --theirs Cargo.lock || true - git add Cargo.lock || true + git stash + git pull --rebase + git stash pop - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..8d2ecfa --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2104 @@ +{ + "name": "squads-idl-deploy-example", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@coral-xyz/anchor": "^0.31.1" + }, + "devDependencies": { + "@types/bn.js": "^5.1.0", + "@types/chai": "^4.3.0", + "@types/mocha": "^9.0.0", + "chai": "^4.3.4", + "mocha": "^9.0.3", + "prettier": "^2.6.2", + "ts-mocha": "^10.0.0", + "typescript": "^4.3.5" + } + }, + "node_modules/@babel/runtime": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz", + "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@coral-xyz/anchor": { + "version": "0.31.1", + "resolved": "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.31.1.tgz", + "integrity": "sha512-QUqpoEK+gi2S6nlYc2atgT2r41TT3caWr/cPUEL8n8Md9437trZ68STknq897b82p5mW0XrTBNOzRbmIRJtfsA==", + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "@coral-xyz/anchor-errors": "^0.31.1", + "@coral-xyz/borsh": "^0.31.1", + "@noble/hashes": "^1.3.1", + "@solana/web3.js": "^1.69.0", + "bn.js": "^5.1.2", + "bs58": "^4.0.1", + "buffer-layout": "^1.2.2", + "camelcase": "^6.3.0", + "cross-fetch": "^3.1.5", + "eventemitter3": "^4.0.7", + "pako": "^2.0.3", + "superstruct": "^0.15.4", + "toml": "^3.0.0" + }, + "engines": { + "node": ">=17" + } + }, + "node_modules/@coral-xyz/anchor-errors": { + "version": "0.31.1", + "resolved": "https://registry.npmjs.org/@coral-xyz/anchor-errors/-/anchor-errors-0.31.1.tgz", + "integrity": "sha512-NhNEku4F3zzUSBtrYz84FzYWm48+9OvmT1Hhnwr6GnPQry2dsEqH/ti/7ASjjpoFTWRnPXrjAIT1qM6Isop+LQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/@coral-xyz/borsh": { + "version": "0.31.1", + "resolved": "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.31.1.tgz", + "integrity": "sha512-9N8AU9F0ubriKfNE3g1WF0/4dtlGXoBN/hd1PvbNBamBNwRgHxH4P+o3Zt7rSEloW1HUs6LfZEchlx9fW7POYw==", + "license": "Apache-2.0", + "dependencies": { + "bn.js": "^5.1.2", + "buffer-layout": "^1.2.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@solana/web3.js": "^1.69.0" + } + }, + "node_modules/@noble/curves": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", + "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.7.2" + }, + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/hashes": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", + "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@solana/buffer-layout": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz", + "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==", + "license": "MIT", + "dependencies": { + "buffer": "~6.0.3" + }, + "engines": { + "node": ">=5.10" + } + }, + "node_modules/@solana/web3.js": { + "version": "1.98.2", + "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.98.2.tgz", + "integrity": "sha512-BqVwEG+TaG2yCkBMbD3C4hdpustR4FpuUFRPUmqRZYYlPI9Hg4XMWxHWOWRzHE9Lkc9NDjzXFX7lDXSgzC7R1A==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.25.0", + "@noble/curves": "^1.4.2", + "@noble/hashes": "^1.4.0", + "@solana/buffer-layout": "^4.0.1", + "@solana/codecs-numbers": "^2.1.0", + "agentkeepalive": "^4.5.0", + "bn.js": "^5.2.1", + "borsh": "^0.7.0", + "bs58": "^4.0.1", + "buffer": "6.0.3", + "fast-stable-stringify": "^1.0.0", + "jayson": "^4.1.1", + "node-fetch": "^2.7.0", + "rpc-websockets": "^9.0.2", + "superstruct": "^2.0.2" + } + }, + "node_modules/@solana/web3.js/node_modules/@solana/codecs-core": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.2.1.tgz", + "integrity": "sha512-ZW1kTmvqhQhk/jMDo7wZgApn1Lf+d3AecHF6bcWPVSr+KlGLtWZL0wcP+0tnsncPhvG28pZxRR57f4TUylSA7Q==", + "license": "MIT", + "dependencies": { + "@solana/errors": "2.2.1" + }, + "engines": { + "node": ">=20.18.0" + }, + "peerDependencies": { + "typescript": ">=5.3.3" + } + }, + "node_modules/@solana/web3.js/node_modules/@solana/codecs-numbers": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.2.1.tgz", + "integrity": "sha512-qlJHWZFGzhMa7R6EZXNM/ycINGrR4lzBQjwFMs2pXnCxqKTI3Vru0f4kSh0qqf6U1bjNLaYXTMniqETX6ANpzg==", + "license": "MIT", + "dependencies": { + "@solana/codecs-core": "2.2.1", + "@solana/errors": "2.2.1" + }, + "engines": { + "node": ">=20.18.0" + }, + "peerDependencies": { + "typescript": ">=5.3.3" + } + }, + "node_modules/@solana/web3.js/node_modules/@solana/errors": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-2.2.1.tgz", + "integrity": "sha512-BiCivvqhNsg5BiWTshsRwGC/866ycfAxj/KMV+uH9pKohXyEENXedgj6U3fAIJiJLdSFya61CLl2EnDygnUPBg==", + "license": "MIT", + "dependencies": { + "chalk": "^5.4.1", + "commander": "^13.1.0" + }, + "bin": { + "errors": "bin/cli.mjs" + }, + "engines": { + "node": ">=20.18.0" + }, + "peerDependencies": { + "typescript": ">=5.3.3" + } + }, + "node_modules/@solana/web3.js/node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@solana/web3.js/node_modules/commander": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz", + "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/@solana/web3.js/node_modules/superstruct": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-2.0.2.tgz", + "integrity": "sha512-uV+TFRZdXsqXTL2pRvujROjdZQ4RAlBUS5BTh9IGm+jTqQntYThciG/qu57Gs69yjnVUSqdxF9YLmSnpupBW9A==", + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@solana/web3.js/node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/@swc/helpers": { + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz", + "integrity": "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@types/bn.js": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.6.tgz", + "integrity": "sha512-Xh8vSwUeMKeYYrj3cX4lGQgFSF/N03r+tv4AiLl1SucqV+uTQpxRcnM8AkXKHwYP9ZPXOYXRr2KPXpVlIvqh9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/@types/mocha": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", + "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz", + "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/uuid": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", + "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", + "license": "MIT" + }, + "node_modules/@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ungap/promise-all-settled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", + "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", + "dev": true, + "license": "ISC" + }, + "node_modules/agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", + "license": "MIT", + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT" + }, + "node_modules/borsh": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", + "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", + "dependencies": { + "bn.js": "^5.2.0", + "bs58": "^4.0.0", + "text-encoding-utf-8": "^1.0.2" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true, + "license": "ISC" + }, + "node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "dependencies": { + "base-x": "^3.0.2" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/buffer-layout": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/buffer-layout/-/buffer-layout-1.2.2.tgz", + "integrity": "sha512-kWSuLN694+KTk8SrYvCqwP2WcgQjoRCiF5b4QDvkkz8EmgD+aWAIceGFKMIAdmF/pH+vpgNV3d3kAKorcdAmWA==", + "license": "MIT", + "engines": { + "node": ">=4.5" + } + }, + "node_modules/bufferutil": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.9.tgz", + "integrity": "sha512-WDtdLmJvAuNNPzByAYpRo2rF1Mmradw6gvWsQKf63476DDXmomT9zUiGypLcG4ibIM67vhAj8jJRdbmEws2Aqw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">=6.14.2" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-fetch": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz", + "integrity": "sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==", + "license": "MIT", + "dependencies": { + "node-fetch": "^2.7.0" + } + }, + "node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/delay": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz", + "integrity": "sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "license": "MIT" + }, + "node_modules/es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", + "license": "MIT", + "dependencies": { + "es6-promise": "^4.0.3" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "license": "MIT" + }, + "node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", + "engines": { + "node": "> 0.1.90" + } + }, + "node_modules/fast-stable-stringify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-stable-stringify/-/fast-stable-stringify-1.0.0.tgz", + "integrity": "sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag==", + "license": "MIT" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "license": "BSD-3-Clause", + "bin": { + "flat": "cli.js" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.x" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/isomorphic-ws": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", + "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==", + "license": "MIT", + "peerDependencies": { + "ws": "*" + } + }, + "node_modules/jayson": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/jayson/-/jayson-4.1.3.tgz", + "integrity": "sha512-LtXh5aYZodBZ9Fc3j6f2w+MTNcnxteMOrb+QgIouguGOulWi0lieEkOUg+HkjjFs0DGoWDds6bi4E9hpNFLulQ==", + "license": "MIT", + "dependencies": { + "@types/connect": "^3.4.33", + "@types/node": "^12.12.54", + "@types/ws": "^7.4.4", + "commander": "^2.20.3", + "delay": "^5.0.0", + "es6-promisify": "^5.0.0", + "eyes": "^0.1.8", + "isomorphic-ws": "^4.0.1", + "json-stringify-safe": "^5.0.1", + "JSONStream": "^1.3.5", + "uuid": "^8.3.2", + "ws": "^7.5.10" + }, + "bin": { + "jayson": "bin/jayson.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jayson/node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC" + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ], + "license": "MIT" + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-func-name": "^2.0.1" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/minimatch": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz", + "integrity": "sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mocha": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz", + "integrity": "sha512-L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ungap/promise-all-settled": "1.1.2", + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.3", + "debug": "4.3.3", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.2.0", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", + "minimatch": "4.2.1", + "ms": "2.1.3", + "nanoid": "3.3.1", + "serialize-javascript": "6.0.0", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "which": "2.0.2", + "workerpool": "6.2.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mochajs" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", + "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", + "dev": true, + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "license": "MIT", + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", + "license": "(MIT AND Zlib)" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rpc-websockets": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/rpc-websockets/-/rpc-websockets-9.1.1.tgz", + "integrity": "sha512-1IXGM/TfPT6nfYMIXkJdzn+L4JEsmb0FL1O2OBjaH03V3yuUDdKFulGLMFG6ErV+8pZ5HVC0limve01RyO+saA==", + "license": "LGPL-3.0-only", + "dependencies": { + "@swc/helpers": "^0.5.11", + "@types/uuid": "^8.3.4", + "@types/ws": "^8.2.2", + "buffer": "^6.0.3", + "eventemitter3": "^5.0.1", + "uuid": "^8.3.2", + "ws": "^8.5.0" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/kozjak" + }, + "optionalDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + } + }, + "node_modules/rpc-websockets/node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/rpc-websockets/node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "license": "MIT" + }, + "node_modules/rpc-websockets/node_modules/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/superstruct": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-0.15.5.tgz", + "integrity": "sha512-4AOeU+P5UuE/4nOUkmcQdW5y7i9ndt1cQd/3iUe+LTz3RxESf/W/5lg4B74HbDMMv8PHnPnGCQFH45kBcrQYoQ==", + "license": "MIT" + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/text-encoding-utf-8": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", + "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "license": "MIT" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toml": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==", + "license": "MIT" + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, + "node_modules/ts-mocha": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ts-mocha/-/ts-mocha-10.1.0.tgz", + "integrity": "sha512-T0C0Xm3/WqCuF2tpa0GNGESTBoKZaiqdUP8guNv4ZY316AFXlyidnrzQ1LUrCT0Wb1i3J0zFTgOh/55Un44WdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ts-node": "7.0.1" + }, + "bin": { + "ts-mocha": "bin/ts-mocha" + }, + "engines": { + "node": ">= 6.X.X" + }, + "optionalDependencies": { + "tsconfig-paths": "^3.5.0" + }, + "peerDependencies": { + "mocha": "^3.X.X || ^4.X.X || ^5.X.X || ^6.X.X || ^7.X.X || ^8.X.X || ^9.X.X || ^10.X.X || ^11.X.X" + } + }, + "node_modules/ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" + }, + "bin": { + "ts-node": "dist/bin.js" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ts-node/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, + "node_modules/utf-8-validate": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", + "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">=6.14.2" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/workerpool": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.0.tgz", + "integrity": "sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/yarn.lock b/yarn.lock index fa65f7d..5a376bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,69 +4,96 @@ "@babel/runtime@^7.25.0": version "7.27.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.0.tgz#fbee7cf97c709518ecc1f590984481d5460d4762" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz" integrity sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw== dependencies: regenerator-runtime "^0.14.0" -"@coral-xyz/anchor@^0.29.0": - version "0.29.0" - resolved "https://registry.yarnpkg.com/@coral-xyz/anchor/-/anchor-0.29.0.tgz#bd0be95bedfb30a381c3e676e5926124c310ff12" - integrity sha512-eny6QNG0WOwqV0zQ7cs/b1tIuzZGmP7U7EcH+ogt4Gdbl8HDmIYVMh/9aTmYZPaFWjtUaI8qSn73uYEXWfATdA== +"@coral-xyz/anchor-errors@^0.31.1": + version "0.31.1" + resolved "https://registry.npmjs.org/@coral-xyz/anchor-errors/-/anchor-errors-0.31.1.tgz" + integrity sha512-NhNEku4F3zzUSBtrYz84FzYWm48+9OvmT1Hhnwr6GnPQry2dsEqH/ti/7ASjjpoFTWRnPXrjAIT1qM6Isop+LQ== + +"@coral-xyz/anchor@^0.31.1": + version "0.31.1" + resolved "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.31.1.tgz" + integrity sha512-QUqpoEK+gi2S6nlYc2atgT2r41TT3caWr/cPUEL8n8Md9437trZ68STknq897b82p5mW0XrTBNOzRbmIRJtfsA== dependencies: - "@coral-xyz/borsh" "^0.29.0" + "@coral-xyz/anchor-errors" "^0.31.1" + "@coral-xyz/borsh" "^0.31.1" "@noble/hashes" "^1.3.1" - "@solana/web3.js" "^1.68.0" + "@solana/web3.js" "^1.69.0" bn.js "^5.1.2" bs58 "^4.0.1" buffer-layout "^1.2.2" camelcase "^6.3.0" cross-fetch "^3.1.5" - crypto-hash "^1.3.0" eventemitter3 "^4.0.7" pako "^2.0.3" - snake-case "^3.0.4" superstruct "^0.15.4" toml "^3.0.0" -"@coral-xyz/borsh@^0.29.0": - version "0.29.0" - resolved "https://registry.yarnpkg.com/@coral-xyz/borsh/-/borsh-0.29.0.tgz#79f7045df2ef66da8006d47f5399c7190363e71f" - integrity sha512-s7VFVa3a0oqpkuRloWVPdCK7hMbAMY270geZOGfCnaqexrP5dTIpbEHL33req6IYPPJ0hYa71cdvJ1h6V55/oQ== +"@coral-xyz/borsh@^0.31.1": + version "0.31.1" + resolved "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.31.1.tgz" + integrity sha512-9N8AU9F0ubriKfNE3g1WF0/4dtlGXoBN/hd1PvbNBamBNwRgHxH4P+o3Zt7rSEloW1HUs6LfZEchlx9fW7POYw== dependencies: bn.js "^5.1.2" buffer-layout "^1.2.0" "@noble/curves@^1.4.2": version "1.8.2" - resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.8.2.tgz#8f24c037795e22b90ae29e222a856294c1d9ffc7" + resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz" integrity sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g== dependencies: "@noble/hashes" "1.7.2" -"@noble/hashes@1.7.2", "@noble/hashes@^1.3.1", "@noble/hashes@^1.4.0": +"@noble/hashes@^1.3.1", "@noble/hashes@^1.4.0", "@noble/hashes@1.7.2": version "1.7.2" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.7.2.tgz#d53c65a21658fb02f3303e7ee3ba89d6754c64b4" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz" integrity sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ== "@solana/buffer-layout@^4.0.1": version "4.0.1" - resolved "https://registry.yarnpkg.com/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz#b996235eaec15b1e0b5092a8ed6028df77fa6c15" + resolved "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz" integrity sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA== dependencies: buffer "~6.0.3" -"@solana/web3.js@^1.68.0": - version "1.98.0" - resolved "https://registry.yarnpkg.com/@solana/web3.js/-/web3.js-1.98.0.tgz#21ecfe8198c10831df6f0cfde7f68370d0405917" - integrity sha512-nz3Q5OeyGFpFCR+erX2f6JPt3sKhzhYcSycBCSPkWjzSVDh/Rr1FqTVMRe58FKO16/ivTUcuJjeS5MyBvpkbzA== +"@solana/codecs-core@2.2.1": + version "2.2.1" + resolved "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.2.1.tgz" + integrity sha512-ZW1kTmvqhQhk/jMDo7wZgApn1Lf+d3AecHF6bcWPVSr+KlGLtWZL0wcP+0tnsncPhvG28pZxRR57f4TUylSA7Q== + dependencies: + "@solana/errors" "2.2.1" + +"@solana/codecs-numbers@^2.1.0": + version "2.2.1" + resolved "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.2.1.tgz" + integrity sha512-qlJHWZFGzhMa7R6EZXNM/ycINGrR4lzBQjwFMs2pXnCxqKTI3Vru0f4kSh0qqf6U1bjNLaYXTMniqETX6ANpzg== + dependencies: + "@solana/codecs-core" "2.2.1" + "@solana/errors" "2.2.1" + +"@solana/errors@2.2.1": + version "2.2.1" + resolved "https://registry.npmjs.org/@solana/errors/-/errors-2.2.1.tgz" + integrity sha512-BiCivvqhNsg5BiWTshsRwGC/866ycfAxj/KMV+uH9pKohXyEENXedgj6U3fAIJiJLdSFya61CLl2EnDygnUPBg== + dependencies: + chalk "^5.4.1" + commander "^13.1.0" + +"@solana/web3.js@^1.69.0": + version "1.98.2" + resolved "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.98.2.tgz" + integrity sha512-BqVwEG+TaG2yCkBMbD3C4hdpustR4FpuUFRPUmqRZYYlPI9Hg4XMWxHWOWRzHE9Lkc9NDjzXFX7lDXSgzC7R1A== dependencies: "@babel/runtime" "^7.25.0" "@noble/curves" "^1.4.2" "@noble/hashes" "^1.4.0" "@solana/buffer-layout" "^4.0.1" + "@solana/codecs-numbers" "^2.1.0" agentkeepalive "^4.5.0" - bigint-buffer "^1.1.5" bn.js "^5.2.1" borsh "^0.7.0" bs58 "^4.0.1" @@ -79,111 +106,103 @@ "@swc/helpers@^0.5.11": version "0.5.17" - resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.17.tgz#5a7be95ac0f0bf186e7e6e890e7a6f6cda6ce971" + resolved "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz" integrity sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A== dependencies: tslib "^2.8.0" "@types/bn.js@^5.1.0": version "5.1.6" - resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.6.tgz#9ba818eec0c85e4d3c679518428afdf611d03203" + resolved "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.6.tgz" integrity sha512-Xh8vSwUeMKeYYrj3cX4lGQgFSF/N03r+tv4AiLl1SucqV+uTQpxRcnM8AkXKHwYP9ZPXOYXRr2KPXpVlIvqh9w== dependencies: "@types/node" "*" "@types/chai@^4.3.0": version "4.3.20" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.20.tgz#cb291577ed342ca92600430841a00329ba05cecc" + resolved "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz" integrity sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ== "@types/connect@^3.4.33": version "3.4.38" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" + resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz" integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== dependencies: "@types/node" "*" "@types/json5@^0.0.29": version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== "@types/mocha@^9.0.0": version "9.1.1" - resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-9.1.1.tgz#e7c4f1001eefa4b8afbd1eee27a237fee3bf29c4" + resolved "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz" integrity sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw== "@types/node@*": version "22.14.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.14.1.tgz#53b54585cec81c21eee3697521e31312d6ca1e6f" + resolved "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz" integrity sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw== dependencies: undici-types "~6.21.0" "@types/node@^12.12.54": version "12.20.55" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" + resolved "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/uuid@^8.3.4": version "8.3.4" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-8.3.4.tgz#bd86a43617df0594787d38b735f55c805becf1bc" + resolved "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz" integrity sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw== "@types/ws@^7.4.4": version "7.4.7" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.7.tgz#f7c390a36f7a0679aa69de2d501319f4f8d9b702" + resolved "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz" integrity sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww== dependencies: "@types/node" "*" "@types/ws@^8.2.2": version "8.18.1" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.18.1.tgz#48464e4bf2ddfd17db13d845467f6070ffea4aa9" + resolved "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz" integrity sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg== dependencies: "@types/node" "*" "@ungap/promise-all-settled@1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" + resolved "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz" integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== -JSONStream@^1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" - integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== - dependencies: - jsonparse "^1.2.0" - through ">=2.2.7 <3" - agentkeepalive@^4.5.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.6.0.tgz#35f73e94b3f40bf65f105219c623ad19c136ea6a" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz" integrity sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ== dependencies: humanize-ms "^1.2.1" ansi-colors@4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" anymatch@~3.1.2: version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -191,63 +210,49 @@ anymatch@~3.1.2: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== arrify@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== assertion-error@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + resolved "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base-x@^3.0.2: version "3.0.11" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.11.tgz#40d80e2a1aeacba29792ccc6c5354806421287ff" + resolved "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz" integrity sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA== dependencies: safe-buffer "^5.0.1" base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -bigint-buffer@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/bigint-buffer/-/bigint-buffer-1.1.5.tgz#d038f31c8e4534c1f8d0015209bf34b4fa6dd442" - integrity sha512-trfYco6AoZ+rKhKnxA0hgX0HAbVP/s808/EuDSe2JDzUnCp/xAsli35Orvk67UrTEcwuxZqYZDmfA2RXJgxVvA== - dependencies: - bindings "^1.3.0" - binary-extensions@^2.0.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== -bindings@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: version "5.2.1" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== borsh@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/borsh/-/borsh-0.7.0.tgz#6e9560d719d86d90dc589bca60ffc8a6c51fec2a" + resolved "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz" integrity sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA== dependencies: bn.js "^5.2.0" @@ -256,7 +261,7 @@ borsh@^0.7.0: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -264,36 +269,36 @@ brace-expansion@^1.1.7: braces@~3.0.2: version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" browser-stdout@1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + resolved "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== bs58@^4.0.0, bs58@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" + resolved "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz" integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== dependencies: base-x "^3.0.2" buffer-from@^1.0.0, buffer-from@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer-layout@^1.2.0, buffer-layout@^1.2.2: version "1.2.2" - resolved "https://registry.yarnpkg.com/buffer-layout/-/buffer-layout-1.2.2.tgz#b9814e7c7235783085f9ca4966a0cfff112259d5" + resolved "https://registry.npmjs.org/buffer-layout/-/buffer-layout-1.2.2.tgz" integrity sha512-kWSuLN694+KTk8SrYvCqwP2WcgQjoRCiF5b4QDvkkz8EmgD+aWAIceGFKMIAdmF/pH+vpgNV3d3kAKorcdAmWA== -buffer@6.0.3, buffer@^6.0.3, buffer@~6.0.3: +buffer@^6.0.3, buffer@~6.0.3, buffer@6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -301,19 +306,19 @@ buffer@6.0.3, buffer@^6.0.3, buffer@~6.0.3: bufferutil@^4.0.1: version "4.0.9" - resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.9.tgz#6e81739ad48a95cad45a279588e13e95e24a800a" + resolved "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.9.tgz" integrity sha512-WDtdLmJvAuNNPzByAYpRo2rF1Mmradw6gvWsQKf63476DDXmomT9zUiGypLcG4ibIM67vhAj8jJRdbmEws2Aqw== dependencies: node-gyp-build "^4.3.0" camelcase@^6.0.0, camelcase@^6.3.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== chai@^4.3.4: version "4.5.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.5.0.tgz#707e49923afdd9b13a8b0b47d33d732d13812fd8" + resolved "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz" integrity sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw== dependencies: assertion-error "^1.1.0" @@ -326,22 +331,27 @@ chai@^4.3.4: chalk@^4.1.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^5.4.1: + version "5.4.1" + resolved "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz" + integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== + check-error@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + resolved "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz" integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== dependencies: get-func-name "^2.0.2" chokidar@3.5.3: version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: anymatch "~3.1.2" @@ -356,7 +366,7 @@ chokidar@3.5.3: cliui@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -365,142 +375,129 @@ cliui@^7.0.2: color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +commander@^13.1.0: + version "13.1.0" + resolved "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz" + integrity sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw== + commander@^2.20.3: version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== cross-fetch@^3.1.5: version "3.2.0" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.2.0.tgz#34e9192f53bc757d6614304d9e5e6fb4edb782e3" + resolved "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz" integrity sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q== dependencies: node-fetch "^2.7.0" -crypto-hash@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/crypto-hash/-/crypto-hash-1.3.0.tgz#b402cb08f4529e9f4f09346c3e275942f845e247" - integrity sha512-lyAZ0EMyjDkVvz8WOeVnuCPvKVBXcMv1l5SVqO1yC7PzTwrD/pPje/BIRbWhMoPe436U+Y2nD7f5bFx0kt+Sbg== - debug@4.3.3: version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz" integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== dependencies: ms "2.1.2" decamelize@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== deep-eql@^4.1.3: version "4.1.4" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.4.tgz#d0d3912865911bb8fac5afb4e3acfa6a28dc72b7" + resolved "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz" integrity sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg== dependencies: type-detect "^4.0.0" delay@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" + resolved "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz" integrity sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw== -diff@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" - integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== - diff@^3.1.0: version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + resolved "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== -dot-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" - integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" +diff@5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz" + integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== es6-promise@^4.0.3: version "4.2.8" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz" integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== es6-promisify@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + resolved "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz" integrity sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ== dependencies: es6-promise "^4.0.3" escalade@^3.1.1: version "3.2.0" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== escape-string-regexp@4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eventemitter3@^4.0.7: version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== eventemitter3@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== eyes@^0.1.8: version "0.1.8" - resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" + resolved "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz" integrity sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ== fast-stable-stringify@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fast-stable-stringify/-/fast-stable-stringify-1.0.0.tgz#5c5543462b22aeeefd36d05b34e51c78cb86d313" + resolved "https://registry.npmjs.org/fast-stable-stringify/-/fast-stable-stringify-1.0.0.tgz" integrity sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag== -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - fill-range@^7.1.1: version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz" integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" find-up@5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -508,39 +505,34 @@ find-up@5.0.0: flat@^5.0.2: version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-func-name@^2.0.1, get-func-name@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + resolved "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz" integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob@7.2.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" @@ -552,34 +544,34 @@ glob@7.2.0: growl@1.10.5: version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + resolved "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== he@1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== humanize-ms@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz" integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== dependencies: ms "^2.0.0" ieee754@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" @@ -587,110 +579,118 @@ inflight@^1.0.4: inherits@2: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-plain-obj@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-unicode-supported@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isomorphic-ws@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" + resolved "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz" integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== jayson@^4.1.1: version "4.1.3" - resolved "https://registry.yarnpkg.com/jayson/-/jayson-4.1.3.tgz#db9be2e4287d9fef4fc05b5fe367abe792c2eee8" + resolved "https://registry.npmjs.org/jayson/-/jayson-4.1.3.tgz" integrity sha512-LtXh5aYZodBZ9Fc3j6f2w+MTNcnxteMOrb+QgIouguGOulWi0lieEkOUg+HkjjFs0DGoWDds6bi4E9hpNFLulQ== dependencies: "@types/connect" "^3.4.33" "@types/node" "^12.12.54" "@types/ws" "^7.4.4" - JSONStream "^1.3.5" commander "^2.20.3" delay "^5.0.0" es6-promisify "^5.0.0" eyes "^0.1.8" isomorphic-ws "^4.0.1" json-stringify-safe "^5.0.1" + JSONStream "^1.3.5" uuid "^8.3.2" ws "^7.5.10" js-yaml@4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" json-stringify-safe@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json5@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" jsonparse@^1.2.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz" integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== +JSONStream@^1.3.5: + version "1.3.5" + resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz" + integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" log-symbols@4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: chalk "^4.1.0" @@ -698,52 +698,45 @@ log-symbols@4.1.0: loupe@^2.3.6: version "2.3.7" - resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + resolved "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz" integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== dependencies: get-func-name "^2.0.1" -lower-case@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" - integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== - dependencies: - tslib "^2.0.3" - make-error@^1.1.1: version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== -minimatch@4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" - integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== - dependencies: - brace-expansion "^1.1.7" - minimatch@^3.0.4: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" +minimatch@4.2.1: + version "4.2.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz" + integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== + dependencies: + brace-expansion "^1.1.7" + minimist@^1.2.0, minimist@^1.2.6: version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== mkdirp@^0.5.1: version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: minimist "^1.2.6" -mocha@^9.0.3: +"mocha@^3.X.X || ^4.X.X || ^5.X.X || ^6.X.X || ^7.X.X || ^8.X.X || ^9.X.X || ^10.X.X || ^11.X.X", mocha@^9.0.3: version "9.2.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-9.2.2.tgz#d70db46bdb93ca57402c809333e5a84977a88fb9" + resolved "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz" integrity sha512-L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g== dependencies: "@ungap/promise-all-settled" "1.1.2" @@ -771,124 +764,116 @@ mocha@^9.0.3: yargs-parser "20.2.4" yargs-unparser "2.0.0" +ms@^2.0.0, ms@2.1.3: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.0.0: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - nanoid@3.3.1: version "3.3.1" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz" integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== -no-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" - integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== - dependencies: - lower-case "^2.0.2" - tslib "^2.0.3" - node-fetch@^2.7.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" node-gyp-build@^4.3.0: version "4.8.4" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz" integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== once@^1.3.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" p-limit@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" pako@^2.0.3: version "2.1.0" - resolved "https://registry.yarnpkg.com/pako/-/pako-2.1.0.tgz#266cc37f98c7d883545d11335c00fbd4062c9a86" + resolved "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz" integrity sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug== path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== pathval@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + resolved "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz" integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== picomatch@^2.0.4, picomatch@^2.2.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== prettier@^2.6.2: version "2.8.8" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz" integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== randombytes@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" regenerator-runtime@^0.14.0: version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz" integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== rpc-websockets@^9.0.2: version "9.1.1" - resolved "https://registry.yarnpkg.com/rpc-websockets/-/rpc-websockets-9.1.1.tgz#5764336f3623ee1c5cc8653b7335183e3c0c78bd" + resolved "https://registry.npmjs.org/rpc-websockets/-/rpc-websockets-9.1.1.tgz" integrity sha512-1IXGM/TfPT6nfYMIXkJdzn+L4JEsmb0FL1O2OBjaH03V3yuUDdKFulGLMFG6ErV+8pZ5HVC0limve01RyO+saA== dependencies: "@swc/helpers" "^0.5.11" @@ -904,27 +889,19 @@ rpc-websockets@^9.0.2: safe-buffer@^5.0.1, safe-buffer@^5.1.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== serialize-javascript@6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz" integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== dependencies: randombytes "^2.1.0" -snake-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" - integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== - dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" - source-map-support@^0.5.6: version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" @@ -932,12 +909,12 @@ source-map-support@^0.5.6: source-map@^0.6.0: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -946,75 +923,75 @@ string-width@^4.1.0, string-width@^4.2.0: strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-json-comments@3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== superstruct@^0.15.4: version "0.15.5" - resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-0.15.5.tgz#0f0a8d3ce31313f0d84c6096cd4fa1bfdedc9dab" + resolved "https://registry.npmjs.org/superstruct/-/superstruct-0.15.5.tgz" integrity sha512-4AOeU+P5UuE/4nOUkmcQdW5y7i9ndt1cQd/3iUe+LTz3RxESf/W/5lg4B74HbDMMv8PHnPnGCQFH45kBcrQYoQ== superstruct@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-2.0.2.tgz#3f6d32fbdc11c357deff127d591a39b996300c54" + resolved "https://registry.npmjs.org/superstruct/-/superstruct-2.0.2.tgz" integrity sha512-uV+TFRZdXsqXTL2pRvujROjdZQ4RAlBUS5BTh9IGm+jTqQntYThciG/qu57Gs69yjnVUSqdxF9YLmSnpupBW9A== -supports-color@8.1.1: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" +supports-color@8.1.1: + version "8.1.1" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + text-encoding-utf-8@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz#585b62197b0ae437e3c7b5d0af27ac1021e10d13" + resolved "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz" integrity sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg== "through@>=2.2.7 <3": version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" toml@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + resolved "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz" integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== tr46@~0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-mocha@^10.0.0: version "10.1.0" - resolved "https://registry.yarnpkg.com/ts-mocha/-/ts-mocha-10.1.0.tgz#17a1c055f5f7733fd82447c4420740db87221bc8" + resolved "https://registry.npmjs.org/ts-mocha/-/ts-mocha-10.1.0.tgz" integrity sha512-T0C0Xm3/WqCuF2tpa0GNGESTBoKZaiqdUP8guNv4ZY316AFXlyidnrzQ1LUrCT0Wb1i3J0zFTgOh/55Un44WdA== dependencies: ts-node "7.0.1" @@ -1023,7 +1000,7 @@ ts-mocha@^10.0.0: ts-node@7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-7.0.1.tgz#9562dc2d1e6d248d24bc55f773e3f614337d9baf" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz" integrity sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw== dependencies: arrify "^1.0.0" @@ -1037,7 +1014,7 @@ ts-node@7.0.1: tsconfig-paths@^3.5.0: version "3.15.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz" integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== dependencies: "@types/json5" "^0.0.29" @@ -1045,46 +1022,51 @@ tsconfig-paths@^3.5.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.3, tslib@^2.8.0: +tslib@^2.8.0: version "2.8.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== type-detect@^4.0.0, type-detect@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.1.0.tgz#deb2453e8f08dcae7ae98c626b13dddb0155906c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz" integrity sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw== typescript@^4.3.5: version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== +typescript@>=5.3.3: + version "5.8.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz" + integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ== + undici-types@~6.21.0: version "6.21.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz" integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== -utf-8-validate@^5.0.2: +utf-8-validate@^5.0.2, utf-8-validate@>=5.0.2: version "5.0.10" - resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2" + resolved "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz" integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ== dependencies: node-gyp-build "^4.3.0" uuid@^8.3.2: version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -1092,19 +1074,19 @@ whatwg-url@^5.0.0: which@2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" workerpool@6.2.0: version "6.2.0" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.0.tgz#827d93c9ba23ee2019c3ffaff5c27fccea289e8b" + resolved "https://registry.npmjs.org/workerpool/-/workerpool-6.2.0.tgz" integrity sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A== wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -1113,37 +1095,32 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -ws@^7.5.10: +ws@*, ws@^7.5.10: version "7.5.10" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" + resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz" integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== ws@^8.5.0: version "8.18.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.1.tgz#ea131d3784e1dfdff91adb0a4a116b127515e3cb" + resolved "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz" integrity sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yargs-parser@20.2.4: +yargs-parser@^20.2.2, yargs-parser@20.2.4: version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== -yargs-parser@^20.2.2: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - yargs-unparser@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + resolved "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz" integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== dependencies: camelcase "^6.0.0" @@ -1153,7 +1130,7 @@ yargs-unparser@2.0.0: yargs@16.2.0: version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" @@ -1166,10 +1143,10 @@ yargs@16.2.0: yn@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" + resolved "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz" integrity sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ== yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From 54adb746007b2fcc99a30cc6631b8f54d7c99817 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 10:02:04 -0700 Subject: [PATCH 13/16] more upgrading versions --- .github/workflows/release-program.yaml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index bc0dc8e..89a751d 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -71,9 +71,11 @@ jobs: solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - run: | - git stash - git pull --rebase - git stash pop + git stash + git pull --rebase + git stash pop || true + git checkout --ours Cargo.lock || true + git add Cargo.lock || true - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json From 9486a1b2cd156055f696644a03a9fe72e36a1be6 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 10:25:48 -0700 Subject: [PATCH 14/16] attempt at fixing build errors --- .github/workflows/release-program.yaml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index 89a751d..e662e49 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -71,11 +71,15 @@ jobs: solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - run: | - git stash + cp target/deploy/${{ inputs.program }}.so /tmp/ + cp target/idl/${{ inputs.program }}.json /tmp/ + + git reset --hard git pull --rebase - git stash pop || true - git checkout --ours Cargo.lock || true - git add Cargo.lock || true + + mkdir -p target/deploy target/idl + cp /tmp/${{ inputs.program }}.so target/deploy/ + cp /tmp/${{ inputs.program }}.json target/idl/ - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json From e433e17508f2b9d9429a7f73326bd98a252bcc26 Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 12:29:15 -0700 Subject: [PATCH 15/16] reverting back to older way of doing things --- .github/workflows/release-program.yaml | 12 +- package-lock.json | 180 ++++++++++++++----------- package.json | 2 +- yarn.lock | 152 ++++++++++++--------- 4 files changed, 191 insertions(+), 155 deletions(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index e662e49..bc0dc8e 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -71,15 +71,9 @@ jobs: solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - run: | - cp target/deploy/${{ inputs.program }}.so /tmp/ - cp target/idl/${{ inputs.program }}.json /tmp/ - - git reset --hard - git pull --rebase - - mkdir -p target/deploy target/idl - cp /tmp/${{ inputs.program }}.so target/deploy/ - cp /tmp/${{ inputs.program }}.json target/idl/ + git stash + git pull --rebase + git stash pop - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json diff --git a/package-lock.json b/package-lock.json index 8d2ecfa..685a21f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "dependencies": { - "@coral-xyz/anchor": "^0.31.1" + "@coral-xyz/anchor": "^0.29.0" }, "devDependencies": { "@types/bn.js": "^5.1.0", @@ -19,54 +19,43 @@ } }, "node_modules/@babel/runtime": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz", - "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.6.tgz", + "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==", "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, "engines": { "node": ">=6.9.0" } }, "node_modules/@coral-xyz/anchor": { - "version": "0.31.1", - "resolved": "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.31.1.tgz", - "integrity": "sha512-QUqpoEK+gi2S6nlYc2atgT2r41TT3caWr/cPUEL8n8Md9437trZ68STknq897b82p5mW0XrTBNOzRbmIRJtfsA==", + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.29.0.tgz", + "integrity": "sha512-eny6QNG0WOwqV0zQ7cs/b1tIuzZGmP7U7EcH+ogt4Gdbl8HDmIYVMh/9aTmYZPaFWjtUaI8qSn73uYEXWfATdA==", "license": "(MIT OR Apache-2.0)", "dependencies": { - "@coral-xyz/anchor-errors": "^0.31.1", - "@coral-xyz/borsh": "^0.31.1", + "@coral-xyz/borsh": "^0.29.0", "@noble/hashes": "^1.3.1", - "@solana/web3.js": "^1.69.0", + "@solana/web3.js": "^1.68.0", "bn.js": "^5.1.2", "bs58": "^4.0.1", "buffer-layout": "^1.2.2", "camelcase": "^6.3.0", "cross-fetch": "^3.1.5", + "crypto-hash": "^1.3.0", "eventemitter3": "^4.0.7", "pako": "^2.0.3", + "snake-case": "^3.0.4", "superstruct": "^0.15.4", "toml": "^3.0.0" }, "engines": { - "node": ">=17" - } - }, - "node_modules/@coral-xyz/anchor-errors": { - "version": "0.31.1", - "resolved": "https://registry.npmjs.org/@coral-xyz/anchor-errors/-/anchor-errors-0.31.1.tgz", - "integrity": "sha512-NhNEku4F3zzUSBtrYz84FzYWm48+9OvmT1Hhnwr6GnPQry2dsEqH/ti/7ASjjpoFTWRnPXrjAIT1qM6Isop+LQ==", - "license": "Apache-2.0", - "engines": { - "node": ">=10" + "node": ">=11" } }, "node_modules/@coral-xyz/borsh": { - "version": "0.31.1", - "resolved": "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.31.1.tgz", - "integrity": "sha512-9N8AU9F0ubriKfNE3g1WF0/4dtlGXoBN/hd1PvbNBamBNwRgHxH4P+o3Zt7rSEloW1HUs6LfZEchlx9fW7POYw==", + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.29.0.tgz", + "integrity": "sha512-s7VFVa3a0oqpkuRloWVPdCK7hMbAMY270geZOGfCnaqexrP5dTIpbEHL33req6IYPPJ0hYa71cdvJ1h6V55/oQ==", "license": "Apache-2.0", "dependencies": { "bn.js": "^5.1.2", @@ -76,16 +65,16 @@ "node": ">=10" }, "peerDependencies": { - "@solana/web3.js": "^1.69.0" + "@solana/web3.js": "^1.68.0" } }, "node_modules/@noble/curves": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", - "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", + "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", "license": "MIT", "dependencies": { - "@noble/hashes": "1.7.2" + "@noble/hashes": "1.8.0" }, "engines": { "node": "^14.21.3 || >=16" @@ -95,9 +84,9 @@ } }, "node_modules/@noble/hashes": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", - "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", "license": "MIT", "engines": { "node": "^14.21.3 || >=16" @@ -455,9 +444,9 @@ } }, "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz", + "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==", "license": "MIT" }, "node_modules/borsh": { @@ -721,6 +710,18 @@ "node-fetch": "^2.7.0" } }, + "node_modules/crypto-hash": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/crypto-hash/-/crypto-hash-1.3.0.tgz", + "integrity": "sha512-lyAZ0EMyjDkVvz8WOeVnuCPvKVBXcMv1l5SVqO1yC7PzTwrD/pPje/BIRbWhMoPe436U+Y2nD7f5bFx0kt+Sbg==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/debug": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", @@ -794,6 +795,16 @@ "node": ">=0.3.1" } }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -1163,9 +1174,9 @@ } }, "node_modules/jayson": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/jayson/-/jayson-4.1.3.tgz", - "integrity": "sha512-LtXh5aYZodBZ9Fc3j6f2w+MTNcnxteMOrb+QgIouguGOulWi0lieEkOUg+HkjjFs0DGoWDds6bi4E9hpNFLulQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/jayson/-/jayson-4.2.0.tgz", + "integrity": "sha512-VfJ9t1YLwacIubLhONk0KFeosUBwstRWQ0IRT1KDjEjnVnSOVHC3uwugyV7L0c7R9lpVyrUGT2XWiBA1UTtpyg==", "license": "MIT", "dependencies": { "@types/connect": "^3.4.33", @@ -1177,7 +1188,7 @@ "eyes": "^0.1.8", "isomorphic-ws": "^4.0.1", "json-stringify-safe": "^5.0.1", - "JSONStream": "^1.3.5", + "stream-json": "^1.9.1", "uuid": "^8.3.2", "ws": "^7.5.10" }, @@ -1227,31 +1238,6 @@ "json5": "lib/cli.js" } }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "engines": [ - "node >= 0.2.0" - ], - "license": "MIT" - }, - "node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "license": "(MIT OR Apache-2.0)", - "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" - }, - "engines": { - "node": "*" - } - }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -1295,6 +1281,15 @@ "get-func-name": "^2.0.1" } }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", @@ -1401,6 +1396,16 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -1573,12 +1578,6 @@ "node": ">=8.10.0" } }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", - "license": "MIT" - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -1628,9 +1627,9 @@ "license": "MIT" }, "node_modules/rpc-websockets/node_modules/ws": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", - "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "license": "MIT", "engines": { "node": ">=10.0.0" @@ -1678,6 +1677,16 @@ "randombytes": "^2.1.0" } }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1699,6 +1708,21 @@ "source-map": "^0.6.0" } }, + "node_modules/stream-chain": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/stream-chain/-/stream-chain-2.2.5.tgz", + "integrity": "sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==", + "license": "BSD-3-Clause" + }, + "node_modules/stream-json": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/stream-json/-/stream-json-1.9.1.tgz", + "integrity": "sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==", + "license": "BSD-3-Clause", + "dependencies": { + "stream-chain": "^2.2.5" + } + }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -1778,12 +1802,6 @@ "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==" }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "license": "MIT" - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", diff --git a/package.json b/package.json index 89b3a41..cd83bac 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "lint": "prettier */*.js \"*/**/*{.js,.ts}\" --check" }, "dependencies": { - "@coral-xyz/anchor": "^0.31.1" + "@coral-xyz/anchor": "^0.29.0" }, "devDependencies": { "chai": "^4.3.4", diff --git a/yarn.lock b/yarn.lock index 5a376bc..a6d9d43 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,55 +3,49 @@ "@babel/runtime@^7.25.0": - version "7.27.0" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz" - integrity sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw== - dependencies: - regenerator-runtime "^0.14.0" - -"@coral-xyz/anchor-errors@^0.31.1": - version "0.31.1" - resolved "https://registry.npmjs.org/@coral-xyz/anchor-errors/-/anchor-errors-0.31.1.tgz" - integrity sha512-NhNEku4F3zzUSBtrYz84FzYWm48+9OvmT1Hhnwr6GnPQry2dsEqH/ti/7ASjjpoFTWRnPXrjAIT1qM6Isop+LQ== + version "7.27.6" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.6.tgz" + integrity sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q== -"@coral-xyz/anchor@^0.31.1": - version "0.31.1" - resolved "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.31.1.tgz" - integrity sha512-QUqpoEK+gi2S6nlYc2atgT2r41TT3caWr/cPUEL8n8Md9437trZ68STknq897b82p5mW0XrTBNOzRbmIRJtfsA== +"@coral-xyz/anchor@^0.29.0": + version "0.29.0" + resolved "https://registry.npmjs.org/@coral-xyz/anchor/-/anchor-0.29.0.tgz" + integrity sha512-eny6QNG0WOwqV0zQ7cs/b1tIuzZGmP7U7EcH+ogt4Gdbl8HDmIYVMh/9aTmYZPaFWjtUaI8qSn73uYEXWfATdA== dependencies: - "@coral-xyz/anchor-errors" "^0.31.1" - "@coral-xyz/borsh" "^0.31.1" + "@coral-xyz/borsh" "^0.29.0" "@noble/hashes" "^1.3.1" - "@solana/web3.js" "^1.69.0" + "@solana/web3.js" "^1.68.0" bn.js "^5.1.2" bs58 "^4.0.1" buffer-layout "^1.2.2" camelcase "^6.3.0" cross-fetch "^3.1.5" + crypto-hash "^1.3.0" eventemitter3 "^4.0.7" pako "^2.0.3" + snake-case "^3.0.4" superstruct "^0.15.4" toml "^3.0.0" -"@coral-xyz/borsh@^0.31.1": - version "0.31.1" - resolved "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.31.1.tgz" - integrity sha512-9N8AU9F0ubriKfNE3g1WF0/4dtlGXoBN/hd1PvbNBamBNwRgHxH4P+o3Zt7rSEloW1HUs6LfZEchlx9fW7POYw== +"@coral-xyz/borsh@^0.29.0": + version "0.29.0" + resolved "https://registry.npmjs.org/@coral-xyz/borsh/-/borsh-0.29.0.tgz" + integrity sha512-s7VFVa3a0oqpkuRloWVPdCK7hMbAMY270geZOGfCnaqexrP5dTIpbEHL33req6IYPPJ0hYa71cdvJ1h6V55/oQ== dependencies: bn.js "^5.1.2" buffer-layout "^1.2.0" "@noble/curves@^1.4.2": - version "1.8.2" - resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz" - integrity sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g== + version "1.9.2" + resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz" + integrity sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g== dependencies: - "@noble/hashes" "1.7.2" + "@noble/hashes" "1.8.0" -"@noble/hashes@^1.3.1", "@noble/hashes@^1.4.0", "@noble/hashes@1.7.2": - version "1.7.2" - resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz" - integrity sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ== +"@noble/hashes@^1.3.1", "@noble/hashes@^1.4.0", "@noble/hashes@1.8.0": + version "1.8.0" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== "@solana/buffer-layout@^4.0.1": version "4.0.1" @@ -83,7 +77,7 @@ chalk "^5.4.1" commander "^13.1.0" -"@solana/web3.js@^1.69.0": +"@solana/web3.js@^1.68.0": version "1.98.2" resolved "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.98.2.tgz" integrity sha512-BqVwEG+TaG2yCkBMbD3C4hdpustR4FpuUFRPUmqRZYYlPI9Hg4XMWxHWOWRzHE9Lkc9NDjzXFX7lDXSgzC7R1A== @@ -246,9 +240,9 @@ binary-extensions@^2.0.0: integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz" - integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + version "5.2.2" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz" + integrity sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== borsh@^0.7.0: version "0.7.0" @@ -407,6 +401,11 @@ cross-fetch@^3.1.5: dependencies: node-fetch "^2.7.0" +crypto-hash@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/crypto-hash/-/crypto-hash-1.3.0.tgz" + integrity sha512-lyAZ0EMyjDkVvz8WOeVnuCPvKVBXcMv1l5SVqO1yC7PzTwrD/pPje/BIRbWhMoPe436U+Y2nD7f5bFx0kt+Sbg== + debug@4.3.3: version "4.3.3" resolved "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz" @@ -441,6 +440,14 @@ diff@5.0.0: resolved "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz" integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" @@ -513,6 +520,11 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" @@ -632,9 +644,9 @@ isomorphic-ws@^4.0.1: integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== jayson@^4.1.1: - version "4.1.3" - resolved "https://registry.npmjs.org/jayson/-/jayson-4.1.3.tgz" - integrity sha512-LtXh5aYZodBZ9Fc3j6f2w+MTNcnxteMOrb+QgIouguGOulWi0lieEkOUg+HkjjFs0DGoWDds6bi4E9hpNFLulQ== + version "4.2.0" + resolved "https://registry.npmjs.org/jayson/-/jayson-4.2.0.tgz" + integrity sha512-VfJ9t1YLwacIubLhONk0KFeosUBwstRWQ0IRT1KDjEjnVnSOVHC3uwugyV7L0c7R9lpVyrUGT2XWiBA1UTtpyg== dependencies: "@types/connect" "^3.4.33" "@types/node" "^12.12.54" @@ -645,7 +657,7 @@ jayson@^4.1.1: eyes "^0.1.8" isomorphic-ws "^4.0.1" json-stringify-safe "^5.0.1" - JSONStream "^1.3.5" + stream-json "^1.9.1" uuid "^8.3.2" ws "^7.5.10" @@ -668,19 +680,6 @@ json5@^1.0.2: dependencies: minimist "^1.2.0" -jsonparse@^1.2.0: - version "1.3.1" - resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz" - integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== - -JSONStream@^1.3.5: - version "1.3.5" - resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz" - integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== - dependencies: - jsonparse "^1.2.0" - through ">=2.2.7 <3" - locate-path@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" @@ -703,6 +702,13 @@ loupe@^2.3.6: dependencies: get-func-name "^2.0.1" +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + make-error@^1.1.1: version "1.3.6" resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" @@ -779,6 +785,14 @@ nanoid@3.3.1: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz" integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz" @@ -861,11 +875,6 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -regenerator-runtime@^0.14.0: - version "0.14.1" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" @@ -899,6 +908,14 @@ serialize-javascript@6.0.0: dependencies: randombytes "^2.1.0" +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + source-map-support@^0.5.6: version "0.5.21" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" @@ -912,6 +929,18 @@ source-map@^0.6.0: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +stream-chain@^2.2.5: + version "2.2.5" + resolved "https://registry.npmjs.org/stream-chain/-/stream-chain-2.2.5.tgz" + integrity sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA== + +stream-json@^1.9.1: + version "1.9.1" + resolved "https://registry.npmjs.org/stream-json/-/stream-json-1.9.1.tgz" + integrity sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw== + dependencies: + stream-chain "^2.2.5" + string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" @@ -967,11 +996,6 @@ text-encoding-utf-8@^1.0.2: resolved "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz" integrity sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg== -"through@>=2.2.7 <3": - version "2.3.8" - resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" @@ -1022,7 +1046,7 @@ tsconfig-paths@^3.5.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.8.0: +tslib@^2.0.3, tslib@^2.8.0: version "2.8.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== @@ -1104,9 +1128,9 @@ ws@*, ws@^7.5.10: integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== ws@^8.5.0: - version "8.18.1" - resolved "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz" - integrity sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w== + version "8.18.3" + resolved "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== y18n@^5.0.5: version "5.0.8" From 4a889440e69b048b5a95e76478720d60e09e945c Mon Sep 17 00:00:00 2001 From: jrooks7 Date: Wed, 9 Jul 2025 12:50:30 -0700 Subject: [PATCH 16/16] even more base functionality restored --- .github/workflows/release-program.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/release-program.yaml b/.github/workflows/release-program.yaml index bc0dc8e..77428f2 100644 --- a/.github/workflows/release-program.yaml +++ b/.github/workflows/release-program.yaml @@ -70,10 +70,8 @@ jobs: anchor-version: ${{ inputs.anchor-version }} solana-cli-version: ${{ inputs.solana-cli-version }} node-version: ${{ inputs.node-version }} - - run: | - git stash + - run: | git pull --rebase - git stash pop - run: mkdir -p verifiable-builds - run: cp target/deploy/${{ inputs.program }}.so ./verifiable-builds/${{ inputs.program }}.so - run: cp target/idl/${{ inputs.program }}.json ./verifiable-builds/${{ inputs.program }}.json