I have been working with a group building a project for GAE this summer (GSoC), and we are at the end of the term and tidying up documentation. I asked the students to make sure that their code is neatly packaged, and that the package documentation is linked to from the design document. One of the students pointed out that because we are using
build tags to specify which files have an appengine dependency (necessary for local unit testing to work on the non-GAE portions of a package and to make the project go getable) those files are not included when godoc is used.
In the short term we will just link to the source, but this is not a problem that is specific to GAE. Any package file that uses a build tag seems to be excluded from godoc processing. I found some talk about the mess that could result from having too much markup in the documentation, but has there been discussion of supporting the -tags argument for godoc, or maybe supplying a // +build godoc tag for indicating that we do want this file to be included?
It looks like if I use the build tag:
// +build appengine linux
That it will include the documentation for appengine, but it will also break the ability to cleanly go get the code which makes local unit testing a bit of a mess. This (among other issues) goes back to how appengine not an external library, and it does not play well with the normal standard library.