Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Kakadu/ocamlearlybird

Open more actions menu
 
 

Repository files navigation

OCaml earlybird

ci workflow status GitHub release status opam package status

OCaml debug adapter.

Installation

opam install earlybird

Usage

VS Code

See Debugging OCaml programs (experimental) in VSCode OCaml Platform README. This requires VSCode OCaml Platform 1.13 or newer.

PS. Since the integration into VSCode OCaml Platform, the old "Ocamlearlybird" VSCode extension is deprecated.

Configuration

Field Type Default value Description
program string (required) The path of debuggee program.
arguments string[] [] The command-line arguments for the debuggee program.
cwd string The working directory for debuggee program.
env {[var: string]: string} {} Environment variables passed to the debuggee program.
stopOnEntry boolean false Automatically stop after launch.
console 'internalConsole' |
'integratedTerminal' |
'externalTerminal'
internalConsole Where to launch the debug target: internal console, integrated terminal, or external terminal.
followForkMode 'forkChild' | 'forkParent' forkParent Set which process the debugger follows on fork.
source_dirs string[] [] The path to search sources.
onlyDebugGlob string true Only debug sources which match onlyDebugGlob.
yieldSteps number 4096 Max steps to execute in batch. Debugger can not response other requests when executing steps in batch.
_debugLog string File to Log debug messages.

Troubleshooting

Breakpoints not hit with (lang dune 3.0) and above

Change to (lang dune 3.7) or above and add (map_workspace_root false) to your dune-project. See dune documentation for more information.

Examples

utop

Screen capture of debugging utop.

Launch configuration used:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "test_program",
            "type": "ocaml.earlybird",
            "request": "launch",
            "stopOnEntry": true,
            "console": "integratedTerminal",
            "program": "${workspaceFolder}/_build/default/examples/interact/test_program.bc",
            "onlyDebugGlob": "<${workspaceFolder}/**/*>",
            "yieldSteps": 1024,
            "cwd": "${workspaceFolder}"
        }
    ]
}

About

OCaml debug adapter

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.