tenderly

package
v0.0.102 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2023 License: MIT Imports: 25 Imported by: 0

Documentation

Overview

Package tenderly handles interacting with tenderly for easier debugging. This currently exports transactions, but does not properly handle source maps. For this to work we're going to have to correctly handle combined json outputs here: https://ethereum.stackexchange.com/a/26216 We can't export this functionality because it doesn't exist in go. tenderly piggybacks off the underlying provider. This can be accomplished by overriding the abigen to include the combined-json source map. While we're at it we should be able to copy the solidity source code into traceutil and generate direct stack traces in the console for geth/ganache based tests. This is stubbed in backends/base right now

Index

Constants

View Source
const LocalTXDeploymentProviderName providers.DeploymentProviderName = "LocalTXDeploymentProvider"

LocalTXDeploymentProviderName is the custom synapse deployment provider.

Variables

This section is empty.

Functions

This section is empty.

Types

type LocalTXDeploymentProvider

type LocalTXDeploymentProvider struct {
	*truffle.DeploymentProvider
}

LocalTXDeploymentProvider provides the development provider for synapse.

func NewDeploymentProvider

func NewDeploymentProvider() *LocalTXDeploymentProvider

NewDeploymentProvider creates a provider for this project.

func (*LocalTXDeploymentProvider) CheckIfProviderStructure

func (p *LocalTXDeploymentProvider) CheckIfProviderStructure(directory string) bool

CheckIfProviderStructure checks if the provider is currently this provider, which it always is note: there may be some issues here if multiple providers answer true (idk what happens)

func (*LocalTXDeploymentProvider) GetConfig

func (p *LocalTXDeploymentProvider) GetConfig(configName string, configDir string) (*providers.Config, error)

GetConfig gets the config for the synapse deployment TODO the rest of this probably needs to be configured somehow.

func (*LocalTXDeploymentProvider) GetContracts

func (p *LocalTXDeploymentProvider) GetContracts(buildDir string, networkIDs []string, objects ...*model.StateObject) ([]providers.Contract, int, error)

GetContracts gets contracts currently deployed on the provider. Since this is for unit tests, this is none always since this method is only called on initialization.

func (*LocalTXDeploymentProvider) GetProviderName

GetProviderName of the LocalTXDeploymentProvider.

func (*LocalTXDeploymentProvider) MustGetConfig

func (p *LocalTXDeploymentProvider) MustGetConfig() (*providers.Config, error)

MustGetConfig does nothing but conform to the interface.

type Tenderly

type Tenderly struct {
	*debug.ContractSource
	// contains filtered or unexported fields
}

Tenderly provides utilities for using tenderly for debugging local tests using tenderly http://tenderly.co/

func NewTenderly

func NewTenderly(ctx context.Context) (_ *Tenderly, err error)

NewTenderly creates a new tenderly object and sets up the basic config.

func (*Tenderly) StartListener

func (t *Tenderly) StartListener(chn chain.Chain) error

StartListener starts listening for events on all chains and exports them to tenderly.

func (*Tenderly) VerifyContract

func (t *Tenderly) VerifyContract(ctx context.Context, chn chain.Chain, contractType contracts.ContractType, contract contracts.DeployedContract) error

VerifyContract verifies a contract on tenderly.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL