Info
The info schema is the top-level container for ethdebug/format debug data. It bundles programs, types, sources, and compilation metadata into a single representation.
For the mental model behind info objects, see Concepts: Info.
What the info schema provides
The ethdebug/format/info schema represents a complete unit of debug information for a compilation:
- Programs for each bytecode artifact (create and call)
- Shared type definitions referenced across programs
- Source files (content or references)
- Compilation metadata (compiler version, settings)
Schema overview
An info object at minimum includes:
Minimal info objectSchema:ethdebug/format/info
{
"$schema": "https://ethdebug.github.io/format/schema/info.json",
"compilation": {
"id": "compilation-1",
"compiler": { "name": "solc", "version": "0.8.20" },
"sources": [
{ "id": "source-1", "language": "Solidity",
"path": "contracts/Token.sol", "contents": "// ..." }
]
},
"programs": [
{ /* program for create bytecode */ },
{ /* program for call bytecode */ }
],
"types": {},
"pointers": {}
}
When to use the info schema
Use ethdebug/format/info when you need:
- A complete, standalone debug artifact
- Debug data separate from compiler output
- Input for debuggers and analysis tools
For embedding debug data within compiler output, see info/resources.
Navigation
Resources
Compilation-level shared data: sources, compilations, and shared types.
Specification
Formal JSON Schema definition for info objects.