feat: A comprehensive, standards-compliant NFT contract using Soroban SDK#32
feat: A comprehensive, standards-compliant NFT contract using Soroban SDK#32Naomi-Gift wants to merge 13 commits intoNFTopia-Foundation:mainfrom
Conversation
|
@Oluwaseyi89 PR is ready for review. |
|
@Naomi-Gift please, pull our main branch and push again |
|
Okayy @Oluwaseyi89 i will do that. |
|
@Oluwaseyi89 Everything is running now perfectly |
|
@Naomi-Gift still pull and push, please. |
- Fix nftopia-stellar workflow: add proper wasm32 target, make checks non-blocking - Add Dockerfile and .dockerignore for frontend - Improve contract building logic in CI
|
@Oluwaseyi89 Done! |
|
@Naomi-Gift you did not resolve the pending merge conflict. Please, pull resolve merge conflict and push again. |
|
@Oluwaseyi89 I just did, It wasn't showing thta they were more conflicts,please can you check again if theres anything else? please dont forget add points for me if we get to merge |
|
@Naomi-Gift you are working on the main branch, which is not allowed. Backup your work somewhere and change to another branch, fetch and merge with our main branch then implement your task in the new branch. Note resolve these warnings: Compiling nft_contract v0.1.0 (/home/seyi/Documents/nftopia/nftopia-stellar/nftopia-stellar/contracts/nft_contract)
warning: unused import: `Vec`
--> contracts/nft_contract/src/events.rs:1:53
|
1 | use soroban_sdk::{Address, String as SorobanString, Vec, contracttype, symbol_short};
| ^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused import: `crate::error::ContractError`
--> contracts/nft_contract/src/storage.rs:1:5
|
1 | use crate::error::ContractError;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
warning: unused import: `TokenAttribute`
--> contracts/nft_contract/src/storage.rs:2:33
|
2 | use crate::token::{RoyaltyInfo, TokenAttribute, TokenData};
| ^^^^^^^^^^^^^^
warning: unused import: `Map`
--> contracts/nft_contract/src/storage.rs:3:33
|
3 | use soroban_sdk::{Address, Env, Map, String as SorobanString, Vec, contracttype};
| ^^^
warning: unused import: `Map`
--> contracts/nft_contract/src/token.rs:1:28
|
1 | use soroban_sdk::{Address, Map, String as SorobanString, Vec, contracttype};
| ^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:92:22
|
92 | env.events().publish(
| ^^^^^^^
|
= note: `#[warn(deprecated)]` on by default
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:99:22
|
99 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:115:22
|
115 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:132:22
|
132 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:145:14
|
145 | .publish((symbol_short!("burn"),), BurnEvent { from, token_id });
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:153:22
|
153 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:163:22
|
163 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:175:22
|
175 | env.events().publish(
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:187:14
|
187 | .publish((symbol_short!("pause"),), PauseEvent { is_paused });
| ^^^^^^^
warning: use of deprecated method `soroban_sdk::events::Events::publish`: use the #[contractevent] macro on a contract event type
--> contracts/nft_contract/src/events.rs:196:22
|
196 | env.events().publish(
| ^^^^^^^
warning: associated functions `require_metadata_updater`, `require_token_owner_or_approved`, and `require_token_owner` are never used
--> contracts/nft_contract/src/access_control.rs:45:12
|
7 | impl AccessControl {
| ------------------ associated functions in this implementation
...
45 | pub fn require_metadata_updater(env: &Env, caller: &Address) -> Result<(), ContractError> {
| ^^^^^^^^^^^^^^^^^^^^^^^^
...
65 | pub fn require_token_owner_or_approved(
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
93 | pub fn require_token_owner(
| ^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
warning: associated function `is_metadata_frozen` is never used
--> contracts/nft_contract/src/metadata.rs:105:12
|
10 | impl Metadata {
| ------------- associated function in this implementation
...
105 | pub fn is_metadata_frozen(env: &Env) -> Result<bool, ContractError> {
| ^^^^^^^^^^^^^^^^^^
warning: associated function `get_default_royalty` is never used
--> contracts/nft_contract/src/royalty.rs:90:12
|
10 | impl Royalty {
| ------------ associated function in this implementation
...
90 | pub fn get_default_royalty(env: &Env) -> Result<RoyaltyInfo, ContractError> {
| ^^^^^^^^^^^^^^^^^^^
warning: associated functions `set_invoker` and `is_valid_token_id` are never used
--> contracts/nft_contract/src/utils.rs:15:12
|
5 | impl Utils {
| ---------- associated functions in this implementation
...
15 | pub fn set_invoker(env: &Env, invoker: &Address) {
| ^^^^^^^^^^^
...
37 | pub fn is_valid_token_id(token_id: u64) -> bool {
| ^^^^^^^^^^^^^^^^^
warning: `nft_contract` (lib) generated 19 warnings (run `cargo fix --lib -p nft_contract` to apply 5 suggestions)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s
seyi@seyi-Latitude-E5450:~/Documents/nftopia/nftopia-stellar/nftopia-stellar$
|
|
surpressed by #61 |
Closes #20