golang/go

x/tools/gopls: when editing Go files in GOMODCACHE, offer to clone module and add replace directive

Open

#77,212 opened on Jan 16, 2026

View on GitHub
 (8 comments) (2 reactions) (0 assignees)Go (19,008 forks)batch import
FeatureRequestToolsgoplshelp wanted

Repository metrics

Stars
 (133,883 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

Being able to quickly edit the standard library (e.g. by inserting a print statement) is extremely useful during debugging. However, editing source files from dependencies within the module cache is not as convenient. Gopls could detect an attempt to modify such a file and offer to clone the module, add a replace directive to the main module, and move the cursor to the corresponding position in the cloned file, which can then be freely edited. The replace directive could be flagged with a // FIXME: debugging comment, with a code action to revert it.

(Credit to @prattmic for the idea.)

Contributor guide