mattn/anko

Master branch doesn't follow releases

c4s4 opened this issue · 14 comments

c4s4 commented

Code on master branch is not the same than the one of the latest v0.1.2 release. May I suggest that master branch follow latest releases?

I think it is fine to have the master behind the release but it is up to @mattn

c4s4 commented

Except that when you perform a good old go get github.com/mattn/anko you get an old version.

Did you try go get -u github.com/mattn/anko

c4s4 commented

You get the same branch, -u option doesn't solve the issue.

Could you explain exactly what you are expecting versus what you are getting?

c4s4 commented

When you perform a go get github.com/foo/bar you expect to get latest stable release. This is how you used to get dependencies at the beginning of Go, and I guess that many people, including me, are still getting their dependencies this way.
When I do that on Anko project, I get master branch which is not in the same state than latest release which is tagged v0.1.2. I seems to be behind this release.
Thus I suggest that you should merge v0.1.2 on master branch, so that this branch reflects latest stable release of the project.

Not all repos are done the same way. Matt does this repo so far like the following:
The master branch has the latest code. Can see the note about this on the readme. When the master branch gets updated sometimes a new release/tag is made. Once that release/tag is made it is never updated.

I think you are asking for release/tag to be updated? If so, can see what Matt says but in my option don't think that is a good idea. Generally speaking once a release/tag is made it is never changed.

I know that some systems support pulling release/tag with wildcards. So for example can say pull 0.1.x, so it pulls the latest release/tag of 0.1.x which right now would be 0.1.2. If a new release/tag of 0.1.3 was created, that release/tag would be pulled. I think Go 1.13 has some support for release/tags but not aware of the details or if it can support wildcards.

@c4s4 Does that make sense?

@c4s4 So are we good?

@mattn Close this?

c4s4 commented

If you work on master branch, a way to get a clean version of the code while running go get is to tag clean code with tag go1, as described on page https://dev.to/yyagi/avoiding-the-master-branch-is-used-in-go-get--4p3k. Thus I suggest that you tag latest release with go1 tag.

Have you looked at Module Queries yet?
https://golang.org/cmd/go/#hdr-Module_queries

c4s4 commented

This is not the point here. I read in documentation:

Building:

    go get github.com/mattn/anko
    go install github.com/mattn/anko

If users follow documentation, they get random development version. Is that what users want? I guess not. I think they want latest stable release.

Not sure which way you are using the word stable. In terms of bugs or usablity, the master branch should be as stable as any release. Even releases can have bugs in them. New releases are not done because they are more stable in terms of bugs.

If you mean stable as in api changes, the api can change between one release and another. Or from a release and master branch. New releases are done because of api changes.

So I am still not clear what problem you are wanting solved.