Metaplex smart contracts and SDK.
Name | Program | SDK | Integration Test |
---|---|---|---|
Candy Machine | |||
Token Entangler | |||
Token Metadata | |||
Auction House | |||
NFT-Packs | |||
Gumdrop | |||
Fixed price sale |
Run the build.sh
script with the name of the program to build the shared object and put it in a directory called test-programs
in the root of the project.
E.g.:
./build.sh auction-house
Running with all
builds all programs.
Smart contract SDK packages are versioned independently since a contract isn’t necessarily coupled to other contracts.
We use the following (pre|post)(version|publish)
npm scripts to manage related checks, tagging,
commiting and pushing the version bump.
preversion
: ensures that the package builds and its tests passpostversion
: adds and commits the version bump and adds a tag indicating package name and new
version, i.e. @metaplex-foundation/mp-core@v0.0.1
prepublishOnly
: ensures that the package builds and its tests pass again (just to be really sure)postpublish
: pushes the committed change and new tag to githubIn order to version and then publish a package just run the following commands from the folder of the package you want to update:
npm version <patch|minor|major>
npm publish
As you note if version + publish succeeds the scripts end up pushing those updates to the master
branch. Therefore please ensure to be on and up to date master
branch before running them. Please
don’t ever publish from another branch but only from the main one with only PR approved changes
merged.
Package | Link | Version |
---|---|---|
Candy Machine | mpl-candy-machine | |
Token Metadata | mpl-token-metadata | |
Auction House | mpl-auction-house | |
Testing Utils | mpl-testing-utils |
Package | Link | Version |
---|---|---|
Candy Machine | mpl-candy-machine | |
Token Metadata | mpl-token-metadata | |
Core | mpl-core | |
Auction House | mpl-auction-house |
To report a security issue, please follow the guidance on the SECURITY page.
The Rust/Cargo programs are licensed under the AGPLv3 license and the JS/TS client libraries are licensed under either the MIT or the Apache licenses.