1
0
mirror of https://github.com/golang/go synced 2024-11-19 08:14:40 -07:00
go/godoc
Dmitri Shuralyov aa03309574 godoc/redirect: display Gerrit/Rietveld CL disambiguation page when needed
For CL numbers that are determined to be Rietveld CLs, instead of
immediately redirecting, check whether a Gerrit CL with the same
number also exists. Do so by querying the Gerrit API and caching
the existing CLs. If both exist, display a very simple disambiguation
HTML page.

Cache Gerrit CLs that exist, to avoid querying the remote API server
more than once per CL. We can't cache Gerrit CLs that don't exist,
since they might get created in the future.

Fixes golang/go#28836

Change-Id: I08c32dc82a0136788337c5c32028e87428e8d81e
Reviewed-on: https://go-review.googlesource.com/c/157197
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2019-01-10 01:58:56 +00:00
..
analysis all: fix typos in comments 2018-08-10 18:15:57 +00:00
dl godoc/dl: serve "go get" meta for golang.org/dl/gotip 2018-12-12 18:30:22 +00:00
env godoc: migrate to App Engine flexible 2018-10-02 04:34:10 +00:00
proxy godoc/proxy: remove use of httputil.ReverseProxy for /share 2018-12-12 17:29:21 +00:00
redirect godoc/redirect: display Gerrit/Rietveld CL disambiguation page when needed 2019-01-10 01:58:56 +00:00
short godoc: replace x/net/context with context 2018-10-23 01:05:39 +00:00
static godoc/static: update copyright year in static.go 2019-01-02 19:58:57 +00:00
util tools: add import comments. 2014-12-09 22:42:16 +00:00
vfs godoc/vfs/zipfs: join paths to get correct RootType 2018-09-28 16:24:37 +00:00
corpus.go godoc: show version information for stdlib 2018-07-17 18:09:30 +00:00
dirtrees_test.go godoc: add benchmark for directory scan 2018-04-15 15:36:21 +00:00
dirtrees.go godoc/vfs: improve implementation of RootType 2018-04-11 20:41:25 +00:00
format.go go.tools/godoc: Fix jump-to-line in source view. 2013-08-01 11:52:25 +10:00
godoc17_test.go x/tools/cmd/godoc: fix broken links in composite literals 2017-02-17 22:21:49 +00:00
godoc_test.go godoc: skip build tag annotations when displaying examples 2018-07-31 18:38:43 +00:00
godoc.go godoc: generate TOC from server-side for search page 2018-10-19 20:12:13 +00:00
index_test.go x/tools/godoc: gofmt -s -w 2017-02-15 21:42:32 +00:00
index.go all: fix typos in comments 2018-08-10 18:15:57 +00:00
linkify.go godoc: use "IsPredeclared" of go/doc 2017-11-15 18:22:28 +00:00
meta.go go.tools: use golang.org/x/... import paths 2014-11-10 08:50:40 +11:00
page.go godoc: inject treeview content only when needed 2018-10-11 02:39:00 +00:00
parser.go go.tools: use golang.org/x/... import paths 2014-11-10 08:50:40 +11:00
pres.go godoc, cmd/godoc: remove CLI support 2018-10-11 02:31:40 +00:00
README.md godoc: add GoogleCN property to pages 2017-08-02 21:09:52 +00:00
search.go godoc: generate TOC from server-side for search page 2018-10-19 20:12:13 +00:00
server_test.go godoc: fix counting of package files in GetPageInfo 2018-04-16 18:17:07 +00:00
server.go cmd/godoc: cleanup documentation for CLI mode 2018-10-18 18:24:39 +00:00
snippet.go godoc: add version info for struct fields 2018-07-17 23:22:00 +00:00
spec_test.go godoc: accept scanner.RawString too during EBNF parsing 2018-06-25 04:25:21 +00:00
spec.go godoc: accept scanner.RawString too during EBNF parsing 2018-06-25 04:25:21 +00:00
spot.go godoc: add search results that point to documentation instead of source. 2013-11-21 11:55:42 -05:00
tab.go godoc: add missing copyright 2015-04-27 04:29:37 +00:00
template.go godoc: fix test failure 2018-06-13 15:25:43 +00:00
versions_test.go godoc: fix tests on Go 1.9 2018-07-25 19:11:30 +00:00
versions.go godoc: correctly parse packages with digits in the package name 2018-07-22 15:00:05 +00:00

godoc

This directory contains most of the code for running a godoc server. The executable lives at golang.org/x/tools/cmd/godoc.

Development mode

In production, CSS/JS/template assets need to be compiled into the godoc binary. It can be tedious to recompile assets every time, but you can pass a flag to load CSS/JS/templates from disk every time a page loads:

godoc -templates=$GOPATH/src/golang.org/x/tools/godoc/static -http=:6060

Recompiling static assets

The files that live at static/style.css, static/jquery.js and so on are not present in the final binary. They are placed into static/static.go by running go generate. So to compile a change and test it in your browser:

  1. Make changes to e.g. static/style.css.

  2. Run go generate golang.org/x/tools/godoc/static so static/static.go picks up the change.

  3. Run go install golang.org/x/tools/cmd/godoc so the compiled godoc binary picks up the change.

  4. Run godoc -http=:6060 and view your changes in the browser. You may need to disable your browser's cache to avoid reloading a stale file.