Giter Site home page Giter Site logo

Comments (2)

mholt avatar mholt commented on May 11, 2024

It probably depends what you mean by "building from source is supported". If you mean building tip (latest commit on master), then it probably depends what kind of environment you're running it in and the risks you're willing to take. While tip may have more immediate bug fixes, it might not be stable at that point. If you mean building from any untagged commit of the source, then that's probably not a good idea - both old and not stable. If you mean building from any older, tagged commit (i.e. anything but the latest release or checkpoint), that also doesn't seem like a great idea because usually the latest tag will be better.

But all of this is fine if you're just testing it or using it in dev environments. For production, maybe stick the published, pre-built releases?

Is being able to go get a Go repo really that unique for Go projects? I think both Sebastian and I kind of assume that Go programmers know how to do this (after all, you need Go installed in order to build the source).

But whatever our philosophy, you're right, it probably wouldn't hurt to have that one line in the README... easy to copy+paste. 😄

from lego.

dmitshur avatar dmitshur commented on May 11, 2024

But all of this is fine if you're just testing it or using it in dev environments. For production, maybe stick the published, pre-built releases?

I see. I have no problem doing that, but I didn't know this was the case because the README didn't communicate it to me. I thought it was between this, or you just forgot to include the go get -u instructions. This answer answers that, thanks.

Is being able to go get a Go repo really that unique for Go projects? I think both Sebastian and I kind of assume that Go programmers know how to do this (after all, you need Go installed in order to build the source).

It's easy if you know 2 things:

  • The canonical import path matches the URL you're looking at; there's no vanity import path being used.
    • For example, see https://github.com/sourcegraph/go-vcs#installing. Its import path is not something you can easily figure out, unless you look into .go files and find // import "import/path" comment; but which .go file to look in? And it might not even have an import path comment.
  • The project supports go get -u. Some projects do not. For example, some projects rely on Godeps, so you need to go get -d, then godep go build. Some projects use gb. Some projects use Makefile. If I see a project for the first time, I can't be 100% go get -u is expected to work unless I see it in the README.

So, having such an installation section answers those 2 things.

But whatever our philosophy, you're right, it probably wouldn't hurt to have that one line in the README... easy to copy+paste. 😄

Yep, being able to copy + paste is another, really minor benefit. But it's primarily to communicate that go get -u is supported and the canonical import path.

It sounds like you want a "building from source" section that explains that for normal use, binary releases should be used, and building from source is not supported. Building from source is only supported for development uses.

from lego.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.