Repository: pion/turn
Pull request #353 (2023-09-04 03:34:26)

Start pion/turn@v3
This is required to update pion/transport/v2 to v3

The public API of transport changed, and we expose transport as part of our public API.

codecov[bot]: ## [Codecov](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion) Report
Patch has no changes to coverable lines.

| [Files Changed](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion) | Coverage |
|---|---|
| [internal/allocation/allocation.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvYWxsb2NhdGlvbi9hbGxvY2F0aW9uLmdv) | `ø` |
| [internal/allocation/channel\_bind.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvYWxsb2NhdGlvbi9jaGFubmVsX2JpbmQuZ28=) | `ø` |
| [internal/client/allocation.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvY2xpZW50L2FsbG9jYXRpb24uZ28=) | `ø` |
| [internal/client/permission.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvY2xpZW50L3Blcm1pc3Npb24uZ28=) | `ø` |
| [internal/client/tcp\_alloc.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvY2xpZW50L3RjcF9hbGxvYy5nbw==) | `ø` |
| [internal/client/tcp\_conn.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvY2xpZW50L3RjcF9jb25uLmdv) | `ø` |
| [internal/client/udp\_conn.go](https://app.codecov.io/gh/pion/turn/pull/353?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion#diff-aW50ZXJuYWwvY2xpZW50L3VkcF9jb25uLmdv) | `ø` |


:loudspeaker: Thoughts on this report? [Let us know!](https://about.codecov.io/pull-request-comment-report/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=pion).


Patch:
diff --git a/README.md b/README.md
index 5adcfe7..378e063 100644
--- a/README.md
+++ b/README.md
@@ -11,9 +11,9 @@
   <a href="https://github.com/pion/awesome-pion" alt="Awesome Pion"><img src="https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg"></a>
   <br>
   <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/pion/turn/test.yaml">
-  <a href="https://pkg.go.dev/github.com/pion/turn/v2"><img src="https://pkg.go.dev/badge/github.com/pion/turn/v2.svg" alt="Go Reference"></a>
+  <a href="https://pkg.go.dev/github.com/pion/turn/v3"><img src="https://pkg.go.dev/badge/github.com/pion/turn/v3.svg" alt="Go Reference"></a>
   <a href="https://codecov.io/gh/pion/turn"><img src="https://codecov.io/gh/pion/turn/branch/master/graph/badge.svg" alt="Coverage Status"></a>
-  <a href="https://goreportcard.com/report/github.com/pion/turn/v2"><img src="https://goreportcard.com/badge/github.com/pion/turn/v2" alt="Go Report Card"></a>
+  <a href="https://goreportcard.com/report/github.com/pion/turn/v3"><img src="https://goreportcard.com/badge/github.com/pion/turn/v3" alt="Go Report Card"></a>
   <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
 </p>
 <br>
diff --git a/client.go b/client.go
index be2a243..467036c 100644
--- a/client.go
+++ b/client.go
@@ -13,10 +13,10 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/transport/v2"
-	"github.com/pion/transport/v2/stdnet"
-	"github.com/pion/turn/v2/internal/client"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3"
+	"github.com/pion/transport/v3/stdnet"
+	"github.com/pion/turn/v3/internal/client"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 const (
diff --git a/examples/lt-cred-generator/main.go b/examples/lt-cred-generator/main.go
index 189d99a..f9d50bb 100644
--- a/examples/lt-cred-generator/main.go
+++ b/examples/lt-cred-generator/main.go
@@ -12,7 +12,7 @@ import (
 	"os"
 	"time"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 // Outputs username & password according to the
diff --git a/examples/turn-client/tcp-alloc/main.go b/examples/turn-client/tcp-alloc/main.go
index f647067..c52ecff 100644
--- a/examples/turn-client/tcp-alloc/main.go
+++ b/examples/turn-client/tcp-alloc/main.go
@@ -13,7 +13,7 @@ import (
 	"strings"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func setupSignalingChannel(addrCh chan string, signaling bool, relayAddr string) {
diff --git a/examples/turn-client/tcp/main.go b/examples/turn-client/tcp/main.go
index e8a7a2e..f73a202 100644
--- a/examples/turn-client/tcp/main.go
+++ b/examples/turn-client/tcp/main.go
@@ -13,7 +13,7 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-client/udp/main.go b/examples/turn-client/udp/main.go
index 9ca0820..e80a289 100644
--- a/examples/turn-client/udp/main.go
+++ b/examples/turn-client/udp/main.go
@@ -13,7 +13,7 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/add-software-attribute/main.go b/examples/turn-server/add-software-attribute/main.go
index 78eae99..f553c05 100644
--- a/examples/turn-server/add-software-attribute/main.go
+++ b/examples/turn-server/add-software-attribute/main.go
@@ -16,7 +16,7 @@ import (
 	"syscall"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 // attributeAdder wraps a PacketConn and appends the SOFTWARE attribute to STUN packets
diff --git a/examples/turn-server/log/main.go b/examples/turn-server/log/main.go
index 1bf71c1..e0e4e5e 100644
--- a/examples/turn-server/log/main.go
+++ b/examples/turn-server/log/main.go
@@ -16,7 +16,7 @@ import (
 	"syscall"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 // stunLogger wraps a PacketConn and prints incoming/outgoing STUN packets
diff --git a/examples/turn-server/lt-cred/main.go b/examples/turn-server/lt-cred/main.go
index 267de4c..3fa81df 100644
--- a/examples/turn-server/lt-cred/main.go
+++ b/examples/turn-server/lt-cred/main.go
@@ -18,7 +18,7 @@ import (
 	"syscall"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/perm-filter/main.go b/examples/turn-server/perm-filter/main.go
index e874fb6..44fe8f5 100644
--- a/examples/turn-server/perm-filter/main.go
+++ b/examples/turn-server/perm-filter/main.go
@@ -18,7 +18,7 @@ import (
 	"strings"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/port-range/main.go b/examples/turn-server/port-range/main.go
index 95fb4d8..562deb8 100644
--- a/examples/turn-server/port-range/main.go
+++ b/examples/turn-server/port-range/main.go
@@ -15,7 +15,7 @@ import (
 	"strconv"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/simple-multithreaded/main.go b/examples/turn-server/simple-multithreaded/main.go
index 92ad8cf..d50028e 100644
--- a/examples/turn-server/simple-multithreaded/main.go
+++ b/examples/turn-server/simple-multithreaded/main.go
@@ -17,7 +17,7 @@ import (
 	"strconv"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 	"golang.org/x/sys/unix"
 )
 
diff --git a/examples/turn-server/simple/main.go b/examples/turn-server/simple/main.go
index 9ddff1c..32c7667 100644
--- a/examples/turn-server/simple/main.go
+++ b/examples/turn-server/simple/main.go
@@ -14,7 +14,7 @@ import (
 	"strconv"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/tcp/main.go b/examples/turn-server/tcp/main.go
index da7a6a4..de61729 100644
--- a/examples/turn-server/tcp/main.go
+++ b/examples/turn-server/tcp/main.go
@@ -14,7 +14,7 @@ import (
 	"strconv"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/examples/turn-server/tls/main.go b/examples/turn-server/tls/main.go
index f1d5c11..094ab9c 100644
--- a/examples/turn-server/tls/main.go
+++ b/examples/turn-server/tls/main.go
@@ -15,7 +15,7 @@ import (
 	"strconv"
 	"syscall"
 
-	"github.com/pion/turn/v2"
+	"github.com/pion/turn/v3"
 )
 
 func main() {
diff --git a/go.mod b/go.mod
index 29fc5c2..713841e 100644
--- a/go.mod
+++ b/go.mod
@@ -1,4 +1,4 @@
-module github.com/pion/turn/v2
+module github.com/pion/turn/v3
 
 go 1.13
 
@@ -6,7 +6,7 @@ require (
 	github.com/pion/logging v0.2.2
 	github.com/pion/randutil v0.1.0
 	github.com/pion/stun v0.6.1
-	github.com/pion/transport/v2 v2.2.2
+	github.com/pion/transport/v3 v3.0.0
 	github.com/stretchr/testify v1.8.4
-	golang.org/x/sys v0.10.0
+	golang.org/x/sys v0.11.0
 )
diff --git a/go.sum b/go.sum
index 9328356..6d77f38 100644
--- a/go.sum
+++ b/go.sum
@@ -9,9 +9,10 @@ github.com/pion/randutil v0.1.0 h1:CFG1UdESneORglEsnimhUjf33Rwjubwj6xfiOXBa3mA=
 github.com/pion/randutil v0.1.0/go.mod h1:XcJrSMMbbMRhASFVOlj/5hQial/Y8oH/HVo7TBZq+j8=
 github.com/pion/stun v0.6.1 h1:8lp6YejULeHBF8NmV8e2787BogQhduZugh5PdhDyyN4=
 github.com/pion/stun v0.6.1/go.mod h1:/hO7APkX4hZKu/D0f2lHzNyvdkTGtIy3NDmLR7kSz/8=
+github.com/pion/transport/v2 v2.2.1 h1:7qYnCBlpgSJNYMbLCKuSY9KbQdBFoETvPNETv0y4N7c=
 github.com/pion/transport/v2 v2.2.1/go.mod h1:cXXWavvCnFF6McHTft3DWS9iic2Mftcz1Aq29pGcU5g=
-github.com/pion/transport/v2 v2.2.2 h1:yv+EKSU2dpmInuCebQ1rsBFCYL7p+aV90xIlshSBO+A=
-github.com/pion/transport/v2 v2.2.2/go.mod h1:OJg3ojoBJopjEeECq2yJdXH9YVrUJ1uQ++NjXLOUorc=
+github.com/pion/transport/v3 v3.0.0 h1:xNe+VCuPjpilJH5t7qMSAte7B1N3V1FbtIsDJW3YYsk=
+github.com/pion/transport/v3 v3.0.0/go.mod h1:UY7kiITrlMv7/IKgd5eTUcaahZx5oUN3l9SzK5f5xE0=
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@@ -26,8 +27,8 @@ github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5t
 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
 golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
 golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE=
-golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA=
-golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio=
+golang.org/x/crypto v0.12.0 h1:tFM/ta59kqch6LlvYnPa0yx5a83cL2nHflFhYKvv9Yk=
+golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw=
 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
 golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
 golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -36,8 +37,8 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug
 golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
 golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns=
 golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
-golang.org/x/net v0.13.0 h1:Nvo8UFsZ8X3BhAC9699Z1j7XQ3rsZnUUm7jfBEk1ueY=
-golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
+golang.org/x/net v0.14.0 h1:BONx9s002vGdD9umnlX1Po8vOZmrgH34qlHcD1MfK14=
+golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI=
 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -49,20 +50,20 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
 golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA=
-golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
+golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
 golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
 golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY=
 golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
-golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o=
+golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
 golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
 golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
+golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
 golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
diff --git a/internal/allocation/allocation.go b/internal/allocation/allocation.go
index 7bda593..cb68bd0 100644
--- a/internal/allocation/allocation.go
+++ b/internal/allocation/allocation.go
@@ -12,8 +12,8 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/ipnet"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/ipnet"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 type allocationResponse struct {
diff --git a/internal/allocation/channel_bind.go b/internal/allocation/channel_bind.go
index d38de35..b096fcd 100644
--- a/internal/allocation/channel_bind.go
+++ b/internal/allocation/channel_bind.go
@@ -8,7 +8,7 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 // ChannelBind represents a TURN Channel
diff --git a/internal/client/allocation.go b/internal/client/allocation.go
index f61452b..c7b6d05 100644
--- a/internal/client/allocation.go
+++ b/internal/client/allocation.go
@@ -12,8 +12,8 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/transport/v2"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 // AllocationConfig is a set of configuration params use by NewUDPConn and NewTCPAllocation
diff --git a/internal/client/permission.go b/internal/client/permission.go
index f5df0cc..b979875 100644
--- a/internal/client/permission.go
+++ b/internal/client/permission.go
@@ -8,7 +8,7 @@ import (
 	"sync"
 	"sync/atomic"
 
-	"github.com/pion/turn/v2/internal/ipnet"
+	"github.com/pion/turn/v3/internal/ipnet"
 )
 
 type permState int32
diff --git a/internal/client/tcp_alloc.go b/internal/client/tcp_alloc.go
index 3d6838b..a94bf6d 100644
--- a/internal/client/tcp_alloc.go
+++ b/internal/client/tcp_alloc.go
@@ -12,8 +12,8 @@ import (
 	"time"
 
 	"github.com/pion/stun"
-	"github.com/pion/transport/v2"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 var (
diff --git a/internal/client/tcp_conn.go b/internal/client/tcp_conn.go
index 06d50eb..faed98b 100644
--- a/internal/client/tcp_conn.go
+++ b/internal/client/tcp_conn.go
@@ -7,8 +7,8 @@ import (
 	"errors"
 	"net"
 
-	"github.com/pion/transport/v2"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 var (
diff --git a/internal/client/udp_conn.go b/internal/client/udp_conn.go
index 9e206d6..87239c0 100644
--- a/internal/client/udp_conn.go
+++ b/internal/client/udp_conn.go
@@ -13,7 +13,7 @@ import (
 	"time"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 const (
diff --git a/internal/server/server.go b/internal/server/server.go
index 0963e3e..5b0be55 100644
--- a/internal/server/server.go
+++ b/internal/server/server.go
@@ -12,8 +12,8 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/allocation"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/allocation"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 // Request contains all the state needed to process a single incoming datagram
diff --git a/internal/server/stun.go b/internal/server/stun.go
index ebd4b08..5a69b8b 100644
--- a/internal/server/stun.go
+++ b/internal/server/stun.go
@@ -5,7 +5,7 @@ package server
 
 import (
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/ipnet"
+	"github.com/pion/turn/v3/internal/ipnet"
 )
 
 func handleBindingRequest(r Request, m *stun.Message) error {
diff --git a/internal/server/turn.go b/internal/server/turn.go
index 91d98e3..25d82d5 100644
--- a/internal/server/turn.go
+++ b/internal/server/turn.go
@@ -8,9 +8,9 @@ import (
 	"net"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/allocation"
-	"github.com/pion/turn/v2/internal/ipnet"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/allocation"
+	"github.com/pion/turn/v3/internal/ipnet"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 // See: https://tools.ietf.org/html/rfc5766#section-6.2
diff --git a/internal/server/util.go b/internal/server/util.go
index 86e119f..44ed0b3 100644
--- a/internal/server/util.go
+++ b/internal/server/util.go
@@ -14,7 +14,7 @@ import (
 	"time"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 const (
diff --git a/relay_address_generator_none.go b/relay_address_generator_none.go
index 3df3813..b097401 100644
--- a/relay_address_generator_none.go
+++ b/relay_address_generator_none.go
@@ -8,8 +8,8 @@ import (
 	"net"
 	"strconv"
 
-	"github.com/pion/transport/v2"
-	"github.com/pion/transport/v2/stdnet"
+	"github.com/pion/transport/v3"
+	"github.com/pion/transport/v3/stdnet"
 )
 
 // RelayAddressGeneratorNone returns the listener with no modifications
diff --git a/relay_address_generator_range.go b/relay_address_generator_range.go
index 9df62cc..d87a57f 100644
--- a/relay_address_generator_range.go
+++ b/relay_address_generator_range.go
@@ -8,8 +8,8 @@ import (
 	"net"
 
 	"github.com/pion/randutil"
-	"github.com/pion/transport/v2"
-	"github.com/pion/transport/v2/stdnet"
+	"github.com/pion/transport/v3"
+	"github.com/pion/transport/v3/stdnet"
 )
 
 // RelayAddressGeneratorPortRange can be used to only allocate connections inside a defined port range.
diff --git a/relay_address_generator_static.go b/relay_address_generator_static.go
index 6988714..39c6877 100644
--- a/relay_address_generator_static.go
+++ b/relay_address_generator_static.go
@@ -8,8 +8,8 @@ import (
 	"net"
 	"strconv"
 
-	"github.com/pion/transport/v2"
-	"github.com/pion/transport/v2/stdnet"
+	"github.com/pion/transport/v3"
+	"github.com/pion/transport/v3/stdnet"
 )
 
 // RelayAddressGeneratorStatic can be used to return static IP address each time a relay is created.
diff --git a/server.go b/server.go
index 5727395..5c277a0 100644
--- a/server.go
+++ b/server.go
@@ -12,9 +12,9 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2/internal/allocation"
-	"github.com/pion/turn/v2/internal/proto"
-	"github.com/pion/turn/v2/internal/server"
+	"github.com/pion/turn/v3/internal/allocation"
+	"github.com/pion/turn/v3/internal/proto"
+	"github.com/pion/turn/v3/internal/server"
 )
 
 const (
diff --git a/stun_conn.go b/stun_conn.go
index cb062f8..3899295 100644
--- a/stun_conn.go
+++ b/stun_conn.go
@@ -10,7 +10,7 @@ import (
 	"time"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 var (


Test patch:
diff --git a/client_test.go b/client_test.go
index 2da9762..c9fb58c 100644
--- a/client_test.go
+++ b/client_test.go
@@ -13,7 +13,7 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 	"github.com/stretchr/testify/require"
 )
diff --git a/internal/allocation/allocation_manager_test.go b/internal/allocation/allocation_manager_test.go
index 132e091..e33c2c8 100644
--- a/internal/allocation/allocation_manager_test.go
+++ b/internal/allocation/allocation_manager_test.go
@@ -15,7 +15,7 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/internal/allocation/allocation_test.go b/internal/allocation/allocation_test.go
index e0e8af8..6c8caa8 100644
--- a/internal/allocation/allocation_test.go
+++ b/internal/allocation/allocation_test.go
@@ -14,8 +14,8 @@ import (
 	"time"
 
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/ipnet"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/ipnet"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/internal/allocation/channel_bind_test.go b/internal/allocation/channel_bind_test.go
index 9a1098f..342e761 100644
--- a/internal/allocation/channel_bind_test.go
+++ b/internal/allocation/channel_bind_test.go
@@ -8,7 +8,7 @@ import (
 	"testing"
 	"time"
 
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/proto"
 )
 
 func TestChannelBind(t *testing.T) {
diff --git a/internal/client/tcp_conn_test.go b/internal/client/tcp_conn_test.go
index c51bb54..c520577 100644
--- a/internal/client/tcp_conn_test.go
+++ b/internal/client/tcp_conn_test.go
@@ -10,8 +10,8 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/transport/v2"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/internal/server/turn_test.go b/internal/server/turn_test.go
index 879e397..4fc0830 100644
--- a/internal/server/turn_test.go
+++ b/internal/server/turn_test.go
@@ -14,8 +14,8 @@ import (
 
 	"github.com/pion/logging"
 	"github.com/pion/stun"
-	"github.com/pion/turn/v2/internal/allocation"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/turn/v3/internal/allocation"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/server_test.go b/server_test.go
index 255f3e2..6ae67aa 100644
--- a/server_test.go
+++ b/server_test.go
@@ -13,9 +13,9 @@ import (
 	"time"
 
 	"github.com/pion/logging"
-	"github.com/pion/transport/v2/test"
-	"github.com/pion/transport/v2/vnet"
-	"github.com/pion/turn/v2/internal/proto"
+	"github.com/pion/transport/v3/test"
+	"github.com/pion/transport/v3/vnet"
+	"github.com/pion/turn/v3/internal/proto"
 	"github.com/stretchr/testify/assert"
 )