Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/go: unexpected output with go doc std #53446

ronaldpetty opened this issue Jun 18, 2022 · 4 comments

cmd/go: unexpected output with go doc std #53446

ronaldpetty opened this issue Jun 18, 2022 · 4 comments
GoCommand help wanted NeedsFix


Copy link

@ronaldpetty ronaldpetty commented Jun 18, 2022

go version go1.19beta1 linux/amd64

$ go version
go version go1.19beta1 linux/amd64

Does this issue reproduce with the latest release?


What did you do?

Originally, I was attempting list all standard packages via go list std. I tried to find documentation go help list that confirms the use of "std" as some kind of proxy for listing the standard library. That led me to go doc std.

What did you expect to see?

I expected to see nothing (as its not a package) , or some kind of magic placeholder, or some kind of invalid package error.

What did you see instead?

What I think I see is the first standard library package in alpha order, archive/tar.

~$ go doc std
package tar // import "archive/tar"

Package tar implements access to tar archives.

Tape archives (tar) are a file format for storing a sequence of files that
can be read and written in a streaming manner. This package aims to cover most
variations of the format, including those produced by GNU and BSD tar tools.

const TypeReg = '0' ...
var ErrHeader = errors.New("archive/tar: invalid tar header") ...
type Format int
    const FormatUnknown Format ...
type Header struct{ ... }
    func FileInfoHeader(fi fs.FileInfo, link string) (*Header, error)
type Reader struct{ ... }
    func NewReader(r io.Reader) *Reader
type Writer struct{ ... }
    func NewWriter(w io.Writer) *Writer

Maybe std is meant to be magic, but if its not, it seems that it would documented in go help list and clearer usage with go doc std. I could also just be wrong on its usage (found via some random posts).

@ianlancetaylor ianlancetaylor changed the title Unexpected output with go doc std cmd/go: unexpected output with go doc std Jun 19, 2022
Copy link

@ianlancetaylor ianlancetaylor commented Jun 19, 2022

std is indeed special, and is documented in go help packages.

The fact that go doc std prints the docs for archive/tar (the first package in the standard library) certainly seems like a bug. Thanks.

CC @bcmills @matloob

@ianlancetaylor ianlancetaylor added NeedsFix GoCommand labels Jun 19, 2022
@ianlancetaylor ianlancetaylor added this to the Backlog milestone Jun 19, 2022

This comment was marked as spam.


This comment was marked as spam.

Copy link

@gopherbot gopherbot commented Jun 24, 2022

Change mentions this issue: cmd/doc: handle special case for std package

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
GoCommand help wanted NeedsFix
None yet

No branches or pull requests

4 participants