git.delta.rocks / unique-network / refs/commits / 91de1c72f26a

difftreelog

Merge pull request #794 from UniqueNetwork/feature/polkadot-v0.9.36

Yaroslav Bolyukin2022-12-22parents: #3e8db54 #d1c1a98.patch.diff
in: master
Upgrade to polkadot v0.9.36

92 files changed

modifiedCargo.lockdiffbeforeafterboth
18source = "registry+https://github.com/rust-lang/crates.io-index"18source = "registry+https://github.com/rust-lang/crates.io-index"
19checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b"19checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b"
20dependencies = [20dependencies = [
21 "gimli",21 "gimli 0.26.2",
22]22]
2323
24[[package]]24[[package]]
25name = "addr2line"
26version = "0.19.0"
27source = "registry+https://github.com/rust-lang/crates.io-index"
28checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
29dependencies = [
30 "gimli 0.27.0",
31]
32
33[[package]]
25name = "adler"34name = "adler"
26version = "1.0.2"35version = "1.0.2"
27source = "registry+https://github.com/rust-lang/crates.io-index"36source = "registry+https://github.com/rust-lang/crates.io-index"
108117
109[[package]]118[[package]]
110name = "anyhow"119name = "anyhow"
111version = "1.0.66"120version = "1.0.68"
112source = "registry+https://github.com/rust-lang/crates.io-index"121source = "registry+https://github.com/rust-lang/crates.io-index"
113checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6"122checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61"
114123
115[[package]]124[[package]]
116name = "app-promotion-rpc"125name = "app-promotion-rpc"
142checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6"151checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6"
143152
144[[package]]153[[package]]
154name = "array-bytes"
155version = "6.0.0"
156source = "registry+https://github.com/rust-lang/crates.io-index"
157checksum = "22f72e9d6fac4bc80778ea470b20197b88d28c292bb7d60c3fb099280003cd19"
158
159[[package]]
145name = "arrayref"160name = "arrayref"
146version = "0.3.6"161version = "0.3.6"
147source = "registry+https://github.com/rust-lang/crates.io-index"162source = "registry+https://github.com/rust-lang/crates.io-index"
148checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"163checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
149164
150[[package]]165[[package]]
151name = "arrayvec"166name = "arrayvec"
152version = "0.4.12"
153source = "registry+https://github.com/rust-lang/crates.io-index"
154checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
155dependencies = [
156 "nodrop",
157]
158
159[[package]]
160name = "arrayvec"
161version = "0.5.2"167version = "0.5.2"
162source = "registry+https://github.com/rust-lang/crates.io-index"168source = "registry+https://github.com/rust-lang/crates.io-index"
163checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"169checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
289 "async-global-executor",295 "async-global-executor",
290 "async-io",296 "async-io",
291 "async-lock",297 "async-lock",
292 "async-process",
293 "crossbeam-utils",298 "crossbeam-utils",
294 "futures-channel",299 "futures-channel",
295 "futures-core",300 "futures-core",
307]312]
308313
309[[package]]314[[package]]
310name = "async-std-resolver"
311version = "0.22.0"
312source = "registry+https://github.com/rust-lang/crates.io-index"
313checksum = "6ba50e24d9ee0a8950d3d03fc6d0dd10aa14b5de3b101949b4e160f7fee7c723"
314dependencies = [
315 "async-std",
316 "async-trait",
317 "futures-io",
318 "futures-util",
319 "pin-utils",
320 "socket2",
321 "trust-dns-resolver",
322]
323
324[[package]]
325name = "async-task"315name = "async-task"
326version = "4.3.0"316version = "4.3.0"
327source = "registry+https://github.com/rust-lang/crates.io-index"317source = "registry+https://github.com/rust-lang/crates.io-index"
328checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"318checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
329319
330[[package]]320[[package]]
331name = "async-trait"321name = "async-trait"
332version = "0.1.59"322version = "0.1.60"
333source = "registry+https://github.com/rust-lang/crates.io-index"323source = "registry+https://github.com/rust-lang/crates.io-index"
334checksum = "31e6e93155431f3931513b243d371981bb2770112b370c82745a1d19d2f99364"324checksum = "677d1d8ab452a3936018a687b20e6f7cf5363d713b732b8884001317b0e48aa3"
335dependencies = [325dependencies = [
336 "proc-macro2",326 "proc-macro2",
337 "quote",327 "quote",
387checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"377checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
388378
389[[package]]379[[package]]
390name = "backoff"
391version = "0.4.0"
392source = "registry+https://github.com/rust-lang/crates.io-index"
393checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
394dependencies = [
395 "futures-core",
396 "getrandom 0.2.8",
397 "instant",
398 "pin-project-lite 0.2.9",
399 "rand 0.8.5",
400 "tokio",
401]
402
403[[package]]
404name = "backtrace"380name = "backtrace"
405version = "0.3.66"381version = "0.3.67"
406source = "registry+https://github.com/rust-lang/crates.io-index"382source = "registry+https://github.com/rust-lang/crates.io-index"
407checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7"383checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca"
408dependencies = [384dependencies = [
409 "addr2line",385 "addr2line 0.19.0",
410 "cc",386 "cc",
411 "cfg-if",387 "cfg-if",
412 "libc",388 "libc",
413 "miniz_oxide 0.5.4",389 "miniz_oxide",
414 "object",390 "object 0.30.0",
415 "rustc-demangle",391 "rustc-demangle",
416]392]
417393
457[[package]]433[[package]]
458name = "beefy-gadget"434name = "beefy-gadget"
459version = "4.0.0-dev"435version = "4.0.0-dev"
460source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"436source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
461dependencies = [437dependencies = [
462 "array-bytes",438 "array-bytes 4.2.0",
463 "async-trait",439 "async-trait",
464 "beefy-primitives",
465 "fnv",440 "fnv",
466 "futures 0.3.25",441 "futures 0.3.25",
467 "futures-timer",442 "futures-timer",
480 "sp-api",455 "sp-api",
481 "sp-application-crypto",456 "sp-application-crypto",
482 "sp-arithmetic",457 "sp-arithmetic",
458 "sp-beefy",
483 "sp-blockchain",459 "sp-blockchain",
484 "sp-consensus",460 "sp-consensus",
485 "sp-core",461 "sp-core",
494[[package]]470[[package]]
495name = "beefy-gadget-rpc"471name = "beefy-gadget-rpc"
496version = "4.0.0-dev"472version = "4.0.0-dev"
497source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"473source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
498dependencies = [474dependencies = [
499 "beefy-gadget",475 "beefy-gadget",
500 "beefy-primitives",
501 "futures 0.3.25",476 "futures 0.3.25",
502 "jsonrpsee",477 "jsonrpsee",
503 "log",478 "log",
506 "sc-rpc",481 "sc-rpc",
507 "sc-utils",482 "sc-utils",
508 "serde",483 "serde",
484 "sp-beefy",
509 "sp-core",485 "sp-core",
510 "sp-runtime",486 "sp-runtime",
511 "thiserror",487 "thiserror",
514[[package]]490[[package]]
515name = "beefy-merkle-tree"491name = "beefy-merkle-tree"
516version = "4.0.0-dev"492version = "4.0.0-dev"
517source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"493source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
518dependencies = [494dependencies = [
519 "beefy-primitives",
520 "sp-api",495 "sp-api",
496 "sp-beefy",
521 "sp-runtime",497 "sp-runtime",
522]498]
523499
524[[package]]500[[package]]
525name = "beefy-primitives"
526version = "4.0.0-dev"
527source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"
528dependencies = [
529 "parity-scale-codec 3.2.1",
530 "scale-info",
531 "serde",
532 "sp-api",
533 "sp-application-crypto",
534 "sp-core",
535 "sp-io",
536 "sp-mmr-primitives",
537 "sp-runtime",
538 "sp-std",
539]
540
541[[package]]
542name = "bincode"501name = "bincode"
543version = "1.3.3"502version = "1.3.3"
544source = "registry+https://github.com/rust-lang/crates.io-index"503source = "registry+https://github.com/rust-lang/crates.io-index"
598557
599[[package]]558[[package]]
600name = "blake2"559name = "blake2"
601version = "0.10.5"560version = "0.10.6"
602source = "registry+https://github.com/rust-lang/crates.io-index"561source = "registry+https://github.com/rust-lang/crates.io-index"
603checksum = "b12e5fd123190ce1c2e559308a94c9bacad77907d4c6005d9e58fe1a0689e55e"562checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
604dependencies = [563dependencies = [
605 "digest 0.10.6",564 "digest 0.10.6",
606]565]
607566
608[[package]]567[[package]]
609name = "blake2-rfc"
610version = "0.2.18"
611source = "registry+https://github.com/rust-lang/crates.io-index"
612checksum = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400"
613dependencies = [
614 "arrayvec 0.4.12",
615 "constant_time_eq 0.1.5",
616]
617
618[[package]]
619name = "blake2b_simd"568name = "blake2b_simd"
620version = "1.0.0"569version = "1.0.0"
621source = "registry+https://github.com/rust-lang/crates.io-index"570source = "registry+https://github.com/rust-lang/crates.io-index"
826dependencies = [775dependencies = [
827 "camino",776 "camino",
828 "cargo-platform",777 "cargo-platform",
829 "semver 1.0.14",778 "semver 1.0.16",
830 "serde",779 "serde",
831 "serde_json",780 "serde_json",
832]781]
833782
834[[package]]783[[package]]
835name = "cc"784name = "cc"
836version = "1.0.77"785version = "1.0.78"
837source = "registry+https://github.com/rust-lang/crates.io-index"786source = "registry+https://github.com/rust-lang/crates.io-index"
838checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"787checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
839dependencies = [788dependencies = [
840 "jobserver",789 "jobserver",
841]790]
905 "js-sys",854 "js-sys",
906 "num-integer",855 "num-integer",
907 "num-traits",856 "num-traits",
908 "time 0.1.45",857 "time",
909 "wasm-bindgen",858 "wasm-bindgen",
910 "winapi",859 "winapi",
911]860]
954903
955[[package]]904[[package]]
956name = "clap"905name = "clap"
957version = "4.0.29"906version = "4.0.30"
958source = "registry+https://github.com/rust-lang/crates.io-index"907source = "registry+https://github.com/rust-lang/crates.io-index"
959checksum = "4d63b9e9c07271b9957ad22c173bae2a4d9a81127680962039296abcd2f8251d"908checksum = "656ad1e55e23d287773f7d8192c300dc715c3eeded93b3da651d11c42cfd74d2"
960dependencies = [909dependencies = [
961 "bitflags",910 "bitflags",
962 "clap_derive",911 "clap_derive",
1103]1052]
11041053
1105[[package]]1054[[package]]
1055name = "cpu-time"
1056version = "1.0.0"
1057source = "registry+https://github.com/rust-lang/crates.io-index"
1058checksum = "e9e393a7668fe1fad3075085b86c781883000b4ede868f43627b34a87c8b7ded"
1059dependencies = [
1060 "libc",
1061 "winapi",
1062]
1063
1064[[package]]
1106name = "cpufeatures"1065name = "cpufeatures"
1107version = "0.2.5"1066version = "0.2.5"
1108source = "registry+https://github.com/rust-lang/crates.io-index"1067source = "registry+https://github.com/rust-lang/crates.io-index"
1133 "cranelift-codegen-shared",1092 "cranelift-codegen-shared",
1134 "cranelift-entity",1093 "cranelift-entity",
1135 "cranelift-isle",1094 "cranelift-isle",
1136 "gimli",1095 "gimli 0.26.2",
1137 "log",1096 "log",
1138 "regalloc2",1097 "regalloc2",
1139 "smallvec",1098 "smallvec",
1341[[package]]1300[[package]]
1342name = "cumulus-client-cli"1301name = "cumulus-client-cli"
1343version = "0.1.0"1302version = "0.1.0"
1344source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1303source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1345dependencies = [1304dependencies = [
1346 "clap",1305 "clap",
1347 "parity-scale-codec 3.2.1",1306 "parity-scale-codec 3.2.1",
1356[[package]]1315[[package]]
1357name = "cumulus-client-collator"1316name = "cumulus-client-collator"
1358version = "0.1.0"1317version = "0.1.0"
1359source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1318source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1360dependencies = [1319dependencies = [
1361 "cumulus-client-consensus-common",1320 "cumulus-client-consensus-common",
1362 "cumulus-client-network",1321 "cumulus-client-network",
1379[[package]]1338[[package]]
1380name = "cumulus-client-consensus-aura"1339name = "cumulus-client-consensus-aura"
1381version = "0.1.0"1340version = "0.1.0"
1382source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1341source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1383dependencies = [1342dependencies = [
1384 "async-trait",1343 "async-trait",
1385 "cumulus-client-consensus-common",1344 "cumulus-client-consensus-common",
1408[[package]]1367[[package]]
1409name = "cumulus-client-consensus-common"1368name = "cumulus-client-consensus-common"
1410version = "0.1.0"1369version = "0.1.0"
1411source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1370source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1412dependencies = [1371dependencies = [
1413 "async-trait",1372 "async-trait",
1373 "cumulus-client-pov-recovery",
1374 "cumulus-primitives-core",
1414 "cumulus-relay-chain-interface",1375 "cumulus-relay-chain-interface",
1415 "dyn-clone",1376 "dyn-clone",
1416 "futures 0.3.25",1377 "futures 0.3.25",
1378 "log",
1417 "parity-scale-codec 3.2.1",1379 "parity-scale-codec 3.2.1",
1418 "polkadot-primitives",1380 "polkadot-primitives",
1419 "sc-client-api",1381 "sc-client-api",
1428[[package]]1390[[package]]
1429name = "cumulus-client-network"1391name = "cumulus-client-network"
1430version = "0.1.0"1392version = "0.1.0"
1431source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1393source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1432dependencies = [1394dependencies = [
1433 "async-trait",1395 "async-trait",
1434 "cumulus-relay-chain-interface",1396 "cumulus-relay-chain-interface",
1451[[package]]1413[[package]]
1452name = "cumulus-client-pov-recovery"1414name = "cumulus-client-pov-recovery"
1453version = "0.1.0"1415version = "0.1.0"
1454source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1416source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1455dependencies = [1417dependencies = [
1456 "cumulus-primitives-core",1418 "cumulus-primitives-core",
1457 "cumulus-relay-chain-interface",1419 "cumulus-relay-chain-interface",
1474[[package]]1436[[package]]
1475name = "cumulus-client-service"1437name = "cumulus-client-service"
1476version = "0.1.0"1438version = "0.1.0"
1477source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1439source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1478dependencies = [1440dependencies = [
1479 "cumulus-client-cli",1441 "cumulus-client-cli",
1480 "cumulus-client-collator",1442 "cumulus-client-collator",
1481 "cumulus-client-consensus-common",1443 "cumulus-client-consensus-common",
1482 "cumulus-client-pov-recovery",1444 "cumulus-client-pov-recovery",
1483 "cumulus-primitives-core",1445 "cumulus-primitives-core",
1446 "cumulus-relay-chain-inprocess-interface",
1484 "cumulus-relay-chain-interface",1447 "cumulus-relay-chain-interface",
1448 "cumulus-relay-chain-minimal-node",
1449 "futures 0.3.25",
1485 "parking_lot 0.12.1",1450 "parking_lot 0.12.1",
1486 "polkadot-primitives",1451 "polkadot-primitives",
1487 "sc-client-api",1452 "sc-client-api",
1488 "sc-consensus",1453 "sc-consensus",
1489 "sc-service",1454 "sc-service",
1455 "sc-sysinfo",
1456 "sc-telemetry",
1490 "sp-api",1457 "sp-api",
1491 "sp-blockchain",1458 "sp-blockchain",
1492 "sp-consensus",1459 "sp-consensus",
1497[[package]]1464[[package]]
1498name = "cumulus-pallet-aura-ext"1465name = "cumulus-pallet-aura-ext"
1499version = "0.1.0"1466version = "0.1.0"
1500source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1467source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1501dependencies = [1468dependencies = [
1502 "frame-support",1469 "frame-support",
1503 "frame-system",1470 "frame-system",
1513[[package]]1480[[package]]
1514name = "cumulus-pallet-dmp-queue"1481name = "cumulus-pallet-dmp-queue"
1515version = "0.1.0"1482version = "0.1.0"
1516source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1483source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1517dependencies = [1484dependencies = [
1518 "cumulus-primitives-core",1485 "cumulus-primitives-core",
1519 "frame-support",1486 "frame-support",
1530[[package]]1497[[package]]
1531name = "cumulus-pallet-parachain-system"1498name = "cumulus-pallet-parachain-system"
1532version = "0.1.0"1499version = "0.1.0"
1533source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1500source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1534dependencies = [1501dependencies = [
1535 "bytes",1502 "bytes",
1536 "cumulus-pallet-parachain-system-proc-macro",1503 "cumulus-pallet-parachain-system-proc-macro",
1558[[package]]1525[[package]]
1559name = "cumulus-pallet-parachain-system-proc-macro"1526name = "cumulus-pallet-parachain-system-proc-macro"
1560version = "0.1.0"1527version = "0.1.0"
1561source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1528source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1562dependencies = [1529dependencies = [
1563 "proc-macro-crate",1530 "proc-macro-crate",
1564 "proc-macro2",1531 "proc-macro2",
1569[[package]]1536[[package]]
1570name = "cumulus-pallet-xcm"1537name = "cumulus-pallet-xcm"
1571version = "0.1.0"1538version = "0.1.0"
1572source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1539source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1573dependencies = [1540dependencies = [
1574 "cumulus-primitives-core",1541 "cumulus-primitives-core",
1575 "frame-support",1542 "frame-support",
1585[[package]]1552[[package]]
1586name = "cumulus-pallet-xcmp-queue"1553name = "cumulus-pallet-xcmp-queue"
1587version = "0.1.0"1554version = "0.1.0"
1588source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1555source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1589dependencies = [1556dependencies = [
1590 "cumulus-primitives-core",1557 "cumulus-primitives-core",
1591 "frame-support",1558 "frame-support",
1603[[package]]1570[[package]]
1604name = "cumulus-primitives-core"1571name = "cumulus-primitives-core"
1605version = "0.1.0"1572version = "0.1.0"
1606source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1573source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1607dependencies = [1574dependencies = [
1608 "parity-scale-codec 3.2.1",1575 "parity-scale-codec 3.2.1",
1609 "polkadot-core-primitives",1576 "polkadot-core-primitives",
1618[[package]]1585[[package]]
1619name = "cumulus-primitives-parachain-inherent"1586name = "cumulus-primitives-parachain-inherent"
1620version = "0.1.0"1587version = "0.1.0"
1621source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1588source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1622dependencies = [1589dependencies = [
1623 "async-trait",1590 "async-trait",
1624 "cumulus-primitives-core",1591 "cumulus-primitives-core",
1641[[package]]1608[[package]]
1642name = "cumulus-primitives-timestamp"1609name = "cumulus-primitives-timestamp"
1643version = "0.1.0"1610version = "0.1.0"
1644source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1611source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1645dependencies = [1612dependencies = [
1646 "cumulus-primitives-core",1613 "cumulus-primitives-core",
1647 "futures 0.3.25",1614 "futures 0.3.25",
1654[[package]]1621[[package]]
1655name = "cumulus-primitives-utility"1622name = "cumulus-primitives-utility"
1656version = "0.1.0"1623version = "0.1.0"
1657source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1624source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1658dependencies = [1625dependencies = [
1659 "cumulus-primitives-core",1626 "cumulus-primitives-core",
1660 "frame-support",1627 "frame-support",
1670[[package]]1637[[package]]
1671name = "cumulus-relay-chain-inprocess-interface"1638name = "cumulus-relay-chain-inprocess-interface"
1672version = "0.1.0"1639version = "0.1.0"
1673source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1640source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1674dependencies = [1641dependencies = [
1675 "async-trait",1642 "async-trait",
1676 "cumulus-primitives-core",1643 "cumulus-primitives-core",
1695[[package]]1662[[package]]
1696name = "cumulus-relay-chain-interface"1663name = "cumulus-relay-chain-interface"
1697version = "0.1.0"1664version = "0.1.0"
1698source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1665source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1699dependencies = [1666dependencies = [
1700 "async-trait",1667 "async-trait",
1701 "cumulus-primitives-core",1668 "cumulus-primitives-core",
1709 "sp-blockchain",1676 "sp-blockchain",
1710 "sp-state-machine",1677 "sp-state-machine",
1711 "thiserror",1678 "thiserror",
1679 "tokio",
1712]1680]
17131681
1714[[package]]1682[[package]]
1715name = "cumulus-relay-chain-minimal-node"1683name = "cumulus-relay-chain-minimal-node"
1716version = "0.1.0"1684version = "0.1.0"
1717source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1685source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1718dependencies = [1686dependencies = [
1719 "array-bytes",1687 "array-bytes 6.0.0",
1720 "async-trait",1688 "async-trait",
1721 "cumulus-primitives-core",1689 "cumulus-primitives-core",
1722 "cumulus-relay-chain-interface",1690 "cumulus-relay-chain-interface",
1723 "cumulus-relay-chain-rpc-interface",1691 "cumulus-relay-chain-rpc-interface",
1724 "futures 0.3.25",1692 "futures 0.3.25",
1725 "lru",1693 "lru",
1726 "polkadot-availability-distribution",
1727 "polkadot-core-primitives",1694 "polkadot-core-primitives",
1728 "polkadot-network-bridge",1695 "polkadot-network-bridge",
1729 "polkadot-node-core-av-store",
1730 "polkadot-node-network-protocol",1696 "polkadot-node-network-protocol",
1731 "polkadot-node-subsystem-util",1697 "polkadot-node-subsystem-util",
1732 "polkadot-overseer",1698 "polkadot-overseer",
1738 "sc-keystore",1704 "sc-keystore",
1739 "sc-network",1705 "sc-network",
1740 "sc-network-common",1706 "sc-network-common",
1741 "sc-network-light",
1742 "sc-network-sync",
1743 "sc-service",1707 "sc-service",
1744 "sc-telemetry",1708 "sc-telemetry",
1745 "sc-tracing",1709 "sc-tracing",
1758[[package]]1722[[package]]
1759name = "cumulus-relay-chain-rpc-interface"1723name = "cumulus-relay-chain-rpc-interface"
1760version = "0.1.0"1724version = "0.1.0"
1761source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1725source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1762dependencies = [1726dependencies = [
1763 "async-trait",1727 "async-trait",
1764 "backoff",
1765 "cumulus-primitives-core",1728 "cumulus-primitives-core",
1766 "cumulus-relay-chain-interface",1729 "cumulus-relay-chain-interface",
1767 "futures 0.3.25",1730 "futures 0.3.25",
1768 "futures-timer",1731 "futures-timer",
1769 "jsonrpsee",1732 "jsonrpsee",
1733 "lru",
1770 "parity-scale-codec 3.2.1",1734 "parity-scale-codec 3.2.1",
1771 "polkadot-service",1735 "polkadot-service",
1772 "sc-client-api",1736 "sc-client-api",
1773 "sc-rpc-api",1737 "sc-rpc-api",
1738 "serde",
1739 "serde_json",
1774 "sp-api",1740 "sp-api",
1775 "sp-authority-discovery",1741 "sp-authority-discovery",
1776 "sp-consensus-babe",1742 "sp-consensus-babe",
1777 "sp-core",1743 "sp-core",
1778 "sp-runtime",
1779 "sp-state-machine",1744 "sp-state-machine",
1780 "sp-storage",1745 "sp-storage",
1781 "tokio",1746 "tokio",
1786[[package]]1751[[package]]
1787name = "cumulus-test-relay-sproof-builder"1752name = "cumulus-test-relay-sproof-builder"
1788version = "0.1.0"1753version = "0.1.0"
1789source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"1754source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
1790dependencies = [1755dependencies = [
1791 "cumulus-primitives-core",1756 "cumulus-primitives-core",
1792 "parity-scale-codec 3.2.1",1757 "parity-scale-codec 3.2.1",
18241789
1825[[package]]1790[[package]]
1826name = "curve25519-dalek"1791name = "curve25519-dalek"
1827version = "4.0.0-pre.1"1792version = "4.0.0-pre.5"
1828source = "registry+https://github.com/rust-lang/crates.io-index"1793source = "registry+https://github.com/rust-lang/crates.io-index"
1829checksum = "4033478fbf70d6acf2655ac70da91ee65852d69daf7a67bf7a2f518fb47aafcf"1794checksum = "67bc65846be335cb20f4e52d49a437b773a2c1fdb42b19fc84e79e6f6771536f"
1830dependencies = [1795dependencies = [
1831 "byteorder",1796 "cfg-if",
1832 "digest 0.9.0",1797 "fiat-crypto",
1798 "packed_simd_2",
1833 "rand_core 0.6.4",1799 "platforms 3.0.2",
1834 "subtle",1800 "subtle",
1835 "zeroize",1801 "zeroize",
1836]1802]
18371803
1838[[package]]1804[[package]]
1839name = "cxx"1805name = "cxx"
1840version = "1.0.83"1806version = "1.0.85"
1841source = "registry+https://github.com/rust-lang/crates.io-index"1807source = "registry+https://github.com/rust-lang/crates.io-index"
1842checksum = "bdf07d07d6531bfcdbe9b8b739b104610c6508dcc4d63b410585faf338241daf"1808checksum = "5add3fc1717409d029b20c5b6903fc0c0b02fa6741d820054f4a2efa5e5816fd"
1843dependencies = [1809dependencies = [
1844 "cc",1810 "cc",
1845 "cxxbridge-flags",1811 "cxxbridge-flags",
18491815
1850[[package]]1816[[package]]
1851name = "cxx-build"1817name = "cxx-build"
1852version = "1.0.83"1818version = "1.0.85"
1853source = "registry+https://github.com/rust-lang/crates.io-index"1819source = "registry+https://github.com/rust-lang/crates.io-index"
1854checksum = "d2eb5b96ecdc99f72657332953d4d9c50135af1bac34277801cc3937906ebd39"1820checksum = "b4c87959ba14bc6fbc61df77c3fcfe180fc32b93538c4f1031dd802ccb5f2ff0"
1855dependencies = [1821dependencies = [
1856 "cc",1822 "cc",
1857 "codespan-reporting",1823 "codespan-reporting",
18641830
1865[[package]]1831[[package]]
1866name = "cxxbridge-flags"1832name = "cxxbridge-flags"
1867version = "1.0.83"1833version = "1.0.85"
1868source = "registry+https://github.com/rust-lang/crates.io-index"1834source = "registry+https://github.com/rust-lang/crates.io-index"
1869checksum = "ac040a39517fd1674e0f32177648334b0f4074625b5588a64519804ba0553b12"1835checksum = "69a3e162fde4e594ed2b07d0f83c6c67b745e7f28ce58c6df5e6b6bef99dfb59"
18701836
1871[[package]]1837[[package]]
1872name = "cxxbridge-macro"1838name = "cxxbridge-macro"
1873version = "1.0.83"1839version = "1.0.85"
1874source = "registry+https://github.com/rust-lang/crates.io-index"1840source = "registry+https://github.com/rust-lang/crates.io-index"
1875checksum = "1362b0ddcfc4eb0a1f57b68bd77dd99f0e826958a96abd0ae9bd092e114ffed6"1841checksum = "3e7e2adeb6a0d4a282e581096b06e1791532b7d576dcde5ccd9382acf55db8e6"
1876dependencies = [1842dependencies = [
1877 "proc-macro2",1843 "proc-macro2",
1878 "quote",1844 "quote",
19071873
1908[[package]]1874[[package]]
1909name = "der"1875name = "der"
1910version = "0.6.0"1876version = "0.6.1"
1911source = "registry+https://github.com/rust-lang/crates.io-index"1877source = "registry+https://github.com/rust-lang/crates.io-index"
1912checksum = "13dd2ae565c0a381dde7fade45fce95984c568bdcb4700a4fdbe3175e0380b2f"1878checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
1913dependencies = [1879dependencies = [
1914 "const-oid",1880 "const-oid",
1915 "zeroize",1881 "zeroize",
20392005
2040[[package]]2006[[package]]
2041name = "dtoa"2007name = "dtoa"
2042version = "1.0.4"2008version = "1.0.5"
2043source = "registry+https://github.com/rust-lang/crates.io-index"2009source = "registry+https://github.com/rust-lang/crates.io-index"
2044checksum = "f8a6eee2d5d0d113f015688310da018bd1d864d86bd567c8fca9c266889e1bfa"2010checksum = "c00704156a7de8df8da0911424e30c2049957b0a714542a44e05fe693dd85313"
20452011
2046[[package]]2012[[package]]
2047name = "dyn-clonable"2013name = "dyn-clonable"
20662032
2067[[package]]2033[[package]]
2068name = "dyn-clone"2034name = "dyn-clone"
2069version = "1.0.9"2035version = "1.0.10"
2070source = "registry+https://github.com/rust-lang/crates.io-index"2036source = "registry+https://github.com/rust-lang/crates.io-index"
2071checksum = "4f94fa09c2aeea5b8839e414b7b841bf429fd25b9c522116ac97ee87856d88b2"2037checksum = "c9b0705efd4599c15a38151f4721f7bc388306f61084d3bfd50bd07fbca5cb60"
20722038
2073[[package]]2039[[package]]
2074name = "ecdsa"2040name = "ecdsa"
21842150
2185[[package]]2151[[package]]
2186name = "enumn"2152name = "enumn"
2187version = "0.1.5"2153version = "0.1.6"
2188source = "registry+https://github.com/rust-lang/crates.io-index"2154source = "registry+https://github.com/rust-lang/crates.io-index"
2189checksum = "038b1afa59052df211f9efd58f8b1d84c242935ede1c3dbaed26b018a9e06ae2"2155checksum = "e88bcb3a067a6555d577aba299e75eff9942da276e6506fc6274327daa026132"
2190dependencies = [2156dependencies = [
2191 "proc-macro2",2157 "proc-macro2",
2192 "quote",2158 "quote",
2336[[package]]2302[[package]]
2337name = "evm"2303name = "evm"
2338version = "0.35.0"2304version = "0.35.0"
2339source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.33#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"2305source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.36#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"
2340dependencies = [2306dependencies = [
2341 "auto_impl",2307 "auto_impl",
2342 "environmental",2308 "environmental",
2387[[package]]2353[[package]]
2388name = "evm-core"2354name = "evm-core"
2389version = "0.35.0"2355version = "0.35.0"
2390source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.33#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"2356source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.36#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"
2391dependencies = [2357dependencies = [
2392 "parity-scale-codec 3.2.1",2358 "parity-scale-codec 3.2.1",
2393 "primitive-types 0.12.1",2359 "primitive-types 0.12.1",
2398[[package]]2364[[package]]
2399name = "evm-gasometer"2365name = "evm-gasometer"
2400version = "0.35.0"2366version = "0.35.0"
2401source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.33#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"2367source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.36#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"
2402dependencies = [2368dependencies = [
2403 "environmental",2369 "environmental",
2404 "evm-core",2370 "evm-core",
2409[[package]]2375[[package]]
2410name = "evm-runtime"2376name = "evm-runtime"
2411version = "0.35.0"2377version = "0.35.0"
2412source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.33#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"2378source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.36#a68cd3ea5ee2eb310e3452e660a8e9e56a474d2a"
2413dependencies = [2379dependencies = [
2414 "auto_impl",2380 "auto_impl",
2415 "environmental",2381 "environmental",
2501[[package]]2467[[package]]
2502name = "fc-consensus"2468name = "fc-consensus"
2503version = "2.0.0-dev"2469version = "2.0.0-dev"
2504source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2470source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2505dependencies = [2471dependencies = [
2506 "async-trait",2472 "async-trait",
2507 "fc-db",2473 "fc-db",
2520[[package]]2486[[package]]
2521name = "fc-db"2487name = "fc-db"
2522version = "2.0.0-dev"2488version = "2.0.0-dev"
2523source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2489source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2524dependencies = [2490dependencies = [
2525 "fp-storage",2491 "fp-storage",
2526 "kvdb-rocksdb",2492 "kvdb-rocksdb",
2527 "log",2493 "log",
2528 "parity-db 0.3.17",2494 "parity-db",
2529 "parity-scale-codec 3.2.1",2495 "parity-scale-codec 3.2.1",
2530 "parking_lot 0.12.1",2496 "parking_lot 0.12.1",
2531 "sc-client-db",2497 "sc-client-db",
2498 "smallvec",
2532 "sp-blockchain",2499 "sp-blockchain",
2533 "sp-core",2500 "sp-core",
2534 "sp-database",2501 "sp-database",
2538[[package]]2505[[package]]
2539name = "fc-mapping-sync"2506name = "fc-mapping-sync"
2540version = "2.0.0-dev"2507version = "2.0.0-dev"
2541source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2508source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2542dependencies = [2509dependencies = [
2543 "fc-db",2510 "fc-db",
2544 "fp-consensus",2511 "fp-consensus",
2555[[package]]2522[[package]]
2556name = "fc-rpc"2523name = "fc-rpc"
2557version = "2.0.0-dev"2524version = "2.0.0-dev"
2558source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2525source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2559dependencies = [2526dependencies = [
2560 "ethereum 0.14.0",2527 "ethereum 0.14.0",
2561 "ethereum-types 0.14.1",2528 "ethereum-types 0.14.1",
2598[[package]]2565[[package]]
2599name = "fc-rpc-core"2566name = "fc-rpc-core"
2600version = "1.1.0-dev"2567version = "1.1.0-dev"
2601source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2568source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2602dependencies = [2569dependencies = [
2603 "ethereum 0.14.0",2570 "ethereum 0.14.0",
2604 "ethereum-types 0.14.1",2571 "ethereum-types 0.14.1",
2629]2596]
26302597
2631[[package]]2598[[package]]
2599name = "fiat-crypto"
2600version = "0.1.17"
2601source = "registry+https://github.com/rust-lang/crates.io-index"
2602checksum = "a214f5bb88731d436478f3ae1f8a277b62124089ba9fb67f4f93fb100ef73c90"
2603
2604[[package]]
2632name = "file-per-thread-logger"2605name = "file-per-thread-logger"
2633version = "0.1.5"2606version = "0.1.5"
2634source = "registry+https://github.com/rust-lang/crates.io-index"2607source = "registry+https://github.com/rust-lang/crates.io-index"
26402613
2641[[package]]2614[[package]]
2642name = "filetime"2615name = "filetime"
2643version = "0.2.18"2616version = "0.2.19"
2644source = "registry+https://github.com/rust-lang/crates.io-index"2617source = "registry+https://github.com/rust-lang/crates.io-index"
2645checksum = "4b9663d381d07ae25dc88dbdf27df458faa83a9b25336bcac83d5e452b5fc9d3"2618checksum = "4e884668cd0c7480504233e951174ddc3b382f7c2666e3b7310b5c4e7b0c37f9"
2646dependencies = [2619dependencies = [
2647 "cfg-if",2620 "cfg-if",
2648 "libc",2621 "libc",
2703dependencies = [2676dependencies = [
2704 "crc32fast",2677 "crc32fast",
2705 "libz-sys",2678 "libz-sys",
2706 "miniz_oxide 0.6.2",2679 "miniz_oxide",
2707]2680]
27082681
2709[[package]]2682[[package]]
2710name = "flexi_logger"2683name = "flexi_logger"
2711version = "0.22.6"2684version = "0.24.2"
2712source = "registry+https://github.com/rust-lang/crates.io-index"2685source = "registry+https://github.com/rust-lang/crates.io-index"
2713checksum = "0c76a80dd14a27fc3d8bc696502132cb52b3f227256fd8601166c3a35e45f409"2686checksum = "ade8e86c48285f138a4d6ca15a2912e39bd6c74d62db42da4f1985f651a0b057"
2714dependencies = [2687dependencies = [
2715 "ansi_term",
2716 "atty",2688 "atty",
2689 "chrono",
2717 "glob",2690 "glob",
2718 "lazy_static",2691 "lazy_static",
2719 "log",2692 "log",
2693 "nu-ansi-term",
2720 "regex",2694 "regex",
2721 "rustversion",
2722 "thiserror",2695 "thiserror",
2723 "time 0.3.9",
2724]2696]
27252697
2726[[package]]2698[[package]]
2741[[package]]2713[[package]]
2742name = "fork-tree"2714name = "fork-tree"
2743version = "3.0.0"2715version = "3.0.0"
2744source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2716source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2745dependencies = [2717dependencies = [
2746 "parity-scale-codec 3.2.1",2718 "parity-scale-codec 3.2.1",
2747]2719]
2758[[package]]2730[[package]]
2759name = "fp-consensus"2731name = "fp-consensus"
2760version = "2.0.0-dev"2732version = "2.0.0-dev"
2761source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2733source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2762dependencies = [2734dependencies = [
2763 "ethereum 0.14.0",2735 "ethereum 0.14.0",
2764 "parity-scale-codec 3.2.1",2736 "parity-scale-codec 3.2.1",
2770[[package]]2742[[package]]
2771name = "fp-ethereum"2743name = "fp-ethereum"
2772version = "1.0.0-dev"2744version = "1.0.0-dev"
2773source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2745source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2774dependencies = [2746dependencies = [
2775 "ethereum 0.14.0",2747 "ethereum 0.14.0",
2776 "ethereum-types 0.14.1",2748 "ethereum-types 0.14.1",
2785[[package]]2757[[package]]
2786name = "fp-evm"2758name = "fp-evm"
2787version = "3.0.0-dev"2759version = "3.0.0-dev"
2788source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2760source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2789dependencies = [2761dependencies = [
2790 "evm",2762 "evm",
2791 "frame-support",2763 "frame-support",
2799[[package]]2771[[package]]
2800name = "fp-evm-mapping"2772name = "fp-evm-mapping"
2801version = "0.1.0"2773version = "0.1.0"
2802source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2774source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2803dependencies = [2775dependencies = [
2804 "frame-support",2776 "frame-support",
2805 "sp-core",2777 "sp-core",
2808[[package]]2780[[package]]
2809name = "fp-rpc"2781name = "fp-rpc"
2810version = "3.0.0-dev"2782version = "3.0.0-dev"
2811source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2783source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2812dependencies = [2784dependencies = [
2813 "ethereum 0.14.0",2785 "ethereum 0.14.0",
2814 "ethereum-types 0.14.1",2786 "ethereum-types 0.14.1",
2825[[package]]2797[[package]]
2826name = "fp-self-contained"2798name = "fp-self-contained"
2827version = "1.0.0-dev"2799version = "1.0.0-dev"
2828source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2800source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2829dependencies = [2801dependencies = [
2830 "ethereum 0.14.0",2802 "ethereum 0.14.0",
2831 "frame-support",2803 "frame-support",
2832 "parity-scale-codec 3.2.1",2804 "parity-scale-codec 3.2.1",
2833 "parity-util-mem",
2834 "scale-info",2805 "scale-info",
2835 "serde",2806 "serde",
2836 "sp-runtime",2807 "sp-runtime",
2839[[package]]2810[[package]]
2840name = "fp-storage"2811name = "fp-storage"
2841version = "2.0.0"2812version = "2.0.0"
2842source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"2813source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
2843dependencies = [2814dependencies = [
2844 "parity-scale-codec 3.2.1",2815 "parity-scale-codec 3.2.1",
2845 "serde",2816 "serde",
2854[[package]]2825[[package]]
2855name = "frame-benchmarking"2826name = "frame-benchmarking"
2856version = "4.0.0-dev"2827version = "4.0.0-dev"
2857source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2828source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2858dependencies = [2829dependencies = [
2859 "frame-support",2830 "frame-support",
2860 "frame-system",2831 "frame-system",
2877[[package]]2848[[package]]
2878name = "frame-benchmarking-cli"2849name = "frame-benchmarking-cli"
2879version = "4.0.0-dev"2850version = "4.0.0-dev"
2880source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2851source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2881dependencies = [2852dependencies = [
2882 "Inflector",2853 "Inflector",
2883 "array-bytes",2854 "array-bytes 4.2.0",
2884 "chrono",2855 "chrono",
2885 "clap",2856 "clap",
2886 "comfy-table",2857 "comfy-table",
2929[[package]]2900[[package]]
2930name = "frame-election-provider-solution-type"2901name = "frame-election-provider-solution-type"
2931version = "4.0.0-dev"2902version = "4.0.0-dev"
2932source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2903source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2933dependencies = [2904dependencies = [
2934 "proc-macro-crate",2905 "proc-macro-crate",
2935 "proc-macro2",2906 "proc-macro2",
2940[[package]]2911[[package]]
2941name = "frame-election-provider-support"2912name = "frame-election-provider-support"
2942version = "4.0.0-dev"2913version = "4.0.0-dev"
2943source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2914source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2944dependencies = [2915dependencies = [
2945 "frame-election-provider-solution-type",2916 "frame-election-provider-solution-type",
2946 "frame-support",2917 "frame-support",
2947 "frame-system",2918 "frame-system",
2948 "parity-scale-codec 3.2.1",2919 "parity-scale-codec 3.2.1",
2949 "scale-info",2920 "scale-info",
2950 "sp-arithmetic",2921 "sp-arithmetic",
2922 "sp-core",
2951 "sp-npos-elections",2923 "sp-npos-elections",
2952 "sp-runtime",2924 "sp-runtime",
2953 "sp-std",2925 "sp-std",
2956[[package]]2928[[package]]
2957name = "frame-executive"2929name = "frame-executive"
2958version = "4.0.0-dev"2930version = "4.0.0-dev"
2959source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2931source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2960dependencies = [2932dependencies = [
2961 "frame-support",2933 "frame-support",
2962 "frame-system",2934 "frame-system",
2983]2955]
29842956
2985[[package]]2957[[package]]
2958name = "frame-remote-externalities"
2959version = "0.10.0-dev"
2960source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2961dependencies = [
2962 "env_logger",
2963 "futures 0.3.25",
2964 "log",
2965 "parity-scale-codec 3.2.1",
2966 "serde",
2967 "serde_json",
2968 "sp-core",
2969 "sp-io",
2970 "sp-runtime",
2971 "sp-version",
2972 "substrate-rpc-client",
2973 "tokio",
2974]
2975
2976[[package]]
2986name = "frame-support"2977name = "frame-support"
2987version = "4.0.0-dev"2978version = "4.0.0-dev"
2988source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"2979source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
2989dependencies = [2980dependencies = [
2990 "bitflags",2981 "bitflags",
2991 "frame-metadata",2982 "frame-metadata",
3017[[package]]3008[[package]]
3018name = "frame-support-procedural"3009name = "frame-support-procedural"
3019version = "4.0.0-dev"3010version = "4.0.0-dev"
3020source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3011source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3021dependencies = [3012dependencies = [
3022 "Inflector",3013 "Inflector",
3023 "cfg-expr",3014 "cfg-expr",
3031[[package]]3022[[package]]
3032name = "frame-support-procedural-tools"3023name = "frame-support-procedural-tools"
3033version = "4.0.0-dev"3024version = "4.0.0-dev"
3034source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3025source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3035dependencies = [3026dependencies = [
3036 "frame-support-procedural-tools-derive",3027 "frame-support-procedural-tools-derive",
3037 "proc-macro-crate",3028 "proc-macro-crate",
3043[[package]]3034[[package]]
3044name = "frame-support-procedural-tools-derive"3035name = "frame-support-procedural-tools-derive"
3045version = "3.0.0"3036version = "3.0.0"
3046source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3037source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3047dependencies = [3038dependencies = [
3048 "proc-macro2",3039 "proc-macro2",
3049 "quote",3040 "quote",
3053[[package]]3044[[package]]
3054name = "frame-system"3045name = "frame-system"
3055version = "4.0.0-dev"3046version = "4.0.0-dev"
3056source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3047source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3057dependencies = [3048dependencies = [
3058 "frame-support",3049 "frame-support",
3059 "log",3050 "log",
3071[[package]]3062[[package]]
3072name = "frame-system-benchmarking"3063name = "frame-system-benchmarking"
3073version = "4.0.0-dev"3064version = "4.0.0-dev"
3074source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3065source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3075dependencies = [3066dependencies = [
3076 "frame-benchmarking",3067 "frame-benchmarking",
3077 "frame-support",3068 "frame-support",
3086[[package]]3077[[package]]
3087name = "frame-system-rpc-runtime-api"3078name = "frame-system-rpc-runtime-api"
3088version = "4.0.0-dev"3079version = "4.0.0-dev"
3089source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3080source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3090dependencies = [3081dependencies = [
3091 "parity-scale-codec 3.2.1",3082 "parity-scale-codec 3.2.1",
3092 "sp-api",3083 "sp-api",
3095[[package]]3086[[package]]
3096name = "frame-try-runtime"3087name = "frame-try-runtime"
3097version = "0.10.0-dev"3088version = "0.10.0-dev"
3098source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"3089source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
3099dependencies = [3090dependencies = [
3100 "frame-support",3091 "frame-support",
3101 "parity-scale-codec 3.2.1",3092 "parity-scale-codec 3.2.1",
3351]3342]
33523343
3353[[package]]3344[[package]]
3345name = "gimli"
3346version = "0.27.0"
3347source = "registry+https://github.com/rust-lang/crates.io-index"
3348checksum = "dec7af912d60cdbd3677c1af9352ebae6fb8394d165568a2234df0fa00f87793"
3349
3350[[package]]
3354name = "glob"3351name = "glob"
3355version = "0.3.0"3352version = "0.3.0"
3356source = "registry+https://github.com/rust-lang/crates.io-index"3353source = "registry+https://github.com/rust-lang/crates.io-index"
34133410
3414[[package]]3411[[package]]
3415name = "handlebars"3412name = "handlebars"
3416version = "4.3.5"3413version = "4.3.6"
3417source = "registry+https://github.com/rust-lang/crates.io-index"3414source = "registry+https://github.com/rust-lang/crates.io-index"
3418checksum = "433e4ab33f1213cdc25b5fa45c76881240cfe79284cf2b395e8b9e312a30a2fd"3415checksum = "035ef95d03713f2c347a72547b7cd38cbc9af7cd51e6099fb62d586d4a6dee3a"
3419dependencies = [3416dependencies = [
3420 "log",3417 "log",
3421 "pest",3418 "pest",
3559]3556]
35603557
3561[[package]]3558[[package]]
3559name = "http-range-header"
3560version = "0.3.0"
3561source = "registry+https://github.com/rust-lang/crates.io-index"
3562checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29"
3563
3564[[package]]
3562name = "httparse"3565name = "httparse"
3563version = "1.8.0"3566version = "1.8.0"
3564source = "registry+https://github.com/rust-lang/crates.io-index"3567source = "registry+https://github.com/rust-lang/crates.io-index"
36023605
3603[[package]]3606[[package]]
3604name = "hyper-rustls"3607name = "hyper-rustls"
3605version = "0.23.1"3608version = "0.23.2"
3606source = "registry+https://github.com/rust-lang/crates.io-index"3609source = "registry+https://github.com/rust-lang/crates.io-index"
3607checksum = "59df7c4e19c950e6e0e868dcc0a300b09a9b88e9ec55bd879ca819087a77355d"3610checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c"
3608dependencies = [3611dependencies = [
3609 "http",3612 "http",
3610 "hyper",3613 "hyper",
37973800
3798[[package]]3801[[package]]
3799name = "ipnet"3802name = "ipnet"
3800version = "2.5.1"3803version = "2.7.0"
3801source = "registry+https://github.com/rust-lang/crates.io-index"3804source = "registry+https://github.com/rust-lang/crates.io-index"
3802checksum = "f88c5561171189e69df9d98bcf18fd5f9558300f7ea7b801eb8a0fd748bd8745"3805checksum = "11b0d96e660696543b251e58030cf9787df56da39dab19ad60eae7353040917e"
38033806
3804[[package]]3807[[package]]
3805name = "is-terminal"3808name = "is-terminal"
3806version = "0.4.1"3809version = "0.4.2"
3807source = "registry+https://github.com/rust-lang/crates.io-index"3810source = "registry+https://github.com/rust-lang/crates.io-index"
3808checksum = "927609f78c2913a6f6ac3c27a4fe87f43e2a35367c0c4b0f8265e8f49a104330"3811checksum = "28dfb6c8100ccc63462345b67d1bbc3679177c75ee4bf59bf29c8b1d110b8189"
3809dependencies = [3812dependencies = [
3810 "hermit-abi 0.2.6",3813 "hermit-abi 0.2.6",
3811 "io-lifetimes 1.0.3",3814 "io-lifetimes 1.0.3",
38243827
3825[[package]]3828[[package]]
3826name = "itoa"3829name = "itoa"
3827version = "1.0.4"3830version = "1.0.5"
3828source = "registry+https://github.com/rust-lang/crates.io-index"3831source = "registry+https://github.com/rust-lang/crates.io-index"
3829checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc"3832checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
38303833
3831[[package]]3834[[package]]
3832name = "jobserver"3835name = "jobserver"
38483851
3849[[package]]3852[[package]]
3850name = "jsonrpsee"3853name = "jsonrpsee"
3851version = "0.15.1"3854version = "0.16.2"
3852source = "registry+https://github.com/rust-lang/crates.io-index"3855source = "registry+https://github.com/rust-lang/crates.io-index"
3853checksum = "8bd0d559d5e679b1ab2f869b486a11182923863b1b3ee8b421763cdd707b783a"3856checksum = "7d291e3a5818a2384645fd9756362e6d89cf0541b0b916fa7702ea4a9833608e"
3854dependencies = [3857dependencies = [
3855 "jsonrpsee-core",3858 "jsonrpsee-core",
3856 "jsonrpsee-http-server",
3857 "jsonrpsee-proc-macros",3859 "jsonrpsee-proc-macros",
3860 "jsonrpsee-server",
3858 "jsonrpsee-types",3861 "jsonrpsee-types",
3859 "jsonrpsee-ws-client",3862 "jsonrpsee-ws-client",
3860 "jsonrpsee-ws-server",
3861 "tracing",3863 "tracing",
3862]3864]
38633865
3864[[package]]3866[[package]]
3865name = "jsonrpsee-client-transport"3867name = "jsonrpsee-client-transport"
3866version = "0.15.1"3868version = "0.16.2"
3867source = "registry+https://github.com/rust-lang/crates.io-index"3869source = "registry+https://github.com/rust-lang/crates.io-index"
3868checksum = "8752740ecd374bcbf8b69f3e80b0327942df76f793f8d4e60d3355650c31fb74"3870checksum = "965de52763f2004bc91ac5bcec504192440f0b568a5d621c59d9dbd6f886c3fb"
3869dependencies = [3871dependencies = [
3870 "futures-util",3872 "futures-util",
3871 "http",3873 "http",
38843886
3885[[package]]3887[[package]]
3886name = "jsonrpsee-core"3888name = "jsonrpsee-core"
3887version = "0.15.1"3889version = "0.16.2"
3888source = "registry+https://github.com/rust-lang/crates.io-index"3890source = "registry+https://github.com/rust-lang/crates.io-index"
3889checksum = "f3dc3e9cf2ba50b7b1d7d76a667619f82846caa39e8e8daa8a4962d74acaddca"3891checksum = "a4e70b4439a751a5de7dd5ed55eacff78ebf4ffe0fc009cb1ebb11417f5b536b"
3890dependencies = [3892dependencies = [
3891 "anyhow",3893 "anyhow",
3892 "arrayvec 0.7.2",3894 "arrayvec 0.7.2",
3897 "futures-timer",3899 "futures-timer",
3898 "futures-util",3900 "futures-util",
3899 "globset",3901 "globset",
3900 "http",
3901 "hyper",3902 "hyper",
3902 "jsonrpsee-types",3903 "jsonrpsee-types",
3903 "lazy_static",
3904 "parking_lot 0.12.1",3904 "parking_lot 0.12.1",
3905 "rand 0.8.5",3905 "rand 0.8.5",
3906 "rustc-hash",3906 "rustc-hash",
3910 "thiserror",3910 "thiserror",
3911 "tokio",3911 "tokio",
3912 "tracing",3912 "tracing",
3913 "tracing-futures",
3914 "unicase",
3915]3913]
39163914
3917[[package]]3915[[package]]
3918name = "jsonrpsee-http-server"3916name = "jsonrpsee-proc-macros"
3919version = "0.15.1"3917version = "0.16.2"
3920source = "registry+https://github.com/rust-lang/crates.io-index"3918source = "registry+https://github.com/rust-lang/crates.io-index"
3921checksum = "03802f0373a38c2420c70b5144742d800b509e2937edc4afb116434f07120117"3919checksum = "baa6da1e4199c10d7b1d0a6e5e8bd8e55f351163b6f4b3cbb044672a69bd4c1c"
3922dependencies = [3920dependencies = [
3921 "heck",
3922 "proc-macro-crate",
3923 "proc-macro2",
3924 "quote",
3925 "syn",
3926]
3927
3928[[package]]
3929name = "jsonrpsee-server"
3930version = "0.16.2"
3931source = "registry+https://github.com/rust-lang/crates.io-index"
3932checksum = "1fb69dad85df79527c019659a992498d03f8495390496da2f07e6c24c2b356fc"
3933dependencies = [
3923 "futures-channel",3934 "futures-channel",
3924 "futures-util",3935 "futures-util",
3936 "http",
3925 "hyper",3937 "hyper",
3926 "jsonrpsee-core",3938 "jsonrpsee-core",
3927 "jsonrpsee-types",3939 "jsonrpsee-types",
3928 "serde",3940 "serde",
3929 "serde_json",3941 "serde_json",
3942 "soketto",
3930 "tokio",3943 "tokio",
3944 "tokio-stream",
3945 "tokio-util",
3946 "tower",
3931 "tracing",3947 "tracing",
3932 "tracing-futures",
3933]3948]
39343949
3935[[package]]3950[[package]]
3936name = "jsonrpsee-proc-macros"
3937version = "0.15.1"
3938source = "registry+https://github.com/rust-lang/crates.io-index"
3939checksum = "bd67957d4280217247588ac86614ead007b301ca2fa9f19c19f880a536f029e3"
3940dependencies = [
3941 "proc-macro-crate",
3942 "proc-macro2",
3943 "quote",
3944 "syn",
3945]
3946
3947[[package]]
3948name = "jsonrpsee-types"3951name = "jsonrpsee-types"
3949version = "0.15.1"3952version = "0.16.2"
3950source = "registry+https://github.com/rust-lang/crates.io-index"3953source = "registry+https://github.com/rust-lang/crates.io-index"
3951checksum = "e290bba767401b646812f608c099b922d8142603c9e73a50fb192d3ac86f4a0d"3954checksum = "5bd522fe1ce3702fd94812965d7bb7a3364b1c9aba743944c5a00529aae80f8c"
3952dependencies = [3955dependencies = [
3953 "anyhow",3956 "anyhow",
3954 "beef",3957 "beef",
39603963
3961[[package]]3964[[package]]
3962name = "jsonrpsee-ws-client"3965name = "jsonrpsee-ws-client"
3963version = "0.15.1"3966version = "0.16.2"
3964source = "registry+https://github.com/rust-lang/crates.io-index"3967source = "registry+https://github.com/rust-lang/crates.io-index"
3965checksum = "6ee5feddd5188e62ac08fcf0e56478138e581509d4730f3f7be9b57dd402a4ff"3968checksum = "0b83daeecfc6517cfe210df24e570fb06213533dfb990318fae781f4c7119dd9"
3966dependencies = [3969dependencies = [
3967 "http",3970 "http",
3968 "jsonrpsee-client-transport",3971 "jsonrpsee-client-transport",
3971]3974]
39723975
3973[[package]]3976[[package]]
3974name = "jsonrpsee-ws-server"
3975version = "0.15.1"
3976source = "registry+https://github.com/rust-lang/crates.io-index"
3977checksum = "d488ba74fb369e5ab68926feb75a483458b88e768d44319f37e4ecad283c7325"
3978dependencies = [
3979 "futures-channel",
3980 "futures-util",
3981 "http",
3982 "jsonrpsee-core",
3983 "jsonrpsee-types",
3984 "serde_json",
3985 "soketto",
3986 "tokio",
3987 "tokio-stream",
3988 "tokio-util",
3989 "tracing",
3990 "tracing-futures",
3991]
3992
3993[[package]]
3994name = "k256"3977name = "k256"
3995version = "0.11.6"3978version = "0.11.6"
3996source = "registry+https://github.com/rust-lang/crates.io-index"3979source = "registry+https://github.com/rust-lang/crates.io-index"
40133996
4014[[package]]3997[[package]]
4015name = "kusama-runtime"3998name = "kusama-runtime"
4016version = "0.9.33"3999version = "0.9.36"
4017source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"4000source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
4018dependencies = [4001dependencies = [
4019 "beefy-primitives",
4020 "bitvec 1.0.1",4002 "bitvec 1.0.1",
4021 "frame-benchmarking",4003 "frame-benchmarking",
4022 "frame-election-provider-support",4004 "frame-election-provider-support",
4043 "pallet-election-provider-support-benchmarking",4025 "pallet-election-provider-support-benchmarking",
4044 "pallet-elections-phragmen",4026 "pallet-elections-phragmen",
4045 "pallet-fast-unstake",4027 "pallet-fast-unstake",
4046 "pallet-gilt",
4047 "pallet-grandpa",4028 "pallet-grandpa",
4048 "pallet-identity",4029 "pallet-identity",
4049 "pallet-im-online",4030 "pallet-im-online",
4050 "pallet-indices",4031 "pallet-indices",
4051 "pallet-membership",4032 "pallet-membership",
4052 "pallet-multisig",4033 "pallet-multisig",
4034 "pallet-nis",
4053 "pallet-nomination-pools",4035 "pallet-nomination-pools",
4054 "pallet-nomination-pools-benchmarking",4036 "pallet-nomination-pools-benchmarking",
4055 "pallet-nomination-pools-runtime-api",4037 "pallet-nomination-pools-runtime-api",
4087 "sp-api",4069 "sp-api",
4088 "sp-arithmetic",4070 "sp-arithmetic",
4089 "sp-authority-discovery",4071 "sp-authority-discovery",
4072 "sp-beefy",
4090 "sp-block-builder",4073 "sp-block-builder",
4091 "sp-consensus-babe",4074 "sp-consensus-babe",
4092 "sp-core",4075 "sp-core",
41104093
4111[[package]]4094[[package]]
4112name = "kusama-runtime-constants"4095name = "kusama-runtime-constants"
4113version = "0.9.33"4096version = "0.9.36"
4114source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"4097source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
4115dependencies = [4098dependencies = [
4116 "frame-support",4099 "frame-support",
4117 "polkadot-primitives",4100 "polkadot-primitives",
41334116
4134[[package]]4117[[package]]
4135name = "kvdb"4118name = "kvdb"
4136version = "0.12.0"4119version = "0.13.0"
4137source = "registry+https://github.com/rust-lang/crates.io-index"4120source = "registry+https://github.com/rust-lang/crates.io-index"
4138checksum = "585089ceadba0197ffe9af6740ab350b325e3c1f5fccfbc3522e0250c750409b"4121checksum = "e7d770dcb02bf6835887c3a979b5107a04ff4bbde97a5f0928d27404a155add9"
4139dependencies = [4122dependencies = [
4140 "parity-util-mem",
4141 "smallvec",4123 "smallvec",
4142]4124]
41434125
4144[[package]]4126[[package]]
4145name = "kvdb-memorydb"4127name = "kvdb-memorydb"
4146version = "0.12.0"4128version = "0.13.0"
4147source = "registry+https://github.com/rust-lang/crates.io-index"4129source = "registry+https://github.com/rust-lang/crates.io-index"
4148checksum = "40d109c87bfb7759edd2a49b2649c1afe25af785d930ad6a38479b4dc70dd873"4130checksum = "bf7a85fe66f9ff9cd74e169fdd2c94c6e1e74c412c99a73b4df3200b5d3760b2"
4149dependencies = [4131dependencies = [
4150 "kvdb",4132 "kvdb",
4151 "parity-util-mem",
4152 "parking_lot 0.12.1",4133 "parking_lot 0.12.1",
4153]4134]
41544135
4155[[package]]4136[[package]]
4156name = "kvdb-rocksdb"4137name = "kvdb-rocksdb"
4157version = "0.16.0"4138version = "0.17.0"
4158source = "registry+https://github.com/rust-lang/crates.io-index"4139source = "registry+https://github.com/rust-lang/crates.io-index"
4159checksum = "c076cc2cdbac89b9910c853a36c957d3862a779f31c2661174222cefb49ee597"4140checksum = "2182b8219fee6bd83aacaab7344e840179ae079d5216aa4e249b4d704646a844"
4160dependencies = [4141dependencies = [
4161 "kvdb",4142 "kvdb",
4162 "log",
4163 "num_cpus",4143 "num_cpus",
4164 "parity-util-mem",
4165 "parking_lot 0.12.1",4144 "parking_lot 0.12.1",
4166 "regex",4145 "regex",
4167 "rocksdb",4146 "rocksdb",
41824161
4183[[package]]4162[[package]]
4184name = "libc"4163name = "libc"
4185version = "0.2.138"4164version = "0.2.139"
4186source = "registry+https://github.com/rust-lang/crates.io-index"4165source = "registry+https://github.com/rust-lang/crates.io-index"
4187checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8"4166checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
41884167
4189[[package]]4168[[package]]
4190name = "libloading"4169name = "libloading"
41984177
4199[[package]]4178[[package]]
4200name = "libm"4179name = "libm"
4180version = "0.1.4"
4181source = "registry+https://github.com/rust-lang/crates.io-index"
4182checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
4183
4184[[package]]
4185name = "libm"
4201version = "0.2.6"4186version = "0.2.6"
4202source = "registry+https://github.com/rust-lang/crates.io-index"4187source = "registry+https://github.com/rust-lang/crates.io-index"
4203checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb"4188checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb"
4275source = "registry+https://github.com/rust-lang/crates.io-index"4260source = "registry+https://github.com/rust-lang/crates.io-index"
4276checksum = "2322c9fb40d99101def6a01612ee30500c89abbbecb6297b3cd252903a4c1720"4261checksum = "2322c9fb40d99101def6a01612ee30500c89abbbecb6297b3cd252903a4c1720"
4277dependencies = [4262dependencies = [
4278 "async-std-resolver",
4279 "futures 0.3.25",4263 "futures 0.3.25",
4280 "libp2p-core",4264 "libp2p-core",
4281 "log",4265 "log",
4339source = "registry+https://github.com/rust-lang/crates.io-index"4323source = "registry+https://github.com/rust-lang/crates.io-index"
4340checksum = "761704e727f7d68d58d7bc2231eafae5fc1b9814de24290f126df09d4bd37a15"4324checksum = "761704e727f7d68d58d7bc2231eafae5fc1b9814de24290f126df09d4bd37a15"
4341dependencies = [4325dependencies = [
4342 "async-io",
4343 "data-encoding",4326 "data-encoding",
4344 "dns-parser",4327 "dns-parser",
4345 "futures 0.3.25",4328 "futures 0.3.25",
4350 "rand 0.8.5",4333 "rand 0.8.5",
4351 "smallvec",4334 "smallvec",
4352 "socket2",4335 "socket2",
4336 "tokio",
4353 "void",4337 "void",
4354]4338]
43554339
4478source = "registry+https://github.com/rust-lang/crates.io-index"4462source = "registry+https://github.com/rust-lang/crates.io-index"
4479checksum = "9839d96761491c6d3e238e70554b856956fca0ab60feb9de2cd08eed4473fa92"4463checksum = "9839d96761491c6d3e238e70554b856956fca0ab60feb9de2cd08eed4473fa92"
4480dependencies = [4464dependencies = [
4481 "async-io",
4482 "futures 0.3.25",4465 "futures 0.3.25",
4483 "futures-timer",4466 "futures-timer",
4484 "if-watch",4467 "if-watch",
4485 "libc",4468 "libc",
4486 "libp2p-core",4469 "libp2p-core",
4487 "log",4470 "log",
4488 "socket2",4471 "socket2",
4472 "tokio",
4489]4473]
44904474
4491[[package]]4475[[package]]
46114595
4612[[package]]4596[[package]]
4613name = "link-cplusplus"4597name = "link-cplusplus"
4614version = "1.0.7"4598version = "1.0.8"
4615source = "registry+https://github.com/rust-lang/crates.io-index"4599source = "registry+https://github.com/rust-lang/crates.io-index"
4616checksum = "9272ab7b96c9046fbc5bc56c06c117cb639fe2d509df0c421cad82d2915cf369"4600checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
4617dependencies = [4601dependencies = [
4618 "cc",4602 "cc",
4619]4603]
46514635
4652[[package]]4636[[package]]
4653name = "linux-raw-sys"4637name = "linux-raw-sys"
4654version = "0.1.3"4638version = "0.1.4"
4655source = "registry+https://github.com/rust-lang/crates.io-index"4639source = "registry+https://github.com/rust-lang/crates.io-index"
4656checksum = "8f9f08d8963a6c613f4b1a78f4f4a4dbfadf8e6545b2d72861731e4858b8b47f"4640checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
46574641
4658[[package]]4642[[package]]
4659name = "lock_api"4643name = "lock_api"
48064790
4807[[package]]4791[[package]]
4808name = "memory-db"4792name = "memory-db"
4809version = "0.30.0"4793version = "0.31.0"
4810source = "registry+https://github.com/rust-lang/crates.io-index"4794source = "registry+https://github.com/rust-lang/crates.io-index"
4811checksum = "34ac11bb793c28fa095b7554466f53b3a60a2cd002afdac01bcf135cbd73a269"4795checksum = "5e0c7cba9ce19ac7ffd2053ac9f49843bbd3f4318feedfd74e85c19d5fb0ba66"
4812dependencies = [4796dependencies = [
4813 "hash-db",4797 "hash-db",
4814 "hashbrown",4798 "hashbrown",
4815 "parity-util-mem",
4816]4799]
48174800
4818[[package]]4801[[package]]
4819name = "memory-lru"
4820version = "0.1.1"
4821source = "registry+https://github.com/rust-lang/crates.io-index"
4822checksum = "ce95ae042940bad7e312857b929ee3d11b8f799a80cb7b9c7ec5125516906395"
4823dependencies = [
4824 "lru",
4825]
4826
4827[[package]]
4828name = "memory_units"4802name = "memory_units"
4829version = "0.4.0"4803version = "0.4.0"
4830source = "registry+https://github.com/rust-lang/crates.io-index"4804source = "registry+https://github.com/rust-lang/crates.io-index"
48614835
4862[[package]]4836[[package]]
4863name = "miniz_oxide"4837name = "miniz_oxide"
4864version = "0.5.4"
4865source = "registry+https://github.com/rust-lang/crates.io-index"
4866checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34"
4867dependencies = [
4868 "adler",
4869]
4870
4871[[package]]
4872name = "miniz_oxide"
4873version = "0.6.2"4838version = "0.6.2"
4874source = "registry+https://github.com/rust-lang/crates.io-index"4839source = "registry+https://github.com/rust-lang/crates.io-index"
4875checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"4840checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
4890]4855]
48914856
4892[[package]]4857[[package]]
4858name = "mmr-gadget"
4859version = "4.0.0-dev"
4860source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
4861dependencies = [
4862 "futures 0.3.25",
4863 "log",
4864 "parity-scale-codec 3.2.1",
4865 "sc-client-api",
4866 "sc-offchain",
4867 "sp-api",
4868 "sp-beefy",
4869 "sp-blockchain",
4870 "sp-consensus",
4871 "sp-core",
4872 "sp-io",
4873 "sp-mmr-primitives",
4874 "sp-runtime",
4875]
4876
4877[[package]]
4878name = "mmr-rpc"
4879version = "4.0.0-dev"
4880source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
4881dependencies = [
4882 "anyhow",
4883 "jsonrpsee",
4884 "parity-scale-codec 3.2.1",
4885 "serde",
4886 "sp-api",
4887 "sp-blockchain",
4888 "sp-core",
4889 "sp-mmr-primitives",
4890 "sp-runtime",
4891]
4892
4893[[package]]
4893name = "mockall"4894name = "mockall"
4894version = "0.11.3"4895version = "0.11.3"
4895source = "registry+https://github.com/rust-lang/crates.io-index"4896source = "registry+https://github.com/rust-lang/crates.io-index"
5118]5119]
51195120
5120[[package]]5121[[package]]
5121name = "nodrop"
5122version = "0.1.14"
5123source = "registry+https://github.com/rust-lang/crates.io-index"
5124checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
5125
5126[[package]]
5127name = "nohash-hasher"5122name = "nohash-hasher"
5128version = "0.2.0"5123version = "0.2.0"
5129source = "registry+https://github.com/rust-lang/crates.io-index"5124source = "registry+https://github.com/rust-lang/crates.io-index"
5146checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"5141checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
51475142
5148[[package]]5143[[package]]
5144name = "nu-ansi-term"
5145version = "0.46.0"
5146source = "registry+https://github.com/rust-lang/crates.io-index"
5147checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
5148dependencies = [
5149 "overload",
5150 "winapi",
5151]
5152
5153[[package]]
5149name = "num-bigint"5154name = "num-bigint"
5150version = "0.4.3"5155version = "0.4.3"
5151source = "registry+https://github.com/rust-lang/crates.io-index"5156source = "registry+https://github.com/rust-lang/crates.io-index"
5204checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"5209checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
5205dependencies = [5210dependencies = [
5206 "autocfg",5211 "autocfg",
5207 "libm",5212 "libm 0.2.6",
5208]5213]
52095214
5210[[package]]5215[[package]]
5211name = "num_cpus"5216name = "num_cpus"
5212version = "1.14.0"5217version = "1.15.0"
5213source = "registry+https://github.com/rust-lang/crates.io-index"5218source = "registry+https://github.com/rust-lang/crates.io-index"
5214checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5"5219checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
5215dependencies = [5220dependencies = [
5216 "hermit-abi 0.1.19",5221 "hermit-abi 0.2.6",
5217 "libc",5222 "libc",
5218]5223]
52195224
5239]5244]
52405245
5241[[package]]5246[[package]]
5242name = "num_threads"
5243version = "0.1.6"
5244source = "registry+https://github.com/rust-lang/crates.io-index"
5245checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44"
5246dependencies = [
5247 "libc",
5248]
5249
5250[[package]]
5251name = "object"5247name = "object"
5252version = "0.29.0"5248version = "0.29.0"
5253source = "registry+https://github.com/rust-lang/crates.io-index"5249source = "registry+https://github.com/rust-lang/crates.io-index"
5260]5256]
52615257
5262[[package]]5258[[package]]
5259name = "object"
5260version = "0.30.0"
5261source = "registry+https://github.com/rust-lang/crates.io-index"
5262checksum = "239da7f290cfa979f43f85a8efeee9a8a76d0827c356d37f9d3d7254d6b537fb"
5263dependencies = [
5264 "memchr",
5265]
5266
5267[[package]]
5263name = "once_cell"5268name = "once_cell"
5264version = "1.16.0"5269version = "1.16.0"
5265source = "registry+https://github.com/rust-lang/crates.io-index"5270source = "registry+https://github.com/rust-lang/crates.io-index"
5266checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"5271checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
52675272
5268[[package]]5273[[package]]
5269name = "opal-runtime"5274name = "opal-runtime"
5270version = "0.9.33"5275version = "0.9.36"
5271dependencies = [5276dependencies = [
5272 "app-promotion-rpc",5277 "app-promotion-rpc",
5273 "cumulus-pallet-aura-ext",5278 "cumulus-pallet-aura-ext",
5426[[package]]5431[[package]]
5427name = "orml-tokens"5432name = "orml-tokens"
5428version = "0.4.1-dev"5433version = "0.4.1-dev"
5429source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5434source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5430dependencies = [5435dependencies = [
5431 "frame-support",5436 "frame-support",
5432 "frame-system",5437 "frame-system",
5441[[package]]5446[[package]]
5442name = "orml-traits"5447name = "orml-traits"
5443version = "0.4.1-dev"5448version = "0.4.1-dev"
5444source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5449source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5445dependencies = [5450dependencies = [
5446 "frame-support",5451 "frame-support",
5447 "impl-trait-for-tuples",5452 "impl-trait-for-tuples",
5459[[package]]5464[[package]]
5460name = "orml-utilities"5465name = "orml-utilities"
5461version = "0.4.1-dev"5466version = "0.4.1-dev"
5462source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5467source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5463dependencies = [5468dependencies = [
5464 "frame-support",5469 "frame-support",
5465 "parity-scale-codec 3.2.1",5470 "parity-scale-codec 3.2.1",
5473[[package]]5478[[package]]
5474name = "orml-vesting"5479name = "orml-vesting"
5475version = "0.4.1-dev"5480version = "0.4.1-dev"
5476source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5481source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5477dependencies = [5482dependencies = [
5478 "frame-support",5483 "frame-support",
5479 "frame-system",5484 "frame-system",
5488[[package]]5493[[package]]
5489name = "orml-xcm-support"5494name = "orml-xcm-support"
5490version = "0.4.1-dev"5495version = "0.4.1-dev"
5491source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5496source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5492dependencies = [5497dependencies = [
5493 "frame-support",5498 "frame-support",
5494 "orml-traits",5499 "orml-traits",
5502[[package]]5507[[package]]
5503name = "orml-xtokens"5508name = "orml-xtokens"
5504version = "0.4.1-dev"5509version = "0.4.1-dev"
5505source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=polkadot-v0.9.33#0256c9e9365cebd297e8b0c9f639d068c24b5af0"5510source = "git+https://github.com/uniquenetwork/open-runtime-module-library?branch=feature/polkadot-v0.9.36#3f70b9adb6c0599db7b8688abb49d0d459634b68"
5506dependencies = [5511dependencies = [
5507 "cumulus-primitives-core",5512 "cumulus-primitives-core",
5508 "frame-support",5513 "frame-support",
5527checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"5532checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
55285533
5529[[package]]5534[[package]]
5535name = "overload"
5536version = "0.1.1"
5537source = "registry+https://github.com/rust-lang/crates.io-index"
5538checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
5539
5540[[package]]
5541name = "packed_simd_2"
5542version = "0.3.8"
5543source = "registry+https://github.com/rust-lang/crates.io-index"
5544checksum = "a1914cd452d8fccd6f9db48147b29fd4ae05bea9dc5d9ad578509f72415de282"
5545dependencies = [
5546 "cfg-if",
5547 "libm 0.1.4",
5548]
5549
5550[[package]]
5530name = "pallet-app-promotion"5551name = "pallet-app-promotion"
5531version = "0.1.1"5552version = "0.1.1"
5532dependencies = [5553dependencies = [
5555[[package]]5576[[package]]
5556name = "pallet-aura"5577name = "pallet-aura"
5557version = "4.0.0-dev"5578version = "4.0.0-dev"
5558source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5579source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5559dependencies = [5580dependencies = [
5560 "frame-support",5581 "frame-support",
5561 "frame-system",5582 "frame-system",
5571[[package]]5592[[package]]
5572name = "pallet-authority-discovery"5593name = "pallet-authority-discovery"
5573version = "4.0.0-dev"5594version = "4.0.0-dev"
5574source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5595source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5575dependencies = [5596dependencies = [
5576 "frame-support",5597 "frame-support",
5577 "frame-system",5598 "frame-system",
5587[[package]]5608[[package]]
5588name = "pallet-authorship"5609name = "pallet-authorship"
5589version = "4.0.0-dev"5610version = "4.0.0-dev"
5590source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5611source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5591dependencies = [5612dependencies = [
5592 "frame-support",5613 "frame-support",
5593 "frame-system",5614 "frame-system",
5602[[package]]5623[[package]]
5603name = "pallet-babe"5624name = "pallet-babe"
5604version = "4.0.0-dev"5625version = "4.0.0-dev"
5605source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5626source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5606dependencies = [5627dependencies = [
5607 "frame-benchmarking",5628 "frame-benchmarking",
5608 "frame-support",5629 "frame-support",
5626[[package]]5647[[package]]
5627name = "pallet-bags-list"5648name = "pallet-bags-list"
5628version = "4.0.0-dev"5649version = "4.0.0-dev"
5629source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5650source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5630dependencies = [5651dependencies = [
5631 "frame-benchmarking",5652 "frame-benchmarking",
5632 "frame-election-provider-support",5653 "frame-election-provider-support",
5646[[package]]5667[[package]]
5647name = "pallet-balances"5668name = "pallet-balances"
5648version = "4.0.0-dev"5669version = "4.0.0-dev"
5649source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5670source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5650dependencies = [5671dependencies = [
5651 "frame-benchmarking",5672 "frame-benchmarking",
5652 "frame-support",5673 "frame-support",
5661[[package]]5682[[package]]
5662name = "pallet-base-fee"5683name = "pallet-base-fee"
5663version = "1.0.0"5684version = "1.0.0"
5664source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"5685source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
5665dependencies = [5686dependencies = [
5666 "fp-evm",5687 "fp-evm",
5667 "frame-support",5688 "frame-support",
5676[[package]]5697[[package]]
5677name = "pallet-beefy"5698name = "pallet-beefy"
5678version = "4.0.0-dev"5699version = "4.0.0-dev"
5679source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5700source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5680dependencies = [5701dependencies = [
5681 "beefy-primitives",
5682 "frame-support",5702 "frame-support",
5683 "frame-system",5703 "frame-system",
5684 "pallet-session",5704 "pallet-session",
5685 "parity-scale-codec 3.2.1",5705 "parity-scale-codec 3.2.1",
5686 "scale-info",5706 "scale-info",
5687 "serde",5707 "serde",
5708 "sp-beefy",
5688 "sp-runtime",5709 "sp-runtime",
5689 "sp-std",5710 "sp-std",
5690]5711]
56915712
5692[[package]]5713[[package]]
5693name = "pallet-beefy-mmr"5714name = "pallet-beefy-mmr"
5694version = "4.0.0-dev"5715version = "4.0.0-dev"
5695source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5716source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5696dependencies = [5717dependencies = [
5697 "array-bytes",5718 "array-bytes 4.2.0",
5698 "beefy-merkle-tree",5719 "beefy-merkle-tree",
5699 "beefy-primitives",
5700 "frame-support",5720 "frame-support",
5701 "frame-system",5721 "frame-system",
5702 "log",5722 "log",
5706 "parity-scale-codec 3.2.1",5726 "parity-scale-codec 3.2.1",
5707 "scale-info",5727 "scale-info",
5708 "serde",5728 "serde",
5729 "sp-beefy",
5709 "sp-core",5730 "sp-core",
5710 "sp-io",5731 "sp-io",
5711 "sp-runtime",5732 "sp-runtime",
5715[[package]]5736[[package]]
5716name = "pallet-bounties"5737name = "pallet-bounties"
5717version = "4.0.0-dev"5738version = "4.0.0-dev"
5718source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5739source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5719dependencies = [5740dependencies = [
5720 "frame-benchmarking",5741 "frame-benchmarking",
5721 "frame-support",5742 "frame-support",
5733[[package]]5754[[package]]
5734name = "pallet-child-bounties"5755name = "pallet-child-bounties"
5735version = "4.0.0-dev"5756version = "4.0.0-dev"
5736source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5757source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5737dependencies = [5758dependencies = [
5738 "frame-benchmarking",5759 "frame-benchmarking",
5739 "frame-support",5760 "frame-support",
5752[[package]]5773[[package]]
5753name = "pallet-collective"5774name = "pallet-collective"
5754version = "4.0.0-dev"5775version = "4.0.0-dev"
5755source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5776source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5756dependencies = [5777dependencies = [
5757 "frame-benchmarking",5778 "frame-benchmarking",
5758 "frame-support",5779 "frame-support",
5807[[package]]5828[[package]]
5808name = "pallet-conviction-voting"5829name = "pallet-conviction-voting"
5809version = "4.0.0-dev"5830version = "4.0.0-dev"
5810source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5831source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5811dependencies = [5832dependencies = [
5812 "assert_matches",5833 "assert_matches",
5813 "frame-benchmarking",5834 "frame-benchmarking",
5824[[package]]5845[[package]]
5825name = "pallet-democracy"5846name = "pallet-democracy"
5826version = "4.0.0-dev"5847version = "4.0.0-dev"
5827source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5848source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5828dependencies = [5849dependencies = [
5829 "frame-benchmarking",5850 "frame-benchmarking",
5830 "frame-support",5851 "frame-support",
5842[[package]]5863[[package]]
5843name = "pallet-election-provider-multi-phase"5864name = "pallet-election-provider-multi-phase"
5844version = "4.0.0-dev"5865version = "4.0.0-dev"
5845source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5866source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5846dependencies = [5867dependencies = [
5847 "frame-benchmarking",5868 "frame-benchmarking",
5848 "frame-election-provider-support",5869 "frame-election-provider-support",
5866[[package]]5887[[package]]
5867name = "pallet-election-provider-support-benchmarking"5888name = "pallet-election-provider-support-benchmarking"
5868version = "4.0.0-dev"5889version = "4.0.0-dev"
5869source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5890source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5870dependencies = [5891dependencies = [
5871 "frame-benchmarking",5892 "frame-benchmarking",
5872 "frame-election-provider-support",5893 "frame-election-provider-support",
5879[[package]]5900[[package]]
5880name = "pallet-elections-phragmen"5901name = "pallet-elections-phragmen"
5881version = "5.0.0-dev"5902version = "5.0.0-dev"
5882source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"5903source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
5883dependencies = [5904dependencies = [
5884 "frame-benchmarking",5905 "frame-benchmarking",
5885 "frame-support",5906 "frame-support",
5897[[package]]5918[[package]]
5898name = "pallet-ethereum"5919name = "pallet-ethereum"
5899version = "4.0.0-dev"5920version = "4.0.0-dev"
5900source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"5921source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
5901dependencies = [5922dependencies = [
5902 "ethereum 0.14.0",5923 "ethereum 0.14.0",
5903 "ethereum-types 0.14.1",5924 "ethereum-types 0.14.1",
5925[[package]]5946[[package]]
5926name = "pallet-evm"5947name = "pallet-evm"
5927version = "6.0.0-dev"5948version = "6.0.0-dev"
5928source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"5949source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
5929dependencies = [5950dependencies = [
5930 "environmental",5951 "environmental",
5931 "evm",5952 "evm",
6011[[package]]6032[[package]]
6012name = "pallet-evm-precompile-simple"6033name = "pallet-evm-precompile-simple"
6013version = "2.0.0-dev"6034version = "2.0.0-dev"
6014source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.33#c37ced433a29baad45899d6ab364fe437f97570e"6035source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.36#db60b911813df1d82e60e0de7f3dfa290e60d2f0"
6015dependencies = [6036dependencies = [
6016 "fp-evm",6037 "fp-evm",
6017 "ripemd",6038 "ripemd",
6040[[package]]6061[[package]]
6041name = "pallet-fast-unstake"6062name = "pallet-fast-unstake"
6042version = "4.0.0-dev"6063version = "4.0.0-dev"
6043source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6064source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6044dependencies = [6065dependencies = [
6045 "frame-benchmarking",6066 "frame-benchmarking",
6046 "frame-election-provider-support",6067 "frame-election-provider-support",
6105]6126]
61066127
6107[[package]]6128[[package]]
6108name = "pallet-gilt"
6109version = "4.0.0-dev"
6110source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"
6111dependencies = [
6112 "frame-benchmarking",
6113 "frame-support",
6114 "frame-system",
6115 "parity-scale-codec 3.2.1",
6116 "scale-info",
6117 "sp-arithmetic",
6118 "sp-runtime",
6119 "sp-std",
6120]
6121
6122[[package]]
6123name = "pallet-grandpa"6129name = "pallet-grandpa"
6124version = "4.0.0-dev"6130version = "4.0.0-dev"
6125source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6131source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6126dependencies = [6132dependencies = [
6127 "frame-benchmarking",6133 "frame-benchmarking",
6128 "frame-support",6134 "frame-support",
6145[[package]]6151[[package]]
6146name = "pallet-identity"6152name = "pallet-identity"
6147version = "4.0.0-dev"6153version = "4.0.0-dev"
6148source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6154source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6149dependencies = [6155dependencies = [
6150 "enumflags2",6156 "enumflags2",
6151 "frame-benchmarking",6157 "frame-benchmarking",
6161[[package]]6167[[package]]
6162name = "pallet-im-online"6168name = "pallet-im-online"
6163version = "4.0.0-dev"6169version = "4.0.0-dev"
6164source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6170source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6165dependencies = [6171dependencies = [
6166 "frame-benchmarking",6172 "frame-benchmarking",
6167 "frame-support",6173 "frame-support",
6181[[package]]6187[[package]]
6182name = "pallet-indices"6188name = "pallet-indices"
6183version = "4.0.0-dev"6189version = "4.0.0-dev"
6184source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6190source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6185dependencies = [6191dependencies = [
6186 "frame-benchmarking",6192 "frame-benchmarking",
6187 "frame-support",6193 "frame-support",
6229[[package]]6235[[package]]
6230name = "pallet-membership"6236name = "pallet-membership"
6231version = "4.0.0-dev"6237version = "4.0.0-dev"
6232source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6238source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6233dependencies = [6239dependencies = [
6234 "frame-benchmarking",6240 "frame-benchmarking",
6235 "frame-support",6241 "frame-support",
6246[[package]]6252[[package]]
6247name = "pallet-mmr"6253name = "pallet-mmr"
6248version = "4.0.0-dev"6254version = "4.0.0-dev"
6249source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6255source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6250dependencies = [6256dependencies = [
6251 "ckb-merkle-mountain-range",
6252 "frame-benchmarking",6257 "frame-benchmarking",
6253 "frame-support",6258 "frame-support",
6254 "frame-system",6259 "frame-system",
6262]6267]
62636268
6264[[package]]6269[[package]]
6265name = "pallet-mmr-rpc"6270name = "pallet-multisig"
6266version = "3.0.0"6271version = "4.0.0-dev"
6267source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6272source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6268dependencies = [6273dependencies = [
6269 "anyhow",6274 "frame-benchmarking",
6270 "jsonrpsee",6275 "frame-support",
6276 "frame-system",
6277 "log",
6271 "parity-scale-codec 3.2.1",6278 "parity-scale-codec 3.2.1",
6272 "serde",6279 "scale-info",
6273 "sp-api",
6274 "sp-blockchain",6280 "sp-io",
6275 "sp-core",
6276 "sp-mmr-primitives",
6277 "sp-runtime",6281 "sp-runtime",
6282 "sp-std",
6278]6283]
62796284
6280[[package]]6285[[package]]
6281name = "pallet-multisig"6286name = "pallet-nis"
6282version = "4.0.0-dev"6287version = "4.0.0-dev"
6283source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6288source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6284dependencies = [6289dependencies = [
6285 "frame-benchmarking",6290 "frame-benchmarking",
6286 "frame-support",6291 "frame-support",
6287 "frame-system",6292 "frame-system",
6288 "log",
6289 "parity-scale-codec 3.2.1",6293 "parity-scale-codec 3.2.1",
6290 "scale-info",6294 "scale-info",
6291 "sp-io",6295 "sp-arithmetic",
6296 "sp-core",
6292 "sp-runtime",6297 "sp-runtime",
6293 "sp-std",6298 "sp-std",
6294]6299]
62956300
6296[[package]]6301[[package]]
6297name = "pallet-nomination-pools"6302name = "pallet-nomination-pools"
6298version = "1.0.0"6303version = "1.0.0"
6299source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6304source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6300dependencies = [6305dependencies = [
6301 "frame-support",6306 "frame-support",
6302 "frame-system",6307 "frame-system",
6313[[package]]6318[[package]]
6314name = "pallet-nomination-pools-benchmarking"6319name = "pallet-nomination-pools-benchmarking"
6315version = "1.0.0"6320version = "1.0.0"
6316source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6321source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6317dependencies = [6322dependencies = [
6318 "frame-benchmarking",6323 "frame-benchmarking",
6319 "frame-election-provider-support",6324 "frame-election-provider-support",
6333[[package]]6338[[package]]
6334name = "pallet-nomination-pools-runtime-api"6339name = "pallet-nomination-pools-runtime-api"
6335version = "1.0.0-dev"6340version = "1.0.0-dev"
6336source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6341source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6337dependencies = [6342dependencies = [
6338 "parity-scale-codec 3.2.1",6343 "parity-scale-codec 3.2.1",
6339 "sp-api",6344 "sp-api",
6365[[package]]6370[[package]]
6366name = "pallet-offences"6371name = "pallet-offences"
6367version = "4.0.0-dev"6372version = "4.0.0-dev"
6368source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6373source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6369dependencies = [6374dependencies = [
6370 "frame-support",6375 "frame-support",
6371 "frame-system",6376 "frame-system",
6382[[package]]6387[[package]]
6383name = "pallet-offences-benchmarking"6388name = "pallet-offences-benchmarking"
6384version = "4.0.0-dev"6389version = "4.0.0-dev"
6385source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6390source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6386dependencies = [6391dependencies = [
6387 "frame-benchmarking",6392 "frame-benchmarking",
6388 "frame-election-provider-support",6393 "frame-election-provider-support",
6405[[package]]6410[[package]]
6406name = "pallet-preimage"6411name = "pallet-preimage"
6407version = "4.0.0-dev"6412version = "4.0.0-dev"
6408source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6413source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6409dependencies = [6414dependencies = [
6410 "frame-benchmarking",6415 "frame-benchmarking",
6411 "frame-support",6416 "frame-support",
6422[[package]]6427[[package]]
6423name = "pallet-proxy"6428name = "pallet-proxy"
6424version = "4.0.0-dev"6429version = "4.0.0-dev"
6425source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6430source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6426dependencies = [6431dependencies = [
6427 "frame-benchmarking",6432 "frame-benchmarking",
6428 "frame-support",6433 "frame-support",
6437[[package]]6442[[package]]
6438name = "pallet-randomness-collective-flip"6443name = "pallet-randomness-collective-flip"
6439version = "4.0.0-dev"6444version = "4.0.0-dev"
6440source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6445source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6441dependencies = [6446dependencies = [
6442 "frame-support",6447 "frame-support",
6443 "frame-system",6448 "frame-system",
6451[[package]]6456[[package]]
6452name = "pallet-ranked-collective"6457name = "pallet-ranked-collective"
6453version = "4.0.0-dev"6458version = "4.0.0-dev"
6454source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6459source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6455dependencies = [6460dependencies = [
6456 "frame-benchmarking",6461 "frame-benchmarking",
6457 "frame-support",6462 "frame-support",
6469[[package]]6474[[package]]
6470name = "pallet-recovery"6475name = "pallet-recovery"
6471version = "4.0.0-dev"6476version = "4.0.0-dev"
6472source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6477source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6473dependencies = [6478dependencies = [
6474 "frame-benchmarking",6479 "frame-benchmarking",
6475 "frame-support",6480 "frame-support",
6484[[package]]6489[[package]]
6485name = "pallet-referenda"6490name = "pallet-referenda"
6486version = "4.0.0-dev"6491version = "4.0.0-dev"
6487source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6492source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6488dependencies = [6493dependencies = [
6489 "assert_matches",6494 "assert_matches",
6490 "frame-benchmarking",6495 "frame-benchmarking",
6491 "frame-support",6496 "frame-support",
6492 "frame-system",6497 "frame-system",
6498 "log",
6493 "parity-scale-codec 3.2.1",6499 "parity-scale-codec 3.2.1",
6494 "scale-info",6500 "scale-info",
6495 "serde",6501 "serde",
6566[[package]]6572[[package]]
6567name = "pallet-scheduler"6573name = "pallet-scheduler"
6568version = "4.0.0-dev"6574version = "4.0.0-dev"
6569source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6575source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6570dependencies = [6576dependencies = [
6571 "frame-benchmarking",6577 "frame-benchmarking",
6572 "frame-support",6578 "frame-support",
6577 "sp-io",6583 "sp-io",
6578 "sp-runtime",6584 "sp-runtime",
6579 "sp-std",6585 "sp-std",
6586 "sp-weights",
6580]6587]
65816588
6582[[package]]6589[[package]]
6583name = "pallet-session"6590name = "pallet-session"
6584version = "4.0.0-dev"6591version = "4.0.0-dev"
6585source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6592source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6586dependencies = [6593dependencies = [
6587 "frame-support",6594 "frame-support",
6588 "frame-system",6595 "frame-system",
6603[[package]]6610[[package]]
6604name = "pallet-session-benchmarking"6611name = "pallet-session-benchmarking"
6605version = "4.0.0-dev"6612version = "4.0.0-dev"
6606source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6613source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6607dependencies = [6614dependencies = [
6608 "frame-benchmarking",6615 "frame-benchmarking",
6609 "frame-support",6616 "frame-support",
6619[[package]]6626[[package]]
6620name = "pallet-society"6627name = "pallet-society"
6621version = "4.0.0-dev"6628version = "4.0.0-dev"
6622source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6629source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6623dependencies = [6630dependencies = [
6624 "frame-support",6631 "frame-support",
6625 "frame-system",6632 "frame-system",
6633[[package]]6640[[package]]
6634name = "pallet-staking"6641name = "pallet-staking"
6635version = "4.0.0-dev"6642version = "4.0.0-dev"
6636source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6643source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6637dependencies = [6644dependencies = [
6638 "frame-benchmarking",6645 "frame-benchmarking",
6639 "frame-election-provider-support",6646 "frame-election-provider-support",
6656[[package]]6663[[package]]
6657name = "pallet-staking-reward-curve"6664name = "pallet-staking-reward-curve"
6658version = "4.0.0-dev"6665version = "4.0.0-dev"
6659source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6666source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6660dependencies = [6667dependencies = [
6661 "proc-macro-crate",6668 "proc-macro-crate",
6662 "proc-macro2",6669 "proc-macro2",
6667[[package]]6674[[package]]
6668name = "pallet-staking-reward-fn"6675name = "pallet-staking-reward-fn"
6669version = "4.0.0-dev"6676version = "4.0.0-dev"
6670source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6677source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6671dependencies = [6678dependencies = [
6672 "log",6679 "log",
6673 "sp-arithmetic",6680 "sp-arithmetic",
6676[[package]]6683[[package]]
6677name = "pallet-state-trie-migration"6684name = "pallet-state-trie-migration"
6678version = "4.0.0-dev"6685version = "4.0.0-dev"
6679source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6686source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6680dependencies = [6687dependencies = [
6681 "frame-benchmarking",6688 "frame-benchmarking",
6682 "frame-support",6689 "frame-support",
6708[[package]]6715[[package]]
6709name = "pallet-sudo"6716name = "pallet-sudo"
6710version = "4.0.0-dev"6717version = "4.0.0-dev"
6711source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6718source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6712dependencies = [6719dependencies = [
6713 "frame-support",6720 "frame-support",
6714 "frame-system",6721 "frame-system",
6722[[package]]6729[[package]]
6723name = "pallet-template-transaction-payment"6730name = "pallet-template-transaction-payment"
6724version = "3.0.0"6731version = "3.0.0"
6725source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.33#994d4a8dc6cc630b73d19f97315272a8795317e7"6732source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.36#55943b982e9b0b80465885f31f76db3dba91dac4"
6726dependencies = [6733dependencies = [
6727 "frame-benchmarking",6734 "frame-benchmarking",
6728 "frame-support",6735 "frame-support",
6754[[package]]6761[[package]]
6755name = "pallet-timestamp"6762name = "pallet-timestamp"
6756version = "4.0.0-dev"6763version = "4.0.0-dev"
6757source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6764source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6758dependencies = [6765dependencies = [
6759 "frame-benchmarking",6766 "frame-benchmarking",
6760 "frame-support",6767 "frame-support",
6772[[package]]6779[[package]]
6773name = "pallet-tips"6780name = "pallet-tips"
6774version = "4.0.0-dev"6781version = "4.0.0-dev"
6775source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6782source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6776dependencies = [6783dependencies = [
6777 "frame-benchmarking",6784 "frame-benchmarking",
6778 "frame-support",6785 "frame-support",
6791[[package]]6798[[package]]
6792name = "pallet-transaction-payment"6799name = "pallet-transaction-payment"
6793version = "4.0.0-dev"6800version = "4.0.0-dev"
6794source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6801source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6795dependencies = [6802dependencies = [
6796 "frame-support",6803 "frame-support",
6797 "frame-system",6804 "frame-system",
6807[[package]]6814[[package]]
6808name = "pallet-transaction-payment-rpc"6815name = "pallet-transaction-payment-rpc"
6809version = "4.0.0-dev"6816version = "4.0.0-dev"
6810source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6817source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6811dependencies = [6818dependencies = [
6812 "jsonrpsee",6819 "jsonrpsee",
6813 "pallet-transaction-payment-rpc-runtime-api",6820 "pallet-transaction-payment-rpc-runtime-api",
6823[[package]]6830[[package]]
6824name = "pallet-transaction-payment-rpc-runtime-api"6831name = "pallet-transaction-payment-rpc-runtime-api"
6825version = "4.0.0-dev"6832version = "4.0.0-dev"
6826source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6833source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6827dependencies = [6834dependencies = [
6828 "pallet-transaction-payment",6835 "pallet-transaction-payment",
6829 "parity-scale-codec 3.2.1",6836 "parity-scale-codec 3.2.1",
6835[[package]]6842[[package]]
6836name = "pallet-treasury"6843name = "pallet-treasury"
6837version = "4.0.0-dev"6844version = "4.0.0-dev"
6838source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6845source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6839dependencies = [6846dependencies = [
6840 "frame-benchmarking",6847 "frame-benchmarking",
6841 "frame-support",6848 "frame-support",
6894[[package]]6901[[package]]
6895name = "pallet-utility"6902name = "pallet-utility"
6896version = "4.0.0-dev"6903version = "4.0.0-dev"
6897source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6904source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6898dependencies = [6905dependencies = [
6899 "frame-benchmarking",6906 "frame-benchmarking",
6900 "frame-support",6907 "frame-support",
6910[[package]]6917[[package]]
6911name = "pallet-vesting"6918name = "pallet-vesting"
6912version = "4.0.0-dev"6919version = "4.0.0-dev"
6913source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6920source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6914dependencies = [6921dependencies = [
6915 "frame-benchmarking",6922 "frame-benchmarking",
6916 "frame-support",6923 "frame-support",
6925[[package]]6932[[package]]
6926name = "pallet-whitelist"6933name = "pallet-whitelist"
6927version = "4.0.0-dev"6934version = "4.0.0-dev"
6928source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"6935source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
6929dependencies = [6936dependencies = [
6930 "frame-benchmarking",6937 "frame-benchmarking",
6931 "frame-support",6938 "frame-support",
69396946
6940[[package]]6947[[package]]
6941name = "pallet-xcm"6948name = "pallet-xcm"
6942version = "0.9.33"6949version = "0.9.36"
6943source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"6950source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
6944dependencies = [6951dependencies = [
6945 "frame-support",6952 "frame-support",
6946 "frame-system",6953 "frame-system",
69576964
6958[[package]]6965[[package]]
6959name = "pallet-xcm-benchmarks"6966name = "pallet-xcm-benchmarks"
6960version = "0.9.33"6967version = "0.9.36"
6961source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"6968source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
6962dependencies = [6969dependencies = [
6963 "frame-benchmarking",6970 "frame-benchmarking",
6964 "frame-support",6971 "frame-support",
6975[[package]]6982[[package]]
6976name = "parachain-info"6983name = "parachain-info"
6977version = "0.1.0"6984version = "0.1.0"
6978source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.33#27721d794ee63aae42317a7eeda21595dd3200d9"6985source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
6979dependencies = [6986dependencies = [
6980 "cumulus-primitives-core",6987 "cumulus-primitives-core",
6981 "frame-support",6988 "frame-support",
69866993
6987[[package]]6994[[package]]
6988name = "parity-db"6995name = "parity-db"
6989version = "0.3.17"
6990source = "registry+https://github.com/rust-lang/crates.io-index"
6991checksum = "2c8fdb726a43661fa54b43e7114e6b88b2289cae388eb3ad766d9d1754d83fce"
6992dependencies = [
6993 "blake2-rfc",
6994 "crc32fast",
6995 "fs2",
6996 "hex",
6997 "libc",
6998 "log",
6999 "lz4",
7000 "memmap2",
7001 "parking_lot 0.12.1",
7002 "rand 0.8.5",
7003 "snap",
7004]
7005
7006[[package]]
7007name = "parity-db"
7008version = "0.4.2"6996version = "0.4.2"
7009source = "registry+https://github.com/rust-lang/crates.io-index"6997source = "registry+https://github.com/rust-lang/crates.io-index"
7010checksum = "3a7511a0bec4a336b5929999d02b560d2439c993cccf98c26481484e811adc43"6998checksum = "3a7511a0bec4a336b5929999d02b560d2439c993cccf98c26481484e811adc43"
7082checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f"7070checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f"
70837071
7084[[package]]7072[[package]]
7085name = "parity-util-mem"
7086version = "0.12.0"
7087source = "registry+https://github.com/rust-lang/crates.io-index"
7088checksum = "0d32c34f4f5ca7f9196001c0aba5a1f9a5a12382c8944b8b0f90233282d1e8f8"
7089dependencies = [
7090 "cfg-if",
7091 "ethereum-types 0.14.1",
7092 "hashbrown",
7093 "impl-trait-for-tuples",
7094 "lru",
7095 "parity-util-mem-derive",
7096 "parking_lot 0.12.1",
7097 "primitive-types 0.12.1",
7098 "smallvec",
7099 "winapi",
7100]
7101
7102[[package]]
7103name = "parity-util-mem-derive"
7104version = "0.1.0"
7105source = "registry+https://github.com/rust-lang/crates.io-index"
7106checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
7107dependencies = [
7108 "proc-macro2",
7109 "syn",
7110 "synstructure",
7111]
7112
7113[[package]]
7114name = "parity-wasm"7073name = "parity-wasm"
7115version = "0.45.0"7074version = "0.45.0"
7116source = "registry+https://github.com/rust-lang/crates.io-index"7075source = "registry+https://github.com/rust-lang/crates.io-index"
7130dependencies = [7089dependencies = [
7131 "instant",7090 "instant",
7132 "lock_api",7091 "lock_api",
7133 "parking_lot_core 0.8.5",7092 "parking_lot_core 0.8.6",
7134]7093]
71357094
7136[[package]]7095[[package]]
71457104
7146[[package]]7105[[package]]
7147name = "parking_lot_core"7106name = "parking_lot_core"
7148version = "0.8.5"7107version = "0.8.6"
7149source = "registry+https://github.com/rust-lang/crates.io-index"7108source = "registry+https://github.com/rust-lang/crates.io-index"
7150checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216"7109checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
7151dependencies = [7110dependencies = [
7152 "cfg-if",7111 "cfg-if",
7153 "instant",7112 "instant",
71727131
7173[[package]]7132[[package]]
7174name = "paste"7133name = "paste"
7175version = "1.0.9"7134version = "1.0.11"
7176source = "registry+https://github.com/rust-lang/crates.io-index"7135source = "registry+https://github.com/rust-lang/crates.io-index"
7177checksum = "b1de2e551fb905ac83f73f7aedf2f0cb4a0da7e35efa24a202a936269f1f18e1"7136checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
71787137
7179[[package]]7138[[package]]
7180name = "pbkdf2"7139name = "pbkdf2"
7321checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94"7280checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94"
73227281
7323[[package]]7282[[package]]
7283name = "platforms"
7284version = "3.0.2"
7285source = "registry+https://github.com/rust-lang/crates.io-index"
7286checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630"
7287
7288[[package]]
7324name = "polkadot-approval-distribution"7289name = "polkadot-approval-distribution"
7325version = "0.9.33"7290version = "0.9.36"
7326source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7291source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7327dependencies = [7292dependencies = [
7328 "futures 0.3.25",7293 "futures 0.3.25",
7329 "polkadot-node-network-protocol",7294 "polkadot-node-network-protocol",
73377302
7338[[package]]7303[[package]]
7339name = "polkadot-availability-bitfield-distribution"7304name = "polkadot-availability-bitfield-distribution"
7340version = "0.9.33"7305version = "0.9.36"
7341source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7306source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7342dependencies = [7307dependencies = [
7343 "futures 0.3.25",7308 "futures 0.3.25",
7344 "polkadot-node-network-protocol",7309 "polkadot-node-network-protocol",
73517316
7352[[package]]7317[[package]]
7353name = "polkadot-availability-distribution"7318name = "polkadot-availability-distribution"
7354version = "0.9.33"7319version = "0.9.36"
7355source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7320source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7356dependencies = [7321dependencies = [
7357 "derive_more",7322 "derive_more",
7358 "fatality",7323 "fatality",
73747339
7375[[package]]7340[[package]]
7376name = "polkadot-availability-recovery"7341name = "polkadot-availability-recovery"
7377version = "0.9.33"7342version = "0.9.36"
7378source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7343source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7379dependencies = [7344dependencies = [
7380 "fatality",7345 "fatality",
7381 "futures 0.3.25",7346 "futures 0.3.25",
73957360
7396[[package]]7361[[package]]
7397name = "polkadot-cli"7362name = "polkadot-cli"
7398version = "0.9.33"7363version = "0.9.36"
7399source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7364source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7400dependencies = [7365dependencies = [
7401 "clap",7366 "clap",
7402 "frame-benchmarking-cli",7367 "frame-benchmarking-cli",
7408 "polkadot-performance-test",7373 "polkadot-performance-test",
7409 "polkadot-service",7374 "polkadot-service",
7410 "sc-cli",7375 "sc-cli",
7376 "sc-executor",
7411 "sc-service",7377 "sc-service",
7412 "sc-sysinfo",7378 "sc-sysinfo",
7413 "sc-tracing",7379 "sc-tracing",
7414 "sp-core",7380 "sp-core",
7381 "sp-io",
7415 "sp-keyring",7382 "sp-keyring",
7416 "sp-trie",
7417 "substrate-build-script-utils",7383 "substrate-build-script-utils",
7418 "thiserror",7384 "thiserror",
7419 "try-runtime-cli",7385 "try-runtime-cli",
7420]7386]
74217387
7422[[package]]7388[[package]]
7423name = "polkadot-client"7389name = "polkadot-client"
7424version = "0.9.33"7390version = "0.9.36"
7425source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7391source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7426dependencies = [7392dependencies = [
7427 "beefy-primitives",7393 "async-trait",
7428 "frame-benchmarking",7394 "frame-benchmarking",
7429 "frame-benchmarking-cli",7395 "frame-benchmarking-cli",
7430 "frame-system",7396 "frame-system",
7431 "frame-system-rpc-runtime-api",7397 "frame-system-rpc-runtime-api",
7398 "futures 0.3.25",
7432 "pallet-transaction-payment",7399 "pallet-transaction-payment",
7433 "pallet-transaction-payment-rpc-runtime-api",7400 "pallet-transaction-payment-rpc-runtime-api",
7434 "polkadot-core-primitives",7401 "polkadot-core-primitives",
7442 "sc-service",7409 "sc-service",
7443 "sp-api",7410 "sp-api",
7444 "sp-authority-discovery",7411 "sp-authority-discovery",
7412 "sp-beefy",
7445 "sp-block-builder",7413 "sp-block-builder",
7446 "sp-blockchain",7414 "sp-blockchain",
7447 "sp-consensus",7415 "sp-consensus",
74617429
7462[[package]]7430[[package]]
7463name = "polkadot-collator-protocol"7431name = "polkadot-collator-protocol"
7464version = "0.9.33"7432version = "0.9.36"
7465source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7433source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7466dependencies = [7434dependencies = [
7467 "always-assert",7435 "always-assert",
7468 "bitvec 1.0.1",7436 "bitvec 1.0.1",
74837451
7484[[package]]7452[[package]]
7485name = "polkadot-core-primitives"7453name = "polkadot-core-primitives"
7486version = "0.9.33"7454version = "0.9.36"
7487source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7455source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7488dependencies = [7456dependencies = [
7489 "parity-scale-codec 3.2.1",7457 "parity-scale-codec 3.2.1",
7490 "parity-util-mem",
7491 "scale-info",7458 "scale-info",
7492 "sp-core",7459 "sp-core",
7493 "sp-runtime",7460 "sp-runtime",
74967463
7497[[package]]7464[[package]]
7498name = "polkadot-dispute-distribution"7465name = "polkadot-dispute-distribution"
7499version = "0.9.33"7466version = "0.9.36"
7500source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7467source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7501dependencies = [7468dependencies = [
7502 "derive_more",7469 "derive_more",
7503 "fatality",7470 "fatality",
75217488
7522[[package]]7489[[package]]
7523name = "polkadot-erasure-coding"7490name = "polkadot-erasure-coding"
7524version = "0.9.33"7491version = "0.9.36"
7525source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7492source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7526dependencies = [7493dependencies = [
7527 "parity-scale-codec 3.2.1",7494 "parity-scale-codec 3.2.1",
7528 "polkadot-node-primitives",7495 "polkadot-node-primitives",
75357502
7536[[package]]7503[[package]]
7537name = "polkadot-gossip-support"7504name = "polkadot-gossip-support"
7538version = "0.9.33"7505version = "0.9.36"
7539source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7506source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7540dependencies = [7507dependencies = [
7541 "futures 0.3.25",7508 "futures 0.3.25",
7542 "futures-timer",7509 "futures-timer",
75557522
7556[[package]]7523[[package]]
7557name = "polkadot-network-bridge"7524name = "polkadot-network-bridge"
7558version = "0.9.33"7525version = "0.9.36"
7559source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7526source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7560dependencies = [7527dependencies = [
7561 "always-assert",7528 "always-assert",
7562 "async-trait",7529 "async-trait",
75797546
7580[[package]]7547[[package]]
7581name = "polkadot-node-collation-generation"7548name = "polkadot-node-collation-generation"
7582version = "0.9.33"7549version = "0.9.36"
7583source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7550source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7584dependencies = [7551dependencies = [
7585 "futures 0.3.25",7552 "futures 0.3.25",
7586 "parity-scale-codec 3.2.1",7553 "parity-scale-codec 3.2.1",
75977564
7598[[package]]7565[[package]]
7599name = "polkadot-node-core-approval-voting"7566name = "polkadot-node-core-approval-voting"
7600version = "0.9.33"7567version = "0.9.36"
7601source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7568source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7602dependencies = [7569dependencies = [
7603 "bitvec 1.0.1",7570 "bitvec 1.0.1",
7604 "derive_more",7571 "derive_more",
76267593
7627[[package]]7594[[package]]
7628name = "polkadot-node-core-av-store"7595name = "polkadot-node-core-av-store"
7629version = "0.9.33"7596version = "0.9.36"
7630source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7597source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7631dependencies = [7598dependencies = [
7632 "bitvec 1.0.1",7599 "bitvec 1.0.1",
7633 "futures 0.3.25",7600 "futures 0.3.25",
76467613
7647[[package]]7614[[package]]
7648name = "polkadot-node-core-backing"7615name = "polkadot-node-core-backing"
7649version = "0.9.33"7616version = "0.9.36"
7650source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7617source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7651dependencies = [7618dependencies = [
7652 "bitvec 1.0.1",7619 "bitvec 1.0.1",
7653 "fatality",7620 "fatality",
76657632
7666[[package]]7633[[package]]
7667name = "polkadot-node-core-bitfield-signing"7634name = "polkadot-node-core-bitfield-signing"
7668version = "0.9.33"7635version = "0.9.36"
7669source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7636source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7670dependencies = [7637dependencies = [
7671 "futures 0.3.25",7638 "futures 0.3.25",
7672 "polkadot-node-subsystem",7639 "polkadot-node-subsystem",
76807647
7681[[package]]7648[[package]]
7682name = "polkadot-node-core-candidate-validation"7649name = "polkadot-node-core-candidate-validation"
7683version = "0.9.33"7650version = "0.9.36"
7684source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7651source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7685dependencies = [7652dependencies = [
7686 "async-trait",7653 "async-trait",
7687 "futures 0.3.25",7654 "futures 0.3.25",
76997666
7700[[package]]7667[[package]]
7701name = "polkadot-node-core-chain-api"7668name = "polkadot-node-core-chain-api"
7702version = "0.9.33"7669version = "0.9.36"
7703source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7670source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7704dependencies = [7671dependencies = [
7705 "futures 0.3.25",7672 "futures 0.3.25",
7706 "polkadot-node-subsystem",7673 "polkadot-node-subsystem",
77147681
7715[[package]]7682[[package]]
7716name = "polkadot-node-core-chain-selection"7683name = "polkadot-node-core-chain-selection"
7717version = "0.9.33"7684version = "0.9.36"
7718source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7685source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7719dependencies = [7686dependencies = [
7720 "futures 0.3.25",7687 "futures 0.3.25",
7721 "futures-timer",7688 "futures-timer",
77317698
7732[[package]]7699[[package]]
7733name = "polkadot-node-core-dispute-coordinator"7700name = "polkadot-node-core-dispute-coordinator"
7734version = "0.9.33"7701version = "0.9.36"
7735source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7702source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7736dependencies = [7703dependencies = [
7737 "fatality",7704 "fatality",
7738 "futures 0.3.25",7705 "futures 0.3.25",
77507717
7751[[package]]7718[[package]]
7752name = "polkadot-node-core-parachains-inherent"7719name = "polkadot-node-core-parachains-inherent"
7753version = "0.9.33"7720version = "0.9.36"
7754source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7721source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7755dependencies = [7722dependencies = [
7756 "async-trait",7723 "async-trait",
7757 "futures 0.3.25",7724 "futures 0.3.25",
7758 "futures-timer",7725 "futures-timer",
7759 "polkadot-node-subsystem",7726 "polkadot-node-subsystem",
7727 "polkadot-overseer",
7760 "polkadot-primitives",7728 "polkadot-primitives",
7761 "sp-blockchain",7729 "sp-blockchain",
7762 "sp-inherents",7730 "sp-inherents",
77677735
7768[[package]]7736[[package]]
7769name = "polkadot-node-core-provisioner"7737name = "polkadot-node-core-provisioner"
7770version = "0.9.33"7738version = "0.9.36"
7771source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7739source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7772dependencies = [7740dependencies = [
7773 "bitvec 1.0.1",7741 "bitvec 1.0.1",
7774 "fatality",7742 "fatality",
77857753
7786[[package]]7754[[package]]
7787name = "polkadot-node-core-pvf"7755name = "polkadot-node-core-pvf"
7788version = "0.9.33"7756version = "0.9.36"
7789source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7757source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7790dependencies = [7758dependencies = [
7791 "always-assert",7759 "always-assert",
7792 "assert_matches",7760 "assert_matches",
7793 "async-process",7761 "async-process",
7794 "async-std",7762 "async-std",
7763 "cpu-time",
7795 "futures 0.3.25",7764 "futures 0.3.25",
7796 "futures-timer",7765 "futures-timer",
7797 "parity-scale-codec 3.2.1",7766 "parity-scale-codec 3.2.1",
78177786
7818[[package]]7787[[package]]
7819name = "polkadot-node-core-pvf-checker"7788name = "polkadot-node-core-pvf-checker"
7820version = "0.9.33"7789version = "0.9.36"
7821source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7790source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7822dependencies = [7791dependencies = [
7823 "futures 0.3.25",7792 "futures 0.3.25",
7824 "polkadot-node-primitives",7793 "polkadot-node-primitives",
78337802
7834[[package]]7803[[package]]
7835name = "polkadot-node-core-runtime-api"7804name = "polkadot-node-core-runtime-api"
7836version = "0.9.33"7805version = "0.9.36"
7837source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7806source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7838dependencies = [7807dependencies = [
7839 "futures 0.3.25",7808 "futures 0.3.25",
7840 "memory-lru",7809 "lru",
7841 "parity-util-mem",
7842 "polkadot-node-subsystem",7810 "polkadot-node-subsystem",
7843 "polkadot-node-subsystem-types",7811 "polkadot-node-subsystem-types",
7844 "polkadot-node-subsystem-util",7812 "polkadot-node-subsystem-util",
78497817
7850[[package]]7818[[package]]
7851name = "polkadot-node-jaeger"7819name = "polkadot-node-jaeger"
7852version = "0.9.33"7820version = "0.9.36"
7853source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7821source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7854dependencies = [7822dependencies = [
7855 "async-std",
7856 "lazy_static",7823 "lazy_static",
7857 "log",7824 "log",
7858 "mick-jaeger",7825 "mick-jaeger",
7863 "sc-network",7830 "sc-network",
7864 "sp-core",7831 "sp-core",
7865 "thiserror",7832 "thiserror",
7833 "tokio",
7866]7834]
78677835
7868[[package]]7836[[package]]
7869name = "polkadot-node-metrics"7837name = "polkadot-node-metrics"
7870version = "0.9.33"7838version = "0.9.36"
7871source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7839source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7872dependencies = [7840dependencies = [
7873 "bs58",7841 "bs58",
7874 "futures 0.3.25",7842 "futures 0.3.25",
78867854
7887[[package]]7855[[package]]
7888name = "polkadot-node-network-protocol"7856name = "polkadot-node-network-protocol"
7889version = "0.9.33"7857version = "0.9.36"
7890source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7858source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7891dependencies = [7859dependencies = [
7892 "async-trait",7860 "async-trait",
7893 "derive_more",7861 "derive_more",
79097877
7910[[package]]7878[[package]]
7911name = "polkadot-node-primitives"7879name = "polkadot-node-primitives"
7912version = "0.9.33"7880version = "0.9.36"
7913source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7881source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7914dependencies = [7882dependencies = [
7915 "bounded-vec",7883 "bounded-vec",
7916 "futures 0.3.25",7884 "futures 0.3.25",
79317899
7932[[package]]7900[[package]]
7933name = "polkadot-node-subsystem"7901name = "polkadot-node-subsystem"
7934version = "0.9.33"7902version = "0.9.36"
7935source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7903source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7936dependencies = [7904dependencies = [
7937 "polkadot-node-jaeger",7905 "polkadot-node-jaeger",
7938 "polkadot-node-subsystem-types",7906 "polkadot-node-subsystem-types",
79417909
7942[[package]]7910[[package]]
7943name = "polkadot-node-subsystem-types"7911name = "polkadot-node-subsystem-types"
7944version = "0.9.33"7912version = "0.9.36"
7945source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7913source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7946dependencies = [7914dependencies = [
7947 "async-trait",7915 "async-trait",
7948 "derive_more",7916 "derive_more",
79647932
7965[[package]]7933[[package]]
7966name = "polkadot-node-subsystem-util"7934name = "polkadot-node-subsystem-util"
7967version = "0.9.33"7935version = "0.9.36"
7968source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7936source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
7969dependencies = [7937dependencies = [
7970 "async-trait",7938 "async-trait",
7971 "derive_more",7939 "derive_more",
7974 "itertools",7942 "itertools",
7975 "kvdb",7943 "kvdb",
7976 "lru",7944 "lru",
7977 "parity-db 0.4.2",7945 "parity-db",
7978 "parity-scale-codec 3.2.1",7946 "parity-scale-codec 3.2.1",
7979 "parity-util-mem",
7980 "parking_lot 0.11.2",7947 "parking_lot 0.11.2",
7981 "pin-project",7948 "pin-project",
7982 "polkadot-node-jaeger",7949 "polkadot-node-jaeger",
79977964
7998[[package]]7965[[package]]
7999name = "polkadot-overseer"7966name = "polkadot-overseer"
8000version = "0.9.33"7967version = "0.9.36"
8001source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7968source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8002dependencies = [7969dependencies = [
8003 "async-trait",7970 "async-trait",
8004 "futures 0.3.25",7971 "futures 0.3.25",
8005 "futures-timer",7972 "futures-timer",
8006 "lru",7973 "lru",
8007 "orchestra",7974 "orchestra",
8008 "parity-util-mem",
8009 "parking_lot 0.12.1",7975 "parking_lot 0.12.1",
8010 "polkadot-node-metrics",7976 "polkadot-node-metrics",
8011 "polkadot-node-network-protocol",7977 "polkadot-node-network-protocol",
8015 "sc-client-api",7981 "sc-client-api",
8016 "sp-api",7982 "sp-api",
8017 "sp-core",7983 "sp-core",
7984 "tikv-jemalloc-ctl",
8018 "tracing-gum",7985 "tracing-gum",
8019]7986]
80207987
8021[[package]]7988[[package]]
8022name = "polkadot-parachain"7989name = "polkadot-parachain"
8023version = "0.9.33"7990version = "0.9.36"
8024source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"7991source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8025dependencies = [7992dependencies = [
8026 "derive_more",7993 "derive_more",
8027 "frame-support",7994 "frame-support",
8028 "parity-scale-codec 3.2.1",7995 "parity-scale-codec 3.2.1",
8029 "parity-util-mem",
8030 "polkadot-core-primitives",7996 "polkadot-core-primitives",
8031 "scale-info",7997 "scale-info",
8032 "serde",7998 "serde",
80378003
8038[[package]]8004[[package]]
8039name = "polkadot-performance-test"8005name = "polkadot-performance-test"
8040version = "0.9.33"8006version = "0.9.36"
8041source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8007source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8042dependencies = [8008dependencies = [
8043 "env_logger",8009 "env_logger",
8044 "kusama-runtime",8010 "kusama-runtime",
80528018
8053[[package]]8019[[package]]
8054name = "polkadot-primitives"8020name = "polkadot-primitives"
8055version = "0.9.33"8021version = "0.9.36"
8056source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8022source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8057dependencies = [8023dependencies = [
8058 "bitvec 1.0.1",8024 "bitvec 1.0.1",
8059 "hex-literal",8025 "hex-literal",
8060 "parity-scale-codec 3.2.1",8026 "parity-scale-codec 3.2.1",
8061 "parity-util-mem",
8062 "polkadot-core-primitives",8027 "polkadot-core-primitives",
8063 "polkadot-parachain",8028 "polkadot-parachain",
8064 "scale-info",8029 "scale-info",
80798044
8080[[package]]8045[[package]]
8081name = "polkadot-rpc"8046name = "polkadot-rpc"
8082version = "0.9.33"8047version = "0.9.36"
8083source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8048source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8084dependencies = [8049dependencies = [
8085 "beefy-gadget",8050 "beefy-gadget",
8086 "beefy-gadget-rpc",8051 "beefy-gadget-rpc",
8087 "jsonrpsee",8052 "jsonrpsee",
8088 "pallet-mmr-rpc",8053 "mmr-rpc",
8089 "pallet-transaction-payment-rpc",8054 "pallet-transaction-payment-rpc",
8090 "polkadot-primitives",8055 "polkadot-primitives",
8091 "sc-chain-spec",8056 "sc-chain-spec",
81118076
8112[[package]]8077[[package]]
8113name = "polkadot-runtime"8078name = "polkadot-runtime"
8114version = "0.9.33"8079version = "0.9.36"
8115source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8080source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8116dependencies = [8081dependencies = [
8117 "beefy-primitives",
8118 "bitvec 1.0.1",8082 "bitvec 1.0.1",
8119 "frame-benchmarking",8083 "frame-benchmarking",
8120 "frame-election-provider-support",8084 "frame-election-provider-support",
8177 "smallvec",8141 "smallvec",
8178 "sp-api",8142 "sp-api",
8179 "sp-authority-discovery",8143 "sp-authority-discovery",
8144 "sp-beefy",
8180 "sp-block-builder",8145 "sp-block-builder",
8181 "sp-consensus-babe",8146 "sp-consensus-babe",
8182 "sp-core",8147 "sp-core",
82008165
8201[[package]]8166[[package]]
8202name = "polkadot-runtime-common"8167name = "polkadot-runtime-common"
8203version = "0.9.33"8168version = "0.9.36"
8204source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8169source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8205dependencies = [8170dependencies = [
8206 "beefy-primitives",
8207 "bitvec 1.0.1",8171 "bitvec 1.0.1",
8208 "frame-benchmarking",8172 "frame-benchmarking",
8209 "frame-election-provider-support",8173 "frame-election-provider-support",
8234 "serde_derive",8198 "serde_derive",
8235 "slot-range-helper",8199 "slot-range-helper",
8236 "sp-api",8200 "sp-api",
8201 "sp-beefy",
8237 "sp-core",8202 "sp-core",
8238 "sp-inherents",8203 "sp-inherents",
8239 "sp-io",8204 "sp-io",
82488213
8249[[package]]8214[[package]]
8250name = "polkadot-runtime-constants"8215name = "polkadot-runtime-constants"
8251version = "0.9.33"8216version = "0.9.36"
8252source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8217source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8253dependencies = [8218dependencies = [
8254 "frame-support",8219 "frame-support",
8255 "polkadot-primitives",8220 "polkadot-primitives",
82628227
8263[[package]]8228[[package]]
8264name = "polkadot-runtime-metrics"8229name = "polkadot-runtime-metrics"
8265version = "0.9.33"8230version = "0.9.36"
8266source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8231source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8267dependencies = [8232dependencies = [
8268 "bs58",8233 "bs58",
8269 "parity-scale-codec 3.2.1",8234 "parity-scale-codec 3.2.1",
82748239
8275[[package]]8240[[package]]
8276name = "polkadot-runtime-parachains"8241name = "polkadot-runtime-parachains"
8277version = "0.9.33"8242version = "0.9.36"
8278source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8243source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8279dependencies = [8244dependencies = [
8280 "bitflags",8245 "bitflags",
8281 "bitvec 1.0.1",8246 "bitvec 1.0.1",
83178282
8318[[package]]8283[[package]]
8319name = "polkadot-service"8284name = "polkadot-service"
8320version = "0.9.33"8285version = "0.9.36"
8321source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8286source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8322dependencies = [8287dependencies = [
8323 "async-trait",8288 "async-trait",
8324 "beefy-gadget",8289 "beefy-gadget",
8325 "beefy-primitives",
8326 "frame-support",8290 "frame-support",
8327 "frame-system-rpc-runtime-api",8291 "frame-system-rpc-runtime-api",
8328 "futures 0.3.25",8292 "futures 0.3.25",
8331 "kvdb",8295 "kvdb",
8332 "kvdb-rocksdb",8296 "kvdb-rocksdb",
8333 "lru",8297 "lru",
8298 "mmr-gadget",
8334 "pallet-babe",8299 "pallet-babe",
8335 "pallet-im-online",8300 "pallet-im-online",
8336 "pallet-staking",8301 "pallet-staking",
8337 "pallet-transaction-payment-rpc-runtime-api",8302 "pallet-transaction-payment-rpc-runtime-api",
8338 "parity-db 0.4.2",8303 "parity-db",
8339 "polkadot-approval-distribution",8304 "polkadot-approval-distribution",
8340 "polkadot-availability-bitfield-distribution",8305 "polkadot-availability-bitfield-distribution",
8341 "polkadot-availability-distribution",8306 "polkadot-availability-distribution",
8396 "serde_json",8361 "serde_json",
8397 "sp-api",8362 "sp-api",
8398 "sp-authority-discovery",8363 "sp-authority-discovery",
8364 "sp-beefy",
8399 "sp-block-builder",8365 "sp-block-builder",
8400 "sp-blockchain",8366 "sp-blockchain",
8401 "sp-consensus",8367 "sp-consensus",
8405 "sp-inherents",8371 "sp-inherents",
8406 "sp-io",8372 "sp-io",
8407 "sp-keystore",8373 "sp-keystore",
8374 "sp-mmr-primitives",
8408 "sp-offchain",8375 "sp-offchain",
8409 "sp-runtime",8376 "sp-runtime",
8410 "sp-session",8377 "sp-session",
84218388
8422[[package]]8389[[package]]
8423name = "polkadot-statement-distribution"8390name = "polkadot-statement-distribution"
8424version = "0.9.33"8391version = "0.9.36"
8425source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8392source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8426dependencies = [8393dependencies = [
8427 "arrayvec 0.5.2",8394 "arrayvec 0.5.2",
8428 "fatality",8395 "fatality",
84428409
8443[[package]]8410[[package]]
8444name = "polkadot-statement-table"8411name = "polkadot-statement-table"
8445version = "0.9.33"8412version = "0.9.36"
8446source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8413source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8447dependencies = [8414dependencies = [
8448 "parity-scale-codec 3.2.1",8415 "parity-scale-codec 3.2.1",
8449 "polkadot-primitives",8416 "polkadot-primitives",
84528419
8453[[package]]8420[[package]]
8454name = "polkadot-test-runtime"8421name = "polkadot-test-runtime"
8455version = "0.9.33"8422version = "0.9.36"
8456source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8423source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8457dependencies = [8424dependencies = [
8458 "beefy-primitives",
8459 "bitvec 1.0.1",8425 "bitvec 1.0.1",
8460 "frame-election-provider-support",8426 "frame-election-provider-support",
8461 "frame-executive",8427 "frame-executive",
8491 "smallvec",8457 "smallvec",
8492 "sp-api",8458 "sp-api",
8493 "sp-authority-discovery",8459 "sp-authority-discovery",
8460 "sp-beefy",
8494 "sp-block-builder",8461 "sp-block-builder",
8495 "sp-consensus-babe",8462 "sp-consensus-babe",
8496 "sp-core",8463 "sp-core",
85138480
8514[[package]]8481[[package]]
8515name = "polkadot-test-service"8482name = "polkadot-test-service"
8516version = "0.9.33"8483version = "0.9.36"
8517source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"8484source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
8518dependencies = [8485dependencies = [
8519 "frame-benchmarking",8486 "frame-benchmarking",
8520 "frame-system",8487 "frame-system",
85678534
8568[[package]]8535[[package]]
8569name = "polling"8536name = "polling"
8570version = "2.5.1"8537version = "2.5.2"
8571source = "registry+https://github.com/rust-lang/crates.io-index"8538source = "registry+https://github.com/rust-lang/crates.io-index"
8572checksum = "166ca89eb77fd403230b9c156612965a81e094ec6ec3aa13663d4c8b113fa748"8539checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6"
8573dependencies = [8540dependencies = [
8574 "autocfg",8541 "autocfg",
8575 "cfg-if",8542 "cfg-if",
86518618
8652[[package]]8619[[package]]
8653name = "prettyplease"8620name = "prettyplease"
8654version = "0.1.21"8621version = "0.1.22"
8655source = "registry+https://github.com/rust-lang/crates.io-index"8622source = "registry+https://github.com/rust-lang/crates.io-index"
8656checksum = "c142c0e46b57171fe0c528bee8c5b7569e80f0c17e377cd0e30ea57dbc11bb51"8623checksum = "2c8992a85d8e93a28bdf76137db888d3874e3b230dee5ed8bebac4c9f7617773"
8657dependencies = [8624dependencies = [
8658 "proc-macro2",8625 "proc-macro2",
8659 "syn",8626 "syn",
87398706
8740[[package]]8707[[package]]
8741name = "proc-macro2"8708name = "proc-macro2"
8742version = "1.0.47"8709version = "1.0.49"
8743source = "registry+https://github.com/rust-lang/crates.io-index"8710source = "registry+https://github.com/rust-lang/crates.io-index"
8744checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"8711checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5"
8745dependencies = [8712dependencies = [
8746 "unicode-ident",8713 "unicode-ident",
8747]8714]
87858752
8786[[package]]8753[[package]]
8787name = "prost"8754name = "prost"
8788version = "0.11.3"8755version = "0.11.5"
8789source = "registry+https://github.com/rust-lang/crates.io-index"8756source = "registry+https://github.com/rust-lang/crates.io-index"
8790checksum = "c0b18e655c21ff5ac2084a5ad0611e827b3f92badf79f4910b5a5c58f4d87ff0"8757checksum = "c01db6702aa05baa3f57dec92b8eeeeb4cb19e894e73996b32a4093289e54592"
8791dependencies = [8758dependencies = [
8792 "bytes",8759 "bytes",
8793 "prost-derive",8760 "prost-derive",
8794]8761]
87958762
8796[[package]]8763[[package]]
8797name = "prost-build"8764name = "prost-build"
8798version = "0.11.3"8765version = "0.11.5"
8799source = "registry+https://github.com/rust-lang/crates.io-index"8766source = "registry+https://github.com/rust-lang/crates.io-index"
8800checksum = "e330bf1316db56b12c2bcfa399e8edddd4821965ea25ddb2c134b610b1c1c604"8767checksum = "cb5320c680de74ba083512704acb90fe00f28f79207286a848e730c45dd73ed6"
8801dependencies = [8768dependencies = [
8802 "bytes",8769 "bytes",
8803 "heck",8770 "heck",
88308797
8831[[package]]8798[[package]]
8832name = "prost-derive"8799name = "prost-derive"
8833version = "0.11.2"8800version = "0.11.5"
8834source = "registry+https://github.com/rust-lang/crates.io-index"8801source = "registry+https://github.com/rust-lang/crates.io-index"
8835checksum = "164ae68b6587001ca506d3bf7f1000bfa248d0e1217b618108fba4ec1d0cc306"8802checksum = "c8842bad1a5419bca14eac663ba798f6bc19c413c2fdceb5f3ba3b0932d96720"
8836dependencies = [8803dependencies = [
8837 "anyhow",8804 "anyhow",
8838 "itertools",8805 "itertools",
88438810
8844[[package]]8811[[package]]
8845name = "prost-types"8812name = "prost-types"
8846version = "0.11.2"8813version = "0.11.5"
8847source = "registry+https://github.com/rust-lang/crates.io-index"8814source = "registry+https://github.com/rust-lang/crates.io-index"
8848checksum = "747761bc3dc48f9a34553bf65605cf6cb6288ba219f3450b4275dbd81539551a"8815checksum = "017f79637768cde62820bc2d4fe0e45daaa027755c323ad077767c6c5f173091"
8849dependencies = [8816dependencies = [
8850 "bytes",8817 "bytes",
8851 "prost",8818 "prost",
88628829
8863[[package]]8830[[package]]
8864name = "quartz-runtime"8831name = "quartz-runtime"
8865version = "0.9.33"8832version = "0.9.36"
8866dependencies = [8833dependencies = [
8867 "app-promotion-rpc",8834 "app-promotion-rpc",
8868 "cumulus-pallet-aura-ext",8835 "cumulus-pallet-aura-ext",
89768943
8977[[package]]8944[[package]]
8978name = "quote"8945name = "quote"
8979version = "1.0.21"8946version = "1.0.23"
8980source = "registry+https://github.com/rust-lang/crates.io-index"8947source = "registry+https://github.com/rust-lang/crates.io-index"
8981checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"8948checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
8982dependencies = [8949dependencies = [
8983 "proc-macro2",8950 "proc-macro2",
8984]8951]
91039070
9104[[package]]9071[[package]]
9105name = "rayon"9072name = "rayon"
9106version = "1.6.0"9073version = "1.6.1"
9107source = "registry+https://github.com/rust-lang/crates.io-index"9074source = "registry+https://github.com/rust-lang/crates.io-index"
9108checksum = "1e060280438193c554f654141c9ea9417886713b7acd75974c85b18a69a88e0b"9075checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7"
9109dependencies = [9076dependencies = [
9110 "crossbeam-deque",
9111 "either",9077 "either",
9112 "rayon-core",9078 "rayon-core",
9113]9079]
91599125
9160[[package]]9126[[package]]
9161name = "ref-cast"9127name = "ref-cast"
9162version = "1.0.13"9128version = "1.0.14"
9163source = "registry+https://github.com/rust-lang/crates.io-index"9129source = "registry+https://github.com/rust-lang/crates.io-index"
9164checksum = "53b15debb4f9d60d767cd8ca9ef7abb2452922f3214671ff052defc7f3502c44"9130checksum = "8c78fb8c9293bcd48ef6fce7b4ca950ceaf21210de6e105a883ee280c0f7b9ed"
9165dependencies = [9131dependencies = [
9166 "ref-cast-impl",9132 "ref-cast-impl",
9167]9133]
91689134
9169[[package]]9135[[package]]
9170name = "ref-cast-impl"9136name = "ref-cast-impl"
9171version = "1.0.13"9137version = "1.0.14"
9172source = "registry+https://github.com/rust-lang/crates.io-index"9138source = "registry+https://github.com/rust-lang/crates.io-index"
9173checksum = "abfa8511e9e94fd3de6585a3d3cd00e01ed556dc9814829280af0e8dc72a8f36"9139checksum = "9f9c0c92af03644e4806106281fe2e068ac5bc0ae74a707266d06ea27bccee5f"
9174dependencies = [9140dependencies = [
9175 "proc-macro2",9141 "proc-macro2",
9176 "quote",9142 "quote",
9216checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"9182checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
92179183
9218[[package]]9184[[package]]
9219name = "remote-externalities"
9220version = "0.10.0-dev"
9221source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"
9222dependencies = [
9223 "env_logger",
9224 "log",
9225 "parity-scale-codec 3.2.1",
9226 "serde",
9227 "serde_json",
9228 "sp-core",
9229 "sp-io",
9230 "sp-runtime",
9231 "sp-version",
9232 "substrate-rpc-client",
9233]
9234
9235[[package]]
9236name = "remove_dir_all"9185name = "remove_dir_all"
9237version = "0.5.3"9186version = "0.5.3"
9238source = "registry+https://github.com/rust-lang/crates.io-index"9187source = "registry+https://github.com/rust-lang/crates.io-index"
93429291
9343[[package]]9292[[package]]
9344name = "rococo-runtime"9293name = "rococo-runtime"
9345version = "0.9.33"9294version = "0.9.36"
9346source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"9295source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
9347dependencies = [9296dependencies = [
9348 "beefy-merkle-tree",9297 "beefy-merkle-tree",
9349 "beefy-primitives",
9350 "frame-benchmarking",9298 "frame-benchmarking",
9351 "frame-executive",9299 "frame-executive",
9352 "frame-support",9300 "frame-support",
9366 "pallet-collective",9314 "pallet-collective",
9367 "pallet-democracy",9315 "pallet-democracy",
9368 "pallet-elections-phragmen",9316 "pallet-elections-phragmen",
9369 "pallet-gilt",
9370 "pallet-grandpa",9317 "pallet-grandpa",
9371 "pallet-identity",9318 "pallet-identity",
9372 "pallet-im-online",9319 "pallet-im-online",
9373 "pallet-indices",9320 "pallet-indices",
9374 "pallet-membership",9321 "pallet-membership",
9375 "pallet-mmr",9322 "pallet-mmr",
9376 "pallet-multisig",9323 "pallet-multisig",
9324 "pallet-nis",
9377 "pallet-offences",9325 "pallet-offences",
9378 "pallet-preimage",9326 "pallet-preimage",
9379 "pallet-proxy",9327 "pallet-proxy",
9405 "smallvec",9353 "smallvec",
9406 "sp-api",9354 "sp-api",
9407 "sp-authority-discovery",9355 "sp-authority-discovery",
9356 "sp-beefy",
9408 "sp-block-builder",9357 "sp-block-builder",
9409 "sp-consensus-babe",9358 "sp-consensus-babe",
9410 "sp-core",9359 "sp-core",
94279376
9428[[package]]9377[[package]]
9429name = "rococo-runtime-constants"9378name = "rococo-runtime-constants"
9430version = "0.9.33"9379version = "0.9.36"
9431source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"9380source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
9432dependencies = [9381dependencies = [
9433 "frame-support",9382 "frame-support",
9434 "polkadot-primitives",9383 "polkadot-primitives",
9508source = "registry+https://github.com/rust-lang/crates.io-index"9457source = "registry+https://github.com/rust-lang/crates.io-index"
9509checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"9458checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
9510dependencies = [9459dependencies = [
9511 "semver 1.0.14",9460 "semver 1.0.16",
9512]9461]
95139462
9514[[package]]9463[[package]]
9535 "errno",9484 "errno",
9536 "io-lifetimes 1.0.3",9485 "io-lifetimes 1.0.3",
9537 "libc",9486 "libc",
9538 "linux-raw-sys 0.1.3",9487 "linux-raw-sys 0.1.4",
9539 "windows-sys 0.42.0",9488 "windows-sys 0.42.0",
9540]9489]
95419490
95749523
9575[[package]]9524[[package]]
9576name = "rustversion"9525name = "rustversion"
9577version = "1.0.9"9526version = "1.0.11"
9578source = "registry+https://github.com/rust-lang/crates.io-index"9527source = "registry+https://github.com/rust-lang/crates.io-index"
9579checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8"9528checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70"
95809529
9581[[package]]9530[[package]]
9582name = "rw-stream-sink"9531name = "rw-stream-sink"
95919540
9592[[package]]9541[[package]]
9593name = "ryu"9542name = "ryu"
9594version = "1.0.11"9543version = "1.0.12"
9595source = "registry+https://github.com/rust-lang/crates.io-index"9544source = "registry+https://github.com/rust-lang/crates.io-index"
9596checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09"9545checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
95979546
9598[[package]]9547[[package]]
9599name = "safe-mix"9548name = "safe-mix"
9616[[package]]9565[[package]]
9617name = "sc-allocator"9566name = "sc-allocator"
9618version = "4.1.0-dev"9567version = "4.1.0-dev"
9619source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9568source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9620dependencies = [9569dependencies = [
9621 "log",9570 "log",
9622 "sp-core",9571 "sp-core",
9627[[package]]9576[[package]]
9628name = "sc-authority-discovery"9577name = "sc-authority-discovery"
9629version = "0.10.0-dev"9578version = "0.10.0-dev"
9630source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9579source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9631dependencies = [9580dependencies = [
9632 "async-trait",9581 "async-trait",
9633 "futures 0.3.25",9582 "futures 0.3.25",
9654[[package]]9603[[package]]
9655name = "sc-basic-authorship"9604name = "sc-basic-authorship"
9656version = "0.10.0-dev"9605version = "0.10.0-dev"
9657source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9606source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9658dependencies = [9607dependencies = [
9659 "futures 0.3.25",9608 "futures 0.3.25",
9660 "futures-timer",9609 "futures-timer",
9677[[package]]9626[[package]]
9678name = "sc-block-builder"9627name = "sc-block-builder"
9679version = "0.10.0-dev"9628version = "0.10.0-dev"
9680source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9629source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9681dependencies = [9630dependencies = [
9682 "parity-scale-codec 3.2.1",9631 "parity-scale-codec 3.2.1",
9683 "sc-client-api",9632 "sc-client-api",
9693[[package]]9642[[package]]
9694name = "sc-chain-spec"9643name = "sc-chain-spec"
9695version = "4.0.0-dev"9644version = "4.0.0-dev"
9696source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9645source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9697dependencies = [9646dependencies = [
9698 "impl-trait-for-tuples",9647 "impl-trait-for-tuples",
9699 "memmap2",9648 "memmap2",
9710[[package]]9659[[package]]
9711name = "sc-chain-spec-derive"9660name = "sc-chain-spec-derive"
9712version = "4.0.0-dev"9661version = "4.0.0-dev"
9713source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9662source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9714dependencies = [9663dependencies = [
9715 "proc-macro-crate",9664 "proc-macro-crate",
9716 "proc-macro2",9665 "proc-macro2",
9721[[package]]9670[[package]]
9722name = "sc-cli"9671name = "sc-cli"
9723version = "0.10.0-dev"9672version = "0.10.0-dev"
9724source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9673source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9725dependencies = [9674dependencies = [
9726 "array-bytes",9675 "array-bytes 4.2.0",
9727 "chrono",9676 "chrono",
9728 "clap",9677 "clap",
9729 "fdlimit",9678 "fdlimit",
9761[[package]]9710[[package]]
9762name = "sc-client-api"9711name = "sc-client-api"
9763version = "4.0.0-dev"9712version = "4.0.0-dev"
9764source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9713source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9765dependencies = [9714dependencies = [
9766 "fnv",9715 "fnv",
9767 "futures 0.3.25",9716 "futures 0.3.25",
9789[[package]]9738[[package]]
9790name = "sc-client-db"9739name = "sc-client-db"
9791version = "0.10.0-dev"9740version = "0.10.0-dev"
9792source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9741source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9793dependencies = [9742dependencies = [
9794 "hash-db",9743 "hash-db",
9795 "kvdb",9744 "kvdb",
9796 "kvdb-memorydb",9745 "kvdb-memorydb",
9797 "kvdb-rocksdb",9746 "kvdb-rocksdb",
9798 "linked-hash-map",9747 "linked-hash-map",
9799 "log",9748 "log",
9800 "parity-db 0.4.2",9749 "parity-db",
9801 "parity-scale-codec 3.2.1",9750 "parity-scale-codec 3.2.1",
9802 "parking_lot 0.12.1",9751 "parking_lot 0.12.1",
9803 "sc-client-api",9752 "sc-client-api",
9814[[package]]9763[[package]]
9815name = "sc-consensus"9764name = "sc-consensus"
9816version = "0.10.0-dev"9765version = "0.10.0-dev"
9817source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9766source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9818dependencies = [9767dependencies = [
9819 "async-trait",9768 "async-trait",
9820 "futures 0.3.25",9769 "futures 0.3.25",
9821 "futures-timer",9770 "futures-timer",
9822 "libp2p",9771 "libp2p",
9823 "log",9772 "log",
9773 "mockall",
9824 "parking_lot 0.12.1",9774 "parking_lot 0.12.1",
9825 "sc-client-api",9775 "sc-client-api",
9826 "sc-utils",9776 "sc-utils",
9838[[package]]9788[[package]]
9839name = "sc-consensus-aura"9789name = "sc-consensus-aura"
9840version = "0.10.0-dev"9790version = "0.10.0-dev"
9841source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9791source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9842dependencies = [9792dependencies = [
9843 "async-trait",9793 "async-trait",
9844 "futures 0.3.25",9794 "futures 0.3.25",
9867[[package]]9817[[package]]
9868name = "sc-consensus-babe"9818name = "sc-consensus-babe"
9869version = "0.10.0-dev"9819version = "0.10.0-dev"
9870source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9820source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9871dependencies = [9821dependencies = [
9872 "async-trait",9822 "async-trait",
9873 "fork-tree",9823 "fork-tree",
9908[[package]]9858[[package]]
9909name = "sc-consensus-babe-rpc"9859name = "sc-consensus-babe-rpc"
9910version = "0.10.0-dev"9860version = "0.10.0-dev"
9911source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9861source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9912dependencies = [9862dependencies = [
9913 "futures 0.3.25",9863 "futures 0.3.25",
9914 "jsonrpsee",9864 "jsonrpsee",
9930[[package]]9880[[package]]
9931name = "sc-consensus-epochs"9881name = "sc-consensus-epochs"
9932version = "0.10.0-dev"9882version = "0.10.0-dev"
9933source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9883source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9934dependencies = [9884dependencies = [
9935 "fork-tree",9885 "fork-tree",
9936 "parity-scale-codec 3.2.1",9886 "parity-scale-codec 3.2.1",
9943[[package]]9893[[package]]
9944name = "sc-consensus-manual-seal"9894name = "sc-consensus-manual-seal"
9945version = "0.10.0-dev"9895version = "0.10.0-dev"
9946source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9896source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9947dependencies = [9897dependencies = [
9948 "assert_matches",9898 "assert_matches",
9949 "async-trait",9899 "async-trait",
9977[[package]]9927[[package]]
9978name = "sc-consensus-slots"9928name = "sc-consensus-slots"
9979version = "0.10.0-dev"9929version = "0.10.0-dev"
9980source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9930source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
9981dependencies = [9931dependencies = [
9982 "async-trait",9932 "async-trait",
9983 "futures 0.3.25",9933 "futures 0.3.25",
10001[[package]]9951[[package]]
10002name = "sc-executor"9952name = "sc-executor"
10003version = "0.10.0-dev"9953version = "0.10.0-dev"
10004source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9954source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10005dependencies = [9955dependencies = [
10006 "lazy_static",
10007 "lru",9956 "lru",
10008 "parity-scale-codec 3.2.1",9957 "parity-scale-codec 3.2.1",
10009 "parking_lot 0.12.1",9958 "parking_lot 0.12.1",
10012 "sc-executor-wasmtime",9961 "sc-executor-wasmtime",
10013 "sp-api",9962 "sp-api",
10014 "sp-core",9963 "sp-core",
10015 "sp-core-hashing-proc-macro",
10016 "sp-externalities",9964 "sp-externalities",
10017 "sp-io",9965 "sp-io",
10018 "sp-panic-handler",9966 "sp-panic-handler",
10027[[package]]9975[[package]]
10028name = "sc-executor-common"9976name = "sc-executor-common"
10029version = "0.10.0-dev"9977version = "0.10.0-dev"
10030source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9978source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10031dependencies = [9979dependencies = [
10032 "environmental",
10033 "parity-scale-codec 3.2.1",
10034 "sc-allocator",9980 "sc-allocator",
10035 "sp-maybe-compressed-blob",9981 "sp-maybe-compressed-blob",
10036 "sp-sandbox",
10037 "sp-wasm-interface",9982 "sp-wasm-interface",
10038 "thiserror",9983 "thiserror",
10039 "wasm-instrument",9984 "wasm-instrument",
10043[[package]]9988[[package]]
10044name = "sc-executor-wasmi"9989name = "sc-executor-wasmi"
10045version = "0.10.0-dev"9990version = "0.10.0-dev"
10046source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"9991source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10047dependencies = [9992dependencies = [
10048 "log",9993 "log",
10049 "parity-scale-codec 3.2.1",
10050 "sc-allocator",9994 "sc-allocator",
10051 "sc-executor-common",9995 "sc-executor-common",
10052 "sp-runtime-interface",9996 "sp-runtime-interface",
10053 "sp-sandbox",
10054 "sp-wasm-interface",9997 "sp-wasm-interface",
10055 "wasmi",9998 "wasmi",
10056]9999]
1005710000
10058[[package]]10001[[package]]
10059name = "sc-executor-wasmtime"10002name = "sc-executor-wasmtime"
10060version = "0.10.0-dev"10003version = "0.10.0-dev"
10061source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10004source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10062dependencies = [10005dependencies = [
10063 "cfg-if",10006 "cfg-if",
10064 "libc",10007 "libc",
10065 "log",10008 "log",
10066 "once_cell",10009 "once_cell",
10067 "parity-scale-codec 3.2.1",
10068 "parity-wasm",
10069 "rustix 0.35.13",10010 "rustix 0.35.13",
10070 "sc-allocator",10011 "sc-allocator",
10071 "sc-executor-common",10012 "sc-executor-common",
10072 "sp-runtime-interface",10013 "sp-runtime-interface",
10073 "sp-sandbox",
10074 "sp-wasm-interface",10014 "sp-wasm-interface",
10075 "wasmtime",10015 "wasmtime",
10076]10016]
1007710017
10078[[package]]10018[[package]]
10079name = "sc-finality-grandpa"10019name = "sc-finality-grandpa"
10080version = "0.10.0-dev"10020version = "0.10.0-dev"
10081source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10021source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10082dependencies = [10022dependencies = [
10083 "ahash",10023 "ahash",
10084 "array-bytes",10024 "array-bytes 4.2.0",
10085 "async-trait",10025 "async-trait",
10086 "dyn-clone",10026 "dyn-clone",
10087 "finality-grandpa",10027 "finality-grandpa",
10119[[package]]10059[[package]]
10120name = "sc-finality-grandpa-rpc"10060name = "sc-finality-grandpa-rpc"
10121version = "0.10.0-dev"10061version = "0.10.0-dev"
10122source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10062source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10123dependencies = [10063dependencies = [
10124 "finality-grandpa",10064 "finality-grandpa",
10125 "futures 0.3.25",10065 "futures 0.3.25",
10140[[package]]10080[[package]]
10141name = "sc-informant"10081name = "sc-informant"
10142version = "0.10.0-dev"10082version = "0.10.0-dev"
10143source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10083source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10144dependencies = [10084dependencies = [
10145 "ansi_term",10085 "ansi_term",
10146 "futures 0.3.25",10086 "futures 0.3.25",
10147 "futures-timer",10087 "futures-timer",
10148 "log",10088 "log",
10149 "parity-util-mem",
10150 "sc-client-api",10089 "sc-client-api",
10151 "sc-network-common",10090 "sc-network-common",
10152 "sc-transaction-pool-api",10091 "sc-transaction-pool-api",
10157[[package]]10096[[package]]
10158name = "sc-keystore"10097name = "sc-keystore"
10159version = "4.0.0-dev"10098version = "4.0.0-dev"
10160source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10099source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10161dependencies = [10100dependencies = [
10162 "array-bytes",10101 "array-bytes 4.2.0",
10163 "async-trait",10102 "async-trait",
10164 "parking_lot 0.12.1",10103 "parking_lot 0.12.1",
10165 "serde_json",10104 "serde_json",
10172[[package]]10111[[package]]
10173name = "sc-network"10112name = "sc-network"
10174version = "0.10.0-dev"10113version = "0.10.0-dev"
10175source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10114source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10176dependencies = [10115dependencies = [
10177 "array-bytes",10116 "array-bytes 4.2.0",
10178 "async-trait",10117 "async-trait",
10179 "asynchronous-codec",10118 "asynchronous-codec",
10180 "bitflags",10119 "bitflags",
10219[[package]]10158[[package]]
10220name = "sc-network-bitswap"10159name = "sc-network-bitswap"
10221version = "0.10.0-dev"10160version = "0.10.0-dev"
10222source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10161source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10223dependencies = [10162dependencies = [
10224 "cid",10163 "cid",
10225 "futures 0.3.25",10164 "futures 0.3.25",
10239[[package]]10178[[package]]
10240name = "sc-network-common"10179name = "sc-network-common"
10241version = "0.10.0-dev"10180version = "0.10.0-dev"
10242source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10181source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10243dependencies = [10182dependencies = [
10244 "async-trait",10183 "async-trait",
10245 "bitflags",10184 "bitflags",
10265[[package]]10204[[package]]
10266name = "sc-network-gossip"10205name = "sc-network-gossip"
10267version = "0.10.0-dev"10206version = "0.10.0-dev"
10268source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10207source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10269dependencies = [10208dependencies = [
10270 "ahash",10209 "ahash",
10271 "futures 0.3.25",10210 "futures 0.3.25",
10283[[package]]10222[[package]]
10284name = "sc-network-light"10223name = "sc-network-light"
10285version = "0.10.0-dev"10224version = "0.10.0-dev"
10286source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10225source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10287dependencies = [10226dependencies = [
10288 "array-bytes",10227 "array-bytes 4.2.0",
10289 "futures 0.3.25",10228 "futures 0.3.25",
10290 "libp2p",10229 "libp2p",
10291 "log",10230 "log",
10304[[package]]10243[[package]]
10305name = "sc-network-sync"10244name = "sc-network-sync"
10306version = "0.10.0-dev"10245version = "0.10.0-dev"
10307source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10246source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10308dependencies = [10247dependencies = [
10309 "array-bytes",10248 "array-bytes 4.2.0",
10249 "async-trait",
10310 "fork-tree",10250 "fork-tree",
10311 "futures 0.3.25",10251 "futures 0.3.25",
10312 "libp2p",10252 "libp2p",
10328 "sp-core",10268 "sp-core",
10329 "sp-finality-grandpa",10269 "sp-finality-grandpa",
10330 "sp-runtime",10270 "sp-runtime",
10271 "substrate-prometheus-endpoint",
10331 "thiserror",10272 "thiserror",
10332]10273]
1033310274
10334[[package]]10275[[package]]
10335name = "sc-network-transactions"10276name = "sc-network-transactions"
10336version = "0.10.0-dev"10277version = "0.10.0-dev"
10337source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10278source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10338dependencies = [10279dependencies = [
10339 "array-bytes",10280 "array-bytes 4.2.0",
10340 "futures 0.3.25",10281 "futures 0.3.25",
10341 "hex",10282 "hex",
10342 "libp2p",10283 "libp2p",
10353[[package]]10294[[package]]
10354name = "sc-offchain"10295name = "sc-offchain"
10355version = "4.0.0-dev"10296version = "4.0.0-dev"
10356source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10297source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10357dependencies = [10298dependencies = [
10358 "array-bytes",10299 "array-bytes 4.2.0",
10359 "bytes",10300 "bytes",
10360 "fnv",10301 "fnv",
10361 "futures 0.3.25",10302 "futures 0.3.25",
10383[[package]]10324[[package]]
10384name = "sc-peerset"10325name = "sc-peerset"
10385version = "4.0.0-dev"10326version = "4.0.0-dev"
10386source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10327source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10387dependencies = [10328dependencies = [
10388 "futures 0.3.25",10329 "futures 0.3.25",
10389 "libp2p",10330 "libp2p",
10396[[package]]10337[[package]]
10397name = "sc-proposer-metrics"10338name = "sc-proposer-metrics"
10398version = "0.10.0-dev"10339version = "0.10.0-dev"
10399source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10340source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10400dependencies = [10341dependencies = [
10401 "log",10342 "log",
10402 "substrate-prometheus-endpoint",10343 "substrate-prometheus-endpoint",
10405[[package]]10346[[package]]
10406name = "sc-rpc"10347name = "sc-rpc"
10407version = "4.0.0-dev"10348version = "4.0.0-dev"
10408source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10349source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10409dependencies = [10350dependencies = [
10410 "futures 0.3.25",10351 "futures 0.3.25",
10411 "hash-db",10352 "hash-db",
10435[[package]]10376[[package]]
10436name = "sc-rpc-api"10377name = "sc-rpc-api"
10437version = "0.10.0-dev"10378version = "0.10.0-dev"
10438source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10379source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10439dependencies = [10380dependencies = [
10440 "futures 0.3.25",10381 "futures 0.3.25",
10441 "jsonrpsee",10382 "jsonrpsee",
10458[[package]]10399[[package]]
10459name = "sc-rpc-server"10400name = "sc-rpc-server"
10460version = "4.0.0-dev"10401version = "4.0.0-dev"
10461source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10402source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10462dependencies = [10403dependencies = [
10463 "futures 0.3.25",10404 "futures 0.3.25",
10405 "http",
10464 "jsonrpsee",10406 "jsonrpsee",
10465 "log",10407 "log",
10466 "serde_json",10408 "serde_json",
10467 "substrate-prometheus-endpoint",10409 "substrate-prometheus-endpoint",
10468 "tokio",10410 "tokio",
10411 "tower",
10412 "tower-http",
10469]10413]
1047010414
10471[[package]]10415[[package]]
10472name = "sc-rpc-spec-v2"10416name = "sc-rpc-spec-v2"
10473version = "0.10.0-dev"10417version = "0.10.0-dev"
10474source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10418source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10475dependencies = [10419dependencies = [
10476 "futures 0.3.25",10420 "futures 0.3.25",
10477 "hex",10421 "hex",
10490[[package]]10434[[package]]
10491name = "sc-service"10435name = "sc-service"
10492version = "0.10.0-dev"10436version = "0.10.0-dev"
10493source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10437source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10494dependencies = [10438dependencies = [
10495 "async-trait",10439 "async-trait",
10496 "directories",10440 "directories",
10501 "jsonrpsee",10445 "jsonrpsee",
10502 "log",10446 "log",
10503 "parity-scale-codec 3.2.1",10447 "parity-scale-codec 3.2.1",
10504 "parity-util-mem",
10505 "parking_lot 0.12.1",10448 "parking_lot 0.12.1",
10506 "pin-project",10449 "pin-project",
10507 "rand 0.7.3",10450 "rand 0.7.3",
10561[[package]]10504[[package]]
10562name = "sc-state-db"10505name = "sc-state-db"
10563version = "0.10.0-dev"10506version = "0.10.0-dev"
10564source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10507source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10565dependencies = [10508dependencies = [
10566 "log",10509 "log",
10567 "parity-scale-codec 3.2.1",10510 "parity-scale-codec 3.2.1",
10568 "parity-util-mem",
10569 "parity-util-mem-derive",
10570 "parking_lot 0.12.1",10511 "parking_lot 0.12.1",
10571 "sc-client-api",10512 "sc-client-api",
10572 "sp-core",10513 "sp-core",
10575[[package]]10516[[package]]
10576name = "sc-sync-state-rpc"10517name = "sc-sync-state-rpc"
10577version = "0.10.0-dev"10518version = "0.10.0-dev"
10578source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10519source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10579dependencies = [10520dependencies = [
10580 "jsonrpsee",10521 "jsonrpsee",
10581 "parity-scale-codec 3.2.1",10522 "parity-scale-codec 3.2.1",
10594[[package]]10535[[package]]
10595name = "sc-sysinfo"10536name = "sc-sysinfo"
10596version = "6.0.0-dev"10537version = "6.0.0-dev"
10597source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10538source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10598dependencies = [10539dependencies = [
10599 "futures 0.3.25",10540 "futures 0.3.25",
10600 "libc",10541 "libc",
10613[[package]]10554[[package]]
10614name = "sc-telemetry"10555name = "sc-telemetry"
10615version = "4.0.0-dev"10556version = "4.0.0-dev"
10616source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10557source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10617dependencies = [10558dependencies = [
10618 "chrono",10559 "chrono",
10619 "futures 0.3.25",10560 "futures 0.3.25",
10631[[package]]10572[[package]]
10632name = "sc-tracing"10573name = "sc-tracing"
10633version = "4.0.0-dev"10574version = "4.0.0-dev"
10634source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10575source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10635dependencies = [10576dependencies = [
10636 "ansi_term",10577 "ansi_term",
10637 "atty",10578 "atty",
10662[[package]]10603[[package]]
10663name = "sc-tracing-proc-macro"10604name = "sc-tracing-proc-macro"
10664version = "4.0.0-dev"10605version = "4.0.0-dev"
10665source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10606source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10666dependencies = [10607dependencies = [
10667 "proc-macro-crate",10608 "proc-macro-crate",
10668 "proc-macro2",10609 "proc-macro2",
10673[[package]]10614[[package]]
10674name = "sc-transaction-pool"10615name = "sc-transaction-pool"
10675version = "4.0.0-dev"10616version = "4.0.0-dev"
10676source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10617source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10677dependencies = [10618dependencies = [
10678 "async-trait",10619 "async-trait",
10679 "futures 0.3.25",10620 "futures 0.3.25",
10680 "futures-timer",10621 "futures-timer",
10681 "linked-hash-map",10622 "linked-hash-map",
10682 "log",10623 "log",
10683 "parity-scale-codec 3.2.1",10624 "parity-scale-codec 3.2.1",
10684 "parity-util-mem",
10685 "parking_lot 0.12.1",10625 "parking_lot 0.12.1",
10686 "sc-client-api",10626 "sc-client-api",
10687 "sc-transaction-pool-api",10627 "sc-transaction-pool-api",
10700[[package]]10640[[package]]
10701name = "sc-transaction-pool-api"10641name = "sc-transaction-pool-api"
10702version = "4.0.0-dev"10642version = "4.0.0-dev"
10703source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10643source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10704dependencies = [10644dependencies = [
10705 "async-trait",10645 "async-trait",
10706 "futures 0.3.25",10646 "futures 0.3.25",
10714[[package]]10654[[package]]
10715name = "sc-utils"10655name = "sc-utils"
10716version = "4.0.0-dev"10656version = "4.0.0-dev"
10717source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"10657source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
10718dependencies = [10658dependencies = [
10719 "futures 0.3.25",10659 "futures 0.3.25",
10720 "futures-timer",10660 "futures-timer",
1072610666
10727[[package]]10667[[package]]
10728name = "scale-info"10668name = "scale-info"
10729version = "2.3.0"10669version = "2.3.1"
10730source = "registry+https://github.com/rust-lang/crates.io-index"10670source = "registry+https://github.com/rust-lang/crates.io-index"
10731checksum = "88d8a765117b237ef233705cc2cc4c6a27fccd46eea6ef0c8c6dae5f3ef407f8"10671checksum = "001cf62ece89779fd16105b5f515ad0e5cedcd5440d3dd806bb067978e7c3608"
10732dependencies = [10672dependencies = [
10733 "bitvec 1.0.1",10673 "bitvec 1.0.1",
10734 "cfg-if",10674 "cfg-if",
1074010680
10741[[package]]10681[[package]]
10742name = "scale-info-derive"10682name = "scale-info-derive"
10743version = "2.3.0"10683version = "2.3.1"
10744source = "registry+https://github.com/rust-lang/crates.io-index"10684source = "registry+https://github.com/rust-lang/crates.io-index"
10745checksum = "cdcd47b380d8c4541044e341dcd9475f55ba37ddc50c908d945fc036a8642496"10685checksum = "303959cf613a6f6efd19ed4b4ad5bf79966a13352716299ad532cfb115f4205c"
10746dependencies = [10686dependencies = [
10747 "proc-macro-crate",10687 "proc-macro-crate",
10748 "proc-macro2",10688 "proc-macro2",
1078610726
10787[[package]]10727[[package]]
10788name = "scratch"10728name = "scratch"
10789version = "1.0.2"10729version = "1.0.3"
10790source = "registry+https://github.com/rust-lang/crates.io-index"10730source = "registry+https://github.com/rust-lang/crates.io-index"
10791checksum = "9c8132065adcfd6e02db789d9285a0deb2f3fcb04002865ab67d5fb103533898"10731checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
1079210732
10793[[package]]10733[[package]]
10794name = "sct"10734name = "sct"
1081610756
10817[[package]]10757[[package]]
10818name = "secp256k1"10758name = "secp256k1"
10819version = "0.24.1"10759version = "0.24.2"
10820source = "registry+https://github.com/rust-lang/crates.io-index"10760source = "registry+https://github.com/rust-lang/crates.io-index"
10821checksum = "ff55dc09d460954e9ef2fa8a7ced735a964be9981fd50e870b2b3b0705e14964"10761checksum = "d9512ffd81e3a3503ed401f79c33168b9148c75038956039166cd750eaa037c3"
10822dependencies = [10762dependencies = [
10823 "secp256k1-sys",10763 "secp256k1-sys",
10824]10764]
1088410824
10885[[package]]10825[[package]]
10886name = "semver"10826name = "semver"
10887version = "1.0.14"10827version = "1.0.16"
10888source = "registry+https://github.com/rust-lang/crates.io-index"10828source = "registry+https://github.com/rust-lang/crates.io-index"
10889checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4"10829checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a"
10890dependencies = [10830dependencies = [
10891 "serde",10831 "serde",
10892]10832]
1089910839
10900[[package]]10840[[package]]
10901name = "serde"10841name = "serde"
10902version = "1.0.149"10842version = "1.0.151"
10903source = "registry+https://github.com/rust-lang/crates.io-index"10843source = "registry+https://github.com/rust-lang/crates.io-index"
10904checksum = "256b9932320c590e707b94576e3cc1f7c9024d0ee6612dfbcf1cb106cbe8e055"10844checksum = "97fed41fc1a24994d044e6db6935e69511a1153b52c15eb42493b26fa87feba0"
10905dependencies = [10845dependencies = [
10906 "serde_derive",10846 "serde_derive",
10907]10847]
1090810848
10909[[package]]10849[[package]]
10910name = "serde_derive"10850name = "serde_derive"
10911version = "1.0.149"10851version = "1.0.151"
10912source = "registry+https://github.com/rust-lang/crates.io-index"10852source = "registry+https://github.com/rust-lang/crates.io-index"
10913checksum = "b4eae9b04cbffdfd550eb462ed33bc6a1b68c935127d008b27444d08380f94e4"10853checksum = "255abe9a125a985c05190d687b320c12f9b1f0b99445e608c21ba0782c719ad8"
10914dependencies = [10854dependencies = [
10915 "proc-macro2",10855 "proc-macro2",
10916 "quote",10856 "quote",
1091910859
10920[[package]]10860[[package]]
10921name = "serde_json"10861name = "serde_json"
10922version = "1.0.89"10862version = "1.0.91"
10923source = "registry+https://github.com/rust-lang/crates.io-index"10863source = "registry+https://github.com/rust-lang/crates.io-index"
10924checksum = "020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db"10864checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883"
10925dependencies = [10865dependencies = [
10926 "itoa",10866 "itoa",
10927 "ryu",10867 "ryu",
1111911059
11120[[package]]11060[[package]]
11121name = "slot-range-helper"11061name = "slot-range-helper"
11122version = "0.9.33"11062version = "0.9.36"
11123source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"11063source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
11124dependencies = [11064dependencies = [
11125 "enumn",11065 "enumn",
11126 "parity-scale-codec 3.2.1",11066 "parity-scale-codec 3.2.1",
11159 "aes-gcm",11099 "aes-gcm",
11160 "blake2",11100 "blake2",
11161 "chacha20poly1305",11101 "chacha20poly1305",
11162 "curve25519-dalek 4.0.0-pre.1",11102 "curve25519-dalek 4.0.0-pre.5",
11163 "rand_core 0.6.4",11103 "rand_core 0.6.4",
11164 "ring",11104 "ring",
11165 "rustc_version 0.4.0",11105 "rustc_version 0.4.0",
11187 "bytes",11127 "bytes",
11188 "flate2",11128 "flate2",
11189 "futures 0.3.25",11129 "futures 0.3.25",
11130 "http",
11190 "httparse",11131 "httparse",
11191 "log",11132 "log",
11192 "rand 0.8.5",11133 "rand 0.8.5",
11196[[package]]11137[[package]]
11197name = "sp-api"11138name = "sp-api"
11198version = "4.0.0-dev"11139version = "4.0.0-dev"
11199source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11140source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11200dependencies = [11141dependencies = [
11201 "hash-db",11142 "hash-db",
11202 "log",11143 "log",
11214[[package]]11155[[package]]
11215name = "sp-api-proc-macro"11156name = "sp-api-proc-macro"
11216version = "4.0.0-dev"11157version = "4.0.0-dev"
11217source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11158source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11218dependencies = [11159dependencies = [
11219 "blake2",11160 "blake2",
11220 "proc-macro-crate",11161 "proc-macro-crate",
1122511166
11226[[package]]11167[[package]]
11227name = "sp-application-crypto"11168name = "sp-application-crypto"
11228version = "6.0.0"11169version = "7.0.0"
11229source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11170source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11230dependencies = [11171dependencies = [
11231 "parity-scale-codec 3.2.1",11172 "parity-scale-codec 3.2.1",
11232 "scale-info",11173 "scale-info",
1123811179
11239[[package]]11180[[package]]
11240name = "sp-arithmetic"11181name = "sp-arithmetic"
11241version = "5.0.0"11182version = "6.0.0"
11242source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11183source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11243dependencies = [11184dependencies = [
11244 "integer-sqrt",11185 "integer-sqrt",
11245 "num-traits",11186 "num-traits",
11254[[package]]11195[[package]]
11255name = "sp-authority-discovery"11196name = "sp-authority-discovery"
11256version = "4.0.0-dev"11197version = "4.0.0-dev"
11257source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11198source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11258dependencies = [11199dependencies = [
11259 "parity-scale-codec 3.2.1",11200 "parity-scale-codec 3.2.1",
11260 "scale-info",11201 "scale-info",
11267[[package]]11208[[package]]
11268name = "sp-authorship"11209name = "sp-authorship"
11269version = "4.0.0-dev"11210version = "4.0.0-dev"
11270source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11211source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11271dependencies = [11212dependencies = [
11272 "async-trait",11213 "async-trait",
11273 "parity-scale-codec 3.2.1",11214 "parity-scale-codec 3.2.1",
11277]11218]
1127811219
11279[[package]]11220[[package]]
11221name = "sp-beefy"
11222version = "4.0.0-dev"
11223source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11224dependencies = [
11225 "parity-scale-codec 3.2.1",
11226 "scale-info",
11227 "serde",
11228 "sp-api",
11229 "sp-application-crypto",
11230 "sp-core",
11231 "sp-io",
11232 "sp-mmr-primitives",
11233 "sp-runtime",
11234 "sp-std",
11235]
11236
11237[[package]]
11280name = "sp-block-builder"11238name = "sp-block-builder"
11281version = "4.0.0-dev"11239version = "4.0.0-dev"
11282source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11240source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11283dependencies = [11241dependencies = [
11284 "parity-scale-codec 3.2.1",11242 "parity-scale-codec 3.2.1",
11285 "sp-api",11243 "sp-api",
11291[[package]]11249[[package]]
11292name = "sp-blockchain"11250name = "sp-blockchain"
11293version = "4.0.0-dev"11251version = "4.0.0-dev"
11294source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11252source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11295dependencies = [11253dependencies = [
11296 "futures 0.3.25",11254 "futures 0.3.25",
11297 "log",11255 "log",
11309[[package]]11267[[package]]
11310name = "sp-consensus"11268name = "sp-consensus"
11311version = "0.10.0-dev"11269version = "0.10.0-dev"
11312source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11270source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11313dependencies = [11271dependencies = [
11314 "async-trait",11272 "async-trait",
11315 "futures 0.3.25",11273 "futures 0.3.25",
11328[[package]]11286[[package]]
11329name = "sp-consensus-aura"11287name = "sp-consensus-aura"
11330version = "0.10.0-dev"11288version = "0.10.0-dev"
11331source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11289source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11332dependencies = [11290dependencies = [
11333 "async-trait",11291 "async-trait",
11334 "parity-scale-codec 3.2.1",11292 "parity-scale-codec 3.2.1",
11346[[package]]11304[[package]]
11347name = "sp-consensus-babe"11305name = "sp-consensus-babe"
11348version = "0.10.0-dev"11306version = "0.10.0-dev"
11349source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11307source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11350dependencies = [11308dependencies = [
11351 "async-trait",11309 "async-trait",
11352 "merlin",11310 "merlin",
11369[[package]]11327[[package]]
11370name = "sp-consensus-slots"11328name = "sp-consensus-slots"
11371version = "0.10.0-dev"11329version = "0.10.0-dev"
11372source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11330source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11373dependencies = [11331dependencies = [
11374 "parity-scale-codec 3.2.1",11332 "parity-scale-codec 3.2.1",
11375 "scale-info",11333 "scale-info",
11383[[package]]11341[[package]]
11384name = "sp-consensus-vrf"11342name = "sp-consensus-vrf"
11385version = "0.10.0-dev"11343version = "0.10.0-dev"
11386source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11344source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11387dependencies = [11345dependencies = [
11388 "parity-scale-codec 3.2.1",11346 "parity-scale-codec 3.2.1",
11389 "scale-info",11347 "scale-info",
1139511353
11396[[package]]11354[[package]]
11397name = "sp-core"11355name = "sp-core"
11398version = "6.0.0"11356version = "7.0.0"
11399source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11357source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11400dependencies = [11358dependencies = [
11401 "array-bytes",11359 "array-bytes 4.2.0",
11402 "base58",11360 "base58",
11403 "bitflags",11361 "bitflags",
11404 "blake2",11362 "blake2",
1144011398
11441[[package]]11399[[package]]
11442name = "sp-core-hashing"11400name = "sp-core-hashing"
11443version = "4.0.0"11401version = "5.0.0"
11444source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11402source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11445dependencies = [11403dependencies = [
11446 "blake2",11404 "blake2",
11447 "byteorder",11405 "byteorder",
11455[[package]]11413[[package]]
11456name = "sp-core-hashing-proc-macro"11414name = "sp-core-hashing-proc-macro"
11457version = "5.0.0"11415version = "5.0.0"
11458source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11416source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11459dependencies = [11417dependencies = [
11460 "proc-macro2",11418 "proc-macro2",
11461 "quote",11419 "quote",
11466[[package]]11424[[package]]
11467name = "sp-database"11425name = "sp-database"
11468version = "4.0.0-dev"11426version = "4.0.0-dev"
11469source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11427source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11470dependencies = [11428dependencies = [
11471 "kvdb",11429 "kvdb",
11472 "parking_lot 0.12.1",11430 "parking_lot 0.12.1",
11473]11431]
1147411432
11475[[package]]11433[[package]]
11476name = "sp-debug-derive"11434name = "sp-debug-derive"
11477version = "4.0.0"11435version = "5.0.0"
11478source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11436source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11479dependencies = [11437dependencies = [
11480 "proc-macro2",11438 "proc-macro2",
11481 "quote",11439 "quote",
1148411442
11485[[package]]11443[[package]]
11486name = "sp-externalities"11444name = "sp-externalities"
11487version = "0.12.0"11445version = "0.13.0"
11488source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11446source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11489dependencies = [11447dependencies = [
11490 "environmental",11448 "environmental",
11491 "parity-scale-codec 3.2.1",11449 "parity-scale-codec 3.2.1",
11496[[package]]11454[[package]]
11497name = "sp-finality-grandpa"11455name = "sp-finality-grandpa"
11498version = "4.0.0-dev"11456version = "4.0.0-dev"
11499source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11457source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11500dependencies = [11458dependencies = [
11501 "finality-grandpa",11459 "finality-grandpa",
11502 "log",11460 "log",
11514[[package]]11472[[package]]
11515name = "sp-inherents"11473name = "sp-inherents"
11516version = "4.0.0-dev"11474version = "4.0.0-dev"
11517source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11475source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11518dependencies = [11476dependencies = [
11519 "async-trait",11477 "async-trait",
11520 "impl-trait-for-tuples",11478 "impl-trait-for-tuples",
1152711485
11528[[package]]11486[[package]]
11529name = "sp-io"11487name = "sp-io"
11530version = "6.0.0"11488version = "7.0.0"
11531source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11489source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11532dependencies = [11490dependencies = [
11533 "bytes",11491 "bytes",
11492 "ed25519-dalek",
11534 "futures 0.3.25",11493 "futures 0.3.25",
11535 "hash-db",11494 "hash-db",
11536 "libsecp256k1",11495 "libsecp256k1",
1155311512
11554[[package]]11513[[package]]
11555name = "sp-keyring"11514name = "sp-keyring"
11556version = "6.0.0"11515version = "7.0.0"
11557source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11516source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11558dependencies = [11517dependencies = [
11559 "lazy_static",11518 "lazy_static",
11560 "sp-core",11519 "sp-core",
1156411523
11565[[package]]11524[[package]]
11566name = "sp-keystore"11525name = "sp-keystore"
11567version = "0.12.0"11526version = "0.13.0"
11568source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11527source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11569dependencies = [11528dependencies = [
11570 "async-trait",11529 "async-trait",
11571 "futures 0.3.25",11530 "futures 0.3.25",
11582[[package]]11541[[package]]
11583name = "sp-maybe-compressed-blob"11542name = "sp-maybe-compressed-blob"
11584version = "4.1.0-dev"11543version = "4.1.0-dev"
11585source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11544source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11586dependencies = [11545dependencies = [
11587 "thiserror",11546 "thiserror",
11588 "zstd",11547 "zstd",
11591[[package]]11550[[package]]
11592name = "sp-mmr-primitives"11551name = "sp-mmr-primitives"
11593version = "4.0.0-dev"11552version = "4.0.0-dev"
11594source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11553source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11595dependencies = [11554dependencies = [
11555 "ckb-merkle-mountain-range",
11596 "log",11556 "log",
11597 "parity-scale-codec 3.2.1",11557 "parity-scale-codec 3.2.1",
11598 "scale-info",11558 "scale-info",
11608[[package]]11568[[package]]
11609name = "sp-npos-elections"11569name = "sp-npos-elections"
11610version = "4.0.0-dev"11570version = "4.0.0-dev"
11611source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11571source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11612dependencies = [11572dependencies = [
11613 "parity-scale-codec 3.2.1",11573 "parity-scale-codec 3.2.1",
11614 "scale-info",11574 "scale-info",
11622[[package]]11582[[package]]
11623name = "sp-offchain"11583name = "sp-offchain"
11624version = "4.0.0-dev"11584version = "4.0.0-dev"
11625source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11585source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11626dependencies = [11586dependencies = [
11627 "sp-api",11587 "sp-api",
11628 "sp-core",11588 "sp-core",
1163111591
11632[[package]]11592[[package]]
11633name = "sp-panic-handler"11593name = "sp-panic-handler"
11634version = "4.0.0"11594version = "5.0.0"
11635source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11595source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11636dependencies = [11596dependencies = [
11637 "backtrace",11597 "backtrace",
11638 "lazy_static",11598 "lazy_static",
11642[[package]]11602[[package]]
11643name = "sp-rpc"11603name = "sp-rpc"
11644version = "6.0.0"11604version = "6.0.0"
11645source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11605source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11646dependencies = [11606dependencies = [
11647 "rustc-hash",11607 "rustc-hash",
11648 "serde",11608 "serde",
1165111611
11652[[package]]11612[[package]]
11653name = "sp-runtime"11613name = "sp-runtime"
11654version = "6.0.0"11614version = "7.0.0"
11655source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11615source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11656dependencies = [11616dependencies = [
11657 "either",11617 "either",
11658 "hash256-std-hasher",11618 "hash256-std-hasher",
11659 "impl-trait-for-tuples",11619 "impl-trait-for-tuples",
11660 "log",11620 "log",
11661 "parity-scale-codec 3.2.1",11621 "parity-scale-codec 3.2.1",
11662 "parity-util-mem",
11663 "paste",11622 "paste",
11664 "rand 0.7.3",11623 "rand 0.7.3",
11665 "scale-info",11624 "scale-info",
1167411633
11675[[package]]11634[[package]]
11676name = "sp-runtime-interface"11635name = "sp-runtime-interface"
11677version = "6.0.0"11636version = "7.0.0"
11678source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11637source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11679dependencies = [11638dependencies = [
11680 "bytes",11639 "bytes",
11681 "impl-trait-for-tuples",11640 "impl-trait-for-tuples",
1169211651
11693[[package]]11652[[package]]
11694name = "sp-runtime-interface-proc-macro"11653name = "sp-runtime-interface-proc-macro"
11695version = "5.0.0"11654version = "6.0.0"
11696source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11655source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11697dependencies = [11656dependencies = [
11698 "Inflector",11657 "Inflector",
11699 "proc-macro-crate",11658 "proc-macro-crate",
11703]11662]
1170411663
11705[[package]]11664[[package]]
11706name = "sp-sandbox"
11707version = "0.10.0-dev"
11708source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"
11709dependencies = [
11710 "log",
11711 "parity-scale-codec 3.2.1",
11712 "sp-core",
11713 "sp-io",
11714 "sp-std",
11715 "sp-wasm-interface",
11716 "wasmi",
11717]
11718
11719[[package]]
11720name = "sp-session"11665name = "sp-session"
11721version = "4.0.0-dev"11666version = "4.0.0-dev"
11722source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11667source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11723dependencies = [11668dependencies = [
11724 "parity-scale-codec 3.2.1",11669 "parity-scale-codec 3.2.1",
11725 "scale-info",11670 "scale-info",
11733[[package]]11678[[package]]
11734name = "sp-staking"11679name = "sp-staking"
11735version = "4.0.0-dev"11680version = "4.0.0-dev"
11736source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11681source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11737dependencies = [11682dependencies = [
11738 "parity-scale-codec 3.2.1",11683 "parity-scale-codec 3.2.1",
11739 "scale-info",11684 "scale-info",
11685 "sp-core",
11740 "sp-runtime",11686 "sp-runtime",
11741 "sp-std",11687 "sp-std",
11742]11688]
1174311689
11744[[package]]11690[[package]]
11745name = "sp-state-machine"11691name = "sp-state-machine"
11746version = "0.12.0"11692version = "0.13.0"
11747source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11693source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11748dependencies = [11694dependencies = [
11749 "hash-db",11695 "hash-db",
11750 "log",11696 "log",
1176511711
11766[[package]]11712[[package]]
11767name = "sp-std"11713name = "sp-std"
11768version = "4.0.0"11714version = "5.0.0"
11769source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11715source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
1177011716
11771[[package]]11717[[package]]
11772name = "sp-storage"11718name = "sp-storage"
11773version = "6.0.0"11719version = "7.0.0"
11774source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11720source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11775dependencies = [11721dependencies = [
11776 "impl-serde",11722 "impl-serde",
11777 "parity-scale-codec 3.2.1",11723 "parity-scale-codec 3.2.1",
11784[[package]]11730[[package]]
11785name = "sp-timestamp"11731name = "sp-timestamp"
11786version = "4.0.0-dev"11732version = "4.0.0-dev"
11787source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11733source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11788dependencies = [11734dependencies = [
11789 "async-trait",11735 "async-trait",
11790 "futures-timer",11736 "futures-timer",
1179911745
11800[[package]]11746[[package]]
11801name = "sp-tracing"11747name = "sp-tracing"
11802version = "5.0.0"11748version = "6.0.0"
11803source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11749source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11804dependencies = [11750dependencies = [
11805 "parity-scale-codec 3.2.1",11751 "parity-scale-codec 3.2.1",
11806 "sp-std",11752 "sp-std",
11812[[package]]11758[[package]]
11813name = "sp-transaction-pool"11759name = "sp-transaction-pool"
11814version = "4.0.0-dev"11760version = "4.0.0-dev"
11815source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11761source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11816dependencies = [11762dependencies = [
11817 "sp-api",11763 "sp-api",
11818 "sp-runtime",11764 "sp-runtime",
11821[[package]]11767[[package]]
11822name = "sp-transaction-storage-proof"11768name = "sp-transaction-storage-proof"
11823version = "4.0.0-dev"11769version = "4.0.0-dev"
11824source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11770source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11825dependencies = [11771dependencies = [
11826 "async-trait",11772 "async-trait",
11827 "log",11773 "log",
1183611782
11837[[package]]11783[[package]]
11838name = "sp-trie"11784name = "sp-trie"
11839version = "6.0.0"11785version = "7.0.0"
11840source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11786source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11841dependencies = [11787dependencies = [
11842 "ahash",11788 "ahash",
11843 "hash-db",11789 "hash-db",
11860[[package]]11806[[package]]
11861name = "sp-version"11807name = "sp-version"
11862version = "5.0.0"11808version = "5.0.0"
11863source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11809source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11864dependencies = [11810dependencies = [
11865 "impl-serde",11811 "impl-serde",
11866 "parity-scale-codec 3.2.1",11812 "parity-scale-codec 3.2.1",
11877[[package]]11823[[package]]
11878name = "sp-version-proc-macro"11824name = "sp-version-proc-macro"
11879version = "4.0.0-dev"11825version = "4.0.0-dev"
11880source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11826source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11881dependencies = [11827dependencies = [
11882 "parity-scale-codec 3.2.1",11828 "parity-scale-codec 3.2.1",
11883 "proc-macro2",11829 "proc-macro2",
1188711833
11888[[package]]11834[[package]]
11889name = "sp-wasm-interface"11835name = "sp-wasm-interface"
11890version = "6.0.0"11836version = "7.0.0"
11891source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11837source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11892dependencies = [11838dependencies = [
11893 "impl-trait-for-tuples",11839 "impl-trait-for-tuples",
11894 "log",11840 "log",
11901[[package]]11847[[package]]
11902name = "sp-weights"11848name = "sp-weights"
11903version = "4.0.0"11849version = "4.0.0"
11904source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"11850source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
11905dependencies = [11851dependencies = [
11906 "impl-trait-for-tuples",11852 "impl-trait-for-tuples",
11907 "parity-scale-codec 3.2.1",11853 "parity-scale-codec 3.2.1",
1193211878
11933[[package]]11879[[package]]
11934name = "ss58-registry"11880name = "ss58-registry"
11935version = "1.35.0"11881version = "1.36.0"
11936source = "registry+https://github.com/rust-lang/crates.io-index"11882source = "registry+https://github.com/rust-lang/crates.io-index"
11937checksum = "fa0813c10b9dbdc842c2305f949f724c64866e4ef4d09c9151e96f6a2106773c"11883checksum = "23d92659e7d18d82b803824a9ba5a6022cff101c3491d027c1c1d8d30e749284"
11938dependencies = [11884dependencies = [
11939 "Inflector",11885 "Inflector",
11940 "num-format",11886 "num-format",
11979 "cfg_aliases",11925 "cfg_aliases",
11980 "libc",11926 "libc",
11981 "parking_lot 0.11.2",11927 "parking_lot 0.11.2",
11982 "parking_lot_core 0.8.5",11928 "parking_lot_core 0.8.6",
11983 "static_init_macro 1.0.2",11929 "static_init_macro 1.0.2",
11984 "winapi",11930 "winapi",
11985]11931]
12075[[package]]12021[[package]]
12076name = "substrate-build-script-utils"12022name = "substrate-build-script-utils"
12077version = "3.0.0"12023version = "3.0.0"
12078source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12024source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12079dependencies = [12025dependencies = [
12080 "platforms",12026 "platforms 2.0.0",
12081]12027]
1208212028
12083[[package]]12029[[package]]
12084name = "substrate-frame-rpc-system"12030name = "substrate-frame-rpc-system"
12085version = "4.0.0-dev"12031version = "4.0.0-dev"
12086source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12032source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12087dependencies = [12033dependencies = [
12088 "frame-system-rpc-runtime-api",12034 "frame-system-rpc-runtime-api",
12089 "futures 0.3.25",12035 "futures 0.3.25",
12104[[package]]12050[[package]]
12105name = "substrate-prometheus-endpoint"12051name = "substrate-prometheus-endpoint"
12106version = "0.10.0-dev"12052version = "0.10.0-dev"
12107source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12053source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12108dependencies = [12054dependencies = [
12109 "futures-util",12055 "futures-util",
12110 "hyper",12056 "hyper",
12117[[package]]12063[[package]]
12118name = "substrate-rpc-client"12064name = "substrate-rpc-client"
12119version = "0.10.0-dev"12065version = "0.10.0-dev"
12120source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12066source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12121dependencies = [12067dependencies = [
12122 "async-trait",12068 "async-trait",
12123 "jsonrpsee",12069 "jsonrpsee",
12130[[package]]12076[[package]]
12131name = "substrate-state-trie-migration-rpc"12077name = "substrate-state-trie-migration-rpc"
12132version = "4.0.0-dev"12078version = "4.0.0-dev"
12133source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12079source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12134dependencies = [12080dependencies = [
12135 "jsonrpsee",12081 "jsonrpsee",
12136 "log",12082 "log",
12151[[package]]12097[[package]]
12152name = "substrate-test-client"12098name = "substrate-test-client"
12153version = "2.0.1"12099version = "2.0.1"
12154source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12100source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12155dependencies = [12101dependencies = [
12156 "array-bytes",12102 "array-bytes 4.2.0",
12157 "async-trait",12103 "async-trait",
12158 "futures 0.3.25",12104 "futures 0.3.25",
12159 "parity-scale-codec 3.2.1",12105 "parity-scale-codec 3.2.1",
12177[[package]]12123[[package]]
12178name = "substrate-test-utils"12124name = "substrate-test-utils"
12179version = "4.0.0-dev"12125version = "4.0.0-dev"
12180source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12126source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12181dependencies = [12127dependencies = [
12182 "futures 0.3.25",12128 "futures 0.3.25",
12183 "substrate-test-utils-derive",12129 "substrate-test-utils-derive",
12187[[package]]12133[[package]]
12188name = "substrate-test-utils-derive"12134name = "substrate-test-utils-derive"
12189version = "0.10.0-dev"12135version = "0.10.0-dev"
12190source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12136source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12191dependencies = [12137dependencies = [
12192 "proc-macro-crate",12138 "proc-macro-crate",
12193 "proc-macro2",12139 "proc-macro2",
12198[[package]]12144[[package]]
12199name = "substrate-wasm-builder"12145name = "substrate-wasm-builder"
12200version = "5.0.0-dev"12146version = "5.0.0-dev"
12201source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12147source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12202dependencies = [12148dependencies = [
12203 "ansi_term",12149 "ansi_term",
12204 "build-helper",12150 "build-helper",
1222012166
12221[[package]]12167[[package]]
12222name = "syn"12168name = "syn"
12223version = "1.0.105"12169version = "1.0.107"
12224source = "registry+https://github.com/rust-lang/crates.io-index"12170source = "registry+https://github.com/rust-lang/crates.io-index"
12225checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908"12171checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
12226dependencies = [12172dependencies = [
12227 "proc-macro2",12173 "proc-macro2",
12228 "quote",12174 "quote",
1231512261
12316[[package]]12262[[package]]
12317name = "test-runtime-constants"12263name = "test-runtime-constants"
12318version = "0.9.33"12264version = "0.9.36"
12319source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"12265source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
12320dependencies = [12266dependencies = [
12321 "frame-support",12267 "frame-support",
12322 "polkadot-primitives",12268 "polkadot-primitives",
1235912305
12360[[package]]12306[[package]]
12361name = "thiserror"12307name = "thiserror"
12362version = "1.0.37"12308version = "1.0.38"
12363source = "registry+https://github.com/rust-lang/crates.io-index"12309source = "registry+https://github.com/rust-lang/crates.io-index"
12364checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"12310checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
12365dependencies = [12311dependencies = [
12366 "thiserror-impl",12312 "thiserror-impl",
12367]12313]
1236812314
12369[[package]]12315[[package]]
12370name = "thiserror-impl"12316name = "thiserror-impl"
12371version = "1.0.37"12317version = "1.0.38"
12372source = "registry+https://github.com/rust-lang/crates.io-index"12318source = "registry+https://github.com/rust-lang/crates.io-index"
12373checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"12319checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
12374dependencies = [12320dependencies = [
12375 "proc-macro2",12321 "proc-macro2",
12376 "quote",12322 "quote",
12415]12361]
1241612362
12417[[package]]12363[[package]]
12364name = "tikv-jemalloc-ctl"
12365version = "0.5.0"
12366source = "registry+https://github.com/rust-lang/crates.io-index"
12367checksum = "e37706572f4b151dff7a0146e040804e9c26fe3a3118591112f05cf12a4216c1"
12368dependencies = [
12369 "libc",
12370 "paste",
12371 "tikv-jemalloc-sys",
12372]
12373
12374[[package]]
12418name = "tikv-jemalloc-sys"12375name = "tikv-jemalloc-sys"
12419version = "0.5.2+5.3.0-patched"12376version = "0.5.2+5.3.0-patched"
12420source = "registry+https://github.com/rust-lang/crates.io-index"12377source = "registry+https://github.com/rust-lang/crates.io-index"
12437]12394]
1243812395
12439[[package]]12396[[package]]
12440name = "time"
12441version = "0.3.9"
12442source = "registry+https://github.com/rust-lang/crates.io-index"
12443checksum = "c2702e08a7a860f005826c6815dcac101b19b5eb330c27fe4a5928fec1d20ddd"
12444dependencies = [
12445 "itoa",
12446 "libc",
12447 "num_threads",
12448 "time-macros",
12449]
12450
12451[[package]]
12452name = "time-macros"
12453version = "0.2.4"
12454source = "registry+https://github.com/rust-lang/crates.io-index"
12455checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792"
12456
12457[[package]]
12458name = "tiny-bip39"12397name = "tiny-bip39"
12459version = "0.8.2"12398version = "0.8.2"
12460source = "registry+https://github.com/rust-lang/crates.io-index"12399source = "registry+https://github.com/rust-lang/crates.io-index"
1256712506
12568[[package]]12507[[package]]
12569name = "toml"12508name = "toml"
12570version = "0.5.9"12509version = "0.5.10"
12571source = "registry+https://github.com/rust-lang/crates.io-index"12510source = "registry+https://github.com/rust-lang/crates.io-index"
12572checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"12511checksum = "1333c76748e868a4d9d1017b5ab53171dfd095f70c712fdb4653a406547f598f"
12573dependencies = [12512dependencies = [
12574 "serde",12513 "serde",
12575]12514]
1257612515
12577[[package]]12516[[package]]
12517name = "tower"
12518version = "0.4.13"
12519source = "registry+https://github.com/rust-lang/crates.io-index"
12520checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
12521dependencies = [
12522 "tower-layer",
12523 "tower-service",
12524 "tracing",
12525]
12526
12527[[package]]
12528name = "tower-http"
12529version = "0.3.5"
12530source = "registry+https://github.com/rust-lang/crates.io-index"
12531checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858"
12532dependencies = [
12533 "bitflags",
12534 "bytes",
12535 "futures-core",
12536 "futures-util",
12537 "http",
12538 "http-body",
12539 "http-range-header",
12540 "pin-project-lite 0.2.9",
12541 "tower-layer",
12542 "tower-service",
12543]
12544
12545[[package]]
12546name = "tower-layer"
12547version = "0.3.2"
12548source = "registry+https://github.com/rust-lang/crates.io-index"
12549checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
12550
12551[[package]]
12578name = "tower-service"12552name = "tower-service"
12579version = "0.3.2"12553version = "0.3.2"
12580source = "registry+https://github.com/rust-lang/crates.io-index"12554source = "registry+https://github.com/rust-lang/crates.io-index"
12587checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"12561checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
12588dependencies = [12562dependencies = [
12589 "cfg-if",12563 "cfg-if",
12564 "log",
12590 "pin-project-lite 0.2.9",12565 "pin-project-lite 0.2.9",
12591 "tracing-attributes",12566 "tracing-attributes",
12592 "tracing-core",12567 "tracing-core",
1262512600
12626[[package]]12601[[package]]
12627name = "tracing-gum"12602name = "tracing-gum"
12628version = "0.9.33"12603version = "0.9.36"
12629source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"12604source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
12630dependencies = [12605dependencies = [
12631 "polkadot-node-jaeger",12606 "polkadot-node-jaeger",
12632 "polkadot-primitives",12607 "polkadot-primitives",
1263612611
12637[[package]]12612[[package]]
12638name = "tracing-gum-proc-macro"12613name = "tracing-gum-proc-macro"
12639version = "0.9.33"12614version = "0.9.36"
12640source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"12615source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
12641dependencies = [12616dependencies = [
12642 "expander 0.0.6",12617 "expander 0.0.6",
12643 "proc-macro-crate",12618 "proc-macro-crate",
12742 "smallvec",12717 "smallvec",
12743 "thiserror",12718 "thiserror",
12744 "tinyvec",12719 "tinyvec",
12720 "tokio",
12745 "tracing",12721 "tracing",
12746 "url",12722 "url",
12747]12723]
12761 "resolv-conf",12737 "resolv-conf",
12762 "smallvec",12738 "smallvec",
12763 "thiserror",12739 "thiserror",
12740 "tokio",
12764 "tracing",12741 "tracing",
12765 "trust-dns-proto",12742 "trust-dns-proto",
12766]12743]
12774[[package]]12751[[package]]
12775name = "try-runtime-cli"12752name = "try-runtime-cli"
12776version = "0.10.0-dev"12753version = "0.10.0-dev"
12777source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.33#2dff067e9f7f6f3cc4dbfdaaa97753eccc407689"12754source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.36#cb4f2491b00af7d7817f3a54209c26b20faa1f51"
12778dependencies = [12755dependencies = [
12779 "clap",12756 "clap",
12757 "frame-remote-externalities",
12780 "frame-try-runtime",12758 "frame-try-runtime",
12759 "hex",
12781 "log",12760 "log",
12782 "parity-scale-codec 3.2.1",12761 "parity-scale-codec 3.2.1",
12783 "remote-externalities",
12784 "sc-chain-spec",12762 "sc-chain-spec",
12785 "sc-cli",12763 "sc-cli",
12786 "sc-executor",12764 "sc-executor",
12787 "sc-service",12765 "sc-service",
12788 "serde",12766 "serde",
12767 "sp-api",
12789 "sp-core",12768 "sp-core",
12769 "sp-debug-derive",
12790 "sp-externalities",12770 "sp-externalities",
12791 "sp-io",12771 "sp-io",
12792 "sp-keystore",12772 "sp-keystore",
12773 "sp-rpc",
12793 "sp-runtime",12774 "sp-runtime",
12794 "sp-state-machine",12775 "sp-state-machine",
12795 "sp-version",12776 "sp-version",
1280012781
12801[[package]]12782[[package]]
12802name = "trybuild"12783name = "trybuild"
12803version = "1.0.72"12784version = "1.0.73"
12804source = "registry+https://github.com/rust-lang/crates.io-index"12785source = "registry+https://github.com/rust-lang/crates.io-index"
12805checksum = "db29f438342820400f2d9acfec0d363e987a38b2950bdb50a7069ed17b2148ee"12786checksum = "ed01de3de062db82c0920b5cabe804f88d599a3f217932292597c678c903754d"
12806dependencies = [12787dependencies = [
12807 "glob",12788 "glob",
12808 "once_cell",12789 "once_cell",
1281512796
12816[[package]]12797[[package]]
12817name = "tt-call"12798name = "tt-call"
12818version = "1.0.8"12799version = "1.0.9"
12819source = "registry+https://github.com/rust-lang/crates.io-index"12800source = "registry+https://github.com/rust-lang/crates.io-index"
12820checksum = "5e66dcbec4290c69dd03c57e76c2469ea5c7ce109c6dd4351c13055cf71ea055"12801checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df"
1282112802
12822[[package]]12803[[package]]
12823name = "twox-hash"12804name = "twox-hash"
12876]12857]
1287712858
12878[[package]]12859[[package]]
12879name = "unicase"
12880version = "2.6.0"
12881source = "registry+https://github.com/rust-lang/crates.io-index"
12882checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
12883dependencies = [
12884 "version_check",
12885]
12886
12887[[package]]
12888name = "unicode-bidi"12860name = "unicode-bidi"
12889version = "0.3.8"12861version = "0.3.8"
12890source = "registry+https://github.com/rust-lang/crates.io-index"12862source = "registry+https://github.com/rust-lang/crates.io-index"
12891checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"12863checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
1289212864
12893[[package]]12865[[package]]
12894name = "unicode-ident"12866name = "unicode-ident"
12895version = "1.0.5"12867version = "1.0.6"
12896source = "registry+https://github.com/rust-lang/crates.io-index"12868source = "registry+https://github.com/rust-lang/crates.io-index"
12897checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3"12869checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
1289812870
12899[[package]]12871[[package]]
12900name = "unicode-normalization"12872name = "unicode-normalization"
1292512897
12926[[package]]12898[[package]]
12927name = "unique-node"12899name = "unique-node"
12928version = "0.9.33"12900version = "0.9.36"
12929dependencies = [12901dependencies = [
12930 "app-promotion-rpc",12902 "app-promotion-rpc",
12931 "clap",12903 "clap",
1306413036
13065[[package]]13037[[package]]
13066name = "unique-runtime"13038name = "unique-runtime"
13067version = "0.9.33"13039version = "0.9.36"
13068dependencies = [13040dependencies = [
13069 "app-promotion-rpc",13041 "app-promotion-rpc",
13070 "cumulus-pallet-aura-ext",13042 "cumulus-pallet-aura-ext",
1318913161
13190[[package]]13162[[package]]
13191name = "up-common"13163name = "up-common"
13192version = "0.9.33"13164version = "0.9.36"
13193dependencies = [13165dependencies = [
13194 "cumulus-primitives-core",13166 "cumulus-primitives-core",
13195 "fp-rpc",13167 "fp-rpc",
13237[[package]]13209[[package]]
13238name = "up-sponsorship"13210name = "up-sponsorship"
13239version = "0.1.0"13211version = "0.1.0"
13240source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.33#994d4a8dc6cc630b73d19f97315272a8795317e7"13212source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.36#55943b982e9b0b80465885f31f76db3dba91dac4"
13241dependencies = [13213dependencies = [
13242 "impl-trait-for-tuples",13214 "impl-trait-for-tuples",
13243]13215]
13490checksum = "57d20cb3c59b788653d99541c646c561c9dd26506f25c0cebfe810659c54c6d7"13462checksum = "57d20cb3c59b788653d99541c646c561c9dd26506f25c0cebfe810659c54c6d7"
13491dependencies = [13463dependencies = [
13492 "downcast-rs",13464 "downcast-rs",
13493 "libm",13465 "libm 0.2.6",
13494 "memory_units",13466 "memory_units",
13495 "num-rational",13467 "num-rational",
13496 "num-traits",13468 "num-traits",
13517 "indexmap",13489 "indexmap",
13518 "libc",13490 "libc",
13519 "log",13491 "log",
13520 "object",13492 "object 0.29.0",
13521 "once_cell",13493 "once_cell",
13522 "paste",13494 "paste",
13523 "psm",13495 "psm",
13574 "cranelift-frontend",13546 "cranelift-frontend",
13575 "cranelift-native",13547 "cranelift-native",
13576 "cranelift-wasm",13548 "cranelift-wasm",
13577 "gimli",13549 "gimli 0.26.2",
13578 "log",13550 "log",
13579 "object",13551 "object 0.29.0",
13580 "target-lexicon",13552 "target-lexicon",
13581 "thiserror",13553 "thiserror",
13582 "wasmparser",13554 "wasmparser",
13591dependencies = [13563dependencies = [
13592 "anyhow",13564 "anyhow",
13593 "cranelift-entity",13565 "cranelift-entity",
13594 "gimli",13566 "gimli 0.26.2",
13595 "indexmap",13567 "indexmap",
13596 "log",13568 "log",
13597 "object",13569 "object 0.29.0",
13598 "serde",13570 "serde",
13599 "target-lexicon",13571 "target-lexicon",
13600 "thiserror",13572 "thiserror",
13608source = "registry+https://github.com/rust-lang/crates.io-index"13580source = "registry+https://github.com/rust-lang/crates.io-index"
13609checksum = "1985c628011fe26adf5e23a5301bdc79b245e0e338f14bb58b39e4e25e4d8681"13581checksum = "1985c628011fe26adf5e23a5301bdc79b245e0e338f14bb58b39e4e25e4d8681"
13610dependencies = [13582dependencies = [
13611 "addr2line",13583 "addr2line 0.17.0",
13612 "anyhow",13584 "anyhow",
13613 "bincode",13585 "bincode",
13614 "cfg-if",13586 "cfg-if",
13615 "cpp_demangle",13587 "cpp_demangle",
13616 "gimli",13588 "gimli 0.26.2",
13617 "log",13589 "log",
13618 "object",13590 "object 0.29.0",
13619 "rustc-demangle",13591 "rustc-demangle",
13620 "rustix 0.35.13",13592 "rustix 0.35.13",
13621 "serde",13593 "serde",
13633source = "registry+https://github.com/rust-lang/crates.io-index"13605source = "registry+https://github.com/rust-lang/crates.io-index"
13634checksum = "f671b588486f5ccec8c5a3dba6b4c07eac2e66ab8c60e6f4e53717c77f709731"13606checksum = "f671b588486f5ccec8c5a3dba6b4c07eac2e66ab8c60e6f4e53717c77f709731"
13635dependencies = [13607dependencies = [
13636 "object",13608 "object 0.29.0",
13637 "once_cell",13609 "once_cell",
13638 "rustix 0.35.13",13610 "rustix 0.35.13",
13639]13611]
1369713669
13698[[package]]13670[[package]]
13699name = "webpki-roots"13671name = "webpki-roots"
13700version = "0.22.5"13672version = "0.22.6"
13701source = "registry+https://github.com/rust-lang/crates.io-index"13673source = "registry+https://github.com/rust-lang/crates.io-index"
13702checksum = "368bfe657969fb01238bb756d351dcade285e0f6fcbd36dcb23359a5169975be"13674checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87"
13703dependencies = [13675dependencies = [
13704 "webpki",13676 "webpki",
13705]13677]
1371513687
13716[[package]]13688[[package]]
13717name = "westend-runtime"13689name = "westend-runtime"
13718version = "0.9.33"13690version = "0.9.36"
13719source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"13691source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
13720dependencies = [13692dependencies = [
13721 "beefy-primitives",
13722 "bitvec 1.0.1",13693 "bitvec 1.0.1",
13723 "frame-benchmarking",13694 "frame-benchmarking",
13724 "frame-election-provider-support",13695 "frame-election-provider-support",
13782 "smallvec",13753 "smallvec",
13783 "sp-api",13754 "sp-api",
13784 "sp-authority-discovery",13755 "sp-authority-discovery",
13756 "sp-beefy",
13785 "sp-block-builder",13757 "sp-block-builder",
13786 "sp-consensus-babe",13758 "sp-consensus-babe",
13787 "sp-core",13759 "sp-core",
1380513777
13806[[package]]13778[[package]]
13807name = "westend-runtime-constants"13779name = "westend-runtime-constants"
13808version = "0.9.33"13780version = "0.9.36"
13809source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"13781source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
13810dependencies = [13782dependencies = [
13811 "frame-support",13783 "frame-support",
13812 "polkadot-primitives",13784 "polkadot-primitives",
1404514017
14046[[package]]14018[[package]]
14047name = "xcm"14019name = "xcm"
14048version = "0.9.33"14020version = "0.9.36"
14049source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"14021source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
14050dependencies = [14022dependencies = [
14051 "derivative",14023 "derivative",
14052 "impl-trait-for-tuples",14024 "impl-trait-for-tuples",
1405914031
14060[[package]]14032[[package]]
14061name = "xcm-builder"14033name = "xcm-builder"
14062version = "0.9.33"14034version = "0.9.36"
14063source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"14035source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
14064dependencies = [14036dependencies = [
14065 "frame-support",14037 "frame-support",
14066 "frame-system",14038 "frame-system",
1407914051
14080[[package]]14052[[package]]
14081name = "xcm-executor"14053name = "xcm-executor"
14082version = "0.9.33"14054version = "0.9.36"
14083source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"14055source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
14084dependencies = [14056dependencies = [
14085 "frame-benchmarking",14057 "frame-benchmarking",
14086 "frame-support",14058 "frame-support",
1409714069
14098[[package]]14070[[package]]
14099name = "xcm-procedural"14071name = "xcm-procedural"
14100version = "0.9.33"14072version = "0.9.36"
14101source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.33#c7d6c21242fc654f6f069e12c00951484dff334d"14073source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.36#dc25abc712e42b9b51d87ad1168e453a42b5f0bc"
14102dependencies = [14074dependencies = [
14103 "Inflector",14075 "Inflector",
14104 "proc-macro2",14076 "proc-macro2",
modifiedCargo.tomldiffbeforeafterboth
1cargo-features = ["workspace-inheritance"]
2
3[workspace]1[workspace]
4resolver = "2"2resolver = "2"
14 'runtime/tests',12 'runtime/tests',
15]13]
16default-members = ['node/*', 'runtime/opal']14default-members = ['node/*', 'runtime/opal']
15package.version = "0.9.36"
1716
18[profile.release]17[profile.release]
19panic = 'unwind'18panic = 'unwind'
2019
21[workspace.dependencies.orml-vesting]20[workspace.dependencies.orml-vesting]
22git = "https://github.com/uniquenetwork/open-runtime-module-library"21git = "https://github.com/uniquenetwork/open-runtime-module-library"
23branch = "polkadot-v0.9.33"22branch = "feature/polkadot-v0.9.36"
24default-features = false23default-features = false
2524
26[workspace.dependencies.orml-xtokens]25[workspace.dependencies.orml-xtokens]
27git = "https://github.com/uniquenetwork/open-runtime-module-library"26git = "https://github.com/uniquenetwork/open-runtime-module-library"
28branch = "polkadot-v0.9.33"27branch = "feature/polkadot-v0.9.36"
29default-features = false28default-features = false
3029
31[workspace.dependencies.orml-tokens]30[workspace.dependencies.orml-tokens]
32git = "https://github.com/uniquenetwork/open-runtime-module-library"31git = "https://github.com/uniquenetwork/open-runtime-module-library"
33branch = "polkadot-v0.9.33"32branch = "feature/polkadot-v0.9.36"
34default-features = false33default-features = false
3534
36[workspace.dependencies.orml-traits]35[workspace.dependencies.orml-traits]
37git = "https://github.com/uniquenetwork/open-runtime-module-library"36git = "https://github.com/uniquenetwork/open-runtime-module-library"
38branch = "polkadot-v0.9.33"37branch = "feature/polkadot-v0.9.36"
39default-features = false38default-features = false
4039
modifiedREADME.mddiffbeforeafterboth
90```90```
91git clone https://github.com/paritytech/polkadot.git91git clone https://github.com/paritytech/polkadot.git
92cd polkadot92cd polkadot
93git checkout release-v0.9.3393git checkout release-v0.9.36
94cargo build --release94cargo build --release
95```95```
9696
modifiedclient/rpc/Cargo.tomldiffbeforeafterboth
11app-promotion-rpc = { path = "../../primitives/app_promotion_rpc"}11app-promotion-rpc = { path = "../../primitives/app_promotion_rpc" }
12rmrk-rpc = { path = "../../primitives/rmrk-rpc" }12rmrk-rpc = { path = "../../primitives/rmrk-rpc" }
13codec = { package = "parity-scale-codec", version = "3.1.2" }13codec = { package = "parity-scale-codec", version = "3.1.2" }
14jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }14jsonrpsee = { version = "0.16.2", features = ["server", "macros"] }
15anyhow = "1.0.57"15anyhow = "1.0.57"
1616
17sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
20sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }20sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2323
modifiedcrates/evm-coder/Cargo.tomldiffbeforeafterboth
12primitive-types = { version = "0.12.1", default-features = false }12primitive-types = { version = "0.12.1", default-features = false }
13# Evm doesn't have reexports for log and others13# Evm doesn't have reexports for log and others
14ethereum = { version = "0.14.0", default-features = false }14ethereum = { version = "0.14.0", default-features = false }
15sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17# Error types for execution17# Error types for execution
18evm-core = { default-features = false, git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.33" }18evm-core = { default-features = false, git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.36" }
19# We have tuple-heavy code in solidity.rs19# We have tuple-heavy code in solidity.rs
20impl-trait-for-tuples = "0.2.2"20impl-trait-for-tuples = "0.2.2"
2121
22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2323
24[dev-dependencies]24[dev-dependencies]
25# We want to assert some large binary blobs equality in tests25# We want to assert some large binary blobs equality in tests
modifiednode/cli/Cargo.tomldiffbeforeafterboth
33
4[build-dependencies.substrate-build-script-utils]4[build-dependencies.substrate-build-script-utils]
5git = "https://github.com/paritytech/substrate"5git = "https://github.com/paritytech/substrate"
6branch = "polkadot-v0.9.33"6branch = "polkadot-v0.9.36"
77
8################################################################################8################################################################################
9# Substrate Dependecies9# Substrate Dependecies
1616
17[dependencies.frame-benchmarking]17[dependencies.frame-benchmarking]
18git = "https://github.com/paritytech/substrate"18git = "https://github.com/paritytech/substrate"
19branch = "polkadot-v0.9.33"19branch = "polkadot-v0.9.36"
2020
21[dependencies.frame-benchmarking-cli]21[dependencies.frame-benchmarking-cli]
22git = "https://github.com/paritytech/substrate"22git = "https://github.com/paritytech/substrate"
23branch = "polkadot-v0.9.33"23branch = "polkadot-v0.9.36"
2424
25[dependencies.try-runtime-cli]25[dependencies.try-runtime-cli]
26git = "https://github.com/paritytech/substrate"26git = "https://github.com/paritytech/substrate"
27branch = "polkadot-v0.9.33"27branch = "polkadot-v0.9.36"
2828
29[dependencies.pallet-transaction-payment-rpc]29[dependencies.pallet-transaction-payment-rpc]
30git = "https://github.com/paritytech/substrate"30git = "https://github.com/paritytech/substrate"
31branch = "polkadot-v0.9.33"31branch = "polkadot-v0.9.36"
3232
33[dependencies.substrate-prometheus-endpoint]33[dependencies.substrate-prometheus-endpoint]
34git = "https://github.com/paritytech/substrate"34git = "https://github.com/paritytech/substrate"
35branch = "polkadot-v0.9.33"35branch = "polkadot-v0.9.36"
3636
37[dependencies.sc-basic-authorship]37[dependencies.sc-basic-authorship]
38git = "https://github.com/paritytech/substrate"38git = "https://github.com/paritytech/substrate"
39branch = "polkadot-v0.9.33"39branch = "polkadot-v0.9.36"
4040
41[dependencies.sc-chain-spec]41[dependencies.sc-chain-spec]
42git = "https://github.com/paritytech/substrate"42git = "https://github.com/paritytech/substrate"
43branch = "polkadot-v0.9.33"43branch = "polkadot-v0.9.36"
4444
45[dependencies.sc-cli]45[dependencies.sc-cli]
46features = ['wasmtime']
47git = "https://github.com/paritytech/substrate"46git = "https://github.com/paritytech/substrate"
48branch = "polkadot-v0.9.33"47branch = "polkadot-v0.9.36"
4948
50[dependencies.sc-client-api]49[dependencies.sc-client-api]
51git = "https://github.com/paritytech/substrate"50git = "https://github.com/paritytech/substrate"
52branch = "polkadot-v0.9.33"51branch = "polkadot-v0.9.36"
5352
54[dependencies.sc-consensus]53[dependencies.sc-consensus]
55git = "https://github.com/paritytech/substrate"54git = "https://github.com/paritytech/substrate"
56branch = "polkadot-v0.9.33"55branch = "polkadot-v0.9.36"
5756
58[dependencies.sc-consensus-aura]57[dependencies.sc-consensus-aura]
59git = "https://github.com/paritytech/substrate"58git = "https://github.com/paritytech/substrate"
60branch = "polkadot-v0.9.33"59branch = "polkadot-v0.9.36"
6160
62[dependencies.sc-executor]61[dependencies.sc-executor]
63features = ['wasmtime']
64git = "https://github.com/paritytech/substrate"62git = "https://github.com/paritytech/substrate"
65branch = "polkadot-v0.9.33"63branch = "polkadot-v0.9.36"
6664
67[dependencies.sc-finality-grandpa]65[dependencies.sc-finality-grandpa]
68git = "https://github.com/paritytech/substrate"66git = "https://github.com/paritytech/substrate"
69branch = "polkadot-v0.9.33"67branch = "polkadot-v0.9.36"
7068
71[dependencies.sc-keystore]69[dependencies.sc-keystore]
72git = "https://github.com/paritytech/substrate"70git = "https://github.com/paritytech/substrate"
73branch = "polkadot-v0.9.33"71branch = "polkadot-v0.9.36"
7472
75[dependencies.sc-rpc]73[dependencies.sc-rpc]
76git = "https://github.com/paritytech/substrate"74git = "https://github.com/paritytech/substrate"
77branch = "polkadot-v0.9.33"75branch = "polkadot-v0.9.36"
7876
79[dependencies.sc-rpc-api]77[dependencies.sc-rpc-api]
80git = "https://github.com/paritytech/substrate"78git = "https://github.com/paritytech/substrate"
81branch = "polkadot-v0.9.33"79branch = "polkadot-v0.9.36"
8280
83[dependencies.sc-service]81[dependencies.sc-service]
84features = ['wasmtime']
85git = "https://github.com/paritytech/substrate"82git = "https://github.com/paritytech/substrate"
86branch = "polkadot-v0.9.33"83branch = "polkadot-v0.9.36"
8784
88[dependencies.sc-telemetry]85[dependencies.sc-telemetry]
89git = "https://github.com/paritytech/substrate"86git = "https://github.com/paritytech/substrate"
90branch = "polkadot-v0.9.33"87branch = "polkadot-v0.9.36"
9188
92[dependencies.sc-transaction-pool]89[dependencies.sc-transaction-pool]
93git = "https://github.com/paritytech/substrate"90git = "https://github.com/paritytech/substrate"
94branch = "polkadot-v0.9.33"91branch = "polkadot-v0.9.36"
9592
96[dependencies.sc-tracing]93[dependencies.sc-tracing]
97git = "https://github.com/paritytech/substrate"94git = "https://github.com/paritytech/substrate"
98branch = "polkadot-v0.9.33"95branch = "polkadot-v0.9.36"
9996
100[dependencies.sc-sysinfo]97[dependencies.sc-sysinfo]
101git = "https://github.com/paritytech/substrate"98git = "https://github.com/paritytech/substrate"
102branch = "polkadot-v0.9.33"99branch = "polkadot-v0.9.36"
103100
104[dependencies.sp-block-builder]101[dependencies.sp-block-builder]
105git = "https://github.com/paritytech/substrate"102git = "https://github.com/paritytech/substrate"
106branch = "polkadot-v0.9.33"103branch = "polkadot-v0.9.36"
107104
108[dependencies.sp-api]105[dependencies.sp-api]
109git = "https://github.com/paritytech/substrate"106git = "https://github.com/paritytech/substrate"
110branch = "polkadot-v0.9.33"107branch = "polkadot-v0.9.36"
111108
112[dependencies.sp-blockchain]109[dependencies.sp-blockchain]
113git = "https://github.com/paritytech/substrate"110git = "https://github.com/paritytech/substrate"
114branch = "polkadot-v0.9.33"111branch = "polkadot-v0.9.36"
115112
116[dependencies.sp-consensus]113[dependencies.sp-consensus]
117git = "https://github.com/paritytech/substrate"114git = "https://github.com/paritytech/substrate"
118branch = "polkadot-v0.9.33"115branch = "polkadot-v0.9.36"
119116
120[dependencies.sp-consensus-aura]117[dependencies.sp-consensus-aura]
121git = "https://github.com/paritytech/substrate"118git = "https://github.com/paritytech/substrate"
122branch = "polkadot-v0.9.33"119branch = "polkadot-v0.9.36"
123120
124[dependencies.sp-core]121[dependencies.sp-core]
125git = "https://github.com/paritytech/substrate"122git = "https://github.com/paritytech/substrate"
126branch = "polkadot-v0.9.33"123branch = "polkadot-v0.9.36"
127124
128[dependencies.sp-finality-grandpa]125[dependencies.sp-finality-grandpa]
129git = "https://github.com/paritytech/substrate"126git = "https://github.com/paritytech/substrate"
130branch = "polkadot-v0.9.33"127branch = "polkadot-v0.9.36"
131128
132[dependencies.sp-inherents]129[dependencies.sp-inherents]
133git = "https://github.com/paritytech/substrate"130git = "https://github.com/paritytech/substrate"
134branch = "polkadot-v0.9.33"131branch = "polkadot-v0.9.36"
135132
136[dependencies.sp-keystore]133[dependencies.sp-keystore]
137git = "https://github.com/paritytech/substrate"134git = "https://github.com/paritytech/substrate"
138branch = "polkadot-v0.9.33"135branch = "polkadot-v0.9.36"
139136
140[dependencies.sp-offchain]137[dependencies.sp-offchain]
141git = "https://github.com/paritytech/substrate"138git = "https://github.com/paritytech/substrate"
142branch = "polkadot-v0.9.33"139branch = "polkadot-v0.9.36"
143140
144[dependencies.sp-runtime]141[dependencies.sp-runtime]
145git = "https://github.com/paritytech/substrate"142git = "https://github.com/paritytech/substrate"
146branch = "polkadot-v0.9.33"143branch = "polkadot-v0.9.36"
147144
148[dependencies.sp-session]145[dependencies.sp-session]
149git = "https://github.com/paritytech/substrate"146git = "https://github.com/paritytech/substrate"
150branch = "polkadot-v0.9.33"147branch = "polkadot-v0.9.36"
151148
152[dependencies.sp-timestamp]149[dependencies.sp-timestamp]
153git = "https://github.com/paritytech/substrate"150git = "https://github.com/paritytech/substrate"
154branch = "polkadot-v0.9.33"151branch = "polkadot-v0.9.36"
155152
156[dependencies.sp-transaction-pool]153[dependencies.sp-transaction-pool]
157git = "https://github.com/paritytech/substrate"154git = "https://github.com/paritytech/substrate"
158branch = "polkadot-v0.9.33"155branch = "polkadot-v0.9.36"
159156
160[dependencies.sp-trie]157[dependencies.sp-trie]
161git = "https://github.com/paritytech/substrate"158git = "https://github.com/paritytech/substrate"
162branch = "polkadot-v0.9.33"159branch = "polkadot-v0.9.36"
163160
164[dependencies.substrate-frame-rpc-system]161[dependencies.substrate-frame-rpc-system]
165git = "https://github.com/paritytech/substrate"162git = "https://github.com/paritytech/substrate"
166branch = "polkadot-v0.9.33"163branch = "polkadot-v0.9.36"
167164
168[dependencies.sc-network]165[dependencies.sc-network]
169git = "https://github.com/paritytech/substrate"166git = "https://github.com/paritytech/substrate"
170branch = "polkadot-v0.9.33"167branch = "polkadot-v0.9.36"
171168
172[dependencies.serde]169[dependencies.serde]
173features = ['derive']170features = ['derive']
178175
179[dependencies.sc-consensus-manual-seal]176[dependencies.sc-consensus-manual-seal]
180git = "https://github.com/paritytech/substrate"177git = "https://github.com/paritytech/substrate"
181branch = "polkadot-v0.9.33"178branch = "polkadot-v0.9.36"
182179
183################################################################################180################################################################################
184# Cumulus dependencies181# Cumulus dependencies
185182
186[dependencies.cumulus-client-consensus-aura]183[dependencies.cumulus-client-consensus-aura]
187git = "https://github.com/paritytech/cumulus"184git = "https://github.com/paritytech/cumulus"
188branch = "polkadot-v0.9.33"185branch = "polkadot-v0.9.36"
189186
190[dependencies.cumulus-client-consensus-common]187[dependencies.cumulus-client-consensus-common]
191git = "https://github.com/paritytech/cumulus"188git = "https://github.com/paritytech/cumulus"
192branch = "polkadot-v0.9.33"189branch = "polkadot-v0.9.36"
193190
194[dependencies.cumulus-client-collator]191[dependencies.cumulus-client-collator]
195git = "https://github.com/paritytech/cumulus"192git = "https://github.com/paritytech/cumulus"
196branch = "polkadot-v0.9.33"193branch = "polkadot-v0.9.36"
197194
198[dependencies.cumulus-client-cli]195[dependencies.cumulus-client-cli]
199git = "https://github.com/paritytech/cumulus"196git = "https://github.com/paritytech/cumulus"
200branch = "polkadot-v0.9.33"197branch = "polkadot-v0.9.36"
201198
202[dependencies.cumulus-client-network]199[dependencies.cumulus-client-network]
203git = "https://github.com/paritytech/cumulus"200git = "https://github.com/paritytech/cumulus"
204branch = "polkadot-v0.9.33"201branch = "polkadot-v0.9.36"
205202
206[dependencies.cumulus-primitives-core]203[dependencies.cumulus-primitives-core]
207git = "https://github.com/paritytech/cumulus"204git = "https://github.com/paritytech/cumulus"
208branch = "polkadot-v0.9.33"205branch = "polkadot-v0.9.36"
209206
210[dependencies.cumulus-primitives-parachain-inherent]207[dependencies.cumulus-primitives-parachain-inherent]
211git = "https://github.com/paritytech/cumulus"208git = "https://github.com/paritytech/cumulus"
212branch = "polkadot-v0.9.33"209branch = "polkadot-v0.9.36"
213210
214[dependencies.cumulus-client-service]211[dependencies.cumulus-client-service]
215git = "https://github.com/paritytech/cumulus"212git = "https://github.com/paritytech/cumulus"
216branch = "polkadot-v0.9.33"213branch = "polkadot-v0.9.36"
217214
218[dependencies.cumulus-relay-chain-interface]215[dependencies.cumulus-relay-chain-interface]
219git = "https://github.com/paritytech/cumulus"216git = "https://github.com/paritytech/cumulus"
220branch = "polkadot-v0.9.33"217branch = "polkadot-v0.9.36"
221218
222[dependencies.cumulus-relay-chain-inprocess-interface]219[dependencies.cumulus-relay-chain-inprocess-interface]
223git = "https://github.com/paritytech/cumulus"220git = "https://github.com/paritytech/cumulus"
224branch = "polkadot-v0.9.33"221branch = "polkadot-v0.9.36"
225222
226[dependencies.cumulus-relay-chain-minimal-node]223[dependencies.cumulus-relay-chain-minimal-node]
227git = "https://github.com/paritytech/cumulus"224git = "https://github.com/paritytech/cumulus"
228branch = "polkadot-v0.9.33"225branch = "polkadot-v0.9.36"
229226
230################################################################################227################################################################################
231# Polkadot dependencies228# Polkadot dependencies
232[dependencies.polkadot-primitives]229[dependencies.polkadot-primitives]
233git = "https://github.com/paritytech/polkadot"230git = "https://github.com/paritytech/polkadot"
234branch = "release-v0.9.33"231branch = "release-v0.9.36"
235232
236[dependencies.polkadot-service]233[dependencies.polkadot-service]
237git = "https://github.com/paritytech/polkadot"234git = "https://github.com/paritytech/polkadot"
238branch = "release-v0.9.33"235branch = "release-v0.9.36"
239236
240[dependencies.polkadot-cli]237[dependencies.polkadot-cli]
241git = "https://github.com/paritytech/polkadot"238git = "https://github.com/paritytech/polkadot"
242branch = "release-v0.9.33"239branch = "release-v0.9.36"
243240
244[dependencies.polkadot-test-service]241[dependencies.polkadot-test-service]
245git = "https://github.com/paritytech/polkadot"242git = "https://github.com/paritytech/polkadot"
246branch = "release-v0.9.33"243branch = "release-v0.9.36"
247244
248[dependencies.polkadot-parachain]245[dependencies.polkadot-parachain]
249git = "https://github.com/paritytech/polkadot"246git = "https://github.com/paritytech/polkadot"
250branch = "release-v0.9.33"247branch = "release-v0.9.36"
251248
252249
253################################################################################250################################################################################
277274
278[dependencies.pallet-transaction-payment-rpc-runtime-api]275[dependencies.pallet-transaction-payment-rpc-runtime-api]
279git = "https://github.com/paritytech/substrate"276git = "https://github.com/paritytech/substrate"
280branch = "polkadot-v0.9.33"277branch = "polkadot-v0.9.36"
281278
282################################################################################279################################################################################
283# Package280# Package
291license = 'GPLv3'288license = 'GPLv3'
292name = 'unique-node'289name = 'unique-node'
293repository = 'https://github.com/UniqueNetwork/unique-chain'290repository = 'https://github.com/UniqueNetwork/unique-chain'
294version = "0.9.33"291version.workspace = true
295292
296[[bin]]293[[bin]]
297name = 'unique-collator'294name = 'unique-collator'
303[dependencies]300[dependencies]
304futures = '0.3.17'301futures = '0.3.17'
305log = '0.4.16'302log = '0.4.16'
306flexi_logger = "0.22.5"303flexi_logger = "0.24.2"
307parking_lot = '0.12.1'304parking_lot = '0.12.1'
308clap = "4.0.9"305clap = "4.0.9"
309jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }306jsonrpsee = { version = "0.16.2", features = ["server", "macros"] }
310tokio = { version = "1.19.2", features = ["time"] }307tokio = { version = "1.19.2", features = ["time"] }
311308
312fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }309fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
313fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }310fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
314fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }311fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
315fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }312fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
316fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }313fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
317fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }314fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
318pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }315pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
319316
320unique-rpc = { default-features = false, path = "../rpc" }317unique-rpc = { default-features = false, path = "../rpc" }
321app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }318app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }
modifiednode/cli/src/command.rsdiffbeforeafterboth
472 let autoseal_interval = Duration::from_millis(cli.idle_autoseal_interval);472 let autoseal_interval = Duration::from_millis(cli.idle_autoseal_interval);
473473
474 let mut config = config;474 let mut config = config;
475 if config.state_pruning == None {475
476 config.state_pruning = Some(sc_service::PruningMode::ArchiveAll);476 config.state_pruning = Some(sc_service::PruningMode::ArchiveAll);
477 }
478477
479 return start_node_using_chain_runtime! {478 return start_node_using_chain_runtime! {
480 start_dev_node(config, autoseal_interval).map_err(Into::into)479 start_dev_node(config, autoseal_interval).map_err(Into::into)
modifiednode/cli/src/service.rsdiffbeforeafterboth
58use sp_runtime::traits::BlakeTwo256;58use sp_runtime::traits::BlakeTwo256;
59use substrate_prometheus_endpoint::Registry;59use substrate_prometheus_endpoint::Registry;
60use sc_client_api::BlockchainEvents;60use sc_client_api::BlockchainEvents;
61use sc_consensus::ImportQueue;
6162
62use polkadot_service::CollatorPair;63use polkadot_service::CollatorPair;
6364
191type FullBackend = sc_service::TFullBackend<Block>;192type FullBackend = sc_service::TFullBackend<Block>;
192type FullSelectChain = sc_consensus::LongestChain<FullBackend, Block>;193type FullSelectChain = sc_consensus::LongestChain<FullBackend, Block>;
193type ParachainBlockImport<RuntimeApi, ExecutorDispatch> =194type ParachainBlockImport<RuntimeApi, ExecutorDispatch> =
194 TParachainBlockImport<Arc<FullClient<RuntimeApi, ExecutorDispatch>>>;195 TParachainBlockImport<Block, Arc<FullClient<RuntimeApi, ExecutorDispatch>>, FullBackend>;
195196
196/// Starts a `ServiceBuilder` for a full service.197/// Starts a `ServiceBuilder` for a full service.
197///198///
228 ExecutorDispatch: NativeExecutionDispatch + 'static,229 ExecutorDispatch: NativeExecutionDispatch + 'static,
229 BIQ: FnOnce(230 BIQ: FnOnce(
230 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,231 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,
232 Arc<FullBackend>,
231 &Configuration,233 &Configuration,
232 Option<TelemetryHandle>,234 Option<TelemetryHandle>,
233 &TaskManager,235 &TaskManager,
298300
299 let import_queue = build_import_queue(301 let import_queue = build_import_queue(
300 client.clone(),302 client.clone(),
303 backend.clone(),
301 config,304 config,
302 telemetry.as_ref().map(|telemetry| telemetry.handle()),305 telemetry.as_ref().map(|telemetry| telemetry.handle()),
303 &task_manager,306 &task_manager,
335 Arc<(dyn RelayChainInterface + 'static)>,338 Arc<(dyn RelayChainInterface + 'static)>,
336 Option<CollatorPair>,339 Option<CollatorPair>,
337)> {340)> {
338 match collator_options.relay_chain_rpc_url {341 if collator_options.relay_chain_rpc_urls.is_empty() {
339 Some(relay_chain_url) => {
340 build_minimal_relay_chain_node(polkadot_config, task_manager, relay_chain_url).await
341 }
342 None => build_inprocess_relay_chain(342 build_inprocess_relay_chain(
343 polkadot_config,343 polkadot_config,
344 parachain_config,344 parachain_config,
345 telemetry_worker_handle,345 telemetry_worker_handle,
346 task_manager,346 task_manager,
347 hwbench,347 hwbench,
348 ),348 )
349 }349 } else {
350 build_minimal_relay_chain_node(
351 polkadot_config,
352 task_manager,
353 collator_options.relay_chain_rpc_urls,
354 )
355 .await
356 }
350}357}
351358
352/// Start a node with the given parachain `Configuration` and relay chain `Configuration`.359/// Start a node with the given parachain `Configuration` and relay chain `Configuration`.
397 ExecutorDispatch: NativeExecutionDispatch + 'static,404 ExecutorDispatch: NativeExecutionDispatch + 'static,
398 BIQ: FnOnce(405 BIQ: FnOnce(
399 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,406 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,
407 Arc<FullBackend>,
400 &Configuration,408 &Configuration,
401 Option<TelemetryHandle>,409 Option<TelemetryHandle>,
402 &TaskManager,410 &TaskManager,
406 >,414 >,
407 BIC: FnOnce(415 BIC: FnOnce(
408 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,416 Arc<FullClient<RuntimeApi, ExecutorDispatch>>,
417 Arc<FullBackend>,
409 Option<&Registry>,418 Option<&Registry>,
410 Option<TelemetryHandle>,419 Option<TelemetryHandle>,
411 &TaskManager,420 &TaskManager,
447 let validator = parachain_config.role.is_authority();456 let validator = parachain_config.role.is_authority();
448 let prometheus_registry = parachain_config.prometheus_registry().cloned();457 let prometheus_registry = parachain_config.prometheus_registry().cloned();
449 let transaction_pool = params.transaction_pool.clone();458 let transaction_pool = params.transaction_pool.clone();
450 let import_queue = cumulus_client_service::SharedImportQueue::new(params.import_queue);459 let import_queue_service = params.import_queue.service();
451460
452 let (network, system_rpc_tx, tx_handler_controller, start_network) =461 let (network, system_rpc_tx, tx_handler_controller, start_network) =
453 sc_service::build_network(sc_service::BuildNetworkParams {462 sc_service::build_network(sc_service::BuildNetworkParams {
454 config: &parachain_config,463 config: &parachain_config,
455 client: client.clone(),464 client: client.clone(),
456 transaction_pool: transaction_pool.clone(),465 transaction_pool: transaction_pool.clone(),
457 spawn_handle: task_manager.spawn_handle(),466 spawn_handle: task_manager.spawn_handle(),
458 import_queue: import_queue.clone(),467 import_queue: params.import_queue,
459 block_announce_validator_builder: Some(Box::new(|_| {468 block_announce_validator_builder: Some(Box::new(|_| {
460 Box::new(block_announce_validator)469 Box::new(block_announce_validator)
461 })),470 })),
560 if validator {569 if validator {
561 let parachain_consensus = build_consensus(570 let parachain_consensus = build_consensus(
562 client.clone(),571 client.clone(),
572 backend.clone(),
563 prometheus_registry.as_ref(),573 prometheus_registry.as_ref(),
564 telemetry.as_ref().map(|t| t.handle()),574 telemetry.as_ref().map(|t| t.handle()),
565 &task_manager,575 &task_manager,
580 task_manager: &mut task_manager,590 task_manager: &mut task_manager,
581 spawner,591 spawner,
582 parachain_consensus,592 parachain_consensus,
583 import_queue,593 import_queue: import_queue_service,
584 collator_key: collator_key.expect("Command line arguments do not allow this. qed"),594 collator_key: collator_key.expect("Command line arguments do not allow this. qed"),
585 relay_chain_interface,595 relay_chain_interface,
586 relay_chain_slot_duration,596 relay_chain_slot_duration,
593 announce_block,603 announce_block,
594 task_manager: &mut task_manager,604 task_manager: &mut task_manager,
595 para_id: id,605 para_id: id,
596 import_queue,606 import_queue: import_queue_service,
597 relay_chain_interface,607 relay_chain_interface,
598 relay_chain_slot_duration,608 relay_chain_slot_duration,
599 };609 };
609/// Build the import queue for the the parachain runtime.619/// Build the import queue for the the parachain runtime.
610pub fn parachain_build_import_queue<RuntimeApi, ExecutorDispatch>(620pub fn parachain_build_import_queue<RuntimeApi, ExecutorDispatch>(
611 client: Arc<FullClient<RuntimeApi, ExecutorDispatch>>,621 client: Arc<FullClient<RuntimeApi, ExecutorDispatch>>,
622 backend: Arc<FullBackend>,
612 config: &Configuration,623 config: &Configuration,
613 telemetry: Option<TelemetryHandle>,624 telemetry: Option<TelemetryHandle>,
614 task_manager: &TaskManager,625 task_manager: &TaskManager,
629{640{
630 let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?;641 let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?;
631642
632 let block_import = ParachainBlockImport::new(client.clone());643 let block_import = ParachainBlockImport::new(client.clone(), backend.clone());
633644
634 cumulus_client_consensus_aura::import_queue::<645 cumulus_client_consensus_aura::import_queue::<
635 sp_consensus_aura::sr25519::AuthorityPair,646 sp_consensus_aura::sr25519::AuthorityPair,
708 id,719 id,
709 parachain_build_import_queue,720 parachain_build_import_queue,
710 |client,721 |client,
722 backend,
711 prometheus_registry,723 prometheus_registry,
712 telemetry,724 telemetry,
713 task_manager,725 task_manager,
726 telemetry.clone(),738 telemetry.clone(),
727 );739 );
728740
729 let block_import = ParachainBlockImport::new(client.clone());741 let block_import = ParachainBlockImport::new(client.clone(), backend.clone());
730742
731 Ok(AuraConsensus::build::<743 Ok(AuraConsensus::build::<
732 sp_consensus_aura::sr25519::AuthorityPair,744 sp_consensus_aura::sr25519::AuthorityPair,
785797
786fn dev_build_import_queue<RuntimeApi, ExecutorDispatch>(798fn dev_build_import_queue<RuntimeApi, ExecutorDispatch>(
787 client: Arc<FullClient<RuntimeApi, ExecutorDispatch>>,799 client: Arc<FullClient<RuntimeApi, ExecutorDispatch>>,
800 _: Arc<FullBackend>,
788 config: &Configuration,801 config: &Configuration,
789 _: Option<TelemetryHandle>,802 _: Option<TelemetryHandle>,
790 task_manager: &TaskManager,803 task_manager: &TaskManager,
modifiednode/rpc/Cargo.tomldiffbeforeafterboth
1111
12[dependencies]12[dependencies]
13futures = { version = "0.3.17", features = ["compat"] }13futures = { version = "0.3.17", features = ["compat"] }
14jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }14jsonrpsee = { version = "0.16.2", features = ["server", "macros"] }
15# pallet-contracts-rpc = { git = 'https://github.com/paritytech/substrate', branch = 'master' }15# pallet-contracts-rpc = { git = 'https://github.com/paritytech/substrate', branch = 'master' }
16pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
20sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }20sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
21sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
22sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }22sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
23sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }23sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
24sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
25sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }25sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
26sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }26sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
27sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }27sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
28sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }28sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
29sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }29sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
30sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }30sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
31sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }31sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
32sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }32sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
33sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }33sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
34sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }34sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
35sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }35sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
36sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }36sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
37sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }37sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
38sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }38sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
39sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }39sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
40substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }40substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
41tokio = { version = "1.19.2", features = ["macros", "sync"] }41tokio = { version = "1.19.2", features = ["macros", "sync"] }
4242
43pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }43pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
44fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }44fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
45fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }45fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
46fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }46fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
47fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }47fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
48fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }48fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
49fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }49fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
5050
51pallet-common = { default-features = false, path = "../../pallets/common" }51pallet-common = { default-features = false, path = "../../pallets/common" }
52up-common = { path = "../../primitives/common" }52up-common = { path = "../../primitives/common" }
modifiedpallets/app-promotion/Cargo.tomldiffbeforeafterboth
50codec = { default-features = false, features = [50codec = { default-features = false, features = [
51 'derive',51 'derive',
52], package = 'parity-scale-codec', version = '3.1.2' }52], package = 'parity-scale-codec', version = '3.1.2' }
53frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }53frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
54frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }54frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
55frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }55frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
56pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }56pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
57pallet-timestamp = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }57pallet-timestamp = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
58pallet-randomness-collective-flip = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }58pallet-randomness-collective-flip = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
59pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }59pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
60sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }60sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
61sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }61sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
62sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }62sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
63sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }63sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
64serde = { default-features = false, features = ['derive'], version = '1.0.130' }64serde = { default-features = false, features = ['derive'], version = '1.0.130' }
6565
66################################################################################66################################################################################
modifiedpallets/app-promotion/src/lib.rsdiffbeforeafterboth
301 /// # Arguments301 /// # Arguments
302 ///302 ///
303 /// * `admin`: account of the new admin.303 /// * `admin`: account of the new admin.
304 #[pallet::call_index(0)]
304 #[pallet::weight(<T as Config>::WeightInfo::set_admin_address())]305 #[pallet::weight(<T as Config>::WeightInfo::set_admin_address())]
305 pub fn set_admin_address(origin: OriginFor<T>, admin: T::CrossAccountId) -> DispatchResult {306 pub fn set_admin_address(origin: OriginFor<T>, admin: T::CrossAccountId) -> DispatchResult {
306 ensure_root(origin)?;307 ensure_root(origin)?;
319 /// # Arguments320 /// # Arguments
320 ///321 ///
321 /// * `amount`: in native tokens.322 /// * `amount`: in native tokens.
323 #[pallet::call_index(1)]
322 #[pallet::weight(<T as Config>::WeightInfo::stake())]324 #[pallet::weight(<T as Config>::WeightInfo::stake())]
323 pub fn stake(staker: OriginFor<T>, amount: BalanceOf<T>) -> DispatchResult {325 pub fn stake(staker: OriginFor<T>, amount: BalanceOf<T>) -> DispatchResult {
324 let staker_id = ensure_signed(staker)?;326 let staker_id = ensure_signed(staker)?;
393 /// Moves the sum of all stakes to the `reserved` state.395 /// Moves the sum of all stakes to the `reserved` state.
394 /// After the end of `PendingInterval` this sum becomes completely396 /// After the end of `PendingInterval` this sum becomes completely
395 /// free for further use.397 /// free for further use.
398 #[pallet::call_index(2)]
396 #[pallet::weight(<T as Config>::WeightInfo::unstake())]399 #[pallet::weight(<T as Config>::WeightInfo::unstake())]
397 pub fn unstake(staker: OriginFor<T>) -> DispatchResultWithPostInfo {400 pub fn unstake(staker: OriginFor<T>) -> DispatchResultWithPostInfo {
398 let staker_id = ensure_signed(staker)?;401 let staker_id = ensure_signed(staker)?;
454 /// # Arguments457 /// # Arguments
455 ///458 ///
456 /// * `collection_id`: ID of the collection that will be sponsored by `pallet_id`459 /// * `collection_id`: ID of the collection that will be sponsored by `pallet_id`
460 #[pallet::call_index(3)]
457 #[pallet::weight(<T as Config>::WeightInfo::sponsor_collection())]461 #[pallet::weight(<T as Config>::WeightInfo::sponsor_collection())]
458 pub fn sponsor_collection(462 pub fn sponsor_collection(
459 admin: OriginFor<T>,463 admin: OriginFor<T>,
479 /// # Arguments483 /// # Arguments
480 ///484 ///
481 /// * `collection_id`: ID of the collection that is sponsored by `pallet_id`485 /// * `collection_id`: ID of the collection that is sponsored by `pallet_id`
486 #[pallet::call_index(4)]
482 #[pallet::weight(<T as Config>::WeightInfo::stop_sponsoring_collection())]487 #[pallet::weight(<T as Config>::WeightInfo::stop_sponsoring_collection())]
483 pub fn stop_sponsoring_collection(488 pub fn stop_sponsoring_collection(
484 admin: OriginFor<T>,489 admin: OriginFor<T>,
508 /// # Arguments513 /// # Arguments
509 ///514 ///
510 /// * `contract_id`: the contract address that will be sponsored by `pallet_id`515 /// * `contract_id`: the contract address that will be sponsored by `pallet_id`
516 #[pallet::call_index(5)]
511 #[pallet::weight(<T as Config>::WeightInfo::sponsor_contract())]517 #[pallet::weight(<T as Config>::WeightInfo::sponsor_contract())]
512 pub fn sponsor_contract(admin: OriginFor<T>, contract_id: H160) -> DispatchResult {518 pub fn sponsor_contract(admin: OriginFor<T>, contract_id: H160) -> DispatchResult {
513 let admin_id = ensure_signed(admin)?;519 let admin_id = ensure_signed(admin)?;
534 /// # Arguments540 /// # Arguments
535 ///541 ///
536 /// * `contract_id`: the contract address that is sponsored by `pallet_id`542 /// * `contract_id`: the contract address that is sponsored by `pallet_id`
543 #[pallet::call_index(6)]
537 #[pallet::weight(<T as Config>::WeightInfo::stop_sponsoring_contract())]544 #[pallet::weight(<T as Config>::WeightInfo::stop_sponsoring_contract())]
538 pub fn stop_sponsoring_contract(admin: OriginFor<T>, contract_id: H160) -> DispatchResult {545 pub fn stop_sponsoring_contract(admin: OriginFor<T>, contract_id: H160) -> DispatchResult {
539 let admin_id = ensure_signed(admin)?;546 let admin_id = ensure_signed(admin)?;
564 /// # Arguments571 /// # Arguments
565 ///572 ///
566 /// * `stakers_number`: the number of stakers for which recalculation will be performed573 /// * `stakers_number`: the number of stakers for which recalculation will be performed
574 #[pallet::call_index(7)]
567 #[pallet::weight(<T as Config>::WeightInfo::payout_stakers(stakers_number.unwrap_or(DEFAULT_NUMBER_PAYOUTS) as u32))]575 #[pallet::weight(<T as Config>::WeightInfo::payout_stakers(stakers_number.unwrap_or(DEFAULT_NUMBER_PAYOUTS) as u32))]
568 pub fn payout_stakers(admin: OriginFor<T>, stakers_number: Option<u8>) -> DispatchResult {576 pub fn payout_stakers(admin: OriginFor<T>, stakers_number: Option<u8>) -> DispatchResult {
569 let admin_id = ensure_signed(admin)?;577 let admin_id = ensure_signed(admin)?;
modifiedpallets/common/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
20fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }20fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
22pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }22pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
23evm-coder = { default-features = false, path = '../../crates/evm-coder' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }
24ethereum = { version = "0.14.0", default-features = false }24ethereum = { version = "0.14.0", default-features = false }
25pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }25pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2626
27serde = { version = "1.0.130", default-features = false }27serde = { version = "1.0.130", default-features = false }
28scale-info = { version = "2.0.1", default-features = false, features = [28scale-info = { version = "2.0.1", default-features = false, features = [
modifiedpallets/configuration/Cargo.tomldiffbeforeafterboth
10scale-info = { version = "2.0.1", default-features = false, features = [10scale-info = { version = "2.0.1", default-features = false, features = [
11 "derive",11 "derive",
12] }12] }
13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-arithmetic = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-arithmetic = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
20smallvec = "1.6.1"20smallvec = "1.6.1"
21xcm = { default-features = false, git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.33" }21xcm = { default-features = false, git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.36" }
2222
23[features]23[features]
24default = ["std"]24default = ["std"]
modifiedpallets/configuration/src/lib.rsdiffbeforeafterboth
8888
89 #[pallet::call]89 #[pallet::call]
90 impl<T: Config> Pallet<T> {90 impl<T: Config> Pallet<T> {
91 #[pallet::call_index(0)]
91 #[pallet::weight(T::DbWeight::get().writes(1))]92 #[pallet::weight(T::DbWeight::get().writes(1))]
92 pub fn set_weight_to_fee_coefficient_override(93 pub fn set_weight_to_fee_coefficient_override(
93 origin: OriginFor<T>,94 origin: OriginFor<T>,
102 Ok(())103 Ok(())
103 }104 }
104105
106 #[pallet::call_index(1)]
105 #[pallet::weight(T::DbWeight::get().writes(1))]107 #[pallet::weight(T::DbWeight::get().writes(1))]
106 pub fn set_min_gas_price_override(108 pub fn set_min_gas_price_override(
107 origin: OriginFor<T>,109 origin: OriginFor<T>,
116 Ok(())118 Ok(())
117 }119 }
118120
121 #[pallet::call_index(2)]
119 #[pallet::weight(T::DbWeight::get().writes(1))]122 #[pallet::weight(T::DbWeight::get().writes(1))]
120 pub fn set_xcm_allowed_locations(123 pub fn set_xcm_allowed_locations(
121 origin: OriginFor<T>,124 origin: OriginFor<T>,
126 Ok(())129 Ok(())
127 }130 }
128131
132 #[pallet::call_index(3)]
129 #[pallet::weight(T::DbWeight::get().writes(1))]133 #[pallet::weight(T::DbWeight::get().writes(1))]
130 pub fn set_app_promotion_configuration_override(134 pub fn set_app_promotion_configuration_override(
131 origin: OriginFor<T>,135 origin: OriginFor<T>,
modifiedpallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth
8scale-info = { version = "2.0.1", default-features = false, features = [8scale-info = { version = "2.0.1", default-features = false, features = [
9 "derive",9 "derive",
10] }10] }
11sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }11sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
12sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }12sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
13ethereum = { version = "0.14.0", default-features = false }13ethereum = { version = "0.14.0", default-features = false }
14evm-coder = { default-features = false, path = "../../crates/evm-coder" }14evm-coder = { default-features = false, path = "../../crates/evm-coder" }
15pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }15pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
16pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }16pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
17frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
20up-data-structs = { default-features = false, path = "../../primitives/data-structs" }20up-data-structs = { default-features = false, path = "../../primitives/data-structs" }
2121
22[dependencies.codec]22[dependencies.codec]
modifiedpallets/evm-coder-substrate/src/lib.rsdiffbeforeafterboth
7373
74 #[pallet::call]74 #[pallet::call]
75 impl<T: Config> Pallet<T> {75 impl<T: Config> Pallet<T> {
76 #[pallet::call_index(0)]
76 #[pallet::weight(0)]77 #[pallet::weight(0)]
77 pub fn empty_call(origin: OriginFor<T>) -> DispatchResult {78 pub fn empty_call(origin: OriginFor<T>) -> DispatchResult {
78 let _sender = ensure_signed(origin)?;79 let _sender = ensure_signed(origin)?;
modifiedpallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth
12ethereum = { version = "0.14.0", default-features = false }12ethereum = { version = "0.14.0", default-features = false }
1313
14# Substrate14# Substrate
15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2020
21# Unique21# Unique
22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
23fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }23fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
24up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33" }24up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36" }
2525
26# Locals26# Locals
27evm-coder = { default-features = false, path = '../../crates/evm-coder' }27evm-coder = { default-features = false, path = '../../crates/evm-coder' }
modifiedpallets/evm-migration/Cargo.tomldiffbeforeafterboth
9 "derive",9 "derive",
10] }10] }
11ethereum = { version = "0.14.0", default-features = false }11ethereum = { version = "0.14.0", default-features = false }
12frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }12frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
13frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
20fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }20fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2121
22[dependencies.codec]22[dependencies.codec]
23default-features = false23default-features = false
modifiedpallets/evm-migration/src/lib.rsdiffbeforeafterboth
73 impl<T: Config> Pallet<T> {73 impl<T: Config> Pallet<T> {
74 /// Start contract migration, inserts contract stub at target address,74 /// Start contract migration, inserts contract stub at target address,
75 /// and marks account as pending, allowing to insert storage75 /// and marks account as pending, allowing to insert storage
76 #[pallet::call_index(0)]
76 #[pallet::weight(<SelfWeightOf<T>>::begin())]77 #[pallet::weight(<SelfWeightOf<T>>::begin())]
77 pub fn begin(origin: OriginFor<T>, address: H160) -> DispatchResult {78 pub fn begin(origin: OriginFor<T>, address: H160) -> DispatchResult {
78 ensure_root(origin)?;79 ensure_root(origin)?;
8788
88 /// Insert items into contract storage, this method can be called89 /// Insert items into contract storage, this method can be called
89 /// multiple times90 /// multiple times
91 #[pallet::call_index(1)]
90 #[pallet::weight(<SelfWeightOf<T>>::set_data(data.len() as u32))]92 #[pallet::weight(<SelfWeightOf<T>>::set_data(data.len() as u32))]
91 pub fn set_data(93 pub fn set_data(
92 origin: OriginFor<T>,94 origin: OriginFor<T>,
108 /// Finish contract migration, allows it to be called.110 /// Finish contract migration, allows it to be called.
109 /// It is not possible to alter contract storage via [`Self::set_data`]111 /// It is not possible to alter contract storage via [`Self::set_data`]
110 /// after this call.112 /// after this call.
113 #[pallet::call_index(2)]
111 #[pallet::weight(<SelfWeightOf<T>>::finish(code.len() as u32))]114 #[pallet::weight(<SelfWeightOf<T>>::finish(code.len() as u32))]
112 pub fn finish(origin: OriginFor<T>, address: H160, code: Vec<u8>) -> DispatchResult {115 pub fn finish(origin: OriginFor<T>, address: H160, code: Vec<u8>) -> DispatchResult {
113 ensure_root(origin)?;116 ensure_root(origin)?;
122 }125 }
123126
124 /// Create ethereum events attached to the fake transaction127 /// Create ethereum events attached to the fake transaction
128 #[pallet::call_index(3)]
125 #[pallet::weight(<SelfWeightOf<T>>::insert_eth_logs(logs.len() as u32))]129 #[pallet::weight(<SelfWeightOf<T>>::insert_eth_logs(logs.len() as u32))]
126 pub fn insert_eth_logs(origin: OriginFor<T>, logs: Vec<ethereum::Log>) -> DispatchResult {130 pub fn insert_eth_logs(origin: OriginFor<T>, logs: Vec<ethereum::Log>) -> DispatchResult {
127 ensure_root(origin)?;131 ensure_root(origin)?;
133 }137 }
134138
135 /// Create substrate events139 /// Create substrate events
140 #[pallet::call_index(4)]
136 #[pallet::weight(<SelfWeightOf<T>>::insert_events(events.len() as u32))]141 #[pallet::weight(<SelfWeightOf<T>>::insert_events(events.len() as u32))]
137 pub fn insert_events(origin: OriginFor<T>, events: Vec<Vec<u8>>) -> DispatchResult {142 pub fn insert_events(origin: OriginFor<T>, events: Vec<Vec<u8>>) -> DispatchResult {
138 ensure_root(origin)?;143 ensure_root(origin)?;
modifiedpallets/evm-transaction-payment/Cargo.tomldiffbeforeafterboth
8scale-info = { version = "2.0.1", default-features = false, features = [8scale-info = { version = "2.0.1", default-features = false, features = [
9 "derive",9 "derive",
10] }10] }
11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
13sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
18fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }18fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
19pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
20up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33" }20up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36" }
21fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }21fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2222
23[dependencies.codec]23[dependencies.codec]
24default-features = false24default-features = false
modifiedpallets/foreign-assets/Cargo.tomldiffbeforeafterboth
1cargo-features = ["workspace-inheritance"]
2
3[package]1[package]
4name = "pallet-foreign-assets"2name = "pallet-foreign-assets"
13 "derive",11 "derive",
14] }12] }
15codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false }13codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false }
16sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33", default-features = false }14sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36", default-features = false }
17sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33", default-features = false }15sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36", default-features = false }
18frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33", default-features = false }16frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36", default-features = false }
19frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33", default-features = false }17frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36", default-features = false }
20up-data-structs = { default-features = false, path = '../../primitives/data-structs' }18up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
21pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33", default-features = false }19pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36", default-features = false }
22pallet-common = { default-features = false, path = '../common' }20pallet-common = { default-features = false, path = '../common' }
23pallet-fungible = { default-features = false, path = '../fungible' }21pallet-fungible = { default-features = false, path = '../fungible' }
24xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.33", default-features = false }22xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.36", default-features = false }
25xcm-builder = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.33", default-features = false }23xcm-builder = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.36", default-features = false }
26xcm-executor = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.33", default-features = false }24xcm-executor = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.36", default-features = false }
27orml-tokens.workspace = true25orml-tokens.workspace = true
28frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }26frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2927
30[dev-dependencies]28[dev-dependencies]
31serde_json = "1.0.68"29serde_json = "1.0.68"
32hex = { version = "0.4" }30hex = { version = "0.4" }
33sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }31sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
34sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }32sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
35pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }33pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
36pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }34pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
3735
38[features]36[features]
39default = ["std"]37default = ["std"]
modifiedpallets/foreign-assets/src/impl_fungibles.rsdiffbeforeafterboth
259 }259 }
260 }260 }
261
262 fn asset_exists(asset: AssetIds) -> bool {
263 match asset {
264 AssetIds::NativeAssetId(_) => true,
265 AssetIds::ForeignAssetId(fid) => <AssetBinding<T>>::contains_key(fid),
266 }
267 }
261}268}
262269
263impl<T: Config> fungibles::Mutate<<T as SystemConfig>::AccountId> for Pallet<T>270impl<T: Config> fungibles::Mutate<<T as SystemConfig>::AccountId> for Pallet<T>
modifiedpallets/foreign-assets/src/lib.rsdiffbeforeafterboth
283283
284 #[pallet::call]284 #[pallet::call]
285 impl<T: Config> Pallet<T> {285 impl<T: Config> Pallet<T> {
286 #[pallet::call_index(0)]
286 #[pallet::weight(<T as Config>::WeightInfo::register_foreign_asset())]287 #[pallet::weight(<T as Config>::WeightInfo::register_foreign_asset())]
287 pub fn register_foreign_asset(288 pub fn register_foreign_asset(
288 origin: OriginFor<T>,289 origin: OriginFor<T>,
323 Ok(())324 Ok(())
324 }325 }
325326
327 #[pallet::call_index(1)]
326 #[pallet::weight(<T as Config>::WeightInfo::update_foreign_asset())]328 #[pallet::weight(<T as Config>::WeightInfo::update_foreign_asset())]
327 pub fn update_foreign_asset(329 pub fn update_foreign_asset(
328 origin: OriginFor<T>,330 origin: OriginFor<T>,
modifiedpallets/fungible/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }
20pallet-structure = { default-features = false, path = '../structure' }20pallet-structure = { default-features = false, path = '../structure' }
21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
22evm-coder = { default-features = false, path = '../../crates/evm-coder' }22evm-coder = { default-features = false, path = '../../crates/evm-coder' }
23pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }23pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }
24ethereum = { version = "0.14.0", default-features = false }24ethereum = { version = "0.14.0", default-features = false }
25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
26pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }26pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
27scale-info = { version = "2.0.1", default-features = false, features = [27scale-info = { version = "2.0.1", default-features = false, features = [
28 "derive",28 "derive",
29] }29] }
modifiedpallets/inflation/Cargo.tomldiffbeforeafterboth
44default-features = false44default-features = false
45optional = true45optional = true
46git = "https://github.com/paritytech/substrate"46git = "https://github.com/paritytech/substrate"
47branch = "polkadot-v0.9.33"47branch = "polkadot-v0.9.36"
4848
49[dependencies.frame-support]49[dependencies.frame-support]
50default-features = false50default-features = false
51git = "https://github.com/paritytech/substrate"51git = "https://github.com/paritytech/substrate"
52branch = "polkadot-v0.9.33"52branch = "polkadot-v0.9.36"
5353
54[dependencies.frame-system]54[dependencies.frame-system]
55default-features = false55default-features = false
56git = "https://github.com/paritytech/substrate"56git = "https://github.com/paritytech/substrate"
57branch = "polkadot-v0.9.33"57branch = "polkadot-v0.9.36"
5858
59[dependencies.pallet-balances]59[dependencies.pallet-balances]
60default-features = false60default-features = false
61git = "https://github.com/paritytech/substrate"61git = "https://github.com/paritytech/substrate"
62branch = "polkadot-v0.9.33"62branch = "polkadot-v0.9.36"
6363
64[dependencies.pallet-timestamp]64[dependencies.pallet-timestamp]
65default-features = false65default-features = false
66git = "https://github.com/paritytech/substrate"66git = "https://github.com/paritytech/substrate"
67branch = "polkadot-v0.9.33"67branch = "polkadot-v0.9.36"
6868
69[dependencies.pallet-randomness-collective-flip]69[dependencies.pallet-randomness-collective-flip]
70default-features = false70default-features = false
71git = "https://github.com/paritytech/substrate"71git = "https://github.com/paritytech/substrate"
72branch = "polkadot-v0.9.33"72branch = "polkadot-v0.9.36"
7373
74[dependencies.sp-std]74[dependencies.sp-std]
75default-features = false75default-features = false
76git = "https://github.com/paritytech/substrate"76git = "https://github.com/paritytech/substrate"
77branch = "polkadot-v0.9.33"77branch = "polkadot-v0.9.36"
7878
79[dependencies.serde]79[dependencies.serde]
80default-features = false80default-features = false
84[dependencies.sp-runtime]84[dependencies.sp-runtime]
85default-features = false85default-features = false
86git = "https://github.com/paritytech/substrate"86git = "https://github.com/paritytech/substrate"
87branch = "polkadot-v0.9.33"87branch = "polkadot-v0.9.36"
8888
89[dependencies.sp-core]89[dependencies.sp-core]
90default-features = false90default-features = false
91git = "https://github.com/paritytech/substrate"91git = "https://github.com/paritytech/substrate"
92branch = "polkadot-v0.9.33"92branch = "polkadot-v0.9.36"
9393
94[dependencies.sp-io]94[dependencies.sp-io]
95default-features = false95default-features = false
96git = "https://github.com/paritytech/substrate"96git = "https://github.com/paritytech/substrate"
97branch = "polkadot-v0.9.33"97branch = "polkadot-v0.9.36"
9898
99[dependencies]99[dependencies]
100scale-info = { version = "2.0.1", default-features = false, features = [100scale-info = { version = "2.0.1", default-features = false, features = [
modifiedpallets/inflation/src/lib.rsdiffbeforeafterboth
163 /// # Arguments163 /// # Arguments
164 ///164 ///
165 /// * inflation_start_relay_block: The relay chain block at which inflation should start165 /// * inflation_start_relay_block: The relay chain block at which inflation should start
166 #[pallet::call_index(0)]
166 #[pallet::weight(0)]167 #[pallet::weight(0)]
167 pub fn start_inflation(168 pub fn start_inflation(
168 origin: OriginFor<T>,169 origin: OriginFor<T>,
modifiedpallets/maintenance/Cargo.tomldiffbeforeafterboth
14scale-info = { version = "2.1.1", default-features = false, features = ["derive"] }16scale-info = { version = "2.1.1", default-features = false, features = [
17 "derive",
18] }
15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }20frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }22sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
1923
20[features]24[features]
21default = ["std"]25default = ["std"]
modifiedpallets/maintenance/src/lib.rsdiffbeforeafterboth
5555
56 #[pallet::call]56 #[pallet::call]
57 impl<T: Config> Pallet<T> {57 impl<T: Config> Pallet<T> {
58 #[pallet::call_index(0)]
58 #[pallet::weight(<T as Config>::WeightInfo::enable())]59 #[pallet::weight(<T as Config>::WeightInfo::enable())]
59 pub fn enable(origin: OriginFor<T>) -> DispatchResult {60 pub fn enable(origin: OriginFor<T>) -> DispatchResult {
60 ensure_root(origin)?;61 ensure_root(origin)?;
66 Ok(())67 Ok(())
67 }68 }
6869
70 #[pallet::call_index(1)]
69 #[pallet::weight(<T as Config>::WeightInfo::disable())]71 #[pallet::weight(<T as Config>::WeightInfo::disable())]
70 pub fn disable(origin: OriginFor<T>) -> DispatchResult {72 pub fn disable(origin: OriginFor<T>) -> DispatchResult {
71 ensure_root(origin)?;73 ensure_root(origin)?;
modifiedpallets/nonfungible/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
20pallet-common = { default-features = false, path = '../common' }20pallet-common = { default-features = false, path = '../common' }
21pallet-structure = { default-features = false, path = '../structure' }21pallet-structure = { default-features = false, path = '../structure' }
22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
23evm-coder = { default-features = false, path = '../../crates/evm-coder' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }
24pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }24pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }
25ethereum = { version = "0.14.0", default-features = false }25ethereum = { version = "0.14.0", default-features = false }
26frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }26frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
27scale-info = { version = "2.0.1", default-features = false, features = [27scale-info = { version = "2.0.1", default-features = false, features = [
28 "derive",28 "derive",
29] }29] }
modifiedpallets/proxy-rmrk-core/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }
20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
21pallet-structure = { default-features = false, path = "../../pallets/structure" }21pallet-structure = { default-features = false, path = "../../pallets/structure" }
22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
23pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }23pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
25rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }25rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }
26scale-info = { version = "2.0.1", default-features = false, features = [26scale-info = { version = "2.0.1", default-features = false, features = [
27 "derive",27 "derive",
modifiedpallets/proxy-rmrk-core/src/lib.rsdiffbeforeafterboth
357 /// - `max`: Optional maximum number of tokens.357 /// - `max`: Optional maximum number of tokens.
358 /// - `symbol`: UTF-8 string with token prefix, by which to represent the token in wallets and UIs.358 /// - `symbol`: UTF-8 string with token prefix, by which to represent the token in wallets and UIs.
359 /// Analogous to Unique's [`token_prefix`](up_data_structs::Collection). Cannot be changed.359 /// Analogous to Unique's [`token_prefix`](up_data_structs::Collection). Cannot be changed.
360 #[pallet::call_index(0)]
360 #[pallet::weight(<SelfWeightOf<T>>::create_collection())]361 #[pallet::weight(<SelfWeightOf<T>>::create_collection())]
361 pub fn create_collection(362 pub fn create_collection(
362 origin: OriginFor<T>,363 origin: OriginFor<T>,
430 /// # Arguments:431 /// # Arguments:
431 /// - `origin`: sender of the transaction432 /// - `origin`: sender of the transaction
432 /// - `collection_id`: RMRK ID of the collection to destroy.433 /// - `collection_id`: RMRK ID of the collection to destroy.
434 #[pallet::call_index(1)]
433 #[pallet::weight(<SelfWeightOf<T>>::destroy_collection())]435 #[pallet::weight(<SelfWeightOf<T>>::destroy_collection())]
434 pub fn destroy_collection(436 pub fn destroy_collection(
435 origin: OriginFor<T>,437 origin: OriginFor<T>,
464 /// - `origin`: sender of the transaction466 /// - `origin`: sender of the transaction
465 /// - `collection_id`: RMRK collection ID to change the issuer of.467 /// - `collection_id`: RMRK collection ID to change the issuer of.
466 /// - `new_issuer`: Collection's new issuer.468 /// - `new_issuer`: Collection's new issuer.
469 #[pallet::call_index(2)]
467 #[pallet::weight(<SelfWeightOf<T>>::change_collection_issuer())]470 #[pallet::weight(<SelfWeightOf<T>>::change_collection_issuer())]
468 pub fn change_collection_issuer(471 pub fn change_collection_issuer(
469 origin: OriginFor<T>,472 origin: OriginFor<T>,
501 /// # Arguments:504 /// # Arguments:
502 /// - `origin`: sender of the transaction505 /// - `origin`: sender of the transaction
503 /// - `collection_id`: RMRK ID of the collection to lock.506 /// - `collection_id`: RMRK ID of the collection to lock.
507 #[pallet::call_index(3)]
504 #[pallet::weight(<SelfWeightOf<T>>::lock_collection())]508 #[pallet::weight(<SelfWeightOf<T>>::lock_collection())]
505 pub fn lock_collection(509 pub fn lock_collection(
506 origin: OriginFor<T>,510 origin: OriginFor<T>,
545 /// - `metadata`: Arbitrary data about an NFT, e.g. IPFS hash. Cannot be changed.549 /// - `metadata`: Arbitrary data about an NFT, e.g. IPFS hash. Cannot be changed.
546 /// - `transferable`: Can this NFT be transferred? Cannot be changed.550 /// - `transferable`: Can this NFT be transferred? Cannot be changed.
547 /// - `resources`: Resource data to be added to the NFT immediately after minting.551 /// - `resources`: Resource data to be added to the NFT immediately after minting.
552 #[pallet::call_index(4)]
548 #[pallet::weight(<SelfWeightOf<T>>::mint_nft(resources.as_ref().map(|r| r.len() as u32).unwrap_or(0)))]553 #[pallet::weight(<SelfWeightOf<T>>::mint_nft(resources.as_ref().map(|r| r.len() as u32).unwrap_or(0)))]
549 pub fn mint_nft(554 pub fn mint_nft(
550 origin: OriginFor<T>,555 origin: OriginFor<T>,
628 /// - `max_burns`: Maximum number of tokens to burn, assuming nesting. The transaction633 /// - `max_burns`: Maximum number of tokens to burn, assuming nesting. The transaction
629 /// is reverted if there are more tokens to burn in the nesting tree than this number.634 /// is reverted if there are more tokens to burn in the nesting tree than this number.
630 /// This is primarily a mechanism of transaction weight control.635 /// This is primarily a mechanism of transaction weight control.
636 #[pallet::call_index(5)]
631 #[pallet::weight(<SelfWeightOf<T>>::burn_nft(*max_burns))]637 #[pallet::weight(<SelfWeightOf<T>>::burn_nft(*max_burns))]
632 pub fn burn_nft(638 pub fn burn_nft(
633 origin: OriginFor<T>,639 origin: OriginFor<T>,
675 /// - `rmrk_collection_id`: RMRK ID of the collection of the NFT to be transferred.681 /// - `rmrk_collection_id`: RMRK ID of the collection of the NFT to be transferred.
676 /// - `rmrk_nft_id`: ID of the NFT to be transferred.682 /// - `rmrk_nft_id`: ID of the NFT to be transferred.
677 /// - `new_owner`: New owner of the nft which can be either an account or a NFT.683 /// - `new_owner`: New owner of the nft which can be either an account or a NFT.
684 #[pallet::call_index(6)]
678 #[pallet::weight(<SelfWeightOf<T>>::send())]685 #[pallet::weight(<SelfWeightOf<T>>::send())]
679 pub fn send(686 pub fn send(
680 origin: OriginFor<T>,687 origin: OriginFor<T>,
800 /// - `rmrk_nft_id`: ID of the NFT to be accepted.807 /// - `rmrk_nft_id`: ID of the NFT to be accepted.
801 /// - `new_owner`: Either the sender's account ID or a sender-owned NFT,808 /// - `new_owner`: Either the sender's account ID or a sender-owned NFT,
802 /// whichever the accepted NFT was sent to.809 /// whichever the accepted NFT was sent to.
810 #[pallet::call_index(7)]
803 #[pallet::weight(<SelfWeightOf<T>>::accept_nft())]811 #[pallet::weight(<SelfWeightOf<T>>::accept_nft())]
804 pub fn accept_nft(812 pub fn accept_nft(
805 origin: OriginFor<T>,813 origin: OriginFor<T>,
890 /// - `origin`: sender of the transaction898 /// - `origin`: sender of the transaction
891 /// - `rmrk_collection_id`: RMRK ID of the NFT to be rejected.899 /// - `rmrk_collection_id`: RMRK ID of the NFT to be rejected.
892 /// - `rmrk_nft_id`: ID of the NFT to be rejected.900 /// - `rmrk_nft_id`: ID of the NFT to be rejected.
901 #[pallet::call_index(8)]
893 #[pallet::weight(<SelfWeightOf<T>>::reject_nft())]902 #[pallet::weight(<SelfWeightOf<T>>::reject_nft())]
894 pub fn reject_nft(903 pub fn reject_nft(
895 origin: OriginFor<T>,904 origin: OriginFor<T>,
957 /// - `rmrk_nft_id`: ID of the NFT with a pending resource to be accepted.966 /// - `rmrk_nft_id`: ID of the NFT with a pending resource to be accepted.
958 /// - `resource_id`: ID of the newly created pending resource.967 /// - `resource_id`: ID of the newly created pending resource.
959 /// accept the addition of a new resource to an existing NFT968 /// accept the addition of a new resource to an existing NFT
969 #[pallet::call_index(9)]
960 #[pallet::weight(<SelfWeightOf<T>>::accept_resource())]970 #[pallet::weight(<SelfWeightOf<T>>::accept_resource())]
961 pub fn accept_resource(971 pub fn accept_resource(
962 origin: OriginFor<T>,972 origin: OriginFor<T>,
1011 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.1021 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.
1012 /// - `rmrk_nft_id`: ID of the NFT with a resource to be removed.1022 /// - `rmrk_nft_id`: ID of the NFT with a resource to be removed.
1013 /// - `resource_id`: ID of the removal-pending resource.1023 /// - `resource_id`: ID of the removal-pending resource.
1024 #[pallet::call_index(10)]
1014 #[pallet::weight(<SelfWeightOf<T>>::accept_resource_removal())]1025 #[pallet::weight(<SelfWeightOf<T>>::accept_resource_removal())]
1015 pub fn accept_resource_removal(1026 pub fn accept_resource_removal(
1016 origin: OriginFor<T>,1027 origin: OriginFor<T>,
1092 /// - `maybe_nft_id`: Optional ID of the NFT. If left empty, then the property is set for the collection.1103 /// - `maybe_nft_id`: Optional ID of the NFT. If left empty, then the property is set for the collection.
1093 /// - `key`: Key of the custom property to be referenced by.1104 /// - `key`: Key of the custom property to be referenced by.
1094 /// - `value`: Value of the custom property to be stored.1105 /// - `value`: Value of the custom property to be stored.
1106 #[pallet::call_index(11)]
1095 #[pallet::weight(<SelfWeightOf<T>>::set_property())]1107 #[pallet::weight(<SelfWeightOf<T>>::set_property())]
1096 pub fn set_property(1108 pub fn set_property(
1097 origin: OriginFor<T>,1109 origin: OriginFor<T>,
1165 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.1177 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.
1166 /// - `rmrk_nft_id`: ID of the NFT to rearrange resource priorities for.1178 /// - `rmrk_nft_id`: ID of the NFT to rearrange resource priorities for.
1167 /// - `priorities`: Ordered vector of resource IDs.1179 /// - `priorities`: Ordered vector of resource IDs.
1180 #[pallet::call_index(12)]
1168 #[pallet::weight(<SelfWeightOf<T>>::set_priority())]1181 #[pallet::weight(<SelfWeightOf<T>>::set_priority())]
1169 pub fn set_priority(1182 pub fn set_priority(
1170 origin: OriginFor<T>,1183 origin: OriginFor<T>,
1216 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.1229 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.
1217 /// - `nft_id`: ID of the NFT to assign a resource to.1230 /// - `nft_id`: ID of the NFT to assign a resource to.
1218 /// - `resource`: Data of the resource to be created.1231 /// - `resource`: Data of the resource to be created.
1232 #[pallet::call_index(13)]
1219 #[pallet::weight(<SelfWeightOf<T>>::add_basic_resource())]1233 #[pallet::weight(<SelfWeightOf<T>>::add_basic_resource())]
1220 pub fn add_basic_resource(1234 pub fn add_basic_resource(
1221 origin: OriginFor<T>,1235 origin: OriginFor<T>,
1258 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.1272 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.
1259 /// - `nft_id`: ID of the NFT to assign a resource to.1273 /// - `nft_id`: ID of the NFT to assign a resource to.
1260 /// - `resource`: Data of the resource to be created.1274 /// - `resource`: Data of the resource to be created.
1275 #[pallet::call_index(14)]
1261 #[pallet::weight(<SelfWeightOf<T>>::add_composable_resource())]1276 #[pallet::weight(<SelfWeightOf<T>>::add_composable_resource())]
1262 pub fn add_composable_resource(1277 pub fn add_composable_resource(
1263 origin: OriginFor<T>,1278 origin: OriginFor<T>,
1320 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.1335 /// - `rmrk_collection_id`: RMRK collection ID of the NFT.
1321 /// - `nft_id`: ID of the NFT to assign a resource to.1336 /// - `nft_id`: ID of the NFT to assign a resource to.
1322 /// - `resource`: Data of the resource to be created.1337 /// - `resource`: Data of the resource to be created.
1338 #[pallet::call_index(15)]
1323 #[pallet::weight(<SelfWeightOf<T>>::add_slot_resource())]1339 #[pallet::weight(<SelfWeightOf<T>>::add_slot_resource())]
1324 pub fn add_slot_resource(1340 pub fn add_slot_resource(
1325 origin: OriginFor<T>,1341 origin: OriginFor<T>,
1361 /// - `rmrk_collection_id`: RMRK ID of a collection to which the NFT making use of the resource belongs to.1377 /// - `rmrk_collection_id`: RMRK ID of a collection to which the NFT making use of the resource belongs to.
1362 /// - `nft_id`: ID of the NFT with a resource to be removed.1378 /// - `nft_id`: ID of the NFT with a resource to be removed.
1363 /// - `resource_id`: ID of the resource to be removed.1379 /// - `resource_id`: ID of the resource to be removed.
1380 #[pallet::call_index(16)]
1364 #[pallet::weight(<SelfWeightOf<T>>::remove_resource())]1381 #[pallet::weight(<SelfWeightOf<T>>::remove_resource())]
1365 pub fn remove_resource(1382 pub fn remove_resource(
1366 origin: OriginFor<T>,1383 origin: OriginFor<T>,
modifiedpallets/proxy-rmrk-equip/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }
20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
23frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }23frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
24rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }24rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }
25scale-info = { version = "2.0.1", default-features = false, features = [25scale-info = { version = "2.0.1", default-features = false, features = [
26 "derive",26 "derive",
modifiedpallets/proxy-rmrk-equip/src/lib.rsdiffbeforeafterboth
231 /// - `symbol`: Arbitrary client-chosen symbol.231 /// - `symbol`: Arbitrary client-chosen symbol.
232 /// - `parts`: Array of Fixed and Slot Parts composing the Base,232 /// - `parts`: Array of Fixed and Slot Parts composing the Base,
233 /// confined in length by [`RmrkPartsLimit`](up_data_structs::RmrkPartsLimit).233 /// confined in length by [`RmrkPartsLimit`](up_data_structs::RmrkPartsLimit).
234 #[pallet::call_index(0)]
234 #[pallet::weight(<SelfWeightOf<T>>::create_base(parts.len() as u32))]235 #[pallet::weight(<SelfWeightOf<T>>::create_base(parts.len() as u32))]
235 pub fn create_base(236 pub fn create_base(
236 origin: OriginFor<T>,237 origin: OriginFor<T>,
309 /// - `key`: Arbitrary BoundedString, defined by client.310 /// - `key`: Arbitrary BoundedString, defined by client.
310 /// - `value`: Arbitrary BoundedString, defined by client.311 /// - `value`: Arbitrary BoundedString, defined by client.
311 /// - `inherit`: Optional bool.312 /// - `inherit`: Optional bool.
313 #[pallet::call_index(1)]
312 #[pallet::weight(<SelfWeightOf<T>>::theme_add(theme.properties.len() as u32))]314 #[pallet::weight(<SelfWeightOf<T>>::theme_add(theme.properties.len() as u32))]
313 pub fn theme_add(315 pub fn theme_add(
314 origin: OriginFor<T>,316 origin: OriginFor<T>,
370 /// - `base_id`: Base containing the Slot Part to be updated.372 /// - `base_id`: Base containing the Slot Part to be updated.
371 /// - `slot_id`: Slot Part whose Equippable List is being updated .373 /// - `slot_id`: Slot Part whose Equippable List is being updated .
372 /// - `equippables`: List of equippables that will override the current Equippables list.374 /// - `equippables`: List of equippables that will override the current Equippables list.
375 #[pallet::call_index(2)]
373 #[pallet::weight(<SelfWeightOf<T>>::equippable())]376 #[pallet::weight(<SelfWeightOf<T>>::equippable())]
374 pub fn equippable(377 pub fn equippable(
375 origin: OriginFor<T>,378 origin: OriginFor<T>,
modifiedpallets/refungible/Cargo.tomldiffbeforeafterboth
11version = '3.1.2'11version = '3.1.2'
1212
13[dependencies]13[dependencies]
14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
20evm-coder = { default-features = false, path = '../../crates/evm-coder' }20evm-coder = { default-features = false, path = '../../crates/evm-coder' }
21pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }21pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
22pallet-common = { default-features = false, path = '../common' }22pallet-common = { default-features = false, path = '../common' }
23pallet-structure = { default-features = false, path = '../structure' }23pallet-structure = { default-features = false, path = '../structure' }
24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2525
26struct-versioning = { path = "../../crates/struct-versioning" }26struct-versioning = { path = "../../crates/struct-versioning" }
27up-data-structs = { default-features = false, path = '../../primitives/data-structs' }27up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
modifiedpallets/scheduler-v2/Cargo.tomldiffbeforeafterboth
15scale-info = { version = "2.1.1", default-features = false, features = ["derive"] }17scale-info = { version = "2.1.1", default-features = false, features = [
18 "derive",
19] }
16frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }20frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
18frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }22frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
19sp-io = { version = "6.0.0", default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }23sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
20sp-runtime = { version = "6.0.0", default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
21sp-std = { version = "4.0.0", default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }25sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
22sp-core = { version = "6.0.0", default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }26sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2327
24[dev-dependencies]28[dev-dependencies]
25pallet-preimage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }29pallet-preimage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
26sp-core = { version = "6.0.0", default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }30sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
27substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }31substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2832
29[features]33[features]
30default = ["std"]34default = ["std"]
modifiedpallets/scheduler-v2/src/lib.rsdiffbeforeafterboth
639 ///639 ///
640 /// Only `T::ScheduleOrigin` is allowed to schedule a task.640 /// Only `T::ScheduleOrigin` is allowed to schedule a task.
641 /// Only `T::PrioritySetOrigin` is allowed to set the task's priority.641 /// Only `T::PrioritySetOrigin` is allowed to set the task's priority.
642 #[pallet::call_index(0)]
642 #[pallet::weight(<T as Config>::WeightInfo::schedule(T::MaxScheduledPerBlock::get()))]643 #[pallet::weight(<T as Config>::WeightInfo::schedule(T::MaxScheduledPerBlock::get()))]
643 pub fn schedule(644 pub fn schedule(
644 origin: OriginFor<T>,645 origin: OriginFor<T>,
667 /// Cancel an anonymously scheduled task.668 /// Cancel an anonymously scheduled task.
668 ///669 ///
669 /// The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.670 /// The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.
671 #[pallet::call_index(1)]
670 #[pallet::weight(<T as Config>::WeightInfo::cancel(T::MaxScheduledPerBlock::get()))]672 #[pallet::weight(<T as Config>::WeightInfo::cancel(T::MaxScheduledPerBlock::get()))]
671 pub fn cancel(origin: OriginFor<T>, when: T::BlockNumber, index: u32) -> DispatchResult {673 pub fn cancel(origin: OriginFor<T>, when: T::BlockNumber, index: u32) -> DispatchResult {
672 T::ScheduleOrigin::ensure_origin(origin.clone())?;674 T::ScheduleOrigin::ensure_origin(origin.clone())?;
679 ///681 ///
680 /// Only `T::ScheduleOrigin` is allowed to schedule a task.682 /// Only `T::ScheduleOrigin` is allowed to schedule a task.
681 /// Only `T::PrioritySetOrigin` is allowed to set the task's priority.683 /// Only `T::PrioritySetOrigin` is allowed to set the task's priority.
684 #[pallet::call_index(2)]
682 #[pallet::weight(<T as Config>::WeightInfo::schedule_named(T::MaxScheduledPerBlock::get()))]685 #[pallet::weight(<T as Config>::WeightInfo::schedule_named(T::MaxScheduledPerBlock::get()))]
683 pub fn schedule_named(686 pub fn schedule_named(
684 origin: OriginFor<T>,687 origin: OriginFor<T>,
709 /// Cancel a named scheduled task.712 /// Cancel a named scheduled task.
710 ///713 ///
711 /// The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.714 /// The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.
715 #[pallet::call_index(3)]
712 #[pallet::weight(<T as Config>::WeightInfo::cancel_named(T::MaxScheduledPerBlock::get()))]716 #[pallet::weight(<T as Config>::WeightInfo::cancel_named(T::MaxScheduledPerBlock::get()))]
713 pub fn cancel_named(origin: OriginFor<T>, id: TaskName) -> DispatchResult {717 pub fn cancel_named(origin: OriginFor<T>, id: TaskName) -> DispatchResult {
714 T::ScheduleOrigin::ensure_origin(origin.clone())?;718 T::ScheduleOrigin::ensure_origin(origin.clone())?;
722 /// # <weight>726 /// # <weight>
723 /// Same as [`schedule`].727 /// Same as [`schedule`].
724 /// # </weight>728 /// # </weight>
729 #[pallet::call_index(4)]
725 #[pallet::weight(<T as Config>::WeightInfo::schedule(T::MaxScheduledPerBlock::get()))]730 #[pallet::weight(<T as Config>::WeightInfo::schedule(T::MaxScheduledPerBlock::get()))]
726 pub fn schedule_after(731 pub fn schedule_after(
727 origin: OriginFor<T>,732 origin: OriginFor<T>,
755 /// # <weight>760 /// # <weight>
756 /// Same as [`schedule_named`](Self::schedule_named).761 /// Same as [`schedule_named`](Self::schedule_named).
757 /// # </weight>762 /// # </weight>
763 #[pallet::call_index(5)]
758 #[pallet::weight(<T as Config>::WeightInfo::schedule_named(T::MaxScheduledPerBlock::get()))]764 #[pallet::weight(<T as Config>::WeightInfo::schedule_named(T::MaxScheduledPerBlock::get()))]
759 pub fn schedule_named_after(765 pub fn schedule_named_after(
760 origin: OriginFor<T>,766 origin: OriginFor<T>,
785 /// Change a named task's priority.791 /// Change a named task's priority.
786 ///792 ///
787 /// Only the `T::PrioritySetOrigin` is allowed to change the task's priority.793 /// Only the `T::PrioritySetOrigin` is allowed to change the task's priority.
794 #[pallet::call_index(6)]
788 #[pallet::weight(<T as Config>::WeightInfo::change_named_priority(T::MaxScheduledPerBlock::get()))]795 #[pallet::weight(<T as Config>::WeightInfo::change_named_priority(T::MaxScheduledPerBlock::get()))]
789 pub fn change_named_priority(796 pub fn change_named_priority(
790 origin: OriginFor<T>,797 origin: OriginFor<T>,
modifiedpallets/scheduler-v2/src/mock.rsdiffbeforeafterboth
87 where87 where
88 <T as frame_system::Config>::RuntimeOrigin: OriginTrait<PalletsOrigin = OriginCaller>,88 <T as frame_system::Config>::RuntimeOrigin: OriginTrait<PalletsOrigin = OriginCaller>,
89 {89 {
90 #[pallet::call_index(0)]
90 #[pallet::weight(*weight)]91 #[pallet::weight(*weight)]
91 pub fn log(origin: OriginFor<T>, i: u32, weight: Weight) -> DispatchResult {92 pub fn log(origin: OriginFor<T>, i: u32, weight: Weight) -> DispatchResult {
92 Self::deposit_event(Event::Logged(i, weight));93 Self::deposit_event(Event::Logged(i, weight));
96 Ok(())97 Ok(())
97 }98 }
9899
100 #[pallet::call_index(1)]
99 #[pallet::weight(*weight)]101 #[pallet::weight(*weight)]
100 pub fn log_without_filter(origin: OriginFor<T>, i: u32, weight: Weight) -> DispatchResult {102 pub fn log_without_filter(origin: OriginFor<T>, i: u32, weight: Weight) -> DispatchResult {
101 Self::deposit_event(Event::Logged(i, weight));103 Self::deposit_event(Event::Logged(i, weight));
modifiedpallets/structure/Cargo.tomldiffbeforeafterboth
4edition = "2021"4edition = "2021"
55
6[dependencies]6[dependencies]
7frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }7frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
8frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }8frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
9frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }9frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
10sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }10sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
11pallet-common = { path = "../common", default-features = false }11pallet-common = { path = "../common", default-features = false }
12parity-scale-codec = { version = "3.1.2", default-features = false, features = [12parity-scale-codec = { version = "3.1.2", default-features = false, features = [
13 "derive",13 "derive",
16 "derive",16 "derive",
17] }17] }
18up-data-structs = { path = "../../primitives/data-structs", default-features = false }18up-data-structs = { path = "../../primitives/data-structs", default-features = false }
19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2020
21[features]21[features]
22default = ["std"]22default = ["std"]
modifiedpallets/unique/Cargo.tomldiffbeforeafterboth
61default-features = false61default-features = false
62optional = true62optional = true
63git = "https://github.com/paritytech/substrate"63git = "https://github.com/paritytech/substrate"
64branch = "polkadot-v0.9.33"64branch = "polkadot-v0.9.36"
6565
66[dependencies.frame-support]66[dependencies.frame-support]
67default-features = false67default-features = false
68git = "https://github.com/paritytech/substrate"68git = "https://github.com/paritytech/substrate"
69branch = "polkadot-v0.9.33"69branch = "polkadot-v0.9.36"
7070
71[dependencies.frame-system]71[dependencies.frame-system]
72default-features = false72default-features = false
73git = "https://github.com/paritytech/substrate"73git = "https://github.com/paritytech/substrate"
74branch = "polkadot-v0.9.33"74branch = "polkadot-v0.9.36"
7575
76[dependencies.sp-std]76[dependencies.sp-std]
77default-features = false77default-features = false
78git = "https://github.com/paritytech/substrate"78git = "https://github.com/paritytech/substrate"
79branch = "polkadot-v0.9.33"79branch = "polkadot-v0.9.36"
8080
81[dependencies.sp-runtime]81[dependencies.sp-runtime]
82default-features = false82default-features = false
83git = "https://github.com/paritytech/substrate"83git = "https://github.com/paritytech/substrate"
84branch = "polkadot-v0.9.33"84branch = "polkadot-v0.9.36"
8585
86[dependencies.sp-core]86[dependencies.sp-core]
87default-features = false87default-features = false
88git = "https://github.com/paritytech/substrate"88git = "https://github.com/paritytech/substrate"
89branch = "polkadot-v0.9.33"89branch = "polkadot-v0.9.36"
9090
91[dependencies.sp-io]91[dependencies.sp-io]
92default-features = false92default-features = false
93git = "https://github.com/paritytech/substrate"93git = "https://github.com/paritytech/substrate"
94branch = "polkadot-v0.9.33"94branch = "polkadot-v0.9.36"
9595
96################################################################################96################################################################################
97# Local Dependencies97# Local Dependencies
100scale-info = { version = "2.0.1", default-features = false, features = [100scale-info = { version = "2.0.1", default-features = false, features = [
101 "derive",101 "derive",
102] }102] }
103pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }103pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
104pallet-common = { default-features = false, path = "../common" }104pallet-common = { default-features = false, path = "../common" }
105evm-coder = { default-features = false, path = '../../crates/evm-coder' }105evm-coder = { default-features = false, path = '../../crates/evm-coder' }
106pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }106pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
modifiedprimitives/app_promotion_rpc/Cargo.tomldiffbeforeafterboth
10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [
11 "derive",11 "derive",
12] }12] }
13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
1818
19[features]19[features]
20default = ["std"]20default = ["std"]
modifiedprimitives/common/Cargo.tomldiffbeforeafterboth
6license = 'All Rights Reserved'6license = 'All Rights Reserved'
7name = 'up-common'7name = 'up-common'
8repository = 'https://github.com/UniqueNetwork/unique-chain'8repository = 'https://github.com/UniqueNetwork/unique-chain'
9version = "0.9.33"9version.workspace = true
1010
11[features]11[features]
12default = ['std']12default = ['std']
24[dependencies.sp-std]24[dependencies.sp-std]
25default-features = false25default-features = false
26git = "https://github.com/paritytech/substrate"26git = "https://github.com/paritytech/substrate"
27branch = "polkadot-v0.9.33"27branch = "polkadot-v0.9.36"
2828
29[dependencies.frame-support]29[dependencies.frame-support]
30default-features = false30default-features = false
31git = "https://github.com/paritytech/substrate"31git = "https://github.com/paritytech/substrate"
32branch = "polkadot-v0.9.33"32branch = "polkadot-v0.9.36"
3333
34[dependencies.sp-runtime]34[dependencies.sp-runtime]
35default-features = false35default-features = false
36git = "https://github.com/paritytech/substrate"36git = "https://github.com/paritytech/substrate"
37branch = "polkadot-v0.9.33"37branch = "polkadot-v0.9.36"
3838
39[dependencies.sp-core]39[dependencies.sp-core]
40default-features = false40default-features = false
41git = "https://github.com/paritytech/substrate"41git = "https://github.com/paritytech/substrate"
42branch = "polkadot-v0.9.33"42branch = "polkadot-v0.9.36"
4343
44[dependencies.sp-consensus-aura]44[dependencies.sp-consensus-aura]
45default-features = false45default-features = false
46git = "https://github.com/paritytech/substrate"46git = "https://github.com/paritytech/substrate"
47branch = "polkadot-v0.9.33"47branch = "polkadot-v0.9.36"
4848
49[dependencies.fp-rpc]49[dependencies.fp-rpc]
50default-features = false50default-features = false
51git = "https://github.com/uniquenetwork/frontier"51git = "https://github.com/uniquenetwork/frontier"
52branch = "unique-polkadot-v0.9.33"52branch = "unique-polkadot-v0.9.36"
5353
54[dependencies.cumulus-primitives-core]54[dependencies.cumulus-primitives-core]
55default-features = false55default-features = false
56git = "https://github.com/paritytech/cumulus"56git = "https://github.com/paritytech/cumulus"
57branch = "polkadot-v0.9.33"57branch = "polkadot-v0.9.36"
5858
59[dependencies.pallet-evm]59[dependencies.pallet-evm]
60default-features = false60default-features = false
61git = "https://github.com/uniquenetwork/frontier"61git = "https://github.com/uniquenetwork/frontier"
62branch = "unique-polkadot-v0.9.33"62branch = "unique-polkadot-v0.9.36"
6363
modifiedprimitives/common/src/constants.rsdiffbeforeafterboth
17use sp_runtime::Perbill;17use sp_runtime::Perbill;
18use frame_support::{18use frame_support::{
19 parameter_types,19 parameter_types,
20 weights::{Weight, constants::WEIGHT_PER_SECOND},20 weights::{Weight, constants::WEIGHT_REF_TIME_PER_SECOND},
21};21};
22use cumulus_primitives_core::relay_chain::v2::MAX_POV_SIZE;22use cumulus_primitives_core::relay_chain::v2::MAX_POV_SIZE;
23use crate::types::{BlockNumber, Balance};23use crate::types::{BlockNumber, Balance};
55/// by Operational extrinsics.55/// by Operational extrinsics.
56pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);56pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);
57/// We allow for 2 seconds of compute with a 6 second average block time.57/// We allow for 2 seconds of compute with a 6 second average block time.
58pub const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND58pub const MAXIMUM_BLOCK_WEIGHT: Weight =
59 .saturating_div(2)59 Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(2))
60 .set_proof_size(MAX_POV_SIZE as u64);60 .set_proof_size(MAX_POV_SIZE as u64);
6161
62parameter_types! {62parameter_types! {
modifiedprimitives/data-structs/Cargo.tomldiffbeforeafterboth
18serde = { version = "1.0.130", features = [18serde = { version = "1.0.130", features = [
19 'derive',19 'derive',
20], default-features = false, optional = true }20], default-features = false, optional = true }
21frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
22frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }22frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
23sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }23sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
24sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
25sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }25sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
26derivative = { version = "2.2.0", features = ["use_core"] }26derivative = { version = "2.2.0", features = ["use_core"] }
27struct-versioning = { path = "../../crates/struct-versioning" }27struct-versioning = { path = "../../crates/struct-versioning" }
28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
29rmrk-traits = { default-features = false, path = "../rmrk-traits" }29rmrk-traits = { default-features = false, path = "../rmrk-traits" }
30bondrewd = { version = "0.1.14", features = [30bondrewd = { version = "0.1.14", features = [
31 "derive",31 "derive",
modifiedprimitives/rmrk-rpc/Cargo.tomldiffbeforeafterboth
8codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = [8codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = [
9 "derive",9 "derive",
10] }10] }
11sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }11sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
12sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }12sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
13sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15serde = { version = "1.0.130", default-features = false, features = ["derive"] }15serde = { version = "1.0.130", default-features = false, features = ["derive"] }
16rmrk-traits = { default-features = false, path = "../rmrk-traits" }16rmrk-traits = { default-features = false, path = "../rmrk-traits" }
1717
modifiedprimitives/rpc/Cargo.tomldiffbeforeafterboth
10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [
11 "derive",11 "derive",
12] }12] }
13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
1818
19[features]19[features]
20default = ["std"]20default = ["std"]
modifiedruntime/common/config/ethereum.rsdiffbeforeafterboth
1use sp_core::{U256, H160};1use sp_core::{U256, H160};
2use frame_support::{2use frame_support::{
3 weights::{Weight, constants::WEIGHT_PER_SECOND},3 weights::{Weight, constants::WEIGHT_REF_TIME_PER_SECOND},
4 traits::{FindAuthor},4 traits::{FindAuthor},
5 parameter_types, ConsensusEngineId,5 parameter_types, ConsensusEngineId,
6};6};
23// (contract, which only writes a lot of data),23// (contract, which only writes a lot of data),
24// approximating on top of our real store write weight24// approximating on top of our real store write weight
25parameter_types! {25parameter_types! {
26 pub const WritesPerSecond: u64 = WEIGHT_PER_SECOND.ref_time() / <Runtime as frame_system::Config>::DbWeight::get().write;26 pub const WritesPerSecond: u64 = WEIGHT_REF_TIME_PER_SECOND / <Runtime as frame_system::Config>::DbWeight::get().write;
27 pub const GasPerSecond: u64 = WritesPerSecond::get() * 20000;27 pub const GasPerSecond: u64 = WritesPerSecond::get() * 20000;
28 pub const WeightTimePerGas: u64 = WEIGHT_PER_SECOND.ref_time() / GasPerSecond::get();28 pub const WeightTimePerGas: u64 = WEIGHT_REF_TIME_PER_SECOND / GasPerSecond::get();
2929
30 pub const WeightPerGas: Weight = Weight::from_ref_time(WeightTimePerGas::get());30 pub const WeightPerGas: Weight = Weight::from_ref_time(WeightTimePerGas::get());
31}31}
modifiedruntime/common/runtime_apis.rsdiffbeforeafterboth
575 None575 None
576 }576 }
577
578 fn gas_limit_multiplier_support() {}
577 }579 }
578580
579 impl fp_rpc::ConvertTransactionRuntimeApi<Block> for Runtime {581 impl fp_rpc::ConvertTransactionRuntimeApi<Block> for Runtime {
modifiedruntime/opal/Cargo.tomldiffbeforeafterboth
1################################################################################1################################################################################
2# Package2# Package
3
4cargo-features = ["workspace-inheritance"]
53
6[package]4[package]
7authors = ['Unique Network <support@uniquenetwork.io>']5authors = ['Unique Network <support@uniquenetwork.io>']
12license = 'GPLv3'10license = 'GPLv3'
13name = 'opal-runtime'11name = 'opal-runtime'
14repository = 'https://github.com/UniqueNetwork/unique-chain'12repository = 'https://github.com/UniqueNetwork/unique-chain'
15version = "0.9.33"13version.workspace = true
1614
17[package.metadata.docs.rs]15[package.metadata.docs.rs]
18targets = ['x86_64-unknown-linux-gnu']16targets = ['x86_64-unknown-linux-gnu']
205default-features = false203default-features = false
206git = "https://github.com/paritytech/substrate"204git = "https://github.com/paritytech/substrate"
207optional = true205optional = true
208branch = "polkadot-v0.9.33"206branch = "polkadot-v0.9.36"
209207
210[dependencies.frame-try-runtime]208[dependencies.frame-try-runtime]
211default-features = false209default-features = false
212git = "https://github.com/paritytech/substrate"210git = "https://github.com/paritytech/substrate"
213optional = true211optional = true
214branch = "polkadot-v0.9.33"212branch = "polkadot-v0.9.36"
215213
216[dependencies.frame-executive]214[dependencies.frame-executive]
217default-features = false215default-features = false
218git = "https://github.com/paritytech/substrate"216git = "https://github.com/paritytech/substrate"
219branch = "polkadot-v0.9.33"217branch = "polkadot-v0.9.36"
220218
221[dependencies.frame-support]219[dependencies.frame-support]
222default-features = false220default-features = false
223git = "https://github.com/paritytech/substrate"221git = "https://github.com/paritytech/substrate"
224branch = "polkadot-v0.9.33"222branch = "polkadot-v0.9.36"
225223
226[dependencies.frame-system]224[dependencies.frame-system]
227default-features = false225default-features = false
228git = "https://github.com/paritytech/substrate"226git = "https://github.com/paritytech/substrate"
229branch = "polkadot-v0.9.33"227branch = "polkadot-v0.9.36"
230228
231[dependencies.frame-system-benchmarking]229[dependencies.frame-system-benchmarking]
232default-features = false230default-features = false
233git = "https://github.com/paritytech/substrate"231git = "https://github.com/paritytech/substrate"
234optional = true232optional = true
235branch = "polkadot-v0.9.33"233branch = "polkadot-v0.9.36"
236234
237[dependencies.frame-system-rpc-runtime-api]235[dependencies.frame-system-rpc-runtime-api]
238default-features = false236default-features = false
239git = "https://github.com/paritytech/substrate"237git = "https://github.com/paritytech/substrate"
240branch = "polkadot-v0.9.33"238branch = "polkadot-v0.9.36"
241239
242[dependencies.hex-literal]240[dependencies.hex-literal]
243optional = true241optional = true
252[dependencies.pallet-aura]250[dependencies.pallet-aura]
253default-features = false251default-features = false
254git = "https://github.com/paritytech/substrate"252git = "https://github.com/paritytech/substrate"
255branch = "polkadot-v0.9.33"253branch = "polkadot-v0.9.36"
256254
257[dependencies.pallet-balances]255[dependencies.pallet-balances]
258default-features = false256default-features = false
259git = "https://github.com/paritytech/substrate"257git = "https://github.com/paritytech/substrate"
260branch = "polkadot-v0.9.33"258branch = "polkadot-v0.9.36"
261259
262# Contracts specific packages260# Contracts specific packages
263# [dependencies.pallet-contracts]261# [dependencies.pallet-contracts]
281[dependencies.pallet-randomness-collective-flip]279[dependencies.pallet-randomness-collective-flip]
282default-features = false280default-features = false
283git = "https://github.com/paritytech/substrate"281git = "https://github.com/paritytech/substrate"
284branch = "polkadot-v0.9.33"282branch = "polkadot-v0.9.36"
285283
286[dependencies.pallet-sudo]284[dependencies.pallet-sudo]
287default-features = false285default-features = false
288git = "https://github.com/paritytech/substrate"286git = "https://github.com/paritytech/substrate"
289branch = "polkadot-v0.9.33"287branch = "polkadot-v0.9.36"
290288
291[dependencies.pallet-timestamp]289[dependencies.pallet-timestamp]
292default-features = false290default-features = false
293git = "https://github.com/paritytech/substrate"291git = "https://github.com/paritytech/substrate"
294branch = "polkadot-v0.9.33"292branch = "polkadot-v0.9.36"
295293
296[dependencies.pallet-transaction-payment]294[dependencies.pallet-transaction-payment]
297default-features = false295default-features = false
298git = "https://github.com/paritytech/substrate"296git = "https://github.com/paritytech/substrate"
299branch = "polkadot-v0.9.33"297branch = "polkadot-v0.9.36"
300298
301[dependencies.pallet-transaction-payment-rpc-runtime-api]299[dependencies.pallet-transaction-payment-rpc-runtime-api]
302default-features = false300default-features = false
303git = "https://github.com/paritytech/substrate"301git = "https://github.com/paritytech/substrate"
304branch = "polkadot-v0.9.33"302branch = "polkadot-v0.9.36"
305303
306[dependencies.pallet-treasury]304[dependencies.pallet-treasury]
307default-features = false305default-features = false
308git = "https://github.com/paritytech/substrate"306git = "https://github.com/paritytech/substrate"
309branch = "polkadot-v0.9.33"307branch = "polkadot-v0.9.36"
310308
311[dependencies.sp-arithmetic]309[dependencies.sp-arithmetic]
312default-features = false310default-features = false
313git = "https://github.com/paritytech/substrate"311git = "https://github.com/paritytech/substrate"
314branch = "polkadot-v0.9.33"312branch = "polkadot-v0.9.36"
315313
316[dependencies.sp-api]314[dependencies.sp-api]
317default-features = false315default-features = false
318git = "https://github.com/paritytech/substrate"316git = "https://github.com/paritytech/substrate"
319branch = "polkadot-v0.9.33"317branch = "polkadot-v0.9.36"
320318
321[dependencies.sp-block-builder]319[dependencies.sp-block-builder]
322default-features = false320default-features = false
323git = "https://github.com/paritytech/substrate"321git = "https://github.com/paritytech/substrate"
324branch = "polkadot-v0.9.33"322branch = "polkadot-v0.9.36"
325323
326[dependencies.sp-core]324[dependencies.sp-core]
327default-features = false325default-features = false
328git = "https://github.com/paritytech/substrate"326git = "https://github.com/paritytech/substrate"
329branch = "polkadot-v0.9.33"327branch = "polkadot-v0.9.36"
330328
331[dependencies.sp-consensus-aura]329[dependencies.sp-consensus-aura]
332default-features = false330default-features = false
333git = "https://github.com/paritytech/substrate"331git = "https://github.com/paritytech/substrate"
334branch = "polkadot-v0.9.33"332branch = "polkadot-v0.9.36"
335333
336[dependencies.sp-inherents]334[dependencies.sp-inherents]
337default-features = false335default-features = false
338git = "https://github.com/paritytech/substrate"336git = "https://github.com/paritytech/substrate"
339branch = "polkadot-v0.9.33"337branch = "polkadot-v0.9.36"
340338
341[dependencies.sp-io]339[dependencies.sp-io]
342default-features = false340default-features = false
343git = "https://github.com/paritytech/substrate"341git = "https://github.com/paritytech/substrate"
344branch = "polkadot-v0.9.33"342branch = "polkadot-v0.9.36"
345343
346[dependencies.sp-offchain]344[dependencies.sp-offchain]
347default-features = false345default-features = false
348git = "https://github.com/paritytech/substrate"346git = "https://github.com/paritytech/substrate"
349branch = "polkadot-v0.9.33"347branch = "polkadot-v0.9.36"
350348
351[dependencies.sp-runtime]349[dependencies.sp-runtime]
352default-features = false350default-features = false
353git = "https://github.com/paritytech/substrate"351git = "https://github.com/paritytech/substrate"
354branch = "polkadot-v0.9.33"352branch = "polkadot-v0.9.36"
355353
356[dependencies.sp-session]354[dependencies.sp-session]
357default-features = false355default-features = false
358git = "https://github.com/paritytech/substrate"356git = "https://github.com/paritytech/substrate"
359branch = "polkadot-v0.9.33"357branch = "polkadot-v0.9.36"
360358
361[dependencies.sp-std]359[dependencies.sp-std]
362default-features = false360default-features = false
363git = "https://github.com/paritytech/substrate"361git = "https://github.com/paritytech/substrate"
364branch = "polkadot-v0.9.33"362branch = "polkadot-v0.9.36"
365363
366[dependencies.sp-transaction-pool]364[dependencies.sp-transaction-pool]
367default-features = false365default-features = false
368git = "https://github.com/paritytech/substrate"366git = "https://github.com/paritytech/substrate"
369branch = "polkadot-v0.9.33"367branch = "polkadot-v0.9.36"
370368
371[dependencies.sp-version]369[dependencies.sp-version]
372default-features = false370default-features = false
373git = "https://github.com/paritytech/substrate"371git = "https://github.com/paritytech/substrate"
374branch = "polkadot-v0.9.33"372branch = "polkadot-v0.9.36"
375373
376[dependencies.smallvec]374[dependencies.smallvec]
377version = '1.6.1'375version = '1.6.1'
382[dependencies.parachain-info]380[dependencies.parachain-info]
383default-features = false381default-features = false
384git = "https://github.com/paritytech/cumulus"382git = "https://github.com/paritytech/cumulus"
385branch = "polkadot-v0.9.33"383branch = "polkadot-v0.9.36"
386384
387[dependencies.cumulus-pallet-aura-ext]385[dependencies.cumulus-pallet-aura-ext]
388git = "https://github.com/paritytech/cumulus"386git = "https://github.com/paritytech/cumulus"
389branch = "polkadot-v0.9.33"387branch = "polkadot-v0.9.36"
390default-features = false388default-features = false
391389
392[dependencies.cumulus-pallet-parachain-system]390[dependencies.cumulus-pallet-parachain-system]
393git = "https://github.com/paritytech/cumulus"391git = "https://github.com/paritytech/cumulus"
394branch = "polkadot-v0.9.33"392branch = "polkadot-v0.9.36"
395default-features = false393default-features = false
396394
397[dependencies.cumulus-primitives-core]395[dependencies.cumulus-primitives-core]
398git = "https://github.com/paritytech/cumulus"396git = "https://github.com/paritytech/cumulus"
399branch = "polkadot-v0.9.33"397branch = "polkadot-v0.9.36"
400default-features = false398default-features = false
401399
402[dependencies.cumulus-pallet-xcm]400[dependencies.cumulus-pallet-xcm]
403git = "https://github.com/paritytech/cumulus"401git = "https://github.com/paritytech/cumulus"
404branch = "polkadot-v0.9.33"402branch = "polkadot-v0.9.36"
405default-features = false403default-features = false
406404
407[dependencies.cumulus-pallet-dmp-queue]405[dependencies.cumulus-pallet-dmp-queue]
408git = "https://github.com/paritytech/cumulus"406git = "https://github.com/paritytech/cumulus"
409branch = "polkadot-v0.9.33"407branch = "polkadot-v0.9.36"
410default-features = false408default-features = false
411409
412[dependencies.cumulus-pallet-xcmp-queue]410[dependencies.cumulus-pallet-xcmp-queue]
413git = "https://github.com/paritytech/cumulus"411git = "https://github.com/paritytech/cumulus"
414branch = "polkadot-v0.9.33"412branch = "polkadot-v0.9.36"
415default-features = false413default-features = false
416414
417[dependencies.cumulus-primitives-utility]415[dependencies.cumulus-primitives-utility]
418git = "https://github.com/paritytech/cumulus"416git = "https://github.com/paritytech/cumulus"
419branch = "polkadot-v0.9.33"417branch = "polkadot-v0.9.36"
420default-features = false418default-features = false
421419
422[dependencies.cumulus-primitives-timestamp]420[dependencies.cumulus-primitives-timestamp]
423git = "https://github.com/paritytech/cumulus"421git = "https://github.com/paritytech/cumulus"
424branch = "polkadot-v0.9.33"422branch = "polkadot-v0.9.36"
425default-features = false423default-features = false
426424
427################################################################################425################################################################################
428# Polkadot dependencies426# Polkadot dependencies
429427
430[dependencies.polkadot-parachain]428[dependencies.polkadot-parachain]
431git = "https://github.com/paritytech/polkadot"429git = "https://github.com/paritytech/polkadot"
432branch = "release-v0.9.33"430branch = "release-v0.9.36"
433default-features = false431default-features = false
434432
435[dependencies.xcm]433[dependencies.xcm]
436git = "https://github.com/paritytech/polkadot"434git = "https://github.com/paritytech/polkadot"
437branch = "release-v0.9.33"435branch = "release-v0.9.36"
438default-features = false436default-features = false
439437
440[dependencies.xcm-builder]438[dependencies.xcm-builder]
441git = "https://github.com/paritytech/polkadot"439git = "https://github.com/paritytech/polkadot"
442branch = "release-v0.9.33"440branch = "release-v0.9.36"
443default-features = false441default-features = false
444442
445[dependencies.xcm-executor]443[dependencies.xcm-executor]
446git = "https://github.com/paritytech/polkadot"444git = "https://github.com/paritytech/polkadot"
447branch = "release-v0.9.33"445branch = "release-v0.9.36"
448default-features = false446default-features = false
449447
450[dependencies.pallet-xcm]448[dependencies.pallet-xcm]
451git = "https://github.com/paritytech/polkadot"449git = "https://github.com/paritytech/polkadot"
452branch = "release-v0.9.33"450branch = "release-v0.9.36"
453default-features = false451default-features = false
454452
455################################################################################453################################################################################
471up-rpc = { path = "../../primitives/rpc", default-features = false }469up-rpc = { path = "../../primitives/rpc", default-features = false }
472app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }470app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }
473rmrk-rpc = { path = "../../primitives/rmrk-rpc", default-features = false }471rmrk-rpc = { path = "../../primitives/rmrk-rpc", default-features = false }
474fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }472fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
475fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }473fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
476pallet-inflation = { path = '../../pallets/inflation', default-features = false }474pallet-inflation = { path = '../../pallets/inflation', default-features = false }
477pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }475pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }
478up-data-structs = { path = '../../primitives/data-structs', default-features = false }476up-data-structs = { path = '../../primitives/data-structs', default-features = false }
484pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }482pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
485pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }483pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
486pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }484pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
487pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }485pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
488pallet-unique-scheduler-v2 = { path = '../../pallets/scheduler-v2', default-features = false }486pallet-unique-scheduler-v2 = { path = '../../pallets/scheduler-v2', default-features = false }
489pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }487pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
490pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }488pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
491pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }489pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
492pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }490pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
493pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }491pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
494pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }492pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
495pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }493pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
496fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }494fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
497fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }495fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
498pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }496pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
499evm-coder = { default-features = false, path = '../../crates/evm-coder' }497evm-coder = { default-features = false, path = '../../crates/evm-coder' }
500up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.33' }498up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.36' }
501pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }499pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }
502pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }500pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }
503precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }501precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }
524522
525[build-dependencies.substrate-wasm-builder]523[build-dependencies.substrate-wasm-builder]
526git = "https://github.com/paritytech/substrate"524git = "https://github.com/paritytech/substrate"
527branch = "polkadot-v0.9.33"525branch = "polkadot-v0.9.36"
528526
modifiedruntime/quartz/Cargo.tomldiffbeforeafterboth
1################################################################################1################################################################################
2# Package2# Package
3
4cargo-features = ["workspace-inheritance"]
53
6[package]4[package]
7authors = ['Unique Network <support@uniquenetwork.io>']5authors = ['Unique Network <support@uniquenetwork.io>']
12license = 'GPLv3'10license = 'GPLv3'
13name = 'quartz-runtime'11name = 'quartz-runtime'
14repository = 'https://github.com/UniqueNetwork/unique-chain'12repository = 'https://github.com/UniqueNetwork/unique-chain'
15version = '0.9.33'13version.workspace = true
1614
17[package.metadata.docs.rs]15[package.metadata.docs.rs]
18targets = ['x86_64-unknown-linux-gnu']16targets = ['x86_64-unknown-linux-gnu']
190default-features = false188default-features = false
191git = "https://github.com/paritytech/substrate"189git = "https://github.com/paritytech/substrate"
192optional = true190optional = true
193branch = "polkadot-v0.9.33"191branch = "polkadot-v0.9.36"
194192
195[dependencies.frame-try-runtime]193[dependencies.frame-try-runtime]
196default-features = false194default-features = false
197git = "https://github.com/paritytech/substrate"195git = "https://github.com/paritytech/substrate"
198optional = true196optional = true
199branch = "polkadot-v0.9.33"197branch = "polkadot-v0.9.36"
200198
201[dependencies.frame-executive]199[dependencies.frame-executive]
202default-features = false200default-features = false
203git = "https://github.com/paritytech/substrate"201git = "https://github.com/paritytech/substrate"
204branch = "polkadot-v0.9.33"202branch = "polkadot-v0.9.36"
205203
206[dependencies.frame-support]204[dependencies.frame-support]
207default-features = false205default-features = false
208git = "https://github.com/paritytech/substrate"206git = "https://github.com/paritytech/substrate"
209branch = "polkadot-v0.9.33"207branch = "polkadot-v0.9.36"
210208
211[dependencies.frame-system]209[dependencies.frame-system]
212default-features = false210default-features = false
213git = "https://github.com/paritytech/substrate"211git = "https://github.com/paritytech/substrate"
214branch = "polkadot-v0.9.33"212branch = "polkadot-v0.9.36"
215213
216[dependencies.frame-system-benchmarking]214[dependencies.frame-system-benchmarking]
217default-features = false215default-features = false
218git = "https://github.com/paritytech/substrate"216git = "https://github.com/paritytech/substrate"
219optional = true217optional = true
220branch = "polkadot-v0.9.33"218branch = "polkadot-v0.9.36"
221219
222[dependencies.frame-system-rpc-runtime-api]220[dependencies.frame-system-rpc-runtime-api]
223default-features = false221default-features = false
224git = "https://github.com/paritytech/substrate"222git = "https://github.com/paritytech/substrate"
225branch = "polkadot-v0.9.33"223branch = "polkadot-v0.9.36"
226224
227[dependencies.hex-literal]225[dependencies.hex-literal]
228optional = true226optional = true
237[dependencies.pallet-aura]235[dependencies.pallet-aura]
238default-features = false236default-features = false
239git = "https://github.com/paritytech/substrate"237git = "https://github.com/paritytech/substrate"
240branch = "polkadot-v0.9.33"238branch = "polkadot-v0.9.36"
241239
242[dependencies.pallet-balances]240[dependencies.pallet-balances]
243default-features = false241default-features = false
244git = "https://github.com/paritytech/substrate"242git = "https://github.com/paritytech/substrate"
245branch = "polkadot-v0.9.33"243branch = "polkadot-v0.9.36"
246244
247# Contracts specific packages245# Contracts specific packages
248# [dependencies.pallet-contracts]246# [dependencies.pallet-contracts]
266[dependencies.pallet-randomness-collective-flip]264[dependencies.pallet-randomness-collective-flip]
267default-features = false265default-features = false
268git = "https://github.com/paritytech/substrate"266git = "https://github.com/paritytech/substrate"
269branch = "polkadot-v0.9.33"267branch = "polkadot-v0.9.36"
270268
271[dependencies.pallet-sudo]269[dependencies.pallet-sudo]
272default-features = false270default-features = false
273git = "https://github.com/paritytech/substrate"271git = "https://github.com/paritytech/substrate"
274branch = "polkadot-v0.9.33"272branch = "polkadot-v0.9.36"
275273
276[dependencies.pallet-timestamp]274[dependencies.pallet-timestamp]
277default-features = false275default-features = false
278git = "https://github.com/paritytech/substrate"276git = "https://github.com/paritytech/substrate"
279branch = "polkadot-v0.9.33"277branch = "polkadot-v0.9.36"
280278
281[dependencies.pallet-transaction-payment]279[dependencies.pallet-transaction-payment]
282default-features = false280default-features = false
283git = "https://github.com/paritytech/substrate"281git = "https://github.com/paritytech/substrate"
284branch = "polkadot-v0.9.33"282branch = "polkadot-v0.9.36"
285283
286[dependencies.pallet-transaction-payment-rpc-runtime-api]284[dependencies.pallet-transaction-payment-rpc-runtime-api]
287default-features = false285default-features = false
288git = "https://github.com/paritytech/substrate"286git = "https://github.com/paritytech/substrate"
289branch = "polkadot-v0.9.33"287branch = "polkadot-v0.9.36"
290288
291[dependencies.pallet-treasury]289[dependencies.pallet-treasury]
292default-features = false290default-features = false
293git = "https://github.com/paritytech/substrate"291git = "https://github.com/paritytech/substrate"
294branch = "polkadot-v0.9.33"292branch = "polkadot-v0.9.36"
295293
296[dependencies.sp-arithmetic]294[dependencies.sp-arithmetic]
297default-features = false295default-features = false
298git = "https://github.com/paritytech/substrate"296git = "https://github.com/paritytech/substrate"
299branch = "polkadot-v0.9.33"297branch = "polkadot-v0.9.36"
300298
301[dependencies.sp-api]299[dependencies.sp-api]
302default-features = false300default-features = false
303git = "https://github.com/paritytech/substrate"301git = "https://github.com/paritytech/substrate"
304branch = "polkadot-v0.9.33"302branch = "polkadot-v0.9.36"
305303
306[dependencies.sp-block-builder]304[dependencies.sp-block-builder]
307default-features = false305default-features = false
308git = "https://github.com/paritytech/substrate"306git = "https://github.com/paritytech/substrate"
309branch = "polkadot-v0.9.33"307branch = "polkadot-v0.9.36"
310308
311[dependencies.sp-core]309[dependencies.sp-core]
312default-features = false310default-features = false
313git = "https://github.com/paritytech/substrate"311git = "https://github.com/paritytech/substrate"
314branch = "polkadot-v0.9.33"312branch = "polkadot-v0.9.36"
315313
316[dependencies.sp-consensus-aura]314[dependencies.sp-consensus-aura]
317default-features = false315default-features = false
318git = "https://github.com/paritytech/substrate"316git = "https://github.com/paritytech/substrate"
319branch = "polkadot-v0.9.33"317branch = "polkadot-v0.9.36"
320318
321[dependencies.sp-inherents]319[dependencies.sp-inherents]
322default-features = false320default-features = false
323git = "https://github.com/paritytech/substrate"321git = "https://github.com/paritytech/substrate"
324branch = "polkadot-v0.9.33"322branch = "polkadot-v0.9.36"
325323
326[dependencies.sp-io]324[dependencies.sp-io]
327default-features = false325default-features = false
328git = "https://github.com/paritytech/substrate"326git = "https://github.com/paritytech/substrate"
329branch = "polkadot-v0.9.33"327branch = "polkadot-v0.9.36"
330328
331[dependencies.sp-offchain]329[dependencies.sp-offchain]
332default-features = false330default-features = false
333git = "https://github.com/paritytech/substrate"331git = "https://github.com/paritytech/substrate"
334branch = "polkadot-v0.9.33"332branch = "polkadot-v0.9.36"
335333
336[dependencies.sp-runtime]334[dependencies.sp-runtime]
337default-features = false335default-features = false
338git = "https://github.com/paritytech/substrate"336git = "https://github.com/paritytech/substrate"
339branch = "polkadot-v0.9.33"337branch = "polkadot-v0.9.36"
340338
341[dependencies.sp-session]339[dependencies.sp-session]
342default-features = false340default-features = false
343git = "https://github.com/paritytech/substrate"341git = "https://github.com/paritytech/substrate"
344branch = "polkadot-v0.9.33"342branch = "polkadot-v0.9.36"
345343
346[dependencies.sp-std]344[dependencies.sp-std]
347default-features = false345default-features = false
348git = "https://github.com/paritytech/substrate"346git = "https://github.com/paritytech/substrate"
349branch = "polkadot-v0.9.33"347branch = "polkadot-v0.9.36"
350348
351[dependencies.sp-transaction-pool]349[dependencies.sp-transaction-pool]
352default-features = false350default-features = false
353git = "https://github.com/paritytech/substrate"351git = "https://github.com/paritytech/substrate"
354branch = "polkadot-v0.9.33"352branch = "polkadot-v0.9.36"
355353
356[dependencies.sp-version]354[dependencies.sp-version]
357default-features = false355default-features = false
358git = "https://github.com/paritytech/substrate"356git = "https://github.com/paritytech/substrate"
359branch = "polkadot-v0.9.33"357branch = "polkadot-v0.9.36"
360358
361[dependencies.smallvec]359[dependencies.smallvec]
362version = '1.6.1'360version = '1.6.1'
367[dependencies.parachain-info]365[dependencies.parachain-info]
368default-features = false366default-features = false
369git = "https://github.com/paritytech/cumulus"367git = "https://github.com/paritytech/cumulus"
370branch = "polkadot-v0.9.33"368branch = "polkadot-v0.9.36"
371369
372[dependencies.cumulus-pallet-aura-ext]370[dependencies.cumulus-pallet-aura-ext]
373git = "https://github.com/paritytech/cumulus"371git = "https://github.com/paritytech/cumulus"
374branch = "polkadot-v0.9.33"372branch = "polkadot-v0.9.36"
375default-features = false373default-features = false
376374
377[dependencies.cumulus-pallet-parachain-system]375[dependencies.cumulus-pallet-parachain-system]
378git = "https://github.com/paritytech/cumulus"376git = "https://github.com/paritytech/cumulus"
379branch = "polkadot-v0.9.33"377branch = "polkadot-v0.9.36"
380default-features = false378default-features = false
381379
382[dependencies.cumulus-primitives-core]380[dependencies.cumulus-primitives-core]
383git = "https://github.com/paritytech/cumulus"381git = "https://github.com/paritytech/cumulus"
384branch = "polkadot-v0.9.33"382branch = "polkadot-v0.9.36"
385default-features = false383default-features = false
386384
387[dependencies.cumulus-pallet-xcm]385[dependencies.cumulus-pallet-xcm]
388git = "https://github.com/paritytech/cumulus"386git = "https://github.com/paritytech/cumulus"
389branch = "polkadot-v0.9.33"387branch = "polkadot-v0.9.36"
390default-features = false388default-features = false
391389
392[dependencies.cumulus-pallet-dmp-queue]390[dependencies.cumulus-pallet-dmp-queue]
393git = "https://github.com/paritytech/cumulus"391git = "https://github.com/paritytech/cumulus"
394branch = "polkadot-v0.9.33"392branch = "polkadot-v0.9.36"
395default-features = false393default-features = false
396394
397[dependencies.cumulus-pallet-xcmp-queue]395[dependencies.cumulus-pallet-xcmp-queue]
398git = "https://github.com/paritytech/cumulus"396git = "https://github.com/paritytech/cumulus"
399branch = "polkadot-v0.9.33"397branch = "polkadot-v0.9.36"
400default-features = false398default-features = false
401399
402[dependencies.cumulus-primitives-utility]400[dependencies.cumulus-primitives-utility]
403git = "https://github.com/paritytech/cumulus"401git = "https://github.com/paritytech/cumulus"
404branch = "polkadot-v0.9.33"402branch = "polkadot-v0.9.36"
405default-features = false403default-features = false
406404
407[dependencies.cumulus-primitives-timestamp]405[dependencies.cumulus-primitives-timestamp]
408git = "https://github.com/paritytech/cumulus"406git = "https://github.com/paritytech/cumulus"
409branch = "polkadot-v0.9.33"407branch = "polkadot-v0.9.36"
410default-features = false408default-features = false
411409
412################################################################################410################################################################################
413# Polkadot dependencies411# Polkadot dependencies
414412
415[dependencies.polkadot-parachain]413[dependencies.polkadot-parachain]
416git = "https://github.com/paritytech/polkadot"414git = "https://github.com/paritytech/polkadot"
417branch = "release-v0.9.33"415branch = "release-v0.9.36"
418default-features = false416default-features = false
419417
420[dependencies.xcm]418[dependencies.xcm]
421git = "https://github.com/paritytech/polkadot"419git = "https://github.com/paritytech/polkadot"
422branch = "release-v0.9.33"420branch = "release-v0.9.36"
423default-features = false421default-features = false
424422
425[dependencies.xcm-builder]423[dependencies.xcm-builder]
426git = "https://github.com/paritytech/polkadot"424git = "https://github.com/paritytech/polkadot"
427branch = "release-v0.9.33"425branch = "release-v0.9.36"
428default-features = false426default-features = false
429427
430[dependencies.xcm-executor]428[dependencies.xcm-executor]
431git = "https://github.com/paritytech/polkadot"429git = "https://github.com/paritytech/polkadot"
432branch = "release-v0.9.33"430branch = "release-v0.9.36"
433default-features = false431default-features = false
434432
435[dependencies.pallet-xcm]433[dependencies.pallet-xcm]
436git = "https://github.com/paritytech/polkadot"434git = "https://github.com/paritytech/polkadot"
437branch = "release-v0.9.33"435branch = "release-v0.9.36"
438default-features = false436default-features = false
439437
440################################################################################438################################################################################
463pallet-unique = { path = '../../pallets/unique', default-features = false }461pallet-unique = { path = '../../pallets/unique', default-features = false }
464up-rpc = { path = "../../primitives/rpc", default-features = false }462up-rpc = { path = "../../primitives/rpc", default-features = false }
465app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }463app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false }
466fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }464fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
467fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }465fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
468pallet-inflation = { path = '../../pallets/inflation', default-features = false }466pallet-inflation = { path = '../../pallets/inflation', default-features = false }
469pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }467pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }
470up-data-structs = { path = '../../primitives/data-structs', default-features = false }468up-data-structs = { path = '../../primitives/data-structs', default-features = false }
477pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }475pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
478pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }476pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
479# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }477# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
480pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }478pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
481pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }479pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
482pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }480pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
483pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }481pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
484pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }482pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
485pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }483pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
486pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }484pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
487pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }485pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
488fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }486fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
489fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }487fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
490pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }488pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
491evm-coder = { default-features = false, path = '../../crates/evm-coder' }489evm-coder = { default-features = false, path = '../../crates/evm-coder' }
492up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.33' }490up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.36' }
493pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }491pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }
494pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }492pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }
495precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }493precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }
511509
512[build-dependencies.substrate-wasm-builder]510[build-dependencies.substrate-wasm-builder]
513git = "https://github.com/paritytech/substrate"511git = "https://github.com/paritytech/substrate"
514branch = "polkadot-v0.9.33"512branch = "polkadot-v0.9.36"
515513
modifiedruntime/tests/Cargo.tomldiffbeforeafterboth
11[dependencies]11[dependencies]
12up-data-structs = { default-features = false, path = '../../primitives/data-structs' }12up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
1313
14sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }14sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }17sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
1818
19fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }19fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
2020
21frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }21frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
22frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }22frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2323
24pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }24pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
25pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }25pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
26pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }26pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2727
28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
29pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }29pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
3030
31pallet-common = { path = '../../pallets/common' }31pallet-common = { path = '../../pallets/common' }
32pallet-structure = { path = '../../pallets/structure' }32pallet-structure = { path = '../../pallets/structure' }
43scale-info = "*"43scale-info = "*"
4444
45evm-coder = { default-features = false, path = '../../crates/evm-coder' }45evm-coder = { default-features = false, path = '../../crates/evm-coder' }
46up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33" }46up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36" }
4747
modifiedruntime/unique/Cargo.tomldiffbeforeafterboth
1################################################################################1################################################################################
2# Package2# Package
3
4cargo-features = ["workspace-inheritance"]
53
6[package]4[package]
7authors = ['Unique Network <support@uniquenetwork.io>']5authors = ['Unique Network <support@uniquenetwork.io>']
12license = 'GPLv3'10license = 'GPLv3'
13name = 'unique-runtime'11name = 'unique-runtime'
14repository = 'https://github.com/UniqueNetwork/unique-chain'12repository = 'https://github.com/UniqueNetwork/unique-chain'
15version = '0.9.33'13version.workspace = true
1614
17[package.metadata.docs.rs]15[package.metadata.docs.rs]
18targets = ['x86_64-unknown-linux-gnu']16targets = ['x86_64-unknown-linux-gnu']
191default-features = false189default-features = false
192git = "https://github.com/paritytech/substrate"190git = "https://github.com/paritytech/substrate"
193optional = true191optional = true
194branch = "polkadot-v0.9.33"192branch = "polkadot-v0.9.36"
195193
196[dependencies.frame-try-runtime]194[dependencies.frame-try-runtime]
197default-features = false195default-features = false
198git = "https://github.com/paritytech/substrate"196git = "https://github.com/paritytech/substrate"
199optional = true197optional = true
200branch = "polkadot-v0.9.33"198branch = "polkadot-v0.9.36"
201199
202[dependencies.frame-executive]200[dependencies.frame-executive]
203default-features = false201default-features = false
204git = "https://github.com/paritytech/substrate"202git = "https://github.com/paritytech/substrate"
205branch = "polkadot-v0.9.33"203branch = "polkadot-v0.9.36"
206204
207[dependencies.frame-support]205[dependencies.frame-support]
208default-features = false206default-features = false
209git = "https://github.com/paritytech/substrate"207git = "https://github.com/paritytech/substrate"
210branch = "polkadot-v0.9.33"208branch = "polkadot-v0.9.36"
211209
212[dependencies.frame-system]210[dependencies.frame-system]
213default-features = false211default-features = false
214git = "https://github.com/paritytech/substrate"212git = "https://github.com/paritytech/substrate"
215branch = "polkadot-v0.9.33"213branch = "polkadot-v0.9.36"
216214
217[dependencies.frame-system-benchmarking]215[dependencies.frame-system-benchmarking]
218default-features = false216default-features = false
219git = "https://github.com/paritytech/substrate"217git = "https://github.com/paritytech/substrate"
220optional = true218optional = true
221branch = "polkadot-v0.9.33"219branch = "polkadot-v0.9.36"
222220
223[dependencies.frame-system-rpc-runtime-api]221[dependencies.frame-system-rpc-runtime-api]
224default-features = false222default-features = false
225git = "https://github.com/paritytech/substrate"223git = "https://github.com/paritytech/substrate"
226branch = "polkadot-v0.9.33"224branch = "polkadot-v0.9.36"
227225
228[dependencies.hex-literal]226[dependencies.hex-literal]
229optional = true227optional = true
238[dependencies.pallet-aura]236[dependencies.pallet-aura]
239default-features = false237default-features = false
240git = "https://github.com/paritytech/substrate"238git = "https://github.com/paritytech/substrate"
241branch = "polkadot-v0.9.33"239branch = "polkadot-v0.9.36"
242240
243[dependencies.pallet-balances]241[dependencies.pallet-balances]
244default-features = false242default-features = false
245git = "https://github.com/paritytech/substrate"243git = "https://github.com/paritytech/substrate"
246branch = "polkadot-v0.9.33"244branch = "polkadot-v0.9.36"
247245
248# Contracts specific packages246# Contracts specific packages
249# [dependencies.pallet-contracts]247# [dependencies.pallet-contracts]
267[dependencies.pallet-randomness-collective-flip]265[dependencies.pallet-randomness-collective-flip]
268default-features = false266default-features = false
269git = "https://github.com/paritytech/substrate"267git = "https://github.com/paritytech/substrate"
270branch = "polkadot-v0.9.33"268branch = "polkadot-v0.9.36"
271269
272[dependencies.pallet-sudo]270[dependencies.pallet-sudo]
273default-features = false271default-features = false
274git = "https://github.com/paritytech/substrate"272git = "https://github.com/paritytech/substrate"
275branch = "polkadot-v0.9.33"273branch = "polkadot-v0.9.36"
276274
277[dependencies.pallet-timestamp]275[dependencies.pallet-timestamp]
278default-features = false276default-features = false
279git = "https://github.com/paritytech/substrate"277git = "https://github.com/paritytech/substrate"
280branch = "polkadot-v0.9.33"278branch = "polkadot-v0.9.36"
281279
282[dependencies.pallet-transaction-payment]280[dependencies.pallet-transaction-payment]
283default-features = false281default-features = false
284git = "https://github.com/paritytech/substrate"282git = "https://github.com/paritytech/substrate"
285branch = "polkadot-v0.9.33"283branch = "polkadot-v0.9.36"
286284
287[dependencies.pallet-transaction-payment-rpc-runtime-api]285[dependencies.pallet-transaction-payment-rpc-runtime-api]
288default-features = false286default-features = false
289git = "https://github.com/paritytech/substrate"287git = "https://github.com/paritytech/substrate"
290branch = "polkadot-v0.9.33"288branch = "polkadot-v0.9.36"
291289
292[dependencies.pallet-treasury]290[dependencies.pallet-treasury]
293default-features = false291default-features = false
294git = "https://github.com/paritytech/substrate"292git = "https://github.com/paritytech/substrate"
295branch = "polkadot-v0.9.33"293branch = "polkadot-v0.9.36"
296294
297[dependencies.sp-arithmetic]295[dependencies.sp-arithmetic]
298default-features = false296default-features = false
299git = "https://github.com/paritytech/substrate"297git = "https://github.com/paritytech/substrate"
300branch = "polkadot-v0.9.33"298branch = "polkadot-v0.9.36"
301299
302[dependencies.sp-api]300[dependencies.sp-api]
303default-features = false301default-features = false
304git = "https://github.com/paritytech/substrate"302git = "https://github.com/paritytech/substrate"
305branch = "polkadot-v0.9.33"303branch = "polkadot-v0.9.36"
306304
307[dependencies.sp-block-builder]305[dependencies.sp-block-builder]
308default-features = false306default-features = false
309git = "https://github.com/paritytech/substrate"307git = "https://github.com/paritytech/substrate"
310branch = "polkadot-v0.9.33"308branch = "polkadot-v0.9.36"
311309
312[dependencies.sp-core]310[dependencies.sp-core]
313default-features = false311default-features = false
314git = "https://github.com/paritytech/substrate"312git = "https://github.com/paritytech/substrate"
315branch = "polkadot-v0.9.33"313branch = "polkadot-v0.9.36"
316314
317[dependencies.sp-consensus-aura]315[dependencies.sp-consensus-aura]
318default-features = false316default-features = false
319git = "https://github.com/paritytech/substrate"317git = "https://github.com/paritytech/substrate"
320branch = "polkadot-v0.9.33"318branch = "polkadot-v0.9.36"
321319
322[dependencies.sp-inherents]320[dependencies.sp-inherents]
323default-features = false321default-features = false
324git = "https://github.com/paritytech/substrate"322git = "https://github.com/paritytech/substrate"
325branch = "polkadot-v0.9.33"323branch = "polkadot-v0.9.36"
326324
327[dependencies.sp-io]325[dependencies.sp-io]
328default-features = false326default-features = false
329git = "https://github.com/paritytech/substrate"327git = "https://github.com/paritytech/substrate"
330branch = "polkadot-v0.9.33"328branch = "polkadot-v0.9.36"
331329
332[dependencies.sp-offchain]330[dependencies.sp-offchain]
333default-features = false331default-features = false
334git = "https://github.com/paritytech/substrate"332git = "https://github.com/paritytech/substrate"
335branch = "polkadot-v0.9.33"333branch = "polkadot-v0.9.36"
336334
337[dependencies.sp-runtime]335[dependencies.sp-runtime]
338default-features = false336default-features = false
339git = "https://github.com/paritytech/substrate"337git = "https://github.com/paritytech/substrate"
340branch = "polkadot-v0.9.33"338branch = "polkadot-v0.9.36"
341339
342[dependencies.sp-session]340[dependencies.sp-session]
343default-features = false341default-features = false
344git = "https://github.com/paritytech/substrate"342git = "https://github.com/paritytech/substrate"
345branch = "polkadot-v0.9.33"343branch = "polkadot-v0.9.36"
346344
347[dependencies.sp-std]345[dependencies.sp-std]
348default-features = false346default-features = false
349git = "https://github.com/paritytech/substrate"347git = "https://github.com/paritytech/substrate"
350branch = "polkadot-v0.9.33"348branch = "polkadot-v0.9.36"
351349
352[dependencies.sp-transaction-pool]350[dependencies.sp-transaction-pool]
353default-features = false351default-features = false
354git = "https://github.com/paritytech/substrate"352git = "https://github.com/paritytech/substrate"
355branch = "polkadot-v0.9.33"353branch = "polkadot-v0.9.36"
356354
357[dependencies.sp-version]355[dependencies.sp-version]
358default-features = false356default-features = false
359git = "https://github.com/paritytech/substrate"357git = "https://github.com/paritytech/substrate"
360branch = "polkadot-v0.9.33"358branch = "polkadot-v0.9.36"
361359
362[dependencies.smallvec]360[dependencies.smallvec]
363version = '1.6.1'361version = '1.6.1'
368[dependencies.parachain-info]366[dependencies.parachain-info]
369default-features = false367default-features = false
370git = "https://github.com/paritytech/cumulus"368git = "https://github.com/paritytech/cumulus"
371branch = "polkadot-v0.9.33"369branch = "polkadot-v0.9.36"
372370
373[dependencies.cumulus-pallet-aura-ext]371[dependencies.cumulus-pallet-aura-ext]
374git = "https://github.com/paritytech/cumulus"372git = "https://github.com/paritytech/cumulus"
375branch = "polkadot-v0.9.33"373branch = "polkadot-v0.9.36"
376default-features = false374default-features = false
377375
378[dependencies.cumulus-pallet-parachain-system]376[dependencies.cumulus-pallet-parachain-system]
379git = "https://github.com/paritytech/cumulus"377git = "https://github.com/paritytech/cumulus"
380branch = "polkadot-v0.9.33"378branch = "polkadot-v0.9.36"
381default-features = false379default-features = false
382380
383[dependencies.cumulus-primitives-core]381[dependencies.cumulus-primitives-core]
384git = "https://github.com/paritytech/cumulus"382git = "https://github.com/paritytech/cumulus"
385branch = "polkadot-v0.9.33"383branch = "polkadot-v0.9.36"
386default-features = false384default-features = false
387385
388[dependencies.cumulus-pallet-xcm]386[dependencies.cumulus-pallet-xcm]
389git = "https://github.com/paritytech/cumulus"387git = "https://github.com/paritytech/cumulus"
390branch = "polkadot-v0.9.33"388branch = "polkadot-v0.9.36"
391default-features = false389default-features = false
392390
393[dependencies.cumulus-pallet-dmp-queue]391[dependencies.cumulus-pallet-dmp-queue]
394git = "https://github.com/paritytech/cumulus"392git = "https://github.com/paritytech/cumulus"
395branch = "polkadot-v0.9.33"393branch = "polkadot-v0.9.36"
396default-features = false394default-features = false
397395
398[dependencies.cumulus-pallet-xcmp-queue]396[dependencies.cumulus-pallet-xcmp-queue]
399git = "https://github.com/paritytech/cumulus"397git = "https://github.com/paritytech/cumulus"
400branch = "polkadot-v0.9.33"398branch = "polkadot-v0.9.36"
401default-features = false399default-features = false
402400
403[dependencies.cumulus-primitives-utility]401[dependencies.cumulus-primitives-utility]
404git = "https://github.com/paritytech/cumulus"402git = "https://github.com/paritytech/cumulus"
405branch = "polkadot-v0.9.33"403branch = "polkadot-v0.9.36"
406default-features = false404default-features = false
407405
408[dependencies.cumulus-primitives-timestamp]406[dependencies.cumulus-primitives-timestamp]
409git = "https://github.com/paritytech/cumulus"407git = "https://github.com/paritytech/cumulus"
410branch = "polkadot-v0.9.33"408branch = "polkadot-v0.9.36"
411default-features = false409default-features = false
412410
413################################################################################411################################################################################
414# Polkadot dependencies412# Polkadot dependencies
415413
416[dependencies.polkadot-parachain]414[dependencies.polkadot-parachain]
417git = "https://github.com/paritytech/polkadot"415git = "https://github.com/paritytech/polkadot"
418branch = "release-v0.9.33"416branch = "release-v0.9.36"
419default-features = false417default-features = false
420418
421[dependencies.xcm]419[dependencies.xcm]
422git = "https://github.com/paritytech/polkadot"420git = "https://github.com/paritytech/polkadot"
423branch = "release-v0.9.33"421branch = "release-v0.9.36"
424default-features = false422default-features = false
425423
426[dependencies.xcm-builder]424[dependencies.xcm-builder]
427git = "https://github.com/paritytech/polkadot"425git = "https://github.com/paritytech/polkadot"
428branch = "release-v0.9.33"426branch = "release-v0.9.36"
429default-features = false427default-features = false
430428
431[dependencies.xcm-executor]429[dependencies.xcm-executor]
432git = "https://github.com/paritytech/polkadot"430git = "https://github.com/paritytech/polkadot"
433branch = "release-v0.9.33"431branch = "release-v0.9.36"
434default-features = false432default-features = false
435433
436[dependencies.pallet-xcm]434[dependencies.pallet-xcm]
437git = "https://github.com/paritytech/polkadot"435git = "https://github.com/paritytech/polkadot"
438branch = "release-v0.9.33"436branch = "release-v0.9.36"
439default-features = false437default-features = false
440438
441################################################################################439################################################################################
469pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }467pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
470pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }468pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
471# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }469# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
472pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.33", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }470pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.36", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
473pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }471pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
474pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }472pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
475pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }473pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
476pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }474pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
477pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }475pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
478pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }476pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
479pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }477pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
480fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }478fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
481fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }479fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
482fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }480fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
483fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }481fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
484pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.33" }482pallet-evm-precompile-simple = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.36" }
485evm-coder = { default-features = false, path = '../../crates/evm-coder' }483evm-coder = { default-features = false, path = '../../crates/evm-coder' }
486up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.33' }484up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.36' }
487pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }485pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }
488pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }486pallet-maintenance = { default-features = false, path = "../../pallets/maintenance" }
489precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }487precompile-utils-macro = { path = "../common/ethereum/precompiles/utils/macro" }
505503
506[build-dependencies.substrate-wasm-builder]504[build-dependencies.substrate-wasm-builder]
507git = "https://github.com/paritytech/substrate"505git = "https://github.com/paritytech/substrate"
508branch = "polkadot-v0.9.33"506branch = "polkadot-v0.9.36"
509507
modifiedtest-pallets/utils/Cargo.tomldiffbeforeafterboth
10scale-info = { version = "2.1.1", default-features = false, features = ["derive"] }12scale-info = { version = "2.1.1", default-features = false, features = [
13 "derive",
14] }
11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
13# pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }17# pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
14pallet-unique-scheduler-v2 = { path = '../../pallets/scheduler-v2', default-features = false }18pallet-unique-scheduler-v2 = { path = '../../pallets/scheduler-v2', default-features = false }
15sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.33" }19sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
1620
17[features]21[features]
18default = ["std"]22default = ["std"]
modifiedtest-pallets/utils/src/lib.rsdiffbeforeafterboth
7575
76 #[pallet::call]76 #[pallet::call]
77 impl<T: Config> Pallet<T> {77 impl<T: Config> Pallet<T> {
78 #[pallet::call_index(0)]
78 #[pallet::weight(10_000)]79 #[pallet::weight(10_000)]
79 pub fn enable(origin: OriginFor<T>) -> DispatchResult {80 pub fn enable(origin: OriginFor<T>) -> DispatchResult {
80 ensure_root(origin)?;81 ensure_root(origin)?;
83 Ok(())84 Ok(())
84 }85 }
8586
87 #[pallet::call_index(1)]
86 #[pallet::weight(10_000)]88 #[pallet::weight(10_000)]
87 pub fn set_test_value(origin: OriginFor<T>, value: u32) -> DispatchResult {89 pub fn set_test_value(origin: OriginFor<T>, value: u32) -> DispatchResult {
88 Self::ensure_origin_and_enabled(origin)?;90 Self::ensure_origin_and_enabled(origin)?;
94 Ok(())96 Ok(())
95 }97 }
9698
99 #[pallet::call_index(2)]
97 #[pallet::weight(10_000)]100 #[pallet::weight(10_000)]
98 pub fn set_test_value_and_rollback(origin: OriginFor<T>, value: u32) -> DispatchResult {101 pub fn set_test_value_and_rollback(origin: OriginFor<T>, value: u32) -> DispatchResult {
99 Self::set_test_value(origin, value)?;102 Self::set_test_value(origin, value)?;
103 Err(<Error<T>>::TriggerRollback.into())106 Err(<Error<T>>::TriggerRollback.into())
104 }107 }
105108
109 #[pallet::call_index(3)]
106 #[pallet::weight(10_000)]110 #[pallet::weight(10_000)]
107 pub fn inc_test_value(origin: OriginFor<T>) -> DispatchResult {111 pub fn inc_test_value(origin: OriginFor<T>) -> DispatchResult {
108 Self::set_test_value(origin, <TestValue<T>>::get() + 1)112 Self::set_test_value(origin, <TestValue<T>>::get() + 1)
124 // Ok(())128 // Ok(())
125 // }129 // }
126130
131 #[pallet::call_index(4)]
127 #[pallet::weight(100_000_000)]132 #[pallet::weight(100_000_000)]
128 pub fn just_take_fee(origin: OriginFor<T>) -> DispatchResult {133 pub fn just_take_fee(origin: OriginFor<T>) -> DispatchResult {
129 Self::ensure_origin_and_enabled(origin)?;134 Self::ensure_origin_and_enabled(origin)?;
130 Ok(())135 Ok(())
131 }136 }
132137
138 #[pallet::call_index(5)]
133 #[pallet::weight(10_000)]139 #[pallet::weight(10_000)]
134 pub fn batch_all(140 pub fn batch_all(
135 origin: OriginFor<T>,141 origin: OriginFor<T>,
modifiedtests/.eslintrc.jsondiffbeforeafterboth
10 "parser": "@typescript-eslint/parser",10 "parser": "@typescript-eslint/parser",
11 "parserOptions": {11 "parserOptions": {
12 "ecmaVersion": 11,12 "ecmaVersion": 11,
13 "sourceType": "module"13 "sourceType": "module",
14 "project": "**/tsconfig.json"
14 },15 },
15 "plugins": [16 "plugins": [
16 "@typescript-eslint",17 "@typescript-eslint",
24 "SwitchCase": 125 "SwitchCase": 1
25 }26 }
26 ],27 ],
28 "no-trailing-spaces": "warn",
27 "function-call-argument-newline": [29 "function-call-argument-newline": [
28 "error",30 "error",
29 "consistent"31 "consistent"
modifiedtests/package.jsondiffbeforeafterboth
124 "csv-writer": "^1.6.0",124 "csv-writer": "^1.6.0",
125 "find-process": "^1.4.7",125 "find-process": "^1.4.7",
126 "solc": "0.8.17",126 "solc": "0.8.17",
127 "web3": "^1.8.0"127 "web3": "^1.8.1"
128 }128 }
129}129}
130130
modifiedtests/src/app-promotion.test.tsdiffbeforeafterboth
62 62
63 expect(await helper.staking.getTotalStaked({Substrate: staker.address})).to.be.equal(100n * nominal);63 expect(await helper.staking.getTotalStaked({Substrate: staker.address})).to.be.equal(100n * nominal);
64 expect(await helper.balance.getSubstrate(staker.address) / nominal).to.be.equal(999n);64 expect(await helper.balance.getSubstrate(staker.address) / nominal).to.be.equal(999n);
65 // it is potentially flaky test. Promotion can credited some tokens. Maybe we need to use closeTo? 65 // it is potentially flaky test. Promotion can credited some tokens. Maybe we need to use closeTo?
66 expect(await helper.staking.getTotalStaked()).to.be.equal(totalStakedBefore + 100n * nominal); // total tokens amount staked in app-promotion increased 66 expect(await helper.staking.getTotalStaked()).to.be.equal(totalStakedBefore + 100n * nominal); // total tokens amount staked in app-promotion increased
67 67
68 68
69 await helper.staking.stake(staker, 200n * nominal);69 await helper.staking.stake(staker, 200n * nominal);
122 await helper.staking.unstake(staker);122 await helper.staking.unstake(staker);
123 123
124 // Right after unstake balance is reserved124 // Right after unstake balance is reserved
125 // Staker can not transfer 125 // Staker can not transfer
126 expect(await helper.balance.getSubstrateFull(staker.address)).to.deep.contain({reserved: 900n * nominal, miscFrozen: 0n, feeFrozen: 0n});126 expect(await helper.balance.getSubstrateFull(staker.address)).to.deep.contain({reserved: 900n * nominal, miscFrozen: 0n, feeFrozen: 0n});
127 await expect(helper.balance.transferToSubstrate(staker, recepient.address, 100n * nominal)).to.be.rejectedWith('balances.InsufficientBalance');127 await expect(helper.balance.transferToSubstrate(staker, recepient.address, 100n * nominal)).to.be.rejectedWith('balances.InsufficientBalance');
128 expect(await helper.staking.getPendingUnstake({Substrate: staker.address})).to.be.equal(900n * nominal);128 expect(await helper.staking.getPendingUnstake({Substrate: staker.address})).to.be.equal(900n * nominal);
368 itEth('should set palletes address as a sponsor', async ({helper}) => {368 itEth('should set palletes address as a sponsor', async ({helper}) => {
369 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();369 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
370 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);370 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);
371 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);371 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
372 372
373 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address]);373 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address]);
374 374
384 itEth('should overwrite sponsoring mode and existed sponsor', async ({helper}) => {384 itEth('should overwrite sponsoring mode and existed sponsor', async ({helper}) => {
385 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();385 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
386 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);386 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);
387 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);387 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
388 388
389 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;389 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;
390 390
411 itEth('can be overwritten by contract owner', async ({helper}) => {411 itEth('can be overwritten by contract owner', async ({helper}) => {
412 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();412 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
413 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);413 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);
414 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);414 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
415 415
416 // contract sponsored by pallet416 // contract sponsored by pallet
417 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true);417 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true);
432 const nonAdmin = accounts.pop()!;432 const nonAdmin = accounts.pop()!;
433 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();433 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
434 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);434 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);
435 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);435 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
436 436
437 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;437 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;
438 438
439 // nonAdmin calls sponsorContract439 // nonAdmin calls sponsorContract
440 await expect(helper.executeExtrinsic(nonAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true)).to.be.rejectedWith('appPromotion.NoPermission');440 await expect(helper.executeExtrinsic(nonAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true)).to.be.rejectedWith('appPromotion.NoPermission');
441 441
442 // contract still self-sponsored 442 // contract still self-sponsored
443 expect((await helper.callRpc('api.query.evmContractHelpers.sponsoring', [flipper.options.address])).toJSON()).to.deep.equal({443 expect((await helper.callRpc('api.query.evmContractHelpers.sponsoring', [flipper.options.address])).toJSON()).to.deep.equal({
444 confirmed: {444 confirmed: {
445 ethereum: flipper.options.address.toLowerCase(),445 ethereum: flipper.options.address.toLowerCase(),
455 // Deploy flipper455 // Deploy flipper
456 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();456 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
457 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);457 const flipper = await helper.eth.deployFlipper(contractOwner); // await deployFlipper(web3, contractOwner);
458 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);458 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
459 459
460 // Owner sets to sponsor every tx460 // Owner sets to sponsor every tx
461 await contractHelper.methods.setSponsoringRateLimit(flipper.options.address, 0).send({from: contractOwner});461 await contractHelper.methods.setSponsoringRateLimit(flipper.options.address, 0).send({from: contractOwner});
487 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();487 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
488 const flipper = await helper.eth.deployFlipper(contractOwner);488 const flipper = await helper.eth.deployFlipper(contractOwner);
489 await helper.eth.transferBalanceFromSubstrate(donor, flipper.options.address);489 await helper.eth.transferBalanceFromSubstrate(donor, flipper.options.address);
490 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);490 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
491 491
492 await contractHelper.methods.setSponsoringMode(flipper.options.address, SponsoringMode.Generous).send({from: contractOwner});492 await contractHelper.methods.setSponsoringMode(flipper.options.address, SponsoringMode.Generous).send({from: contractOwner});
493 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true);493 await helper.executeExtrinsic(palletAdmin, 'api.tx.appPromotion.sponsorContract', [flipper.options.address], true);
524 const nonAdmin = accounts.pop()!;524 const nonAdmin = accounts.pop()!;
525 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();525 const contractOwner = (await helper.eth.createAccountWithBalance(donor, 1000n)).toLowerCase();
526 const flipper = await helper.eth.deployFlipper(contractOwner);526 const flipper = await helper.eth.deployFlipper(contractOwner);
527 const contractHelper = helper.ethNativeContract.contractHelpers(contractOwner);527 const contractHelper = await helper.ethNativeContract.contractHelpers(contractOwner);
528 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;528 await expect(contractHelper.methods.selfSponsoredEnable(flipper.options.address).send()).to.be.fulfilled;
529 529
530 await expect(helper.executeExtrinsic(nonAdmin, 'api.tx.appPromotion.stopSponsoringContract', [flipper.options.address], true)).to.be.rejectedWith('appPromotion.NoPermission');530 await expect(helper.executeExtrinsic(nonAdmin, 'api.tx.appPromotion.stopSponsoringContract', [flipper.options.address], true)).to.be.rejectedWith('appPromotion.NoPermission');
650 const crowd = await helper.arrange.createCrowd(500, 300n, donor);650 const crowd = await helper.arrange.createCrowd(500, 300n, donor);
651 await Promise.all(crowd.map(account => helper.staking.stake(account, 100n * nominal)));651 await Promise.all(crowd.map(account => helper.staking.stake(account, 100n * nominal)));
652 await Promise.all(crowd.map(account => helper.staking.stake(account, 100n * nominal)));652 await Promise.all(crowd.map(account => helper.staking.stake(account, 100n * nominal)));
653 // 653 //
654 };654 };
655 655
656 for (let i = 0; i < 40; i++) {656 for (let i = 0; i < 40; i++) {
modifiedtests/src/benchmarks/mintFee/benchmark.tsdiffbeforeafterboth
210 );210 );
211211
212 const collectionEthAddress = helper.ethAddress.fromCollectionId(collection.collectionId);212 const collectionEthAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
213 const collectionContract = helper.ethNativeContract.collection(213 const collectionContract = await helper.ethNativeContract.collection(
214 collectionEthAddress,214 collectionEthAddress,
215 'nft',215 'nft',
216 );216 );
290 ethSigner,290 ethSigner,
291 proxyContract.options.address,291 proxyContract.options.address,
292 async (collection) => {292 async (collection) => {
293 const evmContract = helper.ethNativeContract.collection(293 const evmContract = await helper.ethNativeContract.collection(
294 helper.ethAddress.fromCollectionId(collection.collectionId),294 helper.ethAddress.fromCollectionId(collection.collectionId),
295 'nft',295 'nft',
296 );296 );
330 ethSigner,330 ethSigner,
331 proxyContract.options.address,331 proxyContract.options.address,
332 async (collection) => {332 async (collection) => {
333 const evmContract = helper.ethNativeContract.collection(333 const evmContract = await helper.ethNativeContract.collection(
334 helper.ethAddress.fromCollectionId(collection.collectionId),334 helper.ethAddress.fromCollectionId(collection.collectionId),
335 'nft',335 'nft',
336 );336 );
modifiedtests/src/calibrate.tsdiffbeforeafterboth
246 const token = await collection.mintToken(alice, {Ethereum: caller});246 const token = await collection.mintToken(alice, {Ethereum: caller});
247247
248 const address = helper.ethAddress.fromCollectionId(collection.collectionId);248 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
249 const contract = helper.ethNativeContract.collection(address, 'nft', caller);249 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
250250
251 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gas: helper.eth.DEFAULT_GAS}));251 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gas: helper.eth.DEFAULT_GAS}));
252252
266 const token = await collection.mintToken(alice, {Ethereum: caller});266 const token = await collection.mintToken(alice, {Ethereum: caller});
267267
268 const address = helper.ethAddress.fromCollectionId(collection.collectionId);268 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
269 const contract = helper.ethNativeContract.collection(address, 'nft', caller);269 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
270270
271 const transferPrice = new Fract(await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gasPrice: gasPriceStr, gas: helper.eth.DEFAULT_GAS})));271 const transferPrice = new Fract(await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gasPrice: gasPriceStr, gas: helper.eth.DEFAULT_GAS})));
272272
287 const token = await collection.mintToken(alice, {Ethereum: caller});287 const token = await collection.mintToken(alice, {Ethereum: caller});
288288
289 const address = helper.ethAddress.fromCollectionId(collection.collectionId);289 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
290 const contract = helper.ethNativeContract.collection(address, 'nft', caller);290 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
291291
292 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gas: helper.eth.DEFAULT_GAS}));292 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, token.tokenId).send({from: caller, gas: helper.eth.DEFAULT_GAS}));
293293
modifiedtests/src/eth/allowlist.test.tsdiffbeforeafterboth
30 itEth('Contract allowlist can be toggled', async ({helper}) => {30 itEth('Contract allowlist can be toggled', async ({helper}) => {
31 const owner = await helper.eth.createAccountWithBalance(donor);31 const owner = await helper.eth.createAccountWithBalance(donor);
32 const flipper = await helper.eth.deployFlipper(owner);32 const flipper = await helper.eth.deployFlipper(owner);
33 const helpers = helper.ethNativeContract.contractHelpers(owner);33 const helpers = await helper.ethNativeContract.contractHelpers(owner);
3434
35 // Any user is allowed by default35 // Any user is allowed by default
36 expect(await helpers.methods.allowlistEnabled(flipper.options.address).call()).to.be.false;36 expect(await helpers.methods.allowlistEnabled(flipper.options.address).call()).to.be.false;
48 const owner = await helper.eth.createAccountWithBalance(donor);48 const owner = await helper.eth.createAccountWithBalance(donor);
49 const caller = await helper.eth.createAccountWithBalance(donor);49 const caller = await helper.eth.createAccountWithBalance(donor);
50 const flipper = await helper.eth.deployFlipper(owner);50 const flipper = await helper.eth.deployFlipper(owner);
51 const helpers = helper.ethNativeContract.contractHelpers(owner);51 const helpers = await helper.ethNativeContract.contractHelpers(owner);
5252
53 // User can flip with allowlist disabled53 // User can flip with allowlist disabled
54 await flipper.methods.flip().send({from: caller});54 await flipper.methods.flip().send({from: caller});
82 const crossUser = helper.ethCrossAccount.fromAddress(user);82 const crossUser = helper.ethCrossAccount.fromAddress(user);
83 83
84 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');84 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
85 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);85 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
8686
87 expect(await collectionEvm.methods.allowlistedCross(crossUser).call({from: owner})).to.be.false;87 expect(await collectionEvm.methods.allowlistedCross(crossUser).call({from: owner})).to.be.false;
88 await collectionEvm.methods.addToCollectionAllowList(user).send({from: owner});88 await collectionEvm.methods.addToCollectionAllowList(user).send({from: owner});
105 const mintParams = testCase.mode === 'ft' ? [userEth, 100] : [userEth];105 const mintParams = testCase.mode === 'ft' ? [userEth, 100] : [userEth];
106 106
107 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');107 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
108 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);108 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
109 const userCrossSub = helper.ethCrossAccount.fromKeyringPair(userSub);109 const userCrossSub = helper.ethCrossAccount.fromKeyringPair(userSub);
110 const userCrossEth = helper.ethCrossAccount.fromAddress(userEth);110 const userCrossEth = helper.ethCrossAccount.fromAddress(userEth);
111 const ownerCrossEth = helper.ethCrossAccount.fromAddress(owner);111 const ownerCrossEth = helper.ethCrossAccount.fromAddress(owner);
179 const userCrossEth = helper.ethCrossAccount.fromAddress(userEth);179 const userCrossEth = helper.ethCrossAccount.fromAddress(userEth);
180180
181 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');181 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
182 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner, !testCase.cross);182 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner, !testCase.cross);
183 183
184 expect(await helper.collection.allowed(collectionId, {Substrate: userSub.address})).to.be.false;184 expect(await helper.collection.allowed(collectionId, {Substrate: userSub.address})).to.be.false;
185 expect(await helper.collection.allowed(collectionId, {Ethereum: userEth})).to.be.false;185 expect(await helper.collection.allowed(collectionId, {Ethereum: userEth})).to.be.false;
modifiedtests/src/eth/base.test.tsdiffbeforeafterboth
57 const {tokenId} = await collection.mintToken(alice, {Ethereum: caller});57 const {tokenId} = await collection.mintToken(alice, {Ethereum: caller});
5858
59 const address = helper.ethAddress.fromCollectionId(collection.collectionId);59 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
60 const contract = helper.ethNativeContract.collection(address, 'nft', caller);60 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
6161
62 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, tokenId).send(caller));62 const cost = await helper.eth.calculateFee({Ethereum: caller}, () => contract.methods.transfer(receiver, tokenId).send(caller));
6363
79 const BASE_URI = 'base/';79 const BASE_URI = 'base/';
8080
81 async function checkInterface(helper: EthUniqueHelper, interfaceId: string, simpleResult: boolean, compatibleResult: boolean) {81 async function checkInterface(helper: EthUniqueHelper, interfaceId: string, simpleResult: boolean, compatibleResult: boolean) {
82 const simple = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(simpleNftCollectionId), 'nft', minter);82 const simple = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(simpleNftCollectionId), 'nft', minter);
83 const compatible = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(erc721MetadataCompatibleNftCollectionId), 'nft', minter);83 const compatible = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(erc721MetadataCompatibleNftCollectionId), 'nft', minter);
8484
85 expect(await simple.methods.supportsInterface(interfaceId).call()).to.equal(simpleResult, `empty (not ERC721Metadata compatible) NFT collection returns not ${simpleResult}`);85 expect(await simple.methods.supportsInterface(interfaceId).call()).to.equal(simpleResult, `empty (not ERC721Metadata compatible) NFT collection returns not ${simpleResult}`);
86 expect(await compatible.methods.supportsInterface(interfaceId).call()).to.equal(compatibleResult, `ERC721Metadata compatible NFT collection returns not ${compatibleResult}`);86 expect(await compatible.methods.supportsInterface(interfaceId).call()).to.equal(compatibleResult, `ERC721Metadata compatible NFT collection returns not ${compatibleResult}`);
modifiedtests/src/eth/collectionAdmin.test.tsdiffbeforeafterboth
56 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);56 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);
57 57
58 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');58 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
59 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner, true);59 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner, true);
6060
61 // Check isOwnerOrAdminCross returns false:61 // Check isOwnerOrAdminCross returns false:
62 expect(await collectionEvm.methods.isOwnerOrAdminCross(adminCrossSub).call()).to.be.false;62 expect(await collectionEvm.methods.isOwnerOrAdminCross(adminCrossSub).call()).to.be.false;
63 expect(await collectionEvm.methods.isOwnerOrAdminCross(adminCrossEth).call()).to.be.false;63 expect(await collectionEvm.methods.isOwnerOrAdminCross(adminCrossEth).call()).to.be.false;
64 expect(await collectionEvm.methods.isOwnerOrAdminCross(helper.ethCrossAccount.fromAddress(adminDeprecated)).call()).to.be.false;64 expect(await collectionEvm.methods.isOwnerOrAdminCross(helper.ethCrossAccount.fromAddress(adminDeprecated)).call()).to.be.false;
65 65
66 // Soft-deprecated: can addCollectionAdmin 66 // Soft-deprecated: can addCollectionAdmin
67 await collectionEvm.methods.addCollectionAdmin(adminDeprecated).send();67 await collectionEvm.methods.addCollectionAdmin(adminDeprecated).send();
68 // Can addCollectionAdminCross for substrate and ethereum address68 // Can addCollectionAdminCross for substrate and ethereum address
69 await collectionEvm.methods.addCollectionAdminCross(adminCrossSub).send();69 await collectionEvm.methods.addCollectionAdminCross(adminCrossSub).send();
96 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);96 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);
97 const [adminSub] = await helper.arrange.createAccounts([100n], donor);97 const [adminSub] = await helper.arrange.createAccounts([100n], donor);
98 const adminCrossSub = helper.ethCrossAccount.fromKeyringPair(adminSub);98 const adminCrossSub = helper.ethCrossAccount.fromKeyringPair(adminSub);
99 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);99 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
100 100
101 // cannot mint while not admin101 // cannot mint while not admin
102 await expect(collectionEvm.methods.mint(owner).send({from: adminEth})).to.be.rejected;102 await expect(collectionEvm.methods.mint(owner).send({from: adminEth})).to.be.rejected;
116 const [admin] = await helper.arrange.createAccounts([100n, 100n], donor);116 const [admin] = await helper.arrange.createAccounts([100n, 100n], donor);
117117
118 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');118 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
119 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);119 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
120120
121 const adminCross = {121 const adminCross = {
122 eth: helper.address.substrateToEth(admin.address),122 eth: helper.address.substrateToEth(admin.address),
132 const adminDeprecated = helper.eth.createAccount();132 const adminDeprecated = helper.eth.createAccount();
133 const admin1Cross = helper.ethCrossAccount.fromKeyringPair(await privateKey('admin'));133 const admin1Cross = helper.ethCrossAccount.fromKeyringPair(await privateKey('admin'));
134 const admin2Cross = helper.ethCrossAccount.fromAddress(helper.address.substrateToEth((await privateKey('admin3')).address));134 const admin2Cross = helper.ethCrossAccount.fromAddress(helper.address.substrateToEth((await privateKey('admin3')).address));
135 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);135 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
136 136
137 // Soft-deprecated:137 // Soft-deprecated:
138 expect(await collectionEvm.methods.isOwnerOrAdmin(adminDeprecated).call()).to.be.false;138 expect(await collectionEvm.methods.isOwnerOrAdmin(adminDeprecated).call()).to.be.false;
156 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');156 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
157157
158 const admin = await helper.eth.createAccountWithBalance(donor);158 const admin = await helper.eth.createAccountWithBalance(donor);
159 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);159 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
160 await collectionEvm.methods.addCollectionAdmin(admin).send();160 await collectionEvm.methods.addCollectionAdmin(admin).send();
161161
162 const user = helper.eth.createAccount();162 const user = helper.eth.createAccount();
175 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');175 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
176176
177 const notAdmin = await helper.eth.createAccountWithBalance(donor);177 const notAdmin = await helper.eth.createAccountWithBalance(donor);
178 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);178 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
179179
180 const user = helper.eth.createAccount();180 const user = helper.eth.createAccount();
181 await expect(collectionEvm.methods.addCollectionAdmin(user).call({from: notAdmin}))181 await expect(collectionEvm.methods.addCollectionAdmin(user).call({from: notAdmin}))
191191
192 const [admin, notAdmin] = await helper.arrange.createAccounts([10n, 10n], donor);192 const [admin, notAdmin] = await helper.arrange.createAccounts([10n, 10n], donor);
193 const adminCross = helper.ethCrossAccount.fromKeyringPair(admin);193 const adminCross = helper.ethCrossAccount.fromKeyringPair(admin);
194 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);194 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
195 await collectionEvm.methods.addCollectionAdminCross(adminCross).send();195 await collectionEvm.methods.addCollectionAdminCross(adminCross).send();
196196
197 const notAdminCross = helper.ethCrossAccount.fromKeyringPair(notAdmin);197 const notAdminCross = helper.ethCrossAccount.fromKeyringPair(notAdmin);
211 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');211 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
212212
213 const notAdmin0 = await helper.eth.createAccountWithBalance(donor);213 const notAdmin0 = await helper.eth.createAccountWithBalance(donor);
214 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);214 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
215 const [notAdmin1] = await helper.arrange.createAccounts([10n], donor);215 const [notAdmin1] = await helper.arrange.createAccounts([10n], donor);
216 const notAdmin1Cross = helper.ethCrossAccount.fromKeyringPair(notAdmin1);216 const notAdmin1Cross = helper.ethCrossAccount.fromKeyringPair(notAdmin1);
217 await expect(collectionEvm.methods.addCollectionAdminCross(notAdmin1Cross).call({from: notAdmin0}))217 await expect(collectionEvm.methods.addCollectionAdminCross(notAdmin1Cross).call({from: notAdmin0}))
237 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');237 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
238238
239 const newAdmin = helper.eth.createAccount();239 const newAdmin = helper.eth.createAccount();
240 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);240 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
241 await collectionEvm.methods.addCollectionAdmin(newAdmin).send();241 await collectionEvm.methods.addCollectionAdmin(newAdmin).send();
242242
243 {243 {
261 const adminCrossSub = helper.ethCrossAccount.fromKeyringPair(adminSub);261 const adminCrossSub = helper.ethCrossAccount.fromKeyringPair(adminSub);
262 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);262 const adminCrossEth = helper.ethCrossAccount.fromAddress(adminEth);
263263
264 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);264 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
265 await collectionEvm.methods.addCollectionAdminCross(adminCrossSub).send();265 await collectionEvm.methods.addCollectionAdminCross(adminCrossSub).send();
266 await collectionEvm.methods.addCollectionAdminCross(adminCrossEth).send();266 await collectionEvm.methods.addCollectionAdminCross(adminCrossEth).send();
267267
286 const owner = await helper.eth.createAccountWithBalance(donor);286 const owner = await helper.eth.createAccountWithBalance(donor);
287 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');287 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
288288
289 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);289 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
290290
291 const admin0 = await helper.eth.createAccountWithBalance(donor);291 const admin0 = await helper.eth.createAccountWithBalance(donor);
292 await collectionEvm.methods.addCollectionAdmin(admin0).send();292 await collectionEvm.methods.addCollectionAdmin(admin0).send();
309 const owner = await helper.eth.createAccountWithBalance(donor);309 const owner = await helper.eth.createAccountWithBalance(donor);
310 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');310 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
311311
312 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);312 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
313313
314 const admin = await helper.eth.createAccountWithBalance(donor);314 const admin = await helper.eth.createAccountWithBalance(donor);
315 await collectionEvm.methods.addCollectionAdmin(admin).send();315 await collectionEvm.methods.addCollectionAdmin(admin).send();
331331
332 const [admin1] = await helper.arrange.createAccounts([10n], donor);332 const [admin1] = await helper.arrange.createAccounts([10n], donor);
333 const admin1Cross = helper.ethCrossAccount.fromKeyringPair(admin1);333 const admin1Cross = helper.ethCrossAccount.fromKeyringPair(admin1);
334 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);334 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
335 await collectionEvm.methods.addCollectionAdminCross(admin1Cross).send();335 await collectionEvm.methods.addCollectionAdminCross(admin1Cross).send();
336 336
337 const [admin2] = await helper.arrange.createAccounts([10n], donor);337 const [admin2] = await helper.arrange.createAccounts([10n], donor);
354354
355 const [adminSub] = await helper.arrange.createAccounts([10n], donor);355 const [adminSub] = await helper.arrange.createAccounts([10n], donor);
356 const adminSubCross = helper.ethCrossAccount.fromKeyringPair(adminSub);356 const adminSubCross = helper.ethCrossAccount.fromKeyringPair(adminSub);
357 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);357 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
358 await collectionEvm.methods.addCollectionAdminCross(adminSubCross).send();358 await collectionEvm.methods.addCollectionAdminCross(adminSubCross).send();
359 const notAdminEth = await helper.eth.createAccountWithBalance(donor);359 const notAdminEth = await helper.eth.createAccountWithBalance(donor);
360360
382 const owner = await helper.eth.createAccountWithBalance(donor);382 const owner = await helper.eth.createAccountWithBalance(donor);
383 const newOwner = await helper.eth.createAccountWithBalance(donor);383 const newOwner = await helper.eth.createAccountWithBalance(donor);
384 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');384 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
385 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);385 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
386386
387 await collectionEvm.methods.changeCollectionOwner(newOwner).send();387 await collectionEvm.methods.changeCollectionOwner(newOwner).send();
388388
394 const owner = await helper.eth.createAccountWithBalance(donor);394 const owner = await helper.eth.createAccountWithBalance(donor);
395 const newOwner = await helper.eth.createAccountWithBalance(donor);395 const newOwner = await helper.eth.createAccountWithBalance(donor);
396 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');396 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
397 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);397 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
398 const cost = await recordEthFee(helper, owner, () => collectionEvm.methods.changeCollectionOwner(newOwner).send());398 const cost = await recordEthFee(helper, owner, () => collectionEvm.methods.changeCollectionOwner(newOwner).send());
399 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));399 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
400 expect(cost > 0);400 expect(cost > 0);
404 const owner = await helper.eth.createAccountWithBalance(donor);404 const owner = await helper.eth.createAccountWithBalance(donor);
405 const newOwner = await helper.eth.createAccountWithBalance(donor);405 const newOwner = await helper.eth.createAccountWithBalance(donor);
406 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');406 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
407 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);407 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
408408
409 await expect(collectionEvm.methods.changeCollectionOwner(newOwner).send({from: newOwner})).to.be.rejected;409 await expect(collectionEvm.methods.changeCollectionOwner(newOwner).send({from: newOwner})).to.be.rejected;
410 expect(await collectionEvm.methods.isOwnerOrAdmin(newOwner).call()).to.be.false;410 expect(await collectionEvm.methods.isOwnerOrAdmin(newOwner).call()).to.be.false;
428 const ownerCrossSub = helper.ethCrossAccount.fromKeyringPair(ownerSub);428 const ownerCrossSub = helper.ethCrossAccount.fromKeyringPair(ownerSub);
429429
430 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');430 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
431 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);431 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
432432
433 expect(await collectionEvm.methods.isOwnerOrAdminCross(ownerCrossSub).call()).to.be.false;433 expect(await collectionEvm.methods.isOwnerOrAdminCross(ownerCrossSub).call()).to.be.false;
434434
449 const owner = await helper.eth.createAccountWithBalance(donor);449 const owner = await helper.eth.createAccountWithBalance(donor);
450 const [newOwner] = await helper.arrange.createAccounts([10n], donor);450 const [newOwner] = await helper.arrange.createAccounts([10n], donor);
451 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');451 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
452 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);452 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
453453
454 const cost = await recordEthFee(helper, owner, () => collectionEvm.methods.setOwnerSubstrate(newOwner.addressRaw).send());454 const cost = await recordEthFee(helper, owner, () => collectionEvm.methods.setOwnerSubstrate(newOwner.addressRaw).send());
455 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));455 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
462 const [newOwner] = await helper.arrange.createAccounts([10n], donor);462 const [newOwner] = await helper.arrange.createAccounts([10n], donor);
463 const newOwnerCross = helper.ethCrossAccount.fromKeyringPair(newOwner);463 const newOwnerCross = helper.ethCrossAccount.fromKeyringPair(newOwner);
464 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');464 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
465 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);465 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
466466
467 await expect(collectionEvm.methods.changeCollectionOwnerCross(newOwnerCross).send({from: otherReceiver})).to.be.rejected;467 await expect(collectionEvm.methods.changeCollectionOwnerCross(newOwnerCross).send({from: otherReceiver})).to.be.rejected;
468 expect(await collectionEvm.methods.isOwnerOrAdminCross(newOwnerCross).call()).to.be.false;468 expect(await collectionEvm.methods.isOwnerOrAdminCross(newOwnerCross).call()).to.be.false;
modifiedtests/src/eth/collectionHelperAddress.test.tsdiffbeforeafterboth
33 const owner = await helper.eth.createAccountWithBalance(donor);33 const owner = await helper.eth.createAccountWithBalance(donor);
34 34
35 const {collectionAddress: nftCollectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');35 const {collectionAddress: nftCollectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');
36 const nftCollection = helper.ethNativeContract.collection(nftCollectionAddress, 'nft', owner);36 const nftCollection = await helper.ethNativeContract.collection(nftCollectionAddress, 'nft', owner);
37 37
38 expect((await nftCollection.methods.collectionHelperAddress().call())38 expect((await nftCollection.methods.collectionHelperAddress().call())
39 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);39 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);
4444
45 const {collectionAddress: rftCollectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');45 const {collectionAddress: rftCollectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');
4646
47 const rftCollection = helper.ethNativeContract.collection(rftCollectionAddress, 'rft', owner);47 const rftCollection = await helper.ethNativeContract.collection(rftCollectionAddress, 'rft', owner);
48 expect((await rftCollection.methods.collectionHelperAddress().call())48 expect((await rftCollection.methods.collectionHelperAddress().call())
49 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);49 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);
50 });50 });
53 const owner = await helper.eth.createAccountWithBalance(donor);53 const owner = await helper.eth.createAccountWithBalance(donor);
5454
55 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', 18, 'absolutely anything', 'ROC');55 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', 18, 'absolutely anything', 'ROC');
56 const collection = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);56 const collection = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
57 57
58 expect((await collection.methods.collectionHelperAddress().call())58 expect((await collection.methods.collectionHelperAddress().call())
59 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);59 .toString().toLowerCase()).to.be.equal(EVM_COLLECTION_HELPERS_ADDRESS);
63 const owner = await helper.eth.createAccountWithBalance(donor);63 const owner = await helper.eth.createAccountWithBalance(donor);
64 const collectionId = 7;64 const collectionId = 7;
65 const collectionAddress = helper.ethAddress.fromCollectionId(collectionId);65 const collectionAddress = helper.ethAddress.fromCollectionId(collectionId);
66 const helperContract = helper.ethNativeContract.collectionHelpers(owner);66 const helperContract = await helper.ethNativeContract.collectionHelpers(owner);
67 67
68 expect(await helperContract.methods.collectionAddress(collectionId).call()).to.be.equal(collectionAddress);68 expect(await helperContract.methods.collectionAddress(collectionId).call()).to.be.equal(collectionAddress);
69 expect(parseInt(await helperContract.methods.collectionId(collectionAddress).call())).to.be.equal(collectionId);69 expect(parseInt(await helperContract.methods.collectionId(collectionAddress).call())).to.be.equal(collectionId);
modifiedtests/src/eth/collectionLimits.test.tsdiffbeforeafterboth
45 transfersEnabled: false,45 transfersEnabled: false,
46 };46 };
47 47
48 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);48 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);
49 await collectionEvm.methods.setCollectionLimit(CollectionLimits.AccountTokenOwnership, true, limits.accountTokenOwnershipLimit).send();49 await collectionEvm.methods.setCollectionLimit(CollectionLimits.AccountTokenOwnership, true, limits.accountTokenOwnershipLimit).send();
50 await collectionEvm.methods.setCollectionLimit(CollectionLimits.SponsoredDataSize, true, limits.sponsoredDataSize).send();50 await collectionEvm.methods.setCollectionLimit(CollectionLimits.SponsoredDataSize, true, limits.sponsoredDataSize).send();
51 await collectionEvm.methods.setCollectionLimit(CollectionLimits.SponsoredDataRateLimit, true, limits.sponsoredDataRateLimit).send();51 await collectionEvm.methods.setCollectionLimit(CollectionLimits.SponsoredDataRateLimit, true, limits.sponsoredDataRateLimit).send();
9797
98 const owner = await helper.eth.createAccountWithBalance(donor);98 const owner = await helper.eth.createAccountWithBalance(donor);
99 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, 'Limits', 'absolutely anything', 'ISNI', 18);99 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, 'Limits', 'absolutely anything', 'ISNI', 18);
100 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);100 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);
101101
102 // Cannot set non-existing limit102 // Cannot set non-existing limit
103 await expect(collectionEvm.methods103 await expect(collectionEvm.methods
131 const nonOwner = await helper.eth.createAccountWithBalance(donor);131 const nonOwner = await helper.eth.createAccountWithBalance(donor);
132 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, 'Limits', 'absolutely anything', 'FLO', 18);132 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, 'Limits', 'absolutely anything', 'FLO', 18);
133133
134 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);134 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, testCase.case, owner);
135 await expect(collectionEvm.methods135 await expect(collectionEvm.methods
136 .setCollectionLimit(CollectionLimits.AccountTokenOwnership, true, 1000)136 .setCollectionLimit(CollectionLimits.AccountTokenOwnership, true, 1000)
137 .call({from: nonOwner}))137 .call({from: nonOwner}))
modifiedtests/src/eth/collectionProperties.test.tsdiffbeforeafterboth
43 await collection.addAdmin(alice, {Ethereum: caller});43 await collection.addAdmin(alice, {Ethereum: caller});
44 44
45 const address = helper.ethAddress.fromCollectionId(collection.collectionId);45 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
46 const collectionEvm = helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'setCollectionProperty');46 const collectionEvm = await helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'setCollectionProperty');
4747
48 // collectionProperties returns an empty array if no properties: 48 // collectionProperties returns an empty array if no properties:
49 expect(await collectionEvm.methods.collectionProperties([]).call()).to.be.like([]);49 expect(await collectionEvm.methods.collectionProperties([]).call()).to.be.like([]);
50 expect(await collectionEvm.methods.collectionProperties(['NonExistingKey']).call()).to.be.like([]);50 expect(await collectionEvm.methods.collectionProperties(['NonExistingKey']).call()).to.be.like([]);
5151
54 const raw = (await collection.getData())?.raw;54 const raw = (await collection.getData())?.raw;
55 expect(raw.properties).to.deep.equal(testCase.expectedProps);55 expect(raw.properties).to.deep.equal(testCase.expectedProps);
5656
57 // collectionProperties returns properties: 57 // collectionProperties returns properties:
58 expect(await collectionEvm.methods.collectionProperties([]).call()).to.be.like(testCase.expectedProps.map(prop => helper.ethProperty.property(prop.key, prop.value)));58 expect(await collectionEvm.methods.collectionProperties([]).call()).to.be.like(testCase.expectedProps.map(prop => helper.ethProperty.property(prop.key, prop.value)));
59 }));59 }));
6060
64 await collection.addAdmin(alice, {Ethereum: caller});64 await collection.addAdmin(alice, {Ethereum: caller});
6565
66 const address = helper.ethAddress.fromCollectionId(collection.collectionId);66 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
67 const contract = helper.ethNativeContract.collection(address, 'nft', caller);67 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
6868
69 await expect(contract.methods.setCollectionProperties([{key: '', value: Buffer.from('val1')}]).send({from: caller})).to.be.rejected;69 await expect(contract.methods.setCollectionProperties([{key: '', value: Buffer.from('val1')}]).send({from: caller})).to.be.rejected;
70 await expect(contract.methods.setCollectionProperties([{key: 'déjà vu', value: Buffer.from('hmm...')}]).send({from: caller})).to.be.rejected;70 await expect(contract.methods.setCollectionProperties([{key: 'déjà vu', value: Buffer.from('hmm...')}]).send({from: caller})).to.be.rejected;
93 await collection.addAdmin(alice, {Ethereum: caller});93 await collection.addAdmin(alice, {Ethereum: caller});
94 94
95 const address = helper.ethAddress.fromCollectionId(collection.collectionId);95 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
96 const contract = helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'deleteCollectionProperty');96 const contract = await helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'deleteCollectionProperty');
97 97
98 await contract.methods[testCase.method](...testCase.methodParams).send({from: caller});98 await contract.methods[testCase.method](...testCase.methodParams).send({from: caller});
99 99
116 const collection = await helper.nft.mintCollection(alice, {name: 'name', description: 'test', tokenPrefix: 'test', properties});116 const collection = await helper.nft.mintCollection(alice, {name: 'name', description: 'test', tokenPrefix: 'test', properties});
117117
118 const address = helper.ethAddress.fromCollectionId(collection.collectionId);118 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
119 const collectionEvm = helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'deleteCollectionProperty');119 const collectionEvm = await helper.ethNativeContract.collection(address, 'nft', caller, testCase.method === 'deleteCollectionProperty');
120120
121 await expect(collectionEvm.methods[testCase.method](...testCase.methodParams).send({from: caller})).to.be.rejected;121 await expect(collectionEvm.methods[testCase.method](...testCase.methodParams).send({from: caller})).to.be.rejected;
122 expect(await collection.getProperties()).to.deep.eq(properties);122 expect(await collection.getProperties()).to.deep.eq(properties);
127 const collection = await helper.nft.mintCollection(alice, {name: 'name', description: 'test', tokenPrefix: 'test', properties: [{key: 'testKey', value: 'testValue'}]});127 const collection = await helper.nft.mintCollection(alice, {name: 'name', description: 'test', tokenPrefix: 'test', properties: [{key: 'testKey', value: 'testValue'}]});
128128
129 const address = helper.ethAddress.fromCollectionId(collection.collectionId);129 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
130 const contract = helper.ethNativeContract.collection(address, 'nft', caller);130 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
131131
132 const value = await contract.methods.collectionProperty('testKey').call();132 const value = await contract.methods.collectionProperty('testKey').call();
133 expect(value).to.equal(helper.getWeb3().utils.toHex('testValue'));133 expect(value).to.equal(helper.getWeb3().utils.toHex('testValue'));
155 const SUFFIX = 'suffix1';155 const SUFFIX = 'suffix1';
156 const URI = 'uri1';156 const URI = 'uri1';
157 157
158 const collectionHelpers = helper.ethNativeContract.collectionHelpers(caller);158 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(caller);
159 const creatorMethod = testCase.case === 'rft' ? 'createRFTCollection' : 'createNFTCollection';159 const creatorMethod = testCase.case === 'rft' ? 'createRFTCollection' : 'createNFTCollection';
160 160
161 const {collectionId, collectionAddress} = await helper.eth[creatorMethod](caller, 'n', 'd', 'p');161 const {collectionId, collectionAddress} = await helper.eth[creatorMethod](caller, 'n', 'd', 'p');
162 const bruhCross = helper.ethCrossAccount.fromAddress(bruh);162 const bruhCross = helper.ethCrossAccount.fromAddress(bruh);
163 163
164 const contract = helper.ethNativeContract.collectionById(collectionId, testCase.case, caller);164 const contract = await helper.ethNativeContract.collectionById(collectionId, testCase.case, caller);
165 await contract.methods.addCollectionAdminCross(bruhCross).send(); // to check that admin will work too165 await contract.methods.addCollectionAdminCross(bruhCross).send(); // to check that admin will work too
166 166
167 const collection1 = helper.nft.getCollectionObject(collectionId);167 const collection1 = helper.nft.getCollectionObject(collectionId);
modifiedtests/src/eth/collectionSponsoring.test.tsdiffbeforeafterboth
41 expect(await helper.balance.getEthereum(minter)).to.equal(0n);41 expect(await helper.balance.getEthereum(minter)).to.equal(0n);
4242
43 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);43 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
44 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', minter);44 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', minter);
4545
46 await collection.addToAllowList(alice, {Ethereum: minter});46 await collection.addToAllowList(alice, {Ethereum: minter});
4747
88 ].map(testCase => 88 ].map(testCase =>
89 itEth(`[${testCase}] can remove collection sponsor`, async ({helper}) => {89 itEth(`[${testCase}] can remove collection sponsor`, async ({helper}) => {
90 const owner = await helper.eth.createAccountWithBalance(donor);90 const owner = await helper.eth.createAccountWithBalance(donor);
91 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);91 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
92 92
93 let result = await collectionHelpers.methods.createNFTCollection('Sponsor collection', '1', '1').send({value: Number(2n * nominal)});93 let result = await collectionHelpers.methods.createNFTCollection('Sponsor collection', '1', '1').send({value: Number(2n * nominal)});
94 const collectionIdAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);94 const collectionIdAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);
95 const sponsor = await helper.eth.createAccountWithBalance(donor);95 const sponsor = await helper.eth.createAccountWithBalance(donor);
96 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);96 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
97 const collectionEvm = helper.ethNativeContract.collection(collectionIdAddress, 'nft', owner, testCase === 'setCollectionSponsor');97 const collectionEvm = await helper.ethNativeContract.collection(collectionIdAddress, 'nft', owner, testCase === 'setCollectionSponsor');
98 98
99 expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;99 expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;
100 result = await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send({from: owner});100 result = await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send({from: owner});
121 const {collectionId, collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Sponsor collection', '1', '1', '');121 const {collectionId, collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Sponsor collection', '1', '1', '');
122 122
123 const collectionSub = helper.nft.getCollectionObject(collectionId);123 const collectionSub = helper.nft.getCollectionObject(collectionId);
124 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, testCase === 'setCollectionSponsor');124 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, testCase === 'setCollectionSponsor');
125 125
126 // Set collection sponsor:126 // Set collection sponsor:
127 await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsorEth : sponsorCrossEth).send({from: owner});127 await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsorEth : sponsorCrossEth).send({from: owner});
252 const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner,'Sponsor collection', '1', '1', '');252 const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner,'Sponsor collection', '1', '1', '');
253253
254 const collectionSub = helper.nft.getCollectionObject(collectionId);254 const collectionSub = helper.nft.getCollectionObject(collectionId);
255 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, testCase === 'setCollectionSponsor');255 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, testCase === 'setCollectionSponsor');
256 // Set collection sponsor:256 // Set collection sponsor:
257 await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send();257 await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send();
258 let collectionData = (await collectionSub.getData())!;258 let collectionData = (await collectionSub.getData())!;
303303
304 const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner,'Sponsor collection', '1', '1', '');304 const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner,'Sponsor collection', '1', '1', '');
305 const collectionSub = helper.nft.getCollectionObject(collectionId);305 const collectionSub = helper.nft.getCollectionObject(collectionId);
306 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);306 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
307307
308 // Set and confirm sponsor:308 // Set and confirm sponsor:
309 await collectionEvm.methods.setCollectionSponsorCross(sponsorCrossEth).send({from: owner});309 await collectionEvm.methods.setCollectionSponsorCross(sponsorCrossEth).send({from: owner});
modifiedtests/src/eth/contractSponsoring.test.tsdiffbeforeafterboth
34 itEth('Self sponsoring can be set by the address that deployed the contract', async ({helper}) => {34 itEth('Self sponsoring can be set by the address that deployed the contract', async ({helper}) => {
35 const owner = await helper.eth.createAccountWithBalance(donor);35 const owner = await helper.eth.createAccountWithBalance(donor);
36 const flipper = await helper.eth.deployFlipper(owner);36 const flipper = await helper.eth.deployFlipper(owner);
37 const helpers = helper.ethNativeContract.contractHelpers(owner);37 const helpers = await helper.ethNativeContract.contractHelpers(owner);
3838
39 // 1. owner can set selfSponsoring:39 // 1. owner can set selfSponsoring:
40 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;40 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
71 itEth('Self sponsoring cannot be set by the address that did not deployed the contract', async ({helper}) => {71 itEth('Self sponsoring cannot be set by the address that did not deployed the contract', async ({helper}) => {
72 const owner = await helper.eth.createAccountWithBalance(donor);72 const owner = await helper.eth.createAccountWithBalance(donor);
73 const notOwner = await helper.eth.createAccountWithBalance(donor);73 const notOwner = await helper.eth.createAccountWithBalance(donor);
74 const helpers = helper.ethNativeContract.contractHelpers(owner);74 const helpers = await helper.ethNativeContract.contractHelpers(owner);
75 const flipper = await helper.eth.deployFlipper(owner);75 const flipper = await helper.eth.deployFlipper(owner);
7676
77 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;77 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
8181
82 itEth('Sponsoring can be set by the address that has deployed the contract', async ({helper}) => {82 itEth('Sponsoring can be set by the address that has deployed the contract', async ({helper}) => {
83 const owner = await helper.eth.createAccountWithBalance(donor);83 const owner = await helper.eth.createAccountWithBalance(donor);
84 const helpers = helper.ethNativeContract.contractHelpers(owner);84 const helpers = await helper.ethNativeContract.contractHelpers(owner);
85 const flipper = await helper.eth.deployFlipper(owner);85 const flipper = await helper.eth.deployFlipper(owner);
8686
87 expect(await helpers.methods.sponsoringEnabled(flipper.options.address).call()).to.be.false;87 expect(await helpers.methods.sponsoringEnabled(flipper.options.address).call()).to.be.false;
92 itEth('Sponsoring cannot be set by the address that did not deployed the contract', async ({helper}) => {92 itEth('Sponsoring cannot be set by the address that did not deployed the contract', async ({helper}) => {
93 const owner = await helper.eth.createAccountWithBalance(donor);93 const owner = await helper.eth.createAccountWithBalance(donor);
94 const notOwner = await helper.eth.createAccountWithBalance(donor);94 const notOwner = await helper.eth.createAccountWithBalance(donor);
95 const helpers = helper.ethNativeContract.contractHelpers(owner);95 const helpers = await helper.ethNativeContract.contractHelpers(owner);
96 const flipper = await helper.eth.deployFlipper(owner);96 const flipper = await helper.eth.deployFlipper(owner);
9797
98 expect(await helpers.methods.sponsoringEnabled(flipper.options.address).call()).to.be.false;98 expect(await helpers.methods.sponsoringEnabled(flipper.options.address).call()).to.be.false;
103 itEth('Sponsor can be set by the address that deployed the contract', async ({helper}) => {103 itEth('Sponsor can be set by the address that deployed the contract', async ({helper}) => {
104 const owner = await helper.eth.createAccountWithBalance(donor);104 const owner = await helper.eth.createAccountWithBalance(donor);
105 const sponsor = await helper.eth.createAccountWithBalance(donor);105 const sponsor = await helper.eth.createAccountWithBalance(donor);
106 const helpers = helper.ethNativeContract.contractHelpers(owner);106 const helpers = await helper.ethNativeContract.contractHelpers(owner);
107 const flipper = await helper.eth.deployFlipper(owner);107 const flipper = await helper.eth.deployFlipper(owner);
108108
109 // 1. owner can set a sponsor:109 // 1. owner can set a sponsor:
129 const owner = await helper.eth.createAccountWithBalance(donor);129 const owner = await helper.eth.createAccountWithBalance(donor);
130 const sponsor = await helper.eth.createAccountWithBalance(donor);130 const sponsor = await helper.eth.createAccountWithBalance(donor);
131 const notOwner = await helper.eth.createAccountWithBalance(donor);131 const notOwner = await helper.eth.createAccountWithBalance(donor);
132 const helpers = helper.ethNativeContract.contractHelpers(owner);132 const helpers = await helper.ethNativeContract.contractHelpers(owner);
133 const flipper = await helper.eth.deployFlipper(owner);133 const flipper = await helper.eth.deployFlipper(owner);
134134
135 expect(await helpers.methods.hasPendingSponsor(flipper.options.address).call()).to.be.false;135 expect(await helpers.methods.hasPendingSponsor(flipper.options.address).call()).to.be.false;
140 itEth('Sponsorship can be confirmed by the address that pending as sponsor', async ({helper}) => {140 itEth('Sponsorship can be confirmed by the address that pending as sponsor', async ({helper}) => {
141 const owner = await helper.eth.createAccountWithBalance(donor);141 const owner = await helper.eth.createAccountWithBalance(donor);
142 const sponsor = await helper.eth.createAccountWithBalance(donor);142 const sponsor = await helper.eth.createAccountWithBalance(donor);
143 const helpers = helper.ethNativeContract.contractHelpers(owner);143 const helpers = await helper.ethNativeContract.contractHelpers(owner);
144 const flipper = await helper.eth.deployFlipper(owner);144 const flipper = await helper.eth.deployFlipper(owner);
145145
146 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;146 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
173 const owner = await helper.eth.createAccountWithBalance(donor);173 const owner = await helper.eth.createAccountWithBalance(donor);
174 const sponsor = await helper.eth.createAccountWithBalance(donor);174 const sponsor = await helper.eth.createAccountWithBalance(donor);
175 const notSponsor = await helper.eth.createAccountWithBalance(donor);175 const notSponsor = await helper.eth.createAccountWithBalance(donor);
176 const helpers = helper.ethNativeContract.contractHelpers(owner);176 const helpers = await helper.ethNativeContract.contractHelpers(owner);
177 const flipper = await helper.eth.deployFlipper(owner);177 const flipper = await helper.eth.deployFlipper(owner);
178178
179 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;179 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
185 itEth('Sponsorship can not be confirmed by the address that not set as sponsor', async ({helper}) => {185 itEth('Sponsorship can not be confirmed by the address that not set as sponsor', async ({helper}) => {
186 const owner = await helper.eth.createAccountWithBalance(donor);186 const owner = await helper.eth.createAccountWithBalance(donor);
187 const notSponsor = await helper.eth.createAccountWithBalance(donor);187 const notSponsor = await helper.eth.createAccountWithBalance(donor);
188 const helpers = helper.ethNativeContract.contractHelpers(owner);188 const helpers = await helper.ethNativeContract.contractHelpers(owner);
189 const flipper = await helper.eth.deployFlipper(owner);189 const flipper = await helper.eth.deployFlipper(owner);
190190
191 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;191 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
196 itEth('Sponsor can be removed by the address that deployed the contract', async ({helper}) => {196 itEth('Sponsor can be removed by the address that deployed the contract', async ({helper}) => {
197 const owner = await helper.eth.createAccountWithBalance(donor);197 const owner = await helper.eth.createAccountWithBalance(donor);
198 const sponsor = await helper.eth.createAccountWithBalance(donor);198 const sponsor = await helper.eth.createAccountWithBalance(donor);
199 const helpers = helper.ethNativeContract.contractHelpers(owner);199 const helpers = await helper.ethNativeContract.contractHelpers(owner);
200 const flipper = await helper.eth.deployFlipper(owner);200 const flipper = await helper.eth.deployFlipper(owner);
201201
202 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;202 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
229 const owner = await helper.eth.createAccountWithBalance(donor);229 const owner = await helper.eth.createAccountWithBalance(donor);
230 const notOwner = await helper.eth.createAccountWithBalance(donor);230 const notOwner = await helper.eth.createAccountWithBalance(donor);
231 const sponsor = await helper.eth.createAccountWithBalance(donor);231 const sponsor = await helper.eth.createAccountWithBalance(donor);
232 const helpers = helper.ethNativeContract.contractHelpers(owner);232 const helpers = await helper.ethNativeContract.contractHelpers(owner);
233 const flipper = await helper.eth.deployFlipper(owner);233 const flipper = await helper.eth.deployFlipper(owner);
234234
235 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;235 expect(await helpers.methods.hasSponsor(flipper.options.address).call()).to.be.false;
246 const owner = await helper.eth.createAccountWithBalance(donor);246 const owner = await helper.eth.createAccountWithBalance(donor);
247 const sponsor = await helper.eth.createAccountWithBalance(donor);247 const sponsor = await helper.eth.createAccountWithBalance(donor);
248 const caller = await helper.eth.createAccountWithBalance(donor);248 const caller = await helper.eth.createAccountWithBalance(donor);
249 const helpers = helper.ethNativeContract.contractHelpers(owner);249 const helpers = await helper.ethNativeContract.contractHelpers(owner);
250 const flipper = await helper.eth.deployFlipper(owner);250 const flipper = await helper.eth.deployFlipper(owner);
251251
252 await helpers.methods.setSponsor(flipper.options.address, sponsor).send();252 await helpers.methods.setSponsor(flipper.options.address, sponsor).send();
271 itEth('In generous mode, non-allowlisted user transaction will be self sponsored', async ({helper}) => {271 itEth('In generous mode, non-allowlisted user transaction will be self sponsored', async ({helper}) => {
272 const owner = await helper.eth.createAccountWithBalance(donor);272 const owner = await helper.eth.createAccountWithBalance(donor);
273 const caller = await helper.eth.createAccountWithBalance(donor);273 const caller = await helper.eth.createAccountWithBalance(donor);
274 const helpers = helper.ethNativeContract.contractHelpers(owner);274 const helpers = await helper.ethNativeContract.contractHelpers(owner);
275 const flipper = await helper.eth.deployFlipper(owner);275 const flipper = await helper.eth.deployFlipper(owner);
276276
277 await helpers.methods.selfSponsoredEnable(flipper.options.address).send();277 await helpers.methods.selfSponsoredEnable(flipper.options.address).send();
303 const sponsor = await helper.eth.createAccountWithBalance(donor);303 const sponsor = await helper.eth.createAccountWithBalance(donor);
304 const caller = helper.eth.createAccount();304 const caller = helper.eth.createAccount();
305 await helper.eth.transferBalanceFromSubstrate(donor, caller, testCase.balance);305 await helper.eth.transferBalanceFromSubstrate(donor, caller, testCase.balance);
306 const helpers = helper.ethNativeContract.contractHelpers(owner);306 const helpers = await helper.ethNativeContract.contractHelpers(owner);
307 const flipper = await helper.eth.deployFlipper(owner);307 const flipper = await helper.eth.deployFlipper(owner);
308 308
309 await helpers.methods.toggleAllowlist(flipper.options.address, true).send({from: owner});309 await helpers.methods.toggleAllowlist(flipper.options.address, true).send({from: owner});
333 itEth('Non-allow-listed address can call a contract. Sponsor balance should not decrease', async ({helper}) => {333 itEth('Non-allow-listed address can call a contract. Sponsor balance should not decrease', async ({helper}) => {
334 const owner = await helper.eth.createAccountWithBalance(donor);334 const owner = await helper.eth.createAccountWithBalance(donor);
335 const caller = helper.eth.createAccount();335 const caller = helper.eth.createAccount();
336 const contractHelpers = helper.ethNativeContract.contractHelpers(owner);336 const contractHelpers = await helper.ethNativeContract.contractHelpers(owner);
337337
338 // Deploy flipper and send some tokens:338 // Deploy flipper and send some tokens:
339 const flipper = await helper.eth.deployFlipper(owner);339 const flipper = await helper.eth.deployFlipper(owner);
348 await contractHelpers.methods.setSponsoringMode(flipper.options.address, SponsoringMode.Allowlisted).send({from: owner});348 await contractHelpers.methods.setSponsoringMode(flipper.options.address, SponsoringMode.Allowlisted).send({from: owner});
349 await contractHelpers.methods.setSponsoringRateLimit(flipper.options.address, 0).send({from: owner});349 await contractHelpers.methods.setSponsoringRateLimit(flipper.options.address, 0).send({from: owner});
350350
351 // 1. Caller has no UNQ and is not in allow list. So he cannot flip: 351 // 1. Caller has no UNQ and is not in allow list. So he cannot flip:
352 await expect(flipper.methods.flip().send({from: caller})).to.be.rejectedWith(/Returned error: insufficient funds for gas \* price \+ value/);352 await expect(flipper.methods.flip().send({from: caller})).to.be.rejectedWith(/Returned error: insufficient funds for gas \* price \+ value/);
353 expect(await flipper.methods.getValue().call()).to.be.false;353 expect(await flipper.methods.getValue().call()).to.be.false;
354354
361 const owner = await helper.eth.createAccountWithBalance(donor);361 const owner = await helper.eth.createAccountWithBalance(donor);
362 const sponsor = await helper.eth.createAccountWithBalance(donor);362 const sponsor = await helper.eth.createAccountWithBalance(donor);
363 const caller = await helper.eth.createAccountWithBalance(donor);363 const caller = await helper.eth.createAccountWithBalance(donor);
364 const helpers = helper.ethNativeContract.contractHelpers(owner);364 const helpers = await helper.ethNativeContract.contractHelpers(owner);
365 const flipper = await helper.eth.deployFlipper(owner);365 const flipper = await helper.eth.deployFlipper(owner);
366 366
367 const originalCallerBalance = await helper.balance.getEthereum(caller);367 const originalCallerBalance = await helper.balance.getEthereum(caller);
393 // TODO: Find a way to calculate default rate limit393 // TODO: Find a way to calculate default rate limit
394 itEth('Default rate limit equal 7200', async ({helper}) => {394 itEth('Default rate limit equal 7200', async ({helper}) => {
395 const owner = await helper.eth.createAccountWithBalance(donor);395 const owner = await helper.eth.createAccountWithBalance(donor);
396 const helpers = helper.ethNativeContract.contractHelpers(owner);396 const helpers = await helper.ethNativeContract.contractHelpers(owner);
397 const flipper = await helper.eth.deployFlipper(owner);397 const flipper = await helper.eth.deployFlipper(owner);
398398
399 expect(await helpers.methods.sponsoringRateLimit(flipper.options.address).call()).to.be.equal('7200');399 expect(await helpers.methods.sponsoringRateLimit(flipper.options.address).call()).to.be.equal('7200');
409 if (!testContract) {409 if (!testContract) {
410 testContract = await helper.ethContract.compile(410 testContract = await helper.ethContract.compile(
411 'TestContract',411 'TestContract',
412 `412 `
413 // SPDX-License-Identifier: MIT413 // SPDX-License-Identifier: MIT
414 pragma solidity ^0.8.0;414 pragma solidity ^0.8.0;
415 415
416 contract TestContract {416 contract TestContract {
417 event Result(bool);417 event Result(bool);
418418
419 function test(uint32 cycles) public {419 function test(uint32 cycles) public {
420 uint256 counter = 0;420 uint256 counter = 0;
421 while(true) {421 while(true) {
422 counter ++;422 counter ++;
423 if (counter > cycles){423 if (counter > cycles){
424 break;424 break;
425 }425 }
426 }426 }
427 emit Result(true);427 emit Result(true);
428 }428 }
429 }429 }
430 `,430 `,
431 );431 );
432 }432 }
433 return testContract;433 return testContract;
447447
448 itEth('Default fee limit', async ({helper}) => {448 itEth('Default fee limit', async ({helper}) => {
449 const owner = await helper.eth.createAccountWithBalance(donor);449 const owner = await helper.eth.createAccountWithBalance(donor);
450 const helpers = helper.ethNativeContract.contractHelpers(owner);450 const helpers = await helper.ethNativeContract.contractHelpers(owner);
451 const flipper = await helper.eth.deployFlipper(owner);451 const flipper = await helper.eth.deployFlipper(owner);
452452
453 expect(await helpers.methods.sponsoringFeeLimit(flipper.options.address).call()).to.be.equal('115792089237316195423570985008687907853269984665640564039457584007913129639935');453 expect(await helpers.methods.sponsoringFeeLimit(flipper.options.address).call()).to.be.equal('115792089237316195423570985008687907853269984665640564039457584007913129639935');
454 });454 });
455455
456 itEth('Set fee limit', async ({helper}) => {456 itEth('Set fee limit', async ({helper}) => {
457 const owner = await helper.eth.createAccountWithBalance(donor);457 const owner = await helper.eth.createAccountWithBalance(donor);
458 const helpers = helper.ethNativeContract.contractHelpers(owner);458 const helpers = await helper.ethNativeContract.contractHelpers(owner);
459 const flipper = await helper.eth.deployFlipper(owner);459 const flipper = await helper.eth.deployFlipper(owner);
460460
461 await helpers.methods.setSponsoringFeeLimit(flipper.options.address, 100).send();461 await helpers.methods.setSponsoringFeeLimit(flipper.options.address, 100).send();
465 itEth('Negative test - set fee limit by non-owner', async ({helper}) => {465 itEth('Negative test - set fee limit by non-owner', async ({helper}) => {
466 const owner = await helper.eth.createAccountWithBalance(donor);466 const owner = await helper.eth.createAccountWithBalance(donor);
467 const stranger = await helper.eth.createAccountWithBalance(donor);467 const stranger = await helper.eth.createAccountWithBalance(donor);
468 const helpers = helper.ethNativeContract.contractHelpers(owner);468 const helpers = await helper.ethNativeContract.contractHelpers(owner);
469 const flipper = await helper.eth.deployFlipper(owner);469 const flipper = await helper.eth.deployFlipper(owner);
470470
471 await expect(helpers.methods.setSponsoringFeeLimit(flipper.options.address, 100).send({from: stranger})).to.be.rejected;471 await expect(helpers.methods.setSponsoringFeeLimit(flipper.options.address, 100).send({from: stranger})).to.be.rejected;
475 const owner = await helper.eth.createAccountWithBalance(donor);475 const owner = await helper.eth.createAccountWithBalance(donor);
476 const sponsor = await helper.eth.createAccountWithBalance(donor);476 const sponsor = await helper.eth.createAccountWithBalance(donor);
477 const user = await helper.eth.createAccountWithBalance(donor);477 const user = await helper.eth.createAccountWithBalance(donor);
478 const helpers = helper.ethNativeContract.contractHelpers(owner);478 const helpers = await helper.ethNativeContract.contractHelpers(owner);
479479
480 const testContract = await deployTestContract(helper, owner);480 const testContract = await deployTestContract(helper, owner);
481 481
500 itEth('Negative test - check that evm.call transactions exceeding fee limit are not executed', async ({helper}) => {500 itEth('Negative test - check that evm.call transactions exceeding fee limit are not executed', async ({helper}) => {
501 const owner = await helper.eth.createAccountWithBalance(donor);501 const owner = await helper.eth.createAccountWithBalance(donor);
502 const sponsor = await helper.eth.createAccountWithBalance(donor);502 const sponsor = await helper.eth.createAccountWithBalance(donor);
503 const helpers = helper.ethNativeContract.contractHelpers(owner);503 const helpers = await helper.ethNativeContract.contractHelpers(owner);
504504
505 const testContract = await deployTestContract(helper, owner);505 const testContract = await deployTestContract(helper, owner);
506 506
modifiedtests/src/eth/createFTCollection.seqtest.tsdiffbeforeafterboth
5959
60 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;60 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;
61 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);61 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);
62 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);62 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
6363
64 expect(await collectionHelpers.methods64 expect(await collectionHelpers.methods
65 .isCollectionExist(expectedCollectionAddress)65 .isCollectionExist(expectedCollectionAddress)
modifiedtests/src/eth/createFTCollection.test.tsdiffbeforeafterboth
41 41
42 const {collectionId, collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', DECIMALS, description, 'ENVY');42 const {collectionId, collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', DECIMALS, description, 'ENVY');
4343
44 const collection = helper.ethNativeContract.collection(collectionAddress, 'ft', owner, true);44 const collection = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner, true);
45 await collection.methods.setCollectionSponsor(sponsor).send();45 await collection.methods.setCollectionSponsor(sponsor).send();
4646
47 let data = (await helper.rft.getData(collectionId))!;47 let data = (await helper.rft.getData(collectionId))!;
48 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));48 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));
4949
50 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');50 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
5151
52 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);52 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);
53 await sponsorCollection.methods.confirmCollectionSponsorship().send();53 await sponsorCollection.methods.confirmCollectionSponsorship().send();
5454
55 data = (await helper.rft.getData(collectionId))!;55 data = (await helper.rft.getData(collectionId))!;
63 const description = 'absolutely anything';63 const description = 'absolutely anything';
64 const {collectionId, collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', DECIMALS, description, 'ENVY');64 const {collectionId, collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Sponsor', DECIMALS, description, 'ENVY');
65 65
66 const collection = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);66 const collection = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
67 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);67 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
68 await collection.methods.setCollectionSponsorCross(sponsorCross).send();68 await collection.methods.setCollectionSponsorCross(sponsorCross).send();
6969
7272
73 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');73 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
7474
75 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);75 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);
76 await sponsorCollection.methods.confirmCollectionSponsorship().send();76 await sponsorCollection.methods.confirmCollectionSponsorship().send();
7777
78 data = (await helper.rft.getData(collectionId))!;78 data = (await helper.rft.getData(collectionId))!;
83 itEth('Collection address exist', async ({helper}) => {83 itEth('Collection address exist', async ({helper}) => {
84 const owner = await helper.eth.createAccountWithBalance(donor);84 const owner = await helper.eth.createAccountWithBalance(donor);
85 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';85 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';
86 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
87
86 expect(await helper.ethNativeContract.collectionHelpers(collectionAddressForNonexistentCollection)88 expect(await collectionHelpers
87 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())89 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())
88 .to.be.false;90 .to.be.false;
89 91
90 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Exister', DECIMALS, 'absolutely anything', 'WIWT');92 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Exister', DECIMALS, 'absolutely anything', 'WIWT');
91 expect(await helper.ethNativeContract.collectionHelpers(collectionAddress)93 expect(await collectionHelpers
92 .methods.isCollectionExist(collectionAddress).call())94 .methods.isCollectionExist(collectionAddress).call())
93 .to.be.true;95 .to.be.true;
94 });96 });
95 97
96 itEth('destroyCollection', async ({helper}) => {98 itEth('destroyCollection', async ({helper}) => {
97 const owner = await helper.eth.createAccountWithBalance(donor);99 const owner = await helper.eth.createAccountWithBalance(donor);
98 const {collectionAddress, collectionId} = await helper.eth.createFungibleCollection(owner, 'Exister', DECIMALS, 'absolutely anything', 'WIWT');100 const {collectionAddress, collectionId} = await helper.eth.createFungibleCollection(owner, 'Exister', DECIMALS, 'absolutely anything', 'WIWT');
99 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);101 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
100102
101 const result = await collectionHelper.methods103 const result = await collectionHelper.methods
102 .destroyCollection(collectionAddress)104 .destroyCollection(collectionAddress)
135137
136 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {138 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {
137 const owner = await helper.eth.createAccountWithBalance(donor);139 const owner = await helper.eth.createAccountWithBalance(donor);
138 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);140 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
139 {141 {
140 const MAX_NAME_LENGTH = 64;142 const MAX_NAME_LENGTH = 64;
141 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);143 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);
168 170
169 itEth('(!negative test!) cannot create collection if value !== 2', async ({helper}) => {171 itEth('(!negative test!) cannot create collection if value !== 2', async ({helper}) => {
170 const owner = await helper.eth.createAccountWithBalance(donor);172 const owner = await helper.eth.createAccountWithBalance(donor);
171 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);173 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
172 const expects = [0n, 1n, 30n].map(async value => {174 const expects = [0n, 1n, 30n].map(async value => {
173 await expect(collectionHelper.methods175 await expect(collectionHelper.methods
174 .createFTCollection('Peasantry', DECIMALS, 'absolutely anything', 'TWIW')176 .createFTCollection('Peasantry', DECIMALS, 'absolutely anything', 'TWIW')
182 const owner = await helper.eth.createAccountWithBalance(donor);184 const owner = await helper.eth.createAccountWithBalance(donor);
183 const peasant = helper.eth.createAccount();185 const peasant = helper.eth.createAccount();
184 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Transgressed', DECIMALS, 'absolutely anything', 'YVNE');186 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Transgressed', DECIMALS, 'absolutely anything', 'YVNE');
185 const peasantCollection = helper.ethNativeContract.collection(collectionAddress, 'ft', peasant, true);187 const peasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'ft', peasant, true);
186 const EXPECTED_ERROR = 'NoPermission';188 const EXPECTED_ERROR = 'NoPermission';
187 {189 {
188 const sponsor = await helper.eth.createAccountWithBalance(donor);190 const sponsor = await helper.eth.createAccountWithBalance(donor);
189 await expect(peasantCollection.methods191 await expect(peasantCollection.methods
190 .setCollectionSponsor(sponsor)192 .setCollectionSponsor(sponsor)
191 .call()).to.be.rejectedWith(EXPECTED_ERROR);193 .call()).to.be.rejectedWith(EXPECTED_ERROR);
192 194
193 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'ft', sponsor, true);195 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'ft', sponsor, true);
194 await expect(sponsorCollection.methods196 await expect(sponsorCollection.methods
195 .confirmCollectionSponsorship()197 .confirmCollectionSponsorship()
196 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');198 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
206 const owner = await helper.eth.createAccountWithBalance(donor);208 const owner = await helper.eth.createAccountWithBalance(donor);
207 const peasant = helper.eth.createAccount();209 const peasant = helper.eth.createAccount();
208 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Transgressed', DECIMALS, 'absolutely anything', 'YVNE');210 const {collectionAddress} = await helper.eth.createFungibleCollection(owner, 'Transgressed', DECIMALS, 'absolutely anything', 'YVNE');
209 const peasantCollection = helper.ethNativeContract.collection(collectionAddress, 'ft', peasant);211 const peasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'ft', peasant);
210 const EXPECTED_ERROR = 'NoPermission';212 const EXPECTED_ERROR = 'NoPermission';
211 {213 {
212 const sponsor = await helper.eth.createAccountWithBalance(donor);214 const sponsor = await helper.eth.createAccountWithBalance(donor);
215 .setCollectionSponsorCross(sponsorCross)217 .setCollectionSponsorCross(sponsorCross)
216 .call()).to.be.rejectedWith(EXPECTED_ERROR);218 .call()).to.be.rejectedWith(EXPECTED_ERROR);
217 219
218 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'ft', sponsor);220 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'ft', sponsor);
219 await expect(sponsorCollection.methods221 await expect(sponsorCollection.methods
220 .confirmCollectionSponsorship()222 .confirmCollectionSponsorship()
221 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');223 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
modifiedtests/src/eth/createNFTCollection.seqtest.tsdiffbeforeafterboth
7272
73 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;73 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;
74 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);74 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);
75 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);75 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
7676
77 expect(await collectionHelpers.methods77 expect(await collectionHelpers.methods
78 .isCollectionExist(expectedCollectionAddress)78 .isCollectionExist(expectedCollectionAddress)
modifiedtests/src/eth/createNFTCollection.test.tsdiffbeforeafterboth
38 const baseUri = 'BaseURI';38 const baseUri = 'BaseURI';
3939
40 const {collectionId, collectionAddress, events} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, name, description, prefix, baseUri);40 const {collectionId, collectionAddress, events} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, name, description, prefix, baseUri);
41 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');41 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
42 42
43 expect(events).to.be.deep.equal([43 expect(events).to.be.deep.equal([
44 {44 {
81 const ss58Format = helper.chain.getChainProperties().ss58Format;81 const ss58Format = helper.chain.getChainProperties().ss58Format;
82 const {collectionId, collectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');82 const {collectionId, collectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');
8383
84 const collection = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);84 const collection = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
85 await collection.methods.setCollectionSponsor(sponsor).send();85 await collection.methods.setCollectionSponsor(sponsor).send();
8686
87 let data = (await helper.nft.getData(collectionId))!;87 let data = (await helper.nft.getData(collectionId))!;
88 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));88 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));
8989
90 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');90 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
9191
92 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor, true);92 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor, true);
93 await sponsorCollection.methods.confirmCollectionSponsorship().send();93 await sponsorCollection.methods.confirmCollectionSponsorship().send();
9494
95 data = (await helper.nft.getData(collectionId))!;95 data = (await helper.nft.getData(collectionId))!;
103 const description = 'absolutely anything';103 const description = 'absolutely anything';
104 const {collectionId, collectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', description, 'ROC');104 const {collectionId, collectionAddress} = await helper.eth.createNFTCollection(owner, 'Sponsor', description, 'ROC');
105105
106 const collection = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);106 const collection = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
107 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);107 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
108 await collection.methods.setCollectionSponsorCross(sponsorCross).send();108 await collection.methods.setCollectionSponsorCross(sponsorCross).send();
109109
112112
113 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');113 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
114114
115 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);115 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);
116 await sponsorCollection.methods.confirmCollectionSponsorship().send();116 await sponsorCollection.methods.confirmCollectionSponsorship().send();
117117
118 data = (await helper.nft.getData(collectionId))!;118 data = (await helper.nft.getData(collectionId))!;
124 itEth('Collection address exist', async ({helper}) => {124 itEth('Collection address exist', async ({helper}) => {
125 const owner = await helper.eth.createAccountWithBalance(donor);125 const owner = await helper.eth.createAccountWithBalance(donor);
126 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';126 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';
127 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
128
127 expect(await helper.ethNativeContract.collectionHelpers(collectionAddressForNonexistentCollection)129 expect(await collectionHelpers
128 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())130 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())
129 .to.be.false;131 .to.be.false;
130132
131 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Exister', 'absolutely anything', 'EVC');133 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Exister', 'absolutely anything', 'EVC');
132 expect(await helper.ethNativeContract.collectionHelpers(collectionAddress)134 expect(await collectionHelpers
133 .methods.isCollectionExist(collectionAddress).call())135 .methods.isCollectionExist(collectionAddress).call())
134 .to.be.true;136 .to.be.true;
135 });137 });
148150
149 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {151 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {
150 const owner = await helper.eth.createAccountWithBalance(donor);152 const owner = await helper.eth.createAccountWithBalance(donor);
151 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);153 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
152 {154 {
153 const MAX_NAME_LENGTH = 64;155 const MAX_NAME_LENGTH = 64;
154 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);156 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);
182184
183 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {185 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {
184 const owner = await helper.eth.createAccountWithBalance(donor);186 const owner = await helper.eth.createAccountWithBalance(donor);
185 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);187 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
186 await expect(collectionHelper.methods188 await expect(collectionHelper.methods
187 .createNFTCollection('Peasantry', 'absolutely anything', 'CVE')189 .createNFTCollection('Peasantry', 'absolutely anything', 'CVE')
188 .call({value: Number(1n * nominal)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');190 .call({value: Number(1n * nominal)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
193 const owner = await helper.eth.createAccountWithBalance(donor);195 const owner = await helper.eth.createAccountWithBalance(donor);
194 const malfeasant = helper.eth.createAccount();196 const malfeasant = helper.eth.createAccount();
195 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Transgressed', 'absolutely anything', 'COR');197 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Transgressed', 'absolutely anything', 'COR');
196 const malfeasantCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', malfeasant, true);198 const malfeasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', malfeasant, true);
197 const EXPECTED_ERROR = 'NoPermission';199 const EXPECTED_ERROR = 'NoPermission';
198 {200 {
199 const sponsor = await helper.eth.createAccountWithBalance(donor);201 const sponsor = await helper.eth.createAccountWithBalance(donor);
200 await expect(malfeasantCollection.methods202 await expect(malfeasantCollection.methods
201 .setCollectionSponsor(sponsor)203 .setCollectionSponsor(sponsor)
202 .call()).to.be.rejectedWith(EXPECTED_ERROR);204 .call()).to.be.rejectedWith(EXPECTED_ERROR);
203205
204 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor, true);206 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor, true);
205 await expect(sponsorCollection.methods207 await expect(sponsorCollection.methods
206 .confirmCollectionSponsorship()208 .confirmCollectionSponsorship()
207 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');209 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
217 const owner = await helper.eth.createAccountWithBalance(donor);219 const owner = await helper.eth.createAccountWithBalance(donor);
218 const malfeasant = helper.eth.createAccount();220 const malfeasant = helper.eth.createAccount();
219 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Transgressed', 'absolutely anything', 'COR');221 const {collectionAddress} = await helper.eth.createNFTCollection(owner, 'Transgressed', 'absolutely anything', 'COR');
220 const malfeasantCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', malfeasant);222 const malfeasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', malfeasant);
221 const EXPECTED_ERROR = 'NoPermission';223 const EXPECTED_ERROR = 'NoPermission';
222 {224 {
223 const sponsor = await helper.eth.createAccountWithBalance(donor);225 const sponsor = await helper.eth.createAccountWithBalance(donor);
226 .setCollectionSponsorCross(sponsorCross)228 .setCollectionSponsorCross(sponsorCross)
227 .call()).to.be.rejectedWith(EXPECTED_ERROR);229 .call()).to.be.rejectedWith(EXPECTED_ERROR);
228230
229 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);231 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);
230 await expect(sponsorCollection.methods232 await expect(sponsorCollection.methods
231 .confirmCollectionSponsorship()233 .confirmCollectionSponsorship()
232 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');234 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
241 itEth('destroyCollection', async ({helper}) => {243 itEth('destroyCollection', async ({helper}) => {
242 const owner = await helper.eth.createAccountWithBalance(donor);244 const owner = await helper.eth.createAccountWithBalance(donor);
243 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'Limits', 'absolutely anything', 'OLF');245 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'Limits', 'absolutely anything', 'OLF');
244 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);246 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
245247
246248
247 const result = await collectionHelper.methods249 const result = await collectionHelper.methods
modifiedtests/src/eth/createRFTCollection.test.tsdiffbeforeafterboth
63 const baseUri = 'BaseURI';63 const baseUri = 'BaseURI';
6464
65 const {collectionId, collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, name, description, prefix, baseUri);65 const {collectionId, collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, name, description, prefix, baseUri);
66 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');66 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
6767
68 const collection = helper.rft.getCollectionObject(collectionId);68 const collection = helper.rft.getCollectionObject(collectionId);
69 const data = (await collection.getData())!;69 const data = (await collection.getData())!;
9494
95 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;95 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;
96 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);96 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);
97 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);97 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
9898
99 expect(await collectionHelpers.methods99 expect(await collectionHelpers.methods
100 .isCollectionExist(expectedCollectionAddress)100 .isCollectionExist(expectedCollectionAddress)
116 const ss58Format = helper.chain.getChainProperties().ss58Format;116 const ss58Format = helper.chain.getChainProperties().ss58Format;
117 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ENVY');117 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ENVY');
118118
119 const collection = helper.ethNativeContract.collection(collectionAddress, 'rft', owner, true);119 const collection = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner, true);
120 await collection.methods.setCollectionSponsor(sponsor).send();120 await collection.methods.setCollectionSponsor(sponsor).send();
121121
122 let data = (await helper.rft.getData(collectionId))!;122 let data = (await helper.rft.getData(collectionId))!;
123 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));123 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));
124124
125 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');125 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
126126
127 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);127 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);
128 await sponsorCollection.methods.confirmCollectionSponsorship().send();128 await sponsorCollection.methods.confirmCollectionSponsorship().send();
129129
130 data = (await helper.rft.getData(collectionId))!;130 data = (await helper.rft.getData(collectionId))!;
137 const ss58Format = helper.chain.getChainProperties().ss58Format;137 const ss58Format = helper.chain.getChainProperties().ss58Format;
138 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ENVY');138 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sponsor', 'absolutely anything', 'ENVY');
139139
140 const collection = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);140 const collection = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
141 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);141 const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
142 await collection.methods.setCollectionSponsorCross(sponsorCross).send();142 await collection.methods.setCollectionSponsorCross(sponsorCross).send();
143143
146146
147 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');147 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
148148
149 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);149 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);
150 await sponsorCollection.methods.confirmCollectionSponsorship().send();150 await sponsorCollection.methods.confirmCollectionSponsorship().send();
151151
152 data = (await helper.rft.getData(collectionId))!;152 data = (await helper.rft.getData(collectionId))!;
156 itEth('Collection address exist', async ({helper}) => {156 itEth('Collection address exist', async ({helper}) => {
157 const owner = await helper.eth.createAccountWithBalance(donor);157 const owner = await helper.eth.createAccountWithBalance(donor);
158 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';158 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';
159 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
160
159 expect(await helper.ethNativeContract.collectionHelpers(collectionAddressForNonexistentCollection)161 expect(await collectionHelpers
160 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())162 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())
161 .to.be.false;163 .to.be.false;
162 164
163 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Exister', 'absolutely anything', 'WIWT');165 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Exister', 'absolutely anything', 'WIWT');
164 expect(await helper.ethNativeContract.collectionHelpers(collectionAddress)166 expect(await collectionHelpers
165 .methods.isCollectionExist(collectionAddress).call())167 .methods.isCollectionExist(collectionAddress).call())
166 .to.be.true;168 .to.be.true;
167 });169 });
181183
182 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {184 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {
183 const owner = await helper.eth.createAccountWithBalance(donor);185 const owner = await helper.eth.createAccountWithBalance(donor);
184 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);186 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
185 {187 {
186 const MAX_NAME_LENGTH = 64;188 const MAX_NAME_LENGTH = 64;
187 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);189 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);
214 216
215 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {217 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {
216 const owner = await helper.eth.createAccountWithBalance(donor);218 const owner = await helper.eth.createAccountWithBalance(donor);
217 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);219 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
218 await expect(collectionHelper.methods220 await expect(collectionHelper.methods
219 .createRFTCollection('Peasantry', 'absolutely anything', 'TWIW')221 .createRFTCollection('Peasantry', 'absolutely anything', 'TWIW')
220 .call({value: Number(1n * nominal)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');222 .call({value: Number(1n * nominal)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
225 const owner = await helper.eth.createAccountWithBalance(donor);227 const owner = await helper.eth.createAccountWithBalance(donor);
226 const peasant = helper.eth.createAccount();228 const peasant = helper.eth.createAccount();
227 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Transgressed', 'absolutely anything', 'YVNE');229 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Transgressed', 'absolutely anything', 'YVNE');
228 const peasantCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', peasant, true);230 const peasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', peasant, true);
229 const EXPECTED_ERROR = 'NoPermission';231 const EXPECTED_ERROR = 'NoPermission';
230 {232 {
231 const sponsor = await helper.eth.createAccountWithBalance(donor);233 const sponsor = await helper.eth.createAccountWithBalance(donor);
232 await expect(peasantCollection.methods234 await expect(peasantCollection.methods
233 .setCollectionSponsor(sponsor)235 .setCollectionSponsor(sponsor)
234 .call()).to.be.rejectedWith(EXPECTED_ERROR);236 .call()).to.be.rejectedWith(EXPECTED_ERROR);
235 237
236 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);238 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor, true);
237 await expect(sponsorCollection.methods239 await expect(sponsorCollection.methods
238 .confirmCollectionSponsorship()240 .confirmCollectionSponsorship()
239 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');241 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
249 const owner = await helper.eth.createAccountWithBalance(donor);251 const owner = await helper.eth.createAccountWithBalance(donor);
250 const peasant = helper.eth.createAccount();252 const peasant = helper.eth.createAccount();
251 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Transgressed', 'absolutely anything', 'YVNE');253 const {collectionAddress} = await helper.eth.createRFTCollection(owner, 'Transgressed', 'absolutely anything', 'YVNE');
252 const peasantCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', peasant);254 const peasantCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', peasant);
253 const EXPECTED_ERROR = 'NoPermission';255 const EXPECTED_ERROR = 'NoPermission';
254 {256 {
255 const sponsor = await helper.eth.createAccountWithBalance(donor);257 const sponsor = await helper.eth.createAccountWithBalance(donor);
258 .setCollectionSponsorCross(sponsorCross)260 .setCollectionSponsorCross(sponsorCross)
259 .call()).to.be.rejectedWith(EXPECTED_ERROR);261 .call()).to.be.rejectedWith(EXPECTED_ERROR);
260 262
261 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);263 const sponsorCollection = await helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);
262 await expect(sponsorCollection.methods264 await expect(sponsorCollection.methods
263 .confirmCollectionSponsorship()265 .confirmCollectionSponsorship()
264 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');266 .call()).to.be.rejectedWith('ConfirmSponsorshipFail');
273 itEth('destroyCollection', async ({helper}) => {275 itEth('destroyCollection', async ({helper}) => {
274 const owner = await helper.eth.createAccountWithBalance(donor);276 const owner = await helper.eth.createAccountWithBalance(donor);
275 const {collectionAddress, collectionId} = await helper.eth.createRFTCollection(owner, 'Limits', 'absolutely anything', 'OLF');277 const {collectionAddress, collectionId} = await helper.eth.createRFTCollection(owner, 'Limits', 'absolutely anything', 'OLF');
276 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);278 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
277 279
278 await expect(collectionHelper.methods280 await expect(collectionHelper.methods
279 .destroyCollection(collectionAddress)281 .destroyCollection(collectionAddress)
modifiedtests/src/eth/crossTransfer.test.tsdiffbeforeafterboth
52 await collection.setLimits(alice, {ownerCanTransfer: true});52 await collection.setLimits(alice, {ownerCanTransfer: true});
5353
54 const address = helper.ethAddress.fromCollectionId(collection.collectionId);54 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
55 const contract = helper.ethNativeContract.collection(address, 'ft', aliceProxy);55 const contract = await helper.ethNativeContract.collection(address, 'ft', aliceProxy);
5656
57 await collection.mint(alice, 200n, {Ethereum: aliceProxy});57 await collection.mint(alice, 200n, {Ethereum: aliceProxy});
58 await contract.methods.transfer(bobProxy, 50).send({from: aliceProxy});58 await contract.methods.transfer(bobProxy, 50).send({from: aliceProxy});
93 await collection.setLimits(alice, {ownerCanTransfer: true});93 await collection.setLimits(alice, {ownerCanTransfer: true});
9494
95 const address = helper.ethAddress.fromCollectionId(collection.collectionId);95 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
96 const contract = helper.ethNativeContract.collection(address, 'nft', aliceProxy);96 const contract = await helper.ethNativeContract.collection(address, 'nft', aliceProxy);
9797
98 const token = await collection.mintToken(alice);98 const token = await collection.mintToken(alice);
99 await token.transfer(alice, {Ethereum: aliceProxy});99 await token.transfer(alice, {Ethereum: aliceProxy});
modifiedtests/src/eth/destroyCollection.test.tsdiffbeforeafterboth
39 39
40 const unexistedCollection = helper.ethAddress.fromCollectionId(1000000);40 const unexistedCollection = helper.ethAddress.fromCollectionId(1000000);
41 41
42 const collectionHelpers = helper.ethNativeContract.collectionHelpers(signer);42 const collectionHelpers = await helper.ethNativeContract.collectionHelpers(signer);
43 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, ...testCase.params as [string, string, string, number?]);43 const {collectionAddress} = await helper.eth.createCollection(testCase.case, owner, ...testCase.params as [string, string, string, number?]);
4444
45 // cannot burn collec45 // cannot burn collec
modifiedtests/src/eth/ethFeesAreCorrect.test.tsdiffbeforeafterboth
41 const {tokenId: tokenB} = await collection.mintToken(minter, {Ethereum: aliceEth});41 const {tokenId: tokenB} = await collection.mintToken(minter, {Ethereum: aliceEth});
4242
43 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);43 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
44 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);44 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
4545
46 const balanceBeforeWeb3Transfer = await helper.balance.getEthereum(owner);46 const balanceBeforeWeb3Transfer = await helper.balance.getEthereum(owner);
47 await contract.methods.transfer(receiver, tokenA).send({from: owner});47 await contract.methods.transfer(receiver, tokenA).send({from: owner});
modifiedtests/src/eth/events.test.tsdiffbeforeafterboth
53 clearEvents(ethEvents, subEvents);53 clearEvents(ethEvents, subEvents);
54 }54 }
55 {55 {
56 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);56 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
57 const result = await collectionHelper.methods.destroyCollection(collectionAddress).send({from:owner});57 const result = await collectionHelper.methods.destroyCollection(collectionAddress).send({from:owner});
58 await helper.wait.newBlocks(1);58 await helper.wait.newBlocks(1);
59 expect(result.events).to.containSubset({59 expect(result.events).to.containSubset({
71async function testCollectionPropertySetAndDeleted(helper: EthUniqueHelper, mode: TCollectionMode) {71async function testCollectionPropertySetAndDeleted(helper: EthUniqueHelper, mode: TCollectionMode) {
72 const owner = await helper.eth.createAccountWithBalance(donor);72 const owner = await helper.eth.createAccountWithBalance(donor);
73 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');73 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
74 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);74 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
75 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);75 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
76 76
77 const ethEvents: any = [];77 const ethEvents: any = [];
78 collectionHelper.events.allEvents((_: any, event: any) => {78 collectionHelper.events.allEvents((_: any, event: any) => {
112async function testPropertyPermissionSet(helper: EthUniqueHelper, mode: TCollectionMode) {112async function testPropertyPermissionSet(helper: EthUniqueHelper, mode: TCollectionMode) {
113 const owner = await helper.eth.createAccountWithBalance(donor);113 const owner = await helper.eth.createAccountWithBalance(donor);
114 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');114 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
115 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);115 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
116 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);116 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
117 const ethEvents: any = [];117 const ethEvents: any = [];
118 collectionHelper.events.allEvents((_: any, event: any) => {118 collectionHelper.events.allEvents((_: any, event: any) => {
119 ethEvents.push(event);119 ethEvents.push(event);
143 const owner = await helper.eth.createAccountWithBalance(donor);143 const owner = await helper.eth.createAccountWithBalance(donor);
144 const user = helper.ethCrossAccount.createAccount();144 const user = helper.ethCrossAccount.createAccount();
145 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');145 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
146 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);146 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
147 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);147 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
148 const ethEvents: any[] = [];148 const ethEvents: any[] = [];
149 collectionHelper.events.allEvents((_: any, event: any) => {149 collectionHelper.events.allEvents((_: any, event: any) => {
150 ethEvents.push(event);150 ethEvents.push(event);
185 const owner = await helper.eth.createAccountWithBalance(donor);185 const owner = await helper.eth.createAccountWithBalance(donor);
186 const user = helper.ethCrossAccount.createAccount();186 const user = helper.ethCrossAccount.createAccount();
187 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');187 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
188 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);188 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
189 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);189 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
190 const ethEvents: any = [];190 const ethEvents: any = [];
191 collectionHelper.events.allEvents((_: any, event: any) => {191 collectionHelper.events.allEvents((_: any, event: any) => {
192 ethEvents.push(event);192 ethEvents.push(event);
225async function testCollectionLimitSet(helper: EthUniqueHelper, mode: TCollectionMode) {225async function testCollectionLimitSet(helper: EthUniqueHelper, mode: TCollectionMode) {
226 const owner = await helper.eth.createAccountWithBalance(donor);226 const owner = await helper.eth.createAccountWithBalance(donor);
227 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');227 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
228 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);228 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
229 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);229 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
230 const ethEvents: any = [];230 const ethEvents: any = [];
231 collectionHelper.events.allEvents((_: any, event: any) => {231 collectionHelper.events.allEvents((_: any, event: any) => {
232 ethEvents.push(event);232 ethEvents.push(event);
252 const owner = await helper.eth.createAccountWithBalance(donor);252 const owner = await helper.eth.createAccountWithBalance(donor);
253 const newOwner = helper.ethCrossAccount.createAccount();253 const newOwner = helper.ethCrossAccount.createAccount();
254 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');254 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
255 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);255 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
256 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);256 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
257 const ethEvents: any = [];257 const ethEvents: any = [];
258 collectionHelper.events.allEvents((_: any, event: any) => {258 collectionHelper.events.allEvents((_: any, event: any) => {
259 ethEvents.push(event);259 ethEvents.push(event);
278async function testCollectionPermissionSet(helper: EthUniqueHelper, mode: TCollectionMode) {278async function testCollectionPermissionSet(helper: EthUniqueHelper, mode: TCollectionMode) {
279 const owner = await helper.eth.createAccountWithBalance(donor);279 const owner = await helper.eth.createAccountWithBalance(donor);
280 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');280 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
281 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);281 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
282 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);282 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
283 const ethEvents: any = [];283 const ethEvents: any = [];
284 collectionHelper.events.allEvents((_: any, event: any) => {284 collectionHelper.events.allEvents((_: any, event: any) => {
285 ethEvents.push(event);285 ethEvents.push(event);
319 const owner = await helper.eth.createAccountWithBalance(donor);319 const owner = await helper.eth.createAccountWithBalance(donor);
320 const sponsor = await helper.ethCrossAccount.createAccountWithBalance(donor);320 const sponsor = await helper.ethCrossAccount.createAccountWithBalance(donor);
321 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');321 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
322 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);322 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
323 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);323 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
324 const ethEvents: any = [];324 const ethEvents: any = [];
325 collectionHelper.events.allEvents((_: any, event: any) => {325 collectionHelper.events.allEvents((_: any, event: any) => {
326 ethEvents.push(event);326 ethEvents.push(event);
373async function testTokenPropertySetAndDeleted(helper: EthUniqueHelper, mode: TCollectionMode) {373async function testTokenPropertySetAndDeleted(helper: EthUniqueHelper, mode: TCollectionMode) {
374 const owner = await helper.eth.createAccountWithBalance(donor);374 const owner = await helper.eth.createAccountWithBalance(donor);
375 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');375 const {collectionAddress} = await helper.eth.createCollection(mode, owner, 'A', 'B', 'C');
376 const collection = helper.ethNativeContract.collection(collectionAddress, mode, owner);376 const collection = await helper.ethNativeContract.collection(collectionAddress, mode, owner);
377 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);377 const collectionHelper = await helper.ethNativeContract.collectionHelpers(owner);
378 const result = await collection.methods.mint(owner).send({from: owner});378 const result = await collection.methods.mint(owner).send({from: owner});
379 const tokenId = result.events.Transfer.returnValues.tokenId;379 const tokenId = result.events.Transfer.returnValues.tokenId;
380 await collection.methods.setTokenPropertyPermissions([380 await collection.methods.setTokenPropertyPermissions([
modifiedtests/src/eth/fractionalizer/fractionalizer.test.tsdiffbeforeafterboth
63 nftCollectionAddress: string, nftTokenId: number, rftTokenAddress: string63 nftCollectionAddress: string, nftTokenId: number, rftTokenAddress: string
64}> => {64}> => {
65 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');65 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
66 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);66 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
67 const mintResult = await nftContract.methods.mint(owner).send({from: owner});67 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
68 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;68 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
6969
93 const owner = await helper.eth.createAccountWithBalance(donor, 10n);93 const owner = await helper.eth.createAccountWithBalance(donor, 10n);
94 const fractionalizer = await deployContract(helper, owner);94 const fractionalizer = await deployContract(helper, owner);
95 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');95 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');
96 const rftContract = helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);96 const rftContract = await helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);
9797
98 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);98 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);
99 await rftContract.methods.addCollectionAdminCross(fractionalizerAddressCross).send({from: owner});99 await rftContract.methods.addCollectionAdminCross(fractionalizerAddressCross).send({from: owner});
148 const owner = await helper.eth.createAccountWithBalance(donor, 20n);148 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
149149
150 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');150 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
151 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);151 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
152 const mintResult = await nftContract.methods.mint(owner).send({from: owner});152 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
153 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;153 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
154154
168 });168 });
169 const rftTokenAddress = result.events.Fractionalized.returnValues._rftToken;169 const rftTokenAddress = result.events.Fractionalized.returnValues._rftToken;
170170
171 const rftTokenContract = helper.ethNativeContract.rftToken(rftTokenAddress);171 const rftTokenContract = await helper.ethNativeContract.rftToken(rftTokenAddress);
172 expect(await rftTokenContract.methods.balanceOf(owner).call()).to.equal('100');172 expect(await rftTokenContract.methods.balanceOf(owner).call()).to.equal('100');
173 });173 });
174174
181 const {collectionId, tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);181 const {collectionId, tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);
182 const refungibleAddress = helper.ethAddress.fromCollectionId(collectionId);182 const refungibleAddress = helper.ethAddress.fromCollectionId(collectionId);
183 expect(rftCollectionAddress).to.be.equal(refungibleAddress);183 expect(rftCollectionAddress).to.be.equal(refungibleAddress);
184 const refungibleTokenContract = helper.ethNativeContract.rftToken(rftTokenAddress, owner);184 const refungibleTokenContract = await helper.ethNativeContract.rftToken(rftTokenAddress, owner);
185 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 100).send({from: owner});185 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 100).send({from: owner});
186 const result = await fractionalizer.methods.rft2nft(refungibleAddress, tokenId).send({from: owner});186 const result = await fractionalizer.methods.rft2nft(refungibleAddress, tokenId).send({from: owner});
187 expect(result.events).to.be.like({187 expect(result.events).to.be.like({
204 const {collectionId, tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);204 const {collectionId, tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);
205 const refungibleAddress = helper.ethAddress.fromCollectionId(collectionId);205 const refungibleAddress = helper.ethAddress.fromCollectionId(collectionId);
206 expect(rftCollectionAddress).to.be.equal(refungibleAddress);206 expect(rftCollectionAddress).to.be.equal(refungibleAddress);
207 const refungibleTokenContract = helper.ethNativeContract.rftToken(rftTokenAddress, owner);207 const refungibleTokenContract = await helper.ethNativeContract.rftToken(rftTokenAddress, owner);
208 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 100).send({from: owner});208 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 100).send({from: owner});
209209
210 const rft2nft = await fractionalizer.methods.rft2nftMapping(rftTokenAddress).call();210 const rft2nft = await fractionalizer.methods.rft2nftMapping(rftTokenAddress).call();
233 itEth('call setRFTCollection twice', async ({helper}) => {233 itEth('call setRFTCollection twice', async ({helper}) => {
234 const owner = await helper.eth.createAccountWithBalance(donor, 20n);234 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
235 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');235 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');
236 const refungibleContract = helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);236 const refungibleContract = await helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);
237237
238 const fractionalizer = await deployContract(helper, owner);238 const fractionalizer = await deployContract(helper, owner);
239 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);239 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);
247 itEth('call setRFTCollection with NFT collection', async ({helper}) => {247 itEth('call setRFTCollection with NFT collection', async ({helper}) => {
248 const owner = await helper.eth.createAccountWithBalance(donor, 20n);248 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
249 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');249 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
250 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);250 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
251251
252 const fractionalizer = await deployContract(helper, owner);252 const fractionalizer = await deployContract(helper, owner);
253 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);253 const fractionalizerAddressCross = helper.ethCrossAccount.fromAddress(fractionalizer.options.address);
282 const owner = await helper.eth.createAccountWithBalance(donor, 20n);282 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
283283
284 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');284 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
285 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);285 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
286 const mintResult = await nftContract.methods.mint(owner).send({from: owner});286 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
287 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;287 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
288288
297 const nftOwner = await helper.eth.createAccountWithBalance(donor, 10n);297 const nftOwner = await helper.eth.createAccountWithBalance(donor, 10n);
298298
299 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');299 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
300 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);300 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
301 const mintResult = await nftContract.methods.mint(owner).send({from: owner});301 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
302 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;302 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
303 await nftContract.methods.transfer(nftOwner, 1).send({from: owner});303 await nftContract.methods.transfer(nftOwner, 1).send({from: owner});
314 const owner = await helper.eth.createAccountWithBalance(donor, 20n);314 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
315315
316 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');316 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
317 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);317 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
318 const mintResult = await nftContract.methods.mint(owner).send({from: owner});318 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
319 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;319 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
320320
329 const owner = await helper.eth.createAccountWithBalance(donor, 20n);329 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
330330
331 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');331 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
332 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);332 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
333 const mintResult = await nftContract.methods.mint(owner).send({from: owner});333 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
334 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;334 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
335335
345345
346 const fractionalizer = await deployContract(helper, owner);346 const fractionalizer = await deployContract(helper, owner);
347 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');347 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');
348 const refungibleContract = helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);348 const refungibleContract = await helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);
349 const mintResult = await refungibleContract.methods.mint(owner).send({from: owner});349 const mintResult = await refungibleContract.methods.mint(owner).send({from: owner});
350 const rftTokenId = mintResult.events.Transfer.returnValues.tokenId;350 const rftTokenId = mintResult.events.Transfer.returnValues.tokenId;
351351
358358
359 const {contract: fractionalizer} = await initContract(helper, owner);359 const {contract: fractionalizer} = await initContract(helper, owner);
360 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');360 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');
361 const refungibleContract = helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);361 const refungibleContract = await helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);
362 const mintResult = await refungibleContract.methods.mint(owner).send({from: owner});362 const mintResult = await refungibleContract.methods.mint(owner).send({from: owner});
363 const rftTokenId = mintResult.events.Transfer.returnValues.tokenId;363 const rftTokenId = mintResult.events.Transfer.returnValues.tokenId;
364364
369 itEth('call rft2nft for RFT token that was not minted by fractionalizer contract', async ({helper}) => {369 itEth('call rft2nft for RFT token that was not minted by fractionalizer contract', async ({helper}) => {
370 const owner = await helper.eth.createAccountWithBalance(donor, 20n);370 const owner = await helper.eth.createAccountWithBalance(donor, 20n);
371 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');371 const rftCollection = await helper.eth.createRFTCollection(owner, 'rft', 'RFT collection', 'RFT');
372 const refungibleContract = helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);372 const refungibleContract = await helper.ethNativeContract.collection(rftCollection.collectionAddress, 'rft', owner);
373373
374 const fractionalizer = await deployContract(helper, owner);374 const fractionalizer = await deployContract(helper, owner);
375375
392 const {rftTokenAddress} = await mintRFTToken(helper, owner, fractionalizer, 100n);392 const {rftTokenAddress} = await mintRFTToken(helper, owner, fractionalizer, 100n);
393393
394 const {tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);394 const {tokenId} = helper.ethAddress.extractTokenId(rftTokenAddress);
395 const refungibleTokenContract = helper.ethNativeContract.rftToken(rftTokenAddress, owner);395 const refungibleTokenContract = await helper.ethNativeContract.rftToken(rftTokenAddress, owner);
396 await refungibleTokenContract.methods.transfer(receiver, 50).send({from: owner});396 await refungibleTokenContract.methods.transfer(receiver, 50).send({from: owner});
397 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 50).send({from: receiver});397 await refungibleTokenContract.methods.approve(fractionalizer.options.address, 50).send({from: receiver});
398 await expect(fractionalizer.methods.rft2nft(rftCollectionAddress, tokenId).call({from: receiver}))398 await expect(fractionalizer.methods.rft2nft(rftCollectionAddress, tokenId).call({from: receiver}))
419 const {contract: fractionalizer} = await initContract(helper, owner);419 const {contract: fractionalizer} = await initContract(helper, owner);
420 await fractionalizer.methods.setNftCollectionIsAllowed(nftCollectionAddress, true).send({from: owner});420 await fractionalizer.methods.setNftCollectionIsAllowed(nftCollectionAddress, true).send({from: owner});
421421
422 const nftContract = helper.ethNativeContract.collection(nftCollectionAddress, 'nft', owner);422 const nftContract = await helper.ethNativeContract.collection(nftCollectionAddress, 'nft', owner);
423 await nftContract.methods.approve(fractionalizer.options.address, nftToken.tokenId).send({from: owner});423 await nftContract.methods.approve(fractionalizer.options.address, nftToken.tokenId).send({from: owner});
424 await expect(fractionalizer.methods.nft2rft(nftCollectionAddress, nftToken.tokenId, 100).call())424 await expect(fractionalizer.methods.nft2rft(nftCollectionAddress, nftToken.tokenId, 100).call())
425 .to.be.rejectedWith(/TransferNotAllowed$/g);425 .to.be.rejectedWith(/TransferNotAllowed$/g);
437 await helper.executeExtrinsic(donor, 'api.tx.unique.setTransfersEnabledFlag', [rftCollection.collectionId, false], true);437 await helper.executeExtrinsic(donor, 'api.tx.unique.setTransfersEnabledFlag', [rftCollection.collectionId, false], true);
438438
439 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');439 const nftCollection = await helper.eth.createNFTCollection(owner, 'nft', 'NFT collection', 'NFT');
440 const nftContract = helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);440 const nftContract = await helper.ethNativeContract.collection(nftCollection.collectionAddress, 'nft', owner);
441 const mintResult = await nftContract.methods.mint(owner).send({from: owner});441 const mintResult = await nftContract.methods.mint(owner).send({from: owner});
442 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;442 const nftTokenId = mintResult.events.Transfer.returnValues.tokenId;
443443
modifiedtests/src/eth/fungible.test.tsdiffbeforeafterboth
33 const collection = await helper.ft.mintCollection(alice);33 const collection = await helper.ft.mintCollection(alice);
34 await collection.mint(alice, 200n);34 await collection.mint(alice, 200n);
3535
36 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'ft', caller);36 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'ft', caller);
37 const totalSupply = await contract.methods.totalSupply().call();37 const totalSupply = await contract.methods.totalSupply().call();
38 expect(totalSupply).to.equal('200');38 expect(totalSupply).to.equal('200');
39 });39 });
43 const collection = await helper.ft.mintCollection(alice);43 const collection = await helper.ft.mintCollection(alice);
44 await collection.mint(alice, 200n, {Ethereum: caller});44 await collection.mint(alice, 200n, {Ethereum: caller});
4545
46 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'ft', caller);46 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'ft', caller);
47 const balance = await contract.methods.balanceOf(caller).call();47 const balance = await contract.methods.balanceOf(caller).call();
48 expect(balance).to.equal('200');48 expect(balance).to.equal('200');
49 });49 });
68 await collection.addAdmin(alice, {Ethereum: owner});68 await collection.addAdmin(alice, {Ethereum: owner});
6969
70 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);70 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
71 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);71 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
7272
73 const result = await contract.methods.mint(receiver, 100).send();73 const result = await contract.methods.mint(receiver, 100).send();
74 74
95 await collection.addAdmin(alice, {Ethereum: ethOwner});95 await collection.addAdmin(alice, {Ethereum: ethOwner});
96 96
97 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);97 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
98 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'ft', ethOwner);98 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'ft', ethOwner);
99 99
100 // 2. Mint tokens:100 // 2. Mint tokens:
101 const result = await collectionEvm.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, 100).send();101 const result = await collectionEvm.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, 100).send();
123 await collection.addAdmin(alice, {Ethereum: owner});123 await collection.addAdmin(alice, {Ethereum: owner});
124124
125 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);125 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
126 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);126 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
127127
128 const result = await contract.methods.mintBulk(Array.from({length: bulkSize}, (_, i) => (128 const result = await contract.methods.mintBulk(Array.from({length: bulkSize}, (_, i) => (
129 [receivers[i], (i + 1) * 10]129 [receivers[i], (i + 1) * 10]
146 await collection.addAdmin(alice, {Ethereum: owner});146 await collection.addAdmin(alice, {Ethereum: owner});
147147
148 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);148 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
149 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner, true);149 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner, true);
150 await contract.methods.mint(receiver, 100).send();150 await contract.methods.mint(receiver, 100).send();
151151
152 const result = await contract.methods.burnFrom(receiver, 49).send({from: receiver});152 const result = await contract.methods.burnFrom(receiver, 49).send({from: receiver});
168 await collection.mint(alice, 200n, {Ethereum: owner});168 await collection.mint(alice, 200n, {Ethereum: owner});
169169
170 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);170 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
171 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);171 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
172172
173 {173 {
174 const result = await contract.methods.approve(spender, 100).send({from: owner});174 const result = await contract.methods.approve(spender, 100).send({from: owner});
198 await collection.mint(alice, 200n, {Ethereum: owner});198 await collection.mint(alice, 200n, {Ethereum: owner});
199199
200 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);200 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
201 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);201 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
202202
203 {203 {
204 const result = await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});204 const result = await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});
242 await collection.mint(alice, 100n, {Ethereum: owner});242 await collection.mint(alice, 100n, {Ethereum: owner});
243243
244 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);244 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
245 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);245 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
246246
247 await expect(collectionEvm.methods.approveCross(nonOwnerCross, 20).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');247 await expect(collectionEvm.methods.approveCross(nonOwnerCross, 20).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');
248 });248 });
257 await collection.approveTokens(owner, {Ethereum: sender}, 100n);257 await collection.approveTokens(owner, {Ethereum: sender}, 100n);
258258
259 const address = helper.ethAddress.fromCollectionId(collection.collectionId);259 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
260 const contract = helper.ethNativeContract.collection(address, 'ft');260 const contract = await helper.ethNativeContract.collection(address, 'ft');
261261
262 const fromBalanceBefore = await collection.getBalance({Substrate: owner.address});262 const fromBalanceBefore = await collection.getBalance({Substrate: owner.address});
263 263
298 await collection.mint(alice, 200n, {Ethereum: owner});298 await collection.mint(alice, 200n, {Ethereum: owner});
299299
300 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);300 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
301 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);301 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
302302
303 await contract.methods.approve(spender, 100).send();303 await contract.methods.approve(spender, 100).send();
304304
338 await collection.mint(alice, 200n, {Ethereum: sender});338 await collection.mint(alice, 200n, {Ethereum: sender});
339339
340 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);340 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
341 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'ft', sender);341 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'ft', sender);
342342
343 {343 {
344 // Can transferCross to ethereum address:344 // Can transferCross to ethereum address:
385 const collection = await helper.ft.mintCollection(alice);385 const collection = await helper.ft.mintCollection(alice);
386 await collection.mint(alice, BALANCE, {Ethereum: sender});386 await collection.mint(alice, BALANCE, {Ethereum: sender});
387 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);387 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
388 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'ft', sender);388 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'ft', sender);
389389
390 // 1. Cannot transfer more than have390 // 1. Cannot transfer more than have
391 const receiver = testCase === 'transfer' ? receiverEth : receiverCrossEth;391 const receiver = testCase === 'transfer' ? receiverEth : receiverCrossEth;
402 await collection.mint(alice, 200n, {Ethereum: owner});402 await collection.mint(alice, 200n, {Ethereum: owner});
403403
404 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);404 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
405 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);405 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
406406
407 {407 {
408 const result = await contract.methods.transfer(receiver, 50).send({from: owner});408 const result = await contract.methods.transfer(receiver, 50).send({from: owner});
436 await collection.approveTokens(owner, {Ethereum: sender}, 100n);436 await collection.approveTokens(owner, {Ethereum: sender}, 100n);
437437
438 const address = helper.ethAddress.fromCollectionId(collection.collectionId);438 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
439 const contract = helper.ethNativeContract.collection(address, 'ft');439 const contract = await helper.ethNativeContract.collection(address, 'ft');
440440
441 const from = helper.ethCrossAccount.fromKeyringPair(owner);441 const from = helper.ethCrossAccount.fromKeyringPair(owner);
442 const to = helper.ethCrossAccount.fromAddress(receiver);442 const to = helper.ethCrossAccount.fromAddress(receiver);
491 await collection.mint(alice, 200n, {Ethereum: owner});491 await collection.mint(alice, 200n, {Ethereum: owner});
492492
493 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);493 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
494 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);494 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
495495
496 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, 100).send({from: owner}));496 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, 100).send({from: owner}));
497 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));497 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
504 await collection.mint(alice, 200n, {Ethereum: owner});504 await collection.mint(alice, 200n, {Ethereum: owner});
505505
506 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);506 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
507 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);507 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
508508
509 await contract.methods.approve(spender, 100).send({from: owner});509 await contract.methods.approve(spender, 100).send({from: owner});
510510
519 await collection.mint(alice, 200n, {Ethereum: owner});519 await collection.mint(alice, 200n, {Ethereum: owner});
520520
521 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);521 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
522 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft', owner);522 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft', owner);
523523
524 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, 100).send({from: owner}));524 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, 100).send({from: owner}));
525 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));525 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
544 await collection.mint(alice, 200n);544 await collection.mint(alice, 200n);
545545
546 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);546 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
547 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft');547 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft');
548548
549 const events: any = [];549 const events: any = [];
550 contract.events.allEvents((_: any, event: any) => {550 contract.events.allEvents((_: any, event: any) => {
570 await collection.approveTokens(alice, {Substrate: bob.address}, 100n);570 await collection.approveTokens(alice, {Substrate: bob.address}, 100n);
571571
572 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);572 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
573 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft');573 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft');
574574
575 const events: any = [];575 const events: any = [];
576 contract.events.allEvents((_: any, event: any) => {576 contract.events.allEvents((_: any, event: any) => {
601 await collection.mint(alice, 200n);601 await collection.mint(alice, 200n);
602602
603 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);603 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
604 const contract = helper.ethNativeContract.collection(collectionAddress, 'ft');604 const contract = await helper.ethNativeContract.collection(collectionAddress, 'ft');
605605
606 const events: any = [];606 const events: any = [];
607 contract.events.allEvents((_: any, event: any) => {607 contract.events.allEvents((_: any, event: any) => {
630 await collection.approveTokens(owner, {Ethereum: sender}, 100n);630 await collection.approveTokens(owner, {Ethereum: sender}, 100n);
631631
632 const address = helper.ethAddress.fromCollectionId(collection.collectionId);632 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
633 const contract = helper.ethNativeContract.collection(address, 'ft');633 const contract = await helper.ethNativeContract.collection(address, 'ft');
634634
635 const from = helper.ethCrossAccount.fromKeyringPair(owner);635 const from = helper.ethCrossAccount.fromKeyringPair(owner);
636 const to = helper.ethCrossAccount.fromAddress(receiver);636 const to = helper.ethCrossAccount.fromAddress(receiver);
modifiedtests/src/eth/helpersSmoke.test.tsdiffbeforeafterboth
3131
32 const flipper = await helper.eth.deployFlipper(owner);32 const flipper = await helper.eth.deployFlipper(owner);
3333
34 expect(await helper.ethNativeContract.contractHelpers(owner).methods.contractOwner(flipper.options.address).call()).to.be.equal(owner);34 expect(await (await helper.ethNativeContract.contractHelpers(owner)).methods.contractOwner(flipper.options.address).call()).to.be.equal(owner);
35 });35 });
3636
37 itEth('Flipper is working', async ({helper}) => {37 itEth('Flipper is working', async ({helper}) => {
modifiedtests/src/eth/marketplace/marketplace.test.tsdiffbeforeafterboth
50 const matcher = await helper.ethContract.deployByCode(matcherOwner, 'MarketPlace', (await readFile(`${__dirname}/MarketPlace.sol`)).toString(), [{solPath: 'api/UniqueNFT.sol', fsPath: `${__dirname}/../api/UniqueNFT.sol`}], helper.eth.DEFAULT_GAS * 2);50 const matcher = await helper.ethContract.deployByCode(matcherOwner, 'MarketPlace', (await readFile(`${__dirname}/MarketPlace.sol`)).toString(), [{solPath: 'api/UniqueNFT.sol', fsPath: `${__dirname}/../api/UniqueNFT.sol`}], helper.eth.DEFAULT_GAS * 2);
5151
52 const sponsor = await helper.eth.createAccountWithBalance(donor);52 const sponsor = await helper.eth.createAccountWithBalance(donor);
53 const helpers = helper.ethNativeContract.contractHelpers(matcherOwner);53 const helpers = await helper.ethNativeContract.contractHelpers(matcherOwner);
54 await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});54 await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
55 await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});55 await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
56 56
60 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}, pendingSponsor: alice.address});60 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}, pendingSponsor: alice.address});
61 await collection.confirmSponsorship(alice);61 await collection.confirmSponsorship(alice);
62 await collection.addToAllowList(alice, {Substrate: aliceDoubleMirror});62 await collection.addToAllowList(alice, {Substrate: aliceDoubleMirror});
63 const evmCollection = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');63 const evmCollection = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
64 await helper.eth.transferBalanceFromSubstrate(donor, aliceMirror);64 await helper.eth.transferBalanceFromSubstrate(donor, aliceMirror);
6565
66 await helpers.methods.toggleAllowed(matcher.options.address, aliceMirror, true).send({from: matcherOwner});66 await helpers.methods.toggleAllowed(matcher.options.address, aliceMirror, true).send({from: matcherOwner});
104 const sponsor = await helper.eth.createAccountWithBalance(donor);104 const sponsor = await helper.eth.createAccountWithBalance(donor);
105 const escrow = await helper.eth.createAccountWithBalance(donor);105 const escrow = await helper.eth.createAccountWithBalance(donor);
106 await matcher.methods.setEscrow(escrow, true).send({from: matcherOwner});106 await matcher.methods.setEscrow(escrow, true).send({from: matcherOwner});
107 const helpers = helper.ethNativeContract.contractHelpers(matcherOwner);107 const helpers = await helper.ethNativeContract.contractHelpers(matcherOwner);
108 await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});108 await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
109 await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});109 await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
110 110
114 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}, pendingSponsor: alice.address});114 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}, pendingSponsor: alice.address});
115 await collection.confirmSponsorship(alice);115 await collection.confirmSponsorship(alice);
116 await collection.addToAllowList(alice, {Substrate: aliceDoubleMirror});116 await collection.addToAllowList(alice, {Substrate: aliceDoubleMirror});
117 const evmCollection = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');117 const evmCollection = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
118 await helper.eth.transferBalanceFromSubstrate(donor, aliceMirror);118 await helper.eth.transferBalanceFromSubstrate(donor, aliceMirror);
119119
120120
168 await helper.eth.transferBalanceFromSubstrate(donor, matcher.options.address);168 await helper.eth.transferBalanceFromSubstrate(donor, matcher.options.address);
169169
170 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}});170 const collection = await helper.nft.mintCollection(alice, {limits: {sponsorApproveTimeout: 1}});
171 const evmCollection = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');171 const evmCollection = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
172172
173 await helper.balance.transferToSubstrate(donor, seller.address, 100_000_000_000_000_000_000n);173 await helper.balance.transferToSubstrate(donor, seller.address, 100_000_000_000_000_000_000n);
174 174
modifiedtests/src/eth/migration.seqtest.tsdiffbeforeafterboth
165 const collection = await helper.nft.mintCollection(superuser);165 const collection = await helper.nft.mintCollection(superuser);
166 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);166 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
167 const caller = await helper.eth.createAccountWithBalance(superuser);167 const caller = await helper.eth.createAccountWithBalance(superuser);
168 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', caller);168 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', caller);
169169
170 const events: any = [];170 const events: any = [];
171 contract.events.allEvents((_: any, event: any) => {171 contract.events.allEvents((_: any, event: any) => {
modifiedtests/src/eth/nesting/nest.test.tsdiffbeforeafterboth
9): Promise<{ collectionId: number, collectionAddress: string, contract: Contract }> => {9): Promise<{ collectionId: number, collectionAddress: string, contract: Contract }> => {
10 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');10 const {collectionAddress, collectionId} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
1111
12 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);12 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
13 await contract.methods.setCollectionNesting(true).send({from: owner});13 await contract.methods.setCollectionNesting(true).send({from: owner});
1414
15 return {collectionId, collectionAddress, contract};15 return {collectionId, collectionAddress, contract};
55 itEth('NFT: collectionNestingRestrictedCollectionIds() & collectionNestingPermissions', async ({helper}) => {55 itEth('NFT: collectionNestingRestrictedCollectionIds() & collectionNestingPermissions', async ({helper}) => {
56 const owner = await helper.eth.createAccountWithBalance(donor);56 const owner = await helper.eth.createAccountWithBalance(donor);
57 const {collectionId: unnestedCollsectionId, collectionAddress: unnsetedCollectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');57 const {collectionId: unnestedCollsectionId, collectionAddress: unnsetedCollectionAddress} = await helper.eth.createNFTCollection(owner, 'A', 'B', 'C');
58 const unnestedContract = helper.ethNativeContract.collection(unnsetedCollectionAddress, 'nft', owner);58 const unnestedContract = await helper.ethNativeContract.collection(unnsetedCollectionAddress, 'nft', owner);
59 expect(await unnestedContract.methods.collectionNestingRestrictedCollectionIds().call({from: owner})).to.be.like([false, []]);59 expect(await unnestedContract.methods.collectionNestingRestrictedCollectionIds().call({from: owner})).to.be.like([false, []]);
60 60
61 const {contract} = await createNestingCollection(helper, owner);61 const {contract} = await createNestingCollection(helper, owner);
modifiedtests/src/eth/nonFungible.test.tsdiffbeforeafterboth
3737
38 const caller = await helper.eth.createAccountWithBalance(donor);38 const caller = await helper.eth.createAccountWithBalance(donor);
3939
40 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);40 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
41 const totalSupply = await contract.methods.totalSupply().call();41 const totalSupply = await contract.methods.totalSupply().call();
4242
43 expect(totalSupply).to.equal('1');43 expect(totalSupply).to.equal('1');
51 await collection.mintToken(alice, {Ethereum: caller});51 await collection.mintToken(alice, {Ethereum: caller});
52 await collection.mintToken(alice, {Ethereum: caller});52 await collection.mintToken(alice, {Ethereum: caller});
5353
54 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);54 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
55 const balance = await contract.methods.balanceOf(caller).call();55 const balance = await contract.methods.balanceOf(caller).call();
5656
57 expect(balance).to.equal('3');57 expect(balance).to.equal('3');
6363
64 const token = await collection.mintToken(alice, {Ethereum: caller});64 const token = await collection.mintToken(alice, {Ethereum: caller});
6565
66 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);66 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
6767
68 const owner = await contract.methods.ownerOf(token.tokenId).call();68 const owner = await contract.methods.ownerOf(token.tokenId).call();
6969
74 const collection = await helper.nft.mintCollection(alice, {name: 'test', tokenPrefix: 'TEST'});74 const collection = await helper.nft.mintCollection(alice, {name: 'test', tokenPrefix: 'TEST'});
75 const caller = helper.eth.createAccount();75 const caller = helper.eth.createAccount();
7676
77 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);77 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
7878
79 expect(await contract.methods.name().call()).to.equal('test');79 expect(await contract.methods.name().call()).to.equal('test');
80 expect(await contract.methods.symbol().call()).to.equal('TEST');80 expect(await contract.methods.symbol().call()).to.equal('TEST');
95 const receiver = helper.eth.createAccount();95 const receiver = helper.eth.createAccount();
9696
97 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Mint collection', 'a', 'b', baseUri);97 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Mint collection', 'a', 'b', baseUri);
98 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);98 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
9999
100 const result = await contract.methods.mint(receiver).send();100 const result = await contract.methods.mint(receiver).send();
101 const tokenId = result.events.Transfer.returnValues.tokenId;101 const tokenId = result.events.Transfer.returnValues.tokenId;
155 const receiver = helper.eth.createAccount();155 const receiver = helper.eth.createAccount();
156156
157 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Mint collection', '6', '6', '');157 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'Mint collection', '6', '6', '');
158 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);158 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
159159
160 const result = await contract.methods.mintWithTokenURI(receiver, 'Test URI').send();160 const result = await contract.methods.mintWithTokenURI(receiver, 'Test URI').send();
161 const tokenId = result.events.Transfer.returnValues.tokenId;161 const tokenId = result.events.Transfer.returnValues.tokenId;
209 await collection.addAdmin(minter, {Ethereum: collectionAdmin});209 await collection.addAdmin(minter, {Ethereum: collectionAdmin});
210 210
211 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);211 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
212 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', collectionAdmin, true);212 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', collectionAdmin, true);
213 let expectedTokenId = await contract.methods.nextTokenId().call();213 let expectedTokenId = await contract.methods.nextTokenId().call();
214 let result = await contract.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, []).send();214 let result = await contract.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, []).send();
215 let tokenId = result.events.Transfer.returnValues.tokenId;215 let tokenId = result.events.Transfer.returnValues.tokenId;
247247
248 const collection = await helper.nft.mintCollection(minter);248 const collection = await helper.nft.mintCollection(minter);
249 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);249 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
250 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft');250 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft');
251251
252 await expect(collectionEvm.methods.mintCross(nonOwnerCross, []).call({from: nonOwner}))252 await expect(collectionEvm.methods.mintCross(nonOwnerCross, []).call({from: nonOwner}))
253 .to.be.rejectedWith('PublicMintingNotAllowed');253 .to.be.rejectedWith('PublicMintingNotAllowed');
262 await collection.addAdmin(minter, {Ethereum: caller});262 await collection.addAdmin(minter, {Ethereum: caller});
263263
264 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);264 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
265 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', caller);265 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', caller);
266 {266 {
267 const bulkSize = 3;267 const bulkSize = 3;
268 const nextTokenId = await contract.methods.nextTokenId().call();268 const nextTokenId = await contract.methods.nextTokenId().call();
294 const {tokenId} = await collection.mintToken(minter, {Ethereum: caller});294 const {tokenId} = await collection.mintToken(minter, {Ethereum: caller});
295295
296 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);296 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
297 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', caller);297 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', caller);
298298
299 {299 {
300 const result = await contract.methods.burn(tokenId).send({from: caller});300 const result = await contract.methods.burn(tokenId).send({from: caller});
315 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});315 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});
316316
317 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);317 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
318 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);318 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
319319
320 {320 {
321 const result = await contract.methods.approve(spender, tokenId).send({from: owner});321 const result = await contract.methods.approve(spender, tokenId).send({from: owner});
335 const collection = await helper.nft.mintCollection(minter, {});335 const collection = await helper.nft.mintCollection(minter, {});
336336
337 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);337 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
338 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);338 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
339339
340 const approvedBefore = await contract.methods.isApprovedForAll(owner, operator).call();340 const approvedBefore = await contract.methods.isApprovedForAll(owner, operator).call();
341 expect(approvedBefore).to.be.equal(false);341 expect(approvedBefore).to.be.equal(false);
384 const token = await collection.mintToken(minter, {Ethereum: owner});384 const token = await collection.mintToken(minter, {Ethereum: owner});
385385
386 const address = helper.ethAddress.fromCollectionId(collection.collectionId);386 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
387 const contract = helper.ethNativeContract.collection(address, 'nft');387 const contract = await helper.ethNativeContract.collection(address, 'nft');
388388
389 {389 {
390 await contract.methods.setApprovalForAll(operator, true).send({from: owner});390 await contract.methods.setApprovalForAll(operator, true).send({from: owner});
416 const token = await collection.mintToken(minter, {Ethereum: owner});416 const token = await collection.mintToken(minter, {Ethereum: owner});
417417
418 const address = helper.ethAddress.fromCollectionId(collection.collectionId);418 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
419 const contract = helper.ethNativeContract.collection(address, 'nft');419 const contract = await helper.ethNativeContract.collection(address, 'nft');
420420
421 {421 {
422 await contract.methods.setApprovalForAll(operator, true).send({from: owner});422 await contract.methods.setApprovalForAll(operator, true).send({from: owner});
452 const token2 = await collection.mintToken(minter, {Ethereum: ownerEth});452 const token2 = await collection.mintToken(minter, {Ethereum: ownerEth});
453453
454 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);454 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
455 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft');455 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft');
456456
457 // Approve tokens from substrate and ethereum:457 // Approve tokens from substrate and ethereum:
458 await token1.approve(ownerSub, {Ethereum: burnerEth});458 await token1.approve(ownerSub, {Ethereum: burnerEth});
499 const token1 = await collection.mintToken(minter, {Ethereum: owner});499 const token1 = await collection.mintToken(minter, {Ethereum: owner});
500 const token2 = await collection.mintToken(minter, {Ethereum: owner});500 const token2 = await collection.mintToken(minter, {Ethereum: owner});
501501
502 const collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');502 const collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
503503
504 // Can approveCross substrate and ethereum address:504 // Can approveCross substrate and ethereum address:
505 const resultSub = await collectionEvm.methods.approveCross(recieverCrossSub, token1.tokenId).send({from: owner});505 const resultSub = await collectionEvm.methods.approveCross(recieverCrossSub, token1.tokenId).send({from: owner});
538 const nonOwnerCross = helper.ethCrossAccount.fromAddress(nonOwner);538 const nonOwnerCross = helper.ethCrossAccount.fromAddress(nonOwner);
539 const owner = await helper.eth.createAccountWithBalance(donor);539 const owner = await helper.eth.createAccountWithBalance(donor);
540 const collection = await helper.nft.mintCollection(minter, {name: 'A', description: 'B', tokenPrefix: 'C'});540 const collection = await helper.nft.mintCollection(minter, {name: 'A', description: 'B', tokenPrefix: 'C'});
541 const collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');541 const collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
542 const token = await collection.mintToken(minter, {Ethereum: owner});542 const token = await collection.mintToken(minter, {Ethereum: owner});
543543
544 await expect(collectionEvm.methods.approveCross(nonOwnerCross, token.tokenId).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');544 await expect(collectionEvm.methods.approveCross(nonOwnerCross, token.tokenId).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');
553 const collection = await helper.nft.mintCollection(minter, {name: 'A', description: 'B', tokenPrefix: 'C'});553 const collection = await helper.nft.mintCollection(minter, {name: 'A', description: 'B', tokenPrefix: 'C'});
554 const token1 = await collection.mintToken(minter, {Ethereum: owner});554 const token1 = await collection.mintToken(minter, {Ethereum: owner});
555 const token2 = await collection.mintToken(minter, {Ethereum: owner});555 const token2 = await collection.mintToken(minter, {Ethereum: owner});
556 const collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');556 const collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collection.collectionId), 'nft');
557557
558 // Can approve and reaffirm approved address:558 // Can approve and reaffirm approved address:
559 await collectionEvm.methods.approveCross(receiver1Cross, token1.tokenId).send({from: owner});559 await collectionEvm.methods.approveCross(receiver1Cross, token1.tokenId).send({from: owner});
581 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});581 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});
582582
583 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);583 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
584 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);584 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
585585
586 await contract.methods.approve(spender, tokenId).send({from: owner});586 await contract.methods.approve(spender, tokenId).send({from: owner});
587587
615 const token = await collection.mintToken(minter, {Substrate: owner.address});615 const token = await collection.mintToken(minter, {Substrate: owner.address});
616616
617 const address = helper.ethAddress.fromCollectionId(collection.collectionId);617 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
618 const contract = helper.ethNativeContract.collection(address, 'nft');618 const contract = await helper.ethNativeContract.collection(address, 'nft');
619619
620 await token.approve(owner, {Ethereum: spender});620 await token.approve(owner, {Ethereum: spender});
621621
646 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});646 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});
647647
648 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);648 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
649 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);649 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
650650
651 {651 {
652 const result = await contract.methods.transfer(receiver, tokenId).send({from: owner});652 const result = await contract.methods.transfer(receiver, tokenId).send({from: owner});
679 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});679 const {tokenId} = await collection.mintToken(minter, {Ethereum: owner});
680680
681 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);681 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
682 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);682 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
683683
684 {684 {
685 // Can transferCross to ethereum address:685 // Can transferCross to ethereum address:
727727
728 const collection = await helper.nft.mintCollection(minter, {});728 const collection = await helper.nft.mintCollection(minter, {});
729 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);729 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
730 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', sender);730 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', sender);
731731
732 await collection.mintToken(minter, {Ethereum: sender});732 await collection.mintToken(minter, {Ethereum: sender});
733 const nonSendersToken = await collection.mintToken(minter, {Ethereum: tokenOwner});733 const nonSendersToken = await collection.mintToken(minter, {Ethereum: tokenOwner});
760 const collection = await helper.nft.mintCollection(alice, {});760 const collection = await helper.nft.mintCollection(alice, {});
761 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});761 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});
762762
763 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);763 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);
764764
765 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, tokenId).send({from: owner}));765 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, tokenId).send({from: owner}));
766 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));766 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
773 const collection = await helper.nft.mintCollection(alice, {});773 const collection = await helper.nft.mintCollection(alice, {});
774 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});774 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});
775775
776 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);776 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);
777777
778 await contract.methods.approve(spender, tokenId).send({from: owner});778 await contract.methods.approve(spender, tokenId).send({from: owner});
779779
792 const token = await collection.mintToken(collectionMinter, {Substrate: owner.address});792 const token = await collection.mintToken(collectionMinter, {Substrate: owner.address});
793793
794 const address = helper.ethAddress.fromCollectionId(collection.collectionId);794 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
795 const contract = helper.ethNativeContract.collection(address, 'nft');795 const contract = await helper.ethNativeContract.collection(address, 'nft');
796796
797 await token.approve(owner, {Ethereum: spender});797 await token.approve(owner, {Ethereum: spender});
798798
822 const collection = await helper.nft.mintCollection(alice, {});822 const collection = await helper.nft.mintCollection(alice, {});
823 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});823 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});
824824
825 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);825 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', owner);
826826
827 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, tokenId).send({from: owner}));827 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, tokenId).send({from: owner}));
828 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));828 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
843 itEth('Events emitted for mint()', async ({helper}) => {843 itEth('Events emitted for mint()', async ({helper}) => {
844 const collection = await helper.nft.mintCollection(alice, {});844 const collection = await helper.nft.mintCollection(alice, {});
845 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);845 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
846 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');846 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
847847
848 const events: any = [];848 const events: any = [];
849 contract.events.allEvents((_: any, event: any) => {849 contract.events.allEvents((_: any, event: any) => {
866 const token = await collection.mintToken(alice);866 const token = await collection.mintToken(alice);
867867
868 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);868 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
869 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');869 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
870870
871 const events: any = [];871 const events: any = [];
872 contract.events.allEvents((_: any, event: any) => {872 contract.events.allEvents((_: any, event: any) => {
891 const token = await collection.mintToken(alice);891 const token = await collection.mintToken(alice);
892892
893 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);893 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
894 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');894 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
895895
896 const events: any = [];896 const events: any = [];
897 contract.events.allEvents((_: any, event: any) => {897 contract.events.allEvents((_: any, event: any) => {
918 await token.approve(alice, {Substrate: bob.address});918 await token.approve(alice, {Substrate: bob.address});
919919
920 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);920 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
921 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');921 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
922922
923 const events: any = [];923 const events: any = [];
924 contract.events.allEvents((_: any, event: any) => {924 contract.events.allEvents((_: any, event: any) => {
943 const token = await collection.mintToken(alice);943 const token = await collection.mintToken(alice);
944944
945 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);945 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
946 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft');946 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft');
947947
948 const events: any = [];948 const events: any = [];
949 contract.events.allEvents((_: any, event: any) => {949 contract.events.allEvents((_: any, event: any) => {
993 },993 },
994 );994 );
995995
996 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);996 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
997 const name = await contract.methods.name().call();997 const name = await contract.methods.name().call();
998 expect(name).to.equal('oh River');998 expect(name).to.equal('oh River');
999 });999 });
1018 },1018 },
1019 );1019 );
10201020
1021 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);1021 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller);
1022 const symbol = await contract.methods.symbol().call();1022 const symbol = await contract.methods.symbol().call();
1023 expect(symbol).to.equal('CHANGE');1023 expect(symbol).to.equal('CHANGE');
1024 });1024 });
1045 const token = await collection.mintToken(minter, {Ethereum: owner});1045 const token = await collection.mintToken(minter, {Ethereum: owner});
10461046
1047 const address = helper.ethAddress.fromCollectionId(collection.collectionId);1047 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
1048 const contract = helper.ethNativeContract.collection(address, 'nft');1048 const contract = await helper.ethNativeContract.collection(address, 'nft');
10491049
1050 const ownerCross = helper.ethCrossAccount.fromAddress(owner);1050 const ownerCross = helper.ethCrossAccount.fromAddress(owner);
1051 await expect(contract.methods.burnFromCross(ownerCross, token.tokenId).send({from: spender})).to.be.rejected;1051 await expect(contract.methods.burnFromCross(ownerCross, token.tokenId).send({from: spender})).to.be.rejected;
1066 const token = await collection.mintToken(minter, {Ethereum: owner});1066 const token = await collection.mintToken(minter, {Ethereum: owner});
10671067
1068 const address = helper.ethAddress.fromCollectionId(collection.collectionId);1068 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
1069 const contract = helper.ethNativeContract.collection(address, 'nft');1069 const contract = await helper.ethNativeContract.collection(address, 'nft');
10701070
1071 const ownerCross = helper.ethCrossAccount.fromAddress(owner);1071 const ownerCross = helper.ethCrossAccount.fromAddress(owner);
1072 const recieverCross = helper.ethCrossAccount.fromKeyringPair(receiver);1072 const recieverCross = helper.ethCrossAccount.fromKeyringPair(receiver);
modifiedtests/src/eth/payable.test.tsdiffbeforeafterboth
175 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();175 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();
176 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();176 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();
177 const caller = await helper.eth.createAccountWithBalance(donor);177 const caller = await helper.eth.createAccountWithBalance(donor);
178 const collectionHelper = helper.ethNativeContract.collectionHelpers(caller);178 const collectionHelper = await helper.ethNativeContract.collectionHelpers(caller);
179179
180 await expect(collectionHelper.methods.createNFTCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');180 await expect(collectionHelper.methods.createNFTCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
181 await expect(collectionHelper.methods.createNFTCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');181 await expect(collectionHelper.methods.createNFTCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
185 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();185 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();
186 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();186 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();
187 const caller = await helper.eth.createAccountWithBalance(donor);187 const caller = await helper.eth.createAccountWithBalance(donor);
188 const collectionHelper = helper.ethNativeContract.collectionHelpers(caller);188 const collectionHelper = await helper.ethNativeContract.collectionHelpers(caller);
189189
190 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');190 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
191 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');191 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');
modifiedtests/src/eth/proxy/fungibleProxy.test.tsdiffbeforeafterboth
48 await collection.mint(alice, 200n, {Substrate: alice.address});48 await collection.mint(alice, 200n, {Substrate: alice.address});
4949
50 const address = helper.ethAddress.fromCollectionId(collection.collectionId);50 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
51 const evmCollection = helper.ethNativeContract.collection(address, 'ft', caller);51 const evmCollection = await helper.ethNativeContract.collection(address, 'ft', caller);
52 const contract = await proxyWrap(helper, evmCollection, donor);52 const contract = await proxyWrap(helper, evmCollection, donor);
53 const totalSupply = await contract.methods.totalSupply().call();53 const totalSupply = await contract.methods.totalSupply().call();
5454
62 await collection.mint(alice, 200n, {Ethereum: caller});62 await collection.mint(alice, 200n, {Ethereum: caller});
6363
64 const address = helper.ethAddress.fromCollectionId(collection.collectionId);64 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
65 const evmCollection = helper.ethNativeContract.collection(address, 'ft', caller);65 const evmCollection = await helper.ethNativeContract.collection(address, 'ft', caller);
66 const contract = await proxyWrap(helper, evmCollection, donor);66 const contract = await proxyWrap(helper, evmCollection, donor);
67 const balance = await contract.methods.balanceOf(caller).call();67 const balance = await contract.methods.balanceOf(caller).call();
6868
87 const spender = helper.eth.createAccount();87 const spender = helper.eth.createAccount();
8888
89 const address = helper.ethAddress.fromCollectionId(collection.collectionId);89 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
90 const evmCollection = helper.ethNativeContract.collection(address, 'ft', caller);90 const evmCollection = await helper.ethNativeContract.collection(address, 'ft', caller);
91 const contract = await proxyWrap(helper, evmCollection, donor);91 const contract = await proxyWrap(helper, evmCollection, donor);
92 await collection.mint(alice, 200n, {Ethereum: contract.options.address});92 await collection.mint(alice, 200n, {Ethereum: contract.options.address});
9393
123 const receiver = helper.eth.createAccount();123 const receiver = helper.eth.createAccount();
124124
125 const address = helper.ethAddress.fromCollectionId(collection.collectionId);125 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
126 const evmCollection = helper.ethNativeContract.collection(address, 'ft', caller);126 const evmCollection = await helper.ethNativeContract.collection(address, 'ft', caller);
127 const contract = await proxyWrap(helper, evmCollection, donor);127 const contract = await proxyWrap(helper, evmCollection, donor);
128128
129 await evmCollection.methods.approve(contract.options.address, 100).send({from: owner});129 await evmCollection.methods.approve(contract.options.address, 100).send({from: owner});
170 const receiver = await helper.eth.createAccountWithBalance(donor);170 const receiver = await helper.eth.createAccountWithBalance(donor);
171171
172 const address = helper.ethAddress.fromCollectionId(collection.collectionId);172 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
173 const evmCollection = helper.ethNativeContract.collection(address, 'ft', caller);173 const evmCollection = await helper.ethNativeContract.collection(address, 'ft', caller);
174 const contract = await proxyWrap(helper, evmCollection, donor);174 const contract = await proxyWrap(helper, evmCollection, donor);
175 await collection.mint(alice, 200n, {Ethereum: contract.options.address});175 await collection.mint(alice, 200n, {Ethereum: contract.options.address});
176176
modifiedtests/src/eth/proxy/nonFungibleProxy.test.tsdiffbeforeafterboth
48 await collection.mintToken(alice, {Substrate: alice.address});48 await collection.mintToken(alice, {Substrate: alice.address});
4949
50 const address = helper.ethAddress.fromCollectionId(collection.collectionId);50 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
51 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);51 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
52 const contract = await proxyWrap(helper, evmCollection, donor);52 const contract = await proxyWrap(helper, evmCollection, donor);
53 const totalSupply = await contract.methods.totalSupply().call();53 const totalSupply = await contract.methods.totalSupply().call();
5454
66 ]);66 ]);
6767
68 const address = helper.ethAddress.fromCollectionId(collection.collectionId);68 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
69 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);69 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
70 const contract = await proxyWrap(helper, evmCollection, donor);70 const contract = await proxyWrap(helper, evmCollection, donor);
71 const balance = await contract.methods.balanceOf(caller).call();71 const balance = await contract.methods.balanceOf(caller).call();
7272
80 const {tokenId} = await collection.mintToken(alice, {Ethereum: caller});80 const {tokenId} = await collection.mintToken(alice, {Ethereum: caller});
8181
82 const address = helper.ethAddress.fromCollectionId(collection.collectionId);82 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
83 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);83 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
84 const contract = await proxyWrap(helper, evmCollection, donor);84 const contract = await proxyWrap(helper, evmCollection, donor);
85 const owner = await contract.methods.ownerOf(tokenId).call();85 const owner = await contract.methods.ownerOf(tokenId).call();
8686
106 const caller = await helper.eth.createAccountWithBalance(donor);106 const caller = await helper.eth.createAccountWithBalance(donor);
107 const receiver = helper.eth.createAccount();107 const receiver = helper.eth.createAccount();
108108
109 const collectionEvmOwned = helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);109 const collectionEvmOwned = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner, true);
110 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', caller, true);110 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', caller, true);
111 const contract = await proxyWrap(helper, collectionEvm, donor);111 const contract = await proxyWrap(helper, collectionEvm, donor);
112 await collectionEvmOwned.methods.addCollectionAdmin(contract.options.address).send();112 await collectionEvmOwned.methods.addCollectionAdmin(contract.options.address).send();
113113
141 const caller = await helper.eth.createAccountWithBalance(donor);141 const caller = await helper.eth.createAccountWithBalance(donor);
142 const receiver = helper.eth.createAccount();142 const receiver = helper.eth.createAccount();
143143
144 const collectionEvmOwned = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);144 const collectionEvmOwned = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
145 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', caller);145 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'nft', caller);
146 const contract = await proxyWrap(helper, collectionEvm, donor);146 const contract = await proxyWrap(helper, collectionEvm, donor);
147 const contractAddressCross = helper.ethCrossAccount.fromAddress(contract.options.address);147 const contractAddressCross = helper.ethCrossAccount.fromAddress(contract.options.address);
148 await collectionEvmOwned.methods.addCollectionAdminCross(contractAddressCross).send();148 await collectionEvmOwned.methods.addCollectionAdminCross(contractAddressCross).send();
179 const receiver = helper.eth.createAccount();179 const receiver = helper.eth.createAccount();
180180
181 const address = helper.ethAddress.fromCollectionId(collection.collectionId);181 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
182 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);182 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
183 const contract = await proxyWrap(helper, evmCollection, donor);183 const contract = await proxyWrap(helper, evmCollection, donor);
184 await collection.addAdmin(donor, {Ethereum: contract.options.address});184 await collection.addAdmin(donor, {Ethereum: contract.options.address});
185185
237 const caller = await helper.eth.createAccountWithBalance(donor);237 const caller = await helper.eth.createAccountWithBalance(donor);
238238
239 const address = helper.ethAddress.fromCollectionId(collection.collectionId);239 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
240 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);240 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
241 const contract = await proxyWrap(helper, evmCollection, donor);241 const contract = await proxyWrap(helper, evmCollection, donor);
242 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});242 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});
243 await collection.addAdmin(alice, {Ethereum: contract.options.address});243 await collection.addAdmin(alice, {Ethereum: contract.options.address});
266 const spender = helper.eth.createAccount();266 const spender = helper.eth.createAccount();
267267
268 const address = helper.ethAddress.fromCollectionId(collection.collectionId);268 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
269 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);269 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
270 const contract = await proxyWrap(helper, evmCollection, donor);270 const contract = await proxyWrap(helper, evmCollection, donor);
271 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});271 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});
272272
296 const receiver = helper.eth.createAccount();296 const receiver = helper.eth.createAccount();
297297
298 const address = helper.ethAddress.fromCollectionId(collection.collectionId);298 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
299 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);299 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
300 const contract = await proxyWrap(helper, evmCollection, donor);300 const contract = await proxyWrap(helper, evmCollection, donor);
301 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});301 const {tokenId} = await collection.mintToken(alice, {Ethereum: owner});
302302
335 const receiver = helper.eth.createAccount();335 const receiver = helper.eth.createAccount();
336336
337 const address = helper.ethAddress.fromCollectionId(collection.collectionId);337 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
338 const evmCollection = helper.ethNativeContract.collection(address, 'nft', caller);338 const evmCollection = await helper.ethNativeContract.collection(address, 'nft', caller);
339 const contract = await proxyWrap(helper, evmCollection, donor);339 const contract = await proxyWrap(helper, evmCollection, donor);
340 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});340 const {tokenId} = await collection.mintToken(alice, {Ethereum: contract.options.address});
341341
modifiedtests/src/eth/reFungible.test.tsdiffbeforeafterboth
33 itEth('totalSupply', async ({helper}) => {33 itEth('totalSupply', async ({helper}) => {
34 const caller = await helper.eth.createAccountWithBalance(donor);34 const caller = await helper.eth.createAccountWithBalance(donor);
35 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'TotalSupply', '6', '6');35 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'TotalSupply', '6', '6');
36 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);36 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
3737
38 await contract.methods.mint(caller).send();38 await contract.methods.mint(caller).send();
3939
44 itEth('balanceOf', async ({helper}) => {44 itEth('balanceOf', async ({helper}) => {
45 const caller = await helper.eth.createAccountWithBalance(donor);45 const caller = await helper.eth.createAccountWithBalance(donor);
46 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'BalanceOf', '6', '6');46 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'BalanceOf', '6', '6');
47 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);47 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
4848
49 await contract.methods.mint(caller).send();49 await contract.methods.mint(caller).send();
50 await contract.methods.mint(caller).send();50 await contract.methods.mint(caller).send();
57 itEth('ownerOf', async ({helper}) => {57 itEth('ownerOf', async ({helper}) => {
58 const caller = await helper.eth.createAccountWithBalance(donor);58 const caller = await helper.eth.createAccountWithBalance(donor);
59 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'OwnerOf', '6', '6');59 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'OwnerOf', '6', '6');
60 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);60 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
6161
62 const result = await contract.methods.mint(caller).send();62 const result = await contract.methods.mint(caller).send();
63 const tokenId = result.events.Transfer.returnValues.tokenId;63 const tokenId = result.events.Transfer.returnValues.tokenId;
70 const caller = await helper.eth.createAccountWithBalance(donor);70 const caller = await helper.eth.createAccountWithBalance(donor);
71 const receiver = helper.eth.createAccount();71 const receiver = helper.eth.createAccount();
72 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'OwnerOf-AfterBurn', '6', '6');72 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'OwnerOf-AfterBurn', '6', '6');
73 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);73 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
7474
75 const result = await contract.methods.mint(caller).send();75 const result = await contract.methods.mint(caller).send();
76 const tokenId = result.events.Transfer.returnValues.tokenId;76 const tokenId = result.events.Transfer.returnValues.tokenId;
77 const tokenContract = helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);77 const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);
7878
79 await tokenContract.methods.repartition(2).send();79 await tokenContract.methods.repartition(2).send();
80 await tokenContract.methods.transfer(receiver, 1).send();80 await tokenContract.methods.transfer(receiver, 1).send();
89 const caller = await helper.eth.createAccountWithBalance(donor);89 const caller = await helper.eth.createAccountWithBalance(donor);
90 const receiver = helper.eth.createAccount();90 const receiver = helper.eth.createAccount();
91 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Partial-OwnerOf', '6', '6');91 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Partial-OwnerOf', '6', '6');
92 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);92 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
9393
94 const result = await contract.methods.mint(caller).send();94 const result = await contract.methods.mint(caller).send();
95 const tokenId = result.events.Transfer.returnValues.tokenId;95 const tokenId = result.events.Transfer.returnValues.tokenId;
96 const tokenContract = helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);96 const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);
9797
98 await tokenContract.methods.repartition(2).send();98 await tokenContract.methods.repartition(2).send();
99 await tokenContract.methods.transfer(receiver, 1).send();99 await tokenContract.methods.transfer(receiver, 1).send();
122 const owner = await helper.eth.createAccountWithBalance(donor);122 const owner = await helper.eth.createAccountWithBalance(donor);
123 const receiver = helper.eth.createAccount();123 const receiver = helper.eth.createAccount();
124 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'Minty', '6', '6', '');124 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'Minty', '6', '6', '');
125 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);125 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
126126
127 const result = await contract.methods.mintWithTokenURI(receiver, 'Test URI').send();127 const result = await contract.methods.mintWithTokenURI(receiver, 'Test URI').send();
128128
164 await collection.addAdmin(minter, {Ethereum: collectionAdmin});164 await collection.addAdmin(minter, {Ethereum: collectionAdmin});
165 165
166 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);166 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
167 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', collectionAdmin, true);167 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', collectionAdmin, true);
168 let expectedTokenId = await contract.methods.nextTokenId().call();168 let expectedTokenId = await contract.methods.nextTokenId().call();
169 let result = await contract.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, []).send();169 let result = await contract.methods.mintCross(testCase === 'ethereum' ? receiverCrossEth : receiverCrossSub, []).send();
170 let tokenId = result.events.Transfer.returnValues.tokenId;170 let tokenId = result.events.Transfer.returnValues.tokenId;
200 const owner = await helper.eth.createAccountWithBalance(donor);200 const owner = await helper.eth.createAccountWithBalance(donor);
201 const receiver = helper.eth.createAccount();201 const receiver = helper.eth.createAccount();
202 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'MintBulky', '6', '6', '');202 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'MintBulky', '6', '6', '');
203 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);203 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
204204
205 {205 {
206 const nextTokenId = await contract.methods.nextTokenId().call();206 const nextTokenId = await contract.methods.nextTokenId().call();
236 const collection = await helper.rft.mintCollection(minter, {});236 const collection = await helper.rft.mintCollection(minter, {});
237237
238 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);238 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
239 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);239 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
240240
241 const approvedBefore = await contract.methods.isApprovedForAll(owner, operator).call();241 const approvedBefore = await contract.methods.isApprovedForAll(owner, operator).call();
242 expect(approvedBefore).to.be.equal(false);242 expect(approvedBefore).to.be.equal(false);
285 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});285 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
286286
287 const address = helper.ethAddress.fromCollectionId(collection.collectionId);287 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
288 const contract = helper.ethNativeContract.collection(address, 'rft');288 const contract = await helper.ethNativeContract.collection(address, 'rft');
289289
290 {290 {
291 await contract.methods.setApprovalForAll(operator, true).send({from: owner});291 await contract.methods.setApprovalForAll(operator, true).send({from: owner});
314 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});314 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
315315
316 const address = helper.ethAddress.fromCollectionId(collection.collectionId);316 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
317 const contract = helper.ethNativeContract.collection(address, 'rft');317 const contract = await helper.ethNativeContract.collection(address, 'rft');
318318
319 const rftToken = helper.ethNativeContract.rftTokenById(token.collectionId, token.tokenId, owner);319 const rftToken = await helper.ethNativeContract.rftTokenById(token.collectionId, token.tokenId, owner);
320320
321 {321 {
322 await rftToken.methods.approve(operator, 15n).send({from: owner});322 await rftToken.methods.approve(operator, 15n).send({from: owner});
337 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});337 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
338338
339 const address = helper.ethAddress.fromCollectionId(collection.collectionId);339 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
340 const contract = helper.ethNativeContract.collection(address, 'rft');340 const contract = await helper.ethNativeContract.collection(address, 'rft');
341341
342 {342 {
343 await contract.methods.setApprovalForAll(operator, true).send({from: owner});343 await contract.methods.setApprovalForAll(operator, true).send({from: owner});
362 itEth('Can perform burn()', async ({helper}) => {362 itEth('Can perform burn()', async ({helper}) => {
363 const caller = await helper.eth.createAccountWithBalance(donor);363 const caller = await helper.eth.createAccountWithBalance(donor);
364 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Burny', '6', '6');364 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Burny', '6', '6');
365 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);365 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
366366
367 const result = await contract.methods.mint(caller).send();367 const result = await contract.methods.mint(caller).send();
368 const tokenId = result.events.Transfer.returnValues.tokenId;368 const tokenId = result.events.Transfer.returnValues.tokenId;
380 const caller = await helper.eth.createAccountWithBalance(donor);380 const caller = await helper.eth.createAccountWithBalance(donor);
381 const receiver = helper.eth.createAccount();381 const receiver = helper.eth.createAccount();
382 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'TransferFromy', '6', '6');382 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'TransferFromy', '6', '6');
383 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);383 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
384384
385 const result = await contract.methods.mint(caller).send();385 const result = await contract.methods.mint(caller).send();
386 const tokenId = result.events.Transfer.returnValues.tokenId;386 const tokenId = result.events.Transfer.returnValues.tokenId;
387387
388 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);388 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);
389389
390 const tokenContract = helper.ethNativeContract.rftToken(tokenAddress, caller);390 const tokenContract = await helper.ethNativeContract.rftToken(tokenAddress, caller);
391 await tokenContract.methods.repartition(15).send();391 await tokenContract.methods.repartition(15).send();
392392
393 {393 {
432 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});432 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
433433
434 const address = helper.ethAddress.fromCollectionId(collection.collectionId);434 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
435 const contract = helper.ethNativeContract.collection(address, 'rft', spender, true);435 const contract = await helper.ethNativeContract.collection(address, 'rft', spender, true);
436436
437 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);437 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);
438 const tokenContract = helper.ethNativeContract.rftToken(tokenAddress, owner);438 const tokenContract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
439 await tokenContract.methods.repartition(15).send();439 await tokenContract.methods.repartition(15).send();
440 await tokenContract.methods.approve(spender, 15).send();440 await tokenContract.methods.approve(spender, 15).send();
441441
465 const token = await collection.mintToken(minter, 100n, {Substrate: owner.address});465 const token = await collection.mintToken(minter, 100n, {Substrate: owner.address});
466466
467 const address = helper.ethAddress.fromCollectionId(collection.collectionId);467 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
468 const contract = helper.ethNativeContract.collection(address, 'rft');468 const contract = await helper.ethNativeContract.collection(address, 'rft');
469469
470 await token.repartition(owner, 15n);470 await token.repartition(owner, 15n);
471 await token.approve(owner, {Ethereum: spender}, 15n);471 await token.approve(owner, {Ethereum: spender}, 15n);
498 const token = await collection.mintToken(minter, 100n, {Substrate: owner.address});498 const token = await collection.mintToken(minter, 100n, {Substrate: owner.address});
499499
500 const address = helper.ethAddress.fromCollectionId(collection.collectionId);500 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
501 const contract = helper.ethNativeContract.collection(address, 'rft');501 const contract = await helper.ethNativeContract.collection(address, 'rft');
502502
503 await token.repartition(owner, 15n);503 await token.repartition(owner, 15n);
504 await token.approve(owner, {Ethereum: spender}, 15n);504 await token.approve(owner, {Ethereum: spender}, 15n);
526 const caller = await helper.eth.createAccountWithBalance(donor);526 const caller = await helper.eth.createAccountWithBalance(donor);
527 const receiver = helper.eth.createAccount();527 const receiver = helper.eth.createAccount();
528 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry', '6', '6');528 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry', '6', '6');
529 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);529 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
530530
531 const result = await contract.methods.mint(caller).send();531 const result = await contract.methods.mint(caller).send();
532 const tokenId = result.events.Transfer.returnValues.tokenId;532 const tokenId = result.events.Transfer.returnValues.tokenId;
560560
561 const collection = await helper.rft.mintCollection(minter, {});561 const collection = await helper.rft.mintCollection(minter, {});
562 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);562 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
563 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'rft', sender);563 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', sender);
564564
565 const token = await collection.mintToken(minter, 50n, {Ethereum: sender});565 const token = await collection.mintToken(minter, 50n, {Ethereum: sender});
566566
611611
612 const collection = await helper.rft.mintCollection(minter, {});612 const collection = await helper.rft.mintCollection(minter, {});
613 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);613 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
614 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'rft', sender);614 const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', sender);
615615
616 await collection.mintToken(minter, 50n, {Ethereum: sender});616 await collection.mintToken(minter, 50n, {Ethereum: sender});
617 const nonSendersToken = await collection.mintToken(minter, 50n, {Ethereum: tokenOwner});617 const nonSendersToken = await collection.mintToken(minter, 50n, {Ethereum: tokenOwner});
627 const caller = await helper.eth.createAccountWithBalance(donor);627 const caller = await helper.eth.createAccountWithBalance(donor);
628 const receiver = helper.eth.createAccount();628 const receiver = helper.eth.createAccount();
629 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry-Partial-to-Full', '6', '6');629 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry-Partial-to-Full', '6', '6');
630 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);630 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
631631
632 const result = await contract.methods.mint(caller).send();632 const result = await contract.methods.mint(caller).send();
633 const tokenId = result.events.Transfer.returnValues.tokenId;633 const tokenId = result.events.Transfer.returnValues.tokenId;
634634
635 const tokenContract = helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);635 const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);
636636
637 await tokenContract.methods.repartition(2).send();637 await tokenContract.methods.repartition(2).send();
638 await tokenContract.methods.transfer(receiver, 1).send();638 await tokenContract.methods.transfer(receiver, 1).send();
656 const caller = await helper.eth.createAccountWithBalance(donor);656 const caller = await helper.eth.createAccountWithBalance(donor);
657 const receiver = helper.eth.createAccount();657 const receiver = helper.eth.createAccount();
658 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry-Full-to-Partial', '6', '6');658 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Transferry-Full-to-Partial', '6', '6');
659 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);659 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
660660
661 const result = await contract.methods.mint(caller).send();661 const result = await contract.methods.mint(caller).send();
662 const tokenId = result.events.Transfer.returnValues.tokenId;662 const tokenId = result.events.Transfer.returnValues.tokenId;
663663
664 const tokenContract = helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);664 const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, caller);
665665
666 await tokenContract.methods.repartition(2).send();666 await tokenContract.methods.repartition(2).send();
667667
696 const caller = await helper.eth.createAccountWithBalance(donor);696 const caller = await helper.eth.createAccountWithBalance(donor);
697 const receiver = helper.eth.createAccount();697 const receiver = helper.eth.createAccount();
698 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Feeful-Transfer-From', '6', '6');698 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Feeful-Transfer-From', '6', '6');
699 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);699 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
700700
701 const result = await contract.methods.mint(caller).send();701 const result = await contract.methods.mint(caller).send();
702 const tokenId = result.events.Transfer.returnValues.tokenId;702 const tokenId = result.events.Transfer.returnValues.tokenId;
710 const caller = await helper.eth.createAccountWithBalance(donor);710 const caller = await helper.eth.createAccountWithBalance(donor);
711 const receiver = helper.eth.createAccount();711 const receiver = helper.eth.createAccount();
712 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Feeful-Transfer', '6', '6');712 const {collectionAddress} = await helper.eth.createRFTCollection(caller, 'Feeful-Transfer', '6', '6');
713 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);713 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
714714
715 const result = await contract.methods.mint(caller).send();715 const result = await contract.methods.mint(caller).send();
716 const tokenId = result.events.Transfer.returnValues.tokenId;716 const tokenId = result.events.Transfer.returnValues.tokenId;
754 },754 },
755 );755 );
756756
757 const contract = helper.ethNativeContract.collectionById(collection.collectionId, 'rft', caller);757 const contract = await helper.ethNativeContract.collectionById(collection.collectionId, 'rft', caller);
758 const name = await contract.methods.name().call();758 const name = await contract.methods.name().call();
759 expect(name).to.equal('Leviathan');759 expect(name).to.equal('Leviathan');
760 });760 });
779 },779 },
780 );780 );
781781
782 const contract = helper.ethNativeContract.collectionById(collectionId, 'rft', caller);782 const contract = await helper.ethNativeContract.collectionById(collectionId, 'rft', caller);
783 const symbol = await contract.methods.symbol().call();783 const symbol = await contract.methods.symbol().call();
784 expect(symbol).to.equal('12');784 expect(symbol).to.equal('12');
785 });785 });
808 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});808 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
809809
810 const address = helper.ethAddress.fromCollectionId(collection.collectionId);810 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
811 const contract = helper.ethNativeContract.collection(address, 'rft');811 const contract = await helper.ethNativeContract.collection(address, 'rft');
812812
813 const ownerCross = helper.ethCrossAccount.fromAddress(owner);813 const ownerCross = helper.ethCrossAccount.fromAddress(owner);
814814
830 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});830 const token = await collection.mintToken(minter, 100n, {Ethereum: owner});
831831
832 const address = helper.ethAddress.fromCollectionId(collection.collectionId);832 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
833 const contract = helper.ethNativeContract.collection(address, 'rft');833 const contract = await helper.ethNativeContract.collection(address, 'rft');
834834
835 const ownerCross = helper.ethCrossAccount.fromAddress(owner);835 const ownerCross = helper.ethCrossAccount.fromAddress(owner);
836 const recieverCross = helper.ethCrossAccount.fromKeyringPair(receiver);836 const recieverCross = helper.ethCrossAccount.fromKeyringPair(receiver);
modifiedtests/src/eth/reFungibleToken.test.tsdiffbeforeafterboth
38 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});38 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});
39 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});39 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});
4040
41 const contract = helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);41 const contract = await helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);
42 const totalSupply = await contract.methods.totalSupply().call();42 const totalSupply = await contract.methods.totalSupply().call();
43 expect(totalSupply).to.equal('200');43 expect(totalSupply).to.equal('200');
44 });44 });
48 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});48 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});
49 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});49 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});
5050
51 const contract = helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);51 const contract = await helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);
52 const balance = await contract.methods.balanceOf(caller).call();52 const balance = await contract.methods.balanceOf(caller).call();
53 expect(balance).to.equal('200');53 expect(balance).to.equal('200');
54 });54 });
58 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});58 const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'MUON'});
59 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});59 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: caller});
6060
61 const contract = helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);61 const contract = await helper.ethNativeContract.rftTokenById(collection.collectionId, tokenId, caller);
62 const decimals = await contract.methods.decimals().call();62 const decimals = await contract.methods.decimals().call();
63 expect(decimals).to.equal('0');63 expect(decimals).to.equal('0');
64 });64 });
81 const receiver = helper.eth.createAccount();81 const receiver = helper.eth.createAccount();
8282
83 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'Mint collection', 'a', 'b', baseUri);83 const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'Mint collection', 'a', 'b', baseUri);
84 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);84 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
8585
86 const result = await contract.methods.mint(receiver).send();86 const result = await contract.methods.mint(receiver).send();
8787
143 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});143 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
144144
145 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);145 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
146 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);146 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
147147
148 {148 {
149 const result = await contract.methods.approve(spender, 100).send({from: owner});149 const result = await contract.methods.approve(spender, 100).send({from: owner});
172 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});172 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
173173
174 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);174 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
175 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);175 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
176176
177 {177 {
178 const result = await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});178 const result = await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});
216 const token = await collection.mintToken(alice, 100n, {Ethereum: owner});216 const token = await collection.mintToken(alice, 100n, {Ethereum: owner});
217217
218 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);218 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);
219 const tokenEvm = helper.ethNativeContract.rftToken(tokenAddress, owner);219 const tokenEvm = await helper.ethNativeContract.rftToken(tokenAddress, owner);
220220
221 await expect(tokenEvm.methods.approveCross(nonOwnerCross, 20).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');221 await expect(tokenEvm.methods.approveCross(nonOwnerCross, 20).call({from: nonOwner})).to.be.rejectedWith('CantApproveMoreThanOwned');
222 });222 });
239 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});239 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
240240
241 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);241 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
242 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);242 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
243243
244 await contract.methods.approve(spender, 100).send({from: owner});244 await contract.methods.approve(spender, 100).send({from: owner});
245 245
312 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});312 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
313313
314 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);314 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
315 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);315 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
316316
317 // 1. Can transfer to plain ethereum or cross-ethereum account:317 // 1. Can transfer to plain ethereum or cross-ethereum account:
318 {318 {
330 expect(+receiverBalance).to.equal(50);330 expect(+receiverBalance).to.equal(50);
331 }331 }
332 332
333 // 2. Can transfer to cross-substrate account: 333 // 2. Can transfer to cross-substrate account:
334 if(isCross) {334 if(isCross) {
335 const result = await contract.methods.transferCross(receiverCrossSub, 50).send({from: owner});335 const result = await contract.methods.transferCross(receiverCrossSub, 50).send({from: owner});
336 // Check events:336 // Check events:
365 const tokenAddress1 = helper.ethAddress.fromTokenId(collection.collectionId, rftOwner.tokenId);365 const tokenAddress1 = helper.ethAddress.fromTokenId(collection.collectionId, rftOwner.tokenId);
366 const tokenAddress2 = helper.ethAddress.fromTokenId(collection.collectionId, rftReceiver.tokenId);366 const tokenAddress2 = helper.ethAddress.fromTokenId(collection.collectionId, rftReceiver.tokenId);
367 const tokenAddressNonExist = helper.ethAddress.fromTokenId(collection.collectionId, tokenIdNonExist);367 const tokenAddressNonExist = helper.ethAddress.fromTokenId(collection.collectionId, tokenIdNonExist);
368 const tokenEvmOwner = helper.ethNativeContract.rftToken(tokenAddress1, owner);368 const tokenEvmOwner = await helper.ethNativeContract.rftToken(tokenAddress1, owner);
369 const tokenEvmReceiver = helper.ethNativeContract.rftToken(tokenAddress2, owner);369 const tokenEvmReceiver = await helper.ethNativeContract.rftToken(tokenAddress2, owner);
370 const tokenEvmNonExist = helper.ethNativeContract.rftToken(tokenAddressNonExist, owner);370 const tokenEvmNonExist = await helper.ethNativeContract.rftToken(tokenAddressNonExist, owner);
371 371
372 // 1. Can transfer zero amount (EIP-20):372 // 1. Can transfer zero amount (EIP-20):
373 await tokenEvmOwner.methods[testCase](isCross ? receiverCrossEth : receiverEth, 0).send({from: owner});373 await tokenEvmOwner.methods[testCase](isCross ? receiverCrossEth : receiverEth, 0).send({from: owner});
397 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});397 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});
398398
399 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);399 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
400 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);400 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
401401
402 await contract.methods.repartition(200).send({from: owner});402 await contract.methods.repartition(200).send({from: owner});
403 expect(+await contract.methods.balanceOf(owner).call()).to.be.equal(200);403 expect(+await contract.methods.balanceOf(owner).call()).to.be.equal(200);
422 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});422 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});
423423
424 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);424 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
425 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);425 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
426426
427 const result = await contract.methods.repartition(200).send();427 const result = await contract.methods.repartition(200).send();
428428
439 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});439 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});
440440
441 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);441 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
442 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);442 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
443443
444 const result = await contract.methods.repartition(50).send();444 const result = await contract.methods.repartition(50).send();
445 const event = result.events.Transfer;445 const event = result.events.Transfer;
453 const caller = await helper.eth.createAccountWithBalance(donor);453 const caller = await helper.eth.createAccountWithBalance(donor);
454 const receiver = await helper.eth.createAccountWithBalance(donor);454 const receiver = await helper.eth.createAccountWithBalance(donor);
455 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Devastation', '6', '6');455 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(caller, 'Devastation', '6', '6');
456 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', caller);456 const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', caller);
457457
458 const result = await contract.methods.mint(caller).send();458 const result = await contract.methods.mint(caller).send();
459 const tokenId = result.events.Transfer.returnValues.tokenId;459 const tokenId = result.events.Transfer.returnValues.tokenId;
460 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);460 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);
461 const tokenContract = helper.ethNativeContract.rftToken(tokenAddress, caller);461 const tokenContract = await helper.ethNativeContract.rftToken(tokenAddress, caller);
462462
463 await tokenContract.methods.repartition(2).send();463 await tokenContract.methods.repartition(2).send();
464 await tokenContract.methods.transfer(receiver, 1).send();464 await tokenContract.methods.transfer(receiver, 1).send();
491 491
492492
493 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);493 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
494 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);494 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
495495
496 {496 {
497 await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});497 await contract.methods.approveCross(spenderCrossEth, 100).send({from: owner});
504 const {tokenId} = await collection.mintToken(alice, 200n, {Substrate: ownerSub.address});504 const {tokenId} = await collection.mintToken(alice, 200n, {Substrate: ownerSub.address});
505 await collection.approveToken(ownerSub, tokenId, {Ethereum: spender}, 100n);505 await collection.approveToken(ownerSub, tokenId, {Ethereum: spender}, 100n);
506 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);506 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
507 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);507 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
508 508
509 await expect(contract.methods.burnFromCross(ownerSubCross, 50).send({from: spender})).to.be.fulfilled;509 await expect(contract.methods.burnFromCross(ownerSubCross, 50).send({from: spender})).to.be.fulfilled;
510 await expect(contract.methods.burnFromCross(ownerSubCross, 100).send({from: spender})).to.be.rejected;510 await expect(contract.methods.burnFromCross(ownerSubCross, 100).send({from: spender})).to.be.rejected;
533 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});533 const {tokenId} = await collection.mintToken(alice, 100n, {Ethereum: owner});
534534
535 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);535 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
536 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);536 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
537537
538 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, 100).send({from: owner}));538 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.approve(spender, 100).send({from: owner}));
539 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));539 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
546 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});546 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
547547
548 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);548 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
549 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);549 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
550550
551 await contract.methods.approve(spender, 100).send({from: owner});551 await contract.methods.approve(spender, 100).send({from: owner});
552552
561 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});561 const {tokenId} = await collection.mintToken(alice, 200n, {Ethereum: owner});
562562
563 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);563 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, tokenId);
564 const contract = helper.ethNativeContract.rftToken(tokenAddress, owner);564 const contract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
565565
566 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, 100).send({from: owner}));566 const cost = await helper.eth.recordCallFee(owner, () => contract.methods.transfer(receiver, 100).send({from: owner}));
567 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));567 expect(cost < BigInt(0.2 * Number(helper.balance.getOneTokenNominal())));
587 const token = await collection.mintToken(alice, 200n);587 const token = await collection.mintToken(alice, 200n);
588588
589 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);589 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);
590 const contract = helper.ethNativeContract.rftToken(tokenAddress);590 const contract = await helper.ethNativeContract.rftToken(tokenAddress);
591591
592 const events: any = [];592 const events: any = [];
593 contract.events.allEvents((_: any, event: any) => {593 contract.events.allEvents((_: any, event: any) => {
613 await token.approve(alice, {Substrate: bob.address}, 100n);613 await token.approve(alice, {Substrate: bob.address}, 100n);
614614
615 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);615 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);
616 const contract = helper.ethNativeContract.rftToken(tokenAddress);616 const contract = await helper.ethNativeContract.rftToken(tokenAddress);
617617
618 const events: any = [];618 const events: any = [];
619 contract.events.allEvents((_: any, event: any) => {619 contract.events.allEvents((_: any, event: any) => {
644 const token = await collection.mintToken(alice, 200n);644 const token = await collection.mintToken(alice, 200n);
645645
646 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);646 const tokenAddress = helper.ethAddress.fromTokenId(collection.collectionId, token.tokenId);
647 const contract = helper.ethNativeContract.rftToken(tokenAddress);647 const contract = await helper.ethNativeContract.rftToken(tokenAddress);
648648
649 const events: any = [];649 const events: any = [];
650 contract.events.allEvents((_: any, event: any) => {650 contract.events.allEvents((_: any, event: any) => {
678 const owner = await helper.eth.createAccountWithBalance(donor);678 const owner = await helper.eth.createAccountWithBalance(donor);
679679
680 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sands', '', 'GRAIN');680 const {collectionId, collectionAddress} = await helper.eth.createRFTCollection(owner, 'Sands', '', 'GRAIN');
681 const collectionContract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);681 const collectionContract = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
682682
683 const result = await collectionContract.methods.mint(owner).send();683 const result = await collectionContract.methods.mint(owner).send();
684 const tokenId = result.events.Transfer.returnValues.tokenId;684 const tokenId = result.events.Transfer.returnValues.tokenId;
685685
686 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);686 const tokenAddress = helper.ethAddress.fromTokenId(collectionId, tokenId);
687 const tokenContract = helper.ethNativeContract.rftToken(tokenAddress, owner);687 const tokenContract = await helper.ethNativeContract.rftToken(tokenAddress, owner);
688688
689 expect(await tokenContract.methods.parentToken().call()).to.be.equal(collectionAddress);689 expect(await tokenContract.methods.parentToken().call()).to.be.equal(collectionAddress);
690 expect(await tokenContract.methods.parentTokenId().call()).to.be.equal(tokenId);690 expect(await tokenContract.methods.parentTokenId().call()).to.be.equal(tokenId);
modifiedtests/src/eth/sponsoring.test.tsdiffbeforeafterboth
3737
38 const flipper = await helper.eth.deployFlipper(owner);38 const flipper = await helper.eth.deployFlipper(owner);
3939
40 const helpers = helper.ethNativeContract.contractHelpers(owner);40 const helpers = await helper.ethNativeContract.contractHelpers(owner);
4141
42 await helpers.methods.toggleAllowlist(flipper.options.address, true).send({from: owner});42 await helpers.methods.toggleAllowlist(flipper.options.address, true).send({from: owner});
43 await helpers.methods.toggleAllowed(flipper.options.address, caller, true).send({from: owner});43 await helpers.methods.toggleAllowed(flipper.options.address, caller, true).send({from: owner});
7171
72 const collector = await helper.eth.deployCollectorContract(owner);72 const collector = await helper.eth.deployCollectorContract(owner);
7373
74 const helpers = helper.ethNativeContract.contractHelpers(owner);74 const helpers = await helper.ethNativeContract.contractHelpers(owner);
7575
76 await helpers.methods.toggleAllowlist(collector.options.address, true).send({from: owner});76 await helpers.methods.toggleAllowlist(collector.options.address, true).send({from: owner});
77 await helpers.methods.toggleAllowed(collector.options.address, caller, true).send({from: owner});77 await helpers.methods.toggleAllowed(collector.options.address, caller, true).send({from: owner});
modifiedtests/src/eth/tokenProperties.test.tsdiffbeforeafterboth
76 const owner = await helper.eth.createAccountWithBalance(donor);76 const owner = await helper.eth.createAccountWithBalance(donor);
77 77
78 const {collectionId, collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');78 const {collectionId, collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
79 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);79 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
8080
81 await collection.methods.setTokenPropertyPermissions([81 await collection.methods.setTokenPropertyPermissions([
82 ['testKey_0', [82 ['testKey_0', [
139 const caller = await helper.ethCrossAccount.createAccountWithBalance(donor);139 const caller = await helper.ethCrossAccount.createAccountWithBalance(donor);
140 140
141 const {collectionId, collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');141 const {collectionId, collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
142 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);142 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
143 await collection.methods.addCollectionAdminCross(caller).send({from: owner});143 await collection.methods.addCollectionAdminCross(caller).send({from: owner});
144144
145 await collection.methods.setTokenPropertyPermissions([145 await collection.methods.setTokenPropertyPermissions([
226 await collection.addAdmin(alice, {Ethereum: caller});226 await collection.addAdmin(alice, {Ethereum: caller});
227 const token = await collection.mintToken(alice);227 const token = await collection.mintToken(alice);
228 228
229 const collectionEvm = helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller, testCase.method === 'setProperty');229 const collectionEvm = await helper.ethNativeContract.collectionById(collection.collectionId, 'nft', caller, testCase.method === 'setProperty');
230 230
231 await collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller});231 await collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller});
232 232
260 await collection.addAdmin(alice, {Ethereum: caller});260 await collection.addAdmin(alice, {Ethereum: caller});
261 261
262 const address = helper.ethAddress.fromCollectionId(collection.collectionId);262 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
263 const contract = helper.ethNativeContract.collection(address, testCase.mode, caller);263 const contract = await helper.ethNativeContract.collection(address, testCase.mode, caller);
264 264
265 expect(await contract.methods.properties(token.tokenId, []).call()).to.be.deep.equal([]);265 expect(await contract.methods.properties(token.tokenId, []).call()).to.be.deep.equal([]);
266 266
306 await collection.addAdmin(alice, {Ethereum: caller});306 await collection.addAdmin(alice, {Ethereum: caller});
307307
308 const address = helper.ethAddress.fromCollectionId(collection.collectionId);308 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
309 const contract = helper.ethNativeContract.collection(address, testCase.mode, caller);309 const contract = await helper.ethNativeContract.collection(address, testCase.mode, caller);
310310
311 await contract.methods.deleteProperties(token.tokenId, ['testKey', 'testKey_1']).send({from: caller});311 await contract.methods.deleteProperties(token.tokenId, ['testKey', 'testKey_1']).send({from: caller});
312312
329 await token.setProperties(alice, [{key: 'testKey', value: 'testValue'}]);329 await token.setProperties(alice, [{key: 'testKey', value: 'testValue'}]);
330330
331 const address = helper.ethAddress.fromCollectionId(collection.collectionId);331 const address = helper.ethAddress.fromCollectionId(collection.collectionId);
332 const contract = helper.ethNativeContract.collection(address, 'nft', caller);332 const contract = await helper.ethNativeContract.collection(address, 'nft', caller);
333333
334 const value = await contract.methods.property(token.tokenId, 'testKey').call();334 const value = await contract.methods.property(token.tokenId, 'testKey').call();
335 expect(value).to.equal(helper.getWeb3().utils.toHex('testValue'));335 expect(value).to.equal(helper.getWeb3().utils.toHex('testValue'));
374 }); 374 });
375 token = await aliceCollection.mintToken(alice);375 token = await aliceCollection.mintToken(alice);
376 await token.setProperties(alice, tokenProps);376 await token.setProperties(alice, tokenProps);
377 collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);377 collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);
378 });378 });
379 });379 });
380380
384 ].map(testCase =>384 ].map(testCase =>
385 itEth(`[${testCase.method}] Cannot set properties of non-owned collection`, async ({helper}) => {385 itEth(`[${testCase.method}] Cannot set properties of non-owned collection`, async ({helper}) => {
386 caller = await helper.eth.createAccountWithBalance(donor);386 caller = await helper.eth.createAccountWithBalance(donor);
387 collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);387 collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);
388 // Caller not an owner and not an admin, so he cannot set properties:388 // Caller not an owner and not an admin, so he cannot set properties:
389 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');389 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');
390 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller})).to.be.rejected;390 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller})).to.be.rejected;
401 ].map(testCase =>401 ].map(testCase =>
402 itEth(`[${testCase.method}] Cannot set non-existing properties`, async ({helper}) => {402 itEth(`[${testCase.method}] Cannot set non-existing properties`, async ({helper}) => {
403 caller = await helper.eth.createAccountWithBalance(donor);403 caller = await helper.eth.createAccountWithBalance(donor);
404 collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);404 collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, true);
405 await helper.collection.addAdmin(alice, aliceCollection.collectionId, {Ethereum: caller});405 await helper.collection.addAdmin(alice, aliceCollection.collectionId, {Ethereum: caller});
406406
407 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');407 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');
419 ].map(testCase => 419 ].map(testCase =>
420 itEth(`[${testCase.method}] Cannot delete properties of non-owned collection`, async ({helper}) => {420 itEth(`[${testCase.method}] Cannot delete properties of non-owned collection`, async ({helper}) => {
421 caller = await helper.eth.createAccountWithBalance(donor);421 caller = await helper.eth.createAccountWithBalance(donor);
422 collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, testCase.method == 'deleteProperty');422 collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, testCase.method == 'deleteProperty');
423 // Caller not an owner and not an admin, so he cannot set properties:423 // Caller not an owner and not an admin, so he cannot set properties:
424 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');424 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');
425 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller})).to.be.rejected;425 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).send({from: caller})).to.be.rejected;
436 ].map(testCase => 436 ].map(testCase =>
437 itEth(`[${testCase.method}] Cannot delete non-existing properties`, async ({helper}) => {437 itEth(`[${testCase.method}] Cannot delete non-existing properties`, async ({helper}) => {
438 caller = await helper.eth.createAccountWithBalance(donor);438 caller = await helper.eth.createAccountWithBalance(donor);
439 collectionEvm = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, testCase.method == 'deleteProperty');439 collectionEvm = await helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(aliceCollection.collectionId), 'nft', caller, testCase.method == 'deleteProperty');
440 await helper.collection.addAdmin(alice, aliceCollection.collectionId, {Ethereum: caller});440 await helper.collection.addAdmin(alice, aliceCollection.collectionId, {Ethereum: caller});
441 // Caller cannot delete non-existing properties:441 // Caller cannot delete non-existing properties:
442 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');442 await expect(collectionEvm.methods[testCase.method](token.tokenId, ...testCase.methodParams).call({from: caller})).to.be.rejectedWith('NoPermission');
456 const caller = await helper.eth.createAccountWithBalance(donor);456 const caller = await helper.eth.createAccountWithBalance(donor);
457 457
458 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');458 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
459 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);459 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
460 460
461 await expect(collection.methods.setTokenPropertyPermissions([461 await expect(collection.methods.setTokenPropertyPermissions([
462 ['testKey_0', [462 ['testKey_0', [
475 const owner = await helper.eth.createAccountWithBalance(donor);475 const owner = await helper.eth.createAccountWithBalance(donor);
476 476
477 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');477 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
478 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);478 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
479 479
480 await expect(collection.methods.setTokenPropertyPermissions([480 await expect(collection.methods.setTokenPropertyPermissions([
481 // "Space" is invalid character481 // "Space" is invalid character
495 const owner = await helper.eth.createAccountWithBalance(donor);495 const owner = await helper.eth.createAccountWithBalance(donor);
496 496
497 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');497 const {collectionAddress, collectionId} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
498 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);498 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
499 499
500 // 1. Owner sets strict property-permissions:500 // 1. Owner sets strict property-permissions:
501 await collection.methods.setTokenPropertyPermissions([501 await collection.methods.setTokenPropertyPermissions([
531 const owner = await helper.eth.createAccountWithBalance(donor);531 const owner = await helper.eth.createAccountWithBalance(donor);
532 532
533 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');533 const {collectionAddress} = await helper.eth.createCollection(testCase.mode, owner, 'A', 'B', 'C');
534 const collection = helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);534 const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner);
535 535
536 // 1. Owner sets strict property-permissions:536 // 1. Owner sets strict property-permissions:
537 await collection.methods.setTokenPropertyPermissions([537 await collection.methods.setTokenPropertyPermissions([
modifiedtests/src/eth/util/playgrounds/unique.dev.tsdiffbeforeafterboth
3535
36class EthGroupBase {36class EthGroupBase {
37 helper: EthUniqueHelper;37 helper: EthUniqueHelper;
38 gasPrice?: string;
3839
39 constructor(helper: EthUniqueHelper) {40 constructor(helper: EthUniqueHelper) {
40 this.helper = helper;41 this.helper = helper;
41 }42 }
43 async getGasPrice() {
44 if (this.gasPrice)
45 return this.gasPrice;
46 this.gasPrice = await this.helper.getWeb3().eth.getGasPrice();
47 return this.gasPrice;
48 }
42}49}
4350
51function unlimitedMoneyHack<C>(_contract: C): C {
52 const contract = _contract as any;
53 // Hack: fight against gasPrice override
54 for (const method in contract.methods) {
55 const _method = contract.methods[method];
56 contract.methods[method] = function (...args: any) {
57 const encodedCall = _method.call(this, ...args);
58 const _call = encodedCall.call;
59 encodedCall.call = function (...args: any) {
60 if (args.length === 0) {
61 return _call.call(this, {gasPrice: '0'});
62 }
63 // No support for callback/defaultBlock, they may be placed as first argument
64 if (typeof args[0] !== 'object')
65 throw new Error('only options are supported');
66 args[0].gasPrice = '0';
67 return _call.call(this, ...args);
68 };
69 return encodedCall;
70 };
71 }
72 return contract;
73}
4474
45class ContractGroup extends EthGroupBase {75class ContractGroup extends EthGroupBase {
46 async findImports(imports?: ContractImports[]){76 async findImports(imports?: ContractImports[]){
104 data: object,134 data: object,
105 from: signer,135 from: signer,
106 gas: gas ?? this.helper.eth.DEFAULT_GAS,136 gas: gas ?? this.helper.eth.DEFAULT_GAS,
137 gasPrice: await this.getGasPrice(),
107 });138 });
108 return await contract.deploy({data: object}).send({from: signer});139 return unlimitedMoneyHack(await contract.deploy({data: object}).send({from: signer}));
109 }140 }
110141
111}142}
112143
113class NativeContractGroup extends EthGroupBase {144class NativeContractGroup extends EthGroupBase {
114145
115 contractHelpers(caller: string): Contract {146 async contractHelpers(caller: string): Promise<Contract> {
116 const web3 = this.helper.getWeb3();147 const web3 = this.helper.getWeb3();
117 return new web3.eth.Contract(contractHelpersAbi as any, this.helper.getApi().consts.evmContractHelpers.contractAddress.toString(), {from: caller, gas: this.helper.eth.DEFAULT_GAS});148 return unlimitedMoneyHack(new web3.eth.Contract(contractHelpersAbi as any, this.helper.getApi().consts.evmContractHelpers.contractAddress.toString(), {
149 from: caller,
150 gas: this.helper.eth.DEFAULT_GAS,
151 gasPrice: await this.getGasPrice(),
152 }));
118 }153 }
119154
120 collectionHelpers(caller: string) {155 async collectionHelpers(caller: string) {
121 const web3 = this.helper.getWeb3();156 const web3 = this.helper.getWeb3();
122 return new web3.eth.Contract(collectionHelpersAbi as any, this.helper.getApi().consts.common.contractAddress.toString(), {from: caller, gas: this.helper.eth.DEFAULT_GAS});157 return unlimitedMoneyHack(new web3.eth.Contract(collectionHelpersAbi as any, this.helper.getApi().consts.common.contractAddress.toString(), {
158 from: caller,
159 gas: this.helper.eth.DEFAULT_GAS,
160 gasPrice: await this.getGasPrice(),
161 }));
123 }162 }
124163
125 collection(address: string, mode: TCollectionMode, caller?: string, mergeDeprecated = false): Contract {164 async collection(address: string, mode: TCollectionMode, caller?: string, mergeDeprecated = false) {
126 let abi = {165 let abi = {
127 'nft': nonFungibleAbi,166 'nft': nonFungibleAbi,
128 'rft': refungibleAbi,167 'rft': refungibleAbi,
137 abi = [...abi,...deprecated];176 abi = [...abi,...deprecated];
138 }177 }
139 const web3 = this.helper.getWeb3();178 const web3 = this.helper.getWeb3();
140 return new web3.eth.Contract(abi as any, address, {gas: this.helper.eth.DEFAULT_GAS, ...(caller ? {from: caller} : {})});179 return unlimitedMoneyHack(new web3.eth.Contract(abi as any, address, {
180 gas: this.helper.eth.DEFAULT_GAS,
181 gasPrice: await this.getGasPrice(),
182 ...(caller ? {from: caller} : {}),
183 }));
141 }184 }
142185
143 collectionById(collectionId: number, mode: 'nft' | 'rft' | 'ft', caller?: string, mergeDeprecated = false): Contract {186 collectionById(collectionId: number, mode: 'nft' | 'rft' | 'ft', caller?: string, mergeDeprecated = false) {
144 return this.collection(this.helper.ethAddress.fromCollectionId(collectionId), mode, caller, mergeDeprecated);187 return this.collection(this.helper.ethAddress.fromCollectionId(collectionId), mode, caller, mergeDeprecated);
145 }188 }
146189
147 rftToken(address: string, caller?: string): Contract {190 async rftToken(address: string, caller?: string) {
148 const web3 = this.helper.getWeb3();191 const web3 = this.helper.getWeb3();
149 return new web3.eth.Contract(refungibleTokenAbi as any, address, {gas: this.helper.eth.DEFAULT_GAS, ...(caller ? {from: caller} : {})});192 return unlimitedMoneyHack(new web3.eth.Contract(refungibleTokenAbi as any, address, {
193 gas: this.helper.eth.DEFAULT_GAS,
194 gasPrice: await this.getGasPrice(),
195 ...(caller ? {from: caller} : {}),
196 }));
150 }197 }
151198
152 rftTokenById(collectionId: number, tokenId: number, caller?: string): Contract {199 rftTokenById(collectionId: number, tokenId: number, caller?: string) {
153 return this.rftToken(this.helper.ethAddress.fromTokenId(collectionId, tokenId), caller);200 return this.rftToken(this.helper.ethAddress.fromTokenId(collectionId, tokenId), caller);
154 }201 }
155}202}
177 }224 }
178225
179 async getCollectionCreationFee(signer: string) {226 async getCollectionCreationFee(signer: string) {
180 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);227 const collectionHelper = await this.helper.ethNativeContract.collectionHelpers(signer);
181 return await collectionHelper.methods.collectionCreationFee().call();228 return await collectionHelper.methods.collectionCreationFee().call();
182 }229 }
183230
210257
211 async createCollection(mode: TCollectionMode, signer: string, name: string, description: string, tokenPrefix: string, decimals = 18): Promise<{ collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {258 async createCollection(mode: TCollectionMode, signer: string, name: string, description: string, tokenPrefix: string, decimals = 18): Promise<{ collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {
212 const collectionCreationPrice = this.helper.balance.getCollectionCreationPrice();259 const collectionCreationPrice = this.helper.balance.getCollectionCreationPrice();
213 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);260 const collectionHelper = await this.helper.ethNativeContract.collectionHelpers(signer);
214 const functionName: string = this.createCollectionMethodName(mode);261 const functionName: string = this.createCollectionMethodName(mode);
215262
216 const functionParams = mode === 'ft' ? [name, decimals, description, tokenPrefix] : [name, description, tokenPrefix];263 const functionParams = mode === 'ft' ? [name, decimals, description, tokenPrefix] : [name, description, tokenPrefix];
228 }275 }
229276
230 async createERC721MetadataCompatibleNFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {277 async createERC721MetadataCompatibleNFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {
231 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);278 const collectionHelper = await this.helper.ethNativeContract.collectionHelpers(signer);
232279
233 const {collectionId, collectionAddress, events} = await this.createCollection('nft', signer, name, description, tokenPrefix);280 const {collectionId, collectionAddress, events} = await this.createCollection('nft', signer, name, description, tokenPrefix);
234281
246 }293 }
247294
248 async createERC721MetadataCompatibleRFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {295 async createERC721MetadataCompatibleRFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string, events: NormalizedEvent[] }> {
249 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);296 const collectionHelper = await this.helper.ethNativeContract.collectionHelpers(signer);
250297
251 const {collectionId, collectionAddress, events} = await this.createCollection('rft', signer, name, description, tokenPrefix);298 const {collectionId, collectionAddress, events} = await this.createCollection('rft', signer, name, description, tokenPrefix);
252299
modifiedtests/src/maintenanceMode.seqtest.tsdiffbeforeafterboth
232 await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []);232 await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []);
233 expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true;233 expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true;
234234
235 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);235 const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner);
236 const tokenId = await contract.methods.nextTokenId().call();236 const tokenId = await contract.methods.nextTokenId().call();
237 expect(tokenId).to.be.equal('1');237 expect(tokenId).to.be.equal('1');
238238
modifiedtests/yarn.lockdiffbeforeafterboth
4811 randombytes "^2.1.0"4811 randombytes "^2.1.0"
4812 utf8 "3.0.0"4812 utf8 "3.0.0"
48134813
4814web3@^1.8.0:4814web3@^1.8.1:
4815 version "1.8.1"4815 version "1.8.1"
4816 resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.1.tgz#8ea67215ef5f3a6f6d3381800b527242ea22885a"4816 resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.1.tgz#8ea67215ef5f3a6f6d3381800b527242ea22885a"
4817 integrity sha512-tAqFsQhGv340C9OgRJIuoScN7f7wa1tUvsnnDUMt9YE6J4gcm7TV2Uwv+KERnzvV+xgdeuULYpsioRRNKrUvoQ==4817 integrity sha512-tAqFsQhGv340C9OgRJIuoScN7f7wa1tUvsnnDUMt9YE6J4gcm7TV2Uwv+KERnzvV+xgdeuULYpsioRRNKrUvoQ==