diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000122.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000122.ldb
deleted file mode 100644
index 5979f2fdb6..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/000122.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000123.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000123.ldb
deleted file mode 100644
index b03a2ddeb6..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/000123.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000124.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000124.ldb
deleted file mode 100644
index 415499ade2..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/000124.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000125.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000125.ldb
deleted file mode 100644
index 90619e3797..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/000125.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000126.log b/.docker/container-state/atom-testnet-data/data/application.db/000126.log
deleted file mode 100644
index 69d85e6d61..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/000126.log and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000145.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000145.ldb
new file mode 100644
index 0000000000..ffa94a328e
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000145.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000146.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000146.ldb
new file mode 100644
index 0000000000..305c23033d
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000146.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000147.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000147.ldb
new file mode 100644
index 0000000000..4c895dfd75
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000147.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000148.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000148.ldb
new file mode 100644
index 0000000000..44b0a978d0
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000148.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000149.ldb b/.docker/container-state/atom-testnet-data/data/application.db/000149.ldb
new file mode 100644
index 0000000000..a79ab5bddf
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000149.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/000150.log b/.docker/container-state/atom-testnet-data/data/application.db/000150.log
new file mode 100644
index 0000000000..19f3ee4d7e
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/000150.log differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/CURRENT b/.docker/container-state/atom-testnet-data/data/application.db/CURRENT
index 224d52afe7..3f137c99d1 100644
--- a/.docker/container-state/atom-testnet-data/data/application.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/application.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000127
+MANIFEST-000151
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/application.db/CURRENT.bak
index 2b465edb20..3e77273f6e 100644
--- a/.docker/container-state/atom-testnet-data/data/application.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/application.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000121
+MANIFEST-000144
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/LOG b/.docker/container-state/atom-testnet-data/data/application.db/LOG
index 40eb63ea2c..0e35591395 100644
--- a/.docker/container-state/atom-testnet-data/data/application.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/application.db/LOG
@@ -470,3 +470,79 @@
17:59:01.710322 version@stat F·[1 3] S·6MiB[739KiB 5MiB] Sc·[0.25 0.06]
17:59:01.715180 db@janitor F·6 G·0
17:59:01.715196 db@open done T·17.361833ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.858576 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.858710 version@stat F·[1 3] S·6MiB[739KiB 5MiB] Sc·[0.25 0.06]
+05:10:40.858723 db@open opening
+05:10:40.858766 journal@recovery F·1
+05:10:40.858847 journal@recovery recovering @126
+05:10:40.860765 memdb@flush created L0@128 N·905 S·48KiB "s/713,v122410":"s/p..hts,v122409"
+05:10:40.862727 version@stat F·[2 3] S·6MiB[788KiB 5MiB] Sc·[0.50 0.06]
+05:10:40.865397 db@janitor F·7 G·0
+05:10:40.865410 db@open done T·6.680542ms
+05:10:40.972856 table@compaction L0·2 -> L1·3 S·6MiB Q·123136
+05:10:40.990144 table@build created L1@131 N·26043 S·2MiB "s/1,v430":"s/k..Z\xe2w,v101980"
+05:10:41.012132 table@build created L1@132 N·39970 S·2MiB "s/k..\x8e\xd2\x7f,v43561":"s/k..\x86S\xad,v103471"
+05:10:41.027607 table@build created L1@133 N·18990 S·2MiB "s/k..\x82\xb9\x82,v24251":"s/k..\x1a\xf6y,v40651"
+05:10:41.034441 table@build created L1@134 N·9675 S·376KiB "s/k..\x9b\xb8\x1d,v40639":"s/p..hts,v123133"
+05:10:41.034500 version@stat F·[0 4] S·6MiB[0B 6MiB] Sc·[0.00 0.06]
+05:10:41.035116 table@compaction committed F-1 S-28KiB Ke·0 D·3011 T·62.239547ms
+05:10:41.035304 table@remove removed @125
+05:10:41.035687 table@remove removed @122
+05:10:41.036200 table@remove removed @123
+05:10:41.036511 table@remove removed @124
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.533830 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.533977 version@stat F·[0 4] S·6MiB[0B 6MiB] Sc·[0.00 0.06]
+06:44:58.533988 db@open opening
+06:44:58.534025 journal@recovery F·1
+06:44:58.534163 journal@recovery recovering @129
+06:44:58.588185 memdb@flush created L0@135 N·26580 S·1MiB "s/718,v123316":"s/p..hts,v123315"
+06:44:58.588321 version@stat F·[1 4] S·7MiB[1MiB 6MiB] Sc·[0.25 0.06]
+06:44:58.609803 db@janitor F·8 G·1
+06:44:58.609810 db@janitor removing table-128
+06:44:58.609853 db@open done T·75.860223ms
+06:45:28.811214 table@compaction L0·1 -> L1·4 S·7MiB Q·150786
+06:45:28.852586 table@build created L1@138 N·26523 S·2MiB "s/1,v430":"s/k..\xfaW\xa8,v68382"
+06:45:28.897007 table@build created L1@139 N·36709 S·2MiB "s/k..>Uu,v62163":"s/k..\x00\x01\xa4,v70055"
+06:45:28.935643 table@build created L1@140 N·27416 S·2MiB "s/k..\x00\x01\xa5,v70226":"s/k..i\xf8\x8a,v22133"
+06:45:28.974020 table@build created L1@141 N·24774 S·1MiB "s/k..e^\xef,v12056":"s/p..hts,v149714"
+06:45:28.974046 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:45:28.981030 table@compaction committed F-1 S-26KiB Ke·0 D·5836 T·169.796253ms
+06:45:28.981494 table@remove removed @131
+06:45:28.981958 table@remove removed @132
+06:45:28.982402 table@remove removed @133
+06:45:28.982499 table@remove removed @134
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.585282 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.585428 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:45:46.585445 db@open opening
+06:45:46.585484 journal@recovery F·1
+06:45:46.585567 journal@recovery recovering @136
+06:45:46.587472 memdb@flush created L0@142 N·1427 S·80KiB "s/862,v149897":"s/p..hts,v149896"
+06:45:46.588280 version@stat F·[1 4] S·7MiB[80KiB 7MiB] Sc·[0.25 0.08]
+06:45:46.591569 db@janitor F·8 G·1
+06:45:46.591580 db@janitor removing table-135
+06:45:46.591873 db@open done T·6.422715ms
+06:46:51.810714 table@compaction L0·1 -> L1·4 S·7MiB Q·153293
+06:46:51.853844 table@build created L1@145 N·26596 S·2MiB "s/1,v430":"s/k..R\xa9',v46917"
+06:46:51.895701 table@build created L1@146 N·36341 S·2MiB "s/k..\xc8A\xba,v114547":"s/k..\xa2*\xbf,v100466"
+06:46:51.941201 table@build created L1@147 N·28140 S·2MiB "s/k..\xee^\xb5,v100467":"s/k..\xabk`,v122744"
+06:46:51.976205 table@build created L1@148 N·25470 S·1MiB "s/k..̵\xd4,v106125":"s/p..hts,v151142"
+06:46:51.976239 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:46:51.983945 table@compaction committed F-1 S-1KiB Ke·0 D·302 T·173.208828ms
+06:46:51.984409 table@remove removed @138
+06:46:51.984907 table@remove removed @139
+06:46:51.985406 table@remove removed @140
+06:46:51.985884 table@remove removed @141
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.207760 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.207883 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:47:26.207895 db@open opening
+06:47:26.207934 journal@recovery F·1
+06:47:26.208025 journal@recovery recovering @143
+06:47:26.210939 memdb@flush created L0@149 N·2685 S·147KiB "s/869,v151323":"s/p..hts,v151322"
+06:47:26.211271 version@stat F·[1 4] S·8MiB[147KiB 7MiB] Sc·[0.25 0.08]
+06:47:26.214624 db@janitor F·8 G·1
+06:47:26.214639 db@janitor removing table-142
+06:47:26.214702 db@open done T·6.802848ms
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000127 b/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000127
deleted file mode 100644
index 28e3f506f3..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000127 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000151 b/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000151
new file mode 100644
index 0000000000..12bea3a66a
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/application.db/MANIFEST-000151 differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000093.ldb b/.docker/container-state/atom-testnet-data/data/blockstore.db/000093.ldb
deleted file mode 100644
index 8ddf4ae7fb..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/blockstore.db/000093.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000096.ldb b/.docker/container-state/atom-testnet-data/data/blockstore.db/000096.ldb
deleted file mode 100644
index 854fba8071..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/blockstore.db/000096.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000097.log b/.docker/container-state/atom-testnet-data/data/blockstore.db/000097.log
deleted file mode 100644
index b5adbff40d..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/blockstore.db/000097.log and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000109.ldb b/.docker/container-state/atom-testnet-data/data/blockstore.db/000109.ldb
new file mode 100644
index 0000000000..f850f5a1ef
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/blockstore.db/000109.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000110.ldb b/.docker/container-state/atom-testnet-data/data/blockstore.db/000110.ldb
new file mode 100644
index 0000000000..6587bbe2bb
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/blockstore.db/000110.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/000111.log b/.docker/container-state/atom-testnet-data/data/blockstore.db/000111.log
new file mode 100644
index 0000000000..0b0f0c9313
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/blockstore.db/000111.log differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT b/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT
index 95395b28bd..b59a6ba248 100644
--- a/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000098
+MANIFEST-000112
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT.bak
index b993e6cda5..db6fa61f96 100644
--- a/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/blockstore.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000095
+MANIFEST-000108
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/LOG b/.docker/container-state/atom-testnet-data/data/blockstore.db/LOG
index 969bf1ea7a..8d007b4ffd 100644
--- a/.docker/container-state/atom-testnet-data/data/blockstore.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/blockstore.db/LOG
@@ -384,3 +384,57 @@
17:59:01.758668 version@stat F·[1 1] S·684KiB[72KiB 611KiB] Sc·[0.25 0.01]
17:59:01.761454 db@janitor F·4 G·0
17:59:01.761470 db@open done T·5.254513ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.909640 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.909735 version@stat F·[1 1] S·684KiB[72KiB 611KiB] Sc·[0.25 0.01]
+05:10:40.909748 db@open opening
+05:10:40.909778 journal@recovery F·1
+05:10:40.909866 journal@recovery recovering @97
+05:10:40.910854 memdb@flush created L0@99 N·30 S·3KiB "BH:..eed,v4304":"blo..ore,v4301"
+05:10:40.911054 version@stat F·[2 1] S·688KiB[76KiB 611KiB] Sc·[0.50 0.01]
+05:10:40.915558 db@janitor F·5 G·0
+05:10:40.915581 db@open done T·5.827674ms
+05:11:03.981547 table@compaction L0·2 -> L1·1 S·688KiB Q·4350
+05:11:03.987164 table@build created L1@102 N·3586 S·689KiB "BH:..c56,v1346":"blo..ore,v4325"
+05:11:03.987190 version@stat F·[0 1] S·689KiB[0B 689KiB] Sc·[0.00 0.01]
+05:11:03.987766 table@compaction committed F-2 S+1KiB Ke·0 D·74 T·6.185418ms
+05:11:03.987844 table@remove removed @96
+05:11:03.987972 table@remove removed @93
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.661274 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.661360 version@stat F·[0 1] S·689KiB[0B 689KiB] Sc·[0.00 0.01]
+06:44:58.661370 db@open opening
+06:44:58.661399 journal@recovery F·1
+06:44:58.661518 journal@recovery recovering @100
+06:44:58.681937 memdb@flush created L0@103 N·864 S·144KiB "BH:..573,v4461":"blo..ore,v4332"
+06:44:58.682057 version@stat F·[1 1] S·834KiB[144KiB 689KiB] Sc·[0.25 0.01]
+06:44:58.690133 db@janitor F·5 G·1
+06:44:58.690138 db@janitor removing table-99
+06:44:58.690162 db@open done T·28.789108ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.638683 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.638799 version@stat F·[1 1] S·834KiB[144KiB 689KiB] Sc·[0.25 0.01]
+06:45:46.638816 db@open opening
+06:45:46.638854 journal@recovery F·1
+06:45:46.638937 journal@recovery recovering @104
+06:45:46.639741 memdb@flush created L0@106 N·42 S·10KiB "BH:..d0b,v5194":"blo..ore,v5197"
+06:45:46.639858 version@stat F·[2 1] S·844KiB[154KiB 689KiB] Sc·[0.50 0.01]
+06:45:46.642453 db@janitor F·5 G·0
+06:45:46.642465 db@open done T·3.643621ms
+06:46:17.600570 table@compaction L0·2 -> L1·1 S·844KiB Q·5270
+06:46:17.605912 table@build created L1@109 N·4341 S·845KiB "BH:..c56,v1346":"blo..ore,v5233"
+06:46:17.605934 version@stat F·[0 1] S·845KiB[0B 845KiB] Sc·[0.00 0.01]
+06:46:17.607466 table@compaction committed F-2 S+552B Ke·0 D·151 T·6.876138ms
+06:46:17.607551 table@remove removed @103
+06:46:17.607706 table@remove removed @102
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.263473 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.263569 version@stat F·[0 1] S·845KiB[0B 845KiB] Sc·[0.00 0.01]
+06:47:26.263581 db@open opening
+06:47:26.263610 journal@recovery F·1
+06:47:26.263695 journal@recovery recovering @107
+06:47:26.264737 memdb@flush created L0@110 N·90 S·14KiB "BH:..5c8,v5321":"blo..ore,v5240"
+06:47:26.264916 version@stat F·[1 1] S·859KiB[14KiB 845KiB] Sc·[0.25 0.01]
+06:47:26.269660 db@janitor F·5 G·1
+06:47:26.269667 db@janitor removing table-106
+06:47:26.269704 db@open done T·6.119582ms
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000098 b/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000098
deleted file mode 100644
index a7d73d0ef2..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000098 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000112 b/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000112
new file mode 100644
index 0000000000..07d83114fb
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/blockstore.db/MANIFEST-000112 differ
diff --git a/.docker/container-state/atom-testnet-data/data/cs.wal/wal b/.docker/container-state/atom-testnet-data/data/cs.wal/wal
index 61a997fc44..58106e91fa 100644
Binary files a/.docker/container-state/atom-testnet-data/data/cs.wal/wal and b/.docker/container-state/atom-testnet-data/data/cs.wal/wal differ
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/000068.log b/.docker/container-state/atom-testnet-data/data/evidence.db/000076.log
similarity index 100%
rename from .docker/container-state/atom-testnet-data/data/evidence.db/000068.log
rename to .docker/container-state/atom-testnet-data/data/evidence.db/000076.log
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT b/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT
index 5893b8f83b..c7a124bfc3 100644
--- a/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000069
+MANIFEST-000077
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT.bak
index 0094dacbb8..d2ea14ced0 100644
--- a/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/evidence.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000067
+MANIFEST-000075
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/LOG b/.docker/container-state/atom-testnet-data/data/evidence.db/LOG
index 5ab563f5bc..e4d4d0631a 100644
--- a/.docker/container-state/atom-testnet-data/data/evidence.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/evidence.db/LOG
@@ -310,3 +310,39 @@
17:59:01.774745 version@stat F·[] S·0B[] Sc·[]
17:59:01.777793 db@janitor F·2 G·0
17:59:01.777805 db@open done T·4.373546ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.928961 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.929028 version@stat F·[] S·0B[] Sc·[]
+05:10:40.929037 db@open opening
+05:10:40.929066 journal@recovery F·1
+05:10:40.929428 journal@recovery recovering @68
+05:10:40.931225 version@stat F·[] S·0B[] Sc·[]
+05:10:40.934658 db@janitor F·2 G·0
+05:10:40.934670 db@open done T·5.628153ms
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.730742 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.730819 version@stat F·[] S·0B[] Sc·[]
+06:44:58.730838 db@open opening
+06:44:58.730866 journal@recovery F·1
+06:44:58.732739 journal@recovery recovering @70
+06:44:58.734542 version@stat F·[] S·0B[] Sc·[]
+06:44:58.749764 db@janitor F·2 G·0
+06:44:58.749779 db@open done T·18.938744ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.656897 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.656961 version@stat F·[] S·0B[] Sc·[]
+06:45:46.656972 db@open opening
+06:45:46.656996 journal@recovery F·1
+06:45:46.657075 journal@recovery recovering @72
+06:45:46.657200 version@stat F·[] S·0B[] Sc·[]
+06:45:46.659741 db@janitor F·2 G·0
+06:45:46.659750 db@open done T·2.774794ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.282862 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.282927 version@stat F·[] S·0B[] Sc·[]
+06:47:26.282937 db@open opening
+06:47:26.282964 journal@recovery F·1
+06:47:26.283046 journal@recovery recovering @74
+06:47:26.283185 version@stat F·[] S·0B[] Sc·[]
+06:47:26.285765 db@janitor F·2 G·0
+06:47:26.285779 db@open done T·2.837874ms
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000069 b/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000069
deleted file mode 100644
index 3833569575..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000069 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000077 b/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000077
new file mode 100644
index 0000000000..dd7fb6cd3d
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/evidence.db/MANIFEST-000077 differ
diff --git a/.docker/container-state/atom-testnet-data/data/priv_validator_state.json b/.docker/container-state/atom-testnet-data/data/priv_validator_state.json
index 99546706e3..56899e7a9a 100644
--- a/.docker/container-state/atom-testnet-data/data/priv_validator_state.json
+++ b/.docker/container-state/atom-testnet-data/data/priv_validator_state.json
@@ -1,7 +1,7 @@
{
- "height": "717",
+ "height": "888",
"round": 0,
"step": 3,
- "signature": "XLwGIxJpiVU0AYl646G7zqXk0v/ihlfAwKP5BvHmMfy6UQCzeW/rjtuVoS+2i7KT0RVUfXc7dvGYOnpuAvSTAA==",
- "signbytes": "76080211CD0200000000000022480A20911EABA0078B62D4B55F3B349F0719F53B0D39EEE4064EA626437B86D219A37F122408011220AB2248EBDDC8ACA32BCF90D60E19DA9B4A42F2DD6A8957FA3D7337C1AC73151A2A0C08FEA296B40610F7CFDA82033211636F736D6F736875622D746573746E6574"
+ "signature": "XskRDe70STOW5qxh60WQ2GR/2x2sDaGqPnAsTb7icGjekGky1w7kO/b3nU+XzmQVDaQcYHjb8W1JRO4ue9TeAA==",
+ "signbytes": "76080211780300000000000022480A20F5676C89CEA03B617C53FCD05015F465FB2C14107310553F186D423A022E05E2122408011220AA62CEBCC34EFE61C30D5917935B2224E39D5019F92CE313CB8514F584F6D54E2A0C0897E6C2B80610EBD7E698013211636F736D6F736875622D746573746E6574"
}
\ No newline at end of file
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/000068.log b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/000076.log
similarity index 100%
rename from .docker/container-state/atom-testnet-data/data/snapshots/metadata.db/000068.log
rename to .docker/container-state/atom-testnet-data/data/snapshots/metadata.db/000076.log
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT
index 5893b8f83b..c7a124bfc3 100644
--- a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000069
+MANIFEST-000077
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT.bak
index 0094dacbb8..d2ea14ced0 100644
--- a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000067
+MANIFEST-000075
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/LOG b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/LOG
index 2638185812..108e3e10d4 100644
--- a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/LOG
@@ -310,3 +310,39 @@
17:59:01.716921 version@stat F·[] S·0B[] Sc·[]
17:59:01.720432 db@janitor F·2 G·0
17:59:01.720442 db@open done T·3.774542ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.866907 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.866974 version@stat F·[] S·0B[] Sc·[]
+05:10:40.866984 db@open opening
+05:10:40.867009 journal@recovery F·1
+05:10:40.867092 journal@recovery recovering @68
+05:10:40.867215 version@stat F·[] S·0B[] Sc·[]
+05:10:40.871101 db@janitor F·2 G·0
+05:10:40.871109 db@open done T·4.121771ms
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.611297 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.611385 version@stat F·[] S·0B[] Sc·[]
+06:44:58.611394 db@open opening
+06:44:58.611420 journal@recovery F·1
+06:44:58.611708 journal@recovery recovering @70
+06:44:58.613594 version@stat F·[] S·0B[] Sc·[]
+06:44:58.621731 db@janitor F·2 G·0
+06:44:58.621742 db@open done T·10.34492ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.593245 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.593314 version@stat F·[] S·0B[] Sc·[]
+06:45:46.593325 db@open opening
+06:45:46.593352 journal@recovery F·1
+06:45:46.595203 journal@recovery recovering @72
+06:45:46.597207 version@stat F·[] S·0B[] Sc·[]
+06:45:46.599821 db@janitor F·2 G·0
+06:45:46.599833 db@open done T·6.503955ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.215962 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.216036 version@stat F·[] S·0B[] Sc·[]
+06:47:26.216047 db@open opening
+06:47:26.216083 journal@recovery F·1
+06:47:26.217966 journal@recovery recovering @74
+06:47:26.220147 version@stat F·[] S·0B[] Sc·[]
+06:47:26.222797 db@janitor F·2 G·0
+06:47:26.222807 db@open done T·6.756568ms
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000069 b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000069
deleted file mode 100644
index 3833569575..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000069 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000077 b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000077
new file mode 100644
index 0000000000..dd7fb6cd3d
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/snapshots/metadata.db/MANIFEST-000077 differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/000114.ldb b/.docker/container-state/atom-testnet-data/data/state.db/000114.ldb
deleted file mode 100644
index fb954e1eb4..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/state.db/000114.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/000129.ldb b/.docker/container-state/atom-testnet-data/data/state.db/000129.ldb
new file mode 100644
index 0000000000..b38bc5d97d
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/state.db/000129.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/000115.log b/.docker/container-state/atom-testnet-data/data/state.db/000130.log
similarity index 68%
rename from .docker/container-state/atom-testnet-data/data/state.db/000115.log
rename to .docker/container-state/atom-testnet-data/data/state.db/000130.log
index 5eec6803eb..bbb9c9ebd2 100644
Binary files a/.docker/container-state/atom-testnet-data/data/state.db/000115.log and b/.docker/container-state/atom-testnet-data/data/state.db/000130.log differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/000113.ldb b/.docker/container-state/atom-testnet-data/data/state.db/000132.ldb
similarity index 63%
rename from .docker/container-state/atom-testnet-data/data/state.db/000113.ldb
rename to .docker/container-state/atom-testnet-data/data/state.db/000132.ldb
index 4775c1b3ee..e589a7bb5d 100644
Binary files a/.docker/container-state/atom-testnet-data/data/state.db/000113.ldb and b/.docker/container-state/atom-testnet-data/data/state.db/000132.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/CURRENT b/.docker/container-state/atom-testnet-data/data/state.db/CURRENT
index 2b6390e186..d5731e9f98 100644
--- a/.docker/container-state/atom-testnet-data/data/state.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/state.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000116
+MANIFEST-000131
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/state.db/CURRENT.bak
index b59a6ba248..224d52afe7 100644
--- a/.docker/container-state/atom-testnet-data/data/state.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/state.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000112
+MANIFEST-000127
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/LOG b/.docker/container-state/atom-testnet-data/data/state.db/LOG
index 2c9dc925a4..333f86a5c7 100644
--- a/.docker/container-state/atom-testnet-data/data/state.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/state.db/LOG
@@ -441,3 +441,67 @@
17:59:01.766489 db@janitor F·5 G·1
17:59:01.766499 db@janitor removing table-110
17:59:01.766531 db@open done T·4.87064ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.915711 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.915810 version@stat F·[1 1] S·327KiB[83KiB 243KiB] Sc·[0.25 0.00]
+05:10:40.915825 db@open opening
+05:10:40.915868 journal@recovery F·1
+05:10:40.918284 journal@recovery recovering @115
+05:10:40.919542 memdb@flush created L0@117 N·26 S·5KiB "abc..713,v3635":"val..719,v3657"
+05:10:40.919668 version@stat F·[2 1] S·332KiB[88KiB 243KiB] Sc·[0.50 0.00]
+05:10:40.923785 db@janitor F·5 G·0
+05:10:40.923796 db@open done T·7.966161ms
+05:11:00.958934 table@compaction L0·2 -> L1·1 S·332KiB Q·3676
+05:11:00.962394 table@build created L1@120 N·2158 S·280KiB "abc..y:1,v7":"val..:99,v491"
+05:11:00.962424 version@stat F·[0 1] S·280KiB[0B 280KiB] Sc·[0.00 0.00]
+05:11:00.964049 table@compaction committed F-2 S-51KiB Ke·0 D·150 T·5.093449ms
+05:11:00.964119 table@remove removed @114
+05:11:00.964186 table@remove removed @113
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.690228 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.690292 version@stat F·[0 1] S·280KiB[0B 280KiB] Sc·[0.00 0.00]
+06:44:58.690301 db@open opening
+06:44:58.690327 journal@recovery F·1
+06:44:58.690411 journal@recovery recovering @118
+06:44:58.698458 memdb@flush created L0@121 N·721 S·152KiB "abc..718,v3662":"val..863,v4379"
+06:44:58.698595 version@stat F·[1 1] S·433KiB[152KiB 280KiB] Sc·[0.25 0.00]
+06:44:58.713491 db@janitor F·5 G·1
+06:44:58.713496 db@janitor removing table-117
+06:44:58.713521 db@open done T·23.21798ms
+06:45:33.812957 table@compaction L0·1 -> L1·1 S·433KiB Q·4413
+06:45:33.817194 table@build created L1@124 N·2590 S·345KiB "abc..y:1,v7":"val..:99,v491"
+06:45:33.817219 version@stat F·[0 1] S·345KiB[0B 345KiB] Sc·[0.00 0.00]
+06:45:33.818740 table@compaction committed F-1 S-88KiB Ke·0 D·289 T·5.758129ms
+06:45:33.818856 table@remove removed @120
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.642590 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.642660 version@stat F·[0 1] S·345KiB[0B 345KiB] Sc·[0.00 0.00]
+06:45:46.642670 db@open opening
+06:45:46.642701 journal@recovery F·1
+06:45:46.642793 journal@recovery recovering @122
+06:45:46.643923 memdb@flush created L0@125 N·36 S·14KiB "abc..862,v4384":"val..870,v4416"
+06:45:46.644184 version@stat F·[1 1] S·359KiB[14KiB 345KiB] Sc·[0.25 0.00]
+06:45:46.648159 db@janitor F·5 G·1
+06:45:46.648166 db@janitor removing table-121
+06:45:46.648229 db@open done T·5.554767ms
+06:46:12.624281 table@compaction L0·1 -> L1·1 S·359KiB Q·4445
+06:46:12.628139 table@build created L1@128 N·2611 S·351KiB "abc..y:1,v7":"val..:99,v491"
+06:46:12.628162 version@stat F·[0 1] S·351KiB[0B 351KiB] Sc·[0.00 0.00]
+06:46:12.628755 table@compaction committed F-1 S-7KiB Ke·0 D·15 T·4.453088ms
+06:46:12.628879 table@remove removed @124
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.269795 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.269871 version@stat F·[0 1] S·351KiB[0B 351KiB] Sc·[0.00 0.00]
+06:47:26.269882 db@open opening
+06:47:26.269915 journal@recovery F·1
+06:47:26.270011 journal@recovery recovering @126
+06:47:26.270915 memdb@flush created L0@129 N·76 S·13KiB "abc..869,v4421":"val..885,v4493"
+06:47:26.271251 version@stat F·[1 1] S·364KiB[13KiB 351KiB] Sc·[0.25 0.00]
+06:47:26.274125 db@janitor F·5 G·1
+06:47:26.274133 db@janitor removing table-125
+06:47:26.274169 db@open done T·4.283147ms
+06:47:51.337900 table@compaction L0·1 -> L1·1 S·364KiB Q·4522
+06:47:51.342188 table@build created L1@132 N·2656 S·356KiB "abc..y:1,v7":"val..:99,v491"
+06:47:51.342209 version@stat F·[0 1] S·356KiB[0B 356KiB] Sc·[0.00 0.00]
+06:47:51.343789 table@compaction committed F-1 S-7KiB Ke·0 D·31 T·5.87117ms
+06:47:51.343944 table@remove removed @128
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000116 b/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000116
deleted file mode 100644
index 41565f0c98..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000116 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000131 b/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000131
new file mode 100644
index 0000000000..f5239ae69c
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/state.db/MANIFEST-000131 differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000070.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000070.ldb
deleted file mode 100644
index 13cc2bd346..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/000070.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000071.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000071.ldb
deleted file mode 100644
index c7dcbe51d4..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/000071.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000090.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000090.ldb
deleted file mode 100644
index 32bb2004b9..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/000090.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000095.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000095.ldb
deleted file mode 100644
index f22e4b3e9b..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/000095.ldb and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000096.log b/.docker/container-state/atom-testnet-data/data/tx_index.db/000096.log
deleted file mode 100644
index a57e507e95..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/000096.log and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000101.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000101.ldb
new file mode 100644
index 0000000000..708a3e9b1f
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/000101.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000102.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000102.ldb
new file mode 100644
index 0000000000..881b5395e2
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/000102.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000105.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000105.ldb
new file mode 100644
index 0000000000..f6ef7556d8
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/000105.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000108.ldb b/.docker/container-state/atom-testnet-data/data/tx_index.db/000108.ldb
new file mode 100644
index 0000000000..5e5fa0b9d8
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/000108.ldb differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/000109.log b/.docker/container-state/atom-testnet-data/data/tx_index.db/000109.log
new file mode 100644
index 0000000000..d42d24bdef
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/000109.log differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT b/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT
index af00d34b29..a451d53d04 100644
--- a/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT
+++ b/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000097
+MANIFEST-000110
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT.bak b/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT.bak
index 0ab25fa07f..aecd689375 100644
--- a/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT.bak
+++ b/.docker/container-state/atom-testnet-data/data/tx_index.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000094
+MANIFEST-000107
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/LOG b/.docker/container-state/atom-testnet-data/data/tx_index.db/LOG
index 58ce5d3c39..30dd8dbfc5 100644
--- a/.docker/container-state/atom-testnet-data/data/tx_index.db/LOG
+++ b/.docker/container-state/atom-testnet-data/data/tx_index.db/LOG
@@ -377,3 +377,52 @@
17:59:01.769561 version@stat F·[3 1] S·414KiB[61KiB 352KiB] Sc·[0.75 0.00]
17:59:01.773003 db@janitor F·6 G·0
17:59:01.773016 db@open done T·5.882999ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.924218 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.924296 version@stat F·[3 1] S·414KiB[61KiB 352KiB] Sc·[0.75 0.00]
+05:10:40.924308 db@open opening
+05:10:40.924344 journal@recovery F·1
+05:10:40.924448 journal@recovery recovering @96
+05:10:40.925246 memdb@flush created L0@98 N·145 S·2KiB "blo..\x01\xc2\xc9,v21136":"blo..\x00\x01\xb9,v21262"
+05:10:40.925383 version@stat F·[4 1] S·417KiB[64KiB 352KiB] Sc·[1.00 0.00]
+05:10:40.928590 db@janitor F·7 G·0
+05:10:40.928600 db@open done T·4.288823ms
+05:10:40.928646 table@compaction L0·4 -> L1·1 S·417KiB Q·21281
+05:10:40.938446 table@build created L1@101 N·21257 S·415KiB "\x04\x92\xf2..\v,\x8e,v12512":"\xef\xb9<..\x9a\x1b\x86,v4043"
+05:10:40.938478 version@stat F·[0 1] S·415KiB[0B 415KiB] Sc·[0.00 0.00]
+05:10:40.939072 table@compaction committed F-4 S-1KiB Ke·0 D·0 T·10.406849ms
+05:10:40.939148 table@remove removed @95
+05:10:40.939176 table@remove removed @90
+05:10:40.939200 table@remove removed @71
+05:10:40.939286 table@remove removed @70
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.713909 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.714036 version@stat F·[0 1] S·415KiB[0B 415KiB] Sc·[0.00 0.00]
+06:44:58.714046 db@open opening
+06:44:58.714080 journal@recovery F·1
+06:44:58.714171 journal@recovery recovering @99
+06:44:58.717466 memdb@flush created L0@102 N·4372 S·103KiB "!\xe6\x14..CN\x88,v25566":"\xf8@\xbc..Ï\xfe,v23666"
+06:44:58.717707 version@stat F·[1 1] S·518KiB[103KiB 415KiB] Sc·[0.25 0.00]
+06:44:58.730090 db@janitor F·5 G·1
+06:44:58.730096 db@janitor removing table-98
+06:44:58.730122 db@open done T·16.072878ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.648667 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.648738 version@stat F·[1 1] S·518KiB[103KiB 415KiB] Sc·[0.25 0.00]
+06:45:46.648749 db@open opening
+06:45:46.648777 journal@recovery F·1
+06:45:46.650719 journal@recovery recovering @103
+06:45:46.651755 memdb@flush created L0@105 N·264 S·12KiB "blo..\x01\xc3^,v25655":"\xa0i\xe8..f\x92\x12,v25726"
+06:45:46.653729 version@stat F·[2 1] S·531KiB[116KiB 415KiB] Sc·[0.50 0.00]
+06:45:46.656293 db@janitor F·5 G·0
+06:45:46.656305 db@open done T·7.551795ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.274594 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.274675 version@stat F·[2 1] S·531KiB[116KiB 415KiB] Sc·[0.50 0.00]
+06:47:26.274686 db@open opening
+06:47:26.274721 journal@recovery F·1
+06:47:26.276698 journal@recovery recovering @106
+06:47:26.277708 memdb@flush created L0@108 N·435 S·7KiB "blo..\x01\xc3e,v25920":"blo..\x01\xc0\xbb,v26336"
+06:47:26.279711 version@stat F·[3 1] S·538KiB[123KiB 415KiB] Sc·[0.75 0.00]
+06:47:26.282380 db@janitor F·6 G·0
+06:47:26.282394 db@open done T·7.703855ms
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000097 b/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000097
deleted file mode 100644
index bbde422037..0000000000
Binary files a/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000097 and /dev/null differ
diff --git a/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000110 b/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000110
new file mode 100644
index 0000000000..422b4dc63e
Binary files /dev/null and b/.docker/container-state/atom-testnet-data/data/tx_index.db/MANIFEST-000110 differ
diff --git a/.docker/container-state/ibc-relayer-data/config/config.yaml b/.docker/container-state/ibc-relayer-data/config/config.yaml
index b31a94b30c..77886d2f40 100755
--- a/.docker/container-state/ibc-relayer-data/config/config.yaml
+++ b/.docker/container-state/ibc-relayer-data/config/config.yaml
@@ -10,12 +10,13 @@ chains:
atom:
type: cosmos
value:
- key-directory: /home/nimda/.relayer/keys/cosmoshub-testnet
+ key-directory: /root/.relayer/keys/cosmoshub-testnet
key: test2
chain-id: cosmoshub-testnet
rpc-addr: http://127.0.0.1:26658
account-prefix: cosmos
keyring-backend: test
+ dynamic-gas-price: false
gas-adjustment: 1.8
gas-prices: 0.5uatom
min-gas-amount: 0
@@ -35,12 +36,13 @@ chains:
nucleus:
type: cosmos
value:
- key-directory: /home/nimda/.relayer/keys/nucleus-testnet
+ key-directory: /root/.relayer/keys/nucleus-testnet
key: test1
chain-id: nucleus-testnet
rpc-addr: http://127.0.0.1:26657
account-prefix: nuc
keyring-backend: test
+ dynamic-gas-price: false
gas-adjustment: 1.8
gas-prices: 0.5unucl
min-gas-amount: 0
@@ -61,12 +63,12 @@ paths:
nucleus-atom:
src:
chain-id: nucleus-testnet
- client-id: 07-tendermint-1
- connection-id: connection-1
+ client-id: 07-tendermint-2
+ connection-id: connection-2
dst:
chain-id: cosmoshub-testnet
- client-id: 07-tendermint-1
- connection-id: connection-1
+ client-id: 07-tendermint-2
+ connection-id: connection-2
src-channel-filter:
rule: ""
channel-list: []
diff --git a/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-01059173227530771155 b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-01059173227530771155
new file mode 100644
index 0000000000..256a04df6e
--- /dev/null
+++ b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-01059173227530771155
@@ -0,0 +1,4 @@
+{
+ "key": "f431aeec40157170c0988400",
+ "addrs": []
+}
\ No newline at end of file
diff --git a/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02330869765942450674 b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02330869765942450674
new file mode 100644
index 0000000000..256a04df6e
--- /dev/null
+++ b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02330869765942450674
@@ -0,0 +1,4 @@
+{
+ "key": "f431aeec40157170c0988400",
+ "addrs": []
+}
\ No newline at end of file
diff --git a/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02840196522853014193 b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02840196522853014193
new file mode 100644
index 0000000000..256a04df6e
--- /dev/null
+++ b/.docker/container-state/nucleus-testnet-data/config/write-file-atomic-02840196522853014193
@@ -0,0 +1,4 @@
+{
+ "key": "f431aeec40157170c0988400",
+ "addrs": []
+}
\ No newline at end of file
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000124.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000124.ldb
deleted file mode 100644
index 626e16207a..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000124.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000125.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000125.ldb
deleted file mode 100644
index 3590e1577d..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000125.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000126.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000126.ldb
deleted file mode 100644
index c9145d6ba1..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000126.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000127.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000127.ldb
deleted file mode 100644
index d35ee8f42a..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000127.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000130.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000130.ldb
deleted file mode 100644
index 70efc2fb72..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000130.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000131.log b/.docker/container-state/nucleus-testnet-data/data/application.db/000131.log
deleted file mode 100644
index 84e0725816..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/000131.log and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000154.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000154.ldb
new file mode 100644
index 0000000000..a8a9d5d14a
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000154.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000155.log b/.docker/container-state/nucleus-testnet-data/data/application.db/000155.log
new file mode 100644
index 0000000000..eb4ce2123b
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000155.log differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000157.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000157.ldb
new file mode 100644
index 0000000000..d2efabcda6
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000157.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000158.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000158.ldb
new file mode 100644
index 0000000000..0f54f43bcb
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000158.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000159.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000159.ldb
new file mode 100644
index 0000000000..cb9fafd62b
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000159.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/000160.ldb b/.docker/container-state/nucleus-testnet-data/data/application.db/000160.ldb
new file mode 100644
index 0000000000..a8417c6b23
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/000160.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT
index c39c670731..c16f179ffd 100644
--- a/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000132
+MANIFEST-000156
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT.bak
index ea072ca932..1dec270d08 100644
--- a/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/application.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000129
+MANIFEST-000149
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/LOG b/.docker/container-state/nucleus-testnet-data/data/application.db/LOG
index a806f60292..d5977bfc9f 100644
--- a/.docker/container-state/nucleus-testnet-data/data/application.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/application.db/LOG
@@ -461,3 +461,91 @@
17:59:01.664278 version@stat F·[1 4] S·6MiB[526KiB 6MiB] Sc·[0.25 0.06]
17:59:01.667135 db@janitor F·7 G·0
17:59:01.667155 db@open done T·11.159872ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.905554 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.905681 version@stat F·[1 4] S·6MiB[526KiB 6MiB] Sc·[0.25 0.06]
+05:10:40.905693 db@open opening
+05:10:40.905729 journal@recovery F·1
+05:10:40.905932 journal@recovery recovering @131
+05:10:40.907646 memdb@flush created L0@133 N·625 S·34KiB "s/1032,v129146":"s/p..hts,v129145"
+05:10:40.907787 version@stat F·[2 4] S·6MiB[560KiB 6MiB] Sc·[0.50 0.06]
+05:10:40.912478 db@janitor F·8 G·0
+05:10:40.912492 db@open done T·6.794072ms
+05:10:40.980773 table@compaction L0·2 -> L1·4 S·6MiB Q·129648
+05:10:40.997373 table@build created L1@136 N·24265 S·2MiB "s/1,v499":"s/k..\xbb\x1da,v114109"
+05:10:41.023402 table@build created L1@137 N·42517 S·2MiB "s/k..\v\xd1\xd9,v114104":"s/k..\x926\x81,v45485"
+05:10:41.037226 table@build created L1@138 N·15792 S·2MiB "s/k..\xce\t\xe8,v127197":"s/k..A\xb8j,v10829"
+05:10:41.043103 table@build created L1@139 N·14633 S·724KiB "s/k..\x0f\xbb',v65315":"s/p..hts,v129645"
+05:10:41.043137 version@stat F·[0 4] S·6MiB[0B 6MiB] Sc·[0.00 0.07]
+05:10:41.043726 table@compaction committed F-2 S-8KiB Ke·0 D·2346 T·62.926263ms
+05:10:41.043888 table@remove removed @130
+05:10:41.044256 table@remove removed @124
+05:10:41.044737 table@remove removed @125
+05:10:41.045200 table@remove removed @126
+05:10:41.045256 table@remove removed @127
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.635757 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.635904 version@stat F·[0 4] S·6MiB[0B 6MiB] Sc·[0.00 0.07]
+06:44:58.635919 db@open opening
+06:44:58.635952 journal@recovery F·1
+06:44:58.636043 journal@recovery recovering @134
+06:44:58.675589 memdb@flush created L0@140 N·18960 S·1MiB "s/1037,v129772":"s/p..hts,v129771"
+06:44:58.675735 version@stat F·[1 4] S·7MiB[1MiB 6MiB] Sc·[0.25 0.07]
+06:44:58.690561 db@janitor F·8 G·1
+06:44:58.690567 db@janitor removing table-133
+06:44:58.690608 db@open done T·54.685771ms
+06:45:23.851285 table@compaction L0·1 -> L1·4 S·7MiB Q·149292
+06:45:23.863708 table@build created L1@143 N·20853 S·2MiB "s/1,v499":"s/k..\x90\xb6\xf1,v46843"
+06:45:23.878194 table@build created L1@144 N·34793 S·2MiB "s/k..^\xb3\xfc,v46849":"s/k..\xf5X*,v124880"
+06:45:23.891282 table@build created L1@145 N·32649 S·2MiB "s/k..\\\x8d?,v124877":"s/k..\xf6OO,v108777"
+06:45:23.901184 table@build created L1@146 N·23324 S·1MiB "s/k..\xbe\x90\x84,v72822":"s/p..hts,v148606"
+06:45:23.901206 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:45:23.901783 table@compaction committed F-1 S-22KiB Ke·0 D·4548 T·50.479285ms
+06:45:23.902188 table@remove removed @136
+06:45:23.902594 table@remove removed @137
+06:45:23.903127 table@remove removed @138
+06:45:23.903277 table@remove removed @139
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.632694 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.632829 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:45:46.632841 db@open opening
+06:45:46.632873 journal@recovery F·1
+06:45:46.633065 journal@recovery recovering @141
+06:45:46.634967 memdb@flush created L0@147 N·1058 S·59KiB "s/1181,v148733":"s/p..hts,v148732"
+06:45:46.635106 version@stat F·[1 4] S·7MiB[59KiB 7MiB] Sc·[0.25 0.08]
+06:45:46.637686 db@janitor F·8 G·1
+06:45:46.637692 db@janitor removing table-140
+06:45:46.637923 db@open done T·5.078403ms
+06:46:51.996792 table@compaction L0·1 -> L1·4 S·7MiB Q·151169
+06:46:52.036950 table@build created L1@150 N·20616 S·2MiB "s/1,v499":"s/k..w\x17D,v41895"
+06:46:52.085978 table@build created L1@151 N·34742 S·2MiB "s/k..\x02F\xf2,v41900":"s/k..\xffQ{,v117451"
+06:46:52.135406 table@build created L1@152 N·33250 S·2MiB "s/k..\x96\xeeu,v117450":"s/k..\x1c\xb9t,v75679"
+06:46:52.173716 table@build created L1@153 N·23832 S·1MiB "s/k..{\x9f\xd9,v41367":"s/p..hts,v149665"
+06:46:52.173757 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:46:52.181047 table@compaction committed F-1 S+1KiB Ke·0 D·237 T·184.227992ms
+06:46:52.181530 table@remove removed @143
+06:46:52.182010 table@remove removed @144
+06:46:52.182474 table@remove removed @145
+06:46:52.182906 table@remove removed @146
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.253548 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.253681 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:47:26.253693 db@open opening
+06:47:26.253724 journal@recovery F·1
+06:47:26.253926 journal@recovery recovering @148
+06:47:26.256527 memdb@flush created L0@154 N·1873 S·100KiB "s/1188,v149792":"s/p..hts,v149791"
+06:47:26.256677 version@stat F·[1 4] S·7MiB[100KiB 7MiB] Sc·[0.25 0.08]
+06:47:26.259838 db@janitor F·8 G·1
+06:47:26.259845 db@janitor removing table-147
+06:47:26.259895 db@open done T·6.196873ms
+06:47:51.346605 table@compaction L0·1 -> L1·4 S·7MiB Q·152042
+06:47:51.358754 table@build created L1@157 N·20319 S·2MiB "s/1,v499":"s/k..7\xcc\xf2,v36191"
+06:47:51.372848 table@build created L1@158 N·34591 S·2MiB "s/k..8\x00\x1e,v36192":"s/k..\xfd<\x97,v106679"
+06:47:51.386025 table@build created L1@159 N·34293 S·2MiB "s/k..\xe4\x8ej,v106681":"s/k..@m\xdb,v129528"
+06:47:51.396388 table@build created L1@160 N·24643 S·1MiB "s/k..\xdb\xee\x8f,v145753":"s/p..hts,v151539"
+06:47:51.396408 version@stat F·[0 4] S·7MiB[0B 7MiB] Sc·[0.00 0.08]
+06:47:51.396980 table@compaction committed F-1 S-1KiB Ke·0 D·467 T·50.358509ms
+06:47:51.397411 table@remove removed @150
+06:47:51.397858 table@remove removed @151
+06:47:51.398295 table@remove removed @152
+06:47:51.398626 table@remove removed @153
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000132 b/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000132
deleted file mode 100644
index 50463c21d5..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000132 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000156 b/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000156
new file mode 100644
index 0000000000..7da12a9d2f
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/application.db/MANIFEST-000156 differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000089.ldb b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000089.ldb
deleted file mode 100644
index 139161de2b..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000089.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000090.log b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000090.log
deleted file mode 100644
index 39218b184a..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000090.log and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000092.ldb b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000092.ldb
deleted file mode 100644
index f0670e0093..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000092.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000104.ldb b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000104.ldb
new file mode 100644
index 0000000000..c4e0ac3f50
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000104.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000105.log b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000105.log
new file mode 100644
index 0000000000..b8f80b5b12
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000105.log differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000107.ldb b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000107.ldb
new file mode 100644
index 0000000000..33c48c0b3e
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/000107.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT
index 00f4669871..abdfdfe276 100644
--- a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000091
+MANIFEST-000106
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT.bak
index 948a0b647f..e333c89b48 100644
--- a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000088
+MANIFEST-000102
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/LOG b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/LOG
index 1b30a4e429..f9e576d734 100644
--- a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/LOG
@@ -389,3 +389,70 @@
17:59:01.708096 table@remove removed @73
17:59:27.006678 db@close closing
17:59:27.006727 db@close done T·48.84µs
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.941929 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.942055 version@stat F·[0 1] S·979KiB[0B 979KiB] Sc·[0.00 0.01]
+05:10:40.942068 db@open opening
+05:10:40.942101 journal@recovery F·1
+05:10:40.943919 journal@recovery recovering @90
+05:10:40.944706 memdb@flush created L0@93 N·30 S·3KiB "BH:..e6d,v6218":"blo..ore,v6215"
+05:10:40.945097 version@stat F·[1 1] S·983KiB[3KiB 979KiB] Sc·[0.25 0.01]
+05:10:40.947901 db@janitor F·5 G·1
+05:10:40.947908 db@janitor removing table-89
+05:10:40.947956 db@open done T·5.883755ms
+05:11:11.986457 table@compaction L0·1 -> L1·1 S·983KiB Q·6276
+05:11:11.992423 table@build created L1@96 N·5181 S·982KiB "BH:..c5c,v363":"blo..ore,v6239"
+05:11:11.992451 version@stat F·[0 1] S·982KiB[0B 982KiB] Sc·[0.00 0.01]
+05:11:11.993034 table@compaction committed F-1 S-280B Ke·0 D·5 T·6.5542ms
+05:11:11.993266 table@remove removed @92
+05:22:45.688799 db@close closing
+05:22:45.688852 db@close done T·52.32µs
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.731477 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.731572 version@stat F·[0 1] S·982KiB[0B 982KiB] Sc·[0.00 0.01]
+06:44:58.731582 db@open opening
+06:44:58.731608 journal@recovery F·1
+06:44:58.733590 journal@recovery recovering @94
+06:44:58.741468 memdb@flush created L0@97 N·864 S·142KiB "BH:..91c,v6735":"blo..ore,v6246"
+06:44:58.741742 version@stat F·[1 1] S·1MiB[142KiB 982KiB] Sc·[0.25 0.01]
+06:44:58.757548 db@janitor F·5 G·1
+06:44:58.757554 db@janitor removing table-93
+06:44:58.757586 db@open done T·26.001494ms
+06:45:36.822661 db@close closing
+06:45:36.822719 db@close done T·57.27µs
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.666531 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.666665 version@stat F·[1 1] S·1MiB[142KiB 982KiB] Sc·[0.25 0.01]
+06:45:46.666678 db@open opening
+06:45:46.666711 journal@recovery F·1
+06:45:46.668662 journal@recovery recovering @98
+06:45:46.669474 memdb@flush created L0@100 N·42 S·10KiB "BH:..b99,v7144":"blo..ore,v7111"
+06:45:46.669607 version@stat F·[2 1] S·1MiB[152KiB 982KiB] Sc·[0.50 0.01]
+06:45:46.672153 db@janitor F·5 G·0
+06:45:46.672180 db@open done T·5.497737ms
+06:46:16.625229 table@compaction L0·2 -> L1·1 S·1MiB Q·7178
+06:46:16.632031 table@build created L1@103 N·5936 S·1MiB "BH:..c5c,v363":"blo..ore,v7147"
+06:46:16.632059 version@stat F·[0 1] S·1MiB[0B 1MiB] Sc·[0.00 0.01]
+06:46:16.632639 table@compaction committed F-2 S+122B Ke·0 D·151 T·7.390783ms
+06:46:16.632728 table@remove removed @97
+06:46:16.632918 table@remove removed @96
+06:47:06.119564 db@close closing
+06:47:06.119632 db@close done T·68.141µs
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.289119 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.289213 version@stat F·[0 1] S·1MiB[0B 1MiB] Sc·[0.00 0.01]
+06:47:26.289224 db@open opening
+06:47:26.289255 journal@recovery F·1
+06:47:26.291626 journal@recovery recovering @101
+06:47:26.293004 memdb@flush created L0@104 N·90 S·14KiB "BH:..022,v7211":"blo..ore,v7154"
+06:47:26.293131 version@stat F·[1 1] S·1MiB[14KiB 1MiB] Sc·[0.25 0.01]
+06:47:26.295912 db@janitor F·5 G·1
+06:47:26.295920 db@janitor removing table-100
+06:47:26.295955 db@open done T·6.727058ms
+06:47:51.340007 table@compaction L0·1 -> L1·1 S·1MiB Q·7263
+06:47:51.346786 table@build created L1@107 N·6011 S·1MiB "BH:..c5c,v363":"blo..ore,v7238"
+06:47:51.346809 version@stat F·[0 1] S·1MiB[0B 1MiB] Sc·[0.00 0.01]
+06:47:51.348343 table@compaction committed F-1 S-97B Ke·0 D·15 T·8.315581ms
+06:47:51.348639 table@remove removed @103
+06:47:53.050412 db@close closing
+06:47:53.050476 db@close done T·62.691µs
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000091 b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000091
deleted file mode 100644
index 849bb8a758..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000091 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000106 b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000106
new file mode 100644
index 0000000000..3959a2ff27
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/blockstore.db/MANIFEST-000106 differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/cs.wal/wal b/.docker/container-state/nucleus-testnet-data/data/cs.wal/wal
index 1e135caef0..a0de7456d1 100644
Binary files a/.docker/container-state/nucleus-testnet-data/data/cs.wal/wal and b/.docker/container-state/nucleus-testnet-data/data/cs.wal/wal differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/000062.log b/.docker/container-state/nucleus-testnet-data/data/evidence.db/000070.log
similarity index 100%
rename from .docker/container-state/nucleus-testnet-data/data/evidence.db/000062.log
rename to .docker/container-state/nucleus-testnet-data/data/evidence.db/000070.log
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT
index e8c02667ae..be93edb695 100644
--- a/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000063
+MANIFEST-000071
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT.bak
index ebafc63b8e..5893b8f83b 100644
--- a/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/evidence.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000061
+MANIFEST-000069
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/LOG b/.docker/container-state/nucleus-testnet-data/data/evidence.db/LOG
index bba04859e3..603afd6c50 100644
--- a/.docker/container-state/nucleus-testnet-data/data/evidence.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/evidence.db/LOG
@@ -283,3 +283,39 @@
17:59:01.713504 version@stat F·[] S·0B[] Sc·[]
17:59:01.716861 db@janitor F·2 G·0
17:59:01.716876 db@open done T·3.62282ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.957492 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.957616 version@stat F·[] S·0B[] Sc·[]
+05:10:40.957629 db@open opening
+05:10:40.957658 journal@recovery F·1
+05:10:40.957894 journal@recovery recovering @62
+05:10:40.958388 version@stat F·[] S·0B[] Sc·[]
+05:10:40.961122 db@janitor F·2 G·0
+05:10:40.961141 db@open done T·3.507417ms
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.803399 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.803504 version@stat F·[] S·0B[] Sc·[]
+06:44:58.803519 db@open opening
+06:44:58.803556 journal@recovery F·1
+06:44:58.803645 journal@recovery recovering @64
+06:44:58.803912 version@stat F·[] S·0B[] Sc·[]
+06:44:58.813046 db@janitor F·2 G·0
+06:44:58.813055 db@open done T·9.533813ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.688140 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.688207 version@stat F·[] S·0B[] Sc·[]
+06:45:46.688217 db@open opening
+06:45:46.688244 journal@recovery F·1
+06:45:46.688329 journal@recovery recovering @66
+06:45:46.688475 version@stat F·[] S·0B[] Sc·[]
+06:45:46.691028 db@janitor F·2 G·0
+06:45:46.691045 db@open done T·2.823914ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.306936 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.307069 version@stat F·[] S·0B[] Sc·[]
+06:47:26.307085 db@open opening
+06:47:26.307124 journal@recovery F·1
+06:47:26.307921 journal@recovery recovering @68
+06:47:26.308103 version@stat F·[] S·0B[] Sc·[]
+06:47:26.310856 db@janitor F·2 G·0
+06:47:26.310866 db@open done T·3.776282ms
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000063 b/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000063
deleted file mode 100644
index f5b9b4efb8..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000063 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000071 b/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000071
new file mode 100644
index 0000000000..b4aa9a9181
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/evidence.db/MANIFEST-000071 differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/priv_validator_state.json b/.docker/container-state/nucleus-testnet-data/data/priv_validator_state.json
index 8bf82338a8..70797c4328 100644
--- a/.docker/container-state/nucleus-testnet-data/data/priv_validator_state.json
+++ b/.docker/container-state/nucleus-testnet-data/data/priv_validator_state.json
@@ -1,7 +1,7 @@
{
- "height": "1036",
+ "height": "1207",
"round": 0,
"step": 3,
- "signature": "v27Rs6us+6Q7cj+aLxVHFzzu3VuuAnLMflQ/rhuAh4CgOngnQ5pvY25d3yFM32fBXneJEm0bRYy/30RDgYtEDA==",
- "signbytes": "740802110C0400000000000022480A20893D8ECF312013CEA3102503BF9E39C5C78EB6AEAFA0DE202529F944D899793B122408011220D72D5FD098990DF6F3EC52E4602F660D611936C04D5DD307585531367D52F82C2A0C08FEA296B4061082BDE6E502320F6E75636C6575732D746573746E6574"
+ "signature": "icgswVCjm79XUsbei+n25O+rpUOvze+sTf2mK8ldJjFTDKocmcTEENgkYLa9qUoOTtAw8QgluaDJgzmiiBjwDg==",
+ "signbytes": "74080211B70400000000000022480A20284E4194EEBC89AFFBE87A98751F5A51DA90E72D8D6345FA1D2BBFEB89343EFC12240801122015262FE05A2AC0DA993FDF279A954CB68A15673F1521A48D39E7D65768595D802A0C0897E6C2B806108C99CBA301320F6E75636C6575732D746573746E6574"
}
\ No newline at end of file
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/000062.log b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/000070.log
similarity index 100%
rename from .docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/000062.log
rename to .docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/000070.log
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT
index e8c02667ae..be93edb695 100644
--- a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000063
+MANIFEST-000071
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT.bak
index ebafc63b8e..5893b8f83b 100644
--- a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000061
+MANIFEST-000069
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/LOG b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/LOG
index f1dec582ce..1210bffa25 100644
--- a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/LOG
@@ -283,3 +283,39 @@
17:59:01.671281 version@stat F·[] S·0B[] Sc·[]
17:59:01.674069 db@janitor F·2 G·0
17:59:01.674079 db@open done T·3.076606ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.917433 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.917549 version@stat F·[] S·0B[] Sc·[]
+05:10:40.917564 db@open opening
+05:10:40.917602 journal@recovery F·1
+05:10:40.917711 journal@recovery recovering @62
+05:10:40.918030 version@stat F·[] S·0B[] Sc·[]
+05:10:40.922003 db@janitor F·2 G·0
+05:10:40.922017 db@open done T·4.448515ms
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.694325 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.694411 version@stat F·[] S·0B[] Sc·[]
+06:44:58.694425 db@open opening
+06:44:58.694464 journal@recovery F·1
+06:44:58.694541 journal@recovery recovering @64
+06:44:58.694784 version@stat F·[] S·0B[] Sc·[]
+06:44:58.713362 db@janitor F·2 G·0
+06:44:58.713379 db@open done T·18.950723ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.641800 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.641874 version@stat F·[] S·0B[] Sc·[]
+06:45:46.641887 db@open opening
+06:45:46.641917 journal@recovery F·1
+06:45:46.642008 journal@recovery recovering @66
+06:45:46.642134 version@stat F·[] S·0B[] Sc·[]
+06:45:46.646348 db@janitor F·2 G·0
+06:45:46.646361 db@open done T·4.469118ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.263677 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.263742 version@stat F·[] S·0B[] Sc·[]
+06:47:26.263752 db@open opening
+06:47:26.263776 journal@recovery F·1
+06:47:26.263857 journal@recovery recovering @68
+06:47:26.264177 version@stat F·[] S·0B[] Sc·[]
+06:47:26.269116 db@janitor F·2 G·0
+06:47:26.269129 db@open done T·5.373646ms
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000063 b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000063
deleted file mode 100644
index f5b9b4efb8..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000063 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000071 b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000071
new file mode 100644
index 0000000000..b4aa9a9181
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/snapshots/metadata.db/MANIFEST-000071 differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/000091.ldb b/.docker/container-state/nucleus-testnet-data/data/state.db/000091.ldb
deleted file mode 100644
index ce41e60f12..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/state.db/000091.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/000106.ldb b/.docker/container-state/nucleus-testnet-data/data/state.db/000106.ldb
new file mode 100644
index 0000000000..41709b5d5a
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/state.db/000106.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/000092.log b/.docker/container-state/nucleus-testnet-data/data/state.db/000107.log
similarity index 83%
rename from .docker/container-state/nucleus-testnet-data/data/state.db/000092.log
rename to .docker/container-state/nucleus-testnet-data/data/state.db/000107.log
index 7aa8691b72..57c76a9bb0 100644
Binary files a/.docker/container-state/nucleus-testnet-data/data/state.db/000092.log and b/.docker/container-state/nucleus-testnet-data/data/state.db/000107.log differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/000088.ldb b/.docker/container-state/nucleus-testnet-data/data/state.db/000109.ldb
similarity index 70%
rename from .docker/container-state/nucleus-testnet-data/data/state.db/000088.ldb
rename to .docker/container-state/nucleus-testnet-data/data/state.db/000109.ldb
index 72caa9fb6f..c3d631b9d3 100644
Binary files a/.docker/container-state/nucleus-testnet-data/data/state.db/000088.ldb and b/.docker/container-state/nucleus-testnet-data/data/state.db/000109.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT
index f60e23b00c..db6fa61f96 100644
--- a/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000093
+MANIFEST-000108
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT.bak
index 2f2c868af7..c8e9be65ea 100644
--- a/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/state.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000090
+MANIFEST-000104
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/LOG b/.docker/container-state/nucleus-testnet-data/data/state.db/LOG
index c811eadd21..ceaaced552 100644
--- a/.docker/container-state/nucleus-testnet-data/data/state.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/state.db/LOG
@@ -394,3 +394,75 @@
17:59:01.705289 db@open done T·5.934209ms
17:59:27.006738 db@close closing
17:59:27.006773 db@close done T·35.621µs
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.948045 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.948116 version@stat F·[1 1] S·480KiB[87KiB 392KiB] Sc·[0.25 0.00]
+05:10:40.948126 db@open opening
+05:10:40.948156 journal@recovery F·1
+05:10:40.948359 journal@recovery recovering @92
+05:10:40.949167 memdb@flush created L0@94 N·25 S·5KiB "abc..032,v5184":"val..038,v5206"
+05:10:40.949303 version@stat F·[2 1] S·485KiB[93KiB 392KiB] Sc·[0.50 0.00]
+05:10:40.952715 db@janitor F·5 G·0
+05:10:40.952726 db@open done T·4.596875ms
+05:10:52.975901 table@compaction L0·2 -> L1·1 S·485KiB Q·5219
+05:10:52.980319 table@build created L1@97 N·3114 S·432KiB "abc..y:1,v6":"val..999,v5010"
+05:10:52.980342 version@stat F·[0 1] S·432KiB[0B 432KiB] Sc·[0.00 0.00]
+05:10:52.980914 table@compaction committed F-2 S-53KiB Ke·0 D·148 T·4.995718ms
+05:10:52.980988 table@remove removed @91
+05:10:52.981079 table@remove removed @88
+05:22:45.688861 db@close closing
+05:22:45.688894 db@close done T·32.78µs
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.757687 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.757762 version@stat F·[0 1] S·432KiB[0B 432KiB] Sc·[0.00 0.00]
+06:44:58.757772 db@open opening
+06:44:58.757803 journal@recovery F·1
+06:44:58.758114 journal@recovery recovering @95
+06:44:58.766158 memdb@flush created L0@98 N·720 S·160KiB "abc..037,v5210":"val..182,v5927"
+06:44:58.768181 version@stat F·[1 1] S·593KiB[160KiB 432KiB] Sc·[0.25 0.00]
+06:44:58.782781 db@janitor F·5 G·1
+06:44:58.782787 db@janitor removing table-94
+06:44:58.782815 db@open done T·25.040516ms
+06:45:31.737199 table@compaction L0·1 -> L1·1 S·593KiB Q·5960
+06:45:31.742113 table@build created L1@101 N·3546 S·502KiB "abc..y:1,v6":"val..999,v5010"
+06:45:31.742138 version@stat F·[0 1] S·502KiB[0B 502KiB] Sc·[0.00 0.00]
+06:45:31.742713 table@compaction committed F-1 S-90KiB Ke·0 D·288 T·5.489518ms
+06:45:31.742852 table@remove removed @97
+06:45:36.822729 db@close closing
+06:45:36.822759 db@close done T·30.251µs
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.672283 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.672368 version@stat F·[0 1] S·502KiB[0B 502KiB] Sc·[0.00 0.00]
+06:45:46.672378 db@open opening
+06:45:46.672405 journal@recovery F·1
+06:45:46.672600 journal@recovery recovering @99
+06:45:46.673679 memdb@flush created L0@102 N·35 S·14KiB "abc..181,v5931":"val..189,v5963"
+06:45:46.674067 version@stat F·[1 1] S·517KiB[14KiB 502KiB] Sc·[0.25 0.00]
+06:45:46.676665 db@janitor F·5 G·1
+06:45:46.676674 db@janitor removing table-98
+06:45:46.676808 db@open done T·4.425948ms
+06:46:17.600950 table@compaction L0·1 -> L1·1 S·517KiB Q·5996
+06:46:17.606418 table@build created L1@105 N·3567 S·509KiB "abc..y:1,v6":"val..999,v5010"
+06:46:17.606444 version@stat F·[0 1] S·509KiB[0B 509KiB] Sc·[0.00 0.00]
+06:46:17.607473 table@compaction committed F-1 S-8KiB Ke·0 D·14 T·6.501365ms
+06:46:17.607615 table@remove removed @101
+06:47:06.119645 db@close closing
+06:47:06.119690 db@close done T·44.54µs
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.296053 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.296123 version@stat F·[0 1] S·509KiB[0B 509KiB] Sc·[0.00 0.00]
+06:47:26.296133 db@open opening
+06:47:26.296160 journal@recovery F·1
+06:47:26.296240 journal@recovery recovering @103
+06:47:26.297208 memdb@flush created L0@106 N·75 S·14KiB "abc..188,v5967":"val..204,v6039"
+06:47:26.297326 version@stat F·[1 1] S·523KiB[14KiB 509KiB] Sc·[0.25 0.00]
+06:47:26.300025 db@janitor F·5 G·1
+06:47:26.300032 db@janitor removing table-102
+06:47:26.300068 db@open done T·3.931804ms
+06:47:51.340428 table@compaction L0·1 -> L1·1 S·523KiB Q·6062
+06:47:51.345463 table@build created L1@109 N·3612 S·515KiB "abc..y:1,v6":"val..999,v5010"
+06:47:51.345490 version@stat F·[0 1] S·515KiB[0B 515KiB] Sc·[0.00 0.01]
+06:47:51.347253 table@compaction committed F-1 S-8KiB Ke·0 D·30 T·6.790988ms
+06:47:51.347409 table@remove removed @105
+06:47:53.050487 db@close closing
+06:47:53.050515 db@close done T·27.49µs
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000093 b/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000093
deleted file mode 100644
index f044b3f1c5..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000093 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000108 b/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000108
new file mode 100644
index 0000000000..3e0e6991cd
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/state.db/MANIFEST-000108 differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000078.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000078.ldb
deleted file mode 100644
index 3c915bd371..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000078.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000079.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000079.ldb
deleted file mode 100644
index d228e9d6d5..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000079.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000084.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000084.ldb
deleted file mode 100644
index dbe9644aa0..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000084.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000089.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000089.ldb
deleted file mode 100644
index c1388b6fb7..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000089.ldb and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000090.log b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000090.log
deleted file mode 100644
index 0897ff3654..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000090.log and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000095.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000095.ldb
new file mode 100644
index 0000000000..d60494d2f4
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000095.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000096.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000096.ldb
new file mode 100644
index 0000000000..ced510724b
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000096.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000099.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000099.ldb
new file mode 100644
index 0000000000..835a70959c
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000099.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000102.ldb b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000102.ldb
new file mode 100644
index 0000000000..b1a9417bb5
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000102.ldb differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000103.log b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000103.log
new file mode 100644
index 0000000000..83c9380d98
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/000103.log differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT
index 00f4669871..c8e9be65ea 100644
--- a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT
+++ b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT
@@ -1 +1 @@
-MANIFEST-000091
+MANIFEST-000104
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT.bak b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT.bak
index 948a0b647f..ed5ac889a6 100644
--- a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT.bak
+++ b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/CURRENT.bak
@@ -1 +1 @@
-MANIFEST-000088
+MANIFEST-000101
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/LOG b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/LOG
index 6f949c5d7c..d472949dbb 100644
--- a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/LOG
+++ b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/LOG
@@ -350,3 +350,52 @@
17:59:01.708419 version@stat F·[3 1] S·550KiB[60KiB 490KiB] Sc·[0.75 0.00]
17:59:01.712571 db@janitor F·6 G·0
17:59:01.712584 db@open done T·6.619955ms
+=============== Oct 17, 2024 (UTC) ===============
+05:10:40.953178 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+05:10:40.953252 version@stat F·[3 1] S·550KiB[60KiB 490KiB] Sc·[0.75 0.00]
+05:10:40.953263 db@open opening
+05:10:40.953304 journal@recovery F·1
+05:10:40.953387 journal@recovery recovering @90
+05:10:40.954217 memdb@flush created L0@92 N·175 S·2KiB "blo..\x01\xc4\b,v36695":"blo..k\x00\x01,v36845"
+05:10:40.954329 version@stat F·[4 1] S·553KiB[63KiB 490KiB] Sc·[1.00 0.00]
+05:10:40.956867 db@janitor F·7 G·0
+05:10:40.956878 db@open done T·3.611318ms
+05:10:40.956914 table@compaction L0·4 -> L1·1 S·553KiB Q·36870
+05:10:40.970187 table@build created L1@95 N·30671 S·553KiB "\tr\xf8..pSV,v26111":"\xf2~\xe4..\x05\xa4\xc4,v21827"
+05:10:40.970217 version@stat F·[0 1] S·553KiB[0B 553KiB] Sc·[0.00 0.01]
+05:10:40.970807 table@compaction committed F-4 S-550B Ke·0 D·447 T·13.871697ms
+05:10:40.970885 table@remove removed @89
+05:10:40.970918 table@remove removed @84
+05:10:40.970943 table@remove removed @79
+05:10:40.971049 table@remove removed @78
+=============== Oct 17, 2024 (UTC) ===============
+06:44:58.783278 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:44:58.783368 version@stat F·[0 1] S·553KiB[0B 553KiB] Sc·[0.00 0.01]
+06:44:58.783380 db@open opening
+06:44:58.783411 journal@recovery F·1
+06:44:58.783501 journal@recovery recovering @93
+06:44:58.792589 memdb@flush created L0@96 N·5227 S·104KiB "\t\xf8|..\"=\xa9,v39810":"\x95\xbat..\xc7FU,v40268"
+06:44:58.792706 version@stat F·[1 1] S·657KiB[104KiB 553KiB] Sc·[0.25 0.01]
+06:44:58.802828 db@janitor F·5 G·1
+06:44:58.802834 db@janitor removing table-92
+06:44:58.802858 db@open done T·19.474428ms
+=============== Oct 17, 2024 (UTC) ===============
+06:45:46.677216 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:45:46.677292 version@stat F·[1 1] S·657KiB[104KiB 553KiB] Sc·[0.25 0.01]
+06:45:46.677310 db@open opening
+06:45:46.677340 journal@recovery F·1
+06:45:46.677425 journal@recovery recovering @97
+06:45:46.678375 memdb@flush created L0@99 N·302 S·14KiB "\\\x7f\xf1..AP\b,v42182":"\xbf\x87\xea..]\x96\xf3,v42260"
+06:45:46.678538 version@stat F·[2 1] S·671KiB[118KiB 553KiB] Sc·[0.50 0.01]
+06:45:46.687729 db@janitor F·5 G·0
+06:45:46.687742 db@open done T·10.428559ms
+=============== Oct 17, 2024 (UTC) ===============
+06:47:26.300462 log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed
+06:47:26.300551 version@stat F·[2 1] S·671KiB[118KiB 553KiB] Sc·[0.50 0.01]
+06:47:26.300565 db@open opening
+06:47:26.300606 journal@recovery F·1
+06:47:26.300688 journal@recovery recovering @100
+06:47:26.301782 memdb@flush created L0@102 N·525 S·7KiB "blo..\x01Ĥ,v42402":"blo..k\x00\x01,v42902"
+06:47:26.301919 version@stat F·[3 1] S·678KiB[125KiB 553KiB] Sc·[0.75 0.01]
+06:47:26.306059 db@janitor F·6 G·0
+06:47:26.306075 db@open done T·5.504547ms
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000091 b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000091
deleted file mode 100644
index d75cffd4ec..0000000000
Binary files a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000091 and /dev/null differ
diff --git a/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000104 b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000104
new file mode 100644
index 0000000000..57f27cbda8
Binary files /dev/null and b/.docker/container-state/nucleus-testnet-data/data/tx_index.db/MANIFEST-000104 differ
diff --git a/.github/actions/deps-install/action.yml b/.github/actions/deps-install/action.yml
index 25ed15bf50..02b0ffbec4 100644
--- a/.github/actions/deps-install/action.yml
+++ b/.github/actions/deps-install/action.yml
@@ -12,33 +12,54 @@ inputs:
runs:
using: 'composite'
steps:
+ - name: Download protoc (Linux)
+ if: runner.os == 'Linux' && contains(inputs.deps, 'protoc')
+ uses: ./.github/actions/download-and-verify
+ with:
+ url: "https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-linux-x86_64.zip"
+ output_file: "protoc-25.3-linux-x86_64.zip"
+ checksum: "f853e691868d0557425ea290bf7ba6384eef2fa9b04c323afab49a770ba9da80"
+
- name: Install protoc (Linux)
env:
TMP: ${{ inputs.temp || runner.temp }}
if: runner.os == 'Linux' && contains(inputs.deps, 'protoc')
shell: bash
run: |
- wget https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-linux-x86_64.zip
- unzip protoc-25.3-linux-x86_64 -d "$TMP/protobuf"
+ unzip protoc-25.3-linux-x86_64.zip -d "$TMP/protobuf"
echo "$TMP/protobuf/bin" >> $GITHUB_PATH
+ - name: Download protoc (MacOS)
+ if: runner.os == 'macOS' && contains(inputs.deps, 'protoc')
+ uses: ./.github/actions/download-and-verify
+ with:
+ url: "https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-osx-x86_64.zip"
+ output_file: "protoc-25.3-osx-x86_64.zip"
+ checksum: "247e003b8e115405172eacc50bd19825209d85940728e766f0848eee7c80e2a1"
+
- name: Install protoc (MacOS)
env:
TMP: ${{ inputs.temp || runner.temp }}
if: runner.os == 'macOS' && contains(inputs.deps, 'protoc')
shell: bash
run: |
- wget https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-osx-x86_64.zip
unzip protoc-25.3-osx-x86_64.zip -d "$TMP/protobuf"
echo "$TMP/protobuf/bin" >> $GITHUB_PATH
+
+ - name: Download protoc (Windows)
+ uses: ./.github/actions/download-and-verify
+ with:
+ url: "https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-win64.zip"
+ output_file: "protoc-25.3-win64.zip"
+ checksum: "d6b336b852726364313330631656b7f395dde5b1141b169f5c4b8d43cdf01482"
+
- name: Install protoc (Windows)
env:
TMP: ${{ inputs.temp || runner.temp }}
if: runner.os == 'Windows' && contains(inputs.deps, 'protoc')
shell: powershell
run: |
- Invoke-WebRequest -Uri https://github.com/protocolbuffers/protobuf/releases/download/v25.3/protoc-25.3-win64.zip -OutFile protoc-25.3-win64.zip
7z x protoc-25.3-win64.zip -o"$TMP\protobuf"
echo "$TMP\protobuf\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
diff --git a/.github/actions/download-and-verify/action.yml b/.github/actions/download-and-verify/action.yml
new file mode 100644
index 0000000000..198601f486
--- /dev/null
+++ b/.github/actions/download-and-verify/action.yml
@@ -0,0 +1,46 @@
+name: "Download and verify remote files"
+
+runs:
+ using: "composite"
+ steps:
+ - name: Download (Unix)
+ if: runner.os != 'Windows'
+ shell: bash
+ run: curl -L -o ${{ inputs.output_file }} ${{ inputs.url }}
+
+ - name: Download (Windows)
+ if: runner.os == 'Windows'
+ shell: powershell
+ run: Invoke-WebRequest -Uri ${{ inputs.url }} -OutFile ${{ inputs.output_file }}
+
+ - name: Verify (Unix)
+ if: runner.os != 'Windows'
+ shell: bash
+ run: |
+ if [[ "$RUNNER_OS" == "macOS" ]]; then
+ echo "${{ inputs.checksum }} *${{ inputs.output_file }}" | shasum -a 256 -c
+ else
+ echo "${{ inputs.checksum }} ${{ inputs.output_file }}" | sha256sum -c
+ fi
+
+ - name: Verify (Windows)
+ if: runner.os == 'Windows'
+ shell: powershell
+ run: |
+ $expectedChecksum = "${{ inputs.checksum }}"
+ $actualChecksum = (Get-FileHash -Path "${{ inputs.output_file }}" -Algorithm SHA256).Hash
+ if ($expectedChecksum -ne $actualChecksum) {
+ Write-Output "Checksum did not match! Expected: $expectedChecksum, Found: $actualChecksum"
+ exit 1
+ }
+
+inputs:
+ url:
+ description: "URL of the remote file."
+ required: true
+ output_file:
+ description: "Output path."
+ required: true
+ checksum:
+ description: "Expected checksum of the downloaded file."
+ required: true
diff --git a/.github/workflows/adex-cli.yml b/.github/workflows/adex-cli.yml
deleted file mode 100644
index 32b62f04ed..0000000000
--- a/.github/workflows/adex-cli.yml
+++ /dev/null
@@ -1,37 +0,0 @@
-name: Adex CLI
-on: [push]
-
-concurrency:
- group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
- cancel-in-progress: true
-
-env:
- BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
-
-jobs:
- code-check:
- name: Code Checks
- timeout-minutes: 60
- runs-on: ${{ matrix.os }}
- strategy:
- matrix:
- os: [ubuntu-latest, macos-latest, windows-latest]
- steps:
- - uses: actions/checkout@v3
-
- - name: Cargo cache
- uses: ./.github/actions/cargo-cache
-
- - name: Start checking code format and lint
- continue-on-error: true
- run: |
- cargo fmt --manifest-path ./mm2src/adex_cli/Cargo.toml --all -- --check
- cargo clippy --manifest-path ./mm2src/adex_cli/Cargo.toml --all-targets --all-features -- --D warnings
-
- - name: Start building
- run: |
- cargo build --manifest-path ./mm2src/adex_cli/Cargo.toml
-
- - name: Start testing
- run: |
- cargo test --manifest-path ./mm2src/adex_cli/Cargo.toml --no-fail-fast
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 19cb9c5d67..12a60bbc3c 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -122,7 +122,7 @@ jobs:
- name: Test
run: |
- wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/master/zcutil/fetch-params-alt.sh | bash
+ wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/0adeeabdd484ef40539d1275c6a765f5c530ea79/zcutil/fetch-params-alt.sh | bash
cargo test --test 'mm2_tests_main' --no-fail-fast
mac-x86-64-kdf-integration:
@@ -154,7 +154,7 @@ jobs:
- name: Test
run: |
- wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/master/zcutil/fetch-params-alt.sh | bash
+ wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/0adeeabdd484ef40539d1275c6a765f5c530ea79/zcutil/fetch-params-alt.sh | bash
cargo test --test 'mm2_tests_main' --no-fail-fast
win-x86-64-kdf-integration:
@@ -181,10 +181,16 @@ jobs:
- name: Cargo cache
uses: ./.github/actions/cargo-cache
+ - name: Download wget64
+ uses: ./.github/actions/download-and-verify
+ with:
+ url: "https://github.com/KomodoPlatform/komodo/raw/d456be35acd1f8584e1e4f971aea27bd0644d5c5/zcutil/wget64.exe"
+ output_file: "/wget64.exe"
+ checksum: "d80719431dc22b0e4a070f61fab982b113a4ed9a6d4cf25e64b5be390dcadb94"
+
- name: Test
run: |
- Invoke-WebRequest -Uri https://github.com/KomodoPlatform/komodo/raw/d456be35acd1f8584e1e4f971aea27bd0644d5c5/zcutil/wget64.exe -OutFile \wget64.exe
- Invoke-WebRequest -Uri https://raw.githubusercontent.com/KomodoPlatform/komodo/master/zcutil/fetch-params-alt.bat -OutFile \cmd.bat && \cmd.bat
+ Invoke-WebRequest -Uri https://raw.githubusercontent.com/KomodoPlatform/komodo/0adeeabdd484ef40539d1275c6a765f5c530ea79/zcutil/fetch-params-alt.bat -OutFile \cmd.bat && \cmd.bat
cargo test --test 'mm2_tests_main' --no-fail-fast
docker-tests:
@@ -213,7 +219,7 @@ jobs:
- name: Test
run: |
- wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/master/zcutil/fetch-params-alt.sh | bash
+ wget -O - https://raw.githubusercontent.com/KomodoPlatform/komodo/v0.8.1//zcutil/fetch-params-alt.sh | bash
cargo test --test 'docker_tests_main' --features run-docker-tests --no-fail-fast
wasm:
@@ -241,11 +247,17 @@ jobs:
- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
+ - name: Download geckodriver
+ uses: ./.github/actions/download-and-verify
+ with:
+ url: "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux64.tar.gz"
+ output_file: "geckodriver-v0.32.2-linux64.tar.gz"
+ checksum: "1eab226bf009599f5aa1d77d9ed4c374e10a03fd848b500be1b32cefd2cbec64"
+
- name: Install firefox and geckodriver
run: |
sudo apt-get update -y
sudo apt-get install -y firefox
- wget https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux64.tar.gz
sudo tar -xzvf geckodriver-v0.32.2-linux64.tar.gz -C /bin
sudo chmod +x /bin/geckodriver
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 20a2424397..f3d8816316 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,92 @@
+## v2.2.0-beta - 2024-11-22
+
+**Features:**
+- Connection Healthcheck
+ - Connection healthcheck implementation for peers was introduced. [#2194](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2194)
+- Custom Tokens Activation
+ - Support for enabling custom EVM (ERC20, PLG20, etc..) tokens without requiring them to be in the coins config was added. [#2141](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2141)
+ - This allows users to interact with any ERC20 token by providing the contract address.
+
+**Enhancements/Fixes:**
+- Trading Protocol Upgrade [#1895](https://github.com/KomodoPlatform/atomicDEX-API/issues/1895)
+ - EVM TPU taker methods were implemented and enhancements were made to ETH docker tests. [#2169](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2169)
+ - EVM TPU maker methods were implemented. [#2211](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2211)
+- NFT integration [#900](https://github.com/KomodoPlatform/atomicDEX-API/issues/900)
+ - Refund methods for NFT swaps were completed. [#2129](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2129)
+ - `token_id` field was added to the tx history primary key. [#2209](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2209)
+- Graceful Shutdown
+ - CTRL-C signal handling with graceful shutdown was implemented. [#2213](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2213)
+- Seed Management [#1939](https://github.com/KomodoPlatform/komodo-defi-framework/issues/1939)
+ - A new `get_wallet_names` RPC was added to retrieve information about all wallet names and the currently active one. [#2202](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2202)
+- Cosmos Integration [#1432](https://github.com/KomodoPlatform/atomicDEX-API/issues/1432)
+ - Cosmos tx broadcasting error was fixed by upgrading cosmrs to version 15. [#2238](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2238)
+ - Cosmos transaction history implementation was incorrectly parsing addresses (using the relayer address instead of the cross-chain address) from IBC transactions. The address parsing logic was fixed in [#2245](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2245)
+- Order Management
+ - Cancel order race condition was addressed using time-based cache. [#2232](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2232)
+- Swap Improvements
+ - A legacy swap issue was resolved where taker spent maker payment transactions were sometimes incorrectly marked as successful when they were actually reverted or not confirmed, particularly in EVM-based swaps. [#2199](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2199)
+ - Two new events were added: "MakerPaymentSpendConfirmed" and "MakerPaymentSpendConfirmFailed"
+ - A fix was introduced where Takers don't need to confirm their own payment as they can wait for the spending of it straight away. [#2249](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2249)
+ - This invalidates this fix [#1442](https://github.com/KomodoPlatform/komodo-defi-framework/issues/1442), a better solution will be introduced where taker rebroadcasts their transaction if it's not on the chain.
+ - A fix was introduced for recover funds for takers when the swap was marked as unsuccessful due to the maker payment spend transaction not being confirmed. [#2242](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2242)
+ - The required confirmations from coin config for taker/maker payment spend are now used instead of using 1 confirmation max. This is because some chains require more than 1 confirmation for finality, e.g. Polygon.
+- Swap watchers [#1431](https://github.com/KomodoPlatform/atomicDEX-API/issues/1431)
+ - Taker fee validation retries now work the same way as for makers. [#2263](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2263)
+- Electrum Client
+ - Electrum client was refactored to add min/max connection controls, with server priority based on list order. [#1966](https://github.com/KomodoPlatform/komodo-defi-framework/pull/1966)
+ - Electrum client can now operate in single-server mode (1,1) to reduce resource usage (especially beneficial for mobile) or multi-server (legacy) mode for reliability.
+ - Higher priority servers automatically replace lower priority ones when reconnecting during periodic retries or when connection count drops below minimum.
+- Coins Activation
+ - EVM addresses are now displayed in full in iguana v2 activation response. [#2254](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2254)
+- HD Wallet [#1838](https://github.com/KomodoPlatform/komodo-defi-framework/issues/1838)
+ - Balance is now returned as `CoinBalanceMap` for both UTXOs and QTUM. [#2259](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2259)
+ - This is to return the same type/json across all coins for GUIs since EVM uses `CoinBalanceMap`.
+ - EVM addresses are displayed in full in `get_new_address` response after [#2264](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2264)
+- RPC Service
+ - A fix was introduced to run rpc request futures till completion in [#1966](https://github.com/KomodoPlatform/komodo-defi-framework/pull/1966)
+ - This ensures RPC request futures complete fully even if clients disconnect, preventing partial state updates and maintaining data consistency.
+- Security Enhancements
+ - Message lifetime overflows were added to prevent creating messages for proxy with too long lifetimes. [#2233](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2233)
+ - Remote files are now handled in a safer way in CI. [#2217](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2217)
+- Build Process
+ - `wasm-opt` overriding was removed. [#2200](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2200)
+- Escaped response body in native RPC was removed. [#2219](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2219)
+- Creation of the all-zeroes dir on KDF start was stopped. [#2218](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2218)
+- OPTIONS requests to KDF server were added. [#2191](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2191)
+
+**Removals:**
+- Solana Support [#1085](https://github.com/KomodoPlatform/komodo-defi-framework/issues/1085)
+ - Solana implementation was removed until it can be redone using the latest Solana SDK. [#2239](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2239)
+- Adex-CLI [#1682](https://github.com/KomodoPlatform/atomicDEX-API/issues/1682)
+ - adex-cli was deprecated pending work on a simpler, more maintainable implementation. [#2234](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2234)
+
+**Other Changes:**
+- Documentation
+ - Issue link in README was updated. [#2227](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2227)
+ - Commit badges were updated to use dev branch in README. [#2193](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2193)
+ - Leftover subcommands were removed from help message. [#2235](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2235) [#2270](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2270)
+- Code Structure
+ - lib.rs was replaced by mm2.rs as the root lib for mm2_main. [#2178](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2178)
+- Code Improvements
+ - P2P feature was added to mm2_net dependency to allow the coins crate to be compiled and tested independently. [#2210](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2210)
+ - Coins mod clippy warnings in WASM were fixed. [#2224](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2224)
+ - Nonsense CLI arguments were removed. [#2216](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2216)
+- Tests
+ - Tendermint IBC tests were fixed by preparing IBC channels inside the container. [#2246](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2246)
+ - `.wait()` usage was replaced with `block_on` in tests to ensure consistent runtime usage, fixing issues with tokio TCP streams in non-tokio runtimes. [#2220](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2220)
+ - Debug assertions for tests were enabled. [#2204](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2204)
+ - More Sepolia test endpoints were added in [#2262](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2262)
+
+**NB - Backwards compatibility breaking changes:**
+- RPC Renaming
+ - `get_peers_info` RPC was renamed to `get_directly_connected_peers`. [#2195](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2195)
+- Cosmos Integration [#1432](https://github.com/KomodoPlatform/atomicDEX-API/issues/1432)
+ - Updates to Tendermint activation payloads:
+ - 'rpc_urls' field (previously a list of plain string values) is replaced with 'nodes' (a list of JSON objects). [#2173](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2173)
+- Komodo DeFi Proxy
+ - All RPC methods fields controlling komodo-defi-proxy are renamed to 'komodo_proxy', affecting various activations, including ETH/EVM. [#2173](https://github.com/KomodoPlatform/komodo-defi-framework/pull/2173)
+
+
## v2.1.0-beta - 2024-07-31
**Features:**
diff --git a/Cargo.lock b/Cargo.lock
index 755ad68862..2bc1c3d543 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -119,12 +119,6 @@ dependencies = [
"memchr",
]
-[[package]]
-name = "aliasable"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd"
-
[[package]]
name = "android_system_properties"
version = "0.1.5"
@@ -134,15 +128,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "ansi_term"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-dependencies = [
- "winapi",
-]
-
[[package]]
name = "anyhow"
version = "1.0.42"
@@ -186,12 +171,6 @@ version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "155a5a185e42c6b77ac7b88a15143d930a9e9727a5b7b77eed417404ab15c247"
-[[package]]
-name = "assert_matches"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
-
[[package]]
name = "async-io"
version = "1.13.0"
@@ -261,7 +240,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10f203db73a71dfa2fb6dd22763990fa26f3d2625a6da2da900d23b87d26be27"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -278,7 +257,7 @@ version = "0.1.76"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "531b97fb4cd3dfdce92c35dedbfdc1f0b9d8091c8ca943d6dae340ef5012d514"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -391,12 +370,6 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
-[[package]]
-name = "base32"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa"
-
[[package]]
name = "base58"
version = "0.2.0"
@@ -409,12 +382,6 @@ version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
-[[package]]
-name = "base64"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
-
[[package]]
name = "base64"
version = "0.13.0"
@@ -471,15 +438,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "bincode"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
-dependencies = [
- "serde",
-]
-
[[package]]
name = "bip32"
version = "0.2.2"
@@ -610,20 +568,6 @@ dependencies = [
"constant_time_eq",
]
-[[package]]
-name = "blake3"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a08e53fc5a564bb15bfe6fae56bd71522205f1f91893f9c0116edad6496c183f"
-dependencies = [
- "arrayref",
- "arrayvec 0.7.1",
- "cc",
- "cfg-if 1.0.0",
- "constant_time_eq",
- "digest 0.10.7",
-]
-
[[package]]
name = "block-buffer"
version = "0.9.0"
@@ -695,51 +639,6 @@ dependencies = [
"serde_with",
]
-[[package]]
-name = "borsh"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15bf3650200d8bffa99015595e10f1fbd17de07abbc25bb067da79e769939bfa"
-dependencies = [
- "borsh-derive",
- "hashbrown 0.11.2",
-]
-
-[[package]]
-name = "borsh-derive"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6441c552f230375d18e3cc377677914d2ca2b0d36e52129fe15450a2dce46775"
-dependencies = [
- "borsh-derive-internal",
- "borsh-schema-derive-internal",
- "proc-macro-crate 0.1.5",
- "proc-macro2 1.0.69",
- "syn 1.0.95",
-]
-
-[[package]]
-name = "borsh-derive-internal"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
-[[package]]
-name = "borsh-schema-derive-internal"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
[[package]]
name = "bs58"
version = "0.4.0"
@@ -764,42 +663,12 @@ version = "3.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
-[[package]]
-name = "bv"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340"
-dependencies = [
- "feature-probe",
- "serde",
-]
-
[[package]]
name = "byte-slice-cast"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "65c1bf4a04a88c54f589125563643d773f3254b5c38571395e2b591c693bbc81"
-[[package]]
-name = "bytemuck"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e851ca7c24871e7336801608a4797d7376545b6928a10d32d75685687141ead"
-dependencies = [
- "bytemuck_derive",
-]
-
-[[package]]
-name = "bytemuck_derive"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e215f8c2f9f79cb53c8335e687ffd07d5bfcb6fe5fc80723762d0be46e7cc54"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
[[package]]
name = "byteorder"
version = "1.4.3"
@@ -825,44 +694,12 @@ dependencies = [
"serde",
]
-[[package]]
-name = "bzip2"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
-dependencies = [
- "bzip2-sys",
- "libc",
-]
-
-[[package]]
-name = "bzip2-sys"
-version = "0.1.11+1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
-dependencies = [
- "cc",
- "libc",
- "pkg-config",
-]
-
[[package]]
name = "cache-padded"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24508e28c677875c380c20f4d28124fab6f8ed4ef929a1397d7b1a31e92f1005"
-[[package]]
-name = "caps"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61bf7211aad104ce2769ec05efcdfabf85ee84ac92461d142f22cf8badd0e54c"
-dependencies = [
- "errno 0.2.8",
- "libc",
- "thiserror",
-]
-
[[package]]
name = "cbc"
version = "0.1.2"
@@ -877,9 +714,6 @@ name = "cc"
version = "1.0.74"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "581f5dba903aac52ea3feb5ec4810848460ee833876f1f9b0fdeab1f19091574"
-dependencies = [
- "jobserver",
-]
[[package]]
name = "cfg-if"
@@ -965,21 +799,6 @@ dependencies = [
"inout",
]
-[[package]]
-name = "clap"
-version = "2.33.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
-dependencies = [
- "ansi_term",
- "atty",
- "bitflags",
- "strsim 0.8.0",
- "textwrap",
- "unicode-width",
- "vec_map",
-]
-
[[package]]
name = "cloudabi"
version = "0.0.3"
@@ -989,15 +808,6 @@ dependencies = [
"bitflags",
]
-[[package]]
-name = "cloudabi"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4344512281c643ae7638bbabc3af17a11307803ec8f0fcad9fae512a8bf36467"
-dependencies = [
- "bitflags",
-]
-
[[package]]
name = "codespan-reporting"
version = "0.11.1"
@@ -1016,7 +826,6 @@ dependencies = [
"async-trait",
"base58",
"base64 0.21.7",
- "bincode",
"bip32",
"bitcoin",
"bitcoin_hashes",
@@ -1026,6 +835,7 @@ dependencies = [
"bytes 0.4.12",
"cfg-if 1.0.0",
"chain",
+ "chrono",
"common",
"cosmrs",
"crossbeam 0.8.2",
@@ -1034,7 +844,6 @@ dependencies = [
"derive_more",
"dirs",
"ed25519-dalek",
- "ed25519-dalek-bip32 0.2.0",
"enum_derives",
"ethabi",
"ethcore-transaction",
@@ -1073,16 +882,19 @@ dependencies = [
"mm2_metrics",
"mm2_net",
"mm2_number",
+ "mm2_p2p",
"mm2_rpc",
"mm2_state_machine",
"mm2_test_helpers",
"mocktopus",
+ "nom",
"num-traits",
- "parking_lot 0.12.0",
+ "parking_lot",
"primitives",
"prost",
"prost-build",
"protobuf",
+ "proxy_signature",
"rand 0.7.3",
"regex",
"reqwest",
@@ -1092,7 +904,6 @@ dependencies = [
"rpc_task",
"rust-ini",
"rustls 0.21.10",
- "satomic-swap",
"script",
"secp256k1 0.20.3",
"secp256k1 0.24.3",
@@ -1101,15 +912,12 @@ dependencies = [
"serde",
"serde_derive",
"serde_json",
+ "serde_with",
"serialization",
"serialization_derive",
"sha2 0.10.7",
"sha3 0.9.1",
- "solana-client",
- "solana-sdk",
- "solana-transaction-status",
- "spl-associated-token-account",
- "spl-token",
+ "sia-rust",
"spv_validation",
"tendermint-rpc",
"time 0.3.20",
@@ -1121,7 +929,7 @@ dependencies = [
"tower-service",
"url",
"utxo_signer",
- "uuid 1.2.2",
+ "uuid",
"wagyu-zcash-parameters",
"wasm-bindgen",
"wasm-bindgen-futures",
@@ -1159,7 +967,7 @@ dependencies = [
"mm2_metamask",
"mm2_metrics",
"mm2_number",
- "parking_lot 0.12.0",
+ "parking_lot",
"rpc",
"rpc_task",
"ser_error",
@@ -1203,7 +1011,7 @@ dependencies = [
"libc",
"lightning",
"log",
- "parking_lot 0.12.0",
+ "parking_lot",
"parking_lot_core 0.6.2",
"primitive-types",
"rand 0.7.3",
@@ -1219,7 +1027,7 @@ dependencies = [
"sha2 0.10.7",
"shared_ref_counter",
"tokio",
- "uuid 1.2.2",
+ "uuid",
"wasm-bindgen",
"wasm-bindgen-futures",
"wasm-bindgen-test",
@@ -1245,21 +1053,6 @@ dependencies = [
"crossbeam-utils 0.8.16",
]
-[[package]]
-name = "console"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28b32d32ca44b70c3e4acd7db1babf555fa026e385fb95f18028f88848b3c31"
-dependencies = [
- "encode_unicode",
- "libc",
- "once_cell",
- "regex",
- "terminal_size",
- "unicode-width",
- "winapi",
-]
-
[[package]]
name = "console_error_panic_hook"
version = "0.1.7"
@@ -1270,16 +1063,6 @@ dependencies = [
"wasm-bindgen",
]
-[[package]]
-name = "console_log"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "501a375961cef1a0d44767200e66e4a559283097e91d0730b1d75dfb2f8a1494"
-dependencies = [
- "log",
- "web-sys",
-]
-
[[package]]
name = "const-oid"
version = "0.9.6"
@@ -1319,9 +1102,9 @@ dependencies = [
[[package]]
name = "cosmos-sdk-proto"
-version = "0.19.0"
+version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73c9d2043a9e617b0d602fbc0a0ecd621568edbf3a9774890a6d562389bd8e1c"
+checksum = "82e23f6ab56d5f031cde05b8b82a5fefd3a1a223595c79e32317a97189e612bc"
dependencies = [
"prost",
"prost-types",
@@ -1330,18 +1113,18 @@ dependencies = [
[[package]]
name = "cosmrs"
-version = "0.14.0"
+version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af13955d6f356272e6def9ff5e2450a7650df536d8934f47052a20c76513d2f6"
+checksum = "5d184abb7b0039cc64f282dfa5b34165e4c5a7410ab46804636d53f4d09aee44"
dependencies = [
"cosmos-sdk-proto",
"ecdsa",
"eyre",
- "getrandom 0.2.9",
"k256",
"rand_core 0.6.4",
"serde",
"serde_json",
+ "signature 2.2.0",
"subtle-encoding",
"tendermint",
"thiserror",
@@ -1551,7 +1334,7 @@ dependencies = [
"mm2_eth",
"mm2_metamask",
"num-traits",
- "parking_lot 0.12.0",
+ "parking_lot",
"primitives",
"rpc",
"rpc_task",
@@ -1602,16 +1385,6 @@ dependencies = [
"subtle",
]
-[[package]]
-name = "crypto-mac"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58bcd97a54c7ca5ce2f6eb16f6bede5b0ab5f0055fedc17d2f0b4466e21671ca"
-dependencies = [
- "generic-array",
- "subtle",
-]
-
[[package]]
name = "crypto-mac"
version = "0.11.1"
@@ -1718,7 +1491,7 @@ dependencies = [
"cc",
"codespan-reporting",
"lazy_static",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"scratch",
"syn 1.0.95",
@@ -1736,7 +1509,7 @@ version = "1.0.81"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b846f081361125bfc8dc9d3940c84e1fd83ba54bbca7b17cd29483c828be0704"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -1759,9 +1532,9 @@ checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
dependencies = [
"fnv",
"ident_case",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
- "strsim 0.10.0",
+ "strsim",
"syn 1.0.95",
]
@@ -1776,17 +1549,6 @@ dependencies = [
"syn 1.0.95",
]
-[[package]]
-name = "dashmap"
-version = "4.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e77a43b28d0668df09411cb0bc9a8c2adc40f9a048afe863e05fd43251e8e39c"
-dependencies = [
- "cfg-if 1.0.0",
- "num_cpus",
- "rayon",
-]
-
[[package]]
name = "data-encoding"
version = "2.4.0"
@@ -1825,7 +1587,7 @@ dependencies = [
"rusqlite",
"sql-builder",
"tokio",
- "uuid 1.2.2",
+ "uuid",
]
[[package]]
@@ -1838,55 +1600,17 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "derivation-path"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "193388a8c8c75a490b604ff61775e236541b8975e98e5ca1f6ea97d122b7e2db"
-dependencies = [
- "failure",
-]
-
-[[package]]
-name = "derivation-path"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e5c37193a1db1d8ed868c03ec7b152175f26160a5b740e5e484143877e0adf0"
-
-[[package]]
-name = "derivative"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
[[package]]
name = "derive_more"
version = "0.99.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41cb0e6161ad61ed084a36ba71fbba9e3ac5aee3606fb607fe08da6acbcf3d8c"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
-[[package]]
-name = "dialoguer"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61579ada4ec0c6031cfac3f86fdba0d195a7ebeb5e36693bd53cb5999a25beeb"
-dependencies = [
- "console",
- "lazy_static",
- "tempfile",
- "zeroize",
-]
-
[[package]]
name = "digest"
version = "0.9.0"
@@ -1908,15 +1632,6 @@ dependencies = [
"subtle",
]
-[[package]]
-name = "dir-diff"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2860407d7d7e2e004bb2128510ad9e8d669e76fa005ccf567977b5d71b8b4a0b"
-dependencies = [
- "walkdir",
-]
-
[[package]]
name = "directories"
version = "3.0.2"
@@ -1937,16 +1652,6 @@ dependencies = [
"winapi",
]
-[[package]]
-name = "dirs-next"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
-dependencies = [
- "cfg-if 1.0.0",
- "dirs-sys-next",
-]
-
[[package]]
name = "dirs-sys"
version = "0.3.6"
@@ -1958,40 +1663,6 @@ dependencies = [
"winapi",
]
-[[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
-dependencies = [
- "libc",
- "redox_users 0.4.0",
- "winapi",
-]
-
-[[package]]
-name = "dlopen"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71e80ad39f814a9abe68583cd50a2d45c8a67561c3361ab8da240587dda80937"
-dependencies = [
- "dlopen_derive",
- "lazy_static",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "dlopen_derive"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f236d9e1b1fbd81cea0f9cbdc8dcc7e8ebcd80e6659cd7cb2ad5f6c05946c581"
-dependencies = [
- "libc",
- "quote 0.6.13",
- "syn 0.15.44",
-]
-
[[package]]
name = "dtoa"
version = "1.0.2"
@@ -2018,6 +1689,7 @@ version = "1.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e9c280362032ea4203659fc489832d0204ef09f247a0506f170dafcac08c369"
dependencies = [
+ "serde",
"signature 1.4.0",
]
@@ -2054,44 +1726,20 @@ dependencies = [
"ed25519 1.5.2",
"rand 0.7.3",
"serde",
+ "serde_bytes",
"sha2 0.9.9",
"zeroize",
]
[[package]]
-name = "ed25519-dalek-bip32"
-version = "0.1.1"
+name = "edit-distance"
+version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "057f328f31294b5ab432e6c39642f54afd1531677d6d4ba2905932844cc242f3"
-dependencies = [
- "derivation-path 0.1.3",
- "ed25519-dalek",
- "failure",
- "hmac 0.9.0",
- "sha2 0.9.9",
-]
+checksum = "bbbaaaf38131deb9ca518a274a45bfdb8771f139517b073b16c2d3d32ae5037b"
[[package]]
-name = "ed25519-dalek-bip32"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d2be62a4061b872c8c0873ee4fc6f101ce7b889d039f019c5fa2af471a59908"
-dependencies = [
- "derivation-path 0.2.0",
- "ed25519-dalek",
- "hmac 0.12.1",
- "sha2 0.10.7",
-]
-
-[[package]]
-name = "edit-distance"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbbaaaf38131deb9ca518a274a45bfdb8771f139517b073b16c2d3d32ae5037b"
-
-[[package]]
-name = "either"
-version = "1.8.1"
+name = "either"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
@@ -2114,12 +1762,6 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "encode_unicode"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
-
[[package]]
name = "encoding_rs"
version = "0.8.28"
@@ -2142,7 +1784,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116"
dependencies = [
"heck",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -2163,7 +1805,7 @@ name = "enum_derives"
version = "0.1.0"
dependencies = [
"itertools",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -2319,28 +1961,6 @@ dependencies = [
"once_cell",
]
-[[package]]
-name = "failure"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
-dependencies = [
- "backtrace",
- "failure_derive",
-]
-
-[[package]]
-name = "failure_derive"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
- "synstructure",
-]
-
[[package]]
name = "fallible-iterator"
version = "0.2.0"
@@ -2362,12 +1982,6 @@ dependencies = [
"instant",
]
-[[package]]
-name = "feature-probe"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da"
-
[[package]]
name = "ff"
version = "0.8.0"
@@ -2395,18 +2009,6 @@ version = "0.1.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e825f6987101665dea6ec934c09ec6d721de7bc1bf92248e1d5810c8cd636b77"
-[[package]]
-name = "filetime"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "redox_syscall 0.2.10",
- "winapi",
-]
-
[[package]]
name = "findshlibs"
version = "0.5.0"
@@ -2453,7 +2055,6 @@ version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c606d892c9de11507fa0dcffc116434f94e105d0bbdc4e405b61519464c49d7b"
dependencies = [
- "eyre",
"paste",
]
@@ -2465,11 +2066,10 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
[[package]]
name = "form_urlencoded"
-version = "1.0.1"
+version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
dependencies = [
- "matches",
"percent-encoding",
]
@@ -2597,7 +2197,7 @@ version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -2681,22 +2281,11 @@ version = "0.14.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
dependencies = [
- "serde",
"typenum",
"version_check",
"zeroize",
]
-[[package]]
-name = "gethostname"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e692e296bfac1d2533ef168d0b60ff5897b8b70a4009276834014dd8924cc028"
-dependencies = [
- "libc",
- "winapi",
-]
-
[[package]]
name = "getrandom"
version = "0.1.14"
@@ -2922,17 +2511,6 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b07f60793ff0a4d9cef0f18e63b5357e06209987153a64648c972c1e5aff336f"
-[[package]]
-name = "hidapi"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38b1717343691998deb81766bfcd1dce6df0d5d6c37070b5a3de2bb6d39f7822"
-dependencies = [
- "cc",
- "libc",
- "pkg-config",
-]
-
[[package]]
name = "hkd32"
version = "0.6.0"
@@ -2955,16 +2533,6 @@ dependencies = [
"digest 0.9.0",
]
-[[package]]
-name = "hmac"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "deae6d9dbb35ec2c502d62b8f7b1c000a0822c3b0794ba36b3149c0a1c840dff"
-dependencies = [
- "crypto-mac 0.9.1",
- "digest 0.9.0",
-]
-
[[package]]
name = "hmac"
version = "0.11.0"
@@ -3195,6 +2763,16 @@ dependencies = [
"unicode-normalization",
]
+[[package]]
+name = "idna"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
+dependencies = [
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
[[package]]
name = "if-addrs"
version = "0.7.0"
@@ -3257,7 +2835,7 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d5dacb10c5b3bb92d46ba347505a9041e676bb20ad220101326bffb0c93031ee"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -3268,12 +2846,6 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
-[[package]]
-name = "index_list"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a9d968042a4902e08810946fc7cd5851eb75e80301342305af755ca06cb82ce"
-
[[package]]
name = "indexmap"
version = "1.9.3"
@@ -3294,18 +2866,6 @@ dependencies = [
"hashbrown 0.14.3",
]
-[[package]]
-name = "indicatif"
-version = "0.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d207dc617c7a380ab07ff572a6e52fa202a2a8f355860ac9c38e23f8196be1b"
-dependencies = [
- "console",
- "lazy_static",
- "number_prefix",
- "regex",
-]
-
[[package]]
name = "inout"
version = "0.1.3"
@@ -3407,15 +2967,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "jobserver"
-version = "0.1.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
-dependencies = [
- "libc",
-]
-
[[package]]
name = "js-sys"
version = "0.3.64"
@@ -3463,9 +3014,7 @@ dependencies = [
"cfg-if 1.0.0",
"ecdsa",
"elliptic-curve",
- "once_cell",
"sha2 0.10.7",
- "signature 2.2.0",
]
[[package]]
@@ -3535,16 +3084,6 @@ version = "0.2.150"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
-[[package]]
-name = "libloading"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd"
-dependencies = [
- "cfg-if 1.0.0",
- "winapi",
-]
-
[[package]]
name = "libm"
version = "0.1.4"
@@ -3627,7 +3166,7 @@ dependencies = [
"multihash",
"multistream-select",
"once_cell",
- "parking_lot 0.12.0",
+ "parking_lot",
"pin-project",
"quick-protobuf",
"rand 0.8.4",
@@ -3647,7 +3186,7 @@ dependencies = [
"libp2p-core",
"libp2p-identity",
"log",
- "parking_lot 0.12.0",
+ "parking_lot",
"smallvec 1.6.1",
"trust-dns-resolver",
]
@@ -3733,7 +3272,7 @@ dependencies = [
"asn1_der",
"bs58 0.5.0",
"ed25519-dalek",
- "libsecp256k1 0.7.0",
+ "libsecp256k1",
"log",
"multihash",
"quick-protobuf",
@@ -3866,7 +3405,7 @@ source = "git+https://github.com/KomodoPlatform/rust-libp2p.git?tag=k-0.52.4#6fc
dependencies = [
"heck",
"proc-macro-warning",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -3911,7 +3450,7 @@ dependencies = [
"libp2p-core",
"libp2p-identity",
"log",
- "parking_lot 0.12.0",
+ "parking_lot",
"quicksink",
"rw-stream-sink",
"soketto",
@@ -3933,25 +3472,6 @@ dependencies = [
"yamux 0.13.1",
]
-[[package]]
-name = "libsecp256k1"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73"
-dependencies = [
- "arrayref",
- "base64 0.12.3",
- "digest 0.9.0",
- "hmac-drbg",
- "libsecp256k1-core 0.2.2",
- "libsecp256k1-gen-ecmult 0.2.1",
- "libsecp256k1-gen-genmult 0.2.1",
- "rand 0.7.3",
- "serde",
- "sha2 0.9.9",
- "typenum",
-]
-
[[package]]
name = "libsecp256k1"
version = "0.7.0"
@@ -3962,26 +3482,15 @@ dependencies = [
"base64 0.13.0",
"digest 0.9.0",
"hmac-drbg",
- "libsecp256k1-core 0.3.0",
- "libsecp256k1-gen-ecmult 0.3.0",
- "libsecp256k1-gen-genmult 0.3.0",
+ "libsecp256k1-core",
+ "libsecp256k1-gen-ecmult",
+ "libsecp256k1-gen-genmult",
"rand 0.8.4",
"serde",
"sha2 0.9.9",
"typenum",
]
-[[package]]
-name = "libsecp256k1-core"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80"
-dependencies = [
- "crunchy",
- "digest 0.9.0",
- "subtle",
-]
-
[[package]]
name = "libsecp256k1-core"
version = "0.3.0"
@@ -3993,31 +3502,13 @@ dependencies = [
"subtle",
]
-[[package]]
-name = "libsecp256k1-gen-ecmult"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccab96b584d38fac86a83f07e659f0deafd0253dc096dab5a36d53efe653c5c3"
-dependencies = [
- "libsecp256k1-core 0.2.2",
-]
-
[[package]]
name = "libsecp256k1-gen-ecmult"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809"
dependencies = [
- "libsecp256k1-core 0.3.0",
-]
-
-[[package]]
-name = "libsecp256k1-gen-genmult"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67abfe149395e3aa1c48a2beb32b068e2334402df8181f818d3aee2b304c4f5d"
-dependencies = [
- "libsecp256k1-core 0.2.2",
+ "libsecp256k1-core",
]
[[package]]
@@ -4026,7 +3517,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c"
dependencies = [
- "libsecp256k1-core 0.3.0",
+ "libsecp256k1-core",
]
[[package]]
@@ -4223,15 +3714,6 @@ version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-[[package]]
-name = "memmap2"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "057a3db23999c867821a7a59feb06a578fcb03685e983dff90daf9e7d24ac08f"
-dependencies = [
- "libc",
-]
-
[[package]]
name = "memoffset"
version = "0.5.6"
@@ -4296,7 +3778,7 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddece26afd34c31585c74a4db0630c376df271c285d682d1e55012197830b6df"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -4358,7 +3840,7 @@ dependencies = [
[[package]]
name = "mm2_bin_lib"
-version = "2.1.0-beta"
+version = "2.2.0-beta"
dependencies = [
"chrono",
"common",
@@ -4394,6 +3876,7 @@ dependencies = [
"hex",
"instant",
"lazy_static",
+ "libp2p",
"mm2_err_handle",
"mm2_event_stream",
"mm2_metrics",
@@ -4407,7 +3890,7 @@ dependencies = [
"serde_json",
"shared_ref_counter",
"tokio",
- "uuid 1.2.2",
+ "uuid",
"wasm-bindgen-test",
]
@@ -4477,7 +3960,7 @@ dependencies = [
"cfg-if 1.0.0",
"common",
"futures 0.3.28",
- "parking_lot 0.12.0",
+ "parking_lot",
"serde",
"tokio",
"wasm-bindgen-test",
@@ -4592,7 +4075,7 @@ dependencies = [
"mocktopus",
"num-traits",
"parity-util-mem",
- "parking_lot 0.12.0",
+ "parking_lot",
"primitives",
"prost",
"prost-build",
@@ -4616,6 +4099,7 @@ dependencies = [
"serde_json",
"serialization",
"serialization_derive",
+ "sia-rust",
"sp-runtime-interface",
"sp-trie",
"spv_validation",
@@ -4623,7 +4107,8 @@ dependencies = [
"tokio",
"trie-db",
"trie-root 0.16.0",
- "uuid 1.2.2",
+ "url",
+ "uuid",
"wasm-bindgen",
"wasm-bindgen-futures",
"wasm-bindgen-test",
@@ -4646,7 +4131,7 @@ dependencies = [
"lazy_static",
"mm2_err_handle",
"mm2_eth",
- "parking_lot 0.12.0",
+ "parking_lot",
"serde",
"serde_derive",
"serde_json",
@@ -4698,10 +4183,8 @@ dependencies = [
"lazy_static",
"mm2_core",
"mm2_err_handle",
- "mm2_event_stream",
- "mm2_p2p",
+ "mm2_number",
"mm2_state_machine",
- "parking_lot 0.12.0",
"pin-project",
"prost",
"rand 0.7.3",
@@ -4750,12 +4233,17 @@ dependencies = [
"lazy_static",
"libp2p",
"log",
+ "mm2_core",
+ "mm2_event_stream",
+ "mm2_number",
+ "parking_lot",
"rand 0.7.3",
"regex",
"rmp-serde",
"secp256k1 0.20.3",
"serde",
"serde_bytes",
+ "serde_json",
"sha2 0.10.7",
"smallvec 1.6.1",
"syn 2.0.38",
@@ -4779,7 +4267,7 @@ dependencies = [
"ser_error_derive",
"serde",
"serde_json",
- "uuid 1.2.2",
+ "uuid",
]
[[package]]
@@ -4817,7 +4305,7 @@ dependencies = [
"serde",
"serde_derive",
"serde_json",
- "uuid 1.2.2",
+ "uuid",
]
[[package]]
@@ -4835,7 +4323,7 @@ version = "0.7.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3048ef3680533a27f9f8e7d6a0bce44dc61e4895ea0f42709337fa1c8616fefe"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -4974,19 +4462,6 @@ dependencies = [
"smallvec 1.6.1",
]
-[[package]]
-name = "nix"
-version = "0.23.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6"
-dependencies = [
- "bitflags",
- "cc",
- "cfg-if 1.0.0",
- "libc",
- "memoffset 0.6.4",
-]
-
[[package]]
name = "nix"
version = "0.24.3"
@@ -5031,13 +4506,13 @@ dependencies = [
[[package]]
name = "num-derive"
-version = "0.3.3"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
- "syn 1.0.95",
+ "syn 2.0.38",
]
[[package]]
@@ -5082,34 +4557,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "num_enum"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9bd055fb730c4f8f4f57d45d35cd6b3f0980535b056dc7ff119cee6a66ed6f"
-dependencies = [
- "derivative",
- "num_enum_derive",
-]
-
-[[package]]
-name = "num_enum_derive"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "486ea01961c4a818096de679a8b740b26d9033146ac5291b1c98557658f8cdd9"
-dependencies = [
- "proc-macro-crate 1.1.3",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
-[[package]]
-name = "number_prefix"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
-
[[package]]
name = "object"
version = "0.29.0"
@@ -5146,30 +4593,6 @@ dependencies = [
"num-traits",
]
-[[package]]
-name = "ouroboros"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f357ef82d1b4db66fbed0b8d542cbd3c22d0bf5b393b3c257b9ba4568e70c9c3"
-dependencies = [
- "aliasable",
- "ouroboros_macro",
- "stable_deref_trait",
-]
-
-[[package]]
-name = "ouroboros_macro"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44a0b52c2cbaef7dffa5fec1a43274afe8bd2a644fa9fc50a9ef4ff0269b1257"
-dependencies = [
- "Inflector",
- "proc-macro-error",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
-]
-
[[package]]
name = "packed_simd_2"
version = "0.3.8"
@@ -5210,8 +4633,8 @@ version = "3.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c45ed1f39709f5a89338fab50e59816b2e8815f5bb58276e7ddf9afd495f73f8"
dependencies = [
- "proc-macro-crate 1.1.3",
- "proc-macro2 1.0.69",
+ "proc-macro-crate",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -5228,7 +4651,7 @@ dependencies = [
"impl-trait-for-tuples",
"lru 0.7.5",
"parity-util-mem-derive",
- "parking_lot 0.12.0",
+ "parking_lot",
"primitive-types",
"smallvec 1.6.1",
"winapi",
@@ -5240,7 +4663,7 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"syn 1.0.95",
"synstructure",
]
@@ -5257,17 +4680,6 @@ version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e"
-[[package]]
-name = "parking_lot"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
-dependencies = [
- "instant",
- "lock_api",
- "parking_lot_core 0.8.0",
-]
-
[[package]]
name = "parking_lot"
version = "0.12.0"
@@ -5285,7 +4697,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
dependencies = [
"cfg-if 0.1.10",
- "cloudabi 0.0.3",
+ "cloudabi",
"libc",
"redox_syscall 0.1.56",
"rustc_version 0.2.3",
@@ -5293,21 +4705,6 @@ dependencies = [
"winapi",
]
-[[package]]
-name = "parking_lot_core"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c361aa727dd08437f2f1447be8b59a33b0edd15e0fcee698f935613d9efbca9b"
-dependencies = [
- "cfg-if 0.1.10",
- "cloudabi 0.1.0",
- "instant",
- "libc",
- "redox_syscall 0.1.56",
- "smallvec 1.6.1",
- "winapi",
-]
-
[[package]]
name = "parking_lot_core"
version = "0.9.1"
@@ -5339,49 +4736,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
[[package]]
-name = "pbkdf2"
-version = "0.4.0"
+name = "peg"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd"
+checksum = "295283b02df346d1ef66052a757869b2876ac29a6bb0ac3f5f7cd44aebe40e8f"
dependencies = [
- "crypto-mac 0.8.0",
+ "peg-macros",
+ "peg-runtime",
]
[[package]]
-name = "pbkdf2"
-version = "0.9.0"
+name = "peg-macros"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f05894bce6a1ba4be299d0c5f29563e08af2bc18bb7d48313113bed71e904739"
+checksum = "bdad6a1d9cf116a059582ce415d5f5566aabcd4008646779dab7fdc2a9a9d426"
dependencies = [
- "crypto-mac 0.11.1",
+ "peg-runtime",
+ "proc-macro2",
+ "quote 1.0.33",
]
[[package]]
-name = "peg"
-version = "0.7.0"
+name = "peg-runtime"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07c0b841ea54f523f7aa556956fbd293bcbe06f2e67d2eb732b7278aaf1d166a"
-dependencies = [
- "peg-macros",
- "peg-runtime",
-]
-
-[[package]]
-name = "peg-macros"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5aa52829b8decbef693af90202711348ab001456803ba2a98eb4ec8fb70844c"
-dependencies = [
- "peg-runtime",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
-]
-
-[[package]]
-name = "peg-runtime"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c719dcf55f09a3a7e764c6649ab594c18a177e3599c467983cdf644bfc0a4088"
+checksum = "e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a"
[[package]]
name = "pem"
@@ -5394,9 +4773,9 @@ dependencies = [
[[package]]
name = "percent-encoding"
-version = "2.1.0"
+version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
[[package]]
name = "petgraph"
@@ -5423,7 +4802,7 @@ version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec2e072ecce94ec471b13398d5402c188e76ac03cf74dd1a975161b23a3f6d9c"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -5521,12 +4900,12 @@ checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
[[package]]
name = "prettyplease"
-version = "0.1.11"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f28f53e8b192565862cf99343194579a022eb9c7dd3a8d03134734803c7b3125"
+checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d"
dependencies = [
- "proc-macro2 1.0.69",
- "syn 1.0.95",
+ "proc-macro2",
+ "syn 2.0.38",
]
[[package]]
@@ -5553,15 +4932,6 @@ dependencies = [
"uint",
]
-[[package]]
-name = "proc-macro-crate"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
-dependencies = [
- "toml",
-]
-
[[package]]
name = "proc-macro-crate"
version = "1.1.3"
@@ -5569,31 +4939,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a"
dependencies = [
"thiserror",
- "toml",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 1.0.95",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "version_check",
+ "toml 0.5.7",
]
[[package]]
@@ -5602,20 +4948,11 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70550716265d1ec349c41f70dd4f964b4fd88394efe4405f0c1da679c4799a07"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
-[[package]]
-name = "proc-macro2"
-version = "0.4.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-dependencies = [
- "unicode-xid 0.1.0",
-]
-
[[package]]
name = "proc-macro2"
version = "1.0.69"
@@ -5633,7 +4970,7 @@ checksum = "78c2f43e8969d51935d2a7284878ae053ba30034cd563f673cde37ba5205685e"
dependencies = [
"dtoa",
"itoa 1.0.10",
- "parking_lot 0.12.0",
+ "parking_lot",
"prometheus-client-derive-encode",
]
@@ -5643,16 +4980,16 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b6a5217beb0ad503ee7fa752d451c905113d70721b937126158f3106a48cc1"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
[[package]]
name = "prost"
-version = "0.11.9"
+version = "0.12.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
+checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29"
dependencies = [
"bytes 1.4.0",
"prost-derive",
@@ -5660,44 +4997,43 @@ dependencies = [
[[package]]
name = "prost-build"
-version = "0.11.9"
+version = "0.12.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
+checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4"
dependencies = [
"bytes 1.4.0",
"heck",
"itertools",
- "lazy_static",
"log",
"multimap",
+ "once_cell",
"petgraph",
"prettyplease",
"prost",
"prost-types",
"regex",
- "syn 1.0.95",
+ "syn 2.0.38",
"tempfile",
- "which",
]
[[package]]
name = "prost-derive"
-version = "0.11.9"
+version = "0.12.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
+checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
dependencies = [
"anyhow",
"itertools",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
- "syn 1.0.95",
+ "syn 2.0.38",
]
[[package]]
name = "prost-types"
-version = "0.11.9"
+version = "0.12.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13"
+checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0"
dependencies = [
"prost",
]
@@ -5728,12 +5064,15 @@ dependencies = [
]
[[package]]
-name = "qstring"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d464fae65fff2680baf48019211ce37aaec0c78e9264c84a3e484717f965104e"
+name = "proxy_signature"
+version = "0.1.0"
dependencies = [
- "percent-encoding",
+ "chrono",
+ "http 0.2.12",
+ "libp2p",
+ "rand 0.7.3",
+ "serde",
+ "serde_json",
]
[[package]]
@@ -5796,22 +5135,13 @@ version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
-[[package]]
-name = "quote"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
-dependencies = [
- "proc-macro2 0.4.30",
-]
-
[[package]]
name = "quote"
version = "1.0.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
]
[[package]]
@@ -6003,7 +5333,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
dependencies = [
- "cloudabi 0.0.3",
+ "cloudabi",
"fuchsia-cprng",
"libc",
"rand_core 0.4.2",
@@ -6049,31 +5379,6 @@ dependencies = [
"bitflags",
]
-[[package]]
-name = "rayon"
-version = "1.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90"
-dependencies = [
- "autocfg 1.1.0",
- "crossbeam-deque 0.8.1",
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e"
-dependencies = [
- "crossbeam-channel 0.5.1",
- "crossbeam-deque 0.8.1",
- "crossbeam-utils 0.8.16",
- "lazy_static",
- "num_cpus",
-]
-
[[package]]
name = "rcgen"
version = "0.10.0"
@@ -6146,7 +5451,7 @@ version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c523ccaed8ac4b0288948849a350b37d3035827413c458b6a40ddb614bb4f72"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -6307,16 +5612,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "rpassword"
-version = "5.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb"
-dependencies = [
- "libc",
- "winapi",
-]
-
[[package]]
name = "rpc"
version = "0.1.0"
@@ -6359,7 +5654,7 @@ dependencies = [
"log",
"netlink-packet-route",
"netlink-proto",
- "nix 0.24.3",
+ "nix",
"thiserror",
"tokio",
]
@@ -6576,14 +5871,6 @@ dependencies = [
"winapi-util",
]
-[[package]]
-name = "satomic-swap"
-version = "0.1.0"
-source = "git+https://github.com/KomodoPlatform/satomic-swap.git?rev=413e472#413e4725a97f2c4d5d34101b3d2c49009c95cb28"
-dependencies = [
- "solana-program",
-]
-
[[package]]
name = "scale-info"
version = "2.1.2"
@@ -6602,8 +5889,8 @@ version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50e334bb10a245e28e5fd755cabcafd96cfcd167c99ae63a46924ca8d8703a3c"
dependencies = [
- "proc-macro-crate 1.1.3",
- "proc-macro2 1.0.69",
+ "proc-macro-crate",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -6787,7 +6074,7 @@ dependencies = [
name = "ser_error_derive"
version = "0.1.0"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"ser_error",
"syn 1.0.95",
@@ -6828,7 +6115,7 @@ version = "1.0.189"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -6851,11 +6138,20 @@ version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2dc6b7951b17b051f3210b063f12cc17320e2fe30ae05b0fe2a3abb068551c76"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
+[[package]]
+name = "serde_spanned"
+version = "0.6.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1"
+dependencies = [
+ "serde",
+]
+
[[package]]
name = "serde_urlencoded"
version = "0.7.1"
@@ -6885,23 +6181,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
dependencies = [
"darling",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
-[[package]]
-name = "serde_yaml"
-version = "0.8.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a521f2940385c165a24ee286aa8599633d162077a54bdcae2a6fd5a7bfa7a0"
-dependencies = [
- "indexmap 1.9.3",
- "ryu",
- "serde",
- "yaml-rust",
-]
-
[[package]]
name = "serialization"
version = "0.1.0"
@@ -6998,6 +6282,26 @@ dependencies = [
"log",
]
+[[package]]
+name = "sia-rust"
+version = "0.1.0"
+source = "git+https://github.com/KomodoPlatform/sia-rust?rev=9f188b80b3213bcb604e7619275251ce08fae808#9f188b80b3213bcb604e7619275251ce08fae808"
+dependencies = [
+ "base64 0.21.7",
+ "blake2b_simd",
+ "chrono",
+ "derive_more",
+ "ed25519-dalek",
+ "hex",
+ "nom",
+ "reqwest",
+ "rustc-hex",
+ "serde",
+ "serde_json",
+ "serde_with",
+ "url",
+]
+
[[package]]
name = "signal-hook-registry"
version = "1.4.0"
@@ -7073,687 +6377,74 @@ dependencies = [
"futures-util",
"libc",
"once_cell",
- "scoped-tls",
- "slab",
- "socket2 0.3.19",
- "wepoll-sys-stjepang",
- "winapi",
-]
-
-[[package]]
-name = "snow"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ccba027ba85743e09d15c03296797cad56395089b832b48b5a5217880f57733"
-dependencies = [
- "aes-gcm",
- "blake2",
- "chacha20poly1305",
- "curve25519-dalek 4.0.0-rc.1",
- "rand_core 0.6.4",
- "ring 0.16.20",
- "rustc_version 0.4.0",
- "sha2 0.10.7",
- "subtle",
-]
-
-[[package]]
-name = "socket2"
-version = "0.3.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "socket2"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "socket2"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
-dependencies = [
- "libc",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "soketto"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "083624472e8817d44d02c0e55df043737ff11f279af924abdf93845717c2b75c"
-dependencies = [
- "base64 0.13.0",
- "bytes 1.4.0",
- "futures 0.3.28",
- "httparse",
- "log",
- "rand 0.8.4",
- "sha-1",
-]
-
-[[package]]
-name = "solana-account-decoder"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ea8c1862fc46c6ab40d83d15ced24a7afb1f3422da5824f1e9260f5ac10141f"
-dependencies = [
- "Inflector",
- "base64 0.12.3",
- "bincode",
- "bs58 0.4.0",
- "bv",
- "lazy_static",
- "serde",
- "serde_derive",
- "serde_json",
- "solana-config-program",
- "solana-sdk",
- "solana-vote-program",
- "spl-token",
- "thiserror",
- "zstd",
-]
-
-[[package]]
-name = "solana-address-lookup-table-program"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c60728aec35d772e6614319558cdccbe3f845102699b65ba5ac7497da0b626a"
-dependencies = [
- "bincode",
- "bytemuck",
- "log",
- "num-derive",
- "num-traits",
- "rustc_version 0.4.0",
- "serde",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-program-runtime",
- "solana-sdk",
- "thiserror",
-]
-
-[[package]]
-name = "solana-bloom"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ddcd7c6adb802bc812a5a80c8de06ba0f0e8df0cca296a8b4e67cd04c16218f"
-dependencies = [
- "bv",
- "fnv",
- "log",
- "rand 0.7.3",
- "rayon",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-sdk",
-]
-
-[[package]]
-name = "solana-bucket-map"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b3435b145894971a58a08a7b6be997ec782239fdecd5edd9846cd1d6aa5986"
-dependencies = [
- "fs_extra",
- "log",
- "memmap2",
- "rand 0.7.3",
- "rayon",
- "solana-logger",
- "solana-measure",
- "solana-sdk",
- "tempfile",
-]
-
-[[package]]
-name = "solana-clap-utils"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8417a89c377728dbfbf1966b6493544f6e5e168ebc5bb444f3526481fae94e31"
-dependencies = [
- "chrono",
- "clap",
- "rpassword",
- "solana-perf",
- "solana-remote-wallet",
- "solana-sdk",
- "thiserror",
- "tiny-bip39",
- "uriparse",
- "url",
-]
-
-[[package]]
-name = "solana-cli-config"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e8b011d36369ef2bc3dff63fee078bf2916a4fd21f3aa702ee731c7ddf83d28"
-dependencies = [
- "dirs-next",
- "lazy_static",
- "serde",
- "serde_derive",
- "serde_yaml",
- "url",
-]
-
-[[package]]
-name = "solana-client"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e20f4df8cee4a1819f1c5b0d3d85d50c30f27133b2ae68c2fd92655e4aede34a"
-dependencies = [
- "base64 0.13.0",
- "bincode",
- "bs58 0.4.0",
- "clap",
- "indicatif",
- "jsonrpc-core",
- "log",
- "rayon",
- "reqwest",
- "semver 1.0.6",
- "serde",
- "serde_derive",
- "serde_json",
- "solana-account-decoder",
- "solana-clap-utils",
- "solana-faucet",
- "solana-measure",
- "solana-net-utils",
- "solana-sdk",
- "solana-transaction-status",
- "solana-version",
- "solana-vote-program",
- "thiserror",
- "tokio",
- "tungstenite",
- "url",
-]
-
-[[package]]
-name = "solana-compute-budget-program"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685567c221f6bb5b64387f7b45d03036ad112b2ecbcd0f94b11204efab9f891e"
-dependencies = [
- "solana-program-runtime",
- "solana-sdk",
-]
-
-[[package]]
-name = "solana-config-program"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f4b04403ff77f09eba5cf94078c1178161e26d346245b06180866ab5286fe6b"
-dependencies = [
- "bincode",
- "chrono",
- "serde",
- "serde_derive",
- "solana-program-runtime",
- "solana-sdk",
-]
-
-[[package]]
-name = "solana-faucet"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a11e1b6d5ce435bb3df95f2a970cd80500a8abf94ea87558c35fe0cce8456ab"
-dependencies = [
- "bincode",
- "byteorder",
- "clap",
- "log",
- "serde",
- "serde_derive",
- "solana-clap-utils",
- "solana-cli-config",
- "solana-logger",
- "solana-metrics",
- "solana-sdk",
- "solana-version",
- "spl-memo",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "solana-frozen-abi"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5f69a79200f5ba439eb8b790c5e00beab4d1fae4da69ce023c69c6ac1b55bf1"
-dependencies = [
- "bs58 0.4.0",
- "bv",
- "generic-array",
- "log",
- "memmap2",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "sha2 0.9.9",
- "solana-frozen-abi-macro",
- "solana-logger",
- "thiserror",
-]
-
-[[package]]
-name = "solana-frozen-abi-macro"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "402fffb54bf5d335e6df26fc1719feecfbd7a22fafdf6649fe78380de3c47384"
-dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "rustc_version 0.4.0",
- "syn 1.0.95",
-]
-
-[[package]]
-name = "solana-logger"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "942dc59fc9da66d178362051b658646b65dc11cea0bc804e4ecd2528d3c1279f"
-dependencies = [
- "env_logger",
- "lazy_static",
- "log",
-]
-
-[[package]]
-name = "solana-measure"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ccd5b1278b115249d6ca5a203fd852f7d856e048488c24442222ee86e682bd9"
-dependencies = [
- "log",
- "solana-sdk",
-]
-
-[[package]]
-name = "solana-metrics"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9774cd8309f599797b1612731fbc56df6c612879ab4923a3dc7234400eea419"
-dependencies = [
- "env_logger",
- "gethostname",
- "lazy_static",
- "log",
- "reqwest",
- "solana-sdk",
-]
-
-[[package]]
-name = "solana-net-utils"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cb530af085d8aab563530ed39703096aa526249d350082823882fdd59cdf839"
-dependencies = [
- "bincode",
- "clap",
- "log",
- "nix 0.23.1",
- "rand 0.7.3",
- "serde",
- "serde_derive",
- "socket2 0.4.9",
- "solana-logger",
- "solana-sdk",
- "solana-version",
- "tokio",
- "url",
-]
-
-[[package]]
-name = "solana-perf"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4117c0cf7753bc18f3a09f4973175c3f2c7c5d8e3c9bc15cab09060b06f3434f"
-dependencies = [
- "ahash 0.7.6",
- "bincode",
- "bv",
- "caps",
- "curve25519-dalek 3.2.0",
- "dlopen",
- "dlopen_derive",
- "fnv",
- "lazy_static",
- "libc",
- "log",
- "nix 0.23.1",
- "rand 0.7.3",
- "rayon",
- "serde",
- "solana-bloom",
- "solana-logger",
- "solana-metrics",
- "solana-rayon-threadlimit",
- "solana-sdk",
- "solana-vote-program",
-]
-
-[[package]]
-name = "solana-program"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a463f546a2f5842d35974bd4691ae5ceded6785ec24db440f773723f6ce4e11"
-dependencies = [
- "base64 0.13.0",
- "bincode",
- "bitflags",
- "blake3",
- "borsh",
- "borsh-derive",
- "bs58 0.4.0",
- "bv",
- "bytemuck",
- "console_error_panic_hook",
- "console_log",
- "curve25519-dalek 3.2.0",
- "getrandom 0.1.14",
- "itertools",
- "js-sys",
- "lazy_static",
- "libsecp256k1 0.6.0",
- "log",
- "num-derive",
- "num-traits",
- "parking_lot 0.11.1",
- "rand 0.7.3",
- "rustc_version 0.4.0",
- "rustversion",
- "serde",
- "serde_bytes",
- "serde_derive",
- "sha2 0.9.9",
- "sha3 0.9.1",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-logger",
- "solana-sdk-macro",
- "thiserror",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "solana-program-runtime"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09841673334eab958d5bedab9c9d75ed2ff7a7ef70e7dfd6b239c6838a3d79ec"
-dependencies = [
- "base64 0.13.0",
- "bincode",
- "itertools",
- "libc",
- "libloading",
- "log",
- "num-derive",
- "num-traits",
- "rustc_version 0.4.0",
- "serde",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-logger",
- "solana-measure",
- "solana-sdk",
- "thiserror",
-]
-
-[[package]]
-name = "solana-rayon-threadlimit"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f92893e3129dfabb703cd045e1367f3ced91202a2d0b6179a3dcd62ad6bead3b"
-dependencies = [
- "lazy_static",
- "num_cpus",
-]
-
-[[package]]
-name = "solana-remote-wallet"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "315534baecaae3f804548ccc4738d73ae01bf6523219787ebe55ee66d8db9a85"
-dependencies = [
- "base32",
- "console",
- "dialoguer",
- "hidapi",
- "log",
- "num-derive",
- "num-traits",
- "parking_lot 0.11.1",
- "qstring",
- "semver 1.0.6",
- "solana-sdk",
- "thiserror",
- "uriparse",
-]
-
-[[package]]
-name = "solana-runtime"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bd06e905260433f7e8d18bccb2e2eb2aa5cc53379d104d331ddeb12e13230a0"
-dependencies = [
- "arrayref",
- "bincode",
- "blake3",
- "bv",
- "bytemuck",
- "byteorder",
- "bzip2",
- "crossbeam-channel 0.5.1",
- "dashmap",
- "dir-diff",
- "flate2",
- "fnv",
- "index_list",
- "itertools",
- "lazy_static",
- "log",
- "memmap2",
- "num-derive",
- "num-traits",
- "num_cpus",
- "ouroboros",
- "rand 0.7.3",
- "rayon",
- "regex",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "solana-address-lookup-table-program",
- "solana-bloom",
- "solana-bucket-map",
- "solana-compute-budget-program",
- "solana-config-program",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-logger",
- "solana-measure",
- "solana-metrics",
- "solana-program-runtime",
- "solana-rayon-threadlimit",
- "solana-sdk",
- "solana-stake-program",
- "solana-vote-program",
- "symlink",
- "tar",
- "tempfile",
- "thiserror",
- "zstd",
-]
-
-[[package]]
-name = "solana-sdk"
-version = "1.9.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6560e605c68fa1e3e66a9d3c8529d097d402e1183f80dd06a2c870d0ecb795c2"
-dependencies = [
- "assert_matches",
- "base64 0.13.0",
- "bincode",
- "bitflags",
- "borsh",
- "bs58 0.4.0",
- "bytemuck",
- "byteorder",
- "chrono",
- "derivation-path 0.1.3",
- "digest 0.9.0",
- "ed25519-dalek",
- "ed25519-dalek-bip32 0.1.1",
- "generic-array",
- "hmac 0.11.0",
- "itertools",
- "js-sys",
- "lazy_static",
- "libsecp256k1 0.6.0",
- "log",
- "memmap2",
- "num-derive",
- "num-traits",
- "pbkdf2 0.9.0",
- "qstring",
- "rand 0.7.3",
- "rand_chacha 0.2.2",
- "rustc_version 0.4.0",
- "rustversion",
- "serde",
- "serde_bytes",
- "serde_derive",
- "serde_json",
- "sha2 0.9.9",
- "sha3 0.9.1",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-logger",
- "solana-program",
- "solana-sdk-macro",
- "thiserror",
- "uriparse",
- "wasm-bindgen",
+ "scoped-tls",
+ "slab",
+ "socket2 0.3.19",
+ "wepoll-sys-stjepang",
+ "winapi",
]
[[package]]
-name = "solana-sdk-macro"
-version = "1.9.20"
+name = "snow"
+version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c834b4e02ac911b13c13aed08b3f847e722f6be79d31b1c660c1dbd2dee83cdb"
+checksum = "5ccba027ba85743e09d15c03296797cad56395089b832b48b5a5217880f57733"
dependencies = [
- "bs58 0.4.0",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "rustversion",
- "syn 1.0.95",
+ "aes-gcm",
+ "blake2",
+ "chacha20poly1305",
+ "curve25519-dalek 4.0.0-rc.1",
+ "rand_core 0.6.4",
+ "ring 0.16.20",
+ "rustc_version 0.4.0",
+ "sha2 0.10.7",
+ "subtle",
]
[[package]]
-name = "solana-stake-program"
-version = "1.9.20"
+name = "socket2"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f92597c0ed16d167d5ee48e5b13e92dfaed9c55b23a13ec261440136cd418649"
+checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
dependencies = [
- "bincode",
- "log",
- "num-derive",
- "num-traits",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "solana-config-program",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-metrics",
- "solana-program-runtime",
- "solana-sdk",
- "solana-vote-program",
- "thiserror",
+ "cfg-if 1.0.0",
+ "libc",
+ "winapi",
]
[[package]]
-name = "solana-transaction-status"
-version = "1.9.20"
+name = "socket2"
+version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "612a51efa19380992e81fc64a2fb55d42aed32c67d795848d980cbe1f9693250"
+checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
dependencies = [
- "Inflector",
- "base64 0.12.3",
- "bincode",
- "bs58 0.4.0",
- "lazy_static",
- "log",
- "serde",
- "serde_derive",
- "serde_json",
- "solana-account-decoder",
- "solana-measure",
- "solana-metrics",
- "solana-runtime",
- "solana-sdk",
- "solana-vote-program",
- "spl-associated-token-account",
- "spl-memo",
- "spl-token",
- "thiserror",
+ "libc",
+ "winapi",
]
[[package]]
-name = "solana-version"
-version = "1.9.20"
+name = "socket2"
+version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "222e2c91640d45cd9617dfc07121555a9bdac10e6e105f6931b758f46db6faaa"
+checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
dependencies = [
- "log",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-sdk",
+ "libc",
+ "windows-sys 0.48.0",
]
[[package]]
-name = "solana-vote-program"
-version = "1.9.20"
+name = "soketto"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4cc64945010e9e76d368493ad091aa5cf43ee16f69296290ebb5c815e433232"
+checksum = "083624472e8817d44d02c0e55df043737ff11f279af924abdf93845717c2b75c"
dependencies = [
- "bincode",
+ "base64 0.13.0",
+ "bytes 1.4.0",
+ "futures 0.3.28",
+ "httparse",
"log",
- "num-derive",
- "num-traits",
- "rustc_version 0.4.0",
- "serde",
- "serde_derive",
- "solana-frozen-abi",
- "solana-frozen-abi-macro",
- "solana-logger",
- "solana-metrics",
- "solana-program-runtime",
- "solana-sdk",
- "thiserror",
+ "rand 0.8.4",
+ "sha-1",
]
[[package]]
@@ -7787,7 +6478,7 @@ version = "4.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d676664972e22a0796176e81e7bec41df461d1edf52090955cdab55f2c956ff2"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -7816,8 +6507,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "22ecb916b9664ed9f90abef0ff5a3e61454c1efea5861b2997e03f39b59b955f"
dependencies = [
"Inflector",
- "proc-macro-crate 1.1.3",
- "proc-macro2 1.0.69",
+ "proc-macro-crate",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
]
@@ -7901,39 +6592,6 @@ dependencies = [
"der",
]
-[[package]]
-name = "spl-associated-token-account"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "393e2240d521c3dd770806bff25c2c00d761ac962be106e14e22dd912007f428"
-dependencies = [
- "solana-program",
- "spl-token",
-]
-
-[[package]]
-name = "spl-memo"
-version = "3.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd0dc6f70db6bacea7ff25870b016a65ba1d1b6013536f08e4fd79a8f9005325"
-dependencies = [
- "solana-program",
-]
-
-[[package]]
-name = "spl-token"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93bfdd5bd7c869cb565c7d7635c4fafe189b988a0bdef81063cd9585c6b8dc01"
-dependencies = [
- "arrayref",
- "num-derive",
- "num-traits",
- "num_enum",
- "solana-program",
- "thiserror",
-]
-
[[package]]
name = "spv_validation"
version = "0.1.0"
@@ -7971,31 +6629,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f9799e6d412271cb2414597581128b03f3285f260ea49f5363d07df6a332b3e"
dependencies = [
"Inflector",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"serde",
"serde_json",
"unicode-xid 0.2.0",
]
-[[package]]
-name = "stable_deref_trait"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
-
[[package]]
name = "static_assertions"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-[[package]]
-name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-
[[package]]
name = "strsim"
version = "0.10.0"
@@ -8023,12 +6669,6 @@ version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142"
-[[package]]
-name = "symlink"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7973cce6668464ea31f176d85b13c7ab3bba2cb3b77a2ed26abd7801688010a"
-
[[package]]
name = "syn"
version = "0.11.11"
@@ -8040,24 +6680,13 @@ dependencies = [
"unicode-xid 0.0.4",
]
-[[package]]
-name = "syn"
-version = "0.15.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
-dependencies = [
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "unicode-xid 0.1.0",
-]
-
[[package]]
name = "syn"
version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbaf6116ab8924f39d52792136fb74fd60a80194cf1b1c6ffa6453eef1c3f942"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"unicode-ident",
]
@@ -8068,7 +6697,7 @@ version = "2.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"unicode-ident",
]
@@ -8094,7 +6723,7 @@ version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
"unicode-xid 0.2.0",
@@ -8127,17 +6756,6 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
-[[package]]
-name = "tar"
-version = "0.4.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6"
-dependencies = [
- "filetime",
- "libc",
- "xattr",
-]
-
[[package]]
name = "tempfile"
version = "3.4.0"
@@ -8153,9 +6771,9 @@ dependencies = [
[[package]]
name = "tendermint"
-version = "0.32.2"
+version = "0.35.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f0a7d05cf78524782337f8edd55cbc578d159a16ad4affe2135c92f7dbac7f0"
+checksum = "43f8a10105d0a7c4af0a242e23ed5a12519afe5cc0e68419da441bb5981a6802"
dependencies = [
"bytes 1.4.0",
"digest 0.10.7",
@@ -8184,23 +6802,23 @@ dependencies = [
[[package]]
name = "tendermint-config"
-version = "0.32.2"
+version = "0.35.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71a72dbbea6dde12045d261f2c70c0de039125675e8a026c8d5ad34522756372"
+checksum = "ac6bf36c613bb113737c333e3c1d6dfd3c99f8ac679e84feb58dd6456d77fb2e"
dependencies = [
"flex-error",
"serde",
"serde_json",
"tendermint",
- "toml",
+ "toml 0.8.19",
"url",
]
[[package]]
name = "tendermint-proto"
-version = "0.32.2"
+version = "0.35.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0cec054567d16d85e8c3f6a3139963d1a66d9d3051ed545d31562550e9bcc3d"
+checksum = "ff525d5540a9fc535c38dc0d92a98da3ee36fcdfbda99cecb9f3cce5cd4d41d7"
dependencies = [
"bytes 1.4.0",
"flex-error",
@@ -8216,9 +6834,9 @@ dependencies = [
[[package]]
name = "tendermint-rpc"
-version = "0.32.2"
+version = "0.35.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d119d83a130537fc4a98c3c9eb6899ebe857fea4860400a61675bfb5f0b35129"
+checksum = "2d8fe61b1772cd50038bdeeadf53773bb37a09e639dd8e6d996668fd220ddb29"
dependencies = [
"async-trait",
"bytes 1.4.0",
@@ -8226,6 +6844,7 @@ dependencies = [
"getrandom 0.2.9",
"peg",
"pin-project",
+ "rand 0.8.4",
"semver 1.0.6",
"serde",
"serde_bytes",
@@ -8238,7 +6857,7 @@ dependencies = [
"thiserror",
"time 0.3.20",
"url",
- "uuid 0.8.2",
+ "uuid",
"walkdir",
]
@@ -8251,16 +6870,6 @@ dependencies = [
"winapi-util",
]
-[[package]]
-name = "terminal_size"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df"
-dependencies = [
- "libc",
- "winapi",
-]
-
[[package]]
name = "test_helpers"
version = "0.1.0"
@@ -8285,15 +6894,6 @@ dependencies = [
"sha2 0.10.7",
]
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
[[package]]
name = "thiserror"
version = "1.0.40"
@@ -8309,7 +6909,7 @@ version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -8352,25 +6952,6 @@ dependencies = [
"time-core",
]
-[[package]]
-name = "tiny-bip39"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc59cb9dfc85bb312c3a78fd6aa8a8582e310b0fa885d5bb877f6dcc601839d"
-dependencies = [
- "anyhow",
- "hmac 0.8.1",
- "once_cell",
- "pbkdf2 0.4.0",
- "rand 0.7.3",
- "rustc-hash",
- "sha2 0.9.9",
- "thiserror",
- "unicode-normalization",
- "wasm-bindgen",
- "zeroize",
-]
-
[[package]]
name = "tiny-keccak"
version = "1.4.4"
@@ -8415,7 +6996,6 @@ dependencies = [
"libc",
"mio",
"num_cpus",
- "parking_lot 0.12.0",
"pin-project-lite 0.2.9",
"signal-hook-registry",
"socket2 0.4.9",
@@ -8449,7 +7029,7 @@ version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -8542,11 +7122,45 @@ dependencies = [
"serde",
]
+[[package]]
+name = "toml"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
+dependencies = [
+ "indexmap 2.2.3",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow",
+]
+
[[package]]
name = "tonic"
-version = "0.9.2"
+version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a"
+checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e"
dependencies = [
"async-stream",
"async-trait",
@@ -8554,8 +7168,6 @@ dependencies = [
"base64 0.21.7",
"bytes 1.4.0",
"flate2",
- "futures-core",
- "futures-util",
"h2",
"http 0.2.12",
"http-body 0.4.5",
@@ -8564,6 +7176,7 @@ dependencies = [
"percent-encoding",
"pin-project",
"prost",
+ "rustls 0.21.10",
"rustls-pemfile 1.0.2",
"tokio",
"tokio-rustls 0.24.1",
@@ -8572,20 +7185,20 @@ dependencies = [
"tower-layer",
"tower-service",
"tracing",
- "webpki-roots 0.23.1",
+ "webpki-roots 0.25.4",
]
[[package]]
name = "tonic-build"
-version = "0.9.2"
+version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6fdaae4c2c638bb70fe42803a26fbd6fc6ac8c72f5c59f67ecc2a2dcabf4b07"
+checksum = "9d021fc044c18582b9a2408cd0dd05b1596e3ecdb5c4df822bb0183545683889"
dependencies = [
"prettyplease",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"prost-build",
"quote 1.0.33",
- "syn 1.0.95",
+ "syn 2.0.38",
]
[[package]]
@@ -8638,7 +7251,7 @@ version = "0.1.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
]
@@ -8724,7 +7337,7 @@ dependencies = [
"futures-channel",
"futures-io",
"futures-util",
- "idna",
+ "idna 0.2.3",
"ipnet",
"lazy_static",
"rand 0.8.4",
@@ -8748,7 +7361,7 @@ dependencies = [
"ipconfig",
"lazy_static",
"lru-cache",
- "parking_lot 0.12.0",
+ "parking_lot",
"resolv-conf",
"smallvec 1.6.1",
"thiserror",
@@ -8782,7 +7395,6 @@ dependencies = [
"url",
"utf-8",
"webpki",
- "webpki-roots 0.22.3",
]
[[package]]
@@ -8810,12 +7422,9 @@ source = "git+https://github.com/KomodoPlatform/mm2-parity-ethereum.git?rev=mm2-
[[package]]
name = "unicode-bidi"
-version = "0.3.4"
+version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-dependencies = [
- "matches",
-]
+checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
[[package]]
name = "unicode-ident"
@@ -8825,9 +7434,9 @@ checksum = "d22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee"
[[package]]
name = "unicode-normalization"
-version = "0.1.19"
+version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
+checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956"
dependencies = [
"tinyvec",
]
@@ -8844,12 +7453,6 @@ version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
-[[package]]
-name = "unicode-xid"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-
[[package]]
name = "unicode-xid"
version = "0.2.0"
@@ -8888,25 +7491,14 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
-[[package]]
-name = "uriparse"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e515b1ada404168e145ac55afba3c42f04cf972201a8552d42e2abb17c1b7221"
-dependencies = [
- "fnv",
- "lazy_static",
-]
-
[[package]]
name = "url"
-version = "2.2.2"
+version = "2.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
+checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
dependencies = [
"form_urlencoded",
- "idna",
- "matches",
+ "idna 0.5.0",
"percent-encoding",
"serde",
]
@@ -8937,15 +7529,9 @@ dependencies = [
[[package]]
name = "uuid"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
-
-[[package]]
-name = "uuid"
-version = "1.2.2"
+version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c"
+checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
dependencies = [
"getrandom 0.2.9",
"rand 0.8.4",
@@ -8964,12 +7550,6 @@ version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
[[package]]
name = "version_check"
version = "0.9.4"
@@ -9090,7 +7670,7 @@ dependencies = [
"bumpalo",
"log",
"once_cell",
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
"wasm-bindgen-shared",
@@ -9124,7 +7704,7 @@ version = "0.2.87"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 2.0.38",
"wasm-bindgen-backend",
@@ -9157,7 +7737,7 @@ version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2c2e18093f11c19ca4e188c177fecc7c372304c311189f12c2f9bea5b7324ac7"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
]
@@ -9187,11 +7767,11 @@ dependencies = [
"getrandom 0.2.9",
"headers",
"hex",
- "idna",
+ "idna 0.2.3",
"js-sys",
"jsonrpc-core",
"log",
- "parking_lot 0.12.0",
+ "parking_lot",
"pin-project",
"rand 0.8.4",
"reqwest",
@@ -9248,16 +7828,6 @@ dependencies = [
"cc",
]
-[[package]]
-name = "which"
-version = "4.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b55551e42cbdf2ce2bedd2203d0cc08dba002c27510f86dab6d0ce304cba3dfe"
-dependencies = [
- "either",
- "libc",
-]
-
[[package]]
name = "widestring"
version = "0.5.1"
@@ -9528,6 +8098,15 @@ version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+[[package]]
+name = "winnow"
+version = "0.6.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b"
+dependencies = [
+ "memchr",
+]
+
[[package]]
name = "winreg"
version = "0.7.0"
@@ -9563,24 +8142,6 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "xattr"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "244c3741f4240ef46274860397c7c74e50eb23624996930e484c16679633a54c"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "yaml-rust"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
-dependencies = [
- "linked-hash-map",
-]
-
[[package]]
name = "yamux"
version = "0.12.1"
@@ -9590,7 +8151,7 @@ dependencies = [
"futures 0.3.28",
"log",
"nohash-hasher",
- "parking_lot 0.12.0",
+ "parking_lot",
"pin-project",
"rand 0.8.4",
"static_assertions",
@@ -9606,7 +8167,7 @@ dependencies = [
"instant",
"log",
"nohash-hasher",
- "parking_lot 0.12.0",
+ "parking_lot",
"pin-project",
"rand 0.8.4",
"static_assertions",
@@ -9767,37 +8328,8 @@ version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f8f187641dad4f680d25c4bfc4225b418165984179f26ca76ec4fb6441d3a17"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2",
"quote 1.0.33",
"syn 1.0.95",
"synstructure",
]
-
-[[package]]
-name = "zstd"
-version = "0.9.2+zstd.1.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2390ea1bf6c038c39674f22d95f0564725fc06034a47129179810b2fc58caa54"
-dependencies = [
- "zstd-safe",
-]
-
-[[package]]
-name = "zstd-safe"
-version = "4.1.3+zstd.1.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e99d81b99fb3c2c2c794e3fe56c305c63d5173a16a46b5850b07c935ffc7db79"
-dependencies = [
- "libc",
- "zstd-sys",
-]
-
-[[package]]
-name = "zstd-sys"
-version = "1.6.2+zstd.1.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2daf2f248d9ea44454bfcb2516534e8b8ad2fc91bf818a1885495fc42bc8ac9f"
-dependencies = [
- "cc",
- "libc",
-]
diff --git a/Cargo.toml b/Cargo.toml
index 4de3f093e9..ab18c83da1 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -36,15 +36,13 @@ members = [
"mm2src/mm2_p2p",
"mm2src/mm2_rpc",
"mm2src/mm2_state_machine",
+ "mm2src/proxy_signature",
"mm2src/rpc_task",
"mm2src/trezor",
]
exclude = [
"mm2src/adex_cli",
- "mm2src/floodsub",
- "mm2src/gossipsub",
- "mm2src/mm2_libp2p",
"mm2src/mm2_test_helpers",
]
@@ -58,11 +56,7 @@ opt-level = 3
strip = true
codegen-units = 1
# lto = true
-panic = "abort"
-
-[profile.test]
-# required to avoid a long running process of librustcash additional chain validation that is enabled with debug assertions
-debug-assertions = false
+panic = 'unwind'
[profile.dev]
opt-level = 0
@@ -73,4 +67,4 @@ incremental = true
codegen-units = 256
[profile.release.package.mocktopus]
-opt-level = 1 # TODO: MIR fails on optimizing this dependency, remove that..
\ No newline at end of file
+opt-level = 1 # TODO: MIR fails on optimizing this dependency, remove that..
diff --git a/README.md b/README.md
index ff05f9d501..441c23ba8c 100755
--- a/README.md
+++ b/README.md
@@ -12,10 +12,10 @@
-
+
-
+
@@ -48,7 +48,7 @@
## What is the Komodo DeFi Framework?
-The Komodo DeFi Framework is open-source [atomic-swap](https://komodoplatform.com/en/academy/atomic-swaps/) software for seamless, decentralised, peer to peer trading between almost every blockchain asset in existence. This software works with propagation of orderbooks and swap states through the [libp2p](https://libp2p.io/) protocol and uses [Hash Time Lock Contracts (HTLCs)](https://en.bitcoinwiki.org/wiki/Hashed_Timelock_Contracts) for ensuring that the two parties in a swap either mutually complete a trade, or funds return to thier original owner.
+The Komodo DeFi Framework is open-source [atomic-swap](https://komodoplatform.com/en/academy/atomic-swaps/) software for seamless, decentralized, peer to peer trading between almost every blockchain asset in existence. This software works with propagation of orderbooks and swap states through the [libp2p](https://libp2p.io/) protocol and uses [Hash Time Lock Contracts (HTLCs)](https://en.bitcoinwiki.org/wiki/Hashed_Timelock_Contracts) for ensuring that the two parties in a swap either mutually complete a trade, or funds return to thier original owner.
There is no 3rd party intermediary, no proxy tokens, and at all times users remain in sole possession of their private keys.
@@ -172,7 +172,7 @@ Refer to the [Komodo Developer Docs](https://developers.komodoplatform.com/basic
## Project structure
-[mm2src](mm2src) - Rust code, contains some parts ported from C `as is` (e.g. `lp_ordermatch`) to reach the most essential/error prone code. Some other modules/crates are reimplemented from scratch.
+[mm2src](mm2src) - Rust code, contains some parts ported from C `as is` (e.g. `lp_ordermatch`) to reach the most essential/error-prone code. Some other modules/crates are reimplemented from scratch.
## Additional docs for developers
@@ -185,12 +185,13 @@ Refer to the [Komodo Developer Docs](https://developers.komodoplatform.com/basic
## Disclaimer
-This repository contains the `work in progress` code of the brand new Komodo DeFi Framework (kdf) built mainly on Rust.
-The current state can be considered as a alpha version.
+This repository contains the `work in progress` code of the brand-new Komodo DeFi Framework (kdf) built mainly on Rust.
+The current state can be considered as an alpha version.
**WARNING: Use with test coins only or with assets which value does not exceed an amount you are willing to lose. This is alpha stage software! **
## Help and troubleshooting
-If you have any question/want to report a bug/suggest an improvement feel free to [open an issue](https://github.com/artemii235/SuperNET/issues/new) or join the [Komodo Platform Discord](https://discord.gg/PGxVm2y) `dev-marketmaker` channel.
+If you have any question/want to report a bug/suggest an improvement feel free to [open an issue](https://github.com/KomodoPlatform/komodo-defi-framework/issues/new/choose) or join the [Komodo Platform Discord](https://discord.gg/PGxVm2y) `dev-marketmaker` channel.
+
diff --git a/clippy.toml b/clippy.toml
new file mode 100644
index 0000000000..068d7e886b
--- /dev/null
+++ b/clippy.toml
@@ -0,0 +1,4 @@
+[[disallowed-methods]]
+path = "futures::future::Future::wait"
+replacement = "common::block_on_f01"
+reason = "Use the default KDF async executor."
\ No newline at end of file
diff --git a/mm2src/adex_cli/Cargo.lock b/mm2src/adex_cli/Cargo.lock
index 4de83cbd97..5d5eb5abeb 100644
--- a/mm2src/adex_cli/Cargo.lock
+++ b/mm2src/adex_cli/Cargo.lock
@@ -21,7 +21,7 @@ dependencies = [
"common",
"derive_more",
"directories",
- "env_logger 0.7.1",
+ "env_logger",
"gstuff",
"http 0.2.9",
"hyper",
@@ -29,6 +29,7 @@ dependencies = [
"inquire",
"itertools",
"log",
+ "mm2_core",
"mm2_net",
"mm2_number",
"mm2_rpc",
@@ -285,7 +286,7 @@ checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -626,7 +627,7 @@ dependencies = [
"chrono",
"crossbeam",
"derive_more",
- "env_logger 0.9.3",
+ "env_logger",
"findshlibs",
"fnv",
"futures 0.1.31",
@@ -857,7 +858,7 @@ dependencies = [
"proc-macro2",
"quote 1.0.27",
"scratch",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -874,7 +875,7 @@ checksum = "b846f081361125bfc8dc9d3940c84e1fd83ba54bbca7b17cd29483c828be0704"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -900,7 +901,7 @@ checksum = "41cb0e6161ad61ed084a36ba71fbba9e3ac5aee3606fb607fe08da6acbcf3d8c"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -967,19 +968,6 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d"
-[[package]]
-name = "env_logger"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
-dependencies = [
- "atty",
- "humantime 1.3.0",
- "log",
- "regex",
- "termcolor",
-]
-
[[package]]
name = "env_logger"
version = "0.9.3"
@@ -987,7 +975,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7"
dependencies = [
"atty",
- "humantime 2.1.0",
+ "humantime",
"log",
"regex",
"termcolor",
@@ -1488,15 +1476,6 @@ version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
-[[package]]
-name = "humantime"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
-dependencies = [
- "quick-error",
-]
-
[[package]]
name = "humantime"
version = "2.1.0"
@@ -1603,7 +1582,7 @@ checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -2244,7 +2223,7 @@ dependencies = [
"proc-macro-crate",
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -2466,7 +2445,7 @@ dependencies = [
"itertools",
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -2485,12 +2464,6 @@ dependencies = [
"winapi",
]
-[[package]]
-name = "quick-error"
-version = "1.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-
[[package]]
name = "quote"
version = "0.3.15"
@@ -3135,7 +3108,7 @@ dependencies = [
"proc-macro2",
"quote 1.0.27",
"ser_error",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -3189,7 +3162,7 @@ checksum = "2dc6b7951b17b051f3210b063f12cc17320e2fe30ae05b0fe2a3abb068551c76"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -3392,9 +3365,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "1.0.95"
+version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbaf6116ab8924f39d52792136fb74fd60a80194cf1b1c6ffa6453eef1c3f942"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
"proc-macro2",
"quote 1.0.27",
@@ -3475,7 +3448,7 @@ checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
@@ -3576,7 +3549,7 @@ checksum = "b557f72f448c511a979e2564e55d74e6c4432fc96ff4f6241bc6bded342643b7"
dependencies = [
"proc-macro2",
"quote 1.0.27",
- "syn 1.0.95",
+ "syn 1.0.109",
]
[[package]]
diff --git a/mm2src/adex_cli/Cargo.toml b/mm2src/adex_cli/Cargo.toml
index d2b38a4cba..cb477cacb0 100644
--- a/mm2src/adex_cli/Cargo.toml
+++ b/mm2src/adex_cli/Cargo.toml
@@ -7,23 +7,24 @@ description = "Provides a CLI interface and facilitates interoperating to komodo
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
-anyhow = { version = "=1.0.42", features = ["std"] }
-async-trait = "=0.1.52"
+anyhow = { version = "1.0", features = ["std"] }
+async-trait = "0.1"
clap = { version = "4.2", features = ["derive"] }
common = { path = "../common" }
derive_more = "0.99"
directories = "5.0"
-env_logger = "0.7.1"
+env_logger = "0.9.3"
http = "0.2"
hyper = { version = "0.14.26", features = ["client", "http2", "tcp"] }
-hyper-rustls = "0.24.0"
-gstuff = { version = "=0.7.4" , features = [ "nightly" ]}
+hyper-rustls = "0.24"
+gstuff = { version = "0.7" , features = [ "nightly" ]}
inquire = "0.6"
itertools = "0.10"
log = "0.4.21"
mm2_net = { path = "../mm2_net" }
mm2_number = { path = "../mm2_number" }
mm2_rpc = { path = "../mm2_rpc"}
+mm2_core = { path = "../mm2_core" }
passwords = "3.1"
rpc = { path = "../mm2_bitcoin/rpc" }
rustls = { version = "0.21", features = [ "dangerous_configuration" ] }
@@ -31,8 +32,8 @@ serde = "1.0"
serde_json = { version = "1", features = ["preserve_order", "raw_value"] }
sysinfo = "0.28"
tiny-bip39 = "0.8.0"
-tokio = { version = "=1.25.0", features = [ "macros" ] }
-uuid = { version = "=1.2.2", features = ["fast-rng", "serde", "v4"] }
+tokio = { version = "1.20.0", features = [ "macros" ] }
+uuid = { version = "1.2.2", features = ["fast-rng", "serde", "v4"] }
[target.'cfg(windows)'.dependencies]
winapi = { version = "0.3.3", features = ["processthreadsapi", "winnt"] }
diff --git a/mm2src/adex_cli/README.md b/mm2src/adex_cli/README.md
new file mode 100644
index 0000000000..6066b2c0bc
--- /dev/null
+++ b/mm2src/adex_cli/README.md
@@ -0,0 +1,3 @@
+## ⚠️ Deprecated
+
+**The `adex-cli` tool is no longer maintained and has been deprecated.**
\ No newline at end of file
diff --git a/mm2src/adex_cli/src/adex_proc/adex_proc_impl.rs b/mm2src/adex_cli/src/adex_proc/adex_proc_impl.rs
index 33d4fbfb62..24c108c6da 100644
--- a/mm2src/adex_cli/src/adex_proc/adex_proc_impl.rs
+++ b/mm2src/adex_cli/src/adex_proc/adex_proc_impl.rs
@@ -1,5 +1,5 @@
use anyhow::{anyhow, bail, Result};
-use log::{error, info, warn};
+use log::{debug, error, info, warn};
use mm2_rpc::data::legacy::{BalanceResponse, CoinInitResponse, GetEnabledResponse, Mm2RpcResult, MmVersionResponse,
OrderbookRequest, OrderbookResponse, SellBuyRequest, SellBuyResponse, Status};
use serde_json::{json, Value as Json};
@@ -38,7 +38,7 @@ impl AdexProc<'_, '_,
let activation_scheme = get_activation_scheme()?;
let activation_method = activation_scheme.get_activation_method(asset)?;
-
+ debug!("Got activation scheme for the coin: {}, {:?}", asset, activation_method);
let enable = Command::builder()
.flatten_data(activation_method)
.userpass(self.get_rpc_password()?)
diff --git a/mm2src/adex_cli/src/rpc_data.rs b/mm2src/adex_cli/src/rpc_data.rs
index a3146cbe47..2c634759ef 100644
--- a/mm2src/adex_cli/src/rpc_data.rs
+++ b/mm2src/adex_cli/src/rpc_data.rs
@@ -40,6 +40,10 @@ pub(crate) struct ElectrumRequest {
#[serde(skip_serializing_if = "Vec::is_empty")]
pub(super) servers: Vec,
#[serde(skip_serializing_if = "Option::is_none")]
+ min_connected: Option,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ max_connected: Option,
+ #[serde(skip_serializing_if = "Option::is_none")]
mm2: Option,
#[serde(default)]
tx_history: bool,
@@ -62,4 +66,5 @@ pub(super) struct Server {
protocol: ElectrumProtocol,
#[serde(default)]
disable_cert_verification: bool,
+ pub timeout_sec: Option,
}
diff --git a/mm2src/coins/Cargo.toml b/mm2src/coins/Cargo.toml
index 1c1fe1637d..290a0dd7f5 100644
--- a/mm2src/coins/Cargo.toml
+++ b/mm2src/coins/Cargo.toml
@@ -5,27 +5,16 @@ edition = "2018"
[features]
zhtlc-native-tests = []
-# TODO
-enable-solana = [
- "dep:bincode",
- "dep:ed25519-dalek-bip32",
- "dep:solana-client",
- "dep:solana-sdk",
- "dep:solana-transaction-status",
- "dep:spl-token",
- "dep:spl-associated-token-account",
- "dep:satomic-swap"
-]
enable-sia = [
"dep:reqwest",
- "blake2b_simd"
+ "dep:blake2b_simd",
+ "dep:sia-rust"
]
default = []
run-docker-tests = []
for-tests = []
[lib]
-name = "coins"
path = "lp_coins.rs"
doctest = false
@@ -42,13 +31,14 @@ byteorder = "1.3"
bytes = "0.4"
cfg-if = "1.0"
chain = { path = "../mm2_bitcoin/chain" }
+chrono = { version = "0.4.23", "features" = ["serde"] }
common = { path = "../common" }
-cosmrs = { version = "0.14.0", default-features = false }
+cosmrs = { version = "0.16", default-features = false }
crossbeam = "0.8"
crypto = { path = "../crypto" }
db_common = { path = "../db_common" }
derive_more = "0.99"
-ed25519-dalek = "1.0.1"
+ed25519-dalek = { version = "1.0.1", features = ["serde"] }
enum_derives = { path = "../derives/enum_derives" }
ethabi = { version = "17.0.0" }
ethcore-transaction = { git = "https://github.com/KomodoPlatform/mm2-parity-ethereum.git", rev = "mm2-v2.1.1" }
@@ -70,6 +60,7 @@ jsonrpc-core = "18.0.0"
keys = { path = "../mm2_bitcoin/keys" }
lazy_static = "1.4"
libc = "0.2"
+nom = "6.1.2"
mm2_core = { path = "../mm2_core" }
mm2_err_handle = { path = "../mm2_err_handle" }
mm2_event_stream = { path = "../mm2_event_stream" }
@@ -78,14 +69,16 @@ mm2_io = { path = "../mm2_io" }
mm2_metrics = { path = "../mm2_metrics" }
mm2_net = { path = "../mm2_net" }
mm2_number = { path = "../mm2_number"}
+mm2_p2p = { path = "../mm2_p2p" }
mm2_rpc = { path = "../mm2_rpc" }
mm2_state_machine = { path = "../mm2_state_machine" }
mocktopus = "0.8.0"
num-traits = "0.2"
parking_lot = { version = "0.12.0", features = ["nightly"] }
primitives = { path = "../mm2_bitcoin/primitives" }
-prost = "0.11"
+prost = "0.12"
protobuf = "2.20"
+proxy_signature = { path = "../proxy_signature" }
rand = { version = "0.7", features = ["std", "small_rng"] }
regex = "1"
reqwest = { version = "0.11.9", default-features = false, features = ["json"], optional = true }
@@ -93,7 +86,6 @@ rlp = { version = "0.5" }
rmp-serde = "0.14.3"
rpc = { path = "../mm2_bitcoin/rpc" }
rpc_task = { path = "../rpc_task" }
-satomic-swap = { git = "https://github.com/KomodoPlatform/satomic-swap.git", rev = "413e472", optional = true }
script = { path = "../mm2_bitcoin/script" }
secp256k1 = { version = "0.20" }
ser_error = { path = "../derives/ser_error" }
@@ -101,14 +93,16 @@ ser_error_derive = { path = "../derives/ser_error_derive" }
serde = "1.0"
serde_derive = "1.0"
serde_json = { version = "1", features = ["preserve_order", "raw_value"] }
+serde_with = "1.14.0"
serialization = { path = "../mm2_bitcoin/serialization" }
serialization_derive = { path = "../mm2_bitcoin/serialization_derive" }
+sia-rust = { git = "https://github.com/KomodoPlatform/sia-rust", rev = "9f188b80b3213bcb604e7619275251ce08fae808", optional = true }
spv_validation = { path = "../mm2_bitcoin/spv_validation" }
sha2 = "0.10"
sha3 = "0.9"
utxo_signer = { path = "utxo_signer" }
# using the same version as cosmrs
-tendermint-rpc = { version = "0.32.0", default-features = false }
+tendermint-rpc = { version = "0.35", default-features = false }
tokio-tungstenite-wasm = { git = "https://github.com/KomodoPlatform/tokio-tungstenite-wasm", rev = "d20abdb", features = ["rustls-tls-native-roots"]}
url = { version = "2.2.2", features = ["serde"] }
uuid = { version = "1.2.2", features = ["fast-rng", "serde", "v4"] }
@@ -120,15 +114,6 @@ zcash_client_backend = { git = "https://github.com/KomodoPlatform/librustzcash.g
zcash_extras = { git = "https://github.com/KomodoPlatform/librustzcash.git", tag = "k-1.4.1" }
zcash_primitives = {features = ["transparent-inputs"], git = "https://github.com/KomodoPlatform/librustzcash.git", tag = "k-1.4.1" }
-[target.'cfg(all(not(target_os = "ios"), not(target_os = "android"), not(target_arch = "wasm32")))'.dependencies]
-bincode = { version = "1.3.3", default-features = false, optional = true }
-ed25519-dalek-bip32 = { version = "0.2.0", default-features = false, optional = true }
-solana-client = { version = "1", default-features = false, optional = true }
-solana-sdk = { version = "1", default-features = false, optional = true }
-solana-transaction-status = { version = "1", optional = true }
-spl-token = { version = "3", optional = true }
-spl-associated-token-account = { version = "1", optional = true }
-
[target.'cfg(target_arch = "wasm32")'.dependencies]
blake2b_simd = "0.5"
ff = "0.8"
@@ -140,7 +125,7 @@ mm2_db = { path = "../mm2_db" }
mm2_metamask = { path = "../mm2_metamask" }
mm2_test_helpers = { path = "../mm2_test_helpers" }
time = { version = "0.3.20", features = ["wasm-bindgen"] }
-tonic = { version = "0.9", default-features = false, features = ["prost", "codegen", "gzip"] }
+tonic = { version = "0.10", default-features = false, features = ["prost", "codegen", "gzip"] }
tower-service = "0.3"
wasm-bindgen = "0.2.86"
wasm-bindgen-futures = { version = "0.4.1" }
@@ -165,7 +150,7 @@ rustls = { version = "0.21", features = ["dangerous_configuration"] }
secp256k1v24 = { version = "0.24", package = "secp256k1" }
tokio = { version = "1.20" }
tokio-rustls = { version = "0.24" }
-tonic = { version = "0.9", features = ["tls", "tls-webpki-roots", "gzip"] }
+tonic = { version = "0.10", features = ["tls", "tls-webpki-roots", "gzip"] }
webpki-roots = { version = "0.25" }
zcash_client_sqlite = { git = "https://github.com/KomodoPlatform/librustzcash.git", tag = "k-1.4.1" }
zcash_proofs = { git = "https://github.com/KomodoPlatform/librustzcash.git", tag = "k-1.4.1", default-features = false, features = ["local-prover", "multicore"] }
@@ -180,5 +165,5 @@ mm2_test_helpers = { path = "../mm2_test_helpers" }
wagyu-zcash-parameters = { version = "0.2" }
[build-dependencies]
-prost-build = { version = "0.11", default-features = false }
-tonic-build = { version = "0.9", default-features = false, features = ["prost"] }
+prost-build = { version = "0.12", default-features = false }
+tonic-build = { version = "0.10", default-features = false, features = ["prost"] }
diff --git a/mm2src/coins/coin_errors.rs b/mm2src/coins/coin_errors.rs
index 34b0c46486..6075317bfc 100644
--- a/mm2src/coins/coin_errors.rs
+++ b/mm2src/coins/coin_errors.rs
@@ -1,11 +1,12 @@
-use crate::eth::nft_swap_v2::errors::{Erc721FunctionError, HtlcParamsError, PaymentStatusErr, PrepareTxDataError};
+use crate::eth::eth_swap_v2::{PaymentStatusErr, PrepareTxDataError, ValidatePaymentV2Err};
+use crate::eth::nft_swap_v2::errors::{Erc721FunctionError, HtlcParamsError};
use crate::eth::{EthAssocTypesError, EthNftAssocTypesError, Web3RpcError};
use crate::{utxo::rpc_clients::UtxoRpcError, NumConversError, UnexpectedDerivationMethod};
use enum_derives::EnumFromStringify;
use futures01::Future;
use mm2_err_handle::prelude::MmError;
use spv_validation::helpers_validation::SPVError;
-use std::num::TryFromIntError;
+use std::{array::TryFromSliceError, num::TryFromIntError};
/// Helper type used as result for swap payment validation function(s)
pub type ValidatePaymentFut = Box> + Send>;
@@ -23,7 +24,9 @@ pub enum ValidatePaymentError {
"NumConversError",
"UnexpectedDerivationMethod",
"keys::Error",
- "PrepareTxDataError"
+ "PrepareTxDataError",
+ "ethabi::Error",
+ "TryFromSliceError"
)]
InternalError(String),
/// Problem with deserializing the transaction, or one of the transaction parts is invalid.
@@ -48,8 +51,8 @@ pub enum ValidatePaymentError {
WatcherRewardError(String),
/// Input payment timelock overflows the type used by specific coin.
TimelockOverflow(TryFromIntError),
- #[display(fmt = "Nft Protocol is not supported yet!")]
- NftProtocolNotSupported,
+ ProtocolNotSupported(String),
+ InvalidData(String),
}
impl From for ValidatePaymentError {
@@ -75,7 +78,9 @@ impl From for ValidatePaymentError {
| Web3RpcError::Timeout(internal)
| Web3RpcError::NumConversError(internal)
| Web3RpcError::InvalidGasApiConfig(internal) => ValidatePaymentError::InternalError(internal),
- Web3RpcError::NftProtocolNotSupported => ValidatePaymentError::NftProtocolNotSupported,
+ Web3RpcError::NftProtocolNotSupported => {
+ ValidatePaymentError::ProtocolNotSupported("Nft protocol is not supported".to_string())
+ },
}
}
}
@@ -84,9 +89,8 @@ impl From for ValidatePaymentError {
fn from(err: PaymentStatusErr) -> Self {
match err {
PaymentStatusErr::Transport(e) => Self::Transport(e),
- PaymentStatusErr::AbiError(e)
- | PaymentStatusErr::Internal(e)
- | PaymentStatusErr::TxDeserializationError(e) => Self::InternalError(e),
+ PaymentStatusErr::ABIError(e) | PaymentStatusErr::Internal(e) => Self::InternalError(e),
+ PaymentStatusErr::InvalidData(e) => Self::InvalidData(e),
}
}
}
@@ -95,7 +99,16 @@ impl From for ValidatePaymentError {
fn from(err: HtlcParamsError) -> Self {
match err {
HtlcParamsError::WrongPaymentTx(e) => ValidatePaymentError::WrongPaymentTx(e),
- HtlcParamsError::TxDeserializationError(e) => ValidatePaymentError::TxDeserializationError(e),
+ HtlcParamsError::ABIError(e) | HtlcParamsError::InvalidData(e) => ValidatePaymentError::InvalidData(e),
+ }
+ }
+}
+
+impl From for ValidatePaymentError {
+ fn from(err: ValidatePaymentV2Err) -> Self {
+ match err {
+ ValidatePaymentV2Err::UnexpectedPaymentState(e) => ValidatePaymentError::UnexpectedPaymentState(e),
+ ValidatePaymentV2Err::WrongPaymentTx(e) => ValidatePaymentError::WrongPaymentTx(e),
}
}
}
diff --git a/mm2src/coins/eth.rs b/mm2src/coins/eth.rs
index b5f5b0ecde..7934bdf485 100644
--- a/mm2src/coins/eth.rs
+++ b/mm2src/coins/eth.rs
@@ -48,8 +48,8 @@ use crate::rpc_command::{account_balance, get_new_address, init_account_balance,
init_scan_for_new_addresses};
use crate::{coin_balance, scan_for_new_addresses_impl, BalanceResult, CoinWithDerivationMethod, DerivationMethod,
DexFee, Eip1559Ops, MakerNftSwapOpsV2, ParseCoinAssocTypes, ParseNftAssocTypes, PayForGasParams,
- PrivKeyPolicy, RefundMakerPaymentArgs, RpcCommonOps, SendNftMakerPaymentArgs, SpendNftMakerPaymentArgs,
- ToBytes, ValidateNftMakerPaymentArgs, ValidateWatcherSpendInput, WatcherSpendType};
+ PrivKeyPolicy, RpcCommonOps, SendNftMakerPaymentArgs, SpendNftMakerPaymentArgs, ToBytes,
+ ValidateNftMakerPaymentArgs, ValidateWatcherSpendInput, WatcherSpendType};
use async_trait::async_trait;
use bitcrypto::{dhash160, keccak256, ripemd160, sha256};
use common::custom_futures::repeatable::{Ready, Retry, RetryOnError};
@@ -58,7 +58,7 @@ use common::executor::{abortable_queue::AbortableQueue, AbortOnDropHandle, Abort
AbortedError, SpawnAbortable, Timer};
use common::log::{debug, error, info, warn};
use common::number_type_casting::SafeTypeCastingNumbers;
-use common::{get_utc_timestamp, now_sec, small_rng, DEX_FEE_ADDR_RAW_PUBKEY};
+use common::{now_sec, small_rng, DEX_FEE_ADDR_RAW_PUBKEY};
use crypto::privkey::key_pair_from_secret;
use crypto::{Bip44Chain, CryptoCtx, CryptoCtxError, GlobalHDAccountArc, KeyPairPolicy};
use derive_more::Display;
@@ -76,10 +76,8 @@ use futures::future::{join, join_all, select_ok, try_join_all, Either, FutureExt
use futures01::Future;
use http::Uri;
use instant::Instant;
-use keys::Public as HtlcPubKey;
use mm2_core::mm_ctx::{MmArc, MmWeak};
use mm2_event_stream::behaviour::{EventBehaviour, EventInitStatus};
-use mm2_net::transport::{KomodefiProxyAuthValidation, ProxyAuthValidationGenerator};
use mm2_number::bigdecimal_custom::CheckedDivision;
use mm2_number::{BigDecimal, BigUint, MmNumber};
#[cfg(test)] use mocktopus::macros::*;
@@ -160,6 +158,12 @@ pub(crate) use eip1559_gas_fee::FeePerGasEstimated;
use eip1559_gas_fee::{BlocknativeGasApiCaller, FeePerGasSimpleEstimator, GasApiConfig, GasApiProvider,
InfuraGasApiCaller};
+pub mod erc20;
+use erc20::get_token_decimals;
+
+pub(crate) mod eth_swap_v2;
+use eth_swap_v2::{EthPaymentType, PaymentMethod};
+
/// https://github.com/artemii235/etomic-swap/blob/master/contracts/EtomicSwap.sol
/// Dev chain (195.201.137.5:8565) contract address: 0x83965C539899cC0F918552e5A26915de40ee8852
/// Ropsten: https://ropsten.etherscan.io/address/0x7bc1bbdd6a0a722fc9bffc49c921b685ecb84b94
@@ -173,6 +177,8 @@ const ERC721_ABI: &str = include_str!("eth/erc721_abi.json");
const ERC1155_ABI: &str = include_str!("eth/erc1155_abi.json");
const NFT_SWAP_CONTRACT_ABI: &str = include_str!("eth/nft_swap_contract_abi.json");
const NFT_MAKER_SWAP_V2_ABI: &str = include_str!("eth/nft_maker_swap_v2_abi.json");
+const MAKER_SWAP_V2_ABI: &str = include_str!("eth/maker_swap_v2_abi.json");
+const TAKER_SWAP_V2_ABI: &str = include_str!("eth/taker_swap_v2_abi.json");
/// Payment states from etomic swap smart contract: https://github.com/artemii235/etomic-swap/blob/master/contracts/EtomicSwap.sol#L5
pub enum PaymentState {
@@ -244,12 +250,51 @@ pub mod gas_limit {
pub const ERC20_RECEIVER_SPEND: u64 = 150_000;
/// Gas limit for swap refund tx with coins
pub const ETH_SENDER_REFUND: u64 = 100_000;
- /// Gas limit for swap refund tx with with ERC20 tokens
+ /// Gas limit for swap refund tx with ERC20 tokens
pub const ERC20_SENDER_REFUND: u64 = 150_000;
/// Gas limit for other operations
pub const ETH_MAX_TRADE_GAS: u64 = 150_000;
}
+/// Default gas limits for EthGasLimitV2
+pub mod gas_limit_v2 {
+ /// Gas limits for maker operations in EtomicSwapMakerV2 contract
+ pub mod maker {
+ pub const ETH_PAYMENT: u64 = 65_000;
+ pub const ERC20_PAYMENT: u64 = 150_000;
+ pub const ETH_TAKER_SPEND: u64 = 100_000;
+ pub const ERC20_TAKER_SPEND: u64 = 150_000;
+ pub const ETH_MAKER_REFUND_TIMELOCK: u64 = 90_000;
+ pub const ERC20_MAKER_REFUND_TIMELOCK: u64 = 100_000;
+ pub const ETH_MAKER_REFUND_SECRET: u64 = 90_000;
+ pub const ERC20_MAKER_REFUND_SECRET: u64 = 100_000;
+ }
+
+ /// Gas limits for taker operations in EtomicSwapTakerV2 contract
+ pub mod taker {
+ pub const ETH_PAYMENT: u64 = 65_000;
+ pub const ERC20_PAYMENT: u64 = 150_000;
+ pub const ETH_MAKER_SPEND: u64 = 100_000;
+ pub const ERC20_MAKER_SPEND: u64 = 115_000;
+ pub const ETH_TAKER_REFUND_TIMELOCK: u64 = 90_000;
+ pub const ERC20_TAKER_REFUND_TIMELOCK: u64 = 100_000;
+ pub const ETH_TAKER_REFUND_SECRET: u64 = 90_000;
+ pub const ERC20_TAKER_REFUND_SECRET: u64 = 100_000;
+ pub const APPROVE_PAYMENT: u64 = 50_000;
+ }
+
+ pub mod nft_maker {
+ pub const ERC721_PAYMENT: u64 = 130_000;
+ pub const ERC1155_PAYMENT: u64 = 130_000;
+ pub const ERC721_TAKER_SPEND: u64 = 100_000;
+ pub const ERC1155_TAKER_SPEND: u64 = 100_000;
+ pub const ERC721_MAKER_REFUND_TIMELOCK: u64 = 100_000;
+ pub const ERC1155_MAKER_REFUND_TIMELOCK: u64 = 100_000;
+ pub const ERC721_MAKER_REFUND_SECRET: u64 = 100_000;
+ pub const ERC1155_MAKER_REFUND_SECRET: u64 = 100_000;
+ }
+}
+
/// Coin conf param to override default gas limits
#[derive(Deserialize)]
#[serde(default)]
@@ -268,7 +313,7 @@ pub struct EthGasLimit {
pub erc20_receiver_spend: u64,
/// Gas limit for swap refund tx with coins
pub eth_sender_refund: u64,
- /// Gas limit for swap refund tx with with ERC20 tokens
+ /// Gas limit for swap refund tx with ERC20 tokens
pub erc20_sender_refund: u64,
/// Gas limit for other operations
pub eth_max_trade_gas: u64,
@@ -290,14 +335,183 @@ impl Default for EthGasLimit {
}
}
-/// Lifetime of generated signed message for proxy-auth requests
-const PROXY_AUTH_SIGNED_MESSAGE_LIFETIME_SEC: i64 = 90;
+#[derive(Default, Deserialize)]
+#[serde(default)]
+pub struct EthGasLimitV2 {
+ pub maker: MakerGasLimitV2,
+ pub taker: TakerGasLimitV2,
+ pub nft_maker: NftMakerGasLimitV2,
+}
+
+#[derive(Deserialize)]
+#[serde(default)]
+pub struct MakerGasLimitV2 {
+ pub eth_payment: u64,
+ pub erc20_payment: u64,
+ pub eth_taker_spend: u64,
+ pub erc20_taker_spend: u64,
+ pub eth_maker_refund_timelock: u64,
+ pub erc20_maker_refund_timelock: u64,
+ pub eth_maker_refund_secret: u64,
+ pub erc20_maker_refund_secret: u64,
+}
+
+#[derive(Deserialize)]
+#[serde(default)]
+pub struct TakerGasLimitV2 {
+ pub eth_payment: u64,
+ pub erc20_payment: u64,
+ pub eth_maker_spend: u64,
+ pub erc20_maker_spend: u64,
+ pub eth_taker_refund_timelock: u64,
+ pub erc20_taker_refund_timelock: u64,
+ pub eth_taker_refund_secret: u64,
+ pub erc20_taker_refund_secret: u64,
+ pub approve_payment: u64,
+}
+
+#[derive(Deserialize)]
+#[serde(default)]
+pub struct NftMakerGasLimitV2 {
+ pub erc721_payment: u64,
+ pub erc1155_payment: u64,
+ pub erc721_taker_spend: u64,
+ pub erc1155_taker_spend: u64,
+ pub erc721_maker_refund_timelock: u64,
+ pub erc1155_maker_refund_timelock: u64,
+ pub erc721_maker_refund_secret: u64,
+ pub erc1155_maker_refund_secret: u64,
+}
+
+impl EthGasLimitV2 {
+ fn gas_limit(
+ &self,
+ coin_type: &EthCoinType,
+ payment_type: EthPaymentType,
+ method: PaymentMethod,
+ ) -> Result {
+ match coin_type {
+ EthCoinType::Eth => {
+ let gas_limit = match payment_type {
+ EthPaymentType::MakerPayments => match method {
+ PaymentMethod::Send => self.maker.eth_payment,
+ PaymentMethod::Spend => self.maker.eth_taker_spend,
+ PaymentMethod::RefundTimelock => self.maker.eth_maker_refund_timelock,
+ PaymentMethod::RefundSecret => self.maker.eth_maker_refund_secret,
+ },
+ EthPaymentType::TakerPayments => match method {
+ PaymentMethod::Send => self.taker.eth_payment,
+ PaymentMethod::Spend => self.taker.eth_maker_spend,
+ PaymentMethod::RefundTimelock => self.taker.eth_taker_refund_timelock,
+ PaymentMethod::RefundSecret => self.taker.eth_taker_refund_secret,
+ },
+ };
+ Ok(gas_limit)
+ },
+ EthCoinType::Erc20 { .. } => {
+ let gas_limit = match payment_type {
+ EthPaymentType::MakerPayments => match method {
+ PaymentMethod::Send => self.maker.erc20_payment,
+ PaymentMethod::Spend => self.maker.erc20_taker_spend,
+ PaymentMethod::RefundTimelock => self.maker.erc20_maker_refund_timelock,
+ PaymentMethod::RefundSecret => self.maker.erc20_maker_refund_secret,
+ },
+ EthPaymentType::TakerPayments => match method {
+ PaymentMethod::Send => self.taker.erc20_payment,
+ PaymentMethod::Spend => self.taker.erc20_maker_spend,
+ PaymentMethod::RefundTimelock => self.taker.erc20_taker_refund_timelock,
+ PaymentMethod::RefundSecret => self.taker.erc20_taker_refund_secret,
+ },
+ };
+ Ok(gas_limit)
+ },
+ EthCoinType::Nft { .. } => Err("NFT protocol is not supported for ETH and ERC20 Swaps".to_string()),
+ }
+ }
+
+ fn nft_gas_limit(&self, contract_type: &ContractType, method: PaymentMethod) -> u64 {
+ match contract_type {
+ ContractType::Erc1155 => match method {
+ PaymentMethod::Send => self.nft_maker.erc1155_payment,
+ PaymentMethod::Spend => self.nft_maker.erc1155_taker_spend,
+ PaymentMethod::RefundTimelock => self.nft_maker.erc1155_maker_refund_timelock,
+ PaymentMethod::RefundSecret => self.nft_maker.erc1155_maker_refund_secret,
+ },
+ ContractType::Erc721 => match method {
+ PaymentMethod::Send => self.nft_maker.erc721_payment,
+ PaymentMethod::Spend => self.nft_maker.erc721_taker_spend,
+ PaymentMethod::RefundTimelock => self.nft_maker.erc721_maker_refund_timelock,
+ PaymentMethod::RefundSecret => self.nft_maker.erc721_maker_refund_secret,
+ },
+ }
+ }
+}
+
+impl Default for MakerGasLimitV2 {
+ fn default() -> Self {
+ MakerGasLimitV2 {
+ eth_payment: gas_limit_v2::maker::ETH_PAYMENT,
+ erc20_payment: gas_limit_v2::maker::ERC20_PAYMENT,
+ eth_taker_spend: gas_limit_v2::maker::ETH_TAKER_SPEND,
+ erc20_taker_spend: gas_limit_v2::maker::ERC20_TAKER_SPEND,
+ eth_maker_refund_timelock: gas_limit_v2::maker::ETH_MAKER_REFUND_TIMELOCK,
+ erc20_maker_refund_timelock: gas_limit_v2::maker::ERC20_MAKER_REFUND_TIMELOCK,
+ eth_maker_refund_secret: gas_limit_v2::maker::ETH_MAKER_REFUND_SECRET,
+ erc20_maker_refund_secret: gas_limit_v2::maker::ERC20_MAKER_REFUND_SECRET,
+ }
+ }
+}
+
+impl Default for TakerGasLimitV2 {
+ fn default() -> Self {
+ TakerGasLimitV2 {
+ eth_payment: gas_limit_v2::taker::ETH_PAYMENT,
+ erc20_payment: gas_limit_v2::taker::ERC20_PAYMENT,
+ eth_maker_spend: gas_limit_v2::taker::ETH_MAKER_SPEND,
+ erc20_maker_spend: gas_limit_v2::taker::ERC20_MAKER_SPEND,
+ eth_taker_refund_timelock: gas_limit_v2::taker::ETH_TAKER_REFUND_TIMELOCK,
+ erc20_taker_refund_timelock: gas_limit_v2::taker::ERC20_TAKER_REFUND_TIMELOCK,
+ eth_taker_refund_secret: gas_limit_v2::taker::ETH_TAKER_REFUND_SECRET,
+ erc20_taker_refund_secret: gas_limit_v2::taker::ERC20_TAKER_REFUND_SECRET,
+ approve_payment: gas_limit_v2::taker::APPROVE_PAYMENT,
+ }
+ }
+}
+
+impl Default for NftMakerGasLimitV2 {
+ fn default() -> Self {
+ NftMakerGasLimitV2 {
+ erc721_payment: gas_limit_v2::nft_maker::ERC721_PAYMENT,
+ erc1155_payment: gas_limit_v2::nft_maker::ERC1155_PAYMENT,
+ erc721_taker_spend: gas_limit_v2::nft_maker::ERC721_TAKER_SPEND,
+ erc1155_taker_spend: gas_limit_v2::nft_maker::ERC1155_TAKER_SPEND,
+ erc721_maker_refund_timelock: gas_limit_v2::nft_maker::ERC721_MAKER_REFUND_TIMELOCK,
+ erc1155_maker_refund_timelock: gas_limit_v2::nft_maker::ERC1155_MAKER_REFUND_TIMELOCK,
+ erc721_maker_refund_secret: gas_limit_v2::nft_maker::ERC721_MAKER_REFUND_SECRET,
+ erc1155_maker_refund_secret: gas_limit_v2::nft_maker::ERC1155_MAKER_REFUND_SECRET,
+ }
+ }
+}
+
+trait ExtractGasLimit: Default + for<'de> Deserialize<'de> {
+ fn key() -> &'static str;
+}
+
+impl ExtractGasLimit for EthGasLimit {
+ fn key() -> &'static str { "gas_limit" }
+}
+
+impl ExtractGasLimit for EthGasLimitV2 {
+ fn key() -> &'static str { "gas_limit_v2" }
+}
/// Max transaction type according to EIP-2718
const ETH_MAX_TX_TYPE: u64 = 0x7f;
lazy_static! {
pub static ref SWAP_CONTRACT: Contract = Contract::load(SWAP_CONTRACT_ABI.as_bytes()).unwrap();
+ pub static ref MAKER_SWAP_V2: Contract = Contract::load(MAKER_SWAP_V2_ABI.as_bytes()).unwrap();
+ pub static ref TAKER_SWAP_V2: Contract = Contract::load(TAKER_SWAP_V2_ABI.as_bytes()).unwrap();
pub static ref ERC20_CONTRACT: Contract = Contract::load(ERC20_ABI.as_bytes()).unwrap();
pub static ref ERC721_CONTRACT: Contract = Contract::load(ERC721_ABI.as_bytes()).unwrap();
pub static ref ERC1155_CONTRACT: Contract = Contract::load(ERC1155_ABI.as_bytes()).unwrap();
@@ -384,11 +598,11 @@ type GasDetails = (U256, PayForGasOption);
pub enum Web3RpcError {
#[display(fmt = "Transport: {}", _0)]
Transport(String),
- #[from_stringify("serde_json::Error")]
#[display(fmt = "Invalid response: {}", _0)]
InvalidResponse(String),
#[display(fmt = "Timeout: {}", _0)]
Timeout(String),
+ #[from_stringify("serde_json::Error")]
#[display(fmt = "Internal: {}", _0)]
Internal(String),
#[display(fmt = "Invalid gas api provider config: {}", _0)]
@@ -649,6 +863,7 @@ pub struct EthCoinImpl {
derivation_method: Arc,
sign_message_prefix: Option,
swap_contract_address: Address,
+ swap_v2_contracts: Option,
fallback_swap_contract: Option,
contract_supports_watchers: bool,
web3_instances: AsyncMutex>,
@@ -671,7 +886,7 @@ pub struct EthCoinImpl {
/// and unlocked once the transaction is confirmed. This prevents nonce conflicts when multiple transactions
/// are initiated concurrently from the same address.
address_nonce_locks: Arc>>>>,
- erc20_tokens_infos: Arc>>,
+ erc20_tokens_infos: Arc>>,
/// Stores information about NFTs owned by the user. Each entry in the HashMap is uniquely identified by a composite key
/// consisting of the token address and token ID, separated by a comma. This field is essential for tracking the NFT assets
/// information (chain & contract type, amount etc.), where ownership and amount, in ERC1155 case, might change over time.
@@ -680,6 +895,8 @@ pub struct EthCoinImpl {
pub(crate) platform_fee_estimator_state: Arc,
/// Config provided gas limits for swap and send transactions
pub(crate) gas_limit: EthGasLimit,
+ /// Config provided gas limits v2 for swap v2 transactions
+ pub(crate) gas_limit_v2: EthGasLimitV2,
/// This spawner is used to spawn coin's related futures that should be aborted on coin deactivation
/// and on [`MmArc::stop`].
pub abortable_system: AbortableQueue,
@@ -693,7 +910,7 @@ pub struct Web3Instance {
/// Information about a token that follows the ERC20 protocol on an EVM-based network.
#[derive(Clone, Debug)]
-pub struct Erc20TokenInfo {
+pub struct Erc20TokenDetails {
/// The contract address of the token on the EVM-based network.
pub token_address: Address,
/// The number of decimal places the token uses.
@@ -701,6 +918,13 @@ pub struct Erc20TokenInfo {
pub decimals: u8,
}
+#[derive(Copy, Clone, Deserialize)]
+pub struct SwapV2Contracts {
+ pub maker_swap_v2_contract: Address,
+ pub taker_swap_v2_contract: Address,
+ pub nft_maker_swap_v2_contract: Address,
+}
+
#[derive(Deserialize, Serialize)]
#[serde(tag = "format")]
pub enum EthAddressFormat {
@@ -819,9 +1043,18 @@ impl EthCoinImpl {
/// The id used to differentiate payments on Etomic swap smart contract
pub(crate) fn etomic_swap_id(&self, time_lock: u32, secret_hash: &[u8]) -> Vec {
let timelock_bytes = time_lock.to_le_bytes();
+ self.generate_etomic_swap_id(&timelock_bytes, secret_hash)
+ }
- let mut input = Vec::with_capacity(timelock_bytes.len() + secret_hash.len());
- input.extend_from_slice(&timelock_bytes);
+ /// The id used to differentiate payments on Etomic swap v2 smart contracts
+ pub(crate) fn etomic_swap_id_v2(&self, time_lock: u64, secret_hash: &[u8]) -> Vec {
+ let timelock_bytes = time_lock.to_le_bytes();
+ self.generate_etomic_swap_id(&timelock_bytes, secret_hash)
+ }
+
+ fn generate_etomic_swap_id(&self, time_lock_bytes: &[u8], secret_hash: &[u8]) -> Vec {
+ let mut input = Vec::with_capacity(time_lock_bytes.len() + secret_hash.len());
+ input.extend_from_slice(time_lock_bytes);
input.extend_from_slice(secret_hash);
sha256(&input).to_vec()
}
@@ -838,14 +1071,14 @@ impl EthCoinImpl {
}
}
- pub fn add_erc_token_info(&self, ticker: String, info: Erc20TokenInfo) {
+ pub fn add_erc_token_info(&self, ticker: String, info: Erc20TokenDetails) {
self.erc20_tokens_infos.lock().unwrap().insert(ticker, info);
}
/// # Warning
/// Be very careful using this function since it returns dereferenced clone
/// of value behind the MutexGuard and makes it non-thread-safe.
- pub fn get_erc_tokens_infos(&self) -> HashMap {
+ pub fn get_erc_tokens_infos(&self) -> HashMap {
let guard = self.erc20_tokens_infos.lock().unwrap();
(*guard).clone()
}
@@ -895,20 +1128,20 @@ pub async fn withdraw_erc1155(ctx: MmArc, withdraw_type: WithdrawErc1155) -> Wit
get_valid_nft_addr_to_withdraw(coin, &withdraw_type.to, &withdraw_type.token_address)?;
let token_id_str = &withdraw_type.token_id.to_string();
- let wallet_amount = eth_coin.erc1155_balance(token_addr, token_id_str).await?;
+ let wallet_erc1155_amount = eth_coin.erc1155_balance(token_addr, token_id_str).await?;
- let amount_dec = if withdraw_type.max {
- wallet_amount.clone()
+ let amount_uint = if withdraw_type.max {
+ wallet_erc1155_amount.clone()
} else {
- withdraw_type.amount.unwrap_or_else(|| 1.into())
+ withdraw_type.amount.unwrap_or_else(|| BigUint::from(1u32))
};
- if amount_dec > wallet_amount {
+ if amount_uint > wallet_erc1155_amount {
return MmError::err(WithdrawError::NotEnoughNftsAmount {
token_address: withdraw_type.token_address,
token_id: withdraw_type.token_id.to_string(),
- available: wallet_amount,
- required: amount_dec,
+ available: wallet_erc1155_amount,
+ required: amount_uint,
});
}
@@ -919,7 +1152,7 @@ pub async fn withdraw_erc1155(ctx: MmArc, withdraw_type: WithdrawErc1155) -> Wit
let token_id_u256 =
U256::from_dec_str(token_id_str).map_to_mm(|e| NumConversError::new(format!("{:?}", e)))?;
let amount_u256 =
- U256::from_dec_str(&amount_dec.to_string()).map_to_mm(|e| NumConversError::new(format!("{:?}", e)))?;
+ U256::from_dec_str(&amount_uint.to_string()).map_to_mm(|e| NumConversError::new(format!("{:?}", e)))?;
let data = function.encode_input(&[
Token::Address(my_address),
Token::Address(to_addr),
@@ -978,7 +1211,7 @@ pub async fn withdraw_erc1155(ctx: MmArc, withdraw_type: WithdrawErc1155) -> Wit
contract_type: ContractType::Erc1155,
token_address: withdraw_type.token_address,
token_id: withdraw_type.token_id,
- amount: amount_dec,
+ amount: amount_uint,
fee_details: Some(fee_details.into()),
coin: eth_coin.ticker.clone(),
block_height: 0,
@@ -1069,7 +1302,7 @@ pub async fn withdraw_erc721(ctx: MmArc, withdraw_type: WithdrawErc721) -> Withd
contract_type: ContractType::Erc721,
token_address: withdraw_type.token_address,
token_id: withdraw_type.token_id,
- amount: 1.into(),
+ amount: BigUint::from(1u8),
fee_details: Some(fee_details.into()),
coin: eth_coin.ticker.clone(),
block_height: 0,
@@ -1088,30 +1321,35 @@ impl Deref for EthCoin {
#[async_trait]
impl SwapOps for EthCoin {
- fn send_taker_fee(&self, fee_addr: &[u8], dex_fee: DexFee, _uuid: &[u8], _expire_at: u64) -> TransactionFut {
- let address = try_tx_fus!(addr_from_raw_pubkey(fee_addr));
-
- Box::new(
- self.send_to_address(
- address,
- try_tx_fus!(wei_from_big_decimal(&dex_fee.fee_amount().into(), self.decimals)),
- )
- .map(TransactionEnum::from),
+ async fn send_taker_fee(
+ &self,
+ fee_addr: &[u8],
+ dex_fee: DexFee,
+ _uuid: &[u8],
+ _expire_at: u64,
+ ) -> TransactionResult {
+ let address = try_tx_s!(addr_from_raw_pubkey(fee_addr));
+ self.send_to_address(
+ address,
+ try_tx_s!(wei_from_big_decimal(&dex_fee.fee_amount().into(), self.decimals)),
)
+ .map(TransactionEnum::from)
+ .compat()
+ .await
}
- fn send_maker_payment(&self, maker_payment: SendPaymentArgs) -> TransactionFut {
- Box::new(
- self.send_hash_time_locked_payment(maker_payment)
- .map(TransactionEnum::from),
- )
+ async fn send_maker_payment(&self, maker_payment_args: SendPaymentArgs<'_>) -> TransactionResult {
+ self.send_hash_time_locked_payment(maker_payment_args)
+ .compat()
+ .await
+ .map(TransactionEnum::from)
}
- fn send_taker_payment(&self, taker_payment: SendPaymentArgs) -> TransactionFut {
- Box::new(
- self.send_hash_time_locked_payment(taker_payment)
- .map(TransactionEnum::from),
- )
+ async fn send_taker_payment(&self, taker_payment_args: SendPaymentArgs<'_>) -> TransactionResult {
+ self.send_hash_time_locked_payment(taker_payment_args)
+ .map(TransactionEnum::from)
+ .compat()
+ .await
}
async fn send_maker_spends_taker_payment(
@@ -1144,10 +1382,15 @@ impl SwapOps for EthCoin {
.map(TransactionEnum::from)
}
- fn validate_fee(&self, validate_fee_args: ValidateFeeArgs<'_>) -> ValidatePaymentFut<()> {
+ async fn validate_fee(&self, validate_fee_args: ValidateFeeArgs<'_>) -> ValidatePaymentResult<()> {
let tx = match validate_fee_args.fee_tx {
TransactionEnum::SignedEthTx(t) => t.clone(),
- _ => panic!(),
+ fee_tx => {
+ return MmError::err(ValidatePaymentError::InternalError(format!(
+ "Invalid fee tx type. fee tx: {:?}",
+ fee_tx
+ )))
+ },
};
validate_fee_impl(self.clone(), EthValidateFeeArgs {
fee_tx_hash: &tx.tx_hash(),
@@ -1157,6 +1400,8 @@ impl SwapOps for EthCoin {
min_block_number: validate_fee_args.min_block_number,
uuid: validate_fee_args.uuid,
})
+ .compat()
+ .await
}
#[inline]
@@ -1169,70 +1414,62 @@ impl SwapOps for EthCoin {
self.validate_payment(input).compat().await
}
- fn check_if_my_payment_sent(
+ async fn check_if_my_payment_sent(
&self,
- if_my_payment_sent_args: CheckIfMyPaymentSentArgs,
- ) -> Box, Error = String> + Send> {
- let id = self.etomic_swap_id(
- try_fus!(if_my_payment_sent_args.time_lock.try_into()),
- if_my_payment_sent_args.secret_hash,
- );
- let swap_contract_address = try_fus!(if_my_payment_sent_args.swap_contract_address.try_to_address());
- let selfi = self.clone();
+ if_my_payment_sent_args: CheckIfMyPaymentSentArgs<'_>,
+ ) -> Result