Closed saberistic closed 11 months ago
You can use the 2.0.0-beta.1
version of the crate: https://crates.io/crates/mpl-token-metadata/2.0.0-beta.1
The code base is in the PR #29
Oh thanks, I missed that tag. Is there a breaking change there? Noticing a major version bump, exciting
The change from borsh 0.9.x
to 0.10.x
is a breaking change, since borsh changed one of its traits. There can be dependency issues if you have a library that needs 0.9.x
.
Compiler still complains about the trait `borsh::BorshSerialize` is not implemented for `mpl_token_auth_rules::payload::Payload
when switched to 2.0.0-beta.1
@saberistic First try anchor build with version 1.13.1 you will get an error. Then change it in Cargo.toml to version 2.0.0-beta.1 and do anchor clean and anchor build again. This worked for me.
Make sure your Rust CLI is v1.68.0 or above; worked fine for me in v1.71.0. Solana CLI must be v1.16.5 or above; I used v1.16.8. And ofc Anchor CLI must be v0.28.0
Thanks, tried downgrading to 1.13.2 and it got resolved, not sure if this is something specific to my machine or expected in 1.13.2
So today I got into this situation that after adding
mpl-metadata-program
as a dependency to my anchor program(0.28
)I faced a compilation issue.searching web told me it's about
borsh
version and have to set dependencies as precise withcargo
so that it gets resolved.cargo update -p solana-zk-token-sdk --precise 1.14.22
So I did.Then accounts serializations(too large) popped up on my local cluster (
v1.16
) logs that was indication of some incompatibility with this precising. So attempted to downgrade cluster and another can of worm got popped open with anchor versions.Long story short eventually I found a workaround by cloning this repo, set Borsh version to
0.10.3
and mocking a missing implementation ofdeserialize_reader
and locally patch cargo dependency to my local version of this repo.Anyone could advise on what should be the right move from here?