mschneider / solcpp

A fast Solana and Mango Markets C++ SDK
Other
42 stars 14 forks source link

Usage of deprecated RPC calls that will be removed soon #92

Open Woody4618 opened 2 months ago

Woody4618 commented 2 months ago

Hey, there are bunch of RPC calls that are deprecated and will be removed very soon. You can find the deprecated calls here: https://github.com/anza-xyz/agave/wiki/Agave-v2.0-Transition-Guide

I searched your SDK for usage of these calls and looks like you are using

These calls will not be usable anymore soon after breakpoint when Agave 2.0 goes live.

You can find the all the usages in the code using this bash script: https://gist.githubusercontent.com/cloakd/2366d9c5d415c27a1f26f10de0b8be93/raw/d0d3a25dda23586ba9704f7985fb06093032ec72/check_words.sh

Here you can find a replacement implementation for rust and JS client side for getStakeActivation: https://github.com/solana-developers/solana-rpc-get-stake-activation

All other calls have replacement calls here: https://github.com/anza-xyz/agave/wiki/Agave-v2.0-Transition-Guide

If you know users of the SDK would also be great if you could inform them about the deprecated calls so nothing breaks when the calls actually get removed on mainnet.

Woody4618 commented 2 months ago

These are the locations:

/Users/jonasmac2/Documents/GitHub/solcpp/tests/main.cpp:67:  // using confirmTransaction to check if the airdrop went through
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:813:bool Connection::confirmTransaction(std::string transactionSignature,
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:807:Connection::getSignatureStatus(const std::string &signature,
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:821:    const auto res = getSignatureStatus(transactionSignature, true).value;
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:750:PublicKey Connection::getRecentBlockhash(const Commitment &commitment) const {
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:753:  const json reqJson = jsonRequest("getRecentBlockhash", params);
/Users/jonasmac2/Documents/GitHub/solcpp/tests/main.cpp:795:      connection.getStakeActivation(solana::PublicKey::fromBase58(
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:878:StakeActivation Connection::getStakeActivation(
/Users/jonasmac2/Documents/GitHub/solcpp/lib/solana.cpp:881:  const json reqJson = jsonRequest("getStakeActivation", params);