Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* backend structure to support p-chain and c-chain atomic tx (#122) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * lint fixes * /construction/derive support for p-chain and c-chain bech32 addresses (#124) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * /account/balance and /account/coins support for p-chain and c-chain atomic tx (#125) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * /network/options and /network/status support for p-chain (#126) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * /construction/preprocess and /construction/metadata endpoints for p-chain (#127) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Added Postman collection for all endpoints (#129) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * updating account endpoints to exclude multisig utxos (#132) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * trigger checks * /construction/payloads for p-chain (#130) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * /block and /block/transaction endpoints for p-chain (#131) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> Co-authored-by: Raj Ranjan <rranjan01234@gmail.com> * simplify postman collection usage for construction requests (#133) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * /construction/preprocess and /construction/metadata endpoints for c-chain atomic transactions (#134) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * P-chain parse combine hash submit (#136) * /construction/parse and /construction/combine endpoints for p-chain * /construction/hash and /construction/submit endpoints for p-chain Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Account and block endpoint fixes (#137) * adding block identifier to /account calls for c-chain atomic tx * Use transaction ids instead of block ids for C-chain atomic txs * support shared memory balance for p-chain Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * C chain construction rest (#139) * /construction/payloads for c-chain atomic transactions * /construction/parse and /construction/combine for c-chain atomic tx * /construction/hash and /construction/submit endpoints for c-chain atomic tx Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * minor fixes (#140) * skip outputs without any addresses * remove artificial create chain output * add staking parameters to transaction metadata when parsing Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * P-Chain Avalanchego 1.8.x support (#144) * updated platformvm types and added indexer parsing support for Blueberry blocks * fixed indexer parser tests * support parsing of new transaction types * fixed incorrect threshold value set for the staking reward outputs * update CI golang to 1.18 Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Version upgrades (#148) * update avalanchego version to 1.8.5 * change minimum go version to 1.18 Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Merge branch 'master' of https://github.com/ava-labs/avalanche-rosetta into pchain-support * Add cross chain operations to transaction metadata (#149) * added exported outputs and imported inputs to metadata of p-chain transactions * added exported outputs to metadata of c-chain atomic transactions Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * addressed pchain-support merge pr comments (#151) * utilize txs.CodecVersion * fix Blueberry block timestamp handling * handle missing Blueberry transaction types * rename indexer parser initialize method * use blocks.Parse to parse block bytes * code style fixes Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * fix tests * Fixing AdvanceTimeTx lookup and multisig check regression (#152) * added dependency tx handling logic for advance time tx * fix p-chain imported input parsing bug Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * add signer to permissionless validator tx output metadata (#153) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * v1.9.0 support and other fixes requested in #123 (#154) * avalanchego 1.9.0 compatibility changes * added comments to p-chain indexer parser timestamp logic * add multiple transaction support to banff proposal block parsing * added import aliases to p-chain indexer parser code * added comments to isGenesisBlockRequest check * added comments to indexer container lookup logic * better error messages for pre/post height lookup during utxo retrieval Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Multiple fixes (#156) * better error handling for p-chain tx-parser constructor * sort evm input and outputs for c-chain atomic transactions * renamed metadata variables for staking tx builder * added overflow check to staking transaction weight calculations * return error if reward transaction points to an unsupported transaction type * style fixes Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * update codec and version sources and add operation identifier to c-chain export tx (#157) * update codec and version sources * add operation identifier to c-chain export transaction parsing Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Multiple updates (#159) * use tx id generation logic from avalanchego in hash endpoint * added comments to exported types * make genesisTimestamp in p-chain indexer parser more verbose * add operation identifier to p-chain import/export transaction parsing * add support for non-AVAX currencies in account and block endpoints Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * restructured network identifier handling * validate network name in main * fixes * wip: repacking genesis stuff to genesisHandler * dropped code duplication * nit * wip * wip * types cleanup * more types cleanup * cleanup * nit * chainIDs type cleanup * cleanup AvaxTx implementation * fixes following code review * fixed chainID build * fix * DependencyTx cleanup * changed utxosMap indexing * nit * nit * some more cleanup * nit * nit * nit * nits * nits * Fixed Pchain Indexer parser + minor cleanups (#160) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * fixes following code review * reverted blkTime extraction in pchain indexer parser * Backend block cleanup (#162) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * fixes * fixes following code review * fixed chainID build * reverted blkTime extraction in pchain indexer parser * Pchain network id checks (#163) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * restructured network identifier handling * validate network name in main * fixes * fixes following code review * fixed chainID build * fix * reverted blkTime extraction in pchain indexer parser * cleanup * Pchain genesis repack (#164) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * restructured network identifier handling * validate network name in main * fixes * wip: repacking genesis stuff to genesisHandler * dropped code duplication * nit * fixes following code review * fixed chainID build * fix * reverted blkTime extraction in pchain indexer parser * cleanup * fill in asset ids for P-chain allocation transaction outputs * pchain tx parser cleanup (#165) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * restructured network identifier handling * validate network name in main * fixes * wip: repacking genesis stuff to genesisHandler * dropped code duplication * nit * wip * wip * types cleanup * more types cleanup * cleanup * nit * chainIDs type cleanup * cleanup AvaxTx implementation * fixes following code review * fixed chainID build * fix * reverted blkTime extraction in pchain indexer parser * cleanup * fill in asset ids for P-chain allocation transaction outputs * nit * DependencyTx cleanup (#166) * minor cleanups * nits * nit * more cleanup * prepended base to rpc/indexer endpoints, to avoid confusion * appease linter * pchain indexer dropped unused attribute * nit * nit * init pchain parser in constructor * renamed ParseBlockAtIndex to ParseBlockAtHeight * some more cleanup * wip: cleanup timestamp * fixed UTs * nit * comment nit * cleanup * parser cleanup * init chainIDs in backend ctor * nit * restructured network identifier handling * validate network name in main * fixes * wip: repacking genesis stuff to genesisHandler * dropped code duplication * nit * wip * wip * types cleanup * more types cleanup * cleanup * nit * chainIDs type cleanup * cleanup AvaxTx implementation * fixes following code review * fixed chainID build * fix * DependencyTx cleanup * changed utxosMap indexing * nit * nit * some more cleanup * nit * nit * nit * reverted blkTime extraction in pchain indexer parser * cleanup * fill in asset ids for P-chain allocation transaction outputs * nit * merged pchain-support * nit * nit fix * added Initialize to common.AvaxTx * fixed some more uninitilized txs * some more cleanup * nit * TxDependency Bugfix (#172) bugfix + UTs * Accounts nits (#167) nits and cleanup on Accounts * pchain tx parser fix (#168) pchain tx parser - locked inputs fix * fixed network names * cleanup * fix c-chain atomic transaction balance currencies (#173) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * Network name-backward compatible fix (#174) lowercase NetworkIdentifier for backward compatibility * [Codebase cleanup] Network identifier Cleanup (#170) networkIdentifier constants cleanup * rename rpc_endpoint/indexer_endpoint to rpc_base_url/indexer_base_url in Docker entrypoint (#180) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * stopped getting blocks from indexer by ID * notes * Fix Pchain Block ID usage (#182) stopped getting blocks from indexer by ID * Drop proposer type (#183) dropped proposer type * nit * disable p-chain indexer related calls in offline mode (#189) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * no indexer call on genesis (#190) * fixed compilation post merge * fixed network name verification for offline mode * Get network name fix (#194) * reverted faulty change * refactored common methods in cchain and pchain clients * fixed GetNetworkName validation * some more validation fixes * Lazy inits (#195) * Lazily initialized networkID * lazily initialized genesis block * lazily initialized ChainIDs * dropped useless func * nit * appeased linter * Dropped most lazy inits in favour of Avalanchego codebase methods (#196) * drop unused GetNetworkName method from client * dropped GetNetworkID API calls in favour of avalanchego constants package * dropped genesis lazy initialization following GetNetworkID calls removal * appease linter * fix panic in offline mode * tech notes to ease up maintenance * add pending rewards balance support for p-chain (#200) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * add tx fee metadata to cross chain c-chain transaction parsing (#201) Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> * updated avalanchego to v1.9.10 * updated avalanchego version to 1.9.11 --------- Co-authored-by: bilgehansahin <bilgehansahin@gmail.com> Co-authored-by: Bilgehan Sahin <bilgehan.sahin@coinbase.com> Co-authored-by: Alberto Benegiamo <alberto.benegiamo@gmail.com>
- Loading branch information