From 6f35e3c61aeef00c42a3b971d0b93126ab9b53c4 Mon Sep 17 00:00:00 2001 From: maciektr Date: Mon, 23 Oct 2023 11:28:42 +0200 Subject: [PATCH] Update Cairo to `2.3.0` --- Cargo.lock | 182 ++++++++++++------------- Cargo.toml | 26 ++-- extensions/scarb-cairo-run/src/main.rs | 22 ++- scarb/src/compiler/compilers/lib.rs | 14 +- 4 files changed, 114 insertions(+), 130 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 745c39b1a..be0b6cd78 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -462,8 +462,9 @@ dependencies = [ [[package]] name = "cairo-lang-casm" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b89fd5edce5c0b128fa25f76f07db322ae9b28c123619ddcd11df18a73d3217" dependencies = [ "cairo-lang-utils", "indoc", @@ -478,8 +479,9 @@ dependencies = [ [[package]] name = "cairo-lang-compiler" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fc2689f520038019ddc8884ee36f6df04a66fe46906c9d1ac76e8e9675e55f0" dependencies = [ "anyhow", "cairo-lang-defs", @@ -495,24 +497,24 @@ dependencies = [ "cairo-lang-syntax", "cairo-lang-utils", "itertools 0.11.0", - "log", "salsa", - "smol_str", "thiserror", ] [[package]] name = "cairo-lang-debug" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3544967c563b53066163794d3c400270faf4617cfdd33ba1f74296efdca14e9d" dependencies = [ "cairo-lang-utils", ] [[package]] name = "cairo-lang-defs" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a07a54c419c573bc2610c2b3d672420723ca38b79a4cae2f24e0287173524e18" dependencies = [ "cairo-lang-debug", "cairo-lang-diagnostics", @@ -520,7 +522,6 @@ dependencies = [ "cairo-lang-parser", "cairo-lang-syntax", "cairo-lang-utils", - "indexmap 2.0.0", "itertools 0.11.0", "salsa", "smol_str", @@ -528,31 +529,31 @@ dependencies = [ [[package]] name = "cairo-lang-diagnostics" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82dc3934a47960155812cc181e7e2a3d48f2df447c23fcdbecff966855244162" dependencies = [ "cairo-lang-debug", "cairo-lang-filesystem", "cairo-lang-utils", "itertools 0.11.0", - "salsa", ] [[package]] name = "cairo-lang-eq-solver" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f944eae57f6c31fa0157811117b584cba4556770e2e5db4fd856459b877680f" dependencies = [ "cairo-lang-utils", "good_lp", - "indexmap 2.0.0", - "itertools 0.11.0", ] [[package]] name = "cairo-lang-filesystem" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79b9b4f02ee6da5526a58b054dae3dce8ff592ae5e740c1d028ebd7e8218e1dc" dependencies = [ "cairo-lang-debug", "cairo-lang-utils", @@ -564,8 +565,9 @@ dependencies = [ [[package]] name = "cairo-lang-formatter" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5d6a5c8875cd4ab64623b6bc8b15a48e27df1030377ba66751b7ad33299cf56" dependencies = [ "anyhow", "cairo-lang-diagnostics", @@ -573,11 +575,9 @@ dependencies = [ "cairo-lang-parser", "cairo-lang-syntax", "cairo-lang-utils", - "colored", "diffy", "ignore", "itertools 0.11.0", - "log", "salsa", "serde", "smol_str", @@ -585,41 +585,39 @@ dependencies = [ [[package]] name = "cairo-lang-language-server" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abc9f0b7cd76e3ecd432fc23eee4b6dda277b6cdf64cf97be926c55286b52eb5" dependencies = [ "anyhow", "cairo-lang-compiler", - "cairo-lang-debug", "cairo-lang-defs", "cairo-lang-diagnostics", "cairo-lang-filesystem", "cairo-lang-formatter", "cairo-lang-lowering", "cairo-lang-parser", - "cairo-lang-plugins", "cairo-lang-project", "cairo-lang-semantic", "cairo-lang-starknet", "cairo-lang-syntax", "cairo-lang-test-plugin", "cairo-lang-utils", - "indoc", "log", "lsp-types", "salsa", "scarb-metadata 1.7.0", "serde", "serde_json", - "smol_str", "tokio", "tower-lsp", ] [[package]] name = "cairo-lang-lowering" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5654b46630d3e8e740ebb058d344aa62ca92c5b1cbc5febbb993abe1ab622cb" dependencies = [ "cairo-lang-debug", "cairo-lang-defs", @@ -638,13 +636,13 @@ dependencies = [ "num-traits 0.2.16", "once_cell", "salsa", - "smol_str", ] [[package]] name = "cairo-lang-parser" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f42707f9db24a7c15b82b1d26615c3038323b6136c76739622ea3a3877a8ed7" dependencies = [ "cairo-lang-diagnostics", "cairo-lang-filesystem", @@ -653,7 +651,6 @@ dependencies = [ "cairo-lang-utils", "colored", "itertools 0.11.0", - "log", "num-bigint", "num-traits 0.2.16", "salsa", @@ -663,8 +660,9 @@ dependencies = [ [[package]] name = "cairo-lang-plugins" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11b58c906cfb2d64ab630c1417a9dac15dea0859978cc5b2b61dab7fa098a9b9" dependencies = [ "cairo-lang-defs", "cairo-lang-diagnostics", @@ -675,15 +673,15 @@ dependencies = [ "indent", "indoc", "itertools 0.11.0", - "num-bigint", "salsa", "smol_str", ] [[package]] name = "cairo-lang-proc-macros" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "178c68268a904eba03c07714b2c29d1f97d6754e74931f5d465961f901a88d59" dependencies = [ "cairo-lang-debug", "quote", @@ -692,8 +690,9 @@ dependencies = [ [[package]] name = "cairo-lang-project" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5eb369e0b51a8f03ad92dc2981387cb9b35cba6d117271ef307a14a14ff58b0" dependencies = [ "cairo-lang-filesystem", "cairo-lang-utils", @@ -705,26 +704,19 @@ dependencies = [ [[package]] name = "cairo-lang-runner" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b53180d68de6d6b1e48585ec783bc930b65486856d69adb6bd7277c2a064fc2b" dependencies = [ - "anyhow", "ark-ff", "ark-secp256k1", "ark-secp256r1", "ark-std", "cairo-felt", "cairo-lang-casm", - "cairo-lang-compiler", - "cairo-lang-defs", - "cairo-lang-diagnostics", - "cairo-lang-filesystem", - "cairo-lang-lowering", - "cairo-lang-semantic", "cairo-lang-sierra", "cairo-lang-sierra-ap-change", "cairo-lang-sierra-gas", - "cairo-lang-sierra-generator", "cairo-lang-sierra-to-casm", "cairo-lang-sierra-type-size", "cairo-lang-starknet", @@ -735,14 +727,14 @@ dependencies = [ "num-bigint", "num-integer", "num-traits 0.2.16", - "salsa", "thiserror", ] [[package]] name = "cairo-lang-semantic" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7564b5ea75237c83b6b7e39d9177fcf13f34f035bf8bd5f659198ac8f6ee78b9" dependencies = [ "cairo-lang-debug", "cairo-lang-defs", @@ -754,7 +746,6 @@ dependencies = [ "cairo-lang-utils", "id-arena", "itertools 0.11.0", - "log", "num-bigint", "num-traits 0.2.16", "once_cell", @@ -764,8 +755,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ada598c1f7a7c343cf5d604c0f028000fcc17d67c036d797d5cd3b7fd8777e1a" dependencies = [ "anyhow", "cairo-lang-utils", @@ -780,7 +772,6 @@ dependencies = [ "regex", "salsa", "serde", - "serde_json", "sha3", "smol_str", "thiserror", @@ -788,8 +779,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-ap-change" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00cf99976ca90ceeb11895521feb34b1be8e0f98b6ca79e9a4018148d7ff7888" dependencies = [ "cairo-lang-eq-solver", "cairo-lang-sierra", @@ -801,8 +793,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-gas" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f64f8d381ef4f97ecdbfae7f9f77fe6aa18191696e52b112e53c75a84af7e84" dependencies = [ "cairo-lang-eq-solver", "cairo-lang-sierra", @@ -814,8 +807,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-generator" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfee5967e7967c71cee15f545faf5288a9c6046c60ecff89748c65d9654a7be4" dependencies = [ "cairo-lang-debug", "cairo-lang-defs", @@ -823,13 +817,10 @@ dependencies = [ "cairo-lang-filesystem", "cairo-lang-lowering", "cairo-lang-parser", - "cairo-lang-proc-macros", "cairo-lang-semantic", "cairo-lang-sierra", "cairo-lang-syntax", "cairo-lang-utils", - "id-arena", - "indexmap 2.0.0", "itertools 0.11.0", "num-bigint", "once_cell", @@ -839,8 +830,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-to-casm" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4af7d2812d283b63f074a1ab4135fe0db586bf1b5edaa7ef2129f3067c9e894a" dependencies = [ "assert_matches", "cairo-felt", @@ -852,7 +844,6 @@ dependencies = [ "cairo-lang-utils", "indoc", "itertools 0.11.0", - "log", "num-bigint", "num-traits 0.2.16", "thiserror", @@ -860,8 +851,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-type-size" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b753a6569f903c3637dda7ef944455a91b2b004f5294262ab1e823914ea65e5" dependencies = [ "cairo-lang-sierra", "cairo-lang-utils", @@ -869,8 +861,9 @@ dependencies = [ [[package]] name = "cairo-lang-starknet" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6866e7599234986acb221cbc5a9720731e4b6d068e87ce07d6437e51f8fc8a24" dependencies = [ "anyhow", "cairo-felt", @@ -880,23 +873,17 @@ dependencies = [ "cairo-lang-diagnostics", "cairo-lang-filesystem", "cairo-lang-lowering", - "cairo-lang-parser", - "cairo-lang-plugins", "cairo-lang-semantic", "cairo-lang-sierra", - "cairo-lang-sierra-ap-change", - "cairo-lang-sierra-gas", "cairo-lang-sierra-generator", "cairo-lang-sierra-to-casm", "cairo-lang-syntax", "cairo-lang-utils", "const_format", "convert_case", - "genco", "indent", "indoc", "itertools 0.11.0", - "log", "num-bigint", "num-integer", "num-traits 0.2.16", @@ -910,25 +897,25 @@ dependencies = [ [[package]] name = "cairo-lang-syntax" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91c81cd720549131e80598172d6a9db3d62795ab6be1060b7efed463c793bd1" dependencies = [ "cairo-lang-debug", "cairo-lang-filesystem", "cairo-lang-utils", - "itertools 0.11.0", "num-bigint", "num-traits 0.2.16", "salsa", "smol_str", - "thiserror", "unescaper", ] [[package]] name = "cairo-lang-syntax-codegen" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04f2e93b768bf5fff62bcd445fda45c98cdb4e58a81b2095bda01cdbf00e2e6a" dependencies = [ "genco", "xshell", @@ -936,8 +923,9 @@ dependencies = [ [[package]] name = "cairo-lang-test-plugin" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f67ac7f93f0894d72a0ee8ae94abc1c1bfc751b285d92422343888fe367deb2e" dependencies = [ "anyhow", "cairo-felt", @@ -960,39 +948,37 @@ dependencies = [ [[package]] name = "cairo-lang-test-runner" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25f7daff159c006401ee2efc491ed8cdbacdab7c575471ea7a18e7894cdb814" dependencies = [ "anyhow", "cairo-felt", "cairo-lang-compiler", - "cairo-lang-defs", "cairo-lang-filesystem", "cairo-lang-runner", "cairo-lang-sierra", "cairo-lang-sierra-to-casm", "cairo-lang-starknet", - "cairo-lang-syntax", "cairo-lang-test-plugin", "cairo-lang-utils", "colored", "itertools 0.11.0", "num-traits 0.2.16", "rayon", - "serde", ] [[package]] name = "cairo-lang-utils" -version = "2.3.0-rc0" -source = "git+https://github.com/starkware-libs/cairo?rev=0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608#0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a676a06f80da115e9ef2669e708ee3d2a495224ebc6e5464e8d6132d0e8266b" dependencies = [ "env_logger", "indexmap 2.0.0", "itertools 0.11.0", "log", "num-bigint", - "num-integer", "num-traits 0.2.16", "parity-scale-codec", "schemars", diff --git a/Cargo.toml b/Cargo.toml index e4c2d71ed..98c437836 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,19 +28,19 @@ repository = "https://github.com/software-mansion/scarb" anyhow = "1" assert_fs = "1" async-trait = "0.1" -cairo-lang-compiler = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-defs = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-filesystem = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-formatter = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-language-server = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-runner = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-semantic = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-sierra = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-sierra-to-casm = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-starknet = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-test-plugin = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-test-runner = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608" } -cairo-lang-utils = { git = "https://github.com/starkware-libs/cairo", rev = "0f0b3786e7dfdbbff681cfbb78a9dd181f2c4608", features = ["env_logger"] } +cairo-lang-compiler = "2.3.0" +cairo-lang-defs = "2.3.0" +cairo-lang-filesystem = "2.3.0" +cairo-lang-formatter = "2.3.0" +cairo-lang-language-server = "2.3.0" +cairo-lang-runner = "2.3.0" +cairo-lang-semantic = "2.3.0" +cairo-lang-sierra = "2.3.0" +cairo-lang-sierra-to-casm = "2.3.0" +cairo-lang-starknet = "2.3.0" +cairo-lang-test-plugin = "2.3.0" +cairo-lang-test-runner = "2.3.0" +cairo-lang-utils = { version = "2.3.0", features = ["env_logger"] } camino = { version = "1", features = ["serde1"] } cargo_metadata = "0.18" clap = { version = "4", features = ["derive", "env", "string"] } diff --git a/extensions/scarb-cairo-run/src/main.rs b/extensions/scarb-cairo-run/src/main.rs index 34cb3d1de..0be31077e 100644 --- a/extensions/scarb-cairo-run/src/main.rs +++ b/extensions/scarb-cairo-run/src/main.rs @@ -71,24 +71,20 @@ fn main() -> Result<()> { .with_context(|| format!("failed to load Sierra program: {path}"))?; if args.available_gas.is_none() - && sierra_program - .program - .libfunc_declarations - .iter() - .any(|decl| { - matches!( - decl.long_id.generic_id.0.as_str(), - WithdrawGasLibfunc::STR_ID - | BuiltinCostWithdrawGasLibfunc::STR_ID - | RedepositGasLibfunc::STR_ID - ) - }) + && sierra_program.libfunc_declarations.iter().any(|decl| { + matches!( + decl.long_id.generic_id.0.as_str(), + WithdrawGasLibfunc::STR_ID + | BuiltinCostWithdrawGasLibfunc::STR_ID + | RedepositGasLibfunc::STR_ID + ) + }) { bail!("program requires gas counter, please provide `--available-gas` argument"); } let runner = SierraCasmRunner::new( - sierra_program.program, + sierra_program, if args.available_gas.is_some() { Some(Default::default()) } else { diff --git a/scarb/src/compiler/compilers/lib.rs b/scarb/src/compiler/compilers/lib.rs index 4bd8e5696..d351fe006 100644 --- a/scarb/src/compiler/compilers/lib.rs +++ b/scarb/src/compiler/compilers/lib.rs @@ -1,5 +1,6 @@ use anyhow::{Context, Result}; use cairo_lang_compiler::db::RootDatabase; +use cairo_lang_sierra::program::VersionedProgram; use cairo_lang_sierra_to_casm::metadata::calc_metadata; use serde::{Deserialize, Serialize}; use tracing::trace_span; @@ -58,7 +59,6 @@ impl Compiler for LibCompiler { let sierra_program = { let _ = trace_span!("compile_sierra").enter(); cairo_lang_compiler::compile_prepared_db(db, main_crate_ids, compiler_config)? - .into_artifact() }; if props.sierra { @@ -67,7 +67,7 @@ impl Compiler for LibCompiler { "output file", &target_dir, ws, - &sierra_program, + &VersionedProgram::from((*sierra_program).clone()), ) .with_context(|| { format!("failed to serialize Sierra program {}", unit.target().name) @@ -85,19 +85,21 @@ impl Compiler for LibCompiler { } if props.casm { - let program = sierra_program.into_v1().unwrap().program; - let gas_usage_check = true; let metadata = { let _ = trace_span!("casm_calc_metadata").enter(); - calc_metadata(&program, Default::default(), false) + calc_metadata(&sierra_program, Default::default(), false) .context("failed calculating Sierra variables")? }; let cairo_program = { let _ = trace_span!("compile_casm").enter(); - cairo_lang_sierra_to_casm::compiler::compile(&program, &metadata, gas_usage_check)? + cairo_lang_sierra_to_casm::compiler::compile( + &sierra_program, + &metadata, + gas_usage_check, + )? }; write_string(