Skip to content

Commit

Permalink
Merge pull request #1420 from casper-network/ipopescu-patch-1
Browse files Browse the repository at this point in the history
Note regarding token_hash when minting NFTs
  • Loading branch information
ipopescu authored Mar 26, 2024
2 parents c1b6d1f + 1e4ef57 commit 7caad27
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 8 deletions.
2 changes: 1 addition & 1 deletion source/docs/casper/developers/prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ You will find the `casper-client` executable in the `target/release` directory.

If you plan to compile contracts from the source code, including those provided in the [casper-node](https://github.com/casper-network/casper-node) repository, install `CMake` with the commands below.

[CMake](https://cmake.org/) is a popular build tool that we will use, and you may have it installed. If you do, make sure that you have the latest version. If you need to install or upgrade it, follow the steps below or on the [CMake website](https://cmake.org/install/). Once installed, check your version as shown below.
[CMake](https://cmake.org/) is a popular build tool that we will use, and you may have it installed. If you do, make sure that you have the latest version. If you need to install or upgrade it, follow the steps below or on the [CMake website](https://cmake.org/resources/). Once installed, check your version as shown below.

<Tabs>
<TabItem value="Linux" label="Linux">
Expand Down
4 changes: 2 additions & 2 deletions source/docs/casper/resources/casper-open-source-software.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Name | Description | Author | Language | License | Last Update Date | Type
[Casper Swift SDK](https://github.com/hienbui9999/CasperSDKInSwift) | Casper Client SDK. Casper SDK methods implementation in Swift. | hienbui9999 | Swift | MIT license | 2022-06-08 | Client SDK
[Casper Two-Party MultiSig Contract](https://github.com/casper-ecosystem/two-party-multi-sig) | This example demonstrates how to configure an account on a Casper network to require two-party multi-signature deploys. | Casper Labs | Rust | NA | 2022-04-26 | Example contracts
[Casper World](https://github.com/NodesGuru/casper-world) | Casper network status and decentralization map web application | Nodes Guru | TypeScript | MIT license | 2022-01-26 | Blockchain Explorer
[CasperDash Wallet](https://github.com/CasperDash/casperdash-client) | A non-custodial wallet for the Casper blockchain | CasperDash | JavaScript | MIT license | 2022-09-14 | Wallet
[CasperDash Wallet](https://github.com/CasperDash/casperdash-extension) | A non-custodial wallet for the Casper blockchain | CasperDash | JavaScript | MIT license | 2022-09-14 | Wallet
[CasperFYRE API](https://github.com/ledgerleapllc/casperfyre-frontend) | Dispensory API interface for Casper Mainnet | LedgerLeap | JavaScript-PHP | Apache-2.0 license | 2022-09-06 | Tools
[CasperHolders](https://github.com/casperholders/casperholdersfront) | First 3rd party UI to interact with Casper Blockchain | CasperHolders | JavaScript | Apache-2.0 license | 2022-08-23 | Blockchain Explorer
[CasperSign](https://github.com/chronologic/caspersign-validator-ui) | The First Casper-Native Dapp. CasperSign Allows Users to Sign Contracts Confidentially & Securely on the Casper Blockchain | ChronoLogic and Digital Strategies | TypeScript | NA | 2022-08-31 | dApp
Expand All @@ -49,7 +49,7 @@ Name | Description | Author | Language | License | Last Update Date | Type
[DAO Contracts](https://github.com/make-software/dao-contracts) | Smart Contracts for the MVPR On-Chain Governance System on Casper | MAKE Software | Rust | Apache-2.0 license | 2022-07-17 | DAO
[DHF PAY](https://github.com/DHFinance/dhf-pay-front) | The crypto currency payment gateway on the CSPR blockchain | DHFinance | TypeScript | Apache-2.0 license | 2022-08-28 | Payments
[DLN DAO](https://github.com/dlndao/start/) | DLN DAO | AlphaFin | TypeScript | MIT license | 2022-09-10 | DAO
[DotOracle](https://github.com/dotoracle/bridge-ui) | Realtime decentralized Oracle and Cross-chain liquidity network for EVM, non-EVM Casper, and L2 blockchains. | DotOracle Network | TypeScript | NA | 2022-09-26 | Bridge
[DotOracle](https://github.com/paradiso-io/bridge-ui) | Realtime decentralized Oracle and Cross-chain liquidity network for EVM, non-EVM Casper, and L2 blockchains. | DotOracle Network | TypeScript | NA | 2022-09-26 | Bridge
[Dragon’s Lair Style Staking](https://github.com/Rengo-Labs/CasperLabs-Dragonlair) | Lair Style Staking | Rengo Labs | Rust | Apache-2.0 license | 2022-06-24 | Staking
[Subscription Billing](https://github.com/Rengo-Labs/CasperLabs-EIP1337) | ERC-1337 subscription billing | Rengo Labs | Rust | MIT license | 2022-04-07 | Tokens
[Casper Fungible Token](https://github.com/casper-ecosystem/cep18) | Implementation of Fungible Tokens for Casper networks | Casper Labs | Rust | Apache-2.0 license | 2022-09-01 | Tokens
Expand Down
2 changes: 1 addition & 1 deletion source/docs/casper/resources/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Here is a list of commands for developers who already meet the prerequisites and
## Prerequisites

1. You have installed [Rust](https://www.rust-lang.org/tools/install). Verify the installation with this command: `rustup --version`. Restart the shell if needed.
2. You have installed [cmake](https://cmake.org/install/). Verify the installation with this command: `cmake --version`.
2. You have installed [cmake](https://cmake.org/resources/). Verify the installation with this command: `cmake --version`.
- On Ubuntu, you can follow [this guide](https://cgold.readthedocs.io/en/latest/first-step/installation.html).
- On MacOS, use this command: `brew install cmake`.
3. You have an integrated development environment (IDE). On Windows, you will need to download the C++ build developer tools, without which you cannot install `cargo-casper`.
Expand Down
4 changes: 2 additions & 2 deletions source/docs/casper/resources/tokens/cep78/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,12 @@ folder within the project folder.

### Checking Token Ownership

[Learn to check token ownership](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/tutorials/token-ownership-tutorial.md) starting with version [v1.1.1](https://github.com/casper-ecosystem/cep-78-enhanced-nft/releases/tag/v1.1.1). The `OwnerReverseLookupMode` modality must be set to `Complete` as described [here](./reverse-lookup.md).
[Learn to check token ownership](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/docs/tutorials/token-ownership-tutorial.md) starting with version [v1.1.1](https://github.com/casper-ecosystem/cep-78-enhanced-nft/releases/tag/v1.1.1). The `OwnerReverseLookupMode` modality must be set to `Complete` as described [here](./reverse-lookup.md).


### Upgrading to Version 1.1.1

Upgrade to v1.1.1 using a [Standard NamedKey Convention](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/tutorials/standard-migration-tutorial.md) or a [Custom NamedKey Convention](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/tutorials/custom-migration-tutorial.md).
Upgrade to v1.1.1 using a [Standard NamedKey Convention](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/tutorials/standard-migration-tutorial.md) or a [Custom NamedKey Convention](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/docs/tutorials/custom-migration-tutorial.md).

## Installing and Interacting with the Contract using the Rust Casper Client

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ slug: /resources/tokens/cep78/reverse-lookup

# Owner Reverse Lookup Functionality

In version 1.0 of the CEP-78 Enhanced NFT Standard contract, tracking minted tokens consisted of a single, unbounded list that would grow in size with each additional token. As a result, gas costs would increase over time as the list must be overwritten with each new minting. The related tutorial can be found [here](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/tutorials/token-ownership-tutorial.md).
In version 1.0 of the CEP-78 Enhanced NFT Standard contract, tracking minted tokens consisted of a single, unbounded list that would grow in size with each additional token. As a result, gas costs would increase over time as the list must be overwritten with each new minting. The related tutorial can be found [here](https://github.com/casper-ecosystem/cep-78-enhanced-nft/blob/dev/docs/tutorials/token-ownership-tutorial.md).

In an effort to stabilize the gas costs of larger NFT collections, version 1.1 of CEP-78 includes the use of a pre-allocated page system to track ownership of NFTs within the contract.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,11 @@ casper-client put-deploy --node-address http://localhost:11101/rpc/ \

</details>

:::note

If the `identifier_mode` was set to hash (1) during installation, the `token_hash` runtime argument needs to be specified during minting. Since you already know the NFT's identifier, you can easily query the NFT's `meta_data`, which is a very useful feature. This example uses an ordinal (0) `identifier_mode`.

:::

### Minting NFTs using Wasm

Expand Down Expand Up @@ -348,4 +353,4 @@ casper-client put-deploy -n http://localhost:11101/rpc --chain-name "casper-net-

## Next Steps

- [Testing Framework for CEP-78](./testing-NFTs.md)
- [Testing Framework for CEP-78](./testing-NFTs.md)

0 comments on commit 7caad27

Please sign in to comment.