diff --git a/Cargo.lock b/Cargo.lock index 7108488ebde..5560de8946a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -81,7 +81,7 @@ checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", "const-random", - "getrandom 0.3.3", + "getrandom 0.3.4", "once_cell", "version_check", "zerocopy", @@ -89,9 +89,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -133,9 +133,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" +checksum = "777d58b30eb9a4db0e5f59bc30e8c2caef877fee7dc8734cf242a51a60f22e05" dependencies = [ "alloy-rlp", "bytes", @@ -144,7 +144,7 @@ dependencies = [ "derive_more 2.0.1", "foldhash", "hashbrown 0.15.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "itoa", "k256", "keccak-asm", @@ -177,7 +177,7 @@ checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -361,7 +361,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -399,7 +399,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -501,7 +501,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "synstructure 0.13.2", ] @@ -513,7 +513,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -556,7 +556,7 @@ dependencies = [ "futures-util", "handlebars 5.1.2", "http 1.3.1", - "indexmap 2.11.4", + "indexmap 2.12.0", "mime", "multer", "num-traits", @@ -584,7 +584,7 @@ dependencies = [ "proc-macro2", "quote", "strum 0.26.3", - "syn 2.0.106", + "syn 2.0.109", "thiserror 1.0.69", ] @@ -607,7 +607,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "741110dda927420a28fbc1c310543d3416f789a6ba96859c2c265843a0a96887" dependencies = [ "bytes", - "indexmap 2.11.4", + "indexmap 2.12.0", "serde", "serde_json", ] @@ -627,7 +627,7 @@ dependencies = [ "polling", "rustix 1.1.2", "slab", - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -649,7 +649,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -660,7 +660,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -731,7 +731,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -742,9 +742,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "aws-config" -version = "1.8.7" +version = "1.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04b37ddf8d2e9744a0b9c19ce0b78efe4795339a90b66b7bae77987092cd2e69" +checksum = "1856b1b48b65f71a4dd940b1c0931f9a7b646d4a924b9828ffefc1454714668a" dependencies = [ "aws-credential-types", "aws-runtime", @@ -772,9 +772,9 @@ dependencies = [ [[package]] name = "aws-credential-types" -version = "1.2.7" +version = "1.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799a1290207254984cb7c05245111bc77958b92a3c9bb449598044b36341cce6" +checksum = "86590e57ea40121d47d3f2e131bfd873dea15d78dc2f4604f4734537ad9e56c4" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -784,9 +784,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.14.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b8ff6c09cd57b16da53641caa860168b88c172a5ee163b0288d3d6eea12786" +checksum = "879b6c89592deb404ba4dc0ae6b58ffd1795c78991cbb5b8bc441c48a070440d" dependencies = [ "aws-lc-sys", "zeroize", @@ -794,9 +794,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.31.0" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e44d16778acaf6a9ec9899b92cebd65580b83f685446bf2e1f5d3d732f99dcd" +checksum = "107a4e9d9cab9963e04e84bb8dee0e25f2a987f9a8bad5ed054abd439caa8f8c" dependencies = [ "bindgen 0.72.1", "cc", @@ -807,9 +807,9 @@ dependencies = [ [[package]] name = "aws-runtime" -version = "1.5.11" +version = "1.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e1ed337dabcf765ad5f2fb426f13af22d576328aaf09eac8f70953530798ec0" +checksum = "8fe0fd441565b0b318c76e7206c8d1d0b0166b3e986cf30e890b61feb6192045" dependencies = [ "aws-credential-types", "aws-sigv4", @@ -831,9 +831,9 @@ dependencies = [ [[package]] name = "aws-sdk-kms" -version = "1.88.0" +version = "1.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded2cc988216984a324e9b1ec44167d80bb8c9c5428d88e83d35528a65bab7b1" +checksum = "ed4d5d6900b966a9d76af5ec83fd104cad277053feeff6924debdc82b221ce16" dependencies = [ "aws-credential-types", "aws-runtime", @@ -853,9 +853,9 @@ dependencies = [ [[package]] name = "aws-sdk-sso" -version = "1.85.0" +version = "1.89.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f2c741e2e439f07b5d1b33155e246742353d82167c785a2ff547275b7e32483" +checksum = "a9c1b1af02288f729e95b72bd17988c009aa72e26dcb59b3200f86d7aea726c9" dependencies = [ "aws-credential-types", "aws-runtime", @@ -875,9 +875,9 @@ dependencies = [ [[package]] name = "aws-sdk-ssooidc" -version = "1.87.0" +version = "1.91.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6428ae5686b18c0ee99f6f3c39d94ae3f8b42894cdc35c35d8fb2470e9db2d4c" +checksum = "4e8122301558dc7c6c68e878af918880b82ff41897a60c8c4e18e4dc4d93e9f1" dependencies = [ "aws-credential-types", "aws-runtime", @@ -897,9 +897,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "1.87.0" +version = "1.91.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5871bec9a79a3e8d928c7788d654f135dde0e71d2dd98089388bab36b37ef607" +checksum = "8f8090151d4d1e971269957b10dbf287bba551ab812e591ce0516b1c73b75d27" dependencies = [ "aws-credential-types", "aws-runtime", @@ -920,9 +920,9 @@ dependencies = [ [[package]] name = "aws-sigv4" -version = "1.3.4" +version = "1.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "084c34162187d39e3740cb635acd73c4e3a551a36146ad6fe8883c929c9f876c" +checksum = "c35452ec3f001e1f2f6db107b6373f1f48f05ec63ba2c5c9fa91f07dad32af11" dependencies = [ "aws-credential-types", "aws-smithy-http", @@ -942,9 +942,9 @@ dependencies = [ [[package]] name = "aws-smithy-async" -version = "1.2.5" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e190749ea56f8c42bf15dd76c65e14f8f765233e6df9b0506d9d934ebef867c" +checksum = "127fcfad33b7dfc531141fda7e1c402ac65f88aca5511a4d31e2e3d2cd01ce9c" dependencies = [ "futures-util", "pin-project-lite", @@ -953,15 +953,16 @@ dependencies = [ [[package]] name = "aws-smithy-http" -version = "0.62.3" +version = "0.62.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c4dacf2d38996cf729f55e7a762b30918229917eca115de45dfa8dfb97796c9" +checksum = "445d5d720c99eed0b4aa674ed00d835d9b1427dd73e04adaf2f94c6b2d6f9fca" dependencies = [ "aws-smithy-runtime-api", "aws-smithy-types", "bytes", "bytes-utils", "futures-core", + "futures-util", "http 0.2.12", "http 1.3.1", "http-body 0.4.6", @@ -973,9 +974,9 @@ dependencies = [ [[package]] name = "aws-smithy-http-client" -version = "1.1.2" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "734b4282fbb7372923ac339cc2222530f8180d9d4745e582de19a18cee409fd8" +checksum = "623254723e8dfd535f566ee7b2381645f8981da086b5c4aa26c0c41582bb1d2c" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -992,8 +993,8 @@ dependencies = [ "hyper-util", "pin-project-lite", "rustls 0.21.12", - "rustls 0.23.32", - "rustls-native-certs 0.8.1", + "rustls 0.23.35", + "rustls-native-certs 0.8.2", "rustls-pki-types", "tokio", "tokio-rustls 0.26.4", @@ -1003,27 +1004,27 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.61.5" +version = "0.61.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaa31b350998e703e9826b2104dd6f63be0508666e1aba88137af060e8944047" +checksum = "2db31f727935fc63c6eeae8b37b438847639ec330a9161ece694efba257e0c54" dependencies = [ "aws-smithy-types", ] [[package]] name = "aws-smithy-observability" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9364d5989ac4dd918e5cc4c4bdcc61c9be17dcd2586ea7f69e348fc7c6cab393" +checksum = "2d1881b1ea6d313f9890710d65c158bdab6fb08c91ea825f74c1c8c357baf4cc" dependencies = [ "aws-smithy-runtime-api", ] [[package]] name = "aws-smithy-query" -version = "0.60.7" +version = "0.60.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2fbd61ceb3fe8a1cb7352e42689cec5335833cd9f94103a61e98f9bb61c64bb" +checksum = "d28a63441360c477465f80c7abac3b9c4d075ca638f982e605b7dc2a2c7156c9" dependencies = [ "aws-smithy-types", "urlencoding", @@ -1031,9 +1032,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.9.2" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa63ad37685ceb7762fa4d73d06f1d5493feb88e3f27259b9ed277f4c01b185" +checksum = "0bbe9d018d646b96c7be063dd07987849862b0e6d07c778aad7d93d1be6c1ef0" dependencies = [ "aws-smithy-async", "aws-smithy-http", @@ -1055,9 +1056,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime-api" -version = "1.9.0" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07f5e0fc8a6b3f2303f331b94504bbf754d85488f402d6f1dd7a6080f99afe56" +checksum = "ec7204f9fd94749a7c53b26da1b961b4ac36bf070ef1e0b94bb09f79d4f6c193" dependencies = [ "aws-smithy-async", "aws-smithy-types", @@ -1072,9 +1073,9 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "1.3.2" +version = "1.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d498595448e43de7f4296b7b7a18a8a02c61ec9349128c80a368f7c3b4ab11a8" +checksum = "25f535879a207fce0db74b679cfc3e91a3159c8144d717d55f5832aea9eef46e" dependencies = [ "base64-simd", "bytes", @@ -1098,18 +1099,18 @@ dependencies = [ [[package]] name = "aws-smithy-xml" -version = "0.60.10" +version = "0.60.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db87b96cb1b16c024980f133968d52882ca0daaee3a086c6decc500f6c99728" +checksum = "eab77cdd036b11056d2a30a7af7b775789fb024bf216acc13884c6c97752ae56" dependencies = [ "xmlparser", ] [[package]] name = "aws-types" -version = "1.3.8" +version = "1.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b069d19bf01e46298eaedd7c6f283fe565a59263e53eebec945f3e6398f42390" +checksum = "d79fb68e3d7fe5d4833ea34dc87d2e97d26d3086cb3da660bb6b1f76d98680b6" dependencies = [ "aws-credential-types", "aws-smithy-async", @@ -1323,7 +1324,7 @@ dependencies = [ "object 0.37.3", "rustc-demangle", "serde", - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -1421,7 +1422,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -1430,7 +1431,7 @@ version = "0.72.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "cexpr", "clang-sys", "itertools 0.13.0", @@ -1441,7 +1442,7 @@ dependencies = [ "regex", "rustc-hash 2.1.1", "shlex", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -1500,11 +1501,11 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.4" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -1587,7 +1588,7 @@ dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -1602,12 +1603,12 @@ dependencies = [ [[package]] name = "bstr" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab" dependencies = [ "memchr", - "regex-automata 0.4.11", + "regex-automata 0.4.13", "serde", ] @@ -1755,9 +1756,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.40" +version = "1.2.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d05d92f4b1fd76aad469d46cdd858ca761576082cd37df81416691e50199fb" +checksum = "35900b6c8d709fb1d854671ae27aeaa9eec2f8b01b364e1619a40da3e6fe2afe" dependencies = [ "find-msvc-tools", "jobserver", @@ -1776,9 +1777,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "cfg_aliases" @@ -1821,7 +1822,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -1887,9 +1888,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.48" +version = "4.5.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" +checksum = "4c26d721170e0295f191a69bd9a1f93efcdb0aff38684b61ab5750468972e5f5" dependencies = [ "clap_builder", "clap_derive", @@ -1897,9 +1898,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.48" +version = "4.5.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" +checksum = "75835f0c7bf681bfd05abe44e965760fea999a5286c6eb2d59883634fd02011a" dependencies = [ "anstream", "anstyle", @@ -1910,9 +1911,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.58" +version = "4.5.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75bf0b32ad2e152de789bb635ea4d3078f6b838ad7974143e99b99f45a04af4a" +checksum = "8e602857739c5a4291dfa33b5a298aeac9006185229a700e5810a3ef7272d971" dependencies = [ "clap", ] @@ -1929,21 +1930,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.47" +version = "4.5.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "clap_lex" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" +checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" [[package]] name = "clipboard-win" @@ -2169,15 +2170,15 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width 0.2.1", + "unicode-width 0.2.2", "windows-sys 0.59.0", ] [[package]] name = "const-hex" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6407bff74dea37e0fa3dc1c1c974e5d46405f0c987bf9997a0762adce71eda6" +checksum = "3bb320cac8a0750d7f25280aa97b09c26edfe161164238ecbbb31092b079e735" dependencies = [ "cfg-if", "cpufeatures", @@ -2219,9 +2220,9 @@ checksum = "2f421161cb492475f1661ddc9815a745a1c894592070661180fdec3d4872e9c3" [[package]] name = "const_format" -version = "0.2.34" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +checksum = "7faa7469a93a566e9ccc1c73fe783b4a65c274c5ace346038dca9c39fe0030ad" dependencies = [ "const_format_proc_macros", ] @@ -2469,21 +2470,21 @@ dependencies = [ [[package]] name = "csv" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" dependencies = [ "csv-core", "itoa", "ryu", - "serde", + "serde_core", ] [[package]] name = "csv-core" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" +checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" dependencies = [ "memchr", ] @@ -2521,7 +2522,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2545,7 +2546,7 @@ checksum = "8b215a2d2bebcbbd3bd005b59f5b1b7dc5eb07343d64db80ec23aff9e7e1a2e2" dependencies = [ "cynic-proc-macros", "ref-cast", - "reqwest 0.12.23", + "reqwest 0.12.24", "serde", "serde_json", "static_assertions", @@ -2565,7 +2566,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn 2.0.106", + "syn 2.0.109", "thiserror 1.0.69", ] @@ -2575,7 +2576,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3136ed6464e975162667c08092fcb54947ce08785fca301162fd614c4dfd974f" dependencies = [ - "indexmap 2.11.4", + "indexmap 2.12.0", "lalrpop-util", "logos 0.14.4", ] @@ -2589,7 +2590,7 @@ dependencies = [ "cynic-codegen", "darling 0.20.11", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2634,7 +2635,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2648,7 +2649,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2659,7 +2660,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2670,7 +2671,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2723,7 +2724,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976" dependencies = [ "data-encoding", - "syn 2.0.106", + "syn 1.0.109", ] [[package]] @@ -2782,9 +2783,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.5.4" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41953f86f8a05768a6cda24def994fd2f424b04ec5c719cf89989779f199071" +checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" dependencies = [ "powerfmt", "serde_core", @@ -2819,7 +2820,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2829,7 +2830,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2842,7 +2843,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -2871,7 +2872,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "unicode-xid", ] @@ -2883,7 +2884,7 @@ checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "unicode-xid", ] @@ -3026,7 +3027,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3037,15 +3038,15 @@ checksum = "8975ffdaa0ef3661bfe02dbdcc06c9f829dfafe6a3c474de366a8d5e44276921" [[package]] name = "doc-comment" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" +checksum = "780955b8b195a21ab8e4ac6b60dd1dbdcec1dc6c51c0617964b08c81785e12c9" [[package]] name = "document-features" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" +checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" dependencies = [ "litrs", ] @@ -3088,9 +3089,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "duplicate" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97af9b5f014e228b33e77d75ee0e6e87960124f0f4b16337b586a6bec91867b1" +checksum = "8e92f10a49176cbffacaedabfaa11d51db1ea0f80a83c26e1873b43cd1742c24" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -3173,10 +3174,10 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417" dependencies = [ - "enum-ordinalize 4.3.0", + "enum-ordinalize 4.3.2", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3271,7 +3272,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3291,7 +3292,7 @@ checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3304,27 +3305,27 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "enum-ordinalize" -version = "4.3.0" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" +checksum = "4a1091a7bb1f8f2c4b28f1fe2cef4980ca2d410a3d727d67ecc3178c9b0800f0" dependencies = [ "enum-ordinalize-derive", ] [[package]] name = "enum-ordinalize-derive" -version = "4.3.1" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" +checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3336,7 +3337,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3347,14 +3348,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "env_filter" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" +checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" dependencies = [ "log", "regex", @@ -3386,7 +3387,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -3517,7 +3518,7 @@ dependencies = [ "regex", "serde", "serde_json", - "syn 2.0.106", + "syn 2.0.109", "toml 0.8.23", "walkdir", ] @@ -3535,7 +3536,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3561,7 +3562,7 @@ dependencies = [ "serde", "serde_json", "strum 0.26.3", - "syn 2.0.106", + "syn 2.0.109", "tempfile", "thiserror 1.0.69", "tiny-keccak", @@ -3646,7 +3647,7 @@ checksum = "dd65f1b59dd22d680c7a626cc4a000c1e03d241c51c3e034d2bc9f1e90734f9b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -3672,8 +3673,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "998b056554fbe42e03ae0e152895cd1a7e1002aec800fdc6635d20270260c46f" dependencies = [ "bit-set", - "regex-automata 0.4.11", - "regex-syntax 0.8.6", + "regex-automata 0.4.13", + "regex-syntax 0.8.8", ] [[package]] @@ -3772,9 +3773,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0399f9d26e5191ce32c498bebd31e7a3ceabc2745f0ac54af3f335126c3f24b3" +checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127" [[package]] name = "fixed-hash" @@ -3796,9 +3797,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.1.2" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" +checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb" dependencies = [ "crc32fast", "miniz_oxide", @@ -3851,7 +3852,7 @@ dependencies = [ "forc-tracing 0.70.1", "forc-util", "fs_extra", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-asm 0.65.0", "hex", "rexpect", @@ -3894,7 +3895,7 @@ dependencies = [ "forc-tx", "forc-util", "forc-wallet", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-core-client 0.47.1", "fuel-core-storage 0.47.1", "fuel-core-types 0.47.1", @@ -3911,7 +3912,7 @@ dependencies = [ "pretty_assertions", "rand 0.8.5", "regex", - "reqwest 0.12.23", + "reqwest 0.12.24", "rexpect", "rpassword", "serde", @@ -3972,7 +3973,7 @@ dependencies = [ "forc-test", "forc-tracing 0.70.1", "forc-util", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-core-client 0.47.1", "fuel-tx 0.65.0", "fuel-types 0.65.0", @@ -4114,7 +4115,7 @@ dependencies = [ "libc", "libp2p-identity", "portpicker", - "reqwest 0.12.23", + "reqwest 0.12.24", "semver 1.0.27", "serde", "serde_json", @@ -4138,7 +4139,7 @@ dependencies = [ "flate2", "forc-tracing 0.70.1", "forc-util", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "futures", "git2", "gix-url", @@ -4147,7 +4148,7 @@ dependencies = [ "once_cell", "petgraph", "regex", - "reqwest 0.12.23", + "reqwest 0.12.24", "scopeguard", "semver 1.0.27", "serde", @@ -4183,7 +4184,7 @@ dependencies = [ "forc-util", "futures-util", "regex", - "reqwest 0.12.23", + "reqwest 0.12.24", "semver 1.0.27", "serde", "serde_json", @@ -4207,7 +4208,7 @@ dependencies = [ "anyhow", "forc-pkg", "forc-util", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-tx 0.65.0", "fuel-vm 0.65.0", "rand 0.8.5", @@ -4268,7 +4269,7 @@ dependencies = [ "dirs 5.0.1", "fd-lock", "forc-tracing 0.70.1", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-asm 0.65.0", "fuel-tx 0.65.0", "fuels-core 0.76.0", @@ -4290,15 +4291,15 @@ dependencies = [ [[package]] name = "forc-wallet" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe26faaf6b845bb47672ed9d9213a3031e694d55357d7642fe376d38380ada14" +checksum = "5872146ded3ea52cc724f040c20c08e828f74fdd014bbfa10623b09b83172f0d" dependencies = [ "anyhow", "clap", "eth-keystore", "forc-tracing 0.68.9", - "fuels 0.74.0", + "fuels 0.75.1", "futures", "hex", "home", @@ -4348,26 +4349,27 @@ checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" [[package]] name = "fuel-abi-types" -version = "0.12.0" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94916fee0e005fe1b9581c12edb7ad9b02c5b121b939716438d69ffcdd45e855" +checksum = "472b28d88f9d49dde82679ae6adfaff75a95f3f0b324f90eaa42a6ac3270d4ce" dependencies = [ "itertools 0.10.5", "lazy_static", "proc-macro2", "quote", "regex", + "rstest", "serde", "serde_json", - "syn 2.0.106", + "syn 2.0.109", "thiserror 1.0.69", ] [[package]] name = "fuel-abi-types" -version = "0.15.3" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "472b28d88f9d49dde82679ae6adfaff75a95f3f0b324f90eaa42a6ac3270d4ce" +checksum = "d3830b618a806809abc08aa6495e733310ec067f4eeb50532cda87a2aa25b929" dependencies = [ "itertools 0.10.5", "lazy_static", @@ -4377,7 +4379,7 @@ dependencies = [ "rstest", "serde", "serde_json", - "syn 2.0.106", + "syn 2.0.109", "thiserror 1.0.69", ] @@ -4387,7 +4389,7 @@ version = "0.62.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8961271ed5c974d8a9f12912d87be57fe899638f24948b3ffe4d63dfdf1063f" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "fuel-types 0.62.0", "serde", "strum 0.24.1", @@ -4399,7 +4401,7 @@ version = "0.65.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49ae81d896972a39cfbe6e5659624d08aa889d30950d2831cca1c50bce95898f" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "fuel-types 0.65.0", "serde", "strum 0.24.1", @@ -4480,15 +4482,15 @@ dependencies = [ [[package]] name = "fuel-core-chain-config" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83173aa86199e86d8be9c0cfbb348808a2b1fb6b6e13db3daf31a151853c3030" +checksum = "a22eafbabed0229dfc8af85619855887fc662a185c58cb3d578a63c8a372d327" dependencies = [ "anyhow", "bech32", "educe 0.6.0", - "fuel-core-storage 0.44.0", - "fuel-core-types 0.44.0", + "fuel-core-storage 0.46.0", + "fuel-core-types 0.46.0", "itertools 0.12.1", "postcard", "rand 0.8.5", @@ -4520,21 +4522,22 @@ dependencies = [ [[package]] name = "fuel-core-client" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea7fcdc7a51f5fbf403feb06fb45078e309bb2d4ec42b735744f2f1da59e657" +checksum = "a9543159741956f6a44d5f82127064c05a688eb6f1508a43806b9e60ffb36efe" dependencies = [ "anyhow", "base64 0.22.1", "cynic", "derive_more 0.99.20", "eventsource-client", - "fuel-core-types 0.44.0", + "fuel-core-types 0.46.0", "futures", "hex", "hyper-rustls 0.24.2", "itertools 0.12.1", - "reqwest 0.12.23", + "postcard", + "reqwest 0.12.24", "schemafy_lib", "serde", "serde_json", @@ -4560,7 +4563,7 @@ dependencies = [ "hyper-rustls 0.24.2", "itertools 0.12.1", "postcard", - "reqwest 0.12.23", + "reqwest 0.12.24", "schemafy_lib", "serde", "serde_json", @@ -4666,7 +4669,7 @@ dependencies = [ "futures", "num_enum", "parking_lot", - "reqwest 0.12.23", + "reqwest 0.12.24", "serde", "serde_json", "strum 0.25.0", @@ -4697,9 +4700,9 @@ dependencies = [ [[package]] name = "fuel-core-metrics" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0412e48072faab1ea533feb8ef45c80d533c688524bd298c8f518c54209ccd" +checksum = "83bbaf694c40665c0cd0232a0feae9004c2c5bbd9e377dcda39ce84aa2f27686" dependencies = [ "once_cell", "parking_lot", @@ -4761,19 +4764,19 @@ dependencies = [ [[package]] name = "fuel-core-poa" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3e35411b14efaa725f337d3d9d1145eac1ee2338ee78dd1cd9e0f689e7f61fe" +checksum = "e192252556882c140aed056f6de69c79aebf0416dd492605315870b28bd48e3d" dependencies = [ "anyhow", "async-trait", - "fuel-core-chain-config 0.44.0", - "fuel-core-services 0.44.0", - "fuel-core-storage 0.44.0", - "fuel-core-types 0.44.0", + "fuel-core-chain-config 0.46.0", + "fuel-core-services 0.46.0", + "fuel-core-storage 0.46.0", + "fuel-core-types 0.46.0", "serde", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.17", "tokio", "tokio-stream", "tracing", @@ -4842,13 +4845,13 @@ dependencies = [ [[package]] name = "fuel-core-services" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c78c38923404ddacb253113bd096fc009ccdcce4aeb53110a0974159b9b93f0e" +checksum = "e59554b05ce13920349ca3b16169537366c2fff8e3f048f091c73c5e648c13fe" dependencies = [ "anyhow", "async-trait", - "fuel-core-metrics 0.44.0", + "fuel-core-metrics 0.46.0", "futures", "parking_lot", "pin-project-lite", @@ -4890,7 +4893,7 @@ dependencies = [ "futures", "postcard", "prost 0.12.6", - "reqwest 0.12.23", + "reqwest 0.12.24", "serde", "serde_json", "tendermint-rpc", @@ -4901,14 +4904,14 @@ dependencies = [ [[package]] name = "fuel-core-storage" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eecc0a879234546d38f234943e7e7253b9d4c169cc52862595ba5b26aaea40b9" +checksum = "9794ba715ae21e0fae1c7d27715d2b9e5141d19741bd16f31ec4e39bc3d4c270" dependencies = [ "anyhow", "derive_more 0.99.20", "enum-iterator", - "fuel-core-types 0.44.0", + "fuel-core-types 0.46.0", "fuel-vm 0.62.0", "impl-tools", "itertools 0.12.1", @@ -5000,9 +5003,9 @@ dependencies = [ [[package]] name = "fuel-core-types" -version = "0.44.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d720fc5e985b5fbb73fe5e948daf4839aab25c76666a87c0dfe9b5aee51505c" +checksum = "78ca27da74919063824f0826a6f707637d26db7b24ac237bf6cc1af5a866bb3a" dependencies = [ "anyhow", "bs58", @@ -5104,7 +5107,7 @@ checksum = "55f7205c66781a189293ee839abb1bac516f496a22b889b07f8f787b25475601" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "synstructure 0.13.2", ] @@ -5116,7 +5119,7 @@ checksum = "eb4078dbab152ef822bc092bd542796270031152ff8c96008b9006fb8c52ce53" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "synstructure 0.13.2", ] @@ -5238,7 +5241,7 @@ version = "0.62.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a74c65a78258d1e8ccc3400692e557910422c3d1a992a88ff384799ccc69c46a" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "derive_more 1.0.0", "educe 0.6.0", "fuel-asm 0.62.0", @@ -5260,7 +5263,7 @@ version = "0.65.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6c26aca0167279221e6ea9bc688f4f9688d2e5a42533c05f1bdf97f1d200b1b" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "derive_more 1.0.0", "educe 0.6.0", "fuel-asm 0.65.0", @@ -5311,7 +5314,7 @@ dependencies = [ "anyhow", "async-trait", "backtrace", - "bitflags 2.9.4", + "bitflags 2.10.0", "derive_more 0.99.20", "educe 0.6.0", "ethnum", @@ -5346,7 +5349,7 @@ dependencies = [ "anyhow", "async-trait", "backtrace", - "bitflags 2.9.4", + "bitflags 2.10.0", "derive_more 0.99.20", "educe 0.6.0", "ethnum", @@ -5375,25 +5378,24 @@ dependencies = [ [[package]] name = "fuels" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e13622e2d44e7814daa8242a77fb0b88ae3210b2c90108550c373fe0695c5c4" +checksum = "71925fa65411ca3d3b15f659e502b722a4f23772a1ba707ca1a47a0bca71140e" dependencies = [ - "fuel-core-client 0.44.0", + "fuel-core-client 0.46.0", "fuel-crypto 0.62.0", "fuel-tx 0.62.0", - "fuels-accounts 0.74.0", - "fuels-core 0.74.0", - "fuels-macros 0.74.0", - "fuels-programs 0.74.0", - "fuels-test-helpers 0.74.0", + "fuels-accounts 0.75.1", + "fuels-core 0.75.1", + "fuels-macros 0.75.1", + "fuels-programs 0.75.1", + "fuels-test-helpers 0.75.1", ] [[package]] name = "fuels" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81901ab28bf46f0398c2b980a2343a3ea6c96ccf638a602cfeedb24db81ae31c" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "fuel-core-client 0.47.1", "fuel-crypto 0.65.0", @@ -5407,19 +5409,19 @@ dependencies = [ [[package]] name = "fuels-accounts" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4feb69d1125ea27b8f3020086e6394fe19867e137309da45faddce4cde98d9c3" +checksum = "053a093a9b8c5f008eacb8e86ae079631723bede0d795fafc5821d2f63184961" dependencies = [ "async-trait", "chrono", "cynic", - "fuel-core-client 0.44.0", - "fuel-core-types 0.44.0", + "fuel-core-client 0.46.0", + "fuel-core-types 0.46.0", "fuel-crypto 0.62.0", "fuel-tx 0.62.0", "fuel-types 0.62.0", - "fuels-core 0.74.0", + "fuels-core 0.75.1", "futures", "itertools 0.12.1", "k256", @@ -5434,8 +5436,7 @@ dependencies = [ [[package]] name = "fuels-accounts" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2af2d57d6b20289978ccf81397ca385a4f0f9220111b7e27109111ba721b9" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "async-trait", "chrono", @@ -5459,55 +5460,55 @@ dependencies = [ [[package]] name = "fuels-code-gen" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2bf80dac7255cd5b3ed2a69745622946151fc85b92fe7b1c3e0bbeecba6322e" +checksum = "d264cafc426d0c69bef87921d32e2078679b304b375ee203bca61b82f8992982" dependencies = [ "Inflector", - "fuel-abi-types 0.12.0", + "fuel-abi-types 0.15.3", "itertools 0.12.1", "proc-macro2", "quote", "regex", "serde_json", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "fuels-code-gen" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5d6a0c6d15b5bbba10b5862488c34fbeb06e82036409b6e663dedd68430aec9" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "Inflector", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "itertools 0.12.1", "proc-macro2", "quote", "regex", "serde_json", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "fuels-core" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c51b11f3d1a01839c84a71fcd486382bd626042faa5c4950436edd0355016c89" +checksum = "7b5206ac929045d956700b1dcd51a4ff65a3684a8c784bf07a7b2c9754ccecbf" dependencies = [ "async-trait", "auto_impl", "chrono", - "fuel-abi-types 0.12.0", + "fuel-abi-types 0.15.3", "fuel-asm 0.62.0", - "fuel-core-chain-config 0.44.0", - "fuel-core-client 0.44.0", - "fuel-core-types 0.44.0", + "fuel-core-chain-config 0.46.0", + "fuel-core-client 0.46.0", + "fuel-core-types 0.46.0", "fuel-crypto 0.62.0", "fuel-tx 0.62.0", "fuel-types 0.62.0", "fuel-vm 0.62.0", - "fuels-macros 0.74.0", + "fuels-code-gen 0.75.1", + "fuels-macros 0.75.1", "hex", "itertools 0.12.1", "postcard", @@ -5521,13 +5522,12 @@ dependencies = [ [[package]] name = "fuels-core" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d857ff8b9a0034c86c63c53c079098ffd674d47089dd1a8c93bda3cf7e976885" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "async-trait", "auto_impl", "chrono", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-asm 0.65.0", "fuel-core-chain-config 0.47.1", "fuel-core-client 0.47.1", @@ -5550,43 +5550,42 @@ dependencies = [ [[package]] name = "fuels-macros" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0424e09f6c0b4ec2dd204af8195f74a4fb72879383de32541b71da0e1ab9b01a" +checksum = "f2e6fb142046e3ea6008dbef19028e2f14fbb2bf3ce8b8b5a68444bd34d597f5" dependencies = [ - "fuels-code-gen 0.74.0", + "fuels-code-gen 0.75.1", "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "fuels-macros" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb02dbec62f9441a199d08b584489f6f91f301e189b1299caeb21154c256ffeb" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "fuels-code-gen 0.76.0", "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "fuels-programs" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595f83f274003d1a75b1e065433e933286375aa8cde91d14787ec803bbc91b26" +checksum = "e6d8633dded2082dfaf004ea89b3313e342c1aeb232906a3f8ae3aec0b8ad946" dependencies = [ "async-trait", - "fuel-abi-types 0.12.0", + "fuel-abi-types 0.15.3", "fuel-asm 0.62.0", "fuel-tx 0.62.0", "fuel-types 0.62.0", - "fuels-accounts 0.74.0", - "fuels-core 0.74.0", + "fuels-accounts 0.75.1", + "fuels-core 0.75.1", "itertools 0.12.1", "rand 0.8.5", "serde_json", @@ -5596,11 +5595,10 @@ dependencies = [ [[package]] name = "fuels-programs" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d94a8919bc58ac98bd4376ad24b2137b75fad05eb096bf5dffe1d5438d684d1b" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "async-trait", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-asm 0.65.0", "fuel-tx 0.65.0", "fuel-types 0.65.0", @@ -5614,20 +5612,20 @@ dependencies = [ [[package]] name = "fuels-test-helpers" -version = "0.74.0" +version = "0.75.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b95d72b29baad3bd8111085785e90357b2b9300bde65eabfbf142a8d8570f44d" +checksum = "acc96b30b63b228c87a18bcd61a9a8e5bcd1fca62f4cc5729346c3538b363e48" dependencies = [ - "fuel-core-chain-config 0.44.0", - "fuel-core-client 0.44.0", - "fuel-core-poa 0.44.0", - "fuel-core-services 0.44.0", - "fuel-core-types 0.44.0", + "fuel-core-chain-config 0.46.0", + "fuel-core-client 0.46.0", + "fuel-core-poa 0.46.0", + "fuel-core-services 0.46.0", + "fuel-core-types 0.46.0", "fuel-crypto 0.62.0", "fuel-tx 0.62.0", "fuel-types 0.62.0", - "fuels-accounts 0.74.0", - "fuels-core 0.74.0", + "fuels-accounts 0.75.1", + "fuels-core 0.75.1", "futures", "portpicker", "rand 0.8.5", @@ -5639,8 +5637,7 @@ dependencies = [ [[package]] name = "fuels-test-helpers" version = "0.76.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4f277d3dd44e8ebc2aa2a5234ad8fee3433c43b0b58c2a7d7f73449d1e6930c" +source = "git+https://github.com/FuelLabs/fuels-rs?branch=feat%2Fbump-fuel-abi-types-0.16.0#00696f8021c8dfc639a40845f9481682cf006c46" dependencies = [ "fuel-core-chain-config 0.47.1", "fuel-core-client 0.47.1", @@ -5743,7 +5740,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -5753,7 +5750,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f2f12607f92c69b12ed746fabf9ca4f5c482cba46679c1a75b874ed7c26adb" dependencies = [ "futures-io", - "rustls 0.23.32", + "rustls 0.23.35", "rustls-pki-types", ] @@ -5829,9 +5826,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", "version_check", @@ -5847,21 +5844,21 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", "js-sys", "libc", "r-efi", - "wasi 0.14.7+wasi-0.2.4", + "wasip2", "wasm-bindgen", ] @@ -5882,7 +5879,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" dependencies = [ "fallible-iterator", - "indexmap 2.11.4", + "indexmap 2.12.0", "stable_deref_trait", ] @@ -5898,7 +5895,7 @@ version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b903b73e45dc0c6c596f2d37eccece7c1c8bb6e4407b001096387c63d0d93724" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "libc", "libgit2-sys", "log", @@ -5930,23 +5927,22 @@ dependencies = [ [[package]] name = "gix-path" -version = "0.10.20" +version = "0.10.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06d37034a4c67bbdda76f7bcd037b2f7bc0fba0c09a6662b19697a5716e7b2fd" +checksum = "0416b41cd00ff292af9b94b0660880c44bd2ed66828ddca9a2b333535cbb71b8" dependencies = [ "bstr", "gix-trace", "gix-validate", "home", - "once_cell", "thiserror 2.0.17", ] [[package]] name = "gix-trace" -version = "0.1.13" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2ccaf54b0b1743a695b482ca0ab9d7603744d8d10b2e5d1a332fef337bee658" +checksum = "1d3f59a8de2934f6391b6b3a1a7654eae18961fcb9f9c843533fed34ad0f3457" [[package]] name = "gix-url" @@ -5965,9 +5961,9 @@ dependencies = [ [[package]] name = "gix-validate" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77b9e00cacde5b51388d28ed746c493b18a6add1f19b5e01d686b3b9ece66d4d" +checksum = "5b1e63a5b516e970a594f870ed4571a8fdcb8a344e7bd407a20db8bd61dbfde4" dependencies = [ "bstr", "thiserror 2.0.17", @@ -5981,15 +5977,15 @@ checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "globset" -version = "0.4.16" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" +checksum = "52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3" dependencies = [ "aho-corasick", "bstr", "log", - "regex-automata 0.4.11", - "regex-syntax 0.8.6", + "regex-automata 0.4.13", + "regex-syntax 0.8.8", ] [[package]] @@ -6038,7 +6034,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.11.4", + "indexmap 2.12.0", "slab", "tokio", "tokio-util", @@ -6057,7 +6053,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.3.1", - "indexmap 2.11.4", + "indexmap 2.12.0", "slab", "tokio", "tokio-util", @@ -6066,12 +6062,13 @@ dependencies = [ [[package]] name = "half" -version = "2.6.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" dependencies = [ "cfg-if", "crunchy", + "zerocopy", ] [[package]] @@ -6153,6 +6150,12 @@ dependencies = [ "foldhash", ] +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" + [[package]] name = "hashers" version = "1.0.1" @@ -6284,11 +6287,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.11" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -6457,13 +6460,13 @@ dependencies = [ "http 1.3.1", "hyper 1.7.0", "hyper-util", - "rustls 0.23.32", - "rustls-native-certs 0.8.1", + "rustls 0.23.35", + "rustls-native-certs 0.8.2", "rustls-pki-types", "tokio", "tokio-rustls 0.26.4", "tower-service", - "webpki-roots 1.0.2", + "webpki-roots 1.0.4", ] [[package]] @@ -6525,7 +6528,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.0", + "socket2 0.6.1", "system-configuration 0.6.1", "tokio", "tower-service", @@ -6545,7 +6548,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.62.1", + "windows-core 0.62.2", ] [[package]] @@ -6559,9 +6562,9 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" dependencies = [ "displaydoc", "potential_utf", @@ -6572,9 +6575,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" dependencies = [ "displaydoc", "litemap", @@ -6585,11 +6588,10 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" dependencies = [ - "displaydoc", "icu_collections", "icu_normalizer_data", "icu_properties", @@ -6600,42 +6602,38 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" [[package]] name = "icu_properties" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" +checksum = "e93fcd3157766c0c8da2f8cff6ce651a31f0810eaa1c51ec363ef790bbb5fb99" dependencies = [ - "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", "icu_provider", - "potential_utf", "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" +checksum = "02845b3647bb045f1100ecd6480ff52f34c35f82d9880e029d329c21d1054899" [[package]] name = "icu_provider" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" dependencies = [ "displaydoc", "icu_locale_core", - "stable_deref_trait", - "tinystr", "writeable", "yoke", "zerofrom", @@ -6772,7 +6770,7 @@ dependencies = [ "autocfg", "impl-tools-lib", "proc-macro-error2", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -6784,7 +6782,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -6795,7 +6793,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -6842,12 +6840,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.11.4" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" +checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", "rayon", "serde", "serde_core", @@ -6862,15 +6860,18 @@ dependencies = [ "console", "number_prefix", "portable-atomic", - "unicode-width 0.2.1", + "unicode-width 0.2.2", "web-time", ] [[package]] name = "indoc" -version = "2.0.6" +version = "2.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" +checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" +dependencies = [ + "rustversion", +] [[package]] name = "inout" @@ -6903,17 +6904,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "io-uring" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" -dependencies = [ - "bitflags 2.9.4", - "cfg-if", - "libc", -] - [[package]] name = "ipconfig" version = "0.3.2" @@ -6977,9 +6967,9 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" +checksum = "4f867b9d1d896b67beb18518eda36fdb77a32ea590de864f1325b294a6d14397" dependencies = [ "memchr", "serde", @@ -6987,20 +6977,20 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.16" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -7074,7 +7064,7 @@ checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -7083,15 +7073,15 @@ version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" dependencies = [ - "getrandom 0.3.3", + "getrandom 0.3.4", "libc", ] [[package]] name = "js-sys" -version = "0.3.81" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305" +checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" dependencies = [ "once_cell", "wasm-bindgen", @@ -7170,9 +7160,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.176" +version = "0.2.177" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" [[package]] name = "libdbus-sys" @@ -7205,7 +7195,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -7502,7 +7492,7 @@ dependencies = [ "quinn", "rand 0.8.5", "ring 0.17.14", - "rustls 0.23.32", + "rustls 0.23.35", "socket2 0.5.10", "thiserror 1.0.69", "tokio", @@ -7562,7 +7552,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -7594,7 +7584,7 @@ dependencies = [ "libp2p-identity", "rcgen", "ring 0.17.14", - "rustls 0.23.32", + "rustls 0.23.35", "rustls-webpki 0.101.7", "thiserror 1.0.69", "x509-parser", @@ -7659,7 +7649,7 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "libc", "redox_syscall", ] @@ -7737,23 +7727,22 @@ checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" [[package]] name = "litrs" -version = "0.4.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" +checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" [[package]] name = "lock_api" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ - "autocfg", "scopeguard", ] @@ -7792,8 +7781,8 @@ dependencies = [ "lazy_static", "proc-macro2", "quote", - "regex-syntax 0.8.6", - "syn 2.0.106", + "regex-syntax 0.8.8", + "syn 2.0.109", ] [[package]] @@ -7894,7 +7883,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8036,17 +8025,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", + "simd-adler32", ] [[package]] name = "mio" -version = "1.0.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" +checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873" dependencies = [ "libc", - "wasi 0.11.1+wasi-snapshot-preview1", - "windows-sys 0.59.0", + "wasi", + "windows-sys 0.61.2", ] [[package]] @@ -8301,7 +8291,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "cfg-if", "cfg_aliases", "libc", @@ -8313,7 +8303,7 @@ version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "cfg-if", "cfg_aliases", "libc", @@ -8353,7 +8343,7 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf23ab2b905654b4cb177e30b629937b3868311d4e1cba859f899c041046e69b" dependencies = [ - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -8483,9 +8473,9 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" +checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" dependencies = [ "num_enum_derive", "rustversion", @@ -8493,14 +8483,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" +checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8524,7 +8514,7 @@ dependencies = [ "crc32fast", "flate2", "hashbrown 0.15.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "memchr", "ruzstd", ] @@ -8558,9 +8548,9 @@ dependencies = [ [[package]] name = "once_cell_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "onig" @@ -8568,7 +8558,7 @@ version = "6.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "336b9c63443aceef14bea841b899035ae3abe89b7c486aaf4c5bd8aafedac3f0" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "libc", "once_cell", "onig_sys", @@ -8646,11 +8636,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.73" +version = "0.10.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" +checksum = "24ad14dd45412269e1a30f52ad8f0664f0f4f4a89ee8fe28c3b3527021ebb654" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "cfg-if", "foreign-types", "libc", @@ -8667,7 +8657,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8678,18 +8668,18 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-src" -version = "300.5.3+3.5.4" +version = "300.5.4+3.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc6bad8cd0233b63971e232cc9c5e83039375b8586d2312f31fda85db8f888c2" +checksum = "a507b3792995dae9b0df8a1c1e3771e8418b7c2d9f0baeba32e6fe8b06c7cb72" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.109" +version = "0.9.110" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" +checksum = "0a9f0075ba3c21b09f8e8b2026584b1d18d49388648f2fbbf3c97ea8deced8e2" dependencies = [ "cc", "libc", @@ -8706,12 +8696,12 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "os_pipe" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db335f4760b14ead6290116f2427bf33a14d4f0617d49f78a246de10c1831224" +checksum = "7d8fae84b431384b68627d0f9b3b1245fcf9f46f6c0e3dc902e9dce64edd1967" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] @@ -8735,7 +8725,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8802,7 +8792,7 @@ dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8813,9 +8803,9 @@ checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" [[package]] name = "parking_lot" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", "parking_lot_core", @@ -8823,15 +8813,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.11" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", "redox_syscall", "smallvec", - "windows-targets 0.52.6", + "windows-link 0.2.1", ] [[package]] @@ -8903,12 +8893,12 @@ dependencies = [ [[package]] name = "pem" -version = "3.0.5" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38af38e8470ac9dee3ce1bae1af9c1671fffc44ddfd8bd1d0a3445bf349a8ef3" +checksum = "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" dependencies = [ "base64 0.22.1", - "serde", + "serde_core", ] [[package]] @@ -8956,7 +8946,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -8976,7 +8966,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.11.4", + "indexmap 2.12.0", "serde", "serde_derive", ] @@ -9021,7 +9011,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -9050,7 +9040,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -9088,7 +9078,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "740ebea15c5d1428f910cd1a5f52cebf8d25006245ed8ade92702f4943d91e07" dependencies = [ "base64 0.22.1", - "indexmap 2.11.4", + "indexmap 2.12.0", "quick-xml", "serde", "time", @@ -9133,7 +9123,7 @@ dependencies = [ "hermit-abi", "pin-project-lite", "rustix 1.1.2", - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -9198,9 +9188,9 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" +checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" dependencies = [ "zerovec", ] @@ -9278,7 +9268,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -9334,7 +9324,7 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.23.6", + "toml_edit 0.23.7", ] [[package]] @@ -9384,9 +9374,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.101" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" dependencies = [ "unicode-ident", ] @@ -9399,7 +9389,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "version_check", "yansi", ] @@ -9424,24 +9414,23 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "proptest" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bb0be07becd10686a0bb407298fb425360a5c44a663774406340c59a22de4ce" +checksum = "bee689443a2bd0a16ab0348b52ee43e3b2d1b1f931c8aa5c9f8de4c86fbe8c40" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.9.4", - "lazy_static", + "bitflags 2.10.0", "num-traits", "rand 0.9.2", "rand_chacha 0.9.0", "rand_xorshift", - "regex-syntax 0.8.6", + "regex-syntax 0.8.8", "rusty-fork", "tempfile", "unarray", @@ -9477,7 +9466,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -9490,7 +9479,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -9553,7 +9542,7 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76979bea66e7875e7509c4ec5300112b316af87fa7a252ca91c448b32dfe3993" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "memchr", "pulldown-cmark-escape", "unicase", @@ -9604,13 +9593,13 @@ dependencies = [ [[package]] name = "quick_cache" -version = "0.6.16" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ad6644cb07b7f3488b9f3d2fde3b4c0a7fa367cafefb39dff93a659f76eb786" +checksum = "7ada44a88ef953a3294f6eb55d2007ba44646015e18613d2f213016379203ef3" dependencies = [ "ahash 0.8.12", "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", "parking_lot", ] @@ -9627,8 +9616,8 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.1.1", - "rustls 0.23.32", - "socket2 0.6.0", + "rustls 0.23.35", + "socket2 0.6.1", "thiserror 2.0.17", "tokio", "tracing", @@ -9642,12 +9631,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ "bytes", - "getrandom 0.3.3", + "getrandom 0.3.4", "lru-slab", "rand 0.9.2", "ring 0.17.14", "rustc-hash 2.1.1", - "rustls 0.23.32", + "rustls 0.23.35", "rustls-pki-types", "slab", "thiserror 2.0.17", @@ -9665,16 +9654,16 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.6.0", + "socket2 0.6.1", "tracing", "windows-sys 0.60.2", ] [[package]] name = "quote" -version = "1.0.41" +version = "1.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" +checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" dependencies = [ "proc-macro2", ] @@ -9757,7 +9746,7 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" dependencies = [ - "getrandom 0.3.3", + "getrandom 0.3.4", ] [[package]] @@ -9815,7 +9804,7 @@ version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52c4f3084aa3bc7dfbba4eff4fab2a54db4324965d8872ab933565e6fbd83bc6" dependencies = [ - "pem 3.0.5", + "pem 3.0.6", "ring 0.16.20", "time", "yasna", @@ -9823,11 +9812,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.17" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", ] [[package]] @@ -9864,19 +9853,19 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "regex" -version = "1.11.3" +version = "1.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c" +checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.11", - "regex-syntax 0.8.6", + "regex-automata 0.4.13", + "regex-syntax 0.8.8", ] [[package]] @@ -9890,20 +9879,20 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.11" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.6", + "regex-syntax 0.8.8", ] [[package]] name = "regex-lite" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943f41321c63ef1c92fd763bfe054d2668f7f225a5c29f0105903dc2fc04ba30" +checksum = "8d942b98df5e658f56f20d592c7f868833fe38115e65c33003d8cd224b0155da" [[package]] name = "regex-syntax" @@ -9913,9 +9902,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" +checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" [[package]] name = "relative-path" @@ -9976,9 +9965,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.23" +version = "0.12.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb" +checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" dependencies = [ "base64 0.22.1", "bytes", @@ -10002,7 +9991,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.32", + "rustls 0.23.35", "rustls-pki-types", "serde", "serde_json", @@ -10020,7 +10009,7 @@ dependencies = [ "wasm-bindgen-futures", "wasm-streams", "web-sys", - "webpki-roots 1.0.2", + "webpki-roots 1.0.4", ] [[package]] @@ -10083,7 +10072,7 @@ dependencies = [ "alloy-eip7702", "alloy-primitives", "auto_impl", - "bitflags 2.9.4", + "bitflags 2.10.0", "bitvec", "c-kzg", "cfg-if", @@ -10118,12 +10107,12 @@ dependencies = [ [[package]] name = "rhai" -version = "1.23.4" +version = "1.23.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "527390cc333a8d2cd8237890e15c36518c26f8b54c903d86fc59f42f08d25594" +checksum = "f4e35aaaa439a5bda2f8d15251bc375e4edfac75f9865734644782c9701b5709" dependencies = [ "ahash 0.8.12", - "bitflags 2.9.4", + "bitflags 2.10.0", "instant", "num-traits", "once_cell", @@ -10141,7 +10130,7 @@ checksum = "d4322a2a4e8cf30771dd9f27f7f37ca9ac8fe812dddd811096a98483080dabe6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -10250,7 +10239,7 @@ dependencies = [ "paste", "pin-project-lite", "rand 0.9.2", - "reqwest 0.12.23", + "reqwest 0.12.24", "rmcp-macros", "schemars 0.8.22", "serde", @@ -10275,7 +10264,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -10359,7 +10348,7 @@ dependencies = [ "regex", "relative-path", "rustc_version 0.4.1", - "syn 2.0.106", + "syn 2.0.109", "unicode-ident", ] @@ -10427,9 +10416,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rust_decimal" -version = "1.38.0" +version = "1.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8975fc98059f365204d635119cf9c5a60ae67b841ed49b5422a9a7e56cdfac0" +checksum = "35affe401787a9bd846712274d97654355d21b2a2c092a3139aabe31e9022282" dependencies = [ "arrayvec", "borsh", @@ -10498,7 +10487,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "errno", "libc", "linux-raw-sys 0.4.15", @@ -10511,11 +10500,11 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "errno", "libc", "linux-raw-sys 0.11.0", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -10532,15 +10521,15 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.32" +version = "0.23.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" +checksum = "533f54bc6a7d4f647e46ad909549eda97bf5afc1585190ef692b4286b198bd8f" dependencies = [ "aws-lc-rs", "once_cell", "ring 0.17.14", "rustls-pki-types", - "rustls-webpki 0.103.7", + "rustls-webpki 0.103.8", "subtle", "zeroize", ] @@ -10559,9 +10548,9 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" +checksum = "9980d917ebb0c0536119ba501e90834767bffc3d60641457fd84a1f3fd337923" dependencies = [ "openssl-probe", "rustls-pki-types", @@ -10580,9 +10569,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +checksum = "94182ad936a0c91c324cd46c6511b9510ed16af436d7b5bab34beab0afd55f7a" dependencies = [ "web-time", "zeroize", @@ -10600,9 +10589,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.7" +version = "0.103.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf" +checksum = "2ffdfa2f5286e2247234e03f680868ac2815974dc39e00ea15adc445d0aafe52" dependencies = [ "aws-lc-rs", "ring 0.17.14", @@ -10618,9 +10607,9 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "rusty-fork" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +checksum = "cc6bf79ff24e648f6da1f8d1f011e9cac26491b619e6b9280f2b47f1774e6ee2" dependencies = [ "fnv", "quick-error", @@ -10634,7 +10623,7 @@ version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ee1e066dc922e513bda599c6ccb5f3bb2b0ea5870a579448f2622993f0a9a2f" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "cfg-if", "clipboard-win", "fd-lock", @@ -10645,7 +10634,7 @@ dependencies = [ "nix 0.29.0", "radix_trie", "unicode-segmentation", - "unicode-width 0.2.1", + "unicode-width 0.2.2", "utf8parse", "windows-sys 0.59.0", ] @@ -10715,7 +10704,7 @@ dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -10733,7 +10722,7 @@ version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" dependencies = [ - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -10789,9 +10778,9 @@ dependencies = [ [[package]] name = "schemars" -version = "1.0.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +checksum = "9558e172d4e8533736ba97870c4b2cd63f84b382a3d6eb063da41b91cce17289" dependencies = [ "dyn-clone", "ref-cast", @@ -10808,7 +10797,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -10928,7 +10917,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -10941,7 +10930,7 @@ version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -11035,7 +11024,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11046,7 +11035,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11065,7 +11054,7 @@ version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ - "indexmap 2.11.4", + "indexmap 2.12.0", "itoa", "memchr", "ryu", @@ -11092,7 +11081,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11118,19 +11107,18 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.14.1" +version = "3.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c522100790450cf78eeac1507263d0a350d4d5b30df0c8e1fe051a10c22b376e" +checksum = "aa66c845eee442168b2c8134fec70ac50dc20e760769c8ba0ad1319ca1959b04" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.11.4", + "indexmap 2.12.0", "schemars 0.9.0", - "schemars 1.0.4", - "serde", - "serde_derive", + "schemars 1.1.0", + "serde_core", "serde_json", "serde_with_macros", "time", @@ -11138,14 +11126,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.14.1" +version = "3.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "327ada00f7d64abaac1e55a6911e90cf665aa051b9a561c7006c157f4633135e" +checksum = "b91a903660542fced4e99881aa481bdbaec1634568ee02e0b8bd57c64cb38955" dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11154,7 +11142,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.11.4", + "indexmap 2.12.0", "itoa", "ryu", "serde", @@ -11183,7 +11171,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11313,6 +11301,12 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + [[package]] name = "simdutf8" version = "0.1.5" @@ -11453,12 +11447,12 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807" +checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -11516,9 +11510,9 @@ dependencies = [ [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "static_assertions" @@ -11600,7 +11594,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11613,7 +11607,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11669,7 +11663,7 @@ dependencies = [ "clap", "dirs 5.0.1", "either", - "fuel-abi-types 0.15.3", + "fuel-abi-types 0.16.0", "fuel-ethabi", "fuel-etk-asm", "fuel-etk-ops", @@ -11679,7 +11673,7 @@ dependencies = [ "hashbrown 0.14.5", "hex", "im", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.13.0", "lazy_static", "object 0.36.7", @@ -11739,7 +11733,7 @@ dependencies = [ "anyhow", "downcast-rs", "filecheck", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.13.0", "once_cell", "peg", @@ -11760,7 +11754,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11798,7 +11792,7 @@ dependencies = [ "sway-types", "sway-utils", "swayfmt", - "syn 2.0.106", + "syn 2.0.109", "tempfile", "thiserror 1.0.69", "tikv-jemallocator", @@ -11851,7 +11845,7 @@ dependencies = [ "fuel-asm 0.65.0", "fuel-crypto 0.65.0", "fuel-tx 0.65.0", - "indexmap 2.11.4", + "indexmap 2.12.0", "lazy_static", "num-bigint", "num-traits", @@ -11908,9 +11902,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.106" +version = "2.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "2f17c7e013e88258aa9543dcbe81aca68a667a9ac37cd69c9fbc07858bfe0e2f" dependencies = [ "proc-macro2", "quote", @@ -11952,7 +11946,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -11968,7 +11962,7 @@ dependencies = [ "once_cell", "onig", "plist", - "regex-syntax 0.8.6", + "regex-syntax 0.8.8", "serde", "serde_derive", "serde_json", @@ -12009,7 +12003,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -12088,10 +12082,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ "fastrand", - "getrandom 0.3.3", + "getrandom 0.3.4", "once_cell", "rustix 1.1.2", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -12359,7 +12353,7 @@ checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" dependencies = [ "smawk", "unicode-linebreak", - "unicode-width 0.2.1", + "unicode-width 0.2.2", ] [[package]] @@ -12394,7 +12388,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -12405,7 +12399,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -12428,9 +12422,9 @@ dependencies = [ [[package]] name = "tikv-jemalloc-sys" -version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" +version = "0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" +checksum = "cd8aa5b2ab86a2cefa406d889139c162cbb230092f7d1d7cbc1716405d852a3b" dependencies = [ "cc", "libc", @@ -12438,9 +12432,9 @@ dependencies = [ [[package]] name = "tikv-jemallocator" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" +checksum = "0359b4327f954e0567e69fb191cf1436617748813819c94b8cd4a431422d053a" dependencies = [ "libc", "tikv-jemalloc-sys", @@ -12488,9 +12482,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" dependencies = [ "displaydoc", "zerovec", @@ -12523,22 +12517,19 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.47.1" +version = "1.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038" +checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" dependencies = [ - "backtrace", "bytes", - "io-uring", "libc", "mio", "parking_lot", "pin-project-lite", "signal-hook-registry", - "slab", - "socket2 0.6.0", + "socket2 0.6.1", "tokio-macros", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -12553,13 +12544,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -12598,7 +12589,7 @@ version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ - "rustls 0.23.32", + "rustls 0.23.35", "tokio", ] @@ -12631,9 +12622,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.16" +version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14307c986784f72ef81c89db7d9e28d6ac26d16213b109ea501696195e6e3ce5" +checksum = "2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594" dependencies = [ "bytes", "futures-core", @@ -12674,9 +12665,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" +checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" dependencies = [ "serde_core", ] @@ -12687,7 +12678,7 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.11.4", + "indexmap 2.12.0", "serde", "serde_spanned", "toml_datetime 0.6.11", @@ -12697,21 +12688,21 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.23.6" +version = "0.23.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" +checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" dependencies = [ - "indexmap 2.11.4", - "toml_datetime 0.7.2", + "indexmap 2.12.0", + "toml_datetime 0.7.3", "toml_parser", "winnow", ] [[package]] name = "toml_parser" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" +checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" dependencies = [ "winnow", ] @@ -12846,7 +12837,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "bytes", "futures-core", "futures-util", @@ -12866,7 +12857,7 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" dependencies = [ - "bitflags 2.9.4", + "bitflags 2.10.0", "bytes", "futures-util", "http 1.3.1", @@ -12915,7 +12906,7 @@ checksum = "84fd902d4e0b9a4b27f2f440108dc034e1758628a9b702f8ec61ad66355422fa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -12944,7 +12935,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -13029,7 +13020,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -13129,9 +13120,9 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-ident" -version = "1.0.19" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" [[package]] name = "unicode-linebreak" @@ -13141,9 +13132,9 @@ checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" [[package]] name = "unicode-normalization" -version = "0.1.24" +version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +checksum = "5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8" dependencies = [ "tinyvec", ] @@ -13162,9 +13153,9 @@ checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-width" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" [[package]] name = "unicode-xid" @@ -13276,7 +13267,7 @@ version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ - "getrandom 0.3.3", + "getrandom 0.3.4", "js-sys", "serde", "wasm-bindgen", @@ -13396,15 +13387,6 @@ version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" -[[package]] -name = "wasi" -version = "0.14.7+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" -dependencies = [ - "wasip2", -] - [[package]] name = "wasip2" version = "1.0.1+wasi-0.2.4" @@ -13422,9 +13404,9 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d" +checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" dependencies = [ "cfg-if", "once_cell", @@ -13433,25 +13415,11 @@ dependencies = [ "wasm-bindgen-shared", ] -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.104" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.106", - "wasm-bindgen-shared", -] - [[package]] name = "wasm-bindgen-futures" -version = "0.4.54" +version = "0.4.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e038d41e478cc73bae0ff9b36c60cff1c98b8f38f8d7e8061e79ee63608ac5c" +checksum = "551f88106c6d5e7ccc7cd9a16f312dd3b5d36ea8b4954304657d5dfba115d4a0" dependencies = [ "cfg-if", "js-sys", @@ -13462,9 +13430,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119" +checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -13472,22 +13440,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" +checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn 2.0.106", - "wasm-bindgen-backend", + "syn 2.0.109", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1" +checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" dependencies = [ "unicode-ident", ] @@ -13507,9 +13475,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.81" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120" +checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1" dependencies = [ "js-sys", "wasm-bindgen", @@ -13533,9 +13501,9 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "webpki-roots" -version = "1.0.2" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8983c3ab33d6fb807cfcdad2491c4ea8cbc8ed839181c7dfd9c67c83e261b2" +checksum = "b2878ef029c47c6e8cf779119f20fcf52bde7ad42a731b2a304bc221df17571e" dependencies = [ "rustls-pki-types", ] @@ -13565,9 +13533,9 @@ dependencies = [ [[package]] name = "widestring" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d" +checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" [[package]] name = "winapi" @@ -13591,7 +13559,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.1", + "windows-sys 0.48.0", ] [[package]] @@ -13622,37 +13590,37 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.62.1" +version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6844ee5416b285084d3d3fffd743b925a6c9385455f64f6d4fa3031c4c2749a9" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ "windows-implement", "windows-interface", - "windows-link 0.2.0", - "windows-result 0.4.0", - "windows-strings 0.5.0", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", ] [[package]] name = "windows-implement" -version = "0.60.1" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb307e42a74fb6de9bf3a02d9712678b22399c87e6fa869d6dfcd8c1b7754e0" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "windows-interface" -version = "0.59.2" +version = "0.59.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0abd1ddbc6964ac14db11c7213d6532ef34bd9aa042c2e5935f59d7908b46a5" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -13663,9 +13631,9 @@ checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" [[package]] name = "windows-link" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-registry" @@ -13698,11 +13666,11 @@ dependencies = [ [[package]] name = "windows-result" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" dependencies = [ - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -13716,11 +13684,11 @@ dependencies = [ [[package]] name = "windows-strings" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -13756,16 +13724,16 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.4", + "windows-targets 0.53.5", ] [[package]] name = "windows-sys" -version = "0.61.1" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ - "windows-link 0.2.0", + "windows-link 0.2.1", ] [[package]] @@ -13801,19 +13769,19 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.4" +version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ - "windows-link 0.2.0", - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", + "windows-link 0.2.1", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", ] [[package]] @@ -13830,9 +13798,9 @@ checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" [[package]] name = "windows_aarch64_msvc" @@ -13848,9 +13816,9 @@ checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_aarch64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" [[package]] name = "windows_i686_gnu" @@ -13866,9 +13834,9 @@ checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" [[package]] name = "windows_i686_gnullvm" @@ -13878,9 +13846,9 @@ checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" [[package]] name = "windows_i686_msvc" @@ -13896,9 +13864,9 @@ checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_i686_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" [[package]] name = "windows_x86_64_gnu" @@ -13914,9 +13882,9 @@ checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" [[package]] name = "windows_x86_64_gnullvm" @@ -13932,9 +13900,9 @@ checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" [[package]] name = "windows_x86_64_msvc" @@ -13950,9 +13918,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "windows_x86_64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" @@ -14010,9 +13978,9 @@ checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "writeable" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" [[package]] name = "ws_stream_wasm" @@ -14089,9 +14057,9 @@ checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" [[package]] name = "xml-rs" -version = "0.8.27" +version = "0.8.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fd8403733700263c6eb89f192880191f1b83e332f7a20371ddcf421c4a337c7" +checksum = "3ae8337f8a065cfc972643663ea4279e04e7256de865aa66fe25cec5fb912d3f" [[package]] name = "xmlparser" @@ -14165,11 +14133,10 @@ dependencies = [ [[package]] name = "yoke" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" dependencies = [ - "serde", "stable_deref_trait", "yoke-derive", "zerofrom", @@ -14177,13 +14144,13 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "synstructure 0.13.2", ] @@ -14204,7 +14171,7 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] @@ -14224,7 +14191,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", "synstructure 0.13.2", ] @@ -14245,14 +14212,14 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] [[package]] name = "zerotrie" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" dependencies = [ "displaydoc", "yoke", @@ -14261,9 +14228,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.4" +version = "0.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b" +checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" dependencies = [ "yoke", "zerofrom", @@ -14272,11 +14239,11 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.109", ] diff --git a/Cargo.toml b/Cargo.toml index 6e1dcbbf87c..851ae79768f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -80,7 +80,7 @@ sway-ir-macros = { path = "sway-ir/sway-ir-macros", version = "0.70.1" } # # Dependencies from the `fuel-abi-types` repository: -fuel-abi-types = "0.15" +fuel-abi-types = "0.16" # Dependencies from the `fuel-core` repository: # @@ -259,3 +259,9 @@ vte = "0.13" walkdir = "2.3" whoami = "1.5" wiremock = "0.6" + +[patch.crates-io] +fuels = { git = "https://github.com/FuelLabs/fuels-rs", branch = "feat/bump-fuel-abi-types-0.16.0" } +fuels-core = { git = "https://github.com/FuelLabs/fuels-rs", branch = "feat/bump-fuel-abi-types-0.16.0" } +fuels-accounts = { git = "https://github.com/FuelLabs/fuels-rs", branch = "feat/bump-fuel-abi-types-0.16.0" } +fuels-code-gen = { git = "https://github.com/FuelLabs/fuels-rs", branch = "feat/bump-fuel-abi-types-0.16.0" } diff --git a/docs/book/src/reference/experimental_features.md b/docs/book/src/reference/experimental_features.md index d06f8b3c772..2ec202db5f3 100644 --- a/docs/book/src/reference/experimental_features.md +++ b/docs/book/src/reference/experimental_features.md @@ -82,3 +82,9 @@ fn conditionally_compiled() { log("This is compiled only if both `some_feature` and `some_other_feature` are enabled."); } ``` + +## Tracking Experimental Features + +- `abi_type_aliases` — keeps the JSON ABI emitter from expanding type aliases into their target type when serializing a contract's ABI, allowing the published JSON to preserve the original alias names. + +See the tracking issue for this feature [here](https://github.com/FuelLabs/sway/issues/7486). diff --git a/forc-pkg/src/pkg.rs b/forc-pkg/src/pkg.rs index 7175b6a7490..0f669a22ffa 100644 --- a/forc-pkg/src/pkg.rs +++ b/forc-pkg/src/pkg.rs @@ -1811,6 +1811,10 @@ pub fn compile( abi_with_callpaths: true, type_ids_to_full_type_str: HashMap::::new(), unique_names: HashMap::new(), + metadata_declaration_cache: HashMap::new(), + concrete_declaration_cache: HashMap::new(), + type_cache_enabled: experimental.abi_type_aliases, + experimental, }, engines, if experimental.new_encoding { diff --git a/sway-core/src/abi_generation/abi_str.rs b/sway-core/src/abi_generation/abi_str.rs index d320578f40b..afac2402698 100644 --- a/sway-core/src/abi_generation/abi_str.rs +++ b/sway-core/src/abi_generation/abi_str.rs @@ -11,6 +11,7 @@ pub struct AbiStrContext { pub abi_with_callpaths: bool, pub abi_with_fully_specified_types: bool, pub abi_root_type_without_generic_type_parameters: bool, + pub abi_type_aliases: bool, } impl TypeId { @@ -26,7 +27,7 @@ impl TypeId { let self_abi_str = type_engine .get(*self) .abi_str(handler, ctx, engines, true)?; - if self.is_generic_parameter(engines, resolved_type_id) { + if self.is_generic_parameter(engines, resolved_type_id, ctx.abi_type_aliases) { Ok(format!("generic {self_abi_str}")) } else { match ( @@ -37,9 +38,10 @@ impl TypeId { | (TypeInfo::Custom { .. }, TypeInfo::Enum { .. }) => type_engine .get(resolved_type_id) .abi_str(handler, ctx, engines, true), - (_, TypeInfo::Alias { ty, .. }) => ty + (_, TypeInfo::Alias { ty, .. }) if !ctx.abi_type_aliases => ty .type_id .get_abi_type_str(handler, ctx, engines, ty.type_id), + (_, TypeInfo::Alias { .. }) => Ok(self_abi_str), (TypeInfo::Tuple(fields), TypeInfo::Tuple(resolved_fields)) => { assert_eq!(fields.len(), resolved_fields.len()); let field_strs = resolved_fields @@ -204,7 +206,13 @@ impl TypeInfo { "__slice {}", ty.abi_str(handler, ctx, engines, false)? )), - Alias { ty, .. } => Ok(ty.abi_str(handler, ctx, engines, false)?), + Alias { name, ty } => { + if ctx.abi_type_aliases { + Ok(name.to_string()) + } else { + ty.abi_str(handler, ctx, engines, false) + } + } TraitType { name, implemented_in: _, diff --git a/sway-core/src/abi_generation/evm_abi.rs b/sway-core/src/abi_generation/evm_abi.rs index 24f3a0aabef..783af5eba1a 100644 --- a/sway-core/src/abi_generation/evm_abi.rs +++ b/sway-core/src/abi_generation/evm_abi.rs @@ -25,7 +25,7 @@ pub fn generate_abi_program(program: &TyProgram, engines: &Engines) -> EvmAbiRes /// Gives back a string that represents the type, considering what it resolves to fn get_type_str(type_id: &TypeId, engines: &Engines, resolved_type_id: TypeId) -> String { let type_engine = engines.te(); - if type_id.is_generic_parameter(engines, resolved_type_id) { + if type_id.is_generic_parameter(engines, resolved_type_id, false) { format!("generic {}", abi_str(&type_engine.get(*type_id), engines)) } else { match ( diff --git a/sway-core/src/abi_generation/fuel_abi.rs b/sway-core/src/abi_generation/fuel_abi.rs index c6b9cfc5b61..65d21127f51 100644 --- a/sway-core/src/abi_generation/fuel_abi.rs +++ b/sway-core/src/abi_generation/fuel_abi.rs @@ -3,7 +3,10 @@ use fuel_abi_types::abi::program::{ PanickingCall, TypeConcreteDeclaration, }; use sha2::{Digest, Sha256}; -use std::collections::{BTreeMap, HashMap, HashSet}; +use std::{ + collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet}, + hash::{Hash, Hasher}, +}; use sway_error::{ error::CompileError, handler::{ErrorEmitted, Handler}, @@ -13,12 +16,14 @@ use sway_types::{BaseIdent, Named, Span, Spanned}; use crate::{ ast_elements::type_parameter::GenericTypeParameter, + engine_threading::HashWithEngines, language::ty::{TyFunctionDecl, TyProgram, TyProgramKind}, transform::Attributes, AbiEncodeSizeHint, Engines, PanicOccurrences, PanickingCallOccurrences, TypeId, TypeInfo, }; use super::abi_str::AbiStrContext; +use sway_features::ExperimentalFeatures; #[derive(Clone, Debug)] pub enum AbiNameDiagnosticSpan { @@ -41,6 +46,10 @@ pub struct AbiContext<'a> { pub abi_with_callpaths: bool, pub type_ids_to_full_type_str: HashMap, pub unique_names: HashMap, + pub metadata_declaration_cache: HashMap, + pub concrete_declaration_cache: HashMap, + pub type_cache_enabled: bool, + pub experimental: ExperimentalFeatures, } impl AbiContext<'_> { @@ -48,12 +57,48 @@ impl AbiContext<'_> { AbiStrContext { program_name: self.program.namespace.current_package_name().to_string(), abi_with_callpaths: self.abi_with_callpaths, - abi_with_fully_specified_types: false, + abi_with_fully_specified_types: self.experimental.abi_type_aliases, abi_root_type_without_generic_type_parameters: true, + abi_type_aliases: self.experimental.abi_type_aliases, } } } +#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)] +pub struct TypeCacheKey(u64); + +impl TypeCacheKey { + fn from_type_id(engines: &Engines, abi_type_aliases_enabled: bool, type_id: TypeId) -> Self { + let type_engine = engines.te(); + let type_info = &*type_engine.get(type_id); + Self::from_type_info(type_info, engines, abi_type_aliases_enabled) + } + + fn from_type_info( + type_info: &TypeInfo, + engines: &Engines, + abi_type_aliases_enabled: bool, + ) -> Self { + if abi_type_aliases_enabled { + if let TypeInfo::Alias { name, ty } = type_info { + let mut hasher = DefaultHasher::new(); + name.hash(&mut hasher); + + let target_type_id = engines.te().get_unaliased_type_id(ty.type_id); + let target_key = + TypeCacheKey::from_type_id(engines, abi_type_aliases_enabled, target_type_id); + target_key.0.hash(&mut hasher); + + return TypeCacheKey(hasher.finish()); + } + } + + let mut hasher = DefaultHasher::new(); + type_info.hash(&mut hasher, engines); + TypeCacheKey(hasher.finish()) + } +} + pub fn extract_abi_name_inner(span: &Span) -> Option { let text = &span.src().text; let full_attr = span.as_str(); @@ -134,17 +179,18 @@ impl TypeId { engines: &Engines, resolved_type_id: TypeId, ) -> Result<(String, ConcreteTypeId), ErrorEmitted> { - let type_str = self.get_abi_type_str( - handler, - &AbiStrContext { - program_name: ctx.program.namespace.current_package_name().to_string(), - abi_with_callpaths: true, - abi_with_fully_specified_types: true, - abi_root_type_without_generic_type_parameters: false, - }, - engines, - resolved_type_id, - )?; + let display_ctx = AbiStrContext { + program_name: ctx.program.namespace.current_package_name().to_string(), + abi_with_callpaths: true, + abi_with_fully_specified_types: true, + abi_root_type_without_generic_type_parameters: false, + abi_type_aliases: ctx.experimental.abi_type_aliases, + }; + let type_str = self.get_abi_type_str(handler, &display_ctx, engines, resolved_type_id)?; + + let mut hash_ctx = display_ctx.clone(); + hash_ctx.abi_with_fully_specified_types = true; + let hash_type_str = self.get_abi_type_str(handler, &hash_ctx, engines, resolved_type_id)?; let mut err: Option = None; @@ -205,21 +251,21 @@ impl TypeId { } let mut hasher = Sha256::new(); - hasher.update(type_str.clone()); + hasher.update(hash_type_str.clone()); let result = hasher.finalize(); let type_id = format!("{result:x}"); if let Some(old_type_str) = ctx .type_ids_to_full_type_str - .insert(type_id.clone(), type_str.clone()) + .insert(type_id.clone(), hash_type_str.clone()) { - if old_type_str != type_str { + if old_type_str != hash_type_str { err = Some( handler.emit_err(sway_error::error::CompileError::ABIHashCollision { span: Span::dummy(), hash: type_id.clone(), first_type: old_type_str, - second_type: type_str.clone(), + second_type: hash_type_str.clone(), }), ); } @@ -440,7 +486,7 @@ fn standardize_json_abi_types(json_abi_program: &mut program_abi::ProgramABI) { // A vector containing unique `program_abi::TypeMetadataDeclaration`s. // - // Two `program_abi::TypeMetadataDeclaration` are deemed the same if the have the same + // Two `program_abi::TypeMetadataDeclaration` are deemed the same if they have the same // `type_field`, `components`, and `type_parameters` (even if their `type_id`s are // different). let mut deduped_types: Vec = Vec::new(); @@ -453,6 +499,7 @@ fn standardize_json_abi_types(json_abi_program: &mut program_abi::ProgramABI) { d.type_field == decl.type_field && decl.components.is_none() && decl.type_parameters.is_none() + && decl.alias_of.is_none() }) { old_to_new_id.insert( decl.metadata_type_id.clone(), @@ -464,6 +511,7 @@ fn standardize_json_abi_types(json_abi_program: &mut program_abi::ProgramABI) { d.type_field == decl.type_field && d.components == decl.components && d.type_parameters == decl.type_parameters + && d.alias_of == decl.alias_of }) { old_to_new_id.insert( decl.metadata_type_id.clone(), @@ -575,6 +623,14 @@ fn update_json_type_metadata_declaration( update_json_type_application(component, old_to_new_id); } } + + if let Some(alias_of) = &mut type_declaration.alias_of { + if let Some(fuel_abi_types::abi::program::TypeId::Metadata(new_id)) = + old_to_new_id.get(alias_of) + { + *alias_of = new_id.clone(); + } + } } /// Updates the metadata type IDs used in a `program_abi::TypeConcreteDeclaration` given a HashMap from @@ -601,42 +657,38 @@ fn generate_concrete_type_declaration( type_id: TypeId, resolved_type_id: TypeId, ) -> Result { - let mut new_metadata_types_to_add = Vec::::new(); - let type_metadata_decl = program_abi::TypeMetadataDeclaration { - metadata_type_id: MetadataTypeId(type_id.index()), - type_field: type_id.get_abi_type_str( - handler, - &ctx.to_str_context(), - engines, - resolved_type_id, - )?, - components: type_id.get_abi_type_components( - handler, - ctx, - engines, - metadata_types, - concrete_types, - resolved_type_id, - &mut new_metadata_types_to_add, - )?, - type_parameters: type_id.get_abi_type_parameters( - handler, - ctx, - engines, - metadata_types, - concrete_types, - resolved_type_id, - &mut new_metadata_types_to_add, - )?, - }; + let cache_key = + TypeCacheKey::from_type_id(engines, ctx.experimental.abi_type_aliases, resolved_type_id); + if ctx.type_cache_enabled { + if let Some(cached_decl) = ctx.concrete_declaration_cache.get(&cache_key) { + return Ok(cached_decl.concrete_type_id.clone()); + } + } + + let mut metadata_types_to_add = Vec::::new(); + + let type_metadata_decl = generate_type_metadata_declaration( + handler, + ctx, + engines, + metadata_types, + concrete_types, + type_id, + resolved_type_id, + &mut metadata_types_to_add, + )?; + + metadata_types.extend(metadata_types_to_add); let metadata_type_id = if type_metadata_decl.type_parameters.is_some() || type_metadata_decl.components.is_some() + || type_metadata_decl.alias_of.is_some() { Some(type_metadata_decl.metadata_type_id.clone()) } else { None }; + let type_arguments = handler.scope(|handler| { let type_arguments = if type_metadata_decl.type_parameters.is_some() { type_id.get_abi_type_arguments_as_concrete_type_ids( @@ -653,11 +705,9 @@ fn generate_concrete_type_declaration( Ok(type_arguments) })?; - metadata_types.push(type_metadata_decl); - metadata_types.extend(new_metadata_types_to_add); - let (type_field, concrete_type_id) = type_id.get_abi_type_field_and_concrete_id(handler, ctx, engines, resolved_type_id)?; + let concrete_type_decl = TypeConcreteDeclaration { type_field, concrete_type_id: concrete_type_id.clone(), @@ -666,6 +716,8 @@ fn generate_concrete_type_declaration( alias_of: None, }; + ctx.concrete_declaration_cache + .insert(cache_key, concrete_type_decl.clone()); concrete_types.push(concrete_type_decl); Ok(concrete_type_id) @@ -681,8 +733,42 @@ fn generate_type_metadata_declaration( type_id: TypeId, resolved_type_id: TypeId, metadata_types_to_add: &mut Vec, -) -> Result<(), ErrorEmitted> { +) -> Result { + let cache_key = + TypeCacheKey::from_type_id(engines, ctx.experimental.abi_type_aliases, resolved_type_id); + if ctx.type_cache_enabled { + if let Some(cached_decl) = ctx.metadata_declaration_cache.get(&cache_key) { + return Ok(cached_decl.clone()); + } + } + + let mut alias_metadata_types_to_add = Vec::::new(); + + let type_engine = engines.te(); + let alias_of_metadata_decl = if ctx.experimental.abi_type_aliases { + match &*type_engine.get(resolved_type_id) { + TypeInfo::Alias { ty, .. } => { + let dealiased_ty = fully_dealias_type_id(engines, ty.type_id); + let dealiased_metadata_decl = generate_type_metadata_declaration( + handler, + ctx, + engines, + metadata_types, + concrete_types, + dealiased_ty, + dealiased_ty, + &mut alias_metadata_types_to_add, + )?; + Some(dealiased_metadata_decl) + } + _ => None, + } + } else { + None + }; + let mut new_metadata_types_to_add = Vec::::new(); + let components = type_id.get_abi_type_components( handler, ctx, @@ -701,22 +787,89 @@ fn generate_type_metadata_declaration( resolved_type_id, &mut new_metadata_types_to_add, )?; + + let type_field = + type_id.get_abi_type_str(handler, &ctx.to_str_context(), engines, resolved_type_id)?; + + let alias_of = alias_of_metadata_decl + .as_ref() + .map(|decl| decl.metadata_type_id.clone()); + let type_metadata_decl = program_abi::TypeMetadataDeclaration { metadata_type_id: MetadataTypeId(type_id.index()), - type_field: type_id.get_abi_type_str( - handler, - &ctx.to_str_context(), - engines, - resolved_type_id, - )?, + type_field, components, type_parameters, + alias_of, }; + ctx.metadata_declaration_cache + .insert(cache_key, type_metadata_decl.clone()); metadata_types_to_add.push(type_metadata_decl.clone()); metadata_types_to_add.extend(new_metadata_types_to_add); + metadata_types_to_add.extend(alias_metadata_types_to_add); + + Ok(type_metadata_decl) +} - Ok(()) +fn fully_dealias_type_id(engines: &Engines, type_id: TypeId) -> TypeId { + fn inner(engines: &Engines, type_id: TypeId, visited: &mut HashSet) -> TypeId { + if !visited.insert(type_id) { + return type_id; + } + + let type_engine = engines.te(); + match &*type_engine.get(type_id) { + TypeInfo::Alias { ty, .. } => inner(engines, ty.type_id, visited), + TypeInfo::Tuple(fields) => type_engine.insert_tuple( + engines, + fields + .iter() + .map(|field| { + let mut field_clone = field.clone(); + let dealiased = inner(engines, field_clone.type_id, visited); + field_clone.type_id = dealiased; + field_clone.initial_type_id = dealiased; + field_clone + }) + .collect(), + ), + TypeInfo::Array(elem_ty, length) => { + let mut elem_clone = elem_ty.clone(); + let dealiased = inner(engines, elem_clone.type_id, visited); + elem_clone.type_id = dealiased; + elem_clone.initial_type_id = dealiased; + type_engine.insert_array(engines, elem_clone, length.clone()) + } + TypeInfo::Slice(elem_ty) => { + let mut elem_clone = elem_ty.clone(); + let dealiased = inner(engines, elem_clone.type_id, visited); + elem_clone.type_id = dealiased; + elem_clone.initial_type_id = dealiased; + type_engine.insert_slice(engines, elem_clone) + } + TypeInfo::Ptr(elem_ty) => { + let mut elem_clone = elem_ty.clone(); + let dealiased = inner(engines, elem_clone.type_id, visited); + elem_clone.type_id = dealiased; + elem_clone.initial_type_id = dealiased; + type_engine.insert_ptr(engines, elem_clone) + } + TypeInfo::Ref { + to_mutable_value, + referenced_type, + } => { + let mut referenced_clone = referenced_type.clone(); + let dealiased = inner(engines, referenced_clone.type_id, visited); + referenced_clone.type_id = dealiased; + referenced_clone.initial_type_id = dealiased; + type_engine.insert_ref(engines, *to_mutable_value, referenced_clone) + } + _ => type_id, + } + } + + inner(engines, type_id, &mut HashSet::new()) } fn generate_logged_types( @@ -880,7 +1033,11 @@ impl TypeId { resolved_type_id: TypeId, metadata_types_to_add: &mut Vec, ) -> Result>, ErrorEmitted> { - match self.is_generic_parameter(engines, resolved_type_id) { + match self.is_generic_parameter( + engines, + resolved_type_id, + ctx.experimental.abi_type_aliases, + ) { true => Ok(None), false => resolved_type_id .get_type_parameters(engines) @@ -965,8 +1122,9 @@ impl TypeId { let mut new_metadata_types_to_add = Vec::::new(); + let mut variant_metadata_ids = Vec::with_capacity(decl.variants.len()); for variant in decl.variants.iter() { - generate_type_metadata_declaration( + let decl = generate_type_metadata_declaration( handler, ctx, engines, @@ -976,6 +1134,7 @@ impl TypeId { variant.type_argument.type_id, &mut new_metadata_types_to_add, )?; + variant_metadata_ids.push(decl.metadata_type_id.clone()); } // Generate the JSON data for the enum. This is basically a list of @@ -983,12 +1142,11 @@ impl TypeId { let components = decl .variants .iter() - .map(|variant| { + .zip(variant_metadata_ids.iter()) + .map(|(variant, metadata_id)| { Ok(program_abi::TypeApplication { name: variant.name.to_string(), - type_id: program_abi::TypeId::Metadata(MetadataTypeId( - variant.type_argument.initial_type_id.index(), - )), + type_id: program_abi::TypeId::Metadata(metadata_id.clone()), error_message: variant.attributes.error_message().cloned(), type_arguments: variant .type_argument @@ -1019,8 +1177,9 @@ impl TypeId { let mut new_metadata_types_to_add = Vec::::new(); + let mut field_metadata_ids = Vec::with_capacity(decl.fields.len()); for field in decl.fields.iter() { - generate_type_metadata_declaration( + let decl = generate_type_metadata_declaration( handler, ctx, engines, @@ -1030,6 +1189,7 @@ impl TypeId { field.type_argument.type_id, &mut new_metadata_types_to_add, )?; + field_metadata_ids.push(decl.metadata_type_id.clone()); } // Generate the JSON data for the struct. This is basically a list of @@ -1038,7 +1198,8 @@ impl TypeId { let components = decl .fields .iter() - .map(|field| { + .zip(field_metadata_ids.iter()) + .map(|(field, metadata_id)| { let hint = engines .te() .get(field.type_argument.type_id) @@ -1064,9 +1225,7 @@ impl TypeId { Ok(program_abi::TypeApplication { name: field.name.to_string(), - type_id: program_abi::TypeId::Metadata(MetadataTypeId( - field.type_argument.initial_type_id.index(), - )), + type_id: program_abi::TypeId::Metadata(metadata_id.clone()), error_message: None, type_arguments: field .type_argument @@ -1168,8 +1327,9 @@ impl TypeId { if let TypeInfo::Tuple(fields) = &*type_engine.get(resolved_type_id) { let mut new_metadata_types_to_add = Vec::::new(); + let mut field_metadata_ids = Vec::with_capacity(fields.len()); for x in fields.iter() { - generate_type_metadata_declaration( + let decl = generate_type_metadata_declaration( handler, ctx, engines, @@ -1179,18 +1339,18 @@ impl TypeId { x.type_id, &mut new_metadata_types_to_add, )?; + field_metadata_ids.push(decl.metadata_type_id.clone()); } // Generate the JSON data for the tuple. This is basically a list of // `program_abi::TypeApplication`s let components = fields .iter() - .map(|x| { + .zip(field_metadata_ids.iter()) + .map(|(x, metadata_id)| { Ok(program_abi::TypeApplication { name: "__tuple_element".to_string(), - type_id: program_abi::TypeId::Metadata(MetadataTypeId( - x.initial_type_id.index(), - )), + type_id: program_abi::TypeId::Metadata(metadata_id.clone()), error_message: None, type_arguments: x.initial_type_id.get_abi_type_arguments( handler, @@ -1216,7 +1376,11 @@ impl TypeId { } } TypeInfo::Custom { type_arguments, .. } => { - if !self.is_generic_parameter(engines, resolved_type_id) { + if !self.is_generic_parameter( + engines, + resolved_type_id, + ctx.experimental.abi_type_aliases, + ) { for (v, p) in type_arguments.clone().unwrap_or_default().iter().zip( resolved_type_id .get_type_parameters(engines) @@ -1637,26 +1801,45 @@ impl GenericTypeParameter { concrete_types: &mut Vec, metadata_types_to_add: &mut Vec, ) -> Result { + let cache_key = TypeCacheKey::from_type_id( + engines, + ctx.experimental.abi_type_aliases, + self.initial_type_id, + ); + if ctx.type_cache_enabled { + if let Some(cached) = ctx.metadata_declaration_cache.get(&cache_key) { + return Ok(cached.metadata_type_id.clone()); + } + } + let type_id = MetadataTypeId(self.initial_type_id.index()); + + let type_field = self.initial_type_id.get_abi_type_str( + handler, + &ctx.to_str_context(), + engines, + self.type_id, + )?; + let components = self.initial_type_id.get_abi_type_components( + handler, + ctx, + engines, + metadata_types, + concrete_types, + self.type_id, + metadata_types_to_add, + )?; + let type_parameter = program_abi::TypeMetadataDeclaration { metadata_type_id: type_id.clone(), - type_field: self.initial_type_id.get_abi_type_str( - handler, - &ctx.to_str_context(), - engines, - self.type_id, - )?, - components: self.initial_type_id.get_abi_type_components( - handler, - ctx, - engines, - metadata_types, - concrete_types, - self.type_id, - metadata_types_to_add, - )?, + type_field, + components, type_parameters: None, + alias_of: None, }; + + ctx.metadata_declaration_cache + .insert(cache_key, type_parameter.clone()); metadata_types_to_add.push(type_parameter); Ok(type_id) } diff --git a/sway-core/src/language/ty/expression/expression.rs b/sway-core/src/language/ty/expression/expression.rs index 8db5f3d5672..79f97bb074c 100644 --- a/sway-core/src/language/ty/expression/expression.rs +++ b/sway-core/src/language/ty/expression/expression.rs @@ -384,6 +384,7 @@ impl CollectTypesMetadata for TyExpression { ctx.engines, logged_type_id, ctx.program_name.clone(), + ctx.experimental.abi_type_aliases, )?); // We still need to dive into the expression because it can have additional types to collect. diff --git a/sway-core/src/language/ty/expression/intrinsic_function.rs b/sway-core/src/language/ty/expression/intrinsic_function.rs index 4f2be31db43..9af36b59ab2 100644 --- a/sway-core/src/language/ty/expression/intrinsic_function.rs +++ b/sway-core/src/language/ty/expression/intrinsic_function.rs @@ -96,6 +96,7 @@ impl CollectTypesMetadata for TyIntrinsicFunctionKind { ctx.engines, logged_type_id, ctx.program_name.clone(), + ctx.experimental.abi_type_aliases, )?; types_metadata.push(logged_type); } diff --git a/sway-core/src/type_system/id.rs b/sway-core/src/type_system/id.rs index a87dffab6e1..672048bd4d5 100644 --- a/sway-core/src/type_system/id.rs +++ b/sway-core/src/type_system/id.rs @@ -266,7 +266,12 @@ impl TypeId { /// Indicates of a given type is generic or not. Rely on whether the type is `Custom` and /// consider the special case where the resolved type is a struct or enum with a name that /// matches the name of the `Custom`. - pub(crate) fn is_generic_parameter(self, engines: &Engines, resolved_type_id: TypeId) -> bool { + pub(crate) fn is_generic_parameter( + self, + engines: &Engines, + resolved_type_id: TypeId, + abi_type_aliases_enabled: bool, + ) -> bool { let type_engine = engines.te(); let decl_engine = engines.de(); match (&*type_engine.get(self), &*type_engine.get(resolved_type_id)) { @@ -290,7 +295,13 @@ impl TypeId { .. }, TypeInfo::Alias { name, .. }, - ) => call_path.call_path.suffix != name.clone(), + ) => { + if abi_type_aliases_enabled { + false + } else { + call_path.call_path.suffix != name.clone() + } + } (TypeInfo::Custom { .. }, _) => true, _ => false, } diff --git a/sway-core/src/types/collect_types_metadata.rs b/sway-core/src/types/collect_types_metadata.rs index 046347f5be3..f92df03a3e0 100644 --- a/sway-core/src/types/collect_types_metadata.rs +++ b/sway-core/src/types/collect_types_metadata.rs @@ -128,6 +128,7 @@ impl TypeMetadata { engines: &Engines, type_id: TypeId, program_name: String, + abi_type_aliases_enabled: bool, ) -> Result { Ok(TypeMetadata::LoggedType( LogId::new(type_id.get_abi_type_str( @@ -137,6 +138,7 @@ impl TypeMetadata { abi_with_callpaths: true, abi_with_fully_specified_types: true, abi_root_type_without_generic_type_parameters: false, + abi_type_aliases: abi_type_aliases_enabled, }, engines, type_id, diff --git a/sway-features/src/lib.rs b/sway-features/src/lib.rs index 7a08b9b2c2e..286a7c5a208 100644 --- a/sway-features/src/lib.rs +++ b/sway-features/src/lib.rs @@ -173,6 +173,8 @@ features! { "https://github.com/FuelLabs/sway/issues/6860", new_hashing = true, "https://github.com/FuelLabs/sway/issues/7256", + abi_type_aliases = false, + "https://github.com/FuelLabs/sway/issues/7486", } #[derive(Clone, Debug, Default, Parser)] diff --git a/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_args/stdout.snap b/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_args/stdout.snap index 838de2cf80b..bcbab1b417e 100644 --- a/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_args/stdout.snap +++ b/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_args/stdout.snap @@ -191,6 +191,7 @@ error: Attribute argument is invalid | ----- help: Valid arguments are: | ----- help: - program_type | ----- help: - target + | ----- help: - experimental_abi_type_aliases | ----- help: - experimental_const_generics | ----- help: - experimental_new_encoding | ----- help: - experimental_new_hashing diff --git a/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_cfg_arg_with_invalid_item/stdout.snap b/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_cfg_arg_with_invalid_item/stdout.snap index 67fb78fa9b3..33f76c6d6b4 100644 --- a/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_cfg_arg_with_invalid_item/stdout.snap +++ b/test/src/e2e_vm_tests/test_programs/should_fail/attributes_invalid_cfg_arg_with_invalid_item/stdout.snap @@ -24,6 +24,7 @@ error: Attribute argument is invalid | - help: Valid arguments are: | - help: - program_type | - help: - target + | - help: - experimental_abi_type_aliases | - help: - experimental_const_generics | - help: - experimental_new_encoding | - help: - experimental_new_hashing diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.lock b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.lock new file mode 100644 index 00000000000..5c7bd2bacb5 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.lock @@ -0,0 +1,8 @@ +[[package]] +name = "abi_with_alias_experimental" +source = "member" +dependencies = ["std"] + +[[package]] +name = "std" +source = "path+from-root-95C0899893008D15" diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.toml b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.toml new file mode 100644 index 00000000000..4a89cd89676 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/Forc.toml @@ -0,0 +1,9 @@ +[project] +authors = ["Fuel Labs "] +entry = "main.sw" +implicit-std = false +license = "Apache-2.0" +name = "abi_with_alias_experimental" + +[dependencies] +std = { path = "../../../../reduced_std_libs/sway-lib-std-core" } diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.debug.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.debug.json new file mode 100644 index 00000000000..5b2578ee5be --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.debug.json @@ -0,0 +1,85 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d", + "type": "()" + }, + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "metadataTypeId": 1, + "type": "AliasedTuple" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "name": "arg1" + } + ], + "name": "aliased_tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + }, + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "name": "_arg1" + } + ], + "name": "tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 2 + }, + { + "name": "__tuple_element", + "typeId": 2 + } + ], + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "aliasOf": 0, + "components": [ + { + "name": "__tuple_element", + "typeId": 2 + }, + { + "name": "__tuple_element", + "typeId": 2 + } + ], + "metadataTypeId": 1, + "type": "AliasedTuple" + }, + { + "metadataTypeId": 2, + "type": "u64" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.release.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.release.json new file mode 100644 index 00000000000..5b2578ee5be --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle.release.json @@ -0,0 +1,85 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d", + "type": "()" + }, + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "metadataTypeId": 1, + "type": "AliasedTuple" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "name": "arg1" + } + ], + "name": "aliased_tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + }, + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "name": "_arg1" + } + ], + "name": "tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 2 + }, + { + "name": "__tuple_element", + "typeId": 2 + } + ], + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "aliasOf": 0, + "components": [ + { + "name": "__tuple_element", + "typeId": 2 + }, + { + "name": "__tuple_element", + "typeId": 2 + } + ], + "metadataTypeId": 1, + "type": "AliasedTuple" + }, + { + "metadataTypeId": 2, + "type": "u64" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.debug.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.debug.json new file mode 100644 index 00000000000..db2c5cc54d5 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.debug.json @@ -0,0 +1,70 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d", + "type": "()" + }, + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "aliasOf": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "type": "AliasedTuple" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "name": "arg1" + } + ], + "name": "aliased_tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + }, + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "name": "_arg1" + } + ], + "name": "tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 1 + }, + { + "name": "__tuple_element", + "typeId": 1 + } + ], + "metadataTypeId": 0, + "type": "(_, _)" + }, + { + "metadataTypeId": 1, + "type": "u64" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.release.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.release.json new file mode 100644 index 00000000000..db2c5cc54d5 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/json_abi_oracle_new_encoding.release.json @@ -0,0 +1,70 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d", + "type": "()" + }, + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "metadataTypeId": 0, + "type": "(u64, u64)" + }, + { + "aliasOf": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "type": "AliasedTuple" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "0c549b98c3db49207607c6f5f063b081b1a724bc479a2a1b353ff2c60f3f1d49", + "name": "arg1" + } + ], + "name": "aliased_tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + }, + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "41bd1a98f0a59642d8f824c805b798a5f268d1f7d05808eb05c4189c493f1be0", + "name": "_arg1" + } + ], + "name": "tuple", + "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 1 + }, + { + "name": "__tuple_element", + "typeId": 1 + } + ], + "metadataTypeId": 0, + "type": "(_, _)" + }, + { + "metadataTypeId": 1, + "type": "u64" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/src/main.sw b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/src/main.sw new file mode 100644 index 00000000000..c75439d8e82 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/src/main.sw @@ -0,0 +1,15 @@ +contract; + +type AliasedTuple = (u64, u64); + +abi MyContract { + fn tuple(arg1: (u64, u64)); // Inline + fn aliased_tuple(arg1: AliasedTuple); // Alias +} + +impl MyContract for Contract { + fn tuple(_arg1: (u64, u64)) { + } + fn aliased_tuple(arg1: AliasedTuple) { + } +} diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/test.toml b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/test.toml new file mode 100644 index 00000000000..244f034415b --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/abi_with_alias_experimental/test.toml @@ -0,0 +1,4 @@ +category = "compile" +validate_abi = true +expected_warnings = 1 +experimental = { abi_type_aliases = true } diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.lock b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.lock new file mode 100644 index 00000000000..2e45197db5b --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.lock @@ -0,0 +1,16 @@ +[[package]] +name = "contract_with_type_aliases_abi" +source = "path+from-root-ACB1098C77544082" +dependencies = ["std"] + +[[package]] +name = "contract_with_type_aliases_experimental" +source = "member" +dependencies = [ + "contract_with_type_aliases_abi", + "std", +] + +[[package]] +name = "std" +source = "path+from-root-ACB1098C77544082" diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.toml b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.toml new file mode 100644 index 00000000000..d678b9ec8df --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/Forc.toml @@ -0,0 +1,9 @@ +[project] +authors = ["Fuel Labs "] +entry = "main.sw" +license = "Apache-2.0" +name = "contract_with_type_aliases_experimental" + +[dependencies] +contract_with_type_aliases_abi = { path = "../../test_abis/contract_with_type_aliases_abi" } +std = { path = "../../../../../../../sway-lib-std" } diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.debug.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.debug.json new file mode 100644 index 00000000000..dfe76666d31 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.debug.json @@ -0,0 +1,256 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "concreteTypeId": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2", + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "metadataTypeId": 4, + "type": "StringTy" + }, + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "metadataTypeId": 5, + "type": "SubId" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "metadataTypeId": 7, + "type": "[IdentityAlias; 2]" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "metadataTypeId": 11, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeArguments": [ + "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + ] + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "name": "x" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "name": "y" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "name": "z" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "name": "w" + }, + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "name": "u" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "name": "s" + } + ], + "name": "foo", + "output": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 5 + } + ], + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "components": [ + { + "name": "__tuple_element", + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 7 + }, + { + "name": "__tuple_element", + "typeId": 3 + }, + { + "name": "__tuple_element", + "typeArguments": [ + { + "name": "", + "typeId": 109769 + } + ], + "typeId": 11 + }, + { + "name": "__tuple_element", + "typeId": 0 + }, + { + "name": "__tuple_element", + "typeId": 4 + } + ], + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "aliasOf": 9, + "components": [ + { + "name": "Address", + "typeId": 13 + }, + { + "name": "ContractId", + "typeId": 14 + } + ], + "metadataTypeId": 2, + "type": "IdentityAlias" + }, + { + "aliasOf": 12, + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "aliasOf": 10, + "metadataTypeId": 4, + "type": "StringTy" + }, + { + "aliasOf": 8, + "metadataTypeId": 5, + "type": "SubId" + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 6, + "type": "T" + }, + { + "components": [ + { + "name": "__array_element", + "typeId": 2 + } + ], + "metadataTypeId": 7, + "type": "[IdentityAlias; 2]" + }, + { + "metadataTypeId": 8, + "type": "b256" + }, + { + "components": [ + { + "name": "Address", + "typeId": 13 + }, + { + "name": "ContractId", + "typeId": 14 + } + ], + "metadataTypeId": 9, + "type": "enum std::identity::Identity" + }, + { + "metadataTypeId": 10, + "type": "str[9]" + }, + { + "components": [ + { + "name": "f", + "typeId": 3 + } + ], + "metadataTypeId": 11, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeParameters": [ + 6 + ] + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 12, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + }, + { + "components": [ + { + "name": "bits", + "typeId": 8 + } + ], + "metadataTypeId": 13, + "type": "struct std::address::Address" + }, + { + "components": [ + { + "name": "bits", + "typeId": 8 + } + ], + "metadataTypeId": 14, + "type": "struct std::contract_id::ContractId" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.release.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.release.json new file mode 100644 index 00000000000..dfe76666d31 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle.release.json @@ -0,0 +1,256 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "concreteTypeId": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2", + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "metadataTypeId": 4, + "type": "StringTy" + }, + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "metadataTypeId": 5, + "type": "SubId" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "metadataTypeId": 7, + "type": "[IdentityAlias; 2]" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "metadataTypeId": 11, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeArguments": [ + "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + ] + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "name": "x" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "name": "y" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "name": "z" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "name": "w" + }, + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "name": "u" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "name": "s" + } + ], + "name": "foo", + "output": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 5 + } + ], + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "components": [ + { + "name": "__tuple_element", + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 7 + }, + { + "name": "__tuple_element", + "typeId": 3 + }, + { + "name": "__tuple_element", + "typeArguments": [ + { + "name": "", + "typeId": 109769 + } + ], + "typeId": 11 + }, + { + "name": "__tuple_element", + "typeId": 0 + }, + { + "name": "__tuple_element", + "typeId": 4 + } + ], + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "aliasOf": 9, + "components": [ + { + "name": "Address", + "typeId": 13 + }, + { + "name": "ContractId", + "typeId": 14 + } + ], + "metadataTypeId": 2, + "type": "IdentityAlias" + }, + { + "aliasOf": 12, + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "aliasOf": 10, + "metadataTypeId": 4, + "type": "StringTy" + }, + { + "aliasOf": 8, + "metadataTypeId": 5, + "type": "SubId" + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 6, + "type": "T" + }, + { + "components": [ + { + "name": "__array_element", + "typeId": 2 + } + ], + "metadataTypeId": 7, + "type": "[IdentityAlias; 2]" + }, + { + "metadataTypeId": 8, + "type": "b256" + }, + { + "components": [ + { + "name": "Address", + "typeId": 13 + }, + { + "name": "ContractId", + "typeId": 14 + } + ], + "metadataTypeId": 9, + "type": "enum std::identity::Identity" + }, + { + "metadataTypeId": 10, + "type": "str[9]" + }, + { + "components": [ + { + "name": "f", + "typeId": 3 + } + ], + "metadataTypeId": 11, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeParameters": [ + 6 + ] + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 12, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + }, + { + "components": [ + { + "name": "bits", + "typeId": 8 + } + ], + "metadataTypeId": 13, + "type": "struct std::address::Address" + }, + { + "components": [ + { + "name": "bits", + "typeId": 8 + } + ], + "metadataTypeId": 14, + "type": "struct std::contract_id::ContractId" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.debug.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.debug.json new file mode 100644 index 00000000000..bf53ffdaf47 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.debug.json @@ -0,0 +1,236 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "concreteTypeId": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2", + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "aliasOf": "1567acc73497bb83e04c376e2c8d3997d0207f0b9b8fa17b0192ee62e1c7a60b", + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "aliasOf": "bc5b9d5b85b9fb6e78bbb779cc67a95e60d6f291cd256a4c7dba66308dc7dfb8", + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "type": "StringTy" + }, + { + "aliasOf": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b", + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "type": "SubId" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "metadataTypeId": 5, + "type": "[IdentityAlias; 2]" + }, + { + "concreteTypeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b", + "type": "b256" + }, + { + "concreteTypeId": "bc5b9d5b85b9fb6e78bbb779cc67a95e60d6f291cd256a4c7dba66308dc7dfb8", + "type": "str[9]" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "metadataTypeId": 6, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeArguments": [ + "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + ] + }, + { + "concreteTypeId": "1567acc73497bb83e04c376e2c8d3997d0207f0b9b8fa17b0192ee62e1c7a60b", + "metadataTypeId": 7, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "name": "x" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "name": "y" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "name": "z" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "name": "w" + }, + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "name": "u" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "name": "s" + } + ], + "name": "foo", + "output": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + }, + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + } + ], + "metadataTypeId": 0, + "type": "(_, _)" + }, + { + "components": [ + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + }, + { + "name": "__tuple_element", + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 3 + }, + { + "name": "__tuple_element", + "typeArguments": [ + { + "name": "", + "typeId": 3 + } + ], + "typeId": 6 + }, + { + "name": "__tuple_element", + "typeId": 0 + }, + { + "name": "__tuple_element", + "typeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0" + } + ], + "metadataTypeId": 1, + "type": "(_, _, _, _, _, _)" + }, + { + "components": [ + { + "name": "Address", + "typeId": 8 + }, + { + "name": "ContractId", + "typeId": 9 + } + ], + "metadataTypeId": 2, + "type": "IdentityAlias" + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 3, + "type": "IdentityAliasWrapperAlias" + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 4, + "type": "T" + }, + { + "components": [ + { + "name": "__array_element", + "typeId": 2 + } + ], + "metadataTypeId": 5, + "type": "[_; 2]" + }, + { + "components": [ + { + "name": "f", + "typeId": 4 + } + ], + "metadataTypeId": 6, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeParameters": [ + 4 + ] + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 7, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + }, + { + "components": [ + { + "name": "bits", + "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b" + } + ], + "metadataTypeId": 8, + "type": "struct std::address::Address" + }, + { + "components": [ + { + "name": "bits", + "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b" + } + ], + "metadataTypeId": 9, + "type": "struct std::contract_id::ContractId" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.release.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.release.json new file mode 100644 index 00000000000..67e26c324dd --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_abi_oracle_new_encoding.release.json @@ -0,0 +1,189 @@ +{ + "concreteTypes": [ + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "metadataTypeId": 0, + "type": "(SubId, SubId)" + }, + { + "concreteTypeId": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2", + "metadataTypeId": 1, + "type": "(SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, struct contract_with_type_aliases_abi::Generic, (SubId, SubId), StringTy)" + }, + { + "aliasOf": "1567acc73497bb83e04c376e2c8d3997d0207f0b9b8fa17b0192ee62e1c7a60b", + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "type": "IdentityAliasWrapperAlias" + }, + { + "aliasOf": "bc5b9d5b85b9fb6e78bbb779cc67a95e60d6f291cd256a4c7dba66308dc7dfb8", + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "type": "StringTy" + }, + { + "aliasOf": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b", + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "type": "SubId" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "metadataTypeId": 4, + "type": "[IdentityAlias; 2]" + }, + { + "concreteTypeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b", + "type": "b256" + }, + { + "concreteTypeId": "bc5b9d5b85b9fb6e78bbb779cc67a95e60d6f291cd256a4c7dba66308dc7dfb8", + "type": "str[9]" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "metadataTypeId": 5, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeArguments": [ + "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + ] + }, + { + "concreteTypeId": "1567acc73497bb83e04c376e2c8d3997d0207f0b9b8fa17b0192ee62e1c7a60b", + "metadataTypeId": 6, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + } + ], + "configurables": [], + "encodingVersion": "1", + "errorCodes": {}, + "functions": [ + { + "attributes": null, + "inputs": [ + { + "concreteTypeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba", + "name": "x" + }, + { + "concreteTypeId": "51e03ee1e6f7b7c928eab4ea7bd4f5140eb25216646a3742afbe75a753b0bce3", + "name": "y" + }, + { + "concreteTypeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c", + "name": "z" + }, + { + "concreteTypeId": "7587b556083bd8ec430f2588f6b8aaeba231743f84761b1d8955e125f2527ef2", + "name": "w" + }, + { + "concreteTypeId": "e9133707b9a5964870ad23e86be4f17604dcc01a7f1aa3c29c89bc00bf826150", + "name": "u" + }, + { + "concreteTypeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0", + "name": "s" + } + ], + "name": "foo", + "output": "6dc857ccc5450dd9656c41075b5f827d26b117e08f6a7aeb27c83eddb7eb46c2" + } + ], + "loggedTypes": [], + "messagesTypes": [], + "metadataTypes": [ + { + "components": [ + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + }, + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + } + ], + "metadataTypeId": 0, + "type": "(_, _)" + }, + { + "components": [ + { + "name": "__tuple_element", + "typeId": "ed5a69f3ec26a28dea9c502e4de03d3c9da64d76a6cafee4348d8f090db3f1ba" + }, + { + "name": "__tuple_element", + "typeId": 4 + }, + { + "name": "__tuple_element", + "typeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + }, + { + "name": "__tuple_element", + "typeArguments": [ + { + "name": "", + "typeId": "ec8b64f449a0a882a300f033518b1d36d4d86ae5fb56a2f73bee536991354f8c" + } + ], + "typeId": 5 + }, + { + "name": "__tuple_element", + "typeId": 0 + }, + { + "name": "__tuple_element", + "typeId": "ad6cdbd8e07b2c3d4b95f6b4ba8e5eeb6106b604fb4dfc6ccb8274ee194aadf0" + } + ], + "metadataTypeId": 1, + "type": "(_, _, _, _, _, _)" + }, + { + "metadataTypeId": 2, + "type": "IdentityAlias" + }, + { + "metadataTypeId": 3, + "type": "T" + }, + { + "components": [ + { + "name": "__array_element", + "typeId": 2 + } + ], + "metadataTypeId": 4, + "type": "[_; 2]" + }, + { + "components": [ + { + "name": "f", + "typeId": 3 + } + ], + "metadataTypeId": 5, + "type": "struct contract_with_type_aliases_abi::Generic", + "typeParameters": [ + 3 + ] + }, + { + "components": [ + { + "name": "i", + "typeId": 2 + } + ], + "metadataTypeId": 6, + "type": "struct contract_with_type_aliases_abi::IdentityAliasWrapper" + } + ], + "panickingCalls": {}, + "programType": "contract", + "specVersion": "1.2" +} \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_storage_slots_oracle.json b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_storage_slots_oracle.json new file mode 100644 index 00000000000..0637a088a01 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/json_storage_slots_oracle.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/src/main.sw b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/src/main.sw new file mode 100644 index 00000000000..e2e7f45da6f --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/src/main.sw @@ -0,0 +1,16 @@ +contract; + +use contract_with_type_aliases_abi::*; + +impl MyContract for Contract { + fn foo( + x: SubId, + y: [IdentityAlias; 2], + z: IdentityAliasWrapperAlias, + w: Generic, + u: (SubId, SubId), + s: StringTy, + ) -> (SubId, [IdentityAlias; 2], IdentityAliasWrapperAlias, Generic, (SubId, SubId), StringTy) { + (x, y, z, w, u, s) + } +} diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/test.toml b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/test.toml new file mode 100644 index 00000000000..79bf9411cb5 --- /dev/null +++ b/test/src/e2e_vm_tests/test_programs/should_pass/test_contracts/contract_with_type_aliases_experimental/test.toml @@ -0,0 +1,4 @@ +category = "compile" +validate_abi = true +validate_storage_slots = true +experimental = { abi_type_aliases = true }