cli: cli.StringFlag does not implement cli.Flag (Apply method has pointer receiver)

_**Here is the fix for this issue! => https://github.com/urfave/cli/issues/925#issuecomment-559330456**_

edited by @lynncyrin!


After the last 2 months there was an error: cli.StringFlag does not implement cli.Flag (Apply method has pointer receiver) In commit ebc25651f0fc5d51acf8182565706d670edff596 error not exists. In corrent master error exists.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 13
  • Comments: 15 (9 by maintainers)

Most upvoted comments

For any Go noobs out there like me, here’s how I repaired my app:

  1. Remove any instances of required packages from your $GO_PATH/src/
  2. run go mod init github.com/<OWNER>/<REPO> in the root of your app.
  3. run your package go run .

This will generate a go.mod file pre-populated with any requirements found in imports

  1. update anywhere that uses go get -d -v (Such a as Dockerfile) to use go mod download

You can see my commit here: https://github.com/Guestlogix/pat/commit/02d048137389b8da8c7971149b7aa33100773476

Well this was an intended change to a new version of the API, so I guess you just have to fix your side of things.

We expect potentially one more of these breaking changes next year.

I’ve been compiling migration instructions here => https://github.com/urfave/cli/releases/tag/v2.0.0 ^^

@lynncyrin thanks for the follow up. We also pinned the repo but we’ll look at the steps to migrate from v1 to v2.

@lynncyrin My team pinned this repo to the last working version a while ago

@skillful-alex please refer to the v2 manual for the latest documentation.

You know, I had this same question 😅 and our main author has it covered:

https://github.com/purpleidea/mgmt/blob/master/docs/faq.md#why-arent-you-using-glide-godep-or-go-mod-for-dependency-management

I have since been informed that we’ll probably need to update this code to match the API change. (On it.)

Let me guess, you are not using go modules or any form of vendoring and pull stuff straight from master and build against that?