From 7269aaba3bbbb4bf7e4c8d09197775fe4468f350 Mon Sep 17 00:00:00 2001 From: Dusan Morhac <55763425+dudo50@users.noreply.github.com> Date: Thu, 7 Nov 2024 23:09:23 +0100 Subject: [PATCH 1/7] Create xcnft_m1.md --- deliveries/xcnft_m1.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 deliveries/xcnft_m1.md diff --git a/deliveries/xcnft_m1.md b/deliveries/xcnft_m1.md new file mode 100644 index 000000000..cddf36b39 --- /dev/null +++ b/deliveries/xcnft_m1.md @@ -0,0 +1,34 @@ +# Milestone Delivery :mailbox: + +**The delivery is according to the official [milestone delivery guidelines](https://github.com/w3f/Grants-Program/blob/master/docs/Support%20Docs/milestone-deliverables-guidelines.md).** + +* **Application Document:** [xcNFT.md](https://github.com/w3f/Grants-Program/blob/master/applications/xcNFT.md) +* **Milestone Number:** 1 + +**Context** + +Milestone delivered the first pallet-agnostic cross-chain NFT pallet on Polkadot called xcNFT. + +**Deliverables** +| Number | Deliverable | Link | Notes | +| ------------- | ------------- | ------------- |------------- | +| 0a. | License |[MIT xcNFT](https://github.com/paraspell-research/xcnft-pallet/blob/main/LICENSE), [MIT DOCS](https://github.com/paraspell-research/xcnft-docs/blob/main/LICENSE)| MIT| +| 0b. | Documentation |[Main xcNFT readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md), [xcNFT pallet_nfts readme](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts), [xcNFT pallet_uniques readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/xcnft-pallet_uniques/README.md), [official documentation](https://paraspell-research.github.io/xcnft-docs/)| Readmes for all major parts of repository + inline documentation in each version of pallet + official documentation | +| 0c. | Testing guide | [Testing guide in readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#testing-pallet-functionality-), [Testing guide in docs](https://paraspell-research.github.io/xcnft-docs/implementation-guide/introduction.html#testing-pallet-functionality-%F0%9F%94%8E), [Unit tests commit](https://github.com/paraspell-research/xcnft-pallet/commit/c6682ecdf2fe9fdc51a678b028d77a0a4e33efa6) | Testing guide mentioned in readme and official docs & core unit tests | +| 0d. | Docker | [Docker guide](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#dockerized-local-testnet-build), [Dockerfile](https://github.com/paraspell-research/xcnft-pallet/blob/main/Dockerfile)| Docker file provided to test the functionality of the solution | +| 1 | xcNFT Bump dependencies |[Commit adding latest frame version compliant xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18) | Following commit adds xcNFT that is compliant with latest frame syntax and requirements | +| 2.a | xcNFT Uniques |[Commit adding pallet_uniques compliant version of xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5 ), [Current code](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_uniques) | Introduced pallet_uniques version of xcNFT | +| 2.b | xcNFT NFTS |[Commit adding pallet_nfts compliant version of xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Current code](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts) | Introduced pallet_nfts version of xcNFT | +| 3 | xcNFT Abstract destination selection logic | [Commit adding abstracted destination logic to xcNFT pallet_nfts_version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted destination logic to xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5)| Introduce abstracted destination selection logic in both versions of xcNFT (Users just enter Parachain ID)| +| 4.a | xcNFT Burn asset |[Commit adding ability to burn collections or nfts cross-chain in xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding ability to burn collections or nfts cross-chain in xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5)| Introduced cross-chain & pallet-agnostic collection or nft burn. | +| 4.b | xcNFT Metadata |[Commit adding ability to update metadata for collections or nfts cross-chain in xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding ability to update metadata for collections or nfts cross-chain in xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5)| Introduced cross-chain & pallet agnostic collection or nft metadata update. | +| 4.c | xcNFT Transfer ownership | [Commit adding ability to change ownership for collections or nfts cross-chain in xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding ability to change ownership for collections or nfts cross-chain in xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5)| Introduced cross-chain & pallet-agnostic collection or nft ownership transfer. | +| 5. | xcNFT MultiAsset | [Commit adding ability to transfer collections with multiple NFTs cross-chain in xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding ability to transfer collections with multiple NFTs cross-chain in xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | Introduced cross-chain pallet agnostic collection with multiple nfts transfer. | + +The provided commits no longer contain the latest version of xcNFT. There were some minor changes to certain functions since. The latest version is contained within [this commit](https://github.com/paraspell-research/xcnft-pallet/commit/e42b3aea8faa56760e02621d9bf6afc7f93c7279). + +The pallet has to be tested within the [following repository](https://github.com/paraspell-research/polkadot-sdk) because the latest pallet_nfts and pallet_uniques update from the [following PR](https://github.com/paritytech/polkadot-sdk/pull/6087) hasn't yet been published. + +**Additional Information** + +Every aspect of the project, that was defined in the proposal, was implemented according to it. There were changes required during development - Some of the pallet_nfts and pallet_uniques structs were private to the pallet. This meant that we were unable to comply with the original frame pallets. We have opened PR requesting to change them from private to public so our pallet can comply - [PR Link](https://github.com/paritytech/polkadot-sdk/pull/6087). PR was **successfully merged**, so our xcNFT implementation is now **fully compliant** with the original frame pallet_nfts and pallet_uniques. From 738be6ffa9c3cc705ad776a1cfddacae41ec2a8a Mon Sep 17 00:00:00 2001 From: Dusan Morhac <55763425+dudo50@users.noreply.github.com> Date: Thu, 7 Nov 2024 23:10:32 +0100 Subject: [PATCH 2/7] Create xcnft_m2.md --- deliveries/xcnft_m2.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 deliveries/xcnft_m2.md diff --git a/deliveries/xcnft_m2.md b/deliveries/xcnft_m2.md new file mode 100644 index 000000000..7cd2c6d46 --- /dev/null +++ b/deliveries/xcnft_m2.md @@ -0,0 +1,32 @@ +# Milestone Delivery :mailbox: + +**The delivery is according to the official [milestone delivery guidelines](https://github.com/w3f/Grants-Program/blob/master/docs/Support%20Docs/milestone-deliverables-guidelines.md).** + +* **Application Document:** [xcNFT.md](https://github.com/w3f/Grants-Program/blob/master/applications/xcNFT.md) +* **Milestone Number:** 2 + +**Context** + +Milestone delivered further refactoring, benchmarks, and official documentation for the xcNFT pallet. + +**Deliverables** +| Number | Deliverable | Link | Notes | +| ------------- | ------------- | ------------- |------------- | +| 0a. | License |[MIT xcNFT](https://github.com/paraspell-research/xcnft-pallet/blob/main/LICENSE), [MIT DOCS](https://github.com/paraspell-research/xcnft-docs/blob/main/LICENSE)| MIT| +| 0b. | Documentation |[Main xcNFT readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md), [xcNFT pallet_nfts readme](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts), [xcNFT pallet_uniques readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/xcnft-pallet_uniques/README.md), [official documentation](https://paraspell-research.github.io/xcnft-docs/)| Readmes for all major parts of repository + inline documentation in each version of pallet + official documentation | +| 0c. | Testing guide | [Testing guide in readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#testing-pallet-functionality-), [Testing guide in docs](https://paraspell-research.github.io/xcnft-docs/implementation-guide/introduction.html#testing-pallet-functionality-%F0%9F%94%8E), [Unit tests commit](https://github.com/paraspell-research/xcnft-pallet/commit/c6682ecdf2fe9fdc51a678b028d77a0a4e33efa6) | Testing guide mentioned in readme and official docs & core unit tests | +| 0d. | Docker | [Docker guide](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#dockerized-local-testnet-build), [Docker image](https://github.com/paraspell-research/xcnft-pallet/blob/main/Dockerfile)| Docker file provided to test the functionality of the solution | +| 0e. | Article |[Medium article link](https://medium.com/@dudo50/pallet-agnostic-cross-chain-nft-pallet-for-polkadot-paraverse-10a18a31b8ea) | Following article sums up state-of-the-art advancement in pallet-agnostic cross-chain NFT transfers on Polkadot and introduces xcNFT pallet. | +| 1. | xcNFT Abstract collection/NFT selection logic | [Commit adding abstracted collection and nft logic of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted collection and nft logic of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | Introduced abstracted collection and asset selection logic in the form of CollectionId and ItemId parameters. | +| 2. | xcNFT Refactor | [Commit adding refactored code of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding refactored code of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | Introduced refactored code, that takes care of formatting, correct ensure! macro logic and efficient function execution. Also includes inline code documentation for everything. | +| 3. | xcNFT Benchmark | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | Feature benchmarks and weights.rs files to each version of the xcNFT pallet. | +| 4.a | xcNFT Github Pages Docs I | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| Introduced developer guide documentation. | +| 4.b | xcNFT Github Pages Docs II | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | Introduced user guide documentation. | + +Some of the provided commits no longer contain the latest version of xcNFT. There were some minor changes to certain functions since. The latest version is contained within [this commit](https://github.com/paraspell-research/xcnft-pallet/commit/e42b3aea8faa56760e02621d9bf6afc7f93c7279). + +The pallet has to be tested within the [following repository](https://github.com/paraspell-research/polkadot-sdk) because the latest pallet_nfts and pallet_uniques update from the [following PR](https://github.com/paritytech/polkadot-sdk/pull/6087) hasn't yet been published. + +**Additional Information** + +Every aspect of the project, that was defined in the proposal, was implemented according to it. There were no changes required during the development of the second milestone. There is some future work we would like to continue working on (without any continuous funding) regarding this pallet to make it a fully baked solution that is plug-and-play to any Parachain because there are currently some limitations, such as Parachains needing to sync on collection and asset ID types (For example both need to have asset ids as u32 or u128 or Hash or else in order to be cross-chain NFT compatible). The documentation is also to be improved as the pallet is shaped further. We are planning to add video guides to help regular non-technical users with using the pallet. From cabd6c676e1726d4bbf52f1f96e4707ce985a2aa Mon Sep 17 00:00:00 2001 From: Keegan | W3F <35080151+keeganquigley@users.noreply.github.com> Date: Tue, 19 Nov 2024 12:41:11 -0500 Subject: [PATCH 3/7] Create xcNFT_2_keeganquigley.md --- evaluations/xcNFT_2_keeganquigley.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 evaluations/xcNFT_2_keeganquigley.md diff --git a/evaluations/xcNFT_2_keeganquigley.md b/evaluations/xcNFT_2_keeganquigley.md new file mode 100644 index 000000000..9c0486414 --- /dev/null +++ b/evaluations/xcNFT_2_keeganquigley.md @@ -0,0 +1,21 @@ +# Evaluation + +- **Status:** In progress +- **Application Document:** https://github.com/w3f/Grants-Program/blob/master/applications/xcNFT.md +- **Milestone:** 2 + +**Deliverables** +| Number | Deliverable | Accepted | Link | Notes | +| ------------- | ------------- | ------------- | ------------- | ------------- | +| 0a. | License | |[MIT xcNFT](https://github.com/paraspell-research/xcnft-pallet/blob/main/LICENSE), [MIT DOCS](https://github.com/paraspell-research/xcnft-docs/blob/main/LICENSE)| MIT| +| 0b. | Documentation | |[Main xcNFT readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md), [xcNFT pallet_nfts readme](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts), [xcNFT pallet_uniques readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/xcnft-pallet_uniques/README.md), [official documentation](https://paraspell-research.github.io/xcnft-docs/)| | +| 0c. | Testing guide | | [Testing guide in readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#testing-pallet-functionality-), [Testing guide in docs](https://paraspell-research.github.io/xcnft-docs/implementation-guide/introduction.html#testing-pallet-functionality-%F0%9F%94%8E), [Unit tests commit](https://github.com/paraspell-research/xcnft-pallet/commit/c6682ecdf2fe9fdc51a678b028d77a0a4e33efa6) | | +| 0d. | Docker | | [Docker guide](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#dockerized-local-testnet-build), [Docker image](https://github.com/paraspell-research/xcnft-pallet/blob/main/Dockerfile)| | +| 0e. | Article | |[Medium article link](https://medium.com/@dudo50/pallet-agnostic-cross-chain-nft-pallet-for-polkadot-paraverse-10a18a31b8ea) | | +| 1. | xcNFT Abstract collection/NFT selection logic | | [Commit adding abstracted collection and nft logic of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted collection and nft logic of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | +| 2. | xcNFT Refactor | | [Commit adding refactored code of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding refactored code of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | +| 3. | xcNFT Benchmark | | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | Feature benchmarks and weights.rs files to each version of the xcNFT pallet. | +| 4.a | xcNFT Github Pages Docs I | | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| Introduced developer guide documentation. | +| 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | Introduced user guide documentation. | + +# General Notes From e6ec2af5dc792b232df2efc726a178acf958b6b8 Mon Sep 17 00:00:00 2001 From: Keegan | W3F <35080151+keeganquigley@users.noreply.github.com> Date: Tue, 19 Nov 2024 12:44:20 -0500 Subject: [PATCH 4/7] Update xcNFT_2_keeganquigley.md --- evaluations/xcNFT_2_keeganquigley.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/evaluations/xcNFT_2_keeganquigley.md b/evaluations/xcNFT_2_keeganquigley.md index 9c0486414..495728033 100644 --- a/evaluations/xcNFT_2_keeganquigley.md +++ b/evaluations/xcNFT_2_keeganquigley.md @@ -14,8 +14,8 @@ | 0e. | Article | |[Medium article link](https://medium.com/@dudo50/pallet-agnostic-cross-chain-nft-pallet-for-polkadot-paraverse-10a18a31b8ea) | | | 1. | xcNFT Abstract collection/NFT selection logic | | [Commit adding abstracted collection and nft logic of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted collection and nft logic of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | | 2. | xcNFT Refactor | | [Commit adding refactored code of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding refactored code of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | -| 3. | xcNFT Benchmark | | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | Feature benchmarks and weights.rs files to each version of the xcNFT pallet. | -| 4.a | xcNFT Github Pages Docs I | | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| Introduced developer guide documentation. | -| 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | Introduced user guide documentation. | +| 3. | xcNFT Benchmark | | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | | +| 4.a | xcNFT Github Pages Docs I | | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| | +| 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | | # General Notes From f04071ffa52e4ed6fdb40da3fb7e577bd02f77dd Mon Sep 17 00:00:00 2001 From: Keegan | W3F <35080151+keeganquigley@users.noreply.github.com> Date: Tue, 19 Nov 2024 13:02:08 -0500 Subject: [PATCH 5/7] Update xcNFT_1_keeganquigley.md --- evaluations/xcNFT_1_keeganquigley.md | 170 ++++++++++++++++++++++----- 1 file changed, 141 insertions(+), 29 deletions(-) diff --git a/evaluations/xcNFT_1_keeganquigley.md b/evaluations/xcNFT_1_keeganquigley.md index 50f0251d7..7727c4508 100644 --- a/evaluations/xcNFT_1_keeganquigley.md +++ b/evaluations/xcNFT_1_keeganquigley.md @@ -1,6 +1,6 @@ # Evaluation -- **Status:** In progress +- **Status:** Accepted - **Application Document:** https://github.com/w3f/Grants-Program/blob/master/applications/xcNFT.md - **Milestone:** 1 @@ -301,73 +301,185 @@ Zombienet config builds successfully: ``` -Some unit tests currently failing in `cargo test --package pallet-parachain-xcnft --lib -- tests --nocapture`: +~~Some unit tests currently failing.~~ + +UPDATE: `cargo test --package pallet-parachain-xcnft --lib -- tests --nocapture` works now with warnings:
Output ```rust -running 51 tests +warning: type `proposal_time_in_blocks_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/mock.rs:131:12 + | +131 | pub const proposal_time_in_blocks_parameter: u32 = 10; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProposalTimeInBlocksParameter` + | + = note: `#[warn(non_camel_case_types)]` on by default + +warning: type `max_owners_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/mock.rs:132:12 + | +132 | pub const max_owners_parameter: u32 = 1000000; + | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MaxOwnersParameter` + +warning: type `max_votes` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/mock.rs:133:12 + | +133 | pub const max_votes: u32 = 1000000; + | ^^^^^^^^^ help: convert the identifier to upper camel case: `MaxVotes` + +warning: unused imports: `BuildStorage` and `ConstU64` + --> templates/parachain/pallets/xcnft/src/tests/testpara.rs:35:11 + | +35 | traits::{ConstU64, IdentityLookup, Verify}, + | ^^^^^^^^ +36 | AccountId32, BuildStorage, MultiSignature, + | ^^^^^^^^^^^^ + | + = note: `#[warn(unused_imports)]` on by default + +warning: type `proposal_time_in_blocks_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testpara.rs:81:12 + | +81 | pub const proposal_time_in_blocks_parameter: u32 = 10; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProposalTimeInBlocksParameter` + +warning: type `max_owners_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testpara.rs:82:12 + | +82 | pub const max_owners_parameter: u32 = 1000000; + | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MaxOwnersParameter` + +warning: type `max_votes` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testpara.rs:83:12 + | +83 | pub const max_votes: u32 = 1000000; + | ^^^^^^^^^ help: convert the identifier to upper camel case: `MaxVotes` + +warning: unused imports: `AsPrefixedGeneralIndex`, `ConvertedConcreteId`, `NoChecking`, and `NonFungiblesAdapter` + --> templates/parachain/pallets/xcnft/src/tests/testrelay/xcm_config/asset_transactor.rs:21:2 + | +21 | AsPrefixedGeneralIndex, ConvertedConcreteId, FungibleAdapter, IsConcrete, NoChecking, + | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ +22 | NonFungiblesAdapter, + | ^^^^^^^^^^^^^^^^^^^ + +warning: unused import: `xcm_executor::traits::JustTry` + --> templates/parachain/pallets/xcnft/src/tests/testrelay/xcm_config/asset_transactor.rs:24:5 + | +24 | use xcm_executor::traits::JustTry; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +warning: unused import: `AsEnsureOriginWithArg` + --> templates/parachain/pallets/xcnft/src/tests/testrelay.rs:25:3 + | +25 | AsEnsureOriginWithArg, ConstU128, Everything, Nothing, ProcessMessage, ProcessMessageError, + | ^^^^^^^^^^^^^^^^^^^^^ + +warning: type `proposal_time_in_blocks_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testrelay.rs:83:12 + | +83 | pub const proposal_time_in_blocks_parameter: u32 = 10; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProposalTimeInBlocksParameter` + +warning: type `max_owners_parameter` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testrelay.rs:84:12 + | +84 | pub const max_owners_parameter: u32 = 1000000; + | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MaxOwnersParameter` + +warning: type `max_votes` should have an upper camel case name + --> templates/parachain/pallets/xcnft/src/tests/testrelay.rs:85:12 + | +85 | pub const max_votes: u32 = 1000000; + | ^^^^^^^^^ help: convert the identifier to upper camel case: `MaxVotes` + +warning: unused import: `crate::tests::testpara::XcNFT` + --> templates/parachain/pallets/xcnft/src/tests.rs:9:5 + | +9 | use crate::tests::testpara::XcNFT; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +warning: unused import: `Event::Destroyed` + --> templates/parachain/pallets/xcnft/src/tests.rs:12:60 + | +12 | use pallet_nfts::{CollectionConfigFor, CollectionSettings, Event::Destroyed, MintSettings}; + | ^^^^^^^^^^^^^^^^ + +warning: unused import: `traits::Bounded` + --> templates/parachain/pallets/xcnft/src/tests.rs:13:18 + | +13 | use sp_runtime::{traits::Bounded, AccountId32, BoundedVec, BuildStorage}; + | ^^^^^^^^^^^^^^^ + +warning: unused imports: `NFTs` and `RuntimeOrigin` + --> templates/parachain/pallets/xcnft/src/tests.rs:95:18 + | +95 | use testrelay::{NFTs, Runtime, RuntimeOrigin, System}; + | ^^^^ ^^^^^^^^^^^^^ + +warning: `pallet-parachain-xcnft` (lib test) generated 17 warnings (run `cargo fix --lib -p pallet-parachain-xcnft --tests` to apply 8 suggestions) + Finished `test` profile [unoptimized + debuginfo] target(s) in 3m 57s + Running unittests src/lib.rs (target/debug/deps/pallet_parachain_xcnft-db352bb2e21993f9) + +running 50 tests test mock::__construct_runtime_integrity_test::runtime_integrity_tests ... ok -test tests::parse_collection_same_owner_successful ... ok +test tests::testpara::__construct_runtime_integrity_test::runtime_integrity_tests ... ok test tests::parse_collection_diff_nft_owners_successful ... ok +test tests::parse_collection_same_owner_successful ... ok test tests::testpara::test_genesis_config_builds ... ok -test tests::testpara::__construct_runtime_integrity_test::runtime_integrity_tests ... ok -test tests::testrelay::__construct_runtime_integrity_test::runtime_integrity_tests ... ok test tests::testrelay::test_genesis_config_builds ... ok +test tests::testrelay::__construct_runtime_integrity_test::runtime_integrity_tests ... ok test tests::try_claiming_nft_no_collection ... ok -test tests::try_claiming_nft_not_owner ... ok test tests::try_claiming_nft_no_collection_origin ... ok test tests::initiate_proposal_successfuly ... ok -test tests::try_claiming_nft_wrong_origin_collection ... ok +test tests::try_claiming_nft_not_owner ... ok test tests::try_claiming_nft_wrong_nft ... ok -test tests::try_claiming_nft_success ... ok -test tests::try_collection_burn_success ... ok +test tests::try_claiming_nft_wrong_origin_collection ... ok test tests::try_collection_metadata_success ... ok +test tests::try_collection_burn_success ... ok test tests::try_collection_owner_send_success ... ok -test tests::try_initiating_proposal_collection_doesnt_exist ... ok -test tests::try_initiating_proposal_doesnt_exist ... ok +test tests::try_claiming_nft_success ... ok test tests::try_collection_parse_empty_successful ... ok +test tests::try_initiating_proposal_doesnt_exist ... ok +test tests::try_initiating_proposal_collection_doesnt_exist ... ok test tests::try_initiating_proposal_that_did_not_pass ... ok -test tests::try_nft_burn_successful ... ok -test tests::try_initiating_proposal_no_collection_owner ... ok test tests::try_nft_owner_successful ... ok +test tests::try_initiating_proposal_no_collection_owner ... ok +test tests::try_nft_burn_successful ... ok test tests::try_nft_metadata_successful ... ok -test tests::try_parse_collection_burn_successful ... ok -2024-11-19T00:20:27.004359Z ERROR runtime::system: Logic error: Unexpected underflow in reducing consumer -test tests::try_parse_collection_owner_successful ... ok test tests::try_parse_collection_metadata_successful ... ok -test tests::try_parse_nft_burn_successful ... ok +test tests::try_parse_collection_burn_successful ... ok test tests::try_parse_nft_metadata_successful ... ok test tests::try_parse_nft_owner_successful ... ok +test tests::try_parse_nft_burn_successful ... ok +test tests::try_parse_nft_transfer_no_collection ... ok test tests::try_parse_nft_transfer_already_received ... ok test tests::try_parse_nft_transfer_not_collection_owner ... ok -test tests::try_parse_nft_transfer_not_existing_nft ... ok -test tests::try_parse_nft_transfer_no_collection ... ok test tests::try_parse_nft_transfer_successful ... ok +test tests::try_parse_nft_transfer_not_existing_nft ... ok test tests::try_parse_nft_transfer_return_to_origin ... ok test tests::try_sending_collection_different_owners_success ... ok -test tests::try_sending_nft_no_collection ... ok test tests::try_sending_collection_that_user_doesnt_own ... ok -test tests::try_sending_nft_no_nft ... ok test tests::try_sending_collection_empty_success ... ok -test tests::try_sending_collection_same_owner_success ... ok +test tests::try_sending_nft_no_collection ... ok test tests::try_sending_nft_not_nft_owner ... ok +test tests::try_sending_collection_same_owner_success ... ok test tests::try_sending_nft_successful ... ok +test tests::try_sending_nft_no_nft ... ok +test tests::try_voting_on_non_existing_proposal ... ok test tests::try_voting_on_proposal_again_same_vote ... ok -test tests::try_voting_on_proposal_did_not_pass ... ok test tests::try_voting_on_proposal_expired ... ok -test tests::try_voting_on_non_existing_proposal ... ok +test tests::try_voting_on_proposal_did_not_pass ... ok test tests::try_voting_on_proposal_when_no_owner ... ok test tests::vote_on_proposal_successfuly ... ok -test result: ok. 51 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.02s - -ubuntu@ip-172-31-28-48:~/polkadot-sdk$ cargo test --package pallet-parachain-xcnft-two --lib -- tests --nocapture +test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.03s ```
-`cargo test --package pallet-parachain-xcnft-two --lib -- tests --nocapture` works: +`cargo test --package pallet-parachain-xcnft-two --lib -- tests --nocapture` works with warnings:
Output From f080c9edb240c92b6ebf818df546b17a5036fcc2 Mon Sep 17 00:00:00 2001 From: Keegan | W3F <35080151+keeganquigley@users.noreply.github.com> Date: Tue, 19 Nov 2024 15:13:05 -0500 Subject: [PATCH 6/7] Update xcNFT_2_keeganquigley.md --- evaluations/xcNFT_2_keeganquigley.md | 280 +++++++++++++++++++++++++++ 1 file changed, 280 insertions(+) diff --git a/evaluations/xcNFT_2_keeganquigley.md b/evaluations/xcNFT_2_keeganquigley.md index 495728033..759c2a9b1 100644 --- a/evaluations/xcNFT_2_keeganquigley.md +++ b/evaluations/xcNFT_2_keeganquigley.md @@ -19,3 +19,283 @@ | 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | | # General Notes + +Great job as usual guys. All unit tests are passing, and everything works as expected. I was able to launch the Zombienet Docker config and open the HRMP channels to get through the guide. + +
+ Output + +``` +╔════════════════════╤════════════════════════════════════════════════════════════════════════════════════════════════════╗ +║ 🧟 Zombienet 🧟 │ Initiation ║ +╟────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────╢ +║ Provider │ native ║ +╟────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────╢ +║ Namespace │ zombie-c073a78a250791e5e822688b3e077f52 ║ +╟────────────────────┼────────────────────────────────────────────────────────────────────────────────��───────────────────╢ +║ Temp Dir │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH ║ +╚════════════════════╧════════════════════════════════════════════════════════════════════════════════════════════════════╝ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/polkadot build-spec --chain rococo-local --disable-default- │ +│ │ bootnode > /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/cfg/rococo-local-p │ +│ │ lain.json │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-1 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node build-spec --disable-default-bootn │ +│ │ ode > /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/cfg/undefined-plain.jso │ +│ │ n │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-1 │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ 🧹 Starting with a fresh authority set... │ +└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ parac │ 5EncEPFzvgyMQ5xMnTBmJXzpH9qtBWrkmciAszH9UGQdmffs │ +│ │ hain-A-100 │ │ +│ │ 0-collator │ │ +│ │ 01 │ │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added CollatorSelection │ parac │ 5CaeWfmoJF6KPdYFVXLLykijKdDut1F3BbsvJGrKV81WZar6 │ +│ │ hain-A-100 │ │ +│ │ 0-collator │ │ +│ │ 01 │ │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-2 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node build-spec --disable-default-bootn │ +│ │ ode --chain /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1000-rococo-local │ +│ │ -plain.json --raw > /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1000-roc │ +│ │ oco-local-raw.json │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-2 │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-collator │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node export-genesis-head -d /tmp/zombie- │ +│ │ c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/export-genesis-state/1000 --chain /tmp/zo │ +│ │ mbie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1000-rococo-local.json /tmp/zombie-c │ +│ │ 073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/cfg/genesis-state-1000 && ../target/releas │ +│ │ e/parachain-template-node export-genesis-wasm --chain /tmp/zombie-c073a78a250791e5e822688b │ +│ │ 3e077f52_-1-taKrL64zwcAH/1000-rococo-local.json /tmp/zombie-c073a78a250791e5e822688b3e077f │ +│ │ 52_-1-taKrL64zwcAH/cfg/genesis-wasm-1000 │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-collator │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-3 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node-two build-spec --disable-default-b │ +│ │ ootnode > /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/cfg/undefined-plain │ +│ │ .json │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-3 │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ 🧹 Starting with a fresh authority set... │ +└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ parac │ 5EjhUcCLSYbwqus6kUWyEoKAya8zMZA4FagpMjdKVXQ4GHcP │ +│ │ hain-A-100 │ │ +│ │ 1-collator │ │ +│ │ 01 │ │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added CollatorSelection │ parac │ 5EPZch9SM7o6R14UTBgGL52bB3vcf3g5BwwQx2id3znXmrWK │ +│ │ hain-A-100 │ │ +│ │ 1-collator │ │ +│ │ 01 │ │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-4 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node-two build-spec --disable-default-b │ +│ │ ootnode --chain /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1001-rococo-l │ +│ │ ocal-plain.json --raw > /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1001 │ +│ │ -rococo-local-raw.json │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-4 │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-collator-1 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/parachain-template-node-two export-genesis-head -d /tmp/zom │ +│ │ bie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/export-genesis-state/1001 --chain /tm │ +│ │ p/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1001-rococo-local.json /tmp/zomb │ +│ │ ie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/cfg/genesis-state-1001 && ../target/re │ +│ │ lease/parachain-template-node-two export-genesis-wasm --chain /tmp/zombie-c073a78a250791e5 │ +│ │ e822688b3e077f52_-1-taKrL64zwcAH/1001-rococo-local.json /tmp/zombie-c073a78a250791e5e82268 │ +│ │ 8b3e077f52_-1-taKrL64zwcAH/cfg/genesis-wasm-1001 │ +└─────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘ +┌────────────────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-collator-1 │ +├────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Ready │ +└────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ +╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ +║ ✓ Added Genesis Parachain 1000 ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ +║ ✓ Added Genesis Parachain 1001 ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ 🧹 Starting with a fresh authority set... │ +└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ +║ 👤 Added Balance 2000000000000 for alice - 5GNJqTPyNqANBkUVMN1LPPrxXnFouWXoe2wNSmmEoLctxiZY ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +╔══════════════════════════════��═════════════════════════════════════════════════════════════════════════════════════════╗ +║ 👤 Added Balance 2000000000000 for bob - 5HpG9w8EBLe5XCrbczpwq5TSXvedjrBGCwqxK1iQ7qUsSWFc ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗ +║ 👤 Added Balance 2000000000000 for charlie - 5Ck5SLSHYac6WFt5UZRSsdJjwmpSZq85fd5TRNAdZQVzEAPT ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +╔══════════════════════════════��═════════════════════════════════════════════════════════════════════════════════════════╗ +║ 👤 Added Balance 2000000000000 for dave - 5HKPmK9GYtE1PSLsS1qiYU9xQ9Si1NcEhdeCq9sw5bqu4ns8 ║ +╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ alice │ 5GNJqTPyNqANBkUVMN1LPPrxXnFouWXoe2wNSmmEoLctxiZY │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ bob │ 5HpG9w8EBLe5XCrbczpwq5TSXvedjrBGCwqxK1iQ7qUsSWFc │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ charlie │ 5Ck5SLSHYac6WFt5UZRSsdJjwmpSZq85fd5TRNAdZQVzEAPT │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌──────────────────────────────┬────────────────────┬──────────────────────────────────────────────────────────────────────┐ +│ 👤 Added Genesis Authority │ dave │ 5HKPmK9GYtE1PSLsS1qiYU9xQ9Si1NcEhdeCq9sw5bqu4ns8 │ +└──────────────────────────────┴────────────────────┴──────────────────────────────────────────────────────────────────────┘ +┌─────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ Pod │ temp-5 │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Status │ Launching │ +├─────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Command │ bash -c ../target/release/polkadot build-spec --chain /tmp/zombie-c073a78a250791e5e82 │ +│ │ 2688b3e077f52_-1-taKrL64zwcAH/rococo-local-plain.json --disable-default-bootnode --raw > │ +│ │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/rococo-local-raw.json +``` +
+ +
+ Output 2 + +``` +│ Network launched 🚀🚀 │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Namespace │ zombie-c073a78a250791e5e822688b3e077f52 │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Provider │ native │ +├──────────────────────────────┴────────────────────────────────────────────────────────��───────────────────────────────────────────┤ +│ Node Information │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ alice │ +├──────────────────────────────┼─���──────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9910#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:45425/metrics │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Log Cmd │ tail -f /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/alice.log │ +├──────────────────────────────┴──────────────────────────────────────────────────────────────────────────────────────���─────────────┤ +│ Node Information │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ bob │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9911#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:32879/metrics │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Log Cmd │ tail -f /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/bob.log │ +├──────────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Node Information │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ charlie │ +├──────────────────────────────┼────────────────────────────────────────────────────────────���───────────────────────────────────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9912#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:44607/metrics │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Log Cmd │ tail -f /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/charlie.log │ +├──────────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Node Information │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ dave │ +├──────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────��──────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9913#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:34039/metrics │ +├──────────────────────────────┼──────────────────────────────���─────────────────────────────────────────────────────────────────────┤ +│ Log Cmd │ tail -f /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/dave.log │ +├──────────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Node Information │ +├───────────────��──────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ parachain-A-1000-collator01 │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9920#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:39735/metrics │ +├──────────────────────────────┼───────────────────────────────────────────────────────────��────────────────────────────────────────┤ +│ Log Cmd │ tail -f │ +│ │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/parachain-A-1000-collator01.log │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Parachain ID │ 1000 │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ ChainSpec Path │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1000-rococo-local.json │ +├──────────────────────────────┴───────────────────────────────────────────────────────────────────────────────────────��────────────┤ +│ Node Information │ +├──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Name │ parachain-A-1001-collator01 │ +├──────────────────────────────┼────────────────────────────────���───────────────────────────────────────────────────────────────────┤ +│ Direct Link │ https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9921#/explorer │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Prometheus Link │ http://127.0.0.1:42565/metrics │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Log Cmd │ tail -f │ +│ │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/parachain-A-1001-collator01.log │ +├──────────────────────────────┼────────────────────────────────────────────────────────��───────────────────────────────────────────┤ +│ Parachain ID │ 1001 │ +├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ ChainSpec Path │ /tmp/zombie-c073a78a250791e5e822688b3e077f52_-1-taKrL64zwcAH/1001-rococo-local.json +``` +
+ From 71ba6b28f4ab85127657f09b84a8733dde131e2b Mon Sep 17 00:00:00 2001 From: Keegan | W3F <35080151+keeganquigley@users.noreply.github.com> Date: Tue, 19 Nov 2024 15:34:56 -0500 Subject: [PATCH 7/7] Update xcNFT_2_keeganquigley.md --- evaluations/xcNFT_2_keeganquigley.md | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/evaluations/xcNFT_2_keeganquigley.md b/evaluations/xcNFT_2_keeganquigley.md index 759c2a9b1..48666b83a 100644 --- a/evaluations/xcNFT_2_keeganquigley.md +++ b/evaluations/xcNFT_2_keeganquigley.md @@ -1,6 +1,6 @@ # Evaluation -- **Status:** In progress +- **Status:** Accepted - **Application Document:** https://github.com/w3f/Grants-Program/blob/master/applications/xcNFT.md - **Milestone:** 2 @@ -8,15 +8,15 @@ | Number | Deliverable | Accepted | Link | Notes | | ------------- | ------------- | ------------- | ------------- | ------------- | | 0a. | License | |[MIT xcNFT](https://github.com/paraspell-research/xcnft-pallet/blob/main/LICENSE), [MIT DOCS](https://github.com/paraspell-research/xcnft-docs/blob/main/LICENSE)| MIT| -| 0b. | Documentation | |[Main xcNFT readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md), [xcNFT pallet_nfts readme](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts), [xcNFT pallet_uniques readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/xcnft-pallet_uniques/README.md), [official documentation](https://paraspell-research.github.io/xcnft-docs/)| | -| 0c. | Testing guide | | [Testing guide in readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#testing-pallet-functionality-), [Testing guide in docs](https://paraspell-research.github.io/xcnft-docs/implementation-guide/introduction.html#testing-pallet-functionality-%F0%9F%94%8E), [Unit tests commit](https://github.com/paraspell-research/xcnft-pallet/commit/c6682ecdf2fe9fdc51a678b028d77a0a4e33efa6) | | +| 0b. | Documentation | |[Main xcNFT readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md), [xcNFT pallet_nfts readme](https://github.com/paraspell-research/xcnft-pallet/tree/main/xcnft-pallet_nfts), [xcNFT pallet_uniques readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/xcnft-pallet_uniques/README.md), [official documentation](https://paraspell-research.github.io/xcnft-docs/)| Great docs | +| 0c. | Testing guide | | [Testing guide in readme](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#testing-pallet-functionality-), [Testing guide in docs](https://paraspell-research.github.io/xcnft-docs/implementation-guide/introduction.html#testing-pallet-functionality-%F0%9F%94%8E), [Unit tests commit](https://github.com/paraspell-research/xcnft-pallet/commit/c6682ecdf2fe9fdc51a678b028d77a0a4e33efa6) | Good coverage | | 0d. | Docker | | [Docker guide](https://github.com/paraspell-research/xcnft-pallet/blob/main/README.md#dockerized-local-testnet-build), [Docker image](https://github.com/paraspell-research/xcnft-pallet/blob/main/Dockerfile)| | -| 0e. | Article | |[Medium article link](https://medium.com/@dudo50/pallet-agnostic-cross-chain-nft-pallet-for-polkadot-paraverse-10a18a31b8ea) | | -| 1. | xcNFT Abstract collection/NFT selection logic | | [Commit adding abstracted collection and nft logic of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted collection and nft logic of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | -| 2. | xcNFT Refactor | | [Commit adding refactored code of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding refactored code of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | | -| 3. | xcNFT Benchmark | | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | | -| 4.a | xcNFT Github Pages Docs I | | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| | -| 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | | +| 0e. | Article | |[Medium article link](https://medium.com/@dudo50/pallet-agnostic-cross-chain-nft-pallet-for-polkadot-paraverse-10a18a31b8ea) | Well-written article | +| 1. | xcNFT Abstract collection/NFT selection logic | | [Commit adding abstracted collection and nft logic of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding abstracted collection and nft logic of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | Works | +| 2. | xcNFT Refactor | | [Commit adding refactored code of xcNFT pallet_nfts version](https://github.com/paraspell-research/xcnft-pallet/commit/99a1202fd258c5bc085e4f200af4475b3690bd18), [Commit adding refactored code of xcNFT pallet_uniques version](https://github.com/paraspell-research/xcnft-pallet/commit/447c7fc9bb84c47ab5a0f2171e4306270dfa67f5) | Works | +| 3. | xcNFT Benchmark | | [Commit adding benchmarks and weights.rs files to the xcNFT](https://github.com/paraspell-research/xcnft-pallet/commit/62d30f13f3619532c0070f07882f27b3948d54d7) | Successful | +| 4.a | xcNFT Github Pages Docs I | | [Commit adding developer guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/cfad76685843cea4ec0777bea33ea08dc4388b83)| Good | +| 4.b | xcNFT Github Pages Docs II | | [Commit adding user guide documentation](https://github.com/paraspell-research/xcnft-docs/commit/58cb122c13675c23332c13bfd182ef63c6678228) | Good | # General Notes @@ -299,3 +299,4 @@ Great job as usual guys. All unit tests are passing, and everything works as exp ```
+`cargo test` kept running out of disk space for me even after upping it. But it almost completely compiled. See https://github.com/w3f/Grant-Milestone-Delivery/pull/1220#issuecomment-2485118077