go-ethereum/libevm
Stephen Buttolph a13de95b66
feat: expose internal debug API handler (#255)
## Why this should be merged

This allows exposing a number of APIs exposed by Geth's [`debug`
namespace](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug).
Specifically:
-
[debug_blockProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugblockprofile)
- [debug_cpuProfile
](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugcpuprofile)
- [debug_freeOSMemory
](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugfreeosmemory)
-
[debug_gcStats](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debuggcstats)
- [debug_goTrace
](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debuggotrace)
-
[debug_memStats](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugmemstats)
-
[debug_mutexProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugmutexprofile)
-
[debug_setBlockProfileRate](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugsetblockprofilerate)
-
[debug_setGCPercent](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugsetgcpercent)
-
[debug_setMutexProfileFraction](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugsetmutexprofilefraction)
-
[debug_stacks](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugstacks)
-
[debug_startCPUProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugstartcpuprofile)
-
[debug_startGoTrace](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugstartgotrace)
-
[debug_stopCPUProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugstopcpuprofile)
-
[debug_stopGoTrace](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugstopgotrace)
-
[debug_verbosity](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugverbosity)
-
[debug_vmodule](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugvmodule)
-
[debug_writeBlockProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugwriteblockprofile)
-
[debug_writeMemProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugwritememprofile)
-
[debug_writeMutexProfile](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugwritemutexprofile)

Note: This is _not_ the full debug namespace.

## How this works

Simply re-exports the API, similarly to how the `ethapi`s are
re-exported.

## How this was tested

N/A
2026-01-04 10:22:16 -05:00
..
cmd/internalise feat: internalise command (#90) 2024-12-17 17:20:02 +01:00
debug feat: expose internal debug API handler (#255) 2026-01-04 10:22:16 -05:00
ethapi feat: expose additional ethapi servers (#245) 2025-11-14 12:04:01 -05:00
ethtest feat: vm.Hooks.PreprocessingGasCharge() (#235) 2025-12-15 20:49:13 +00:00
hookstest fix: hookstest.Stub JSON marshalling when persisting ChainConfig (#251) 2025-12-30 16:21:29 -05:00
legacy fix(libevm/legacy): PrecompiledStatefulContract gas and remaining gas handling (#114) 2025-02-07 14:29:33 +01:00
options feat: options.ApplyTo for default values (#225) 2025-09-09 15:11:33 +01:00
reentrancy feat: reentrancy.Guard for stateful precompiles (#212) 2025-10-03 19:56:29 +00:00
register refactor!: temporary extras require proof of global lock (#238) 2025-10-16 14:27:15 +00:00
set chore: logging (#151) 2025-02-24 16:53:21 +00:00
stateconf feat: state-key transformation w/ override (#205) 2025-07-22 13:08:53 -04:00
sync feat(core/state): async trie prefetching (#76) 2024-11-26 08:01:47 -08:00
testonly test: StateAccount.Extra via trie.StateTrie.{Update,Get}Account() (#45) 2024-10-02 09:45:02 -07:00
tooling chore: Go 1.24 (#232) 2025-10-13 14:07:33 -04:00
extraslock.go refactor!: temporary extras require proof of global lock (#238) 2025-10-16 14:27:15 +00:00
extraslock_test.go refactor!: temporary extras require proof of global lock (#238) 2025-10-16 14:27:15 +00:00
interfaces_test.go Merge branch 'auto-rename-module_source-2bd6bd01d2e8561dd7fc21b631f4a34ac16627a1_workflow-c1fc594f020d23958b641a4e5a856b6e52c49d3bece94b95594864db16c1b0fc-main' into arr4n/rename-module 2024-10-17 13:07:28 +11:00
libevm.go feat!: disambiguate EVM-semantic and raw caller/self addresses for precompiles (#211) 2025-08-07 23:48:32 +01:00