1
0
mirror of https://github.com/golang/go synced 2024-11-05 15:46:11 -07:00
Commit Graph

2297 Commits

Author SHA1 Message Date
Andrew Bonventre
08da88d271 godoc/proxy: remove unused cacheKey function
Change-Id: Ic7392e973de4a8c9232e9c55ed76c4ca799d68b4
Reviewed-on: https://go-review.googlesource.com/86315
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-05 02:11:35 +00:00
Andrew Bonventre
951512dfed godoc: proxy /compile requests to play.golang.org
Now that play.golang.org and sandbox[-flex].golang.org have been
merged, proxy requests to the former.

Change-Id: I7d18d0494fd54c2357dc53952fa458ceb1380aca
Reviewed-on: https://go-review.googlesource.com/86253
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-04 23:58:58 +00:00
Steve Gilbert
96b5a5404f imports: support files with longer lines
This change set fixes the issue by specifying a max buffer size of ~1 megabyte for Scanner.
Previously the max was not set resulting in the default max which is ~64k.  This increased max should not increase
memory use for smaller, normal files because it is a max and the code expands the buffer as needed for large tokens.

The change set includes an additional change to return an error from the Scanner which was ignored previously.

Fixes golang/go#18201

Change-Id: I11be39af74d5eb3b353ad81ba1cb5404207aa65d
Reviewed-on: https://go-review.googlesource.com/83800
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-03 17:47:52 +00:00
Brad Fitzpatrick
ef037a11d2 go/ssa/interp: skip tests on darwin until crashes are fixed
Updates golang/go#23166

Change-Id: Ie9db70d6f2f8d90817ec3de35e6ca51ec476f949
Reviewed-on: https://go-review.googlesource.com/85995
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-01-03 17:43:40 +00:00
Michael Hudson-Doyle
894cde2672 go/ssa/interp: add intrinsic for math.hasVectorFaciliy to fix tests on s390x
Change-Id: I482924585d2d74a25bf88169900a8788b5333738
Reviewed-on: https://go-review.googlesource.com/85235
Reviewed-by: Michael Munday <mike.munday@ibm.com>
Run-TryBot: Michael Munday <mike.munday@ibm.com>
2018-01-02 20:34:48 +00:00
Kashav Madan
f271d7a0f8 go/pointer: fix typo ("distiction" -> "distinction")
Change-Id: I88334b30b08e110b837c255220385c9c4cd4a823
Reviewed-on: https://go-review.googlesource.com/85576
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
2017-12-28 08:16:41 +00:00
Johan Brandhorst
b451b9aaee present: update link to sam documentation
The link to the sam documentation explaining the use
of the address syntax used when loading code files
was dead. This updates the location of the
documentation to the new plan9 site.

Fixes golang/go#23247

Change-Id: If27702a17700ac859650e1e3c070cb43345f32b0
Reviewed-on: https://go-review.googlesource.com/85420
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-12-26 19:51:43 +00:00
Daniel Martí
ae8cc59455 cmd/stringer: add flag to use line comment as str
This can be very helpful if you lay out each value's string
representation like this:

	and    // &
	andAnd // &&
	or     // |
	orOr   // ||

Without the use of comments, it's impossible to use stringer with these
names as the characters & and | cannot form valid identifiers in a Go
program.

Fixes #20483.

Change-Id: I4d36c74059dd48ae3a5e09b70a429a75853ef179
Reviewed-on: https://go-review.googlesource.com/44076
Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
Reviewed-by: Rob Pike <r@golang.org>
2017-12-19 23:05:15 +00:00
Andrew Bonventre
64890f4e2b godoc: fix missing search icon on /dl and correct borders
Some default browser stylesheets set a border radius on <button>
elements that was not being overridden in style.css. The button
should not have any border radii on the left as it should look
like an extension of the search field.

