From e399d0d7e713b7409ab0145785abb1277d4004a9 Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 17:53:52 +0000 Subject: [PATCH 1/7] init --- .gitmodules | 4 ++ Cargo.lock | 92 +++++++++++++++++++++++++++++++++++++-- crates/dotrain/Cargo.toml | 2 +- 3 files changed, 94 insertions(+), 4 deletions(-) create mode 100644 .gitmodules diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..91bc8b82 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "lib/magic-string"] + path = lib/magic-string + url = https://github.com/rouzwelt/magic-string-rs + branch = fix-memory-leak diff --git a/Cargo.lock b/Cargo.lock index fb0189fe..dd126824 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -567,6 +567,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation" version = "0.9.4" @@ -620,6 +629,16 @@ dependencies = [ "typenum", ] +[[package]] +name = "ctor" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" +dependencies = [ + "quote", + "syn 2.0.48", +] + [[package]] name = "deflate" version = "1.0.0" @@ -656,7 +675,7 @@ version = "0.99.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", "rustc_version 0.4.0", @@ -1338,6 +1357,16 @@ version = "0.2.152" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" +[[package]] +name = "libloading" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" +dependencies = [ + "cfg-if", + "windows-targets 0.52.0", +] + [[package]] name = "libm" version = "0.2.8" @@ -1382,10 +1411,10 @@ dependencies = [ [[package]] name = "magic_string" version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8033ce8c43f7ccb207e4699f30eed50d7526379ee08fab47159f80b7934e18" dependencies = [ "base64 0.13.1", + "napi", + "napi-derive", "regex", "serde", "serde_json", @@ -1424,6 +1453,57 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "napi" +version = "2.16.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3437deb8b6ba2448b6a94260c5c6b9e5eeb5a5d6277e44b40b2532d457b0f0d" +dependencies = [ + "bitflags 2.4.2", + "ctor", + "napi-derive", + "napi-sys", + "once_cell", +] + +[[package]] +name = "napi-derive" +version = "2.16.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cbe2585d8ac223f7d34f13701434b9d5f4eb9c332cccce8dee57ea18ab8ab0c" +dependencies = [ + "cfg-if", + "convert_case 0.6.0", + "napi-derive-backend", + "proc-macro2", + "quote", + "syn 2.0.48", +] + +[[package]] +name = "napi-derive-backend" +version = "1.0.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1639aaa9eeb76e91c6ae66da8ce3e89e921cd3885e99ec85f4abacae72fc91bf" +dependencies = [ + "convert_case 0.6.0", + "once_cell", + "proc-macro2", + "quote", + "regex", + "semver 1.0.21", + "syn 2.0.48", +] + +[[package]] +name = "napi-sys" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "427802e8ec3a734331fec1035594a210ce1ff4dc5bc1950530920ab717964ea3" +dependencies = [ + "libloading", +] + [[package]] name = "native-tls" version = "0.2.11" @@ -2706,6 +2786,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + [[package]] name = "unreachable" version = "1.0.0" diff --git a/crates/dotrain/Cargo.toml b/crates/dotrain/Cargo.toml index 8aee3d5b..f0667dbd 100644 --- a/crates/dotrain/Cargo.toml +++ b/crates/dotrain/Cargo.toml @@ -26,7 +26,7 @@ serde_json = "1.0.108" serde_repr = "0.1.17" serde_bytes = "0.11.12" futures = "0.3.29" -magic_string = "0.3.4" +magic_string = { path = "../../lib/magic-string/core" } async-recursion = "1.0.5" getrandom = { version = "0.2.11", features = ["js", "js-sys"] } anyhow = { workspace = true } From d139d27ea9d4476b1600d6d1215c83d97432f45e Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 18:02:55 +0000 Subject: [PATCH 2/7] update --- lib/magic-string | 1 + 1 file changed, 1 insertion(+) create mode 160000 lib/magic-string diff --git a/lib/magic-string b/lib/magic-string new file mode 160000 index 00000000..9d79d09c --- /dev/null +++ b/lib/magic-string @@ -0,0 +1 @@ +Subproject commit 9d79d09c99e32bcb9407aa7799d2e1f1800bcc73 From 7a483ad8b4b2148b30e2230b3f8a9a2de5bb022c Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 18:21:37 +0000 Subject: [PATCH 3/7] fix rainix --- .github/workflows/rainix.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/rainix.yaml b/.github/workflows/rainix.yaml index 2c827a9a..ca3eeb49 100644 --- a/.github/workflows/rainix.yaml +++ b/.github/workflows/rainix.yaml @@ -16,6 +16,9 @@ jobs: steps: - uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 - uses: DeterminateSystems/nix-installer-action@v4 - uses: DeterminateSystems/magic-nix-cache-action@v2 From f190d790f572f57772db01e1cb110a20117d22a9 Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 18:36:58 +0000 Subject: [PATCH 4/7] Update .rustfmt.toml --- .rustfmt.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/.rustfmt.toml b/.rustfmt.toml index 8ebbb394..6347150a 100644 --- a/.rustfmt.toml +++ b/.rustfmt.toml @@ -1,6 +1,7 @@ edition = "2018" reorder_imports = false reorder_modules = false +ignore = ["lib"] # group_imports = "StdExternalCrate" # imports_layout = "HorizontalVertical" # unstable_features = true \ No newline at end of file From fc28fc2c062dd1ba45dac9f878c46286a4c2d13e Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 18:41:15 +0000 Subject: [PATCH 5/7] fix --- .rustfmt.toml | 1 - lib/magic-string | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.rustfmt.toml b/.rustfmt.toml index 6347150a..8ebbb394 100644 --- a/.rustfmt.toml +++ b/.rustfmt.toml @@ -1,7 +1,6 @@ edition = "2018" reorder_imports = false reorder_modules = false -ignore = ["lib"] # group_imports = "StdExternalCrate" # imports_layout = "HorizontalVertical" # unstable_features = true \ No newline at end of file diff --git a/lib/magic-string b/lib/magic-string index 9d79d09c..20da9e7d 160000 --- a/lib/magic-string +++ b/lib/magic-string @@ -1 +1 @@ -Subproject commit 9d79d09c99e32bcb9407aa7799d2e1f1800bcc73 +Subproject commit 20da9e7d9d65b12da5f80b54d72a528f37f9cceb From d59bb4952bcc26f043b820e67653d6212336953a Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Wed, 5 Feb 2025 18:53:32 +0000 Subject: [PATCH 6/7] fix --- Cargo.lock | 90 +----------------------------------------------------- Cargo.toml | 1 + 2 files changed, 2 insertions(+), 89 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index dd126824..7e5b9210 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -567,15 +567,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "core-foundation" version = "0.9.4" @@ -629,16 +620,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "ctor" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" -dependencies = [ - "quote", - "syn 2.0.48", -] - [[package]] name = "deflate" version = "1.0.0" @@ -675,7 +656,7 @@ version = "0.99.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ - "convert_case 0.4.0", + "convert_case", "proc-macro2", "quote", "rustc_version 0.4.0", @@ -1357,16 +1338,6 @@ version = "0.2.152" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" -[[package]] -name = "libloading" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" -dependencies = [ - "cfg-if", - "windows-targets 0.52.0", -] - [[package]] name = "libm" version = "0.2.8" @@ -1413,8 +1384,6 @@ name = "magic_string" version = "0.3.4" dependencies = [ "base64 0.13.1", - "napi", - "napi-derive", "regex", "serde", "serde_json", @@ -1453,57 +1422,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "napi" -version = "2.16.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3437deb8b6ba2448b6a94260c5c6b9e5eeb5a5d6277e44b40b2532d457b0f0d" -dependencies = [ - "bitflags 2.4.2", - "ctor", - "napi-derive", - "napi-sys", - "once_cell", -] - -[[package]] -name = "napi-derive" -version = "2.16.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cbe2585d8ac223f7d34f13701434b9d5f4eb9c332cccce8dee57ea18ab8ab0c" -dependencies = [ - "cfg-if", - "convert_case 0.6.0", - "napi-derive-backend", - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "napi-derive-backend" -version = "1.0.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1639aaa9eeb76e91c6ae66da8ce3e89e921cd3885e99ec85f4abacae72fc91bf" -dependencies = [ - "convert_case 0.6.0", - "once_cell", - "proc-macro2", - "quote", - "regex", - "semver 1.0.21", - "syn 2.0.48", -] - -[[package]] -name = "napi-sys" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427802e8ec3a734331fec1035594a210ce1ff4dc5bc1950530920ab717964ea3" -dependencies = [ - "libloading", -] - [[package]] name = "native-tls" version = "0.2.11" @@ -2786,12 +2704,6 @@ dependencies = [ "tinyvec", ] -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - [[package]] name = "unreachable" version = "1.0.0" diff --git a/Cargo.toml b/Cargo.toml index 45ad37ec..74af5172 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,7 @@ [workspace] members = ["crates/*"] resolver = "2" +exclude = ["lib"] [workspace.package] edition = "2021" From 52548014581a58d02004a816135a26a259f37781 Mon Sep 17 00:00:00 2001 From: rouzwelt Date: Fri, 7 Feb 2025 05:06:35 +0000 Subject: [PATCH 7/7] update alloy --- Cargo.lock | 36 ++++++++++++++++++++++++------------ Cargo.toml | 2 +- 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e5b9210..a2cc6533 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -67,9 +67,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.6.4" +version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "600d34d8de81e23b6d909c094e23b3d357e01ca36b78a8c5424c501eedbe86f0" +checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" dependencies = [ "alloy-rlp", "bytes", @@ -688,7 +688,7 @@ dependencies = [ name = "dotrain" version = "6.0.1-alpha.21" dependencies = [ - "alloy-primitives 0.6.4", + "alloy-primitives 0.7.7", "anyhow", "async-recursion", "clap", @@ -717,7 +717,7 @@ dependencies = [ name = "dotrain-lsp" version = "6.0.1-alpha.21" dependencies = [ - "alloy-primitives 0.6.4", + "alloy-primitives 0.7.7", "anyhow", "dotrain", "js-sys", @@ -823,6 +823,17 @@ dependencies = [ "bytes", ] +[[package]] +name = "fastrlp" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + [[package]] name = "ff" version = "0.13.0" @@ -1313,7 +1324,6 @@ dependencies = [ "elliptic-curve", "once_cell", "sha2", - "signature", ] [[package]] @@ -1718,9 +1728,9 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", @@ -1925,16 +1935,18 @@ dependencies = [ [[package]] name = "ruint" -version = "1.11.1" +version = "1.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608a5726529f2f0ef81b8fde9873c4bb829d6b5b5ca6be4d97345ddf0749c825" +checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", "ark-ff 0.4.2", "bytes", - "fastrlp", + "fastrlp 0.3.1", + "fastrlp 0.4.0", "num-bigint", + "num-integer", "num-traits", "parity-scale-codec", "primitive-types", @@ -1949,9 +1961,9 @@ dependencies = [ [[package]] name = "ruint-macro" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e666a5496a0b2186dbcd0ff6106e29e093c15591bde62c20d3842007c6978a09" +checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rustc-demangle" diff --git a/Cargo.toml b/Cargo.toml index 74af5172..8d1904bd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,7 +13,7 @@ repository = "https://github.com/rainlanguage/dotrain" regex = "1.10.2" anyhow = "1.0.75" once_cell = "1.18.0" -alloy-primitives = "0.6.3" +alloy-primitives = "0.7.7" rain-metadata = "0.0.2-alpha.2" [workspace.dependencies.dotrain]