]> Cypherpunks.ru repositories - gostls13.git/commitdiff
all: use golang.org/x/... import paths
authorAndrew Gerrand <adg@golang.org>
Sun, 9 Nov 2014 22:15:57 +0000 (09:15 +1100)
committerAndrew Gerrand <adg@golang.org>
Sun, 9 Nov 2014 22:15:57 +0000 (09:15 +1100)
LGTM=rsc, r
R=r, rsc
CC=golang-codereview, golang-codereviews
https://golang.org/cl/168050043

15 files changed:
doc/articles/go_command.html
doc/cmd.html
doc/code.html
doc/contribute.html
doc/go1compat.html
doc/go_faq.html
doc/install-source.html
lib/codereview/codereview.py
misc/benchcmp
misc/makerelease/makerelease.go
src/compress/lzw/reader.go
src/crypto/crypto.go
src/debug/goobj/read_test.go
src/net/http/cookiejar/jar.go
src/runtime/os_android.c

index 246b8c956d1e43294cf4043d2dabf71420f16441..2978628cd284a67a539fc9f6a8f5d7f3fdcbd9b9 100644 (file)
@@ -78,17 +78,18 @@ well-established conventions.</p>
 source code.  For Bitbucket, GitHub, Google Code, and Launchpad, the
 root directory of the repository is identified by the repository's
 main URL, without the <code>http://</code> prefix.  Subdirectories are named by
-adding to that path.  For example, the supplemental networking
-libraries for Go are obtained by running</p>
+adding to that path.
+For example, the Go example programs are obtained by running</p>
 
 <pre>
-hg clone http://code.google.com/p/go.net
+git clone https://github.com/golang/example
 </pre>
 
 <p>and thus the import path for the root directory of that repository is
-"<code>code.google.com/p/go.net</code>".  The websocket package is stored in a
-subdirectory, so its import path is
-"<code>code.google.com/p/go.net/websocket</code>".</p>
+"<code>github.com/golang/example</code>".
+The <a href="https://godoc.org/github.com/golang/example/stringutil">stringutil</a>
+package is stored in a subdirectory, so its import path is
+"<code>github.com/golang/example/stringutil</code>".</p>
 
 <p>These paths are on the long side, but in exchange we get an
 automatically managed name space for import paths and the ability for
index 132ea275faa0cac95883b28c34a820da7c526c35..5d20d3887ae96cbb841cfb1e50fd0dce77d5ff3c 100644 (file)
@@ -62,7 +62,7 @@ details.
 </tr>
 
 <tr>
-<td><a href="//godoc.org/code.google.com/p/go.tools/cmd/cover/">cover</a></td>
+<td><a href="//godoc.org/golang.org/x/tools/cmd/cover/">cover</a></td>
 <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
 <td>Cover is a program for creating and analyzing the coverage profiles
 generated by <code>"go test -coverprofile"</code>.</td>
@@ -83,13 +83,13 @@ gofmt</a> command with more general options.</td>
 </tr>
 
 <tr>
-<td><a href="//godoc.org/code.google.com/p/go.tools/cmd/godoc/">godoc</a></td>
+<td><a href="//godoc.org/golang.org/x/tools/cmd/godoc/">godoc</a></td>
 <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
 <td>Godoc extracts and generates documentation for Go packages.</td>
 </tr>
 
 <tr>
-<td><a href="//godoc.org/code.google.com/p/go.tools/cmd/vet/">vet</a></td>
+<td><a href="//godoc.org/golang.org/x/tools/cmd/vet/">vet</a></td>
 <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
 <td>Vet examines Go source code and reports suspicious constructs, such as Printf
 calls whose arguments do not align with the format string.</td>
index f019306fa2893b8840201cb7a2ce216e14b460c3..ce9f8636fa1722c707daac4dc906cd03673e7e27 100644 (file)
@@ -60,37 +60,35 @@ To give you an idea of how a workspace looks in practice, here's an example:
 
 <pre>
 bin/
-    streak                         # command executable
-    todo                           # command executable
+    hello                          # command executable
+    outyet                         # command executable
 pkg/
     linux_amd64/
