How to use a forked module, with versioned Go Modules (v1.11+, GO111MODULE=on)
You have the following replace
:
replace go.larrymyers.com/protoc-gen-twirp_typescript => github.com/rynop/protoc-gen-twirp_typescript master
which if I've followed, is effectively replace originalname => forkname
I think the issue is that you are importing using the name of the fork, rather than the original name:
import (
// protocol buffer compiler plugins
_ "github.com/golang/protobuf/protoc-gen-go"
_ "github.com/mwitkow/go-proto-validators/protoc-gen-govalidators"
_ "github.com/twitchtv/twirp/protoc-gen-twirp"
_ "github.com/rynop/protoc-gen-twirp_typescript" <<<< PROBLEM, using fork name
)
The error message you see seems to be the go
command complaining about that.
I suspect it would work if you used the original name in the import statement:
import (
...
_ "go.larrymyers.com/protoc-gen-twirp_typescript" <<<< original name
)
You should also run go list -m all
to see the final selected versions, including it shows the outcome of any replace
and exclude
directives.