go.mod: rename google.golang.org/proto as github.com/golang/protobuf/v2

This change was created by running:
	git ls-files | xargs sed -i "s|google.golang.org/proto|github.com/golang/protobuf/v2|g"

This change is *not* an endorsement of "github.com/golang/protobuf/v2" as the
final import path when the v2 API is eventually released as stable.
We continue to reserve the right to make breaking changes as we see fit.

This change enables us to host the v2 API on a repository that is go-gettable
(since go.googlesource.com is not a known host by the "go get" tool;
and google.golang.org/proto was just a stub URL that is not currently served).
Thus, we can start work on a forked version of the v1 API that explores
what it would take to implement v1 in terms of v2 in a backwards compatible way.

Change-Id: Ia3ebc41ac4238af62ee140200d3158b53ac9ec48
Reviewed-on: https://go-review.googlesource.com/136736
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/cmd/protoc-gen-go/main.go b/cmd/protoc-gen-go/main.go
index e7119f1..28745ae 100644
--- a/cmd/protoc-gen-go/main.go
+++ b/cmd/protoc-gen-go/main.go
@@ -20,8 +20,8 @@
 
 	"github.com/golang/protobuf/proto"
 	descpb "github.com/golang/protobuf/protoc-gen-go/descriptor"
-	"google.golang.org/proto/protogen"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/protogen"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // generatedCodeVersion indicates a version of the generated code.
diff --git a/cmd/protoc-gen-go/oneof.go b/cmd/protoc-gen-go/oneof.go
index 2e788fe..dbb91a2 100644
--- a/cmd/protoc-gen-go/oneof.go
+++ b/cmd/protoc-gen-go/oneof.go
@@ -5,8 +5,8 @@
 	"strings"
 
 	"github.com/golang/protobuf/proto"
