Add Dex pallet (#407)

* Move pallet-asset-conversion

* update licensing

* initial integration

* Integrate Currency & Assets types

* integrate liquidity tokens

* fmt

* integrate dex pallet tests

* fmt

* compilation error fixes

* integrate dex benchmarks

* fmt

* cargo clippy

* replace all occurrences of "asset" with "coin"

* add the actual add liq/swap logic to in-instructions

* add client side & tests

* fix deny

* Lint and changes

- Renames InInstruction::AddLiquidity to InInstruction::SwapAndAddLiquidity
- Makes create_pool an internal function
- Makes dex-pallet exclusively create pools against a native coin
- Removes various fees
- Adds new crates to GH workflow

* Fix rebase artifacts

* Correct other rebase artifact

* Correct CI specification for liquidity-tokens

* Correct primitives' test to the standardized pallet account scheme

---------

Co-authored-by: Luke Parker <lukeparker5132@gmail.com>
This commit is contained in:
akildemir
2023-11-05 20:02:34 +03:00
committed by GitHub
parent facb5817c4
commit 899a9604e1
38 changed files with 5327 additions and 27 deletions

54
Cargo.lock generated
View File

@@ -8179,6 +8179,7 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"serai-coins-primitives",
"serai-dex-primitives",
"serai-primitives",
"sp-core",
"sp-runtime",
@@ -8259,6 +8260,40 @@ dependencies = [
"rocksdb",
]
[[package]]
name = "serai-dex-pallet"
version = "0.1.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
"parity-scale-codec",
"scale-info",
"serai-coins-pallet",
"serai-dex-primitives",
"serai-liquidity-tokens-pallet",
"serai-primitives",
"sp-api",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-runtime",
"sp-std",
]
[[package]]
name = "serai-dex-primitives"
version = "0.1.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"parity-scale-codec",
"scale-info",
"serai-primitives",
"sp-runtime",
"sp-std",
]
[[package]]
name = "serai-docker-tests"
version = "0.1.0"
@@ -8301,6 +8336,7 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"serai-coins-pallet",
"serai-dex-pallet",
"serai-in-instructions-primitives",
"serai-primitives",
"serai-validator-sets-pallet",
@@ -8308,6 +8344,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
"sp-std",
"thiserror",
]
@@ -8326,6 +8363,20 @@ dependencies = [
"zeroize",
]
[[package]]
name = "serai-liquidity-tokens-pallet"
version = "0.1.0"
dependencies = [
"frame-support",
"frame-system",
"parity-scale-codec",
"scale-info",
"serai-dex-primitives",
"serai-primitives",
"sp-core",
"sp-std",
]
[[package]]
name = "serai-message-queue"
version = "0.1.0"
@@ -8543,7 +8594,10 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"serai-coins-pallet",
"serai-dex-pallet",
"serai-dex-primitives",
"serai-in-instructions-pallet",
"serai-liquidity-tokens-pallet",
"serai-primitives",
"serai-signals-pallet",
"serai-validator-sets-pallet",