-        code.google.com/p/goauth2/
-            oauth.a                # package object
-        github.com/nf/todo/
-            task.a                 # package object
+        github.com/golang/example/
+            stringutil.a           # package object
 src/
-    code.google.com/p/goauth2/
-        .hg/                       # mercurial repository metadata
-        oauth/
-            oauth.go               # package source
-            oauth_test.go          # test source
-    github.com/nf/
-        streak/
-            .git/                  # git repository metadata
-            oauth.go               # command source
-            streak.go              # command source
-        todo/
-            .git/                  # git repository metadata
-            task/
-                task.go            # package source
-            todo.go                # command source
+    <a href="https://github.com/golang/example/">github.com/golang/example/</a>
+        .git/                      # Git repository metadata
+       hello/
+           hello.go               # command source
+       outyet/
+           main.go                # command source
+           main_test.go           # test source
+       stringutil/
+           reverse.go             # package source
+           reverse_test.go        # test source
 </pre>
 
 <p>
-This workspace contains three repositories (<code>goauth2</code>,
-<code>streak</code>, and <code>todo</code>) comprising two commands
-(<code>streak</code> and <code>todo</code>) and two libraries
-(<code>oauth</code> and <code>task</code>).
+This workspace contains one repository (<code>example</code>)
+comprising two commands (<code>hello</code> and <code>outyet</code>)
+and one library (<code>stringutil</code>).
+</p>
+
+<p>
+A typical workspace would contain many source repositories containing many
+packages and commands. Most Go programmers keep <i>all</i> their Go source code
+and dependencies in a single workspace.
 </p>
 
 <p>
@@ -277,29 +275,29 @@ Let's write a library and use it from the <code>hello</code> program.
 
 <p>
 Again, the first step is to choose a package path (we'll use
-<code>github.com/user/newmath</code>) and create the package directory:
+<code>github.com/user/stringutil</code>) and create the package directory:
 </p>
 
 <pre>
-$ <b>mkdir $GOPATH/src/github.com/user/newmath</b>
+$ <b>mkdir $GOPATH/src/github.com/user/stringutil</b>
 </pre>
 
 <p>
-Next, create a file named <code>sqrt.go</code> in that directory with the
+Next, create a file named <code>reverse.go</code> in that directory with the
 following contents.
 </p>
 
 <pre>