-	"google.golang.org/proto/protogen"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/protogen"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // genOneofField generates the struct field for a oneof.
diff --git a/cmd/protoc-gen-go/options.go b/cmd/protoc-gen-go/options.go
index 53e3e78..2690cbf 100644
--- a/cmd/protoc-gen-go/options.go
+++ b/cmd/protoc-gen-go/options.go
@@ -11,8 +11,8 @@
 import (
 	"github.com/golang/protobuf/proto"
 	descpb "github.com/golang/protobuf/protoc-gen-go/descriptor"
-	"google.golang.org/proto/protogen"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/protogen"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // messageOptions returns the MessageOptions for a message.
diff --git a/cmd/protoc-gen-go/testdata/comments/comments.proto b/cmd/protoc-gen-go/testdata/comments/comments.proto
index 7ee51ce..6bcee38 100644
--- a/cmd/protoc-gen-go/testdata/comments/comments.proto
+++ b/cmd/protoc-gen-go/testdata/comments/comments.proto
@@ -7,7 +7,7 @@
 // COMMENT: package goproto.protoc.comments;
 package goproto.protoc.comments;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/comments";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/comments";
 
 // COMMENT: Message1
 message Message1 {
diff --git a/cmd/protoc-gen-go/testdata/comments/deprecated.proto b/cmd/protoc-gen-go/testdata/comments/deprecated.proto
index a33cb33..c889b4d 100644
--- a/cmd/protoc-gen-go/testdata/comments/deprecated.proto
+++ b/cmd/protoc-gen-go/testdata/comments/deprecated.proto
@@ -7,7 +7,7 @@
 package goproto.protoc.comments;
 
 option deprecated = true;
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/comments";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/comments";
 
 message DeprecatedMessage {
   option deprecated = true;
diff --git a/cmd/protoc-gen-go/testdata/extensions/base/base.proto b/cmd/protoc-gen-go/testdata/extensions/base/base.proto
index 3c16d25..c97436b 100644
--- a/cmd/protoc-gen-go/testdata/extensions/base/base.proto
+++ b/cmd/protoc-gen-go/testdata/extensions/base/base.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.extension.base;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/base";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/base";
 
 message BaseMessage {
   optional string field = 1;
diff --git a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
index b419842..6eadbc4 100644
--- a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
@@ -6,8 +6,8 @@
 import (
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
-	base "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/base"
-	extra "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/extra"
+	base "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/base"
+	extra "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/extra"
 	math "math"
 )
 
diff --git a/cmd/protoc-gen-go/testdata/extensions/ext/ext.proto b/cmd/protoc-gen-go/testdata/extensions/ext/ext.proto
index 3767b1e..5fb9e94 100644
--- a/cmd/protoc-gen-go/testdata/extensions/ext/ext.proto
+++ b/cmd/protoc-gen-go/testdata/extensions/ext/ext.proto
@@ -9,7 +9,7 @@
 
 package goproto.protoc.extension.ext;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/ext";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/ext";
 
 message Message {
   optional bytes data = 1;
diff --git a/cmd/protoc-gen-go/testdata/extensions/extra/extra.proto b/cmd/protoc-gen-go/testdata/extensions/extra/extra.proto
index 84a4392..e615f92 100644
--- a/cmd/protoc-gen-go/testdata/extensions/extra/extra.proto
+++ b/cmd/protoc-gen-go/testdata/extensions/extra/extra.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.extension.extra;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/extra";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/extra";
 
 message ExtraMessage {
   optional bytes data = 1;
diff --git a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.proto b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.proto
index 4611038..c9af7c6 100644
--- a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.proto
+++ b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.proto
@@ -8,7 +8,7 @@
 
 package goproto.protoc.extension.proto3;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/extensions/proto3";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/extensions/proto3";
 
 message Message {}
 enum Enum { ZERO = 0; }
diff --git a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.proto b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.proto
index 4301804..0cd5be5 100644
--- a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.proto
+++ b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.fieldnames;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/fieldnames";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/fieldnames";
 
 // Assorted edge cases in field name conflict resolution.
 //
diff --git a/cmd/protoc-gen-go/testdata/import_public/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
index 01c95cb..bf39bf4 100644
--- a/cmd/protoc-gen-go/testdata/import_public/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
@@ -6,7 +6,7 @@
 import (
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
-	sub "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public/sub"
+	sub "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public/sub"
 	math "math"
 )
 
diff --git a/cmd/protoc-gen-go/testdata/import_public/a.proto b/cmd/protoc-gen-go/testdata/import_public/a.proto
index 6517d94..2722ad2 100644
--- a/cmd/protoc-gen-go/testdata/import_public/a.proto
+++ b/cmd/protoc-gen-go/testdata/import_public/a.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.import_public;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public";
 
 import public "import_public/sub/a.proto"; // Different Go package.
 import public "import_public/b.proto";     // Same Go package.
diff --git a/cmd/protoc-gen-go/testdata/import_public/b.pb.go b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
index 713fbc2..5d244a3 100644
--- a/cmd/protoc-gen-go/testdata/import_public/b.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
@@ -6,7 +6,7 @@
 import (
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
-	sub "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public/sub"
+	sub "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public/sub"
 	math "math"
 )
 
diff --git a/cmd/protoc-gen-go/testdata/import_public/b.proto b/cmd/protoc-gen-go/testdata/import_public/b.proto
index d8f6705..4632fc6 100644
--- a/cmd/protoc-gen-go/testdata/import_public/b.proto
+++ b/cmd/protoc-gen-go/testdata/import_public/b.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.import_public;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public";
 
 import "import_public/sub/a.proto";
 
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/a.proto b/cmd/protoc-gen-go/testdata/import_public/sub/a.proto
index b77090d..13bc0b3 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/a.proto
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/a.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.import_public.sub;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public/sub";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public/sub";
 
 import "import_public/sub/b.proto";
 
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/b.proto b/cmd/protoc-gen-go/testdata/import_public/sub/b.proto
index 9f69ab9..fd643d6 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/b.proto
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/b.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.import_public.sub;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/import_public/sub";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/import_public/sub";
 
 message M2 {
 }
diff --git a/cmd/protoc-gen-go/testdata/proto2/enum.proto b/cmd/protoc-gen-go/testdata/proto2/enum.proto
index 0faac3e..aa52b9b 100644
--- a/cmd/protoc-gen-go/testdata/proto2/enum.proto
+++ b/cmd/protoc-gen-go/testdata/proto2/enum.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto2;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto2";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto2";
 
 // EnumType1 comment.
 enum EnumType1 {
diff --git a/cmd/protoc-gen-go/testdata/proto2/fields.proto b/cmd/protoc-gen-go/testdata/proto2/fields.proto
index bb5b61e..9095c25 100644
--- a/cmd/protoc-gen-go/testdata/proto2/fields.proto
+++ b/cmd/protoc-gen-go/testdata/proto2/fields.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto2;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto2";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto2";
 
 message FieldTestMessage {
   optional bool     optional_bool     = 1;
diff --git a/cmd/protoc-gen-go/testdata/proto2/nested_messages.proto b/cmd/protoc-gen-go/testdata/proto2/nested_messages.proto
index 85e77b2..bb92a0a 100644
--- a/cmd/protoc-gen-go/testdata/proto2/nested_messages.proto
+++ b/cmd/protoc-gen-go/testdata/proto2/nested_messages.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto2;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto2";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto2";
 
 message Layer1 {
   message Layer2 {
diff --git a/cmd/protoc-gen-go/testdata/proto2/proto2.proto b/cmd/protoc-gen-go/testdata/proto2/proto2.proto
index 9e7e29d..fe610cf 100644
--- a/cmd/protoc-gen-go/testdata/proto2/proto2.proto
+++ b/cmd/protoc-gen-go/testdata/proto2/proto2.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto2;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto2";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto2";
 
 message Message {
   optional int32 i32 = 1;
diff --git a/cmd/protoc-gen-go/testdata/proto3/enum.proto b/cmd/protoc-gen-go/testdata/proto3/enum.proto
index 60e7b8e..e7a4db6 100644
--- a/cmd/protoc-gen-go/testdata/proto3/enum.proto
+++ b/cmd/protoc-gen-go/testdata/proto3/enum.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto3;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto3";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto3";
 
 enum Enum {
   ZERO = 0;
diff --git a/cmd/protoc-gen-go/testdata/proto3/fields.proto b/cmd/protoc-gen-go/testdata/proto3/fields.proto
index 5ae7344..ba61364 100644
--- a/cmd/protoc-gen-go/testdata/proto3/fields.proto
+++ b/cmd/protoc-gen-go/testdata/proto3/fields.proto
@@ -6,7 +6,7 @@
 
 package goproto.protoc.proto3;
 
-option go_package = "google.golang.org/proto/cmd/protoc-gen-go/testdata/proto3";
+option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/proto3";
 
 message FieldTestMessage {
   string   optional_bool     = 1;
diff --git a/go.mod b/go.mod
index 638151c..131aeafb 100644
--- a/go.mod
+++ b/go.mod
@@ -1,4 +1,4 @@
-module google.golang.org/proto
+module github.com/golang/protobuf/v2
 
 require (
 	github.com/golang/protobuf v1.2.0
diff --git a/internal/cmd/generate-types/main.go b/internal/cmd/generate-types/main.go
index 8d239d3..599afc3 100644
--- a/internal/cmd/generate-types/main.go
+++ b/internal/cmd/generate-types/main.go
@@ -200,8 +200,8 @@
 		"fmt",
 		"sync",
 		"",
-		"google.golang.org/proto/internal/pragma",
-		"google.golang.org/proto/reflect/protoreflect",
+		"github.com/golang/protobuf/v2/internal/pragma",
+		"github.com/golang/protobuf/v2/reflect/protoreflect",
 	} {
 		if pkg == "" {
 			imports = append(imports, "") // blank line between stdlib and proto packages
diff --git a/internal/cmd/pbdump/pbdump.go b/internal/cmd/pbdump/pbdump.go
index 0125e67..1a4b0c1 100644
--- a/internal/cmd/pbdump/pbdump.go
+++ b/internal/cmd/pbdump/pbdump.go
@@ -17,10 +17,10 @@
 	"strconv"
 	"strings"
 
-	"google.golang.org/proto/internal/encoding/pack"
-	"google.golang.org/proto/internal/encoding/wire"
-	"google.golang.org/proto/reflect/protoreflect"
-	"google.golang.org/proto/reflect/prototype"
+	"github.com/golang/protobuf/v2/internal/encoding/pack"
+	"github.com/golang/protobuf/v2/internal/encoding/wire"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/prototype"
 )
 
 func main() {
diff --git a/internal/cmd/pbdump/pbdump_test.go b/internal/cmd/pbdump/pbdump_test.go
index 524a3a2..0d03c26 100644
--- a/internal/cmd/pbdump/pbdump_test.go
+++ b/internal/cmd/pbdump/pbdump_test.go
@@ -12,8 +12,8 @@
 	"github.com/google/go-cmp/cmp"
 	"github.com/google/go-cmp/cmp/cmpopts"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
-	ptype "google.golang.org/proto/reflect/prototype"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
+	ptype "github.com/golang/protobuf/v2/reflect/prototype"
 )
 
 func TestFields(t *testing.T) {
diff --git a/internal/encoding/json/decode.go b/internal/encoding/json/decode.go
index 4f7ddb6..769619b 100644
--- a/internal/encoding/json/decode.go
+++ b/internal/encoding/json/decode.go
@@ -10,7 +10,7 @@
 	"regexp"
 	"unicode/utf8"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 type syntaxError struct{ error }
diff --git a/internal/encoding/json/encode.go b/internal/encoding/json/encode.go
index aea7753..93b0928 100644
--- a/internal/encoding/json/encode.go
+++ b/internal/encoding/json/encode.go
@@ -7,7 +7,7 @@
 import (
 	"strings"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 // Marshal serializes v as the JSON format.
diff --git a/internal/encoding/json/number.go b/internal/encoding/json/number.go
index 7d27553..ec99cbd 100644
--- a/internal/encoding/json/number.go
+++ b/internal/encoding/json/number.go
@@ -10,7 +10,7 @@
 	"regexp"
 	"strconv"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 // marshalNumber encodes v as a Number.
diff --git a/internal/encoding/json/string.go b/internal/encoding/json/string.go
index ad80e85..813d8fa 100644
--- a/internal/encoding/json/string.go
+++ b/internal/encoding/json/string.go
@@ -12,7 +12,7 @@
 	"unicode/utf16"
 	"unicode/utf8"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 func (p *encoder) marshalString(v Value) error {
diff --git a/internal/encoding/pack/pack.go b/internal/encoding/pack/pack.go
index aeb3390..93dc4ed 100644
--- a/internal/encoding/pack/pack.go
+++ b/internal/encoding/pack/pack.go
@@ -21,8 +21,8 @@
 	"unicode"
 	"unicode/utf8"
 
-	"google.golang.org/proto/internal/encoding/wire"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/encoding/wire"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // Number is the field number; aliased from the wire package for convenience.
diff --git a/internal/encoding/pack/pack_test.go b/internal/encoding/pack/pack_test.go
index 36a6300..293dcdb 100644
--- a/internal/encoding/pack/pack_test.go
+++ b/internal/encoding/pack/pack_test.go
@@ -11,9 +11,9 @@
 	"math"
 	"testing"
 
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
+	ptype "github.com/golang/protobuf/v2/reflect/prototype"
 	"github.com/google/go-cmp/cmp"
-	pref "google.golang.org/proto/reflect/protoreflect"
-	ptype "google.golang.org/proto/reflect/prototype"
 )
 
 var msgDesc = func() pref.MessageDescriptor {
diff --git a/internal/encoding/text/decode.go b/internal/encoding/text/decode.go
index 90faedc..090177a 100644
--- a/internal/encoding/text/decode.go
+++ b/internal/encoding/text/decode.go
@@ -10,8 +10,8 @@
 	"regexp"
 	"unicode/utf8"
 
-	"google.golang.org/proto/internal/errors"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/errors"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type syntaxError struct{ error }
diff --git a/internal/encoding/text/encode.go b/internal/encoding/text/encode.go
index ea0fb5a..1eae1f3 100644
--- a/internal/encoding/text/encode.go
+++ b/internal/encoding/text/encode.go
@@ -8,7 +8,7 @@
 	"bytes"
 	"strings"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 // Marshal serializes v as the proto text format, where v must be a Message.
diff --git a/internal/encoding/text/number.go b/internal/encoding/text/number.go
index 7a1be93..8a79f49 100644
--- a/internal/encoding/text/number.go
+++ b/internal/encoding/text/number.go
@@ -12,7 +12,7 @@
 	"strconv"
 	"strings"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 // marshalNumber encodes v as either a Bool, Int, Uint, or Float.
diff --git a/internal/encoding/text/string.go b/internal/encoding/text/string.go
index cc83e85..0274295 100644
--- a/internal/encoding/text/string.go
+++ b/internal/encoding/text/string.go
@@ -15,7 +15,7 @@
 	"unicode/utf16"
 	"unicode/utf8"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 func (p *encoder) marshalString(v Value) error {
diff --git a/internal/encoding/text/text_test.go b/internal/encoding/text/text_test.go
index 9b3bff6..b5ca63c 100644
--- a/internal/encoding/text/text_test.go
+++ b/internal/encoding/text/text_test.go
@@ -11,10 +11,10 @@
 	"testing"
 	"unicode/utf8"
 
+	"github.com/golang/protobuf/v2/internal/flags"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 	"github.com/google/go-cmp/cmp"
 	"github.com/google/go-cmp/cmp/cmpopts"
-	"google.golang.org/proto/internal/flags"
-	"google.golang.org/proto/reflect/protoreflect"
 )
 
 func Test(t *testing.T) {
diff --git a/internal/encoding/text/value.go b/internal/encoding/text/value.go
index 8dddd78..d16d1ab 100644
--- a/internal/encoding/text/value.go
+++ b/internal/encoding/text/value.go
@@ -33,8 +33,8 @@
 	"math"
 	"strings"
 
-	"google.golang.org/proto/internal/flags"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/flags"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // Type represents a type expressible in the text format.
diff --git a/internal/encoding/wire/wire.go b/internal/encoding/wire/wire.go
index 3ac9c91..033b4c0 100644
--- a/internal/encoding/wire/wire.go
+++ b/internal/encoding/wire/wire.go
@@ -11,7 +11,7 @@
 	"io"
 	"math/bits"
 
-	"google.golang.org/proto/internal/errors"
+	"github.com/golang/protobuf/v2/internal/errors"
 )
 
 // Number represents the field number.
diff --git a/internal/impl/message.go b/internal/impl/message.go
index 2f10f1d..2ffa207 100644
--- a/internal/impl/message.go
+++ b/internal/impl/message.go
@@ -9,7 +9,7 @@
 	"strconv"
 	"strings"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type MessageInfo struct {
diff --git a/internal/impl/message_field.go b/internal/impl/message_field.go
index eb3a2cf..2d1c34c 100644
--- a/internal/impl/message_field.go
+++ b/internal/impl/message_field.go
@@ -8,8 +8,8 @@
 	"fmt"
 	"reflect"
 
-	"google.golang.org/proto/internal/flags"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/flags"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type fieldInfo struct {
diff --git a/internal/impl/message_test.go b/internal/impl/message_test.go
index f9d674a..f870119 100644
--- a/internal/impl/message_test.go
+++ b/internal/impl/message_test.go
@@ -10,8 +10,8 @@
 
 	"github.com/google/go-cmp/cmp"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
-	ptype "google.golang.org/proto/reflect/prototype"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
+	ptype "github.com/golang/protobuf/v2/reflect/prototype"
 )
 
 type (
diff --git a/protogen/names.go b/protogen/names.go
index 0c220bc..8ec8299 100644
--- a/protogen/names.go
+++ b/protogen/names.go
@@ -8,7 +8,7 @@
 	"unicode"
 	"unicode/utf8"
 
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // A GoIdent is a Go identifier, consisting of a name and import path.
diff --git a/protogen/protogen.go b/protogen/protogen.go
index 9db98b1..03a2ff0 100644
--- a/protogen/protogen.go
+++ b/protogen/protogen.go
@@ -29,10 +29,10 @@
 	"github.com/golang/protobuf/proto"
 	descpb "github.com/golang/protobuf/protoc-gen-go/descriptor"
 	pluginpb "github.com/golang/protobuf/protoc-gen-go/plugin"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoregistry"
+	"github.com/golang/protobuf/v2/reflect/prototype"
 	"golang.org/x/tools/go/ast/astutil"
-	"google.golang.org/proto/reflect/protoreflect"
-	"google.golang.org/proto/reflect/protoregistry"
-	"google.golang.org/proto/reflect/prototype"
 )
 
 // Run executes a function as a protoc plugin.
diff --git a/reflect/protoreflect/proto.go b/reflect/protoreflect/proto.go
index 6ac1759..2c14a8f 100644
--- a/reflect/protoreflect/proto.go
+++ b/reflect/protoreflect/proto.go
@@ -30,8 +30,8 @@
 	"regexp"
 	"strings"
 
-	"google.golang.org/proto/internal/encoding/wire"
-	"google.golang.org/proto/internal/pragma"
+	"github.com/golang/protobuf/v2/internal/encoding/wire"
+	"github.com/golang/protobuf/v2/internal/pragma"
 )
 
 type doNotImplement pragma.DoNotImplement
diff --git a/reflect/protoreflect/value.go b/reflect/protoreflect/value.go
index e6db47d..a16c8a4 100644
--- a/reflect/protoreflect/value.go
+++ b/reflect/protoreflect/value.go
@@ -4,7 +4,7 @@
 
 package protoreflect
 
-import "google.golang.org/proto/internal/encoding/wire"
+import "github.com/golang/protobuf/v2/internal/encoding/wire"
 
 // TODO: Document the behavior of each Range operation when a mutation
 // occurs while ranging. Also document the order.
diff --git a/reflect/protoreflect/value_pure.go b/reflect/protoreflect/value_pure.go
index d9ecc9b..4a13564 100644
--- a/reflect/protoreflect/value_pure.go
+++ b/reflect/protoreflect/value_pure.go
@@ -6,7 +6,7 @@
 
 package protoreflect
 
-import "google.golang.org/proto/internal/pragma"
+import "github.com/golang/protobuf/v2/internal/pragma"
 
 type valueType int
 
diff --git a/reflect/protoreflect/value_unsafe.go b/reflect/protoreflect/value_unsafe.go
index b315420..ca911f6 100644
--- a/reflect/protoreflect/value_unsafe.go
+++ b/reflect/protoreflect/value_unsafe.go
@@ -9,7 +9,7 @@
 import (
 	"unsafe"
 
-	"google.golang.org/proto/internal/pragma"
+	"github.com/golang/protobuf/v2/internal/pragma"
 )
 
 type (
diff --git a/reflect/protoregistry/registry.go b/reflect/protoregistry/registry.go
index f01213a..e190bda 100644
--- a/reflect/protoregistry/registry.go
+++ b/reflect/protoregistry/registry.go
@@ -10,8 +10,8 @@
 	"sort"
 	"strings"
 
-	"google.golang.org/proto/internal/errors"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/errors"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // TODO: Perhaps Register should record the frame of where the function was
diff --git a/reflect/protoregistry/registry_test.go b/reflect/protoregistry/registry_test.go
index fdabde0..73a73a0 100644
--- a/reflect/protoregistry/registry_test.go
+++ b/reflect/protoregistry/registry_test.go
@@ -12,9 +12,9 @@
 	"github.com/google/go-cmp/cmp"
 	"github.com/google/go-cmp/cmp/cmpopts"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
-	preg "google.golang.org/proto/reflect/protoregistry"
-	ptype "google.golang.org/proto/reflect/prototype"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
+	preg "github.com/golang/protobuf/v2/reflect/protoregistry"
+	ptype "github.com/golang/protobuf/v2/reflect/prototype"
 )
 
 func TestFiles(t *testing.T) {
diff --git a/reflect/prototype/descriptor.go b/reflect/prototype/descriptor.go
index 8490ad3..031c51e 100644
--- a/reflect/prototype/descriptor.go
+++ b/reflect/prototype/descriptor.go
@@ -5,7 +5,7 @@
 package prototype
 
 import (
-	pref "google.golang.org/proto/reflect/protoreflect"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // TODO: This cannot be implemented without proto.Unmarshal.
diff --git a/reflect/prototype/go_type.go b/reflect/prototype/go_type.go
index 0b8ee41..4db1191 100644
--- a/reflect/prototype/go_type.go
+++ b/reflect/prototype/go_type.go
@@ -9,7 +9,7 @@
 	"reflect"
 	"sync"
 
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // GoEnum is a constructor for a protoreflect.EnumType.
diff --git a/reflect/prototype/name_pure.go b/reflect/prototype/name_pure.go
index 293ad37..6d943b3 100644
--- a/reflect/prototype/name_pure.go
+++ b/reflect/prototype/name_pure.go
@@ -6,7 +6,7 @@
 
 package prototype
 
-import pref "google.golang.org/proto/reflect/protoreflect"
+import pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 
 func getNameBuilder() *nameBuilder { return nil }
 func putNameBuilder(*nameBuilder)  {}
diff --git a/reflect/prototype/name_unsafe.go b/reflect/prototype/name_unsafe.go
index 88ad51c..43a6c7e 100644
--- a/reflect/prototype/name_unsafe.go
+++ b/reflect/prototype/name_unsafe.go
@@ -11,7 +11,7 @@
 	"sync"
 	"unsafe"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 var nameBuilderPool = sync.Pool{
diff --git a/reflect/prototype/placeholder.go b/reflect/prototype/placeholder.go
index dde30c9..3a5ffdc 100644
--- a/reflect/prototype/placeholder.go
+++ b/reflect/prototype/placeholder.go
@@ -4,7 +4,7 @@
 
 package prototype
 
-import "google.golang.org/proto/reflect/protoreflect"
+import "github.com/golang/protobuf/v2/reflect/protoreflect"
 
 // PlaceholderFile returns a placeholder protoreflect.FileType where
 // only the Path and Package accessors are valid.
diff --git a/reflect/prototype/placeholder_type.go b/reflect/prototype/placeholder_type.go
index 4128a62..2035111 100644
--- a/reflect/prototype/placeholder_type.go
+++ b/reflect/prototype/placeholder_type.go
@@ -7,8 +7,8 @@
 import (
 	"fmt"
 
-	"google.golang.org/proto/internal/pragma"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 var (
diff --git a/reflect/prototype/protofile.go b/reflect/prototype/protofile.go
index 3d069b2..21ba412 100644
--- a/reflect/prototype/protofile.go
+++ b/reflect/prototype/protofile.go
@@ -14,7 +14,7 @@
 package prototype
 
 import (
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // Every struct has a "meta" struct embedded within it as a pointer.
diff --git a/reflect/prototype/protofile_desc.go b/reflect/prototype/protofile_desc.go
index 161980e..0a2211d 100644
--- a/reflect/prototype/protofile_desc.go
+++ b/reflect/prototype/protofile_desc.go
@@ -12,10 +12,10 @@
 
 	descriptorV1 "github.com/golang/protobuf/protoc-gen-go/descriptor"
 
-	"google.golang.org/proto/internal/encoding/text"
-	"google.golang.org/proto/internal/errors"
-	"google.golang.org/proto/reflect/protoreflect"
-	"google.golang.org/proto/reflect/protoregistry"
+	"github.com/golang/protobuf/v2/internal/encoding/text"
+	"github.com/golang/protobuf/v2/internal/errors"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoregistry"
 )
 
 // TODO: Should we be responsible for validating other parts of the descriptor
diff --git a/reflect/prototype/protofile_list.go b/reflect/prototype/protofile_list.go
index 52570c0..0c9df72 100644
--- a/reflect/prototype/protofile_list.go
+++ b/reflect/prototype/protofile_list.go
@@ -8,9 +8,9 @@
 	"fmt"
 	"sync"
 
-	"google.golang.org/proto/internal/pragma"
-	"google.golang.org/proto/internal/set"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	"github.com/golang/protobuf/v2/internal/set"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type numbersMeta struct {
diff --git a/reflect/prototype/protofile_list_gen.go b/reflect/prototype/protofile_list_gen.go
index bd4f691..a6bd5dd 100644
--- a/reflect/prototype/protofile_list_gen.go
+++ b/reflect/prototype/protofile_list_gen.go
@@ -10,8 +10,8 @@
 	"fmt"
 	"sync"
 
-	"google.golang.org/proto/internal/pragma"
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type messagesMeta struct {
diff --git a/reflect/prototype/protofile_type.go b/reflect/prototype/protofile_type.go
index 773fc58..99f3be9 100644
--- a/reflect/prototype/protofile_type.go
+++ b/reflect/prototype/protofile_type.go
@@ -10,8 +10,8 @@
 	"strings"
 	"sync"
 
-	"google.golang.org/proto/internal/pragma"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // inheritedMeta is information inherited from the parent.
diff --git a/reflect/prototype/standalone.go b/reflect/prototype/standalone.go
index 18d77f4..b7cc1bc 100644
--- a/reflect/prototype/standalone.go
+++ b/reflect/prototype/standalone.go
@@ -5,7 +5,7 @@
 package prototype
 
 import (
-	"google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // TODO: Should the constructors take in a value rather than a pointer?
diff --git a/reflect/prototype/standalone_type.go b/reflect/prototype/standalone_type.go
index 9b5ac1f..1c91e33 100644
--- a/reflect/prototype/standalone_type.go
+++ b/reflect/prototype/standalone_type.go
@@ -7,8 +7,8 @@
 import (
 	"fmt"
 
-	"google.golang.org/proto/internal/pragma"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type standaloneMessage struct{ m *StandaloneMessage }
diff --git a/reflect/prototype/stringer.go b/reflect/prototype/stringer.go
index d97e030..497dfb7 100644
--- a/reflect/prototype/stringer.go
+++ b/reflect/prototype/stringer.go
@@ -12,8 +12,8 @@
 	"strconv"
 	"strings"
 
-	"google.golang.org/proto/internal/pragma"
-	pref "google.golang.org/proto/reflect/protoreflect"
+	"github.com/golang/protobuf/v2/internal/pragma"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 type list interface {
diff --git a/reflect/prototype/type_test.go b/reflect/prototype/type_test.go
index f790584..b42f503 100644
--- a/reflect/prototype/type_test.go
+++ b/reflect/prototype/type_test.go
@@ -15,7 +15,7 @@
 	protoV1 "github.com/golang/protobuf/proto"
 	descriptorV1 "github.com/golang/protobuf/protoc-gen-go/descriptor"
 
-	pref "google.golang.org/proto/reflect/protoreflect"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // TestDescriptors tests that the implementations do not declare additional
diff --git a/reflect/prototype/validate.go b/reflect/prototype/validate.go
index a0bb1db..c336f17 100644
--- a/reflect/prototype/validate.go
+++ b/reflect/prototype/validate.go
@@ -5,7 +5,7 @@
 package prototype
 
 import (
-	pref "google.golang.org/proto/reflect/protoreflect"
+	pref "github.com/golang/protobuf/v2/reflect/protoreflect"
 )
 
 // TODO: This is important to prevent users from creating invalid types,