You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+18-1Lines changed: 18 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,9 +16,11 @@ There are already tools that allow you to debug Ethereum transactions (Solidity)
16
16
17
17
# Usage
18
18
19
+
### Download
20
+
19
21
Use one of these releases:
20
22
21
-
* solc 0.4.24 compatible with ganache use: [v2.1.0](https://github.com/fergarrui/ethereum-graph-debugger/releases/tag/v2.1.0)
23
+
* solc 0.4.24 compatible with ganache use: [v2.2.0](https://github.com/fergarrui/ethereum-graph-debugger/releases/tag/v2.2.0)
22
24
* solc 0.5.8 (not compatible with ganache) use: [v3.0.2](https://github.com/fergarrui/ethereum-graph-debugger/releases/tag/v3.0.2)
23
25
24
26
If you want to use master (it can be more unstable), clone and start the application
@@ -38,6 +40,20 @@ npm start
38
40
39
41
Go to localhost:9090
40
42
43
+
### Use
44
+
45
+
* Go to localhost:9090
46
+
* Enter the path where the contracts are in the input text (it will load Solidity contracts recursively)
47
+
* A tab per file found will be created
48
+
* Under a file tab there are a few actions using the left menu
49
+
50
+
### How to debug bytecode (with no source code) [Experimental]
51
+
52
+
* Create a file with extension `.evm` and paste the runtime bytecode (:warning: important: with `0x` as prefix)
53
+
* For example: create a file named: `contract1.evm` with content `0x60806040`
54
+
* Scan the directory as described above
55
+
* You won't get source code mappings when clicking in operations of the CFG
56
+
41
57
# Features
42
58
43
59
* Now interactive :star2:: it has a sepparate frontend and API instead of building a static HTML file like in earlier versions
@@ -49,6 +65,7 @@ Go to localhost:9090
49
65
* EVM state in transaction: it is shown below the editor when selecting an opcode present in the execution trace of the provided transaction hash
50
66
* Settings: right now, there are settings to point to a different chain (by default it connects to http://127.0.0.1:8545) and basic authentication can be configured, so the RPC endpoint can be accessed if authentication is needed (to be compatible with platforms like [Kaleido](http://kaleido.io))
51
67
* When building the CFG a basic dynamic execution is made to calculate jumps and to remove most of orphan blocks (this will be improved in the future, probably with SymExec)
68
+
* To debug directly bytecode, use `.evm` extension files
0 commit comments