difftreelog
release v920000
in: master
12 files changed
.envdiffbeforeafterboth--- a/.env
+++ b/.env
@@ -1,6 +1,6 @@
-RUST_TOOLCHAIN=nightly-2021-11-11
-RUST_C=1.58.0-nightly
-POLKA_VERSION=release-v0.9.18
+RUST_TOOLCHAIN=nightly-2022-04-07
+RUST_C=1.62.0-nightly
+POLKA_VERSION=release-v0.9.20
UNIQUE_BRANCH=develop
USER=***
PASS=***
Cargo.lockdiffbeforeafterboth--- a/Cargo.lock
+++ b/Cargo.lock
@@ -5475,7 +5475,7 @@
[[package]]
name = "opal-runtime"
-version = "0.9.18"
+version = "0.9.20"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-dmp-queue",
@@ -8682,7 +8682,7 @@
[[package]]
name = "quartz-runtime"
-version = "0.9.18"
+version = "0.9.20"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-dmp-queue",
@@ -12515,7 +12515,7 @@
[[package]]
name = "unique-node"
-version = "0.9.18"
+version = "0.9.20"
dependencies = [
"clap",
"cumulus-client-cli",
@@ -12725,7 +12725,7 @@
[[package]]
name = "unique-runtime-common"
-version = "0.9.18"
+version = "0.9.20"
dependencies = [
"fp-rpc",
"frame-support",
Dockerfile-parachaindiffbeforeafterboth--- a/Dockerfile-parachain
+++ b/Dockerfile-parachain
@@ -2,9 +2,9 @@
FROM phusion/baseimage:focal-1.1.0 as rust-builder
LABEL maintainer="Unique.Network"
-ARG RUST_TOOLCHAIN=nightly-2021-11-11
-#ARG RUST_C=1.58.0-nightly
-ARG POLKA_VERSION=release-v0.9.18
+ARG RUST_TOOLCHAIN=nightly-2022-04-07
+#ARG RUST_C=1.62.0-nightly
+ARG POLKA_VERSION=release-v0.9.20
ARG UNIQUE_BRANCH=develop
#ARG USER=***
README.mddiffbeforeafterboth123# Unique Parachain45## Project Description67The Unique Pallet is the core of NFT functionality. Like ERC-721 standard in Ethereum ecosystem, this pallet provides the8basement for creating collections of unique non-divisible things, also called Non Fungible Tokens (NFTs), minting NFT of9a given Collection, and managing their ownership.1011The pallet also enables storing NFT properties. Though (according to ERC-721) NFT properties belong to logic of a12concrete application that operates a Collection, so purposefully the NFT Tracking Module does not have any knowledge13about properties except their byte size leaving application logic out to be controlled by Smart Contracts.1415The Unique Chain also provides:1617- Smart Contracts Pallet and example smart contract that interacts with Unique Runtime18- ERC-1155 Functionality (currently PoC as Re-Fungible tokens, i.e. items that are still unique, but that can be split19 between multiple users)20- Variety of economic options for dapp producers to choose from to create freemium games and other ways to attract21 users. As a step one, we implemented an economic model when a collection sponsor can be set to pay for collection22 Transfer transactions.2324Wider Unique Ecosystem (most of it was developed during Hackusama):2526- [SubstraPunks Game hosted on IPFS](https://github.com/usetech-llc/substrapunks)27- [Unique Wallet and UI](https://uniqueapps.usetech.com/#/nft)28- [NFT Asset for Unity Framework](https://github.com/usetech-llc/nft_unity)2930Please see our [walk-through instructions](doc/hackusama_walk_through.md) to try everything out!3132## Application Development3334If you are building an application that operates NFT tokens, use [this document](doc/application_development.md).353637## Building3839Building Unique chain requires special versions of Rust and toolchain. We don't use the most recent versions of everything40so that we can keep the builds stable.41421. Install Rust:4344```bash45sudo apt-get install git curl libssl-dev llvm pkg-config libclang-dev clang46curl https://sh.rustup.rs -sSf | sh47```48492. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.50513. Install install nightly 2021-11-11 and make it default:5253```bash54rustup toolchain install nightly-2021-11-1155rustup default nightly-2021-11-1156```57584. Add wasm target for nightly toolchain:5960```bash61rustup target add wasm32-unknown-unknown --toolchain nightly-2021-11-1162```63645. Build:65```bash66cargo build --features=unique-runtime,quartz-runtime --release67```6869## Building as Parachain locally7071Note: checkout this project and all related projects (see below) in the sibling folders (both under the same folder)7273### Polkadot launch utility7475```76git clone https://github.com/paritytech/polkadot-launch77```7879### Build relay8081```82git clone https://github.com/paritytech/polkadot.git83cd polkadot84git checkout release-v0.9.1885cargo build --release86```8788### Build Unique parachain8990Run in the root of this project:91```92cargo build --release93```9495### Build Acala parachain (optional, full config only)9697```98git clone https://github.com/AcalaNetwork/Acala99cd Acala100git checkout 54db3acd409a0b787f116f20e163a3b24101ce38101make build-release102```103104## Running as Parachain locally105106```107./launch-testnet.sh108```109110Optional, full setup with Acala and Statemint111```112./launch-testnet-full.sh113```114115## Run Integration Tests1161171. Install all needed dependecies118```119cd tests120yarn install121```1221232. Run tests124```125yarn test126```127128129## Code Formatting130131### Apply formatting and clippy fixes132```bash133cargo clippy134cargo fmt135```136137### Format tests138```bash139pushd tests && yarn fix ; popd140```141142### Check code style in tests143```bash144cd tests && yarn eslint --ext .ts,.js src/145```146147148## Karura token transfer149150To get started, you need to open inbound and outbound hrmp channels.151152### Next, we need to register our asset at Karura.153```154assetRegistry -> registerForeignAsset(location, metadata)155location:156 V0(X2(Parent, Parachain(PARA_ID)))157metadata:158 name OPL159 symbol OPL160 decimals 18161minimalBalance 1162```163164### Next, we can send tokens from Opal to Karura:165```166polkadotXcm -> reserveTransferAssets167dest:168 V0(X2(Parent, Parachain(<KARURA_PARA_ID>)))169beneficiary:170 X1(AccountId(Any, <ACCOUNT>))171assets:172 V1(Concrete(0,Here), Fungible(<AMOUNT>))173feeAssetItem:174 0175weightLimit:176 <LIMIT>177```178179The result will be displayed in ChainState180tokens -> accounts181182### To send tokens from Karura to Opal:183```184xtokens -> transfer185186currencyId:187 ForeingAsset188 <TOKEN_ID>189190amount:191 <AMOUNT>192dest:193 V1194 (195 Parents:1,196 X2(Parachain(<KARURA_PARA_ID>), AccountId(Any, <ACCOUNT>)197 )198destWeight:199 <WEIGHT>200```123# Unique Parachain45## Project Description67The Unique Pallet is the core of NFT functionality. Like ERC-721 standard in Ethereum ecosystem, this pallet provides the8basement for creating collections of unique non-divisible things, also called Non Fungible Tokens (NFTs), minting NFT of9a given Collection, and managing their ownership.1011The pallet also enables storing NFT properties. Though (according to ERC-721) NFT properties belong to logic of a12concrete application that operates a Collection, so purposefully the NFT Tracking Module does not have any knowledge13about properties except their byte size leaving application logic out to be controlled by Smart Contracts.1415The Unique Chain also provides:1617- Smart Contracts Pallet and example smart contract that interacts with Unique Runtime18- ERC-1155 Functionality (currently PoC as Re-Fungible tokens, i.e. items that are still unique, but that can be split19 between multiple users)20- Variety of economic options for dapp producers to choose from to create freemium games and other ways to attract21 users. As a step one, we implemented an economic model when a collection sponsor can be set to pay for collection22 Transfer transactions.2324Wider Unique Ecosystem (most of it was developed during Hackusama):2526- [SubstraPunks Game hosted on IPFS](https://github.com/usetech-llc/substrapunks)27- [Unique Wallet and UI](https://uniqueapps.usetech.com/#/nft)28- [NFT Asset for Unity Framework](https://github.com/usetech-llc/nft_unity)2930Please see our [walk-through instructions](doc/hackusama_walk_through.md) to try everything out!3132## Application Development3334If you are building an application that operates NFT tokens, use [this document](doc/application_development.md).353637## Building3839Building Unique chain requires special versions of Rust and toolchain. We don't use the most recent versions of everything40so that we can keep the builds stable.41421. Install Rust:4344```bash45sudo apt-get install git curl libssl-dev llvm pkg-config libclang-dev clang46curl https://sh.rustup.rs -sSf | sh47```48492. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.50513. Install install nightly 2021-11-11 and make it default:5253```bash54rustup toolchain install nightly-2022-04-0755rustup default nightly-2022-04-0756```57584. Add wasm target for nightly toolchain:5960```bash61rustup target add wasm32-unknown-unknown --toolchain nightly-2022-04-0762```63645. Build:65```bash66cargo build --features=unique-runtime,quartz-runtime --release67```6869## Building as Parachain locally7071Note: checkout this project and all related projects (see below) in the sibling folders (both under the same folder)7273### Polkadot launch utility7475```76git clone https://github.com/paritytech/polkadot-launch77```7879### Build relay8081```82git clone https://github.com/paritytech/polkadot.git83cd polkadot84git checkout release-v0.9.2085cargo build --release86```8788### Build Unique parachain8990Run in the root of this project:91```92cargo build --release93```9495### Build Acala parachain (optional, full config only)9697```98git clone https://github.com/AcalaNetwork/Acala99cd Acala100git checkout 54db3acd409a0b787f116f20e163a3b24101ce38101make build-release102```103104## Running as Parachain locally105106```107./launch-testnet.sh108```109110Optional, full setup with Acala and Statemint111```112./launch-testnet-full.sh113```114115## Run Integration Tests1161171. Install all needed dependecies118```119cd tests120yarn install121```1221232. Run tests124```125yarn test126```127128129## Code Formatting130131### Apply formatting and clippy fixes132```bash133cargo clippy134cargo fmt135```136137### Format tests138```bash139pushd tests && yarn fix ; popd140```141142### Check code style in tests143```bash144cd tests && yarn eslint --ext .ts,.js src/145```146147148## Karura token transfer149150To get started, you need to open inbound and outbound hrmp channels.151152### Next, we need to register our asset at Karura.153```154assetRegistry -> registerForeignAsset(location, metadata)155location:156 V0(X2(Parent, Parachain(PARA_ID)))157metadata:158 name OPL159 symbol OPL160 decimals 18161minimalBalance 1162```163164### Next, we can send tokens from Opal to Karura:165```166polkadotXcm -> reserveTransferAssets167dest:168 V0(X2(Parent, Parachain(<KARURA_PARA_ID>)))169beneficiary:170 X1(AccountId(Any, <ACCOUNT>))171assets:172 V1(Concrete(0,Here), Fungible(<AMOUNT>))173feeAssetItem:174 0175weightLimit:176 <LIMIT>177```178179The result will be displayed in ChainState180tokens -> accounts181182### To send tokens from Karura to Opal:183```184xtokens -> transfer185186currencyId:187 ForeingAsset188 <TOKEN_ID>189190amount:191 <AMOUNT>192dest:193 V1194 (195 Parents:1,196 X2(Parachain(<KARURA_PARA_ID>), AccountId(Any, <ACCOUNT>)197 )198destWeight:199 <WEIGHT>200```node/cli/Cargo.tomldiffbeforeafterboth--- a/node/cli/Cargo.toml
+++ b/node/cli/Cargo.toml
@@ -283,7 +283,7 @@
license = 'GPLv3'
name = 'unique-node'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.18'
+version = '0.9.20'
[[bin]]
name = 'unique-collator'
runtime/common/Cargo.tomldiffbeforeafterboth--- a/runtime/common/Cargo.toml
+++ b/runtime/common/Cargo.toml
@@ -6,7 +6,7 @@
license = 'All Rights Reserved'
name = 'unique-runtime-common'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.18'
+version = '0.9.20'
[features]
default = ['std']
runtime/opal/Cargo.tomldiffbeforeafterboth--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -10,7 +10,7 @@
license = 'GPLv3'
name = 'opal-runtime'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.18'
+version = '0.9.20'
[package.metadata.docs.rs]
targets = ['x86_64-unknown-linux-gnu']
runtime/opal/src/lib.rsdiffbeforeafterboth--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -169,7 +169,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 918010,
+ spec_version: 920000,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
runtime/quartz/Cargo.tomldiffbeforeafterboth--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -10,7 +10,7 @@
license = 'GPLv3'
name = 'quartz-runtime'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.18'
+version = '0.9.20'
[package.metadata.docs.rs]
targets = ['x86_64-unknown-linux-gnu']
runtime/quartz/src/lib.rsdiffbeforeafterboth--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -154,7 +154,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 918010,
+ spec_version: 920000,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
runtime/unique/src/lib.rsdiffbeforeafterboth--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -153,7 +153,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 918010,
+ spec_version: 920000,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
tests/README.mddiffbeforeafterboth--- a/tests/README.md
+++ b/tests/README.md
@@ -5,7 +5,7 @@
1. Checkout polkadot in sibling folder with this project
```bash
git clone https://github.com/paritytech/polkadot.git && cd polkadot
-git checkout release-v0.9.18
+git checkout release-v0.9.20
```
2. Build with nightly-2021-11-11