Change-Id: I458bd2e3a903a4c1dd246ff0304e7d3cf29c0988
Reviewed-on: https://go-review.googlesource.com/83296
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-12-11 20:09:31 +00:00
haya14busa
5d8e38b955 cover: handle multiple samples from the same location
This change is ported from src/cmd/cover/profile.go[1].

Now that go test supported -coverprofile with multiple packages (#6909),
x/tools/cover/profile should also handle multiple samples from the same
location.

[1]: f39050c8eb

Fixes golang/go#23076

Change-Id: I1b1d664bf56f7e22c6cb2726df44fb577408c6f7
Reviewed-on: https://go-review.googlesource.com/83078
Run-TryBot: Rob Pike <r@golang.org>
Reviewed-by: Rob Pike <r@golang.org>
2017-12-10 23:11:56 +00:00
Brad Fitzpatrick
9b32ad6a00 godoc/dl: bump minimum Windows version to XP SP 3
That's what our main XP developer has, and what our builder is.

We can't vouch for anything older. Also, IIRC, there were some
TLS/cert changes in SP3 we depended on, but I can't find the details
in quick searches.

Change-Id: I876494b2c8d201e2d1a8a74ffc6150697208af6f
Reviewed-on: https://go-review.googlesource.com/83096
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
2017-12-10 00:35:10 +00:00
Andrew Bonventre
a5ff95640e godoc: add andybons to binary upload whitelist
Change-Id: I87c43864b07a05d257ef94267073f0e13aff353e
Reviewed-on: https://go-review.googlesource.com/82715
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-12-07 22:40:41 +00:00
HENRY-PC\Henry
71657689f0 stringer: don't emit unnecessary variables
Fixes golang/go#23014

Change-Id: I159f83bae0ed632b0b3c00f8ab02f5701acbc4cc
Reviewed-on: https://go-review.googlesource.com/82215
Run-TryBot: Rob Pike <r@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rob Pike <r@golang.org>
2017-12-07 08:59:40 +00:00
Robert Griesemer
04447353bc go/ssa: complete interface types for correct string form (fix build)
Fixes golang/go#22933.

Change-Id: I0cf0aab8b77114ee7eb1e181aee2c5b75087aa83
Reviewed-on: https://go-review.googlesource.com/80897
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-11-30 18:55:14 +00:00
Brad Fitzpatrick
36c7af3342 all: fix plan9 build
getgo doesn't work on plan9. Skip it entirely.

And skip the massive slow godoc start-up test. Not worth it.

Change-Id: If062b7c4c8c7c5084e607ed22085657054c10ba9
Reviewed-on: https://go-review.googlesource.com/80737
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-29 20:22:11 +00:00
Alan Donovan
2c687adedb go/ssa/interp: drop interpretation of "testing" package
The "testing" package depends on low-level details that change too often.

Change-Id: I59101e16588296cb40c851d4a34ddf199f4d176c
Reviewed-on: https://go-review.googlesource.com/80376
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-11-28 21:57:06 +00:00
Alan Donovan
0e42b0fe40 go/ssa/interp: add fake runtime.callerName to fix broken tests
We are inching towards the point at which I blow away this entire
package, or at least all tests that interpret the standard "testing"
package.

Change-Id: I06d99aac6d7baab14ee6c6a61afe0af34b814767
Reviewed-on: https://go-review.googlesource.com/80356
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-28 20:52:38 +00:00
Robert Griesemer
6d70fb2e85 go/ast/astutil: add Apply, for rewriting Go ASTs
This change implements an AST walker, Apply, with the capability
to perform various actions (including rewrites) during the AST
walk, in pre- and post-iteration order.

Ideally we would like to have this functionality in the std lib
(go/ast), but as this change contains significant new API, it
is better to first gain some experience with it in x/tools.

Credits: This is joint work of Josh Bleecher Snyder, Roger
Peppe, and myself (author of this CL). The code is based on
proposal golang/go#17108 which I had started, together with an
initial implementation. It was then reworked significantly by
Josh in golang.org/cl/55790, further refined by suggestions
from Roger (allocation reduction), and finally cleaned up a bit
by me (AST simplifications).

Fixes golang/go#17108.

Change-Id: I56d56b7f2bc5be2acfeb927f76aea7f264bb7b94
Reviewed-on: https://go-review.googlesource.com/77811
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-11-16 01:30:56 +00:00
Masahiro Furudate
4de4a8d206 godoc: use "IsPredeclared" of go/doc
In the go/doc, the same map as "predeclared" is defined.
Instead of the "predeclared" map use the "IsPredeclared" function
which is an accessor for the go/doc map.

Deleted unnecessary "predeclared".

Fixes golang/go#20357

Change-Id: I4ea360efddd28a9a1236d5adfdafb1a0970a4215
Reviewed-on: https://go-review.googlesource.com/58890
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-15 18:22:28 +00:00
Daniel Martí
bd4635fd25 cmd/stringer: use strconv instead of fmt
In the generated code, we want to pull in as few dependencies as
possible. fmt is heavier than strconv, and the latter can be used with a
bit of extra code for the same results.

More importantly, this will allow stringer to be used in some std
packages that cannot import fmt, such as regexp/syntax. While strconv
lies in L2 in deps_test.go, fmt lies in L4.

This means that many other packages will also be able to use stringer
where it could be useful, such as path/filepath, os/exec, or io/ioutil.

Since some of these types may be 64-bit integers, use FormatInt instead
of Itoa to avoid overflows with int on 32-bit.

Also double-checked that the generated code is still formatted properly.

Change-Id: Iffb3bd2df5c94407705689719240aca0c7474a89
Reviewed-on: https://go-review.googlesource.com/77473
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2017-11-14 15:22:39 +00:00
Michael Fraenkel
9c57063f67 imports: prioritize closer packages
Prefer imports that are closer to the current package.

Fixes golang/go#17557

Change-Id: Iec55a294d396feac6234be307e08608b8559f65c
Reviewed-on: https://go-review.googlesource.com/37070
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-11-13 21:23:40 +00:00
Andrew Bonventre
9c477bae19 godoc: use dl.google.com instead of redirector.gvt1.com
Fixes golang/go#22648

Change-Id: I59185cc1ed61235a0fcfadc060c4735372586358
Reviewed-on: https://go-review.googlesource.com/76971
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-10 17:53:28 +00:00
Daniel Martí
bce7a99f8a cmd/stringer: add -trimprefix option
To trim a string prefix from the names when generating their final
strings. Add a simple test too.

There is no automatic detection of prefixes for now. That can be added
later, building on top of this first simple implementation.

Fixes #16539.

Change-Id: Ica37273ac74bb0a6cbd43e61823786963d86a492
Reviewed-on: https://go-review.googlesource.com/76650
Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rob Pike <r@golang.org>
2017-11-09 22:55:28 +00:00
Ian Lance Taylor
05e91d0638 cmd/stringer: fix typo in test log message ("no" -> "not")
Fixes golang/go#22623

Change-Id: I62ab82a04f34f379f715f0902a69caa9c74c50d2
Reviewed-on: https://go-review.googlesource.com/76397
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Kevin Burke <kev@inburke.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-11-07 22:55:16 +00:00
David R. Jenni
c84da9fa1c refactor/rename: fix test failures in TestRewrites.
CL https://golang.org/cl/66130 changes go/printer to format one-method
interfaces to be printed on a single line. This change broke the
equality check in TestRewrites. Fix it by reformatting the expected
file buffers so that the tests pass with tip and previous Go versions.

Change-Id: I660efd81b362554db0515760dad7c8b62e4db1b3
Reviewed-on: https://go-review.googlesource.com/75812
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-11-06 20:20:52 +00:00
David R. Jenni
9adcb2aa41 cmd/getgo: fix vet failure caused by missing argument to Errorf call.
Change-Id: I2812e2c655a0e463203f5c2ede08182c40556953
Reviewed-on: https://go-review.googlesource.com/75975
Reviewed-by: Gabriel Aszalos <gabriel.aszalos@gmail.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Gabriel Aszalos <gabriel.aszalos@gmail.com>
2017-11-06 15:28:13 +00:00
David R. Jenni
9e72de2cfb cmd/gorename: fix test failure formatting.
Change-Id: Idbfb356225f4650446bffa80a43cec4679bcd507
Reviewed-on: https://go-review.googlesource.com/75976
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-11-06 14:18:16 +00:00
griesemer
032dfd515a cmd/toolstash: don't try comparing "asm -V=full" output.
Added link as well, since they are all symmetric.

Follow-up on https://go-review.googlesource.com/c/tools/+/75670.

For golang/go#22552.

Change-Id: I12d951b800cd5fc7abc6d09e6a8a986e3f9f6936
Reviewed-on: https://go-review.googlesource.com/75672
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
2017-11-02 22:54:56 +00:00
Matthew Dempsky
d620ba0fbb cmd/toolstash: don't try comparing "compile -V=full" output
Fixes golang/go#22552.

Change-Id: I2a31cf4fe85f33068502102031ed62f06abb6d6e
Reviewed-on: https://go-review.googlesource.com/75670
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Robert Griesemer <gri@golang.org>
2017-11-02 22:39:47 +00:00
Andrew Bonventre
9b61fcc4c5 Revert "godoc: better distinguish links and link state"
This reverts commit 9bd2f44268.

Reason for revert: https://github.com/golang/go/issues/22171#issuecomment-339125376

Update golang/go#22171

Change-Id: I41da526912b3484721782e0dad02d97ab2845a12
Reviewed-on: https://go-review.googlesource.com/73151
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-24 20:47:20 +00:00
Andrew Bonventre
5ec91747d9 Revert "godoc: accessible permalinks"
This reverts commit f57adc1821.

Reason for revert: See https://github.com/golang/go/issues/22171#issuecomment-339125376 for reasoning.

Change-Id: Ifd81ad716cf2acdf7a1d73602ac781186aca5596
Reviewed-on: https://go-review.googlesource.com/73150
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-24 20:46:10 +00:00
jimmyfrasche
9bd2f44268 godoc: better distinguish links and link state
There were two issues with links in godoc:

1) They were only distinguished from ordinary text only by color,
affecting those with color-vision deficiencies.

