echo: Tags are breaking after v3.2.1

Prior to version 3.2.1 inclusive, tags had the format v3.2.1, which was correct and works for Dep / Go modules (vgo). After version 3.2.1 (>=3.2.2), you use a tag format 3.2.2 that is incompatible with Go modules (vgo).

If you try to use Go modules (vgo, go1.11 was released), than you see something like this:

require (
...
github.com/labstack/echo v0.0.0-20180412143600-6d227dfea4d2
...
)

Main changes that was done in 3.2.2, tag name:

  • before vX.Y.Z
  • after X.Y.Z

v was dropped 😔

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 6
  • Comments: 43 (24 by maintainers)

Most upvoted comments

@im-kulikov We can address this in the next release.

@alexaandru Can you help me with a new release? We should change the tag back to prefixed with v.

go get github.com/labstack/echo@master You will be able to see

v0.0.0-20180xxxxxxxxx-xxxxx

I found the reason

https://golang.org/cmd/go/#hdr-Module_compatibility_and_semantic_versioning

Code written before the semantic import versioning convention was introduced may use major versions v2 and later to describe the same set of unversioned import paths as used in v0 and v1. To accommodate such code, if a source code repository has a v2.0.0 or later tag for a file tree with no go.mod, the version is considered to be part of the v1 module’s available versions and is given an +incompatible suffix when converted to a module version, as in v2.0.0+incompatible. The +incompatible tag is also applied to pseudo-versions derived from such versions, as in v2.0.1-0.yyyymmddhhmmss-abcdefabcdef+incompatible.