-// Package newmath is a trivial example package.
-package newmath
-
-// Sqrt returns an approximation to the square root of x.
-func Sqrt(x float64) float64 {
-       z := 1.0
-       for i := 0; i &lt; 1000; i++ {
-               z -= (z*z - x) / (2 * z)
+// Package stringutil contains utility functions for working with strings.
+package stringutil
+
+// Reverse returns its argument string reversed rune-wise left to right.
+func Reverse(s string) string {
+       r := []rune(s)
+       for i, j := 0, len(r)-1; i &lt; len(r)/2; i, j = i+1, j-1 {
+               r[i], r[j] = r[j], r[i]
        }
-       return z
+       return string(r)
 }
 </pre>
 
@@ -308,7 +306,7 @@ Now, test that the package compiles with <code>go build</code>:
 </p>
 
 <pre>
-$ <b>go build github.com/user/newmath</b>
+$ <b>go build github.com/user/stringutil</b>
 </pre>
 
 <p>
@@ -326,7 +324,7 @@ directory of the workspace.
 </p>
 
 <p>
-After confirming that the <code>newmath</code> package builds,
+After confirming that the <code>stringutil</code> package builds,
 modify your original <code>hello.go</code> (which is in
 <code>$GOPATH/src/github.com/user/hello</code>) to use it:
 </p>
@@ -337,18 +335,18 @@ package main
 import (
        "fmt"
 
-       <b>"github.com/user/newmath"</b>
+       <b>"github.com/user/stringutil"</b>
 )
 
 func main() {
-       fmt.Printf("Hello, world.  <b>Sqrt(2) = %v\n", newmath.Sqrt(2)</b>)
+       fmt.Printf(stringutil.Reverse("!oG ,olleH"))
 }
 </pre>
 
 <p>
 Whenever the <code>go</code> tool installs a package or binary, it also
-installs whatever dependencies it has. So when you install the <code>hello</code>
-program
+installs whatever dependencies it has.
+So when you install the <code>hello</code> program
 </p>
 
 <pre>
@@ -356,16 +354,16 @@ $ <b>go install github.com/user/hello</b>
 </pre>
 
 <p>
-the <code>newmath</code> package will be installed as well, automatically.
+the <code>stringutil</code> package will be installed as well, automatically.
 </p>
 
 <p>
-Running the new version of the program, you should see some numerical output:
+Running the new version of the program, you should see a new, reversed message:
 </p>
 
 <pre>
 $ <b>hello</b>
-Hello, world.  Sqrt(2) = 1.414213562373095
+Hello, Go!
 </pre>
 
 <p>
@@ -374,22 +372,22 @@ After the steps above, your workspace should look like this:
 
 <pre>
 bin/
-    hello              # command executable
+    hello                 # command executable
 pkg/
-    linux_amd64/       # this will reflect your OS and architecture
+    linux_amd64/          # this will reflect your OS and architecture
         github.com/user/
-            newmath.a  # package object
+            stringutil.a  # package object
 src/
     github.com/user/
         hello/
-            hello.go   # command source
-        newmath/
-            sqrt.go    # package source
+            hello.go      # command source
+        stringutil/
+            reverse.go    # package source
 </pre>
 
 <p>
-Note that <code>go install</code> placed the <code>newmath.a</code> object in a
-directory inside <code>pkg/linux_amd64</code> that mirrors its source
+Note that <code>go install</code> placed the <code>stringutil.a</code> object
+in a directory inside <code>pkg/linux_amd64</code> that mirrors its source
 directory.
 This is so that future invocations of the <code>go</code> tool can find the
 package object and avoid recompiling the package unnecessarily.
@@ -457,20 +455,29 @@ if the function calls a failure function such as <code>t.Error</code> or
 </p>
 
 <p>
-Add a test to the <code>newmath</code> package by creating the file
-<code>$GOPATH/src/github.com/user/newmath/sqrt_test.go</code> containing the
-following Go code.
+Add a test to the <code>stringutil</code> package by creating the file
+<code>$GOPATH/src/github.com/user/stringutil/reverse_test.go</code> containing
+the following Go code.
 </p>
 
 <pre>
-package newmath
+package stringutil
 
 import "testing"
 
-func TestSqrt(t *testing.T) {
-       const in, out = 4, 2
-       if x := Sqrt(in); x != out {
-               t.Errorf("Sqrt(%v) = %v, want %v", in, x, out)
+func TestReverse(t *testing.T) {
+       cases := []struct {
+               in, want string
+       }{
+               {"Hello, world", "dlrow ,olleH"},
+               {"Hello, 世界", "界世 ,olleH"},
+               {"", ""},
+       }
+       for _, c := range cases {
+               got := Reverse(c.in)
+               if got != c.want {
+                       t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want)
+               }
        }
 }
 </pre>
@@ -480,8 +487,8 @@ Then run the test with <code>go test</code>:
 </p>
 
 <pre>
-$ <b>go test github.com/user/newmath</b>
-ok     github.com/user/newmath 0.165s
+$ <b>go test github.com/user/stringutil</b>
+ok     github.com/user/stringutil 0.165s
 </pre>
 
 <p>
@@ -491,7 +498,7 @@ directory, you can omit the package path:
 
 <pre>
 $ <b>go test</b>
-ok     github.com/user/newmath 0.165s
+ok     github.com/user/stringutil 0.165s
 </pre>
 
 <p>
@@ -507,16 +514,16 @@ An import path can describe how to obtain the package source code using a
 revision control system such as Git or Mercurial. The <code>go</code> tool uses
 this property to automatically fetch packages from remote repositories.
 For instance, the examples described in this document are also kept in a
-Mercurial repository hosted at Google Code,
-<code><a href="//code.google.com/p/go.example">code.google.com/p/go.example</a></code>.
+Git repository hosted at GitHub
+<code><a href="https://github.com/golang/example">github.com/golang/example</a></code>.
 If you include the repository URL in the package's import path,
 <code>go get</code> will fetch, build, and install it automatically:
 </p>
 
 <pre>
-$ <b>go get code.google.com/p/go.example/hello</b>
+$ <b>go get github.com/golang/example/hello</b>
 $ <b>$GOPATH/bin/hello</b>
-Hello, world.  Sqrt(2) = 1.414213562373095
+Hello, Go examples!
 </pre>
 
 <p>
@@ -533,37 +540,39 @@ tree should now look like this:
 
 <pre>
 bin/
-    hello                 # command executable
+    hello                           # command executable
 pkg/
     linux_amd64/
-        code.google.com/p/go.example/
-            newmath.a     # package object
+        github.com/golang/example/
+            stringutil.a            # package object
         github.com/user/
-            newmath.a     # package object
+            stringutil.a            # package object
 src/
-    code.google.com/p/go.example/
+    github.com/golang/example/
+       .git/                       # Git repository metadata
         hello/
-            hello.go      # command source
-        newmath/
-            sqrt.go       # package source
-            sqrt_test.go  # test source
+            hello.go                # command source
+        stringutil/
+            reverse.go              # package source
+            reverse_test.go         # test source
     github.com/user/
         hello/
-            hello.go      # command source
-        newmath/
-            sqrt.go       # package source
-            sqrt_test.go  # test source
+            hello.go                # command source
+        stringutil/
+            reverse.go              # package source
+            reverse_test.go         # test source
 </pre>
 
 <p>
-The <code>hello</code> command hosted at Google Code depends on the
-<code>newmath</code> package within the same repository. The imports in
-<code>hello.go</code> file use the same import path convention, so the <code>go
-get</code> command is able to locate and install the dependent package, too.
+The <code>hello</code> command hosted at GitHub depends on the
+<code>stringutil</code> package within the same repository. The imports in
+<code>hello.go</code> file use the same import path convention, so the
+<code>go get</code> command is able to locate and install the dependent
+package, too.
 </p>
 
 <pre>
-import "code.google.com/p/go.example/newmath"
+import "github.com/golang/example/stringutil"
 </pre>
 
 <p>
index 90c3f10a1de006ad81ea8695b2b1dbe6c06773ac..92fd88b4853ee6665610a6b5c6470c923c483fed 100644 (file)
@@ -121,7 +121,7 @@ are inside the go directory when issuing commands.
 
 <p>To contribute to subrepositories, edit the <code>.hg/hgrc</code> for each
 subrepository in the same way. For example, add the codereview extension to
-<code>code.google.com/p/go.tools/.hg/hgrc</code>.
+<code>golang.org/x/tools/.hg/hgrc</code>.
 </p>
 
 <h3>Understanding the extension</h3>
index 94c48d2ce368945beb6ade82c5818b8fb6adba0d..d800dec0c0dec106338ae0d578b82fea7ce8f99d 100644 (file)
@@ -153,7 +153,7 @@ developed software based on Go 1.
 
 <p>
 Code in sub-repositories of the main go tree, such as
-<a href="//code.google.com/p/go.net">code.google.com/p/go.net</a>,
+<a href="//golang.org/x/net">golang.org/x/net</a>,
 may be developed under
 looser compatibility requirements. However, the sub-repositories
 will be tagged as appropriate to identify versions that are compatible
@@ -170,9 +170,9 @@ is therefore outside the purview of the guarantees made here.
 As of Go version 1.4, the <code>syscall</code> package is frozen.
 Any evolution of the system call interface must be supported elsewhere,
 such as in the
-<a href="http://godoc.org/code.google.com/p/go.sys">go.sys</a> subrepository.
+<a href="//golang.org/x/sys">go.sys</a> subrepository.
 For details and background, see
-<a href="https://golang.org/s/go1.4-syscall">this document</a>.
+<a href="//golang.org/s/go1.4-syscall">this document</a>.
 </p>
 
 <h2 id="tools">Tools</h2>
index 9aac0583889c523daa63366be865fa6f9f5c0836..7597997798f0d2948b485f62c515e29ea5955420 100644 (file)
@@ -1616,7 +1616,7 @@ Go is a
 fine language in which to implement a self-hosting compiler: a native lexer and
 parser are already available in the <a href="/pkg/go/"><code>go</code></a> package
 and a separate type checking
-<a href="http://godoc.org/code.google.com/p/go.tools/go/types">package</a>
+<a href="http://godoc.org/golang.org/x/tools/go/types">package</a>
 has also been written.
 </p>
 
@@ -1715,7 +1715,7 @@ func main() {
 
 <p>
 Nowadays, most Go programmers use a tool,
-<a href="http://godoc.org/code.google.com/p/go.tools/cmd/goimports">goimports</a>,
+<a href="http://godoc.org/golang.org/x/tools/cmd/goimports">goimports</a>,
 which automatically rewrites a Go source file to have the correct imports,
 eliminating the unused imports issue in practice.
 This program is easily connected to most editors to run automatically when a Go source file is written.
index 82859b50fb5c8e6636810e9f63ae1fb2bcac79d9..f53deb404cb616a2c118cb2558d3d1bd655c72ef 100644 (file)
@@ -241,12 +241,12 @@ provides <b>essential setup instructions</b> for using the Go tools.
 
 <p>
 The source code for several Go tools (including <a href="/cmd/godoc/">godoc</a>)
-is kept in <a href="https://code.google.com/p/go.tools">the go.tools repository</a>.
+is kept in <a href="https://golang.org/x/tools">the go.tools repository</a>.
 To install all of them, run the <code>go</code> <code>get</code> command:
 </p>
 
 <pre>
-$ go get code.google.com/p/go.tools/cmd/...
+$ go get golang.org/x/tools/cmd/...
 </pre>
 
 <p>
@@ -254,7 +254,7 @@ Or if you just want to install a specific command (<code>godoc</code> in this ca
 </p>
 
 <pre>
-$ go get code.google.com/p/go.tools/cmd/godoc
+$ go get golang.org/x/tools/cmd/godoc
 </pre>
 
 <p>
index b8814e1022e4718e88ff3185bd0b43f902bc31e9..416702c634a895b48f164ff8ef9fabca438b3450 100644 (file)
@@ -1631,7 +1631,7 @@ def clpatch_or_undo(ui, repo, clname, opts, mode):
        try:
                cmd = subprocess.Popen(argv, shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=None, close_fds=sys.platform != "win32")
        except:
-               return "hgapplydiff: " + ExceptionDetail() + "\nInstall hgapplydiff with:\n$ go get code.google.com/p/go.codereview/cmd/hgapplydiff\n"
+               return "hgapplydiff: " + ExceptionDetail() + "\nInstall hgapplydiff with:\n$ go get golang.org/x/codereview/cmd/hgapplydiff\n"
 
        out, err = cmd.communicate(patch)
        if cmd.returncode != 0 and not opts["ignore_hgapplydiff_failure"]:
index 28a37392d8218f8495bf491bf1bf186182b2256a..84d92eefd40c6730e8ab4e48a641cea93ada9ac3 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/bash
 
 echo 'misc/benchcmp has moved:' >&2
-echo ' go get -u code.google.com/p/go.tools/cmd/benchcmp' >&2
+echo ' go get -u golang.org/x/tools/cmd/benchcmp' >&2
 exit 2
index 9b2373307fa388bd4bf9ab1d90c78174035aa466..e94efdbceeed48e327cef832f875859dce5cab75 100644 (file)
@@ -53,8 +53,8 @@ var (
 )
 
 const (
-       blogPath       = "code.google.com/p/go.blog"
-       toolPath       = "code.google.com/p/go.tools"
+       blogPath       = "golang.org/x/blog"
+       toolPath       = "golang.org/x/tools"
        tourPath       = "code.google.com/p/go-tour"
        defaultToolTag = "release-branch.go1.3"
        defaultTourTag = "release-branch.go1.3"
@@ -64,9 +64,9 @@ const (
 // These must be the command that cmd/go knows to install to $GOROOT/bin
 // or $GOROOT/pkg/tool.
 var toolPaths = []string{
-       "code.google.com/p/go.tools/cmd/cover",
-       "code.google.com/p/go.tools/cmd/godoc",
-       "code.google.com/p/go.tools/cmd/vet",
+       "golang.org/x/tools/cmd/cover",
+       "golang.org/x/tools/cmd/godoc",
+       "golang.org/x/tools/cmd/vet",
 }
 
 var preBuildCleanFiles = []string{
index 0835bd8b90b36b5205722d8f951efed647109bd7..526620c82717e929eceef18816d243d8ebdab26d 100644 (file)
@@ -11,7 +11,7 @@
 // two non-literal codes are a clear code and an EOF code.
 //
 // The TIFF file format uses a similar but incompatible version of the LZW
-// algorithm. See the code.google.com/p/go.image/tiff/lzw package for an
+// algorithm. See the golang.org/x/image/tiff/lzw package for an
 // implementation.
 package lzw
 
index 5a91baca0ef1966c4505dfbeb4428422ff8b801d..59b23e93f5cd9ff637f8cd0d9dd8aa8256b89cae 100644 (file)
@@ -21,7 +21,7 @@ func (h Hash) HashFunc() Hash {
 }
 
 const (
-       MD4       Hash = 1 + iota // import code.google.com/p/go.crypto/md4
+       MD4       Hash = 1 + iota // import golang.org/x/crypto/md4
        MD5                       // import crypto/md5
        SHA1                      // import crypto/sha1
        SHA224                    // import crypto/sha256
@@ -29,11 +29,11 @@ const (
        SHA384                    // import crypto/sha512
        SHA512                    // import crypto/sha512
        MD5SHA1                   // no implementation; MD5+SHA1 used for TLS RSA
-       RIPEMD160                 // import code.google.com/p/go.crypto/ripemd160
-       SHA3_224                  // import code.google.com/p/go.crypto/sha3
-       SHA3_256                  // import code.google.com/p/go.crypto/sha3
-       SHA3_384                  // import code.google.com/p/go.crypto/sha3
-       SHA3_512                  // import code.google.com/p/go.crypto/sha3
+       RIPEMD160                 // import golang.org/x/crypto/ripemd160
+       SHA3_224                  // import golang.org/x/crypto/sha3
+       SHA3_256                  // import golang.org/x/crypto/sha3
+       SHA3_384                  // import golang.org/x/crypto/sha3
+       SHA3_512                  // import golang.org/x/crypto/sha3
        maxHash
 )
 
index dee140533c996c8bb232e786671eb96c0d4aaeff..cc991e5d9163c4d8e17b89c35b869b95ac441433 100644 (file)
@@ -12,7 +12,7 @@ var importPathToPrefixTests = []struct {
 }{
        {"runtime", "runtime"},
        {"sync/atomic", "sync/atomic"},
-       {"code.google.com/p/go.tools/godoc", "code.google.com/p/go.tools/godoc"},
+       {"golang.org/x/tools/godoc", "golang.org/x/tools/godoc"},
        {"foo.bar/baz.quux", "foo.bar/baz%2equux"},
        {"", ""},
        {"%foo%bar", "%25foo%25bar"},
index 389ab58e4182f5d84c5d0fae15d974748e9cf4ee..0e0fac9286e47d4952c7968ad23e6763ff2528c7 100644 (file)
@@ -30,7 +30,7 @@ import (
 // set a cookie for bar.com.
 //
 // A public suffix list implementation is in the package
-// code.google.com/p/go.net/publicsuffix.
+// golang.org/x/net/publicsuffix.
 type PublicSuffixList interface {
        // PublicSuffix returns the public suffix of domain.
        //
index 58e0dac939c69951d24b37feb94e202bfcc25dcf..5805f687130fca344e7d00357a42e231e0fedf60 100644 (file)
@@ -9,7 +9,7 @@
 // Export the runtime entry point symbol.
 //
 // Used by the app package to start the Go runtime after loading
-// a shared library via JNI. See code.google.com/p/go.mobile/app.
+// a shared library via JNI. See golang.org/x/mobile/app.
 
 void _rt0_arm_linux1();
 #pragma cgo_export_static _rt0_arm_linux1