2) The same blue used for links is used by non-links,
affecting everybody.

This change adds a an underline to all links.

Usually, it is safe to skip underlining in locations where it clear
that the only contents are navigational links, such as #pkg-index.
However, (2) prevented this.

To work around this I used some less well supported CSS techniques:
http://caniuse.com/#feat=text-decoration

Less capable browsers, which are unlikely to be used by developers, may
have a less than optimal experience, unfortunately. In more capable
browsers, including those without full support, the experience is quite
pleasant and the additional underlying does not interfere with the godoc
aesthetic.

For golang/go#22171

Change-Id: I5a0d817793e8aa31912ba065b4e5a63d4a3f138c
Reviewed-on: https://go-review.googlesource.com/69150
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-13 18:14:03 +00:00
jimmyfrasche
5d186094d5 godoc: add label and button to search bar
To increase accessibility of the search bar,
an aria-label for screen readers and a submit
button was added.

The search field was given the semantically correct
input type and marked required field as hints to UAs
that can use that to provide context to the user.

The placeholder text was restyled for improved contrast.
The javascript for handling placeholders was removed
as it is no longer necessary.

For golang/go#22171

Change-Id: I8db6428bb727a09e7f175e77100b4bcf9b6a5f3e
Reviewed-on: https://go-review.googlesource.com/69190
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-13 18:09:24 +00:00
jimmyfrasche
f57adc1821 godoc: accessible permalinks
This CL makes permalinks accessible to keyboard-users and screen
readers.

