1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:04:44 -07:00
Commit Graph

3 Commits

Author SHA1 Message Date
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
Chris Broadfoot
c66da98c4f imports: don't use fastpath on appengine (syscall not available)
Change-Id: I02fbdf1a08894b35a19a3638357c0d42e64d42cc
Reviewed-on: https://go-review.googlesource.com/27078
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2016-08-15 22:01:42 +00:00
Brad Fitzpatrick
edf8e6fef8 cmd/goimports, imports: optimize directory scanning and other things
This brings goimports from 160ms to 100ms on my laptop, and under 50ms
on my Linux machine.

Using cmd/trace, I noticed that filepath.Walk is inherently slow.
See https://golang.org/issue/16399 for details.

Instead, this CL introduces a new (private) filepath.Walk
implementation, optimized for speed and avoiding unnecessary work.

In addition to avoid an Lstat per file, it also reads directories
concurrently. The old goimports code did that too, but now that logic
is removed from goimports and the code is simplified.

This also adds some profiling command line flags to goimports that I
found useful.

Updates golang/go#16367 (goimports is slow)
Updates golang/go#16399 (filepath.Walk is slow)

Change-Id: I708d570cbaad3fa9ad75a12054f5a932ee159b84
Reviewed-on: https://go-review.googlesource.com/25001
Reviewed-by: Andrew Gerrand <adg@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2016-07-19 03:21:45 +00:00