ead0a56930
mapfs.New documentation says: > Map keys should be forward slash-separated pathnames > and not contain a leading slash. It is invalid input if a provided path contains a leading slash, and it causes the returned filesystem to have undefined behavior. Package mapfs is often used in tests, so this can lead to a serious problem elsewhere. Help detect invalid API usage sooner by validating input, and panicking when it contains leading slashes. Programs that use mapfs API correctly will be unaffected, and it will be faster for incorrect programs—if any exist today or will be created in the future—to detect and correct such problems. Fixes golang/go#34591. Change-Id: I77e5f0f4628edf83480604135f58bfb62e521d80 Reviewed-on: https://go-review.googlesource.com/c/tools/+/197859 Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com> |
||
---|---|---|
.. | ||
analysis | ||
golangorgenv | ||
redirect | ||
static | ||
util | ||
vfs | ||
corpus.go | ||
dirtrees_test.go | ||
dirtrees.go | ||
format.go | ||
godoc17_test.go | ||
godoc_test.go | ||
godoc.go | ||
index_test.go | ||
index.go | ||
linkify.go | ||
meta.go | ||
page.go | ||
parser.go | ||
pres.go | ||
README.md | ||
search.go | ||
server_test.go | ||
server.go | ||
snippet.go | ||
spec_test.go | ||
spec.go | ||
spot.go | ||
tab.go | ||
template.go | ||
versions_test.go | ||
versions.go |
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:
-
Make changes to e.g.
static/style.css
. -
Run
go generate golang.org/x/tools/godoc/static
sostatic/static.go
picks up the change. -
Run
go install golang.org/x/tools/cmd/godoc
so the compiledgodoc
binary picks up the change. -
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.