Adding an aria-label to permalinks overrides the default content
of "pilcrow".

As the permalinks only showed on hover they were inaccessible
to users who could only use a keyboard and are now always shown.

For golang/go#22171

Change-Id: I6ce3828dfedfd7edc29dd16f3eb94a0abcabfc7c
Reviewed-on: https://go-review.googlesource.com/69210
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-12 15:25:11 +00:00
Cherry Zhang
e4b401d06e cmd/toolstash: pass -c=1 in the second compilation
When toolstash -cmp found diff, it does a second compilation
with extra flags -v -m=2, which are imcompatible with the
concurrent backend. Pass -c=1 in the second compilation.

Change-Id: I3c77069936da1829b68375a4a6c7f9bbe364247c
Reviewed-on: https://go-review.googlesource.com/60390
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
2017-10-10 17:47:39 +00:00
Ben Haines
a567bbf739 godoc: avoid skipping heading level in package docs
The heading of the #pkg-index section of package documentation pages
uses an h2 heading but its 'Examples' and 'Package files' subsections
use h4 headings, skipping the h3 level.

This change switches the h4s to h3s and adds styling to preserve the
current font-size with the new heading level.

For golang/go#22171

Change-Id: Ifd2cacab22c1e82fd6f061b9322523fa5859a80f
Reviewed-on: https://go-review.googlesource.com/69171
Reviewed-by: jimmy frasche <soapboxcicero@gmail.com>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-10-09 17:51:41 +00:00
jimmyfrasche
0b88a3aa07 godoc: add alt attr to gopher on main package index
The gopher with a miner hat on /pkg had no alt attribute
so screen readers would announce the image by its filename.
As the image is purely decorative, adding the empty string
as alternative text prevents the image from being announced.

