Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR removed all files from the
./rust
folder of this repository and added a README.md intheir place which outlines the reasoning behind this step.
Additionally github actions which were specific to those removed Rust programs have been removed.
The below is mostly quoting that readme which was added to the deprecated rust folder
./rust/README.md.
Deprecating Metaplex Rust Programs
The Rust programs for each contract have been removed from the Rust folder and moved to other repositories as explained below.
Where are those programs now?
The Rust programs of all actively maintained Metaplex contracts were moved to the
metaplex-program-library. They are stored there alongside their respective SDK.
All programs of deprecated contracts were moved to the a separate repository
aka the graveyard and are no longer maintained..
Why were the programs moved?
We at Metaplex determined that moving contracts into a separate repository and having the Rust
programs live alongside the client SDK is necessary to allow us to stabilize our contracts and
evolve them quickly and securely.
Structuring Solana contracts like this is a rather standard approach and demonstrated by the
solana program library which most of us are familiar with.
This approach provides the following benefits:
that lives in the same repo
provided in one pull request in one repository
changes that are merged don't break existing functionality in either the program or the SDK
underlying contracts (the metaplex-program-library) which aids in reviewing them and
paying particular attention to contract changes as those form the core of the Metaplex
functionality
As a result this not only improves security but also the experience of Metaplex users and
developers.
Which Contracts were deprecated?
NOTE that deprecated programs will stay available on-chain and are stored as readonly
inside the deprecated contracts repository.
What are the Future Plans for this Repository?
In the near future the metaplex repository will become an example
of how to use the SDK provided by the metaplex-program-library in order to build
applications with Metaplex.
I want to change contract SDK or Rust program code, where do I pull request?
First make sure that the contract has not been deprecated and then add those changes inside the
respective folder of the metaplex-program-library repository. Make sure to add tests
that show that additions/fixes work.
If you make changes to the SDK add an integration test.
If you add/change API of a Rust program also update the respective SDK and add an integration
test showing that it works end to end.
NOTE: for deprecated programs found inside the deprecated
repository no changes will be accepted
I want to change the store front app, where do I pull request?
Changes to the React code should still be provided via a pull request in this repository as
before.
Please be aware though that it will eventually see a major rewrite to use the SDK provided by
the metaplex program library as stated above. Thus we may choose to hold off on
merging features that aren't essential to most of our users and focus on merging fixes instead.