For golang/go#22171

Change-Id: Ib214f296d3d9f9084c44d4e33d1cbe432f2183ed
Reviewed-on: https://go-review.googlesource.com/69130
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2017-10-07 23:17:17 +00:00
Dmitri Shuralyov
ebae2dcdba go/vcs: reject update of VCS inside VCS
Manually apply same change as CL 68110 did for cmd/go/internal/get,
but for golang.org/x/tools/go/vcs, to help keep them in sync.

Updates golang/go#22125.
Helps golang/go#11490.

Change-Id: I255f7a494d9572389fc8dc8ce96891b6fcc214a0
Reviewed-on: https://go-review.googlesource.com/68352
Reviewed-by: Russ Cox <rsc@golang.org>
2017-10-05 08:21:07 +00:00
Andrew Bonventre
bbddea47c3 godoc: fix error with gcsBaseURL not being defined
Change-Id: I508209c3bad67b791ee8c162bd4df448f9b84bef
Reviewed-on: https://go-review.googlesource.com/68270
Reviewed-by: Chris Broadfoot <cbro@golang.org>
2017-10-04 20:11:18 +00:00
Kevin Burke
68e087e2a5 README: switch to Markdown and add links
Move the README to README.md so Gerrit can render it; currently
Gerrit only renders files named exactly "README.md" (for example at
https://go.googlesource.com/go).

Add more links to the README explaining how to file issues,
how to submit code changes, where to download the code to and
how to get it. Hopefully this should help people who go to
https://go.googlesource.com/tools or https://github.com/golang/tools
figure out how to get started with development.

Change-Id: I778202d9759df5cf79e86b8524046e108aa3db3d
Reviewed-on: https://go-review.googlesource.com/49852
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-09-27 05:40:07 +00:00
Johan Brandhorst
e531a2a1c1 present: remove extraneous line
There was an extra line in the documentation for the
present package that appears to be a copy paste from the
previous paragraph. This removes that line.

Fixes #21891

Change-Id: Ic50840b2210e3d93ac452a659e29b6feaa33c7b7
Reviewed-on: https://go-review.googlesource.com/63811
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2017-09-15 04:02:03 +00:00
Andrew Bonventre
aebcdfcd02 godoc: use Google’s CDN edge cache to serve downloads
This increases reliability and performance of downloads
across locales.

Change-Id: I619f986496dea57e1ee5e8150e31b2a6f8d8dde7
Reviewed-on: https://go-review.googlesource.com/60090
Reviewed-by: Chris Broadfoot <cbro@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-09-14 20:43:14 +00:00
Andrew Bonventre
3b1faeda9a imports: fix +build tags to exclude syscall deps on appengine
The following tag

// +build linux,!appengine darwin

Translated to (linux AND !appengine) OR (darwin)

Causing issues on darwin when attempting to run dev_appserver.

Change this to always exclude these files from appengine builds.

Change-Id: Ifd63a884747001797d0b0e828f0c9c391bc7c73c
Reviewed-on: https://go-review.googlesource.com/60911
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Chris Broadfoot <cbro@golang.org>
2017-09-01 21:04:08 +00:00
Martin Möhrmann
421c33e678 godoc: update out of sync static.go
Replace references to Share by GoogleCN.

Fixes golang/go#21725

Change-Id: I6db4aa282cca7c104cbe34b40d152aa53ce07280
Reviewed-on: https://go-review.googlesource.com/60851
Run-TryBot: Martin Möhrmann <moehrmann@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
2017-09-01 14:00:58 +00:00
Carl Johnson
e00c182679 present: Scale down slides on smaller displays
On mobile and tablets, it was very difficult to view slides because the
slides were not designed to be smaller than 1250x750.

This adds a function to the JS that uses CSS scaling to make the slides
fit on smaller displays.

Fixes golang/go#21643

Change-Id: I68e9e2c1274aaf6396bf01d19ca023cddf76e2ec
Reviewed-on: https://go-review.googlesource.com/60270
Reviewed-by: Andrew Bonventre <andybons@golang.org>
Reviewed-by: Francesc Campoy Flores <campoy@golang.org>
Reviewed-by: Rob Pike <r@golang.org>
Run-TryBot: Francesc Campoy Flores <campoy@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-08-31 21:56:44 +00:00
Andrew Bonventre
2d19ab38fa godoc: hide link to blog in header in CN
Change-Id: I952ce003edecdd62179a8dfbc3c0e56f78eecfb1
Reviewed-on: https://go-review.googlesource.com/60071
Reviewed-by: Andrew Bonventre <andybons@golang.org>
Run-TryBot: Andrew Bonventre <andybons@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-08-29 20:47:10 +00:00
griesemer
1736caf17f present: fix link in documentation
Change-Id: I53e2e9009eebdc38a6f6f4f639a1bd7e14ccf188
Reviewed-on: https://go-review.googlesource.com/59010
Reviewed-by: Kevin Burke <kev@inburke.com>
Reviewed-by: Rob Pike <r@golang.org>
2017-08-27 12:20:53 +00:00
Radu Berinde
1807494da8 x/tools/container/intsets: add LowerBound
Fixes golang/go#21310.

Change-Id: Id3f23a66b9889a5087c1f83e7d672d14c41a59e3
Reviewed-on: https://go-review.googlesource.com/53432
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-08-21 16:11:21 +00:00
Radu Berinde
43e94ff202 x/tools/container/intsets: use root block
The root block was used as a sentinel. This means we always need to
allocate a second block on the heap, even if the set has a few small
elements.

We now use the root block: it is always the block with the smallest
offset. The logic becomes very messy if there is no sentinel; to avoid
this we still use a sentinel (a special singleton block) and return it
in when appropriate in the first, last, next wrappers.

Also adding some benchmarks and making some optimizations:

name                           old time/op    new time/op    delta
Popcount-4                       2.18ns ± 1%    2.21ns ± 1%    +1.47%
InsertProbeSparse_2_10-4         76.2ns ±23%    37.2ns ± 1%   -51.21%
InsertProbeSparse_10_10-4         240ns ±15%     162ns ± 4%   -32.58%
InsertProbeSparse_10_1000-4       419ns ± 4%     371ns ±19%   -11.43%
InsertProbeSparse_100_100-4      2.30µs ± 1%    1.93µs ± 1%   -16.08%
InsertProbeSparse_100_10000-4    2.12µs ± 3%    2.07µs ± 1%    -2.11%
UnionDifferenceSparse-4           165µs ±16%     170µs ± 9%      ~
UnionDifferenceHashTable-4        310µs ±10%     291µs ±17%      ~
AppendTo-4                       11.0µs ± 0%    11.0µs ± 0%    -0.35%

name                           old alloc/op   new alloc/op   delta
Popcount-4                       0.00B ±NaN%    0.00B ±NaN%      ~
InsertProbeSparse_2_10-4          64.0B ± 0%     0.0B ±NaN%  -100.00%
InsertProbeSparse_10_10-4         64.0B ± 0%     0.0B ±NaN%  -100.00%
InsertProbeSparse_10_1000-4        256B ± 0%      192B ± 0%   -25.00%
InsertProbeSparse_100_100-4       64.0B ± 0%     0.0B ±NaN%  -100.00%
InsertProbeSparse_100_10000-4      256B ± 0%      192B ± 0%   -25.00%
UnionDifferenceSparse-4          59.4kB ± 0%    59.2kB ± 0%    -0.32%
UnionDifferenceHashTable-4        138kB ± 0%     138kB ± 0%      ~
AppendTo-4                       0.00B ±NaN%    0.00B ±NaN%      ~

name                           old allocs/op  new allocs/op  delta
Popcount-4                        0.00 ±NaN%     0.00 ±NaN%      ~
InsertProbeSparse_2_10-4           1.00 ± 0%     0.00 ±NaN%  -100.00%
InsertProbeSparse_10_10-4          1.00 ± 0%     0.00 ±NaN%  -100.00%
InsertProbeSparse_10_1000-4        4.00 ± 0%      3.00 ± 0%   -25.00%
InsertProbeSparse_100_100-4        1.00 ± 0%     0.00 ±NaN%  -100.00%
InsertProbeSparse_100_10000-4      4.00 ± 0%      3.00 ± 0%   -25.00%
UnionDifferenceSparse-4             928 ± 0%       925 ± 0%    -0.32%
UnionDifferenceHashTable-4          271 ± 0%       271 ± 0%      ~
AppendTo-4                        0.00 ±NaN%     0.00 ±NaN%      ~

Fixes golang/go#21311.

Change-Id: Ie472a2afa269c21cb33b22ffdac8dd2594b816ac
Reviewed-on: https://go-review.googlesource.com/53431
Reviewed-by: Alan Donovan <adonovan@google.com>
2017-08-21 15:22:10 +00:00
haya14busa
84a35ef54d go/ast/astutil: new third-party imports shouldn't go in the std group
Before this change, astutil would only do a prefix match of a new import
with all the existing ones, to try to place it in the correct group. If
none was found, the new import would be placed at the beginning of the
first import group.

This works well for new std imports, but it doesn't work well for new
third-party packages that don't share any prefix with any of the
existing imports.

Example:

	import (
		"time"

		"github.com/golang/snappy"
	)

When adding "golang.org/x/sys/unix" with astutil.AddImport, the import
is inserted as follows:

	import (
		"golang.org/x/sys/unix"
		"time"

		"github.com/golang/snappy"
	)

And goimports reorganizes the imports to separate std and third-party
packages:

	import (
		"time"

		"golang.org/x/sys/unix"

		"github.com/golang/snappy"
	)

We usually don't want to introduce a new import group; in most cases,
the desired behavior is separating std from third-party packages.

With this CL, new imports that don't share prefix with any existing ones
will be placed with the first group of third-party imports, if any
exist. If no third-party import group exists, a new one will be added.
In the case of our example above, this will be the new outcome:

	import (
		"time"

		"github.com/golang/snappy"
		"golang.org/x/sys/unix"
	)

Fixes golang/go#19190.

Change-Id: Id4630015c029bd815234a6c8726cb97f4af16f1c
Reviewed-on: https://go-review.googlesource.com/37552
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
2017-08-15 00:39:00 +00:00