diff --git a/.github/workflows/format-code-on-push.yml b/.github/workflows/format-code-on-push.yml
index a9c4f63cc..51ad44d03 100644
--- a/.github/workflows/format-code-on-push.yml
+++ b/.github/workflows/format-code-on-push.yml
@@ -28,7 +28,7 @@ jobs:
-s blank \
-s default \
-s dot \
- -s "prefix(github.com/gogf/gf/v2)" \
+ -s "prefix(github.com/gogf/gf/v3)" \
-s "prefix(github.com/gogf/gf/cmd)" \
-s "prefix(github.com/gogf/gf/contrib)" \
-s "prefix(github.com/gogf/gf/example)" \
diff --git a/.github/workflows/scripts/before_script.sh b/.github/workflows/scripts/before_script.sh
index d9851ef49..40de1a8ab 100644
--- a/.github/workflows/scripts/before_script.sh
+++ b/.github/workflows/scripts/before_script.sh
@@ -21,7 +21,7 @@ gci write \
-s blank \
-s default \
-s dot \
- -s "prefix(github.com/gogf/gf/v2)" \
+ -s "prefix(github.com/gogf/gf/v3)" \
-s "prefix(github.com/gogf/gf/cmd)" \
-s "prefix(github.com/gogf/gf/contrib)" \
-s "prefix(github.com/gogf/gf/example)" \
diff --git a/.github/workflows/scripts/replace_examples_gomod.sh b/.github/workflows/scripts/replace_examples_gomod.sh
index a34fc1abc..ab9d46c75 100755
--- a/.github/workflows/scripts/replace_examples_gomod.sh
+++ b/.github/workflows/scripts/replace_examples_gomod.sh
@@ -57,7 +57,7 @@ for file in `find ${workdir} -name go.mod`; do
[ -z "$dep" ] && continue
# Calculate the relative path for the replacement
- if [[ "$dep" == "github.com/gogf/gf/v2" ]]; then
+ if [[ "$dep" == "github.com/gogf/gf/v3" ]]; then
replacement="$relativePath"
else
# Extract the path after v2 and remove trailing version
diff --git a/.golangci.yml b/.golangci.yml
index f1512b2b3..e455e4062 100644
--- a/.golangci.yml
+++ b/.golangci.yml
@@ -116,7 +116,7 @@ linters-settings:
# A comma-separated list of prefixes, which, if set, checks import paths
# with the given prefixes are grouped after 3rd-party packages.
# Default: ""
- local-prefixes: github.com/gogf/gf/v2
+ local-prefixes: github.com/gogf/gf/v3
gci:
# Section configuration to compare against.
# Section names are case-insensitive and may contain parameters in ().
diff --git a/.make_version.sh b/.make_version.sh
index 95f9de8fe..533edfa28 100755
--- a/.make_version.sh
+++ b/.make_version.sh
@@ -57,13 +57,13 @@ for file in `find ${workdir} -name go.mod`; do
cd $goModPath
if [ $goModPath = "./cmd/gf" ]; then
mv go.work go.work.version.bak
- go mod edit -replace github.com/gogf/gf/v2=../../
- go mod edit -replace github.com/gogf/gf/contrib/drivers/clickhouse/v2=../../contrib/drivers/clickhouse
- go mod edit -replace github.com/gogf/gf/contrib/drivers/mssql/v2=../../contrib/drivers/mssql
- go mod edit -replace github.com/gogf/gf/contrib/drivers/mysql/v2=../../contrib/drivers/mysql
- go mod edit -replace github.com/gogf/gf/contrib/drivers/oracle/v2=../../contrib/drivers/oracle
- go mod edit -replace github.com/gogf/gf/contrib/drivers/pgsql/v2=../../contrib/drivers/pgsql
- go mod edit -replace github.com/gogf/gf/contrib/drivers/sqlite/v2=../../contrib/drivers/sqlite
+ go mod edit -replace github.com/gogf/gf/v3=../../
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/clickhouse/v3=../../contrib/drivers/clickhouse
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/mssql/v3=../../contrib/drivers/mssql
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/mysql/v3=../../contrib/drivers/mysql
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/oracle/v3=../../contrib/drivers/oracle
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/pgsql/v3=../../contrib/drivers/pgsql
+ go mod edit -replace github.com/gogf/gf/contrib/drivers/sqlite/v3=../../contrib/drivers/sqlite
fi
go mod tidy
# Remove toolchain line if exists
@@ -77,13 +77,13 @@ for file in `find ${workdir} -name go.mod`; do
# Remove toolchain line if exists
sed -i '' '/^toolchain/d' go.mod
if [ $goModPath = "./cmd/gf" ]; then
- go mod edit -dropreplace github.com/gogf/gf/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/clickhouse/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/mssql/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/mysql/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/oracle/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/pgsql/v2
- go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/sqlite/v2
+ go mod edit -dropreplace github.com/gogf/gf/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/clickhouse/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/mssql/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/mysql/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/oracle/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/pgsql/v3
+ go mod edit -dropreplace github.com/gogf/gf/contrib/drivers/sqlite/v3
mv go.work.version.bak go.work
fi
cd -
diff --git a/README.MD b/README.MD
index ddf70404e..02450f3d2 100644
--- a/README.MD
+++ b/README.MD
@@ -2,9 +2,9 @@

-[](https://pkg.go.dev/github.com/gogf/gf/v2)
+[](https://pkg.go.dev/github.com/gogf/gf/v3)
[](https://github.com/gogf/gf/actions/workflows/ci-main.yml)
-[](https://goreportcard.com/report/github.com/gogf/gf/v2)
+[](https://goreportcard.com/report/github.com/gogf/gf/v3)
[](https://codecov.io/gh/gogf/gf)
[](https://github.com/gogf/gf)
[](https://github.com/gogf/gf)
@@ -28,7 +28,7 @@ A powerful framework for faster, easier, and more efficient project development.
- GoFrame Official Site(en): [https://goframe.org/en](https://goframe.org/en)
- GoFrame Mirror Site(中文): [https://goframe.org.cn](https://goframe.org.cn)
- GoFrame Mirror Site(github pages): [https://pages.goframe.org](https://pages.goframe.org)
-- GoDoc API: [https://pkg.go.dev/github.com/gogf/gf/v2](https://pkg.go.dev/github.com/gogf/gf/v2)
+- GoDoc API: [https://pkg.go.dev/github.com/gogf/gf/v3](https://pkg.go.dev/github.com/gogf/gf/v3)
# Contributors
diff --git a/cmd/gf/README.MD b/cmd/gf/README.MD
index 863644d44..171d2825f 100644
--- a/cmd/gf/README.MD
+++ b/cmd/gf/README.MD
@@ -37,8 +37,8 @@ You can also install `gf` tool using pre-built binaries:
= v2.5.5)
+go install github.com/gogf/gf/cmd/gf/v3@latest # latest version
+go install github.com/gogf/gf/cmd/gf/v3@v2.5.5 # certain version(should be >= v2.5.5)
```
## 2. Commands
diff --git a/cmd/gf/gfcmd/gfcmd.go b/cmd/gf/gfcmd/gfcmd.go
index 44b38af4c..bb56ff573 100644
--- a/cmd/gf/gfcmd/gfcmd.go
+++ b/cmd/gf/gfcmd/gfcmd.go
@@ -11,19 +11,19 @@ import (
"context"
"runtime"
- _ "github.com/gogf/gf/cmd/gf/v2/internal/packed"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/packed"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/allyes"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/allyes"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
const cliFolderName = `hack`
diff --git a/cmd/gf/go.mod b/cmd/gf/go.mod
index 239932a1e..76dcd09bf 100644
--- a/cmd/gf/go.mod
+++ b/cmd/gf/go.mod
@@ -1,15 +1,15 @@
-module github.com/gogf/gf/cmd/gf/v2
+module github.com/gogf/gf/cmd/gf/v3
go 1.22
require (
- github.com/gogf/gf/contrib/drivers/clickhouse/v2 v2.9.0
- github.com/gogf/gf/contrib/drivers/mssql/v2 v2.9.0
- github.com/gogf/gf/contrib/drivers/mysql/v2 v2.9.0
- github.com/gogf/gf/contrib/drivers/oracle/v2 v2.9.0
- github.com/gogf/gf/contrib/drivers/pgsql/v2 v2.9.0
- github.com/gogf/gf/contrib/drivers/sqlite/v2 v2.9.0
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/contrib/drivers/clickhouse/v3 v3.0.0-alpha
+ github.com/gogf/gf/contrib/drivers/mssql/v3 v3.0.0-alpha
+ github.com/gogf/gf/contrib/drivers/mysql/v3 v3.0.0-alpha
+ github.com/gogf/gf/contrib/drivers/oracle/v3 v3.0.0-alpha
+ github.com/gogf/gf/contrib/drivers/pgsql/v3 v3.0.0-alpha
+ github.com/gogf/gf/contrib/drivers/sqlite/v3 v3.0.0-alpha
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/gogf/selfupdate v0.0.0-20231215043001-5c48c528462f
github.com/olekukonko/tablewriter v0.0.5
github.com/schollz/progressbar/v3 v3.15.0
diff --git a/cmd/gf/go.work b/cmd/gf/go.work
index 32a45696a..a7ff3efe9 100644
--- a/cmd/gf/go.work
+++ b/cmd/gf/go.work
@@ -10,11 +10,11 @@ use (
// =====================================================================================================
replace (
- github.com/gogf/gf/contrib/drivers/clickhouse/v2 => ../../contrib/drivers/clickhouse
- github.com/gogf/gf/contrib/drivers/mssql/v2 => ../../contrib/drivers/mssql
- github.com/gogf/gf/contrib/drivers/mysql/v2 => ../../contrib/drivers/mysql
- github.com/gogf/gf/contrib/drivers/oracle/v2 => ../../contrib/drivers/oracle
- github.com/gogf/gf/contrib/drivers/pgsql/v2 => ../../contrib/drivers/pgsql
- github.com/gogf/gf/contrib/drivers/sqlite/v2 => ../../contrib/drivers/sqlite
- github.com/gogf/gf/v2 => ../../
+ github.com/gogf/gf/contrib/drivers/clickhouse/v3 => ../../contrib/drivers/clickhouse
+ github.com/gogf/gf/contrib/drivers/mssql/v3 => ../../contrib/drivers/mssql
+ github.com/gogf/gf/contrib/drivers/mysql/v3 => ../../contrib/drivers/mysql
+ github.com/gogf/gf/contrib/drivers/oracle/v3 => ../../contrib/drivers/oracle
+ github.com/gogf/gf/contrib/drivers/pgsql/v3 => ../../contrib/drivers/pgsql
+ github.com/gogf/gf/contrib/drivers/sqlite/v3 => ../../contrib/drivers/sqlite
+ github.com/gogf/gf/v3 => ../../
)
diff --git a/cmd/gf/internal/cmd/cmd.go b/cmd/gf/internal/cmd/cmd.go
index 2da57110f..0e1ea7a8d 100644
--- a/cmd/gf/internal/cmd/cmd.go
+++ b/cmd/gf/internal/cmd/cmd.go
@@ -11,13 +11,13 @@ import (
"context"
"strings"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/service"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
// GF is the management object for `gf` command line tool.
diff --git a/cmd/gf/internal/cmd/cmd_build.go b/cmd/gf/internal/cmd/cmd_build.go
index 2454da574..df378e16c 100644
--- a/cmd/gf/internal/cmd/cmd_build.go
+++ b/cmd/gf/internal/cmd/cmd_build.go
@@ -15,19 +15,19 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gbuild"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gbuild"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
@@ -225,7 +225,7 @@ func (c cBuild) Index(ctx context.Context, in cBuildInput) (out *cBuildOutput, e
// Injected information by building flags.
ldFlags := fmt.Sprintf(
- `-X 'github.com/gogf/gf/v2/os/gbuild.builtInVarStr=%v'`,
+ `-X 'github.com/gogf/gf/v3/os/gbuild.builtInVarStr=%v'`,
c.getBuildInVarStr(ctx, in),
)
diff --git a/cmd/gf/internal/cmd/cmd_doc.go b/cmd/gf/internal/cmd/cmd_doc.go
index 2f5a012cb..d0ae886ce 100644
--- a/cmd/gf/internal/cmd/cmd_doc.go
+++ b/cmd/gf/internal/cmd/cmd_doc.go
@@ -16,11 +16,11 @@ import (
"path/filepath"
"time"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
const (
diff --git a/cmd/gf/internal/cmd/cmd_docker.go b/cmd/gf/internal/cmd/cmd_docker.go
index 20f8aade4..11b167893 100644
--- a/cmd/gf/internal/cmd/cmd_docker.go
+++ b/cmd/gf/internal/cmd/cmd_docker.go
@@ -11,13 +11,13 @@ import (
"fmt"
"runtime"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_env.go b/cmd/gf/internal/cmd/cmd_env.go
index 76251068e..519d54d06 100644
--- a/cmd/gf/internal/cmd/cmd_env.go
+++ b/cmd/gf/internal/cmd/cmd_env.go
@@ -12,12 +12,12 @@ import (
"github.com/olekukonko/tablewriter"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_fix.go b/cmd/gf/internal/cmd/cmd_fix.go
index 479252a73..ccfe9a0df 100644
--- a/cmd/gf/internal/cmd/cmd_fix.go
+++ b/cmd/gf/internal/cmd/cmd_fix.go
@@ -9,14 +9,14 @@ package cmd
import (
"context"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
@@ -93,7 +93,7 @@ func (c cFix) doFixV23(version string) error {
// gdb.TX from struct to interface.
content = gstr.Replace(content, "*gdb.TX", "gdb.TX")
// function name changes for package gtcp/gudp.
- if gstr.Contains(content, "/gf/v2/net/gtcp") || gstr.Contains(content, "/gf/v2/net/gudp") {
+ if gstr.Contains(content, "/gf/v3/net/gtcp") || gstr.Contains(content, "/gf/v3/net/gudp") {
content = gstr.ReplaceByMap(content, g.MapStrStr{
".SetSendDeadline": ".SetDeadlineSend",
".SetReceiveDeadline": ".SetDeadlineRecv",
diff --git a/cmd/gf/internal/cmd/cmd_gen.go b/cmd/gf/internal/cmd/cmd_gen.go
index 10f03dac5..1f3ffc800 100644
--- a/cmd/gf/internal/cmd/cmd_gen.go
+++ b/cmd/gf/internal/cmd/cmd_gen.go
@@ -7,8 +7,8 @@
package cmd
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gtag"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_gen_ctrl.go b/cmd/gf/internal/cmd/cmd_gen_ctrl.go
index 1fcc9eddf..2b48ce731 100644
--- a/cmd/gf/internal/cmd/cmd_gen_ctrl.go
+++ b/cmd/gf/internal/cmd/cmd_gen_ctrl.go
@@ -7,7 +7,7 @@
package cmd
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genctrl"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genctrl"
)
type (
diff --git a/cmd/gf/internal/cmd/cmd_gen_dao.go b/cmd/gf/internal/cmd/cmd_gen_dao.go
index 26edccfcc..acb20a478 100644
--- a/cmd/gf/internal/cmd/cmd_gen_dao.go
+++ b/cmd/gf/internal/cmd/cmd_gen_dao.go
@@ -17,7 +17,7 @@ import (
// do not add dm in cli pre-compilation,
// the dm driver does not support certain target platforms.
// _ "github.com/gogf/gf/contrib/drivers/dm/v2"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/gendao"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/gendao"
)
type (
diff --git a/cmd/gf/internal/cmd/cmd_gen_enums.go b/cmd/gf/internal/cmd/cmd_gen_enums.go
index 841f8ef1d..592608996 100644
--- a/cmd/gf/internal/cmd/cmd_gen_enums.go
+++ b/cmd/gf/internal/cmd/cmd_gen_enums.go
@@ -7,7 +7,7 @@
package cmd
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genenums"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genenums"
)
type (
diff --git a/cmd/gf/internal/cmd/cmd_gen_pb.go b/cmd/gf/internal/cmd/cmd_gen_pb.go
index 1557a60b9..910587e76 100644
--- a/cmd/gf/internal/cmd/cmd_gen_pb.go
+++ b/cmd/gf/internal/cmd/cmd_gen_pb.go
@@ -6,7 +6,7 @@
package cmd
-import "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genpb"
+import "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genpb"
type (
cGenPb = genpb.CGenPb
diff --git a/cmd/gf/internal/cmd/cmd_gen_pbentity.go b/cmd/gf/internal/cmd/cmd_gen_pbentity.go
index a78d6f772..16ae75db7 100644
--- a/cmd/gf/internal/cmd/cmd_gen_pbentity.go
+++ b/cmd/gf/internal/cmd/cmd_gen_pbentity.go
@@ -6,7 +6,7 @@
package cmd
-import "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genpbentity"
+import "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genpbentity"
type (
cGenPbEntity = genpbentity.CGenPbEntity
diff --git a/cmd/gf/internal/cmd/cmd_gen_service.go b/cmd/gf/internal/cmd/cmd_gen_service.go
index 6b3c038d4..90c467a7a 100644
--- a/cmd/gf/internal/cmd/cmd_gen_service.go
+++ b/cmd/gf/internal/cmd/cmd_gen_service.go
@@ -7,7 +7,7 @@
package cmd
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genservice"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genservice"
)
type (
diff --git a/cmd/gf/internal/cmd/cmd_init.go b/cmd/gf/internal/cmd/cmd_init.go
index 5b583345d..139483b55 100644
--- a/cmd/gf/internal/cmd/cmd_init.go
+++ b/cmd/gf/internal/cmd/cmd_init.go
@@ -12,17 +12,17 @@ import (
"os"
"strings"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/allyes"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/allyes"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
var (
@@ -152,8 +152,8 @@ func (c cInit) Index(ctx context.Context, in cInitInput) (out *cInitOutput, err
// Update the GoFrame version.
if in.Update {
mlog.Print("update goframe...")
- // go get -u github.com/gogf/gf/v2@latest
- updateCommand := `go get -u github.com/gogf/gf/v2@latest`
+ // go get -u github.com/gogf/gf/v3@latest
+ updateCommand := `go get -u github.com/gogf/gf/v3@latest`
if in.Name != "." {
updateCommand = fmt.Sprintf(`cd %s && %s`, in.Name, updateCommand)
}
diff --git a/cmd/gf/internal/cmd/cmd_install.go b/cmd/gf/internal/cmd/cmd_install.go
index 382ce72ca..c1cb0d86c 100644
--- a/cmd/gf/internal/cmd/cmd_install.go
+++ b/cmd/gf/internal/cmd/cmd_install.go
@@ -9,9 +9,9 @@ package cmd
import (
"context"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/frame/g"
- "github.com/gogf/gf/cmd/gf/v2/internal/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/service"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_pack.go b/cmd/gf/internal/cmd/cmd_pack.go
index a4472f12c..0f7556447 100644
--- a/cmd/gf/internal/cmd/cmd_pack.go
+++ b/cmd/gf/internal/cmd/cmd_pack.go
@@ -10,14 +10,14 @@ import (
"context"
"strings"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/allyes"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/allyes"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_run.go b/cmd/gf/internal/cmd/cmd_run.go
index 490a93a8b..1a23bb43a 100644
--- a/cmd/gf/internal/cmd/cmd_run.go
+++ b/cmd/gf/internal/cmd/cmd_run.go
@@ -14,16 +14,16 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_tpl.go b/cmd/gf/internal/cmd/cmd_tpl.go
index 8d4249087..14c9d1bc4 100644
--- a/cmd/gf/internal/cmd/cmd_tpl.go
+++ b/cmd/gf/internal/cmd/cmd_tpl.go
@@ -9,15 +9,15 @@ package cmd
import (
"context"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_up.go b/cmd/gf/internal/cmd/cmd_up.go
index 4a43e5b6a..291e3796e 100644
--- a/cmd/gf/internal/cmd/cmd_up.go
+++ b/cmd/gf/internal/cmd/cmd_up.go
@@ -13,15 +13,15 @@ import (
"github.com/gogf/selfupdate"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_version.go b/cmd/gf/internal/cmd/cmd_version.go
index 89e753cce..0bf68b1e2 100644
--- a/cmd/gf/internal/cmd/cmd_version.go
+++ b/cmd/gf/internal/cmd/cmd_version.go
@@ -14,16 +14,16 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gbuild"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gbuild"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_z_init_test.go b/cmd/gf/internal/cmd/cmd_z_init_test.go
index 1e71cbd8b..efe806f84 100644
--- a/cmd/gf/internal/cmd/cmd_z_init_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_init_test.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_build_test.go b/cmd/gf/internal/cmd/cmd_z_unit_build_test.go
index 339259691..59f480f52 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_build_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_build_test.go
@@ -9,10 +9,10 @@ package cmd
import (
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Build_Single(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_fix_test.go b/cmd/gf/internal/cmd/cmd_z_unit_fix_test.go
index ad53e4129..ed4e2e39f 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_fix_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_fix_test.go
@@ -9,7 +9,7 @@ package cmd
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Fix_doFixV25Content(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_ctrl_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_ctrl_test.go
index 55986b480..265948293 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_ctrl_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_ctrl_test.go
@@ -10,12 +10,12 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genctrl"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genctrl"
)
func Test_Gen_Ctrl_Default(t *testing.T) {
@@ -108,7 +108,7 @@ func Test_Gen_Ctrl_UseMerge_AddNewFile(t *testing.T) {
)
const testNewApiFile = `
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type DictTypeAddReq struct {
g.Meta
}
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_issue_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_issue_test.go
index 55c30d1bb..732ecaebc 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_issue_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_issue_test.go
@@ -11,16 +11,16 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/gendao"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/gendao"
)
// https://github.com/gogf/gf/issues/2572
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_sharding_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_sharding_test.go
index a20e92e53..a063c6947 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_sharding_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_sharding_test.go
@@ -9,13 +9,13 @@ package cmd
import (
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/gendao"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/gendao"
)
func Test_Gen_Dao_Sharding(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_test.go
index 8d20fe8c1..a9893f214 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_dao_test.go
@@ -11,14 +11,14 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/gendao"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/gendao"
)
func Test_Gen_Dao_Default(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_pb_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_pb_test.go
index 4ba3c179d..e9f9bc37e 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_pb_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_pb_test.go
@@ -10,12 +10,12 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genpb"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genpb"
)
func TestGenPbIssue3882(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_pbentity_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_pbentity_test.go
index 5ecb7b39c..ff0461361 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_pbentity_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_pbentity_test.go
@@ -11,13 +11,13 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genpbentity"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genpbentity"
)
func Test_Gen_Pbentity_Default(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/cmd_z_unit_gen_service_test.go b/cmd/gf/internal/cmd/cmd_z_unit_gen_service_test.go
index 40ee7158e..7301b284f 100644
--- a/cmd/gf/internal/cmd/cmd_z_unit_gen_service_test.go
+++ b/cmd/gf/internal/cmd/cmd_z_unit_gen_service_test.go
@@ -10,12 +10,12 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/genservice"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/genservice"
)
func Test_Gen_Service_Default(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl.go b/cmd/gf/internal/cmd/genctrl/genctrl.go
index 87d87766e..356ce7cc2 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl.go
@@ -9,13 +9,13 @@ package genctrl
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gtag"
)
const (
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_api_item.go b/cmd/gf/internal/cmd/genctrl/genctrl_api_item.go
index c502e3eea..45f473a58 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_api_item.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_api_item.go
@@ -9,7 +9,7 @@ package genctrl
import (
"fmt"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
type apiItem struct {
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse.go b/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse.go
index 9f87bf574..0f708e230 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse.go
@@ -13,8 +13,8 @@ import (
"go/printer"
"go/token"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
)
type structInfo struct {
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse_clear.go b/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse_clear.go
index a1bd7391b..6fdf25c2c 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse_clear.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_ast_parse_clear.go
@@ -13,7 +13,7 @@ import (
"go/printer"
"go/token"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
// getFuncInDst retrieves all function declarations and bodies in the file.
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_calculate.go b/cmd/gf/internal/cmd/genctrl/genctrl_calculate.go
index 8e53f9e5f..41252dd23 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_calculate.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_calculate.go
@@ -7,11 +7,11 @@
package genctrl
import (
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
func (c CGenCtrl) getApiItemsInSrc(apiModuleFolderPath string) (items []apiItem, err error) {
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl.go b/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl.go
index 047dbb740..44bd89b24 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl.go
@@ -11,13 +11,13 @@ import (
"path/filepath"
"strings"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
type controllerGenerator struct{}
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl_clear.go b/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl_clear.go
index fd493a73f..2c5b792b9 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl_clear.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_generate_ctrl_clear.go
@@ -9,10 +9,10 @@ package genctrl
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
type controllerClearer struct{}
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_generate_interface.go b/cmd/gf/internal/cmd/genctrl/genctrl_generate_interface.go
index dfd9fab57..02c46f2c7 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_generate_interface.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_generate_interface.go
@@ -10,16 +10,16 @@ import (
"fmt"
"path/filepath"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type apiInterfaceGenerator struct{}
diff --git a/cmd/gf/internal/cmd/genctrl/genctrl_generate_sdk.go b/cmd/gf/internal/cmd/genctrl/genctrl_generate_sdk.go
index df6996b08..747858bda 100644
--- a/cmd/gf/internal/cmd/genctrl/genctrl_generate_sdk.go
+++ b/cmd/gf/internal/cmd/genctrl/genctrl_generate_sdk.go
@@ -10,14 +10,14 @@ import (
"fmt"
"path/filepath"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
type apiSdkGenerator struct{}
diff --git a/cmd/gf/internal/cmd/gendao/gendao.go b/cmd/gf/internal/cmd/gendao/gendao.go
index 5c38c5c69..c28ca735e 100644
--- a/cmd/gf/internal/cmd/gendao/gendao.go
+++ b/cmd/gf/internal/cmd/gendao/gendao.go
@@ -13,19 +13,19 @@ import (
"golang.org/x/mod/modfile"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type (
@@ -258,19 +258,19 @@ func doGenDaoForArray(ctx context.Context, index int, in CGenDaoInput) {
func getImportPartContent(ctx context.Context, source string, isDo bool, appendImports []string) string {
var packageImportsArray = garray.NewStrArray()
if isDo {
- packageImportsArray.Append(`"github.com/gogf/gf/v2/frame/g"`)
+ packageImportsArray.Append(`"github.com/gogf/gf/v3/frame/g"`)
}
// Time package recognition.
if strings.Contains(source, "gtime.Time") {
- packageImportsArray.Append(`"github.com/gogf/gf/v2/os/gtime"`)
+ packageImportsArray.Append(`"github.com/gogf/gf/v3/os/gtime"`)
} else if strings.Contains(source, "time.Time") {
packageImportsArray.Append(`"time"`)
}
// Json type.
if strings.Contains(source, "gjson.Json") {
- packageImportsArray.Append(`"github.com/gogf/gf/v2/encoding/gjson"`)
+ packageImportsArray.Append(`"github.com/gogf/gf/v3/encoding/gjson"`)
}
// Check and update imports in go.mod
diff --git a/cmd/gf/internal/cmd/gendao/gendao_clear.go b/cmd/gf/internal/cmd/gendao/gendao_clear.go
index 181804641..7a63301b8 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_clear.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_clear.go
@@ -7,10 +7,10 @@
package gendao
import (
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
func doClear(items *CGenDaoInternalGenItems) {
diff --git a/cmd/gf/internal/cmd/gendao/gendao_dao.go b/cmd/gf/internal/cmd/gendao/gendao_dao.go
index 83b4c5a46..df1715ea8 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_dao.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_dao.go
@@ -15,15 +15,15 @@ import (
"github.com/olekukonko/tablewriter"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
func generateDao(ctx context.Context, in CGenDaoInternalInput) {
diff --git a/cmd/gf/internal/cmd/gendao/gendao_do.go b/cmd/gf/internal/cmd/gendao/gendao_do.go
index 98afd6d78..c62ff76f7 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_do.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_do.go
@@ -12,14 +12,14 @@ import (
"path/filepath"
"strings"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
func generateDo(ctx context.Context, in CGenDaoInternalInput) {
diff --git a/cmd/gf/internal/cmd/gendao/gendao_entity.go b/cmd/gf/internal/cmd/gendao/gendao_entity.go
index 8b059e810..1e06644bb 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_entity.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_entity.go
@@ -11,13 +11,13 @@ import (
"path/filepath"
"strings"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
func generateEntity(ctx context.Context, in CGenDaoInternalInput) {
diff --git a/cmd/gf/internal/cmd/gendao/gendao_structure.go b/cmd/gf/internal/cmd/gendao/gendao_structure.go
index 01f334cb9..9ccee940d 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_structure.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_structure.go
@@ -14,10 +14,10 @@ import (
"github.com/olekukonko/tablewriter"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
type generateStructDefinitionInput struct {
diff --git a/cmd/gf/internal/cmd/gendao/gendao_tag.go b/cmd/gf/internal/cmd/gendao/gendao_tag.go
index 0487184e0..e0b74b69e 100644
--- a/cmd/gf/internal/cmd/gendao/gendao_tag.go
+++ b/cmd/gf/internal/cmd/gendao/gendao_tag.go
@@ -7,8 +7,8 @@
package gendao
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gtag"
)
const (
diff --git a/cmd/gf/internal/cmd/genenums/genenums.go b/cmd/gf/internal/cmd/genenums/genenums.go
index a214072c2..9e61507c9 100644
--- a/cmd/gf/internal/cmd/genenums/genenums.go
+++ b/cmd/gf/internal/cmd/genenums/genenums.go
@@ -11,13 +11,13 @@ import (
"golang.org/x/tools/go/packages"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
type (
diff --git a/cmd/gf/internal/cmd/genenums/genenums_parser.go b/cmd/gf/internal/cmd/genenums/genenums_parser.go
index 21b9f96d9..14f4c3e21 100644
--- a/cmd/gf/internal/cmd/genenums/genenums_parser.go
+++ b/cmd/gf/internal/cmd/genenums/genenums_parser.go
@@ -12,9 +12,9 @@ import (
"golang.org/x/tools/go/packages"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const pkgLoadMode = 0xffffff
diff --git a/cmd/gf/internal/cmd/genpb/genpb.go b/cmd/gf/internal/cmd/genpb/genpb.go
index 9167f28d2..1e722788d 100644
--- a/cmd/gf/internal/cmd/genpb/genpb.go
+++ b/cmd/gf/internal/cmd/genpb/genpb.go
@@ -9,12 +9,12 @@ package genpb
import (
"context"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
type (
diff --git a/cmd/gf/internal/cmd/genpb/genpb_controller.go b/cmd/gf/internal/cmd/genpb/genpb_controller.go
index 5c365902a..7c9fceb26 100644
--- a/cmd/gf/internal/cmd/genpb/genpb_controller.go
+++ b/cmd/gf/internal/cmd/genpb/genpb_controller.go
@@ -11,12 +11,12 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type generateControllerInput struct {
diff --git a/cmd/gf/internal/cmd/genpb/genpb_tag.go b/cmd/gf/internal/cmd/genpb/genpb_tag.go
index 65a6c8ed7..e223c5e9f 100644
--- a/cmd/gf/internal/cmd/genpb/genpb_tag.go
+++ b/cmd/gf/internal/cmd/genpb/genpb_tag.go
@@ -10,14 +10,14 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type generateStructTagInput struct {
diff --git a/cmd/gf/internal/cmd/genpbentity/genpbentity.go b/cmd/gf/internal/cmd/genpbentity/genpbentity.go
index a552686d9..d56396298 100644
--- a/cmd/gf/internal/cmd/genpbentity/genpbentity.go
+++ b/cmd/gf/internal/cmd/genpbentity/genpbentity.go
@@ -16,21 +16,21 @@ import (
"github.com/olekukonko/tablewriter"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gtag"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type (
diff --git a/cmd/gf/internal/cmd/genservice/genservice.go b/cmd/gf/internal/cmd/genservice/genservice.go
index 568782a6c..5f03a4115 100644
--- a/cmd/gf/internal/cmd/genservice/genservice.go
+++ b/cmd/gf/internal/cmd/genservice/genservice.go
@@ -13,18 +13,18 @@ import (
"sync"
"sync/atomic"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gtag"
)
const (
diff --git a/cmd/gf/internal/cmd/genservice/genservice_ast_parse.go b/cmd/gf/internal/cmd/genservice/genservice_ast_parse.go
index 974ec7e6c..615096d19 100644
--- a/cmd/gf/internal/cmd/genservice/genservice_ast_parse.go
+++ b/cmd/gf/internal/cmd/genservice/genservice_ast_parse.go
@@ -12,15 +12,15 @@ import (
"go/token"
"strings"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
)
type pkgItem struct {
Alias string `eg:"gdbas"`
- Path string `eg:"github.com/gogf/gf/v2/database/gdb"`
- RawImport string `eg:"gdbas github.com/gogf/gf/v2/database/gdb"`
+ Path string `eg:"github.com/gogf/gf/v3/database/gdb"`
+ RawImport string `eg:"gdbas github.com/gogf/gf/v3/database/gdb"`
}
type funcItem struct {
@@ -199,7 +199,7 @@ func (c CGenService) parseImportPackages(node *ast.ImportSpec) (packages pkgItem
// getRealAlias retrieves the real alias of the package.
// If package is "github.com/gogf/gf", the alias is "gf".
-// If package is "github.com/gogf/gf/v2", the alias is "gf" instead of "v2".
+// If package is "github.com/gogf/gf/v3", the alias is "gf" instead of "v2".
func (c CGenService) getRealAlias(importPath string) (pkgName string) {
importPath = gstr.Trim(importPath, `"`)
parts := gstr.Split(importPath, "/")
diff --git a/cmd/gf/internal/cmd/genservice/genservice_calculate.go b/cmd/gf/internal/cmd/genservice/genservice_calculate.go
index 268585cb4..4b4891ba9 100644
--- a/cmd/gf/internal/cmd/genservice/genservice_calculate.go
+++ b/cmd/gf/internal/cmd/genservice/genservice_calculate.go
@@ -10,13 +10,13 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
func (c CGenService) calculateImportedItems(
diff --git a/cmd/gf/internal/cmd/genservice/genservice_generate.go b/cmd/gf/internal/cmd/genservice/genservice_generate.go
index cfb691ec7..d27067721 100644
--- a/cmd/gf/internal/cmd/genservice/genservice_generate.go
+++ b/cmd/gf/internal/cmd/genservice/genservice_generate.go
@@ -10,14 +10,14 @@ import (
"bytes"
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
type generateServiceFilesInput struct {
diff --git a/cmd/gf/internal/cmd/genservice/genservice_generate_template.go b/cmd/gf/internal/cmd/genservice/genservice_generate_template.go
index 5947908d9..adbf3f4ae 100644
--- a/cmd/gf/internal/cmd/genservice/genservice_generate_template.go
+++ b/cmd/gf/internal/cmd/genservice/genservice_generate_template.go
@@ -10,12 +10,12 @@ import (
"bytes"
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
)
func (c CGenService) generatePackageImports(generatedContent *bytes.Buffer, packageName string, imports []string) {
diff --git a/cmd/gf/internal/cmd/testdata/build/varmap/go.mod b/cmd/gf/internal/cmd/testdata/build/varmap/go.mod
index fce4e9089..0b91045b7 100644
--- a/cmd/gf/internal/cmd/testdata/build/varmap/go.mod
+++ b/cmd/gf/internal/cmd/testdata/build/varmap/go.mod
@@ -2,11 +2,11 @@ module github.com/gogf/gf/cmd/gf/cmd/gf/testdata/vardump/v2
go 1.22
-require github.com/gogf/gf/v2 v2.8.2
+require github.com/gogf/gf/v3 v2.8.2
require (
go.opentelemetry.io/otel v1.32.0 // indirect
go.opentelemetry.io/otel/trace v1.32.0 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../../../../../
+replace github.com/gogf/gf/v3 => ../../../../../../../
diff --git a/cmd/gf/internal/cmd/testdata/build/varmap/main.go b/cmd/gf/internal/cmd/testdata/build/varmap/main.go
index 788a885cd..776ef0dbd 100644
--- a/cmd/gf/internal/cmd/testdata/build/varmap/main.go
+++ b/cmd/gf/internal/cmd/testdata/build/varmap/main.go
@@ -3,7 +3,7 @@ package main
import (
"fmt"
- "github.com/gogf/gf/v2/os/gbuild"
+ "github.com/gogf/gf/v3/os/gbuild"
)
func main() {
diff --git a/cmd/gf/internal/cmd/testdata/fix/fix25_content.go b/cmd/gf/internal/cmd/testdata/fix/fix25_content.go
index 934ebd2a8..4aabd0afd 100644
--- a/cmd/gf/internal/cmd/testdata/fix/fix25_content.go
+++ b/cmd/gf/internal/cmd/testdata/fix/fix25_content.go
@@ -5,10 +5,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Hook_Multi(t *testing.T) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_add_new_ctrl_expect.gotest b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_add_new_ctrl_expect.gotest
index f6a0a55f7..b3c7a3804 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_add_new_ctrl_expect.gotest
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_add_new_ctrl_expect.gotest
@@ -7,7 +7,7 @@ package dict
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
)
type IDictV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_expect.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_expect.go
index 8c69b527c..870e21f2b 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_expect.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/dict_expect.go
@@ -7,7 +7,7 @@ package dict
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
)
type IDictV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1/dict_type.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1/dict_type.go
index 459ced86e..b383dd800 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1/dict_type.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1/dict_type.go
@@ -6,7 +6,7 @@
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type DictTypeAddPageReq struct {
g.Meta `path:"/dict/type/add" tags:"字典管理" method:"get" summary:"字典类型添加页面"`
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_new.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_new.go
index cf966e0f2..745c1bea7 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_new.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_new.go
@@ -5,7 +5,7 @@
package dict
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict"
)
type ControllerV1 struct{}
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_dict_type.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_dict_type.go
index 56b407945..a2dfa621a 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_dict_type.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_dict_type.go
@@ -3,10 +3,10 @@ package dict
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
)
func (c *ControllerV1) DictTypeAddPage(ctx context.Context, req *v1.DictTypeAddPageReq) (res *v1.DictTypeAddPageRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_test_new.gotest b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_test_new.gotest
index 12c2fad89..2c9b7e5e1 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_test_new.gotest
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_ctrl/controller/dict/dict_v1_test_new.gotest
@@ -3,10 +3,10 @@ package dict
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
)
func (c *ControllerV1) DictTypeAddPage(ctx context.Context, req *v1.DictTypeAddPageReq) (res *v1.DictTypeAddPageRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_add_new_ctrl_expect.gotest b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_add_new_ctrl_expect.gotest
index f6a0a55f7..b3c7a3804 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_add_new_ctrl_expect.gotest
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_add_new_ctrl_expect.gotest
@@ -7,7 +7,7 @@ package dict
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_ctrl/api/dict/v1"
)
type IDictV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_expect.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_expect.go
index c41eb0571..2e1382948 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_expect.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/dict_expect.go
@@ -7,7 +7,7 @@ package dict
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
)
type IDictV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1/dict_type.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1/dict_type.go
index 459ced86e..b383dd800 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1/dict_type.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1/dict_type.go
@@ -6,7 +6,7 @@
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type DictTypeAddPageReq struct {
g.Meta `path:"/dict/type/add" tags:"字典管理" method:"get" summary:"字典类型添加页面"`
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_new.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_new.go
index 8cf1e87fc..dcabc1aaa 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_new.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_new.go
@@ -5,7 +5,7 @@
package dict
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict"
)
type ControllerV1 struct{}
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_dict_type.go b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_dict_type.go
index 507d8e4be..c2dc214c8 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_dict_type.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_dict_type.go
@@ -3,10 +3,10 @@ package dict
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
)
func (c *ControllerV1) DictTypeAddPage(ctx context.Context, req *v1.DictTypeAddPageReq) (res *v1.DictTypeAddPageRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_test_new.gotest b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_test_new.gotest
index 13cac3c7c..e755843c5 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_test_new.gotest
+++ b/cmd/gf/internal/cmd/testdata/genctrl-merge/add_new_file/controller/dict/dict_v1_test_new.gotest
@@ -3,10 +3,10 @@ package dict
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl-merge/add_new_file/api/dict/v1"
)
func (c *ControllerV1) DictTypeAdd(ctx context.Context, req *v1.DictTypeAddReq) (res *v1.DictTypeAddRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/api/article/article_expect.go b/cmd/gf/internal/cmd/testdata/genctrl/api/article/article_expect.go
index 3fd161752..67818fcfc 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/api/article/article_expect.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/api/article/article_expect.go
@@ -7,8 +7,8 @@ package article
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v1"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v2"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v2"
)
type IArticleV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/edit.go b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/edit.go
index 195ceda0f..e04109802 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/edit.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/edit.go
@@ -6,7 +6,7 @@
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type (
// CreateReq add title.
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/get.go b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/get.go
index 36134f5f2..a758954e8 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/get.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v1/get.go
@@ -6,7 +6,7 @@
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type GetListReq struct {
g.Meta `path:"/article/list" method:"get" tags:"ArticleService"`
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v2/edit.go b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v2/edit.go
index 2ae206963..45451ac40 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/api/article/v2/edit.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/api/article/v2/edit.go
@@ -6,7 +6,7 @@
package v2
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type CreateReq struct {
g.Meta `path:"/article/create" method:"post" tags:"ArticleService"`
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_new.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_new.go
index d6b85c986..1046b85a8 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_new.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_new.go
@@ -5,7 +5,7 @@
package article
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article"
)
type ControllerV1 struct{}
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_create.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_create.go
index f5e39b5af..4ab548215 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_create.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_create.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v1"
)
// Create add title.
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_list.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_list.go
index 9f9b3cd88..48144fd82 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_list.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_list.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v1"
)
func (c *ControllerV1) GetList(ctx context.Context, req *v1.GetListReq) (res *v1.GetListRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_one.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_one.go
index 8b20a1dba..ec7b8e97e 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_one.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_get_one.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v1"
)
func (c *ControllerV1) GetOne(ctx context.Context, req *v1.GetOneReq) (res *v1.GetOneRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_update.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_update.go
index d01e8b865..102d30002 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_update.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v1_update.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v1"
)
func (c *ControllerV1) Update(ctx context.Context, req *v1.UpdateReq) (res *v1.UpdateRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_create.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_create.go
index 319407967..3d459c269 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_create.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_create.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v2"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v2"
)
func (c *ControllerV2) Create(ctx context.Context, req *v2.CreateReq) (res *v2.CreateRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_update.go b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_update.go
index 25a9d03ab..dfa8adbf1 100644
--- a/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_update.go
+++ b/cmd/gf/internal/cmd/testdata/genctrl/controller/article/article_v2_update.go
@@ -3,10 +3,10 @@ package article
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genctrl/api/article/v2"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genctrl/api/article/v2"
)
func (c *ControllerV2) Update(ctx context.Context, req *v2.UpdateReq) (res *v2.UpdateRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user/dao/internal/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user/dao/internal/table_user.go
index ea8bec0c6..403f01f6d 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user/dao/internal/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user/dao/internal/table_user.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// TableUserDao is the data access object for the table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/do/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/do/table_user.go
index 656fb9c3d..4d133afd8 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/do/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/do/table_user.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure of table table_user for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/entity/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/entity/table_user.go
index edde0adec..04af6d858 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/entity/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user/model/entity/table_user.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure for table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/dao/internal/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/dao/internal/table_user.go
index ea8bec0c6..403f01f6d 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/dao/internal/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/dao/internal/table_user.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// TableUserDao is the data access object for the table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/do/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/do/table_user.go
index 656fb9c3d..4d133afd8 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/do/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/do/table_user.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure of table table_user for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/entity/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/entity/table_user.go
index c447af20c..a89693c99 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/entity/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_field_mapping/model/entity/table_user.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
"github.com/shopspring/decimal"
)
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/dao/internal/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/dao/internal/table_user.go
index 6bdfc9183..1d2fcaeb2 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/dao/internal/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/dao/internal/table_user.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// TableUserDao is the data access object for the table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/do/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/do/table_user.go
index 75fcb5db1..a6db73dc5 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/do/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/do/table_user.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure of table table_user for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/entity/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/entity/table_user.go
index 67ff1831a..62158eb6a 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/entity/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_sqlite3/model/entity/table_user.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure for table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/dao/internal/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/dao/internal/table_user.go
index ea8bec0c6..403f01f6d 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/dao/internal/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/dao/internal/table_user.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// TableUserDao is the data access object for the table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/do/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/do/table_user.go
index 656fb9c3d..4d133afd8 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/do/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/do/table_user.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure of table table_user for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/entity/table_user.go b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/entity/table_user.go
index c447af20c..a89693c99 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/entity/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/gendao/generated_user_type_mapping/model/entity/table_user.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
"github.com/shopspring/decimal"
)
diff --git a/cmd/gf/internal/cmd/testdata/gendao/go.mod.txt b/cmd/gf/internal/cmd/testdata/gendao/go.mod.txt
index ca87c9631..8f87f8234 100644
--- a/cmd/gf/internal/cmd/testdata/gendao/go.mod.txt
+++ b/cmd/gf/internal/cmd/testdata/gendao/go.mod.txt
@@ -3,7 +3,7 @@ module for-gendao-test/pkg
go 1.20
require (
- github.com/gogf/gf/v2 v2.8.1
+ github.com/gogf/gf/v3 v2.8.1
github.com/shopspring/decimal v1.3.1
)
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/article/article.go b/cmd/gf/internal/cmd/testdata/genservice/logic/article/article.go
index 9ee049fab..b55e45c45 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/article/article.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/article/article.go
@@ -11,9 +11,9 @@ import (
"go/ast"
t "time"
- gdbalias "github.com/gogf/gf/v2/database/gdb"
+ gdbalias "github.com/gogf/gf/v3/database/gdb"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
)
type sArticle struct {
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/article/article_extra.go b/cmd/gf/internal/cmd/testdata/genservice/logic/article/article_extra.go
index 3d9c3d0fa..54b8614c1 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/article/article_extra.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/article/article_extra.go
@@ -9,7 +9,7 @@ package article
// import (
// "context"
//
-// "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+// "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
// )
import (
"context"
@@ -17,10 +17,10 @@ import (
/**
*
*/
- _ "github.com/gogf/gf/v2/os/gfile"
+ _ "github.com/gogf/gf/v3/os/gfile"
// This is a random comment
- gdbas "github.com/gogf/gf/v2/database/gdb"
+ gdbas "github.com/gogf/gf/v3/database/gdb"
)
// T1 random comment
@@ -54,7 +54,7 @@ func (s *sArticle) T3(ctx context.Context, b *gdbas.Model) (c, d *gdbas.Model, e
/* import (
* "context"
*
- * "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ * "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
*/
return nil, nil, nil
}
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_app.go b/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_app.go
index 300260cc0..d700c537a 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_app.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_app.go
@@ -9,7 +9,7 @@ package delivery
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
)
type sDeliveryApp struct{}
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_cluster.go b/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_cluster.go
index 4be21e775..814dc5041 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_cluster.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/delivery/delivery_cluster.go
@@ -9,7 +9,7 @@ package delivery
import (
"context"
- gdbas "github.com/gogf/gf/v2/database/gdb"
+ gdbas "github.com/gogf/gf/v3/database/gdb"
)
type sDeliveryCluster struct{}
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/logic_expect.go b/cmd/gf/internal/cmd/testdata/genservice/logic/logic_expect.go
index df1ebdae9..10f66e725 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/logic_expect.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/logic_expect.go
@@ -5,8 +5,8 @@
package logic
import (
- _ "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/article"
- _ "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/base"
- _ "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/delivery"
- _ "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/user"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/article"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/base"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/delivery"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/user"
)
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/user/supper_vip_user.go b/cmd/gf/internal/cmd/testdata/genservice/logic/user/supper_vip_user.go
index bb498295b..a51d0ff7f 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/user/supper_vip_user.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/user/supper_vip_user.go
@@ -3,7 +3,7 @@ package user
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
)
func init() {
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/user/user.go b/cmd/gf/internal/cmd/testdata/genservice/logic/user/user.go
index 1f0b57baf..7d721a417 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/user/user.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/user/user.go
@@ -9,8 +9,8 @@ package user
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/base"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/base"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
)
func init() {
diff --git a/cmd/gf/internal/cmd/testdata/genservice/logic/user/vip_user.go b/cmd/gf/internal/cmd/testdata/genservice/logic/user/vip_user.go
index 70516dfd8..2ed3eed3c 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/logic/user/vip_user.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/logic/user/vip_user.go
@@ -3,8 +3,8 @@ package user
import (
"context"
- bbb "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/logic/base"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/genservice/service"
+ bbb "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/logic/base"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/genservice/service"
)
func init() {
diff --git a/cmd/gf/internal/cmd/testdata/genservice/service/article.go b/cmd/gf/internal/cmd/testdata/genservice/service/article.go
index 0d1092463..fffc5d960 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/service/article.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/service/article.go
@@ -9,8 +9,8 @@ import (
"context"
"go/ast"
- gdbalias "github.com/gogf/gf/v2/database/gdb"
- gdbas "github.com/gogf/gf/v2/database/gdb"
+ gdbalias "github.com/gogf/gf/v3/database/gdb"
+ gdbas "github.com/gogf/gf/v3/database/gdb"
)
type (
diff --git a/cmd/gf/internal/cmd/testdata/genservice/service/delivery.go b/cmd/gf/internal/cmd/testdata/genservice/service/delivery.go
index 842ed88dd..fa9cf7399 100644
--- a/cmd/gf/internal/cmd/testdata/genservice/service/delivery.go
+++ b/cmd/gf/internal/cmd/testdata/genservice/service/delivery.go
@@ -8,7 +8,7 @@ package service
import (
"context"
- gdbas "github.com/gogf/gf/v2/database/gdb"
+ gdbas "github.com/gogf/gf/v3/database/gdb"
)
type (
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_3.go
index 58c955a88..655d933c1 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_3.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User3Dao is the data access object for the table user3.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_4.go
index 6cff35650..ee51dddcc 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/dao/internal/user_4.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User4Dao is the data access object for the table user4.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_3.go
index 14a1bf4e3..5de78e00e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_3.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User1 is the golang structure of table user1 for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_4.go
index 801977255..8e93ea48e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/model/do/user_4.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User2 is the golang structure of table user2 for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_3.go
index de4cd54fb..82b63aea8 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_3.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User1 is the golang structure for table user1.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_4.go
index 4727f6260..9f2d2c1a8 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2572/model/entity/user_4.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User2 is the golang structure for table user2.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_1.go b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_1.go
index 4951b4fda..e673236fe 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_1.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_1.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User1Dao is the data access object for the table user1.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_2.go b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_2.go
index 65c04197f..4f95cfe89 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_2.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_2.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User2Dao is the data access object for the table user2.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_3.go
index 58c955a88..655d933c1 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_3.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User3Dao is the data access object for the table user3.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_4.go
index 6cff35650..ee51dddcc 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/dao/internal/user_4.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// User4Dao is the data access object for the table user4.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_3.go
index 14a1bf4e3..5de78e00e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_3.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User1 is the golang structure of table user1 for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_4.go
index 801977255..8e93ea48e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/model/do/user_4.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User2 is the golang structure of table user2 for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_3.go b/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_3.go
index de4cd54fb..82b63aea8 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_3.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_3.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User1 is the golang structure for table user1.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_4.go b/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_4.go
index 4727f6260..9f2d2c1a8 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_4.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2616/model/entity/user_4.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// User2 is the golang structure for table user2.
diff --git a/cmd/gf/internal/cmd/testdata/issue/2746/issue_2746.go b/cmd/gf/internal/cmd/testdata/issue/2746/issue_2746.go
index af2b98cd5..be7c67a08 100644
--- a/cmd/gf/internal/cmd/testdata/issue/2746/issue_2746.go
+++ b/cmd/gf/internal/cmd/testdata/issue/2746/issue_2746.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
// Issue2746 is the golang structure for table issue2746.
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/hello.go b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/hello.go
index 206b2f54a..35c810d74 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/hello.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/hello.go
@@ -7,8 +7,8 @@ package hello
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3460/api/hello/v1"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3460/api/hello/v2"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3460/api/hello/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3460/api/hello/v2"
)
type IHelloV1 interface {
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v1/req.go b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v1/req.go
index 33c2795fe..46b221d1f 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v1/req.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v1/req.go
@@ -6,7 +6,7 @@
package v1
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type DictTypeAddPageReq struct {
g.Meta `path:"/dict/type/add" tags:"字典管理" method:"get" summary:"字典类型添加页面"`
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v2/req.go b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v2/req.go
index 2764c5397..e0c15e7d8 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v2/req.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/api/hello/v2/req.go
@@ -6,7 +6,7 @@
package v2
-import "github.com/gogf/gf/v2/frame/g"
+import "github.com/gogf/gf/v3/frame/g"
type DictTypeAddPageReq struct {
g.Meta `path:"/dict/type/add" tags:"字典管理" method:"get" summary:"字典类型添加页面"`
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_new.go b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_new.go
index 6774d9183..afff31aab 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_new.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_new.go
@@ -5,7 +5,7 @@
package hello
import (
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3460/api/hello"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3460/api/hello"
)
type ControllerV1 struct{}
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v1_req.go b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v1_req.go
index 1ff04f7b8..5e877357b 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v1_req.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v1_req.go
@@ -3,10 +3,10 @@ package hello
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3460/api/hello/v1"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3460/api/hello/v1"
)
func (c *ControllerV1) DictTypeAddPage(ctx context.Context, req *v1.DictTypeAddPageReq) (res *v1.DictTypeAddPageRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v2_req.go b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v2_req.go
index a38fb1f4b..87cb687c7 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v2_req.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3460/controller/hello/hello_v2_req.go
@@ -3,10 +3,10 @@ package hello
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3460/api/hello/v2"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3460/api/hello/v2"
)
func (c *ControllerV2) DictTypeAddPage(ctx context.Context, req *v2.DictTypeAddPageReq) (res *v2.DictTypeAddPageRes, err error) {
diff --git a/cmd/gf/internal/cmd/testdata/issue/3545/table_user.proto b/cmd/gf/internal/cmd/testdata/issue/3545/table_user.proto
index 2b95b4056..140c95de5 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3545/table_user.proto
+++ b/cmd/gf/internal/cmd/testdata/issue/3545/table_user.proto
@@ -6,7 +6,7 @@ syntax = "proto3";
package pbentity;
-option go_package = "github.com/gogf/gf/cmd/gf/v2/internal/cmd/api/pbentity";
+option go_package = "github.com/gogf/gf/cmd/gf/v3/internal/cmd/api/pbentity";
import "google/protobuf/timestamp.proto";
diff --git a/cmd/gf/internal/cmd/testdata/issue/3685/table_user.proto b/cmd/gf/internal/cmd/testdata/issue/3685/table_user.proto
index 803cfa81f..42cd1412e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3685/table_user.proto
+++ b/cmd/gf/internal/cmd/testdata/issue/3685/table_user.proto
@@ -6,7 +6,7 @@ syntax = "proto3";
package pbentity;
-option go_package = "github.com/gogf/gf/cmd/gf/v2/internal/cmd/api/pbentity";
+option go_package = "github.com/gogf/gf/cmd/gf/v3/internal/cmd/api/pbentity";
import "google/protobuf/struct.proto";
import "google/protobuf/timestamp.proto";
diff --git a/cmd/gf/internal/cmd/testdata/issue/3749/dao/internal/table_user.go b/cmd/gf/internal/cmd/testdata/issue/3749/dao/internal/table_user.go
index 9a3958bc9..130cc747d 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3749/dao/internal/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3749/dao/internal/table_user.go
@@ -7,8 +7,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// TableUserDao is the data access object for the table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/issue/3749/model/do/table_user.go b/cmd/gf/internal/cmd/testdata/issue/3749/model/do/table_user.go
index 6fe512a44..8f645317d 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3749/model/do/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3749/model/do/table_user.go
@@ -5,8 +5,8 @@
package do
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure of table table_user for DAO operations like Where/Data.
diff --git a/cmd/gf/internal/cmd/testdata/issue/3749/model/entity/table_user.go b/cmd/gf/internal/cmd/testdata/issue/3749/model/entity/table_user.go
index effe0ce2c..f5ff2d24e 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3749/model/entity/table_user.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3749/model/entity/table_user.go
@@ -5,7 +5,7 @@
package entity
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// TableUser is the golang structure for table table_user.
diff --git a/cmd/gf/internal/cmd/testdata/issue/3835/logic/issue3835/issue3835.go b/cmd/gf/internal/cmd/testdata/issue/3835/logic/issue3835/issue3835.go
index f54e54b3a..906f58bb5 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3835/logic/issue3835/issue3835.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3835/logic/issue3835/issue3835.go
@@ -3,7 +3,7 @@ package issue3835
import (
"context"
- "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3835/service"
+ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3835/service"
"github.com/gogf/gf/contrib/drivers/mysql/v2"
)
diff --git a/cmd/gf/internal/cmd/testdata/issue/3835/logic/logic.go b/cmd/gf/internal/cmd/testdata/issue/3835/logic/logic.go
index acb117df3..7fcc572d9 100644
--- a/cmd/gf/internal/cmd/testdata/issue/3835/logic/logic.go
+++ b/cmd/gf/internal/cmd/testdata/issue/3835/logic/logic.go
@@ -5,5 +5,5 @@
package logic
import (
- _ "github.com/gogf/gf/cmd/gf/v2/internal/cmd/testdata/issue/3835/logic/issue3835"
+ _ "github.com/gogf/gf/cmd/gf/v3/internal/cmd/testdata/issue/3835/logic/issue3835"
)
diff --git a/cmd/gf/internal/consts/consts_gen_ctrl_template.go b/cmd/gf/internal/consts/consts_gen_ctrl_template.go
index ac6ee7d88..7b9213172 100644
--- a/cmd/gf/internal/consts/consts_gen_ctrl_template.go
+++ b/cmd/gf/internal/consts/consts_gen_ctrl_template.go
@@ -40,8 +40,8 @@ package {Module}
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
"{ImportPath}"
)
@@ -57,8 +57,8 @@ package {Module}
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
"{ImportPath}"
)
diff --git a/cmd/gf/internal/consts/consts_gen_ctrl_template_sdk.go b/cmd/gf/internal/consts/consts_gen_ctrl_template_sdk.go
index f2c46701a..95c1de310 100644
--- a/cmd/gf/internal/consts/consts_gen_ctrl_template_sdk.go
+++ b/cmd/gf/internal/consts/consts_gen_ctrl_template_sdk.go
@@ -17,8 +17,8 @@ import (
"fmt"
"github.com/gogf/gf/contrib/sdk/httpclient/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gstr"
)
type implementer struct {
@@ -58,7 +58,7 @@ import (
"context"
"github.com/gogf/gf/contrib/sdk/httpclient/v2"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
{ImportPaths}
)
diff --git a/cmd/gf/internal/consts/consts_gen_dao_template_dao.go b/cmd/gf/internal/consts/consts_gen_dao_template_dao.go
index d1a82bc03..1a5ded1ec 100644
--- a/cmd/gf/internal/consts/consts_gen_dao_template_dao.go
+++ b/cmd/gf/internal/consts/consts_gen_dao_template_dao.go
@@ -66,8 +66,8 @@ package internal
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// {{.TplTableNameCamelCase}}Dao is the data access object for the table {{.TplTableName}}.
diff --git a/cmd/gf/internal/consts/consts_gen_enums_template.go b/cmd/gf/internal/consts/consts_gen_enums_template.go
index 947778709..a188f4c75 100644
--- a/cmd/gf/internal/consts/consts_gen_enums_template.go
+++ b/cmd/gf/internal/consts/consts_gen_enums_template.go
@@ -14,7 +14,7 @@ const TemplateGenEnums = `
package {PackageName}
import (
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/util/gtag"
)
func init() {
diff --git a/cmd/gf/internal/packed/template-mono-app.go b/cmd/gf/internal/packed/template-mono-app.go
index 46fb81ca9..61a4af9ce 100644
--- a/cmd/gf/internal/packed/template-mono-app.go
+++ b/cmd/gf/internal/packed/template-mono-app.go
@@ -1,6 +1,6 @@
package packed
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/cmd/gf/internal/packed/template-mono.go b/cmd/gf/internal/packed/template-mono.go
index 97f98f20c..8455ada26 100644
--- a/cmd/gf/internal/packed/template-mono.go
+++ b/cmd/gf/internal/packed/template-mono.go
@@ -1,6 +1,6 @@
package packed
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/cmd/gf/internal/packed/template-single.go b/cmd/gf/internal/packed/template-single.go
index c95abb834..214f06141 100644
--- a/cmd/gf/internal/packed/template-single.go
+++ b/cmd/gf/internal/packed/template-single.go
@@ -1,6 +1,6 @@
package packed
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/cmd/gf/internal/service/install.go b/cmd/gf/internal/service/install.go
index 63f4ee361..08c4658a9 100644
--- a/cmd/gf/internal/service/install.go
+++ b/cmd/gf/internal/service/install.go
@@ -11,17 +11,17 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/allyes"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/allyes"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
var (
diff --git a/cmd/gf/internal/utility/allyes/allyes.go b/cmd/gf/internal/utility/allyes/allyes.go
index f8f7d1ea4..dd6a789c8 100644
--- a/cmd/gf/internal/utility/allyes/allyes.go
+++ b/cmd/gf/internal/utility/allyes/allyes.go
@@ -7,8 +7,8 @@
package allyes
import (
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
)
const (
diff --git a/cmd/gf/internal/utility/mlog/mlog.go b/cmd/gf/internal/utility/mlog/mlog.go
index 7cbaa7699..ec49aabaf 100644
--- a/cmd/gf/internal/utility/mlog/mlog.go
+++ b/cmd/gf/internal/utility/mlog/mlog.go
@@ -9,9 +9,9 @@ package mlog
import (
"context"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/glog"
)
const (
diff --git a/cmd/gf/internal/utility/utils/utils.go b/cmd/gf/internal/utility/utils/utils.go
index 94047db19..6aa6ff09e 100644
--- a/cmd/gf/internal/utility/utils/utils.go
+++ b/cmd/gf/internal/utility/utils/utils.go
@@ -12,12 +12,12 @@ import (
"golang.org/x/tools/imports"
- "github.com/gogf/gf/cmd/gf/v2/internal/consts"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/cmd/gf/v3/internal/consts"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// GoFmt formats the source file and adds or removes import statements as necessary.
@@ -65,10 +65,10 @@ func IsFileDoNotEdit(filePath string) bool {
// ReplaceGeneratedContentGFV2 replaces generated go content from goframe v1 to v2.
func ReplaceGeneratedContentGFV2(folderPath string) (err error) {
return gfile.ReplaceDirFunc(func(path, content string) string {
- if gstr.Contains(content, `"github.com/gogf/gf`) && !gstr.Contains(content, `"github.com/gogf/gf/v2`) {
- content = gstr.Replace(content, `"github.com/gogf/gf"`, `"github.com/gogf/gf/v2"`)
- content = gstr.Replace(content, `"github.com/gogf/gf/`, `"github.com/gogf/gf/v2/`)
- content = gstr.Replace(content, `"github.com/gogf/gf/v2/contrib/`, `"github.com/gogf/gf/contrib/`)
+ if gstr.Contains(content, `"github.com/gogf/gf`) && !gstr.Contains(content, `"github.com/gogf/gf/v3`) {
+ content = gstr.Replace(content, `"github.com/gogf/gf"`, `"github.com/gogf/gf/v3"`)
+ content = gstr.Replace(content, `"github.com/gogf/gf/`, `"github.com/gogf/gf/v3/`)
+ content = gstr.Replace(content, `"github.com/gogf/gf/v3/contrib/`, `"github.com/gogf/gf/contrib/`)
return content
}
return content
diff --git a/cmd/gf/internal/utility/utils/utils_http_download.go b/cmd/gf/internal/utility/utils/utils_http_download.go
index 0b8bb6eb5..b69cb88ce 100644
--- a/cmd/gf/internal/utility/utils/utils_http_download.go
+++ b/cmd/gf/internal/utility/utils/utils_http_download.go
@@ -14,9 +14,9 @@ import (
"github.com/schollz/progressbar/v3"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
// HTTPDownloadFileWithPercent downloads target url file to local path with percent process printing.
diff --git a/cmd/gf/internal/utility/utils/utils_test.go b/cmd/gf/internal/utility/utils/utils_test.go
index c7c30fc29..c856136aa 100644
--- a/cmd/gf/internal/utility/utils/utils_test.go
+++ b/cmd/gf/internal/utility/utils/utils_test.go
@@ -10,9 +10,9 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/utils"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/utils"
)
func Test_GetModPath(t *testing.T) {
diff --git a/cmd/gf/main.go b/cmd/gf/main.go
index 31d3872eb..24c2dc6a5 100644
--- a/cmd/gf/main.go
+++ b/cmd/gf/main.go
@@ -7,11 +7,11 @@
package main
import (
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gctx"
- "github.com/gogf/gf/cmd/gf/v2/gfcmd"
- "github.com/gogf/gf/cmd/gf/v2/internal/utility/mlog"
+ "github.com/gogf/gf/cmd/gf/v3/gfcmd"
+ "github.com/gogf/gf/cmd/gf/v3/internal/utility/mlog"
)
func main() {
diff --git a/container/garray/garray_normal_any.go b/container/garray/garray_normal_any.go
index 0ce08bdaa..584f3afb5 100644
--- a/container/garray/garray_normal_any.go
+++ b/container/garray/garray_normal_any.go
@@ -12,15 +12,15 @@ import (
"math"
"sort"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
)
// Array is a golang array with rich features.
diff --git a/container/garray/garray_normal_int.go b/container/garray/garray_normal_int.go
index 16e59a71c..c0f6cf792 100644
--- a/container/garray/garray_normal_int.go
+++ b/container/garray/garray_normal_int.go
@@ -12,12 +12,12 @@ import (
"math"
"sort"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
)
// IntArray is a golang int array with rich features.
diff --git a/container/garray/garray_normal_str.go b/container/garray/garray_normal_str.go
index 559215963..1ddd82143 100644
--- a/container/garray/garray_normal_str.go
+++ b/container/garray/garray_normal_str.go
@@ -12,13 +12,13 @@ import (
"sort"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
)
// StrArray is a golang string array with rich features.
diff --git a/container/garray/garray_sorted_any.go b/container/garray/garray_sorted_any.go
index 8ab6e3ee5..faebca85c 100644
--- a/container/garray/garray_sorted_any.go
+++ b/container/garray/garray_sorted_any.go
@@ -12,14 +12,14 @@ import (
"math"
"sort"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
+ "github.com/gogf/gf/v3/util/gutil"
)
// SortedArray is a golang sorted array with rich features.
diff --git a/container/garray/garray_sorted_int.go b/container/garray/garray_sorted_int.go
index b9181aea3..1b652bb09 100644
--- a/container/garray/garray_sorted_int.go
+++ b/container/garray/garray_sorted_int.go
@@ -12,10 +12,10 @@ import (
"math"
"sort"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
)
// SortedIntArray is a golang sorted int array with rich features.
diff --git a/container/garray/garray_sorted_str.go b/container/garray/garray_sorted_str.go
index fa00b7c71..82374630e 100644
--- a/container/garray/garray_sorted_str.go
+++ b/container/garray/garray_sorted_str.go
@@ -12,11 +12,11 @@ import (
"sort"
"strings"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
)
// SortedStrArray is a golang sorted string array with rich features.
diff --git a/container/garray/garray_z_bench_any_test.go b/container/garray/garray_z_bench_any_test.go
index b316e23b5..d44499ded 100644
--- a/container/garray/garray_z_bench_any_test.go
+++ b/container/garray/garray_z_bench_any_test.go
@@ -9,7 +9,7 @@ package garray_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
+ "github.com/gogf/gf/v3/container/garray"
)
type anySortedArrayItem struct {
diff --git a/container/garray/garray_z_example_normal_any_test.go b/container/garray/garray_z_example_normal_any_test.go
index a115fcacf..2f5e66356 100644
--- a/container/garray/garray_z_example_normal_any_test.go
+++ b/container/garray/garray_z_example_normal_any_test.go
@@ -9,9 +9,9 @@ package garray_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
)
func ExampleNew() {
diff --git a/container/garray/garray_z_example_normal_int_test.go b/container/garray/garray_z_example_normal_int_test.go
index f60345540..05013532c 100644
--- a/container/garray/garray_z_example_normal_int_test.go
+++ b/container/garray/garray_z_example_normal_int_test.go
@@ -9,11 +9,11 @@ package garray_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleIntArray_Walk() {
diff --git a/container/garray/garray_z_example_normal_str_test.go b/container/garray/garray_z_example_normal_str_test.go
index a4daab3f2..3b7eeb2eb 100644
--- a/container/garray/garray_z_example_normal_str_test.go
+++ b/container/garray/garray_z_example_normal_str_test.go
@@ -10,12 +10,12 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleStrArray_Walk() {
diff --git a/container/garray/garray_z_example_sorted_str_test.go b/container/garray/garray_z_example_sorted_str_test.go
index bbd3a1aee..6e55b5a66 100644
--- a/container/garray/garray_z_example_sorted_str_test.go
+++ b/container/garray/garray_z_example_sorted_str_test.go
@@ -9,11 +9,11 @@ package garray_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleSortedStrArray_Walk() {
diff --git a/container/garray/garray_z_unit_all_basic_test.go b/container/garray/garray_z_unit_all_basic_test.go
index 1fff15620..ee8564463 100644
--- a/container/garray/garray_z_unit_all_basic_test.go
+++ b/container/garray/garray_z_unit_all_basic_test.go
@@ -12,10 +12,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Array_Var(t *testing.T) {
diff --git a/container/garray/garray_z_unit_normal_any_test.go b/container/garray/garray_z_unit_normal_any_test.go
index 5cce77949..78de125cf 100644
--- a/container/garray/garray_z_unit_normal_any_test.go
+++ b/container/garray/garray_z_unit_normal_any_test.go
@@ -12,12 +12,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Array_Basic(t *testing.T) {
diff --git a/container/garray/garray_z_unit_normal_int_test.go b/container/garray/garray_z_unit_normal_int_test.go
index d3f0a3d5c..8ca66608e 100644
--- a/container/garray/garray_z_unit_normal_int_test.go
+++ b/container/garray/garray_z_unit_normal_int_test.go
@@ -12,12 +12,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_IntArray_Basic(t *testing.T) {
diff --git a/container/garray/garray_z_unit_normal_str_test.go b/container/garray/garray_z_unit_normal_str_test.go
index 23a43c39b..a9a47c4dd 100644
--- a/container/garray/garray_z_unit_normal_str_test.go
+++ b/container/garray/garray_z_unit_normal_str_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_StrArray_Basic(t *testing.T) {
diff --git a/container/garray/garray_z_unit_sorted_any_test.go b/container/garray/garray_z_unit_sorted_any_test.go
index 70cf53dd3..71b37c78c 100644
--- a/container/garray/garray_z_unit_sorted_any_test.go
+++ b/container/garray/garray_z_unit_sorted_any_test.go
@@ -13,13 +13,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func TestSortedArray_NewSortedArrayFrom(t *testing.T) {
diff --git a/container/garray/garray_z_unit_sorted_int_test.go b/container/garray/garray_z_unit_sorted_int_test.go
index a4ebf4fe9..076054a35 100644
--- a/container/garray/garray_z_unit_sorted_int_test.go
+++ b/container/garray/garray_z_unit_sorted_int_test.go
@@ -12,12 +12,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestNewSortedIntArrayComparator(t *testing.T) {
diff --git a/container/garray/garray_z_unit_sorted_str_test.go b/container/garray/garray_z_unit_sorted_str_test.go
index d1fef5c99..7e446cc83 100644
--- a/container/garray/garray_z_unit_sorted_str_test.go
+++ b/container/garray/garray_z_unit_sorted_str_test.go
@@ -12,13 +12,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestNewSortedStrArrayComparator(t *testing.T) {
diff --git a/container/glist/glist.go b/container/glist/glist.go
index 9b5424666..12582d433 100644
--- a/container/glist/glist.go
+++ b/container/glist/glist.go
@@ -13,10 +13,10 @@ import (
"bytes"
"container/list"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
type (
diff --git a/container/glist/glist_z_example_test.go b/container/glist/glist_z_example_test.go
index 25781401a..10866036e 100644
--- a/container/glist/glist_z_example_test.go
+++ b/container/glist/glist_z_example_test.go
@@ -10,9 +10,9 @@ import (
"container/list"
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/frame/g"
)
func ExampleNew() {
diff --git a/container/glist/glist_z_unit_test.go b/container/glist/glist_z_unit_test.go
index d530f0973..b7f989f8f 100644
--- a/container/glist/glist_z_unit_test.go
+++ b/container/glist/glist_z_unit_test.go
@@ -10,9 +10,9 @@ import (
"container/list"
"testing"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func checkListLen(t *gtest.T, l *List, len int) bool {
diff --git a/container/gmap/gmap_hash_any_any_map.go b/container/gmap/gmap_hash_any_any_map.go
index 1cf02d139..ae50b09c3 100644
--- a/container/gmap/gmap_hash_any_any_map.go
+++ b/container/gmap/gmap_hash_any_any_map.go
@@ -9,12 +9,12 @@ package gmap
import (
"reflect"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// AnyAnyMap wraps map type `map[interface{}]interface{}` and provides more map features.
diff --git a/container/gmap/gmap_hash_int_any_map.go b/container/gmap/gmap_hash_int_any_map.go
index b2d43eca7..ff9fcde43 100644
--- a/container/gmap/gmap_hash_int_any_map.go
+++ b/container/gmap/gmap_hash_int_any_map.go
@@ -10,12 +10,12 @@ package gmap
import (
"reflect"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IntAnyMap implements map[int]interface{} with RWMutex that has switch.
diff --git a/container/gmap/gmap_hash_int_int_map.go b/container/gmap/gmap_hash_int_int_map.go
index 0a221e830..b2326dcda 100644
--- a/container/gmap/gmap_hash_int_int_map.go
+++ b/container/gmap/gmap_hash_int_int_map.go
@@ -7,10 +7,10 @@
package gmap
import (
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IntIntMap implements map[int]int with RWMutex that has switch.
diff --git a/container/gmap/gmap_hash_int_str_map.go b/container/gmap/gmap_hash_int_str_map.go
index 4e976111f..697149044 100644
--- a/container/gmap/gmap_hash_int_str_map.go
+++ b/container/gmap/gmap_hash_int_str_map.go
@@ -7,10 +7,10 @@
package gmap
import (
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IntStrMap implements map[int]string with RWMutex that has switch.
diff --git a/container/gmap/gmap_hash_str_any_map.go b/container/gmap/gmap_hash_str_any_map.go
index 60f60c218..f426bd469 100644
--- a/container/gmap/gmap_hash_str_any_map.go
+++ b/container/gmap/gmap_hash_str_any_map.go
@@ -10,12 +10,12 @@ package gmap
import (
"reflect"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// StrAnyMap implements map[string]interface{} with RWMutex that has switch.
diff --git a/container/gmap/gmap_hash_str_int_map.go b/container/gmap/gmap_hash_str_int_map.go
index c44d3e11e..5d3f7bf46 100644
--- a/container/gmap/gmap_hash_str_int_map.go
+++ b/container/gmap/gmap_hash_str_int_map.go
@@ -8,10 +8,10 @@
package gmap
import (
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// StrIntMap implements map[string]int with RWMutex that has switch.
diff --git a/container/gmap/gmap_hash_str_str_map.go b/container/gmap/gmap_hash_str_str_map.go
index 5665bdefb..1977417c1 100644
--- a/container/gmap/gmap_hash_str_str_map.go
+++ b/container/gmap/gmap_hash_str_str_map.go
@@ -8,10 +8,10 @@
package gmap
import (
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// StrStrMap implements map[string]string with RWMutex that has switch.
diff --git a/container/gmap/gmap_list_map.go b/container/gmap/gmap_list_map.go
index 3197a5cad..eecefc460 100644
--- a/container/gmap/gmap_list_map.go
+++ b/container/gmap/gmap_list_map.go
@@ -10,13 +10,13 @@ import (
"bytes"
"fmt"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// ListMap is a map that preserves insertion-order.
diff --git a/container/gmap/gmap_tree_map.go b/container/gmap/gmap_tree_map.go
index c81caa48a..852b96e0a 100644
--- a/container/gmap/gmap_tree_map.go
+++ b/container/gmap/gmap_tree_map.go
@@ -7,7 +7,7 @@
package gmap
import (
- "github.com/gogf/gf/v2/container/gtree"
+ "github.com/gogf/gf/v3/container/gtree"
)
// TreeMap based on red-black tree, alias of RedBlackTree.
diff --git a/container/gmap/gmap_z_basic_test.go b/container/gmap/gmap_z_basic_test.go
index 2bc7013a9..20add1dc0 100644
--- a/container/gmap/gmap_z_basic_test.go
+++ b/container/gmap/gmap_z_basic_test.go
@@ -9,9 +9,9 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func getValue() interface{} {
diff --git a/container/gmap/gmap_z_bench_maps_test.go b/container/gmap/gmap_z_bench_maps_test.go
index 62e56c6b6..ce5a3484b 100644
--- a/container/gmap/gmap_z_bench_maps_test.go
+++ b/container/gmap/gmap_z_bench_maps_test.go
@@ -11,8 +11,8 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/util/gutil"
)
var hashMap = gmap.New(true)
diff --git a/container/gmap/gmap_z_bench_safe_test.go b/container/gmap/gmap_z_bench_safe_test.go
index 9700a66bb..a7e120a31 100644
--- a/container/gmap/gmap_z_bench_safe_test.go
+++ b/container/gmap/gmap_z_bench_safe_test.go
@@ -12,7 +12,7 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
var anyAnyMap = gmap.NewAnyAnyMap(true)
diff --git a/container/gmap/gmap_z_bench_syncmap_test.go b/container/gmap/gmap_z_bench_syncmap_test.go
index 20f814a85..004b910e5 100644
--- a/container/gmap/gmap_z_bench_syncmap_test.go
+++ b/container/gmap/gmap_z_bench_syncmap_test.go
@@ -12,7 +12,7 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
var gm = gmap.NewIntIntMap(true)
diff --git a/container/gmap/gmap_z_bench_unsafe_test.go b/container/gmap/gmap_z_bench_unsafe_test.go
index c7f971f22..d2283d422 100644
--- a/container/gmap/gmap_z_bench_unsafe_test.go
+++ b/container/gmap/gmap_z_bench_unsafe_test.go
@@ -12,7 +12,7 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
var anyAnyMapUnsafe = gmap.New()
diff --git a/container/gmap/gmap_z_example_any_any_test.go b/container/gmap/gmap_z_example_any_any_test.go
index 67c032649..23d503a8e 100644
--- a/container/gmap/gmap_z_example_any_any_test.go
+++ b/container/gmap/gmap_z_example_any_any_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleAnyAnyMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_int_any_test.go b/container/gmap/gmap_z_example_int_any_test.go
index 92f7418b6..c575f63f8 100644
--- a/container/gmap/gmap_z_example_int_any_test.go
+++ b/container/gmap/gmap_z_example_int_any_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleIntAnyMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_int_int_test.go b/container/gmap/gmap_z_example_int_int_test.go
index fff14d922..36abfcc75 100644
--- a/container/gmap/gmap_z_example_int_int_test.go
+++ b/container/gmap/gmap_z_example_int_int_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleIntIntMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_list_test.go b/container/gmap/gmap_z_example_list_test.go
index 8e935fc52..9cea6d2d7 100644
--- a/container/gmap/gmap_z_example_list_test.go
+++ b/container/gmap/gmap_z_example_list_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleListMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_str_any_test.go b/container/gmap/gmap_z_example_str_any_test.go
index a71adaaab..0088e9289 100644
--- a/container/gmap/gmap_z_example_str_any_test.go
+++ b/container/gmap/gmap_z_example_str_any_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleStrAnyMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_str_int_test.go b/container/gmap/gmap_z_example_str_int_test.go
index 304e683c8..e22a1ee13 100644
--- a/container/gmap/gmap_z_example_str_int_test.go
+++ b/container/gmap/gmap_z_example_str_int_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleStrIntMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_str_str_test.go b/container/gmap/gmap_z_example_str_str_test.go
index e0849c1c4..0dbe1173f 100644
--- a/container/gmap/gmap_z_example_str_str_test.go
+++ b/container/gmap/gmap_z_example_str_str_test.go
@@ -9,10 +9,10 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
func ExampleStrStrMap_Iterator() {
diff --git a/container/gmap/gmap_z_example_test.go b/container/gmap/gmap_z_example_test.go
index 0acee4ab9..6d09813a3 100644
--- a/container/gmap/gmap_z_example_test.go
+++ b/container/gmap/gmap_z_example_test.go
@@ -9,8 +9,8 @@ package gmap_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleNew() {
diff --git a/container/gmap/gmap_z_unit_hash_any_any_test.go b/container/gmap/gmap_z_unit_hash_any_any_test.go
index 57be564d1..1fa9ce901 100644
--- a/container/gmap/gmap_z_unit_hash_any_any_test.go
+++ b/container/gmap/gmap_z_unit_hash_any_any_test.go
@@ -10,12 +10,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_AnyAnyMap_Var(t *testing.T) {
diff --git a/container/gmap/gmap_z_unit_hash_int_any_test.go b/container/gmap/gmap_z_unit_hash_int_any_test.go
index b73105411..d442fe966 100644
--- a/container/gmap/gmap_z_unit_hash_int_any_test.go
+++ b/container/gmap/gmap_z_unit_hash_int_any_test.go
@@ -9,12 +9,12 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func getAny() interface{} {
diff --git a/container/gmap/gmap_z_unit_hash_int_int_test.go b/container/gmap/gmap_z_unit_hash_int_int_test.go
index 4676aeee3..7feab3195 100644
--- a/container/gmap/gmap_z_unit_hash_int_int_test.go
+++ b/container/gmap/gmap_z_unit_hash_int_int_test.go
@@ -9,12 +9,12 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func getInt() int {
diff --git a/container/gmap/gmap_z_unit_hash_int_str_test.go b/container/gmap/gmap_z_unit_hash_int_str_test.go
index 96557ac0a..7c249858f 100644
--- a/container/gmap/gmap_z_unit_hash_int_str_test.go
+++ b/container/gmap/gmap_z_unit_hash_int_str_test.go
@@ -9,12 +9,12 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func getStr() string {
diff --git a/container/gmap/gmap_z_unit_hash_str_any_test.go b/container/gmap/gmap_z_unit_hash_str_any_test.go
index 70e6f1d83..63d9f01dd 100644
--- a/container/gmap/gmap_z_unit_hash_str_any_test.go
+++ b/container/gmap/gmap_z_unit_hash_str_any_test.go
@@ -10,12 +10,12 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_StrAnyMap_Var(t *testing.T) {
diff --git a/container/gmap/gmap_z_unit_hash_str_int_test.go b/container/gmap/gmap_z_unit_hash_str_int_test.go
index 6ae53adc8..0c0b7d6c2 100644
--- a/container/gmap/gmap_z_unit_hash_str_int_test.go
+++ b/container/gmap/gmap_z_unit_hash_str_int_test.go
@@ -10,12 +10,12 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_StrIntMap_Var(t *testing.T) {
diff --git a/container/gmap/gmap_z_unit_hash_str_str_test.go b/container/gmap/gmap_z_unit_hash_str_str_test.go
index ffa76b329..0ac7bb329 100644
--- a/container/gmap/gmap_z_unit_hash_str_str_test.go
+++ b/container/gmap/gmap_z_unit_hash_str_str_test.go
@@ -10,12 +10,12 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_StrStrMap_Var(t *testing.T) {
diff --git a/container/gmap/gmap_z_unit_list_map_test.go b/container/gmap/gmap_z_unit_list_map_test.go
index e1fe7099b..e2cf601b0 100644
--- a/container/gmap/gmap_z_unit_list_map_test.go
+++ b/container/gmap/gmap_z_unit_list_map_test.go
@@ -9,12 +9,12 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_ListMap_Var(t *testing.T) {
diff --git a/container/gmap/gmap_z_unit_tree_map_test.go b/container/gmap/gmap_z_unit_tree_map_test.go
index 67807b474..2ee732f29 100644
--- a/container/gmap/gmap_z_unit_tree_map_test.go
+++ b/container/gmap/gmap_z_unit_tree_map_test.go
@@ -9,12 +9,12 @@ package gmap_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_TreeMap_Var(t *testing.T) {
diff --git a/container/gpool/gpool.go b/container/gpool/gpool.go
index 355853b9c..b9dedaaaa 100644
--- a/container/gpool/gpool.go
+++ b/container/gpool/gpool.go
@@ -11,12 +11,12 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// Pool is an Object-Reusable Pool.
diff --git a/container/gpool/gpool_bench_test.go b/container/gpool/gpool_bench_test.go
index 2079adbdc..a352e7c5a 100644
--- a/container/gpool/gpool_bench_test.go
+++ b/container/gpool/gpool_bench_test.go
@@ -13,7 +13,7 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gpool"
+ "github.com/gogf/gf/v3/container/gpool"
)
var pool = gpool.New(time.Hour, nil)
diff --git a/container/gpool/gpool_z_example_test.go b/container/gpool/gpool_z_example_test.go
index 54509c839..fff340633 100644
--- a/container/gpool/gpool_z_example_test.go
+++ b/container/gpool/gpool_z_example_test.go
@@ -11,7 +11,7 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/container/gpool"
+ "github.com/gogf/gf/v3/container/gpool"
)
func ExampleNew() {
diff --git a/container/gpool/gpool_z_unit_test.go b/container/gpool/gpool_z_unit_test.go
index 7becbec56..1f964869c 100644
--- a/container/gpool/gpool_z_unit_test.go
+++ b/container/gpool/gpool_z_unit_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gpool"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gpool"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
var nf gpool.NewFunc = func() (i interface{}, e error) {
diff --git a/container/gqueue/gqueue.go b/container/gqueue/gqueue.go
index 5923db1b4..6c3959670 100644
--- a/container/gqueue/gqueue.go
+++ b/container/gqueue/gqueue.go
@@ -20,8 +20,8 @@ package gqueue
import (
"math"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gtype"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gtype"
)
// Queue is a concurrent-safe queue built on doubly linked list and channel.
diff --git a/container/gqueue/gqueue_z_bench_test.go b/container/gqueue/gqueue_z_bench_test.go
index 897b54d05..f8592a325 100644
--- a/container/gqueue/gqueue_z_bench_test.go
+++ b/container/gqueue/gqueue_z_bench_test.go
@@ -11,7 +11,7 @@ package gqueue_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gqueue"
+ "github.com/gogf/gf/v3/container/gqueue"
)
var bn = 20000000
diff --git a/container/gqueue/gqueue_z_example_test.go b/container/gqueue/gqueue_z_example_test.go
index 9a7d12fa4..dde0cb3ef 100644
--- a/container/gqueue/gqueue_z_example_test.go
+++ b/container/gqueue/gqueue_z_example_test.go
@@ -11,8 +11,8 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/container/gqueue"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/gqueue"
+ "github.com/gogf/gf/v3/os/gtimer"
)
func ExampleNew() {
diff --git a/container/gqueue/gqueue_z_unit_test.go b/container/gqueue/gqueue_z_unit_test.go
index cf87f7a48..ed8e3c4d5 100644
--- a/container/gqueue/gqueue_z_unit_test.go
+++ b/container/gqueue/gqueue_z_unit_test.go
@@ -12,8 +12,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gqueue"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gqueue"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestQueue_Len(t *testing.T) {
diff --git a/container/gring/gring.go b/container/gring/gring.go
index 3700bd044..67dc8f63a 100644
--- a/container/gring/gring.go
+++ b/container/gring/gring.go
@@ -12,8 +12,8 @@ package gring
import (
"container/ring"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/rwmutex"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/rwmutex"
)
// Ring is a struct of ring structure.
diff --git a/container/gring/gring_z_bench_test.go b/container/gring/gring_z_bench_test.go
index 46b6c6c51..2aa70df48 100644
--- a/container/gring/gring_z_bench_test.go
+++ b/container/gring/gring_z_bench_test.go
@@ -11,7 +11,7 @@ package gring_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gring"
+ "github.com/gogf/gf/v3/container/gring"
)
var length = 10000
diff --git a/container/gring/gring_z_example_test.go b/container/gring/gring_z_example_test.go
index b01ebb837..410aa235b 100644
--- a/container/gring/gring_z_example_test.go
+++ b/container/gring/gring_z_example_test.go
@@ -9,7 +9,7 @@ package gring_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gring"
+ "github.com/gogf/gf/v3/container/gring"
)
func ExampleNew() {
diff --git a/container/gring/gring_z_unit_test.go b/container/gring/gring_z_unit_test.go
index 002bd5f94..d7aa174e2 100644
--- a/container/gring/gring_z_unit_test.go
+++ b/container/gring/gring_z_unit_test.go
@@ -10,9 +10,9 @@ import (
"container/ring"
"testing"
- "github.com/gogf/gf/v2/container/gring"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gring"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
type Student struct {
diff --git a/container/gset/gset_any_set.go b/container/gset/gset_any_set.go
index 5bc58a27b..392afe1b8 100644
--- a/container/gset/gset_any_set.go
+++ b/container/gset/gset_any_set.go
@@ -10,10 +10,10 @@ package gset
import (
"bytes"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Set is consisted of interface{} items.
diff --git a/container/gset/gset_int_set.go b/container/gset/gset_int_set.go
index 08d979869..80db8e3f5 100644
--- a/container/gset/gset_int_set.go
+++ b/container/gset/gset_int_set.go
@@ -10,9 +10,9 @@ package gset
import (
"bytes"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IntSet is consisted of int items.
diff --git a/container/gset/gset_str_set.go b/container/gset/gset_str_set.go
index 6b880a74f..9853b943f 100644
--- a/container/gset/gset_str_set.go
+++ b/container/gset/gset_str_set.go
@@ -11,10 +11,10 @@ import (
"bytes"
"strings"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// StrSet is consisted of string items.
diff --git a/container/gset/gset_z_bench_test.go b/container/gset/gset_z_bench_test.go
index 53fb5610d..dad3cc694 100644
--- a/container/gset/gset_z_bench_test.go
+++ b/container/gset/gset_z_bench_test.go
@@ -12,7 +12,7 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/container/gset"
+ "github.com/gogf/gf/v3/container/gset"
)
var intSet = gset.NewIntSet(true)
diff --git a/container/gset/gset_z_example_any_test.go b/container/gset/gset_z_example_any_test.go
index 383ca07ac..73308014f 100644
--- a/container/gset/gset_z_example_any_test.go
+++ b/container/gset/gset_z_example_any_test.go
@@ -9,8 +9,8 @@ package gset_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
)
func ExampleSet_Intersect() {
diff --git a/container/gset/gset_z_example_int_test.go b/container/gset/gset_z_example_int_test.go
index 2462f472b..80c53086c 100644
--- a/container/gset/gset_z_example_int_test.go
+++ b/container/gset/gset_z_example_int_test.go
@@ -10,8 +10,8 @@ import (
"encoding/json"
"fmt"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
)
// New create and returns a new set, which contains un-repeated items.
diff --git a/container/gset/gset_z_example_str_test.go b/container/gset/gset_z_example_str_test.go
index 9bcc5d58b..efef5f5ba 100644
--- a/container/gset/gset_z_example_str_test.go
+++ b/container/gset/gset_z_example_str_test.go
@@ -10,8 +10,8 @@ import (
"encoding/json"
"fmt"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
)
// NewStrSet create and returns a new set, which contains un-repeated items.
diff --git a/container/gset/gset_z_unit_any_test.go b/container/gset/gset_z_unit_any_test.go
index 3fd89d70b..1a0721352 100644
--- a/container/gset/gset_z_unit_any_test.go
+++ b/container/gset/gset_z_unit_any_test.go
@@ -14,12 +14,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestSet_Var(t *testing.T) {
diff --git a/container/gset/gset_z_unit_int_test.go b/container/gset/gset_z_unit_int_test.go
index 9dcc4b3be..0a116604e 100644
--- a/container/gset/gset_z_unit_int_test.go
+++ b/container/gset/gset_z_unit_int_test.go
@@ -14,12 +14,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestIntSet_Var(t *testing.T) {
diff --git a/container/gset/gset_z_unit_str_test.go b/container/gset/gset_z_unit_str_test.go
index d5da71ab5..b5e409062 100644
--- a/container/gset/gset_z_unit_str_test.go
+++ b/container/gset/gset_z_unit_str_test.go
@@ -14,12 +14,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestStrSet_Var(t *testing.T) {
diff --git a/container/gtree/gtree.go b/container/gtree/gtree.go
index 185c7c020..1cb055e73 100644
--- a/container/gtree/gtree.go
+++ b/container/gtree/gtree.go
@@ -9,7 +9,7 @@
// Some implements are from: https://github.com/emirpasic/gods
package gtree
-import "github.com/gogf/gf/v2/container/gvar"
+import "github.com/gogf/gf/v3/container/gvar"
// iTree defines the interface for basic operations of a tree.
type iTree interface {
diff --git a/container/gtree/gtree_avltree.go b/container/gtree/gtree_avltree.go
index 0d21c131e..bd972c93b 100644
--- a/container/gtree/gtree_avltree.go
+++ b/container/gtree/gtree_avltree.go
@@ -11,10 +11,10 @@ import (
"github.com/emirpasic/gods/trees/avltree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
var _ iTree = (*AVLTree)(nil)
diff --git a/container/gtree/gtree_btree.go b/container/gtree/gtree_btree.go
index 1ae03a132..77930cec2 100644
--- a/container/gtree/gtree_btree.go
+++ b/container/gtree/gtree_btree.go
@@ -11,10 +11,10 @@ import (
"github.com/emirpasic/gods/trees/btree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
var _ iTree = (*BTree)(nil)
diff --git a/container/gtree/gtree_redblacktree.go b/container/gtree/gtree_redblacktree.go
index a94dc585e..2215c6615 100644
--- a/container/gtree/gtree_redblacktree.go
+++ b/container/gtree/gtree_redblacktree.go
@@ -11,12 +11,12 @@ import (
"github.com/emirpasic/gods/trees/redblacktree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
var _ iTree = (*RedBlackTree)(nil)
diff --git a/container/gtree/gtree_z_avl_tree_test.go b/container/gtree/gtree_z_avl_tree_test.go
index c46afa899..731dad6ba 100644
--- a/container/gtree/gtree_z_avl_tree_test.go
+++ b/container/gtree/gtree_z_avl_tree_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_AVLTree_Basic(t *testing.T) {
diff --git a/container/gtree/gtree_z_b_tree_test.go b/container/gtree/gtree_z_b_tree_test.go
index 3462d0060..90cb9c210 100644
--- a/container/gtree/gtree_z_b_tree_test.go
+++ b/container/gtree/gtree_z_b_tree_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_BTree_Basic(t *testing.T) {
diff --git a/container/gtree/gtree_z_example_avltree_test.go b/container/gtree/gtree_z_example_avltree_test.go
index 81e953954..fadcf76ac 100644
--- a/container/gtree/gtree_z_example_avltree_test.go
+++ b/container/gtree/gtree_z_example_avltree_test.go
@@ -9,10 +9,10 @@ package gtree_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleAVLTree_Clone() {
diff --git a/container/gtree/gtree_z_example_btree_test.go b/container/gtree/gtree_z_example_btree_test.go
index 4c06f058a..220a1298f 100644
--- a/container/gtree/gtree_z_example_btree_test.go
+++ b/container/gtree/gtree_z_example_btree_test.go
@@ -9,10 +9,10 @@ package gtree_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleBTree_Clone() {
diff --git a/container/gtree/gtree_z_example_redblacktree_test.go b/container/gtree/gtree_z_example_redblacktree_test.go
index c28ab5d1d..add8f9aff 100644
--- a/container/gtree/gtree_z_example_redblacktree_test.go
+++ b/container/gtree/gtree_z_example_redblacktree_test.go
@@ -9,10 +9,10 @@ package gtree_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleRedBlackTree_SetComparator() {
diff --git a/container/gtree/gtree_z_example_test.go b/container/gtree/gtree_z_example_test.go
index 410fbcf2a..21c1bff83 100644
--- a/container/gtree/gtree_z_example_test.go
+++ b/container/gtree/gtree_z_example_test.go
@@ -9,9 +9,9 @@ package gtree_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleNewAVLTree() {
diff --git a/container/gtree/gtree_z_redblack_tree_test.go b/container/gtree/gtree_z_redblack_tree_test.go
index fd1a3caff..59d2d0fbf 100644
--- a/container/gtree/gtree_z_redblack_tree_test.go
+++ b/container/gtree/gtree_z_redblack_tree_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func getValue() interface{} {
diff --git a/container/gtype/gtype_bool.go b/container/gtype/gtype_bool.go
index b85dfd912..3000b6ab5 100644
--- a/container/gtype/gtype_bool.go
+++ b/container/gtype/gtype_bool.go
@@ -10,7 +10,7 @@ import (
"bytes"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Bool is a struct for concurrent-safe operation for type bool.
diff --git a/container/gtype/gtype_byte.go b/container/gtype/gtype_byte.go
index 836231c57..4e2e0670e 100644
--- a/container/gtype/gtype_byte.go
+++ b/container/gtype/gtype_byte.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Byte is a struct for concurrent-safe operation for type byte.
diff --git a/container/gtype/gtype_bytes.go b/container/gtype/gtype_bytes.go
index e01ee4182..4cccabd51 100644
--- a/container/gtype/gtype_bytes.go
+++ b/container/gtype/gtype_bytes.go
@@ -11,8 +11,8 @@ import (
"encoding/base64"
"sync/atomic"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Bytes is a struct for concurrent-safe operation for type []byte.
diff --git a/container/gtype/gtype_float32.go b/container/gtype/gtype_float32.go
index 82289abbd..9267c8234 100644
--- a/container/gtype/gtype_float32.go
+++ b/container/gtype/gtype_float32.go
@@ -11,7 +11,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Float32 is a struct for concurrent-safe operation for type float32.
diff --git a/container/gtype/gtype_float64.go b/container/gtype/gtype_float64.go
index ce44abd15..b3caacd9e 100644
--- a/container/gtype/gtype_float64.go
+++ b/container/gtype/gtype_float64.go
@@ -11,7 +11,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Float64 is a struct for concurrent-safe operation for type float64.
diff --git a/container/gtype/gtype_int.go b/container/gtype/gtype_int.go
index 32a610fbe..f973d0be0 100644
--- a/container/gtype/gtype_int.go
+++ b/container/gtype/gtype_int.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Int is a struct for concurrent-safe operation for type int.
diff --git a/container/gtype/gtype_int32.go b/container/gtype/gtype_int32.go
index 58ad36a3b..465eed233 100644
--- a/container/gtype/gtype_int32.go
+++ b/container/gtype/gtype_int32.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Int32 is a struct for concurrent-safe operation for type int32.
diff --git a/container/gtype/gtype_int64.go b/container/gtype/gtype_int64.go
index 54e72c12d..f11fe3ebf 100644
--- a/container/gtype/gtype_int64.go
+++ b/container/gtype/gtype_int64.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Int64 is a struct for concurrent-safe operation for type int64.
diff --git a/container/gtype/gtype_interface.go b/container/gtype/gtype_interface.go
index 9e57abb6f..91a27a65f 100644
--- a/container/gtype/gtype_interface.go
+++ b/container/gtype/gtype_interface.go
@@ -9,9 +9,9 @@ package gtype
import (
"sync/atomic"
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Interface is a struct for concurrent-safe operation for type interface{}.
diff --git a/container/gtype/gtype_string.go b/container/gtype/gtype_string.go
index b753e0faa..0c253a2e6 100644
--- a/container/gtype/gtype_string.go
+++ b/container/gtype/gtype_string.go
@@ -10,7 +10,7 @@ import (
"bytes"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// String is a struct for concurrent-safe operation for type string.
diff --git a/container/gtype/gtype_uint.go b/container/gtype/gtype_uint.go
index fa00f472d..2b8404647 100644
--- a/container/gtype/gtype_uint.go
+++ b/container/gtype/gtype_uint.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Uint is a struct for concurrent-safe operation for type uint.
diff --git a/container/gtype/gtype_uint32.go b/container/gtype/gtype_uint32.go
index 58df2e2cd..6709a2b77 100644
--- a/container/gtype/gtype_uint32.go
+++ b/container/gtype/gtype_uint32.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Uint32 is a struct for concurrent-safe operation for type uint32.
diff --git a/container/gtype/gtype_uint64.go b/container/gtype/gtype_uint64.go
index 3b54eb63c..19e314bb1 100644
--- a/container/gtype/gtype_uint64.go
+++ b/container/gtype/gtype_uint64.go
@@ -10,7 +10,7 @@ import (
"strconv"
"sync/atomic"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Uint64 is a struct for concurrent-safe operation for type uint64.
diff --git a/container/gtype/gtype_z_bench_basic_test.go b/container/gtype/gtype_z_bench_basic_test.go
index 26f13bd0a..c9884fa92 100644
--- a/container/gtype/gtype_z_bench_basic_test.go
+++ b/container/gtype/gtype_z_bench_basic_test.go
@@ -13,8 +13,8 @@ import (
"sync/atomic"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/encoding/gbinary"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/encoding/gbinary"
)
var (
diff --git a/container/gtype/gtype_z_bench_json_test.go b/container/gtype/gtype_z_bench_json_test.go
index 42cd4dc5b..a2b4d2d40 100644
--- a/container/gtype/gtype_z_bench_json_test.go
+++ b/container/gtype/gtype_z_bench_json_test.go
@@ -11,8 +11,8 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
)
var (
diff --git a/container/gtype/gtype_z_unit_any_test.go b/container/gtype/gtype_z_unit_any_test.go
index ce5eb5f3e..4eee87477 100644
--- a/container/gtype/gtype_z_unit_any_test.go
+++ b/container/gtype/gtype_z_unit_any_test.go
@@ -9,10 +9,10 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Any(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_bool_test.go b/container/gtype/gtype_z_unit_bool_test.go
index 8174a250d..a12a30efe 100644
--- a/container/gtype/gtype_z_unit_bool_test.go
+++ b/container/gtype/gtype_z_unit_bool_test.go
@@ -9,10 +9,10 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Bool(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_byte_test.go b/container/gtype/gtype_z_unit_byte_test.go
index 72f1fcee7..4229e5d98 100644
--- a/container/gtype/gtype_z_unit_byte_test.go
+++ b/container/gtype/gtype_z_unit_byte_test.go
@@ -10,10 +10,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Byte(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_bytes_test.go b/container/gtype/gtype_z_unit_bytes_test.go
index 29e731c77..38c18161c 100644
--- a/container/gtype/gtype_z_unit_bytes_test.go
+++ b/container/gtype/gtype_z_unit_bytes_test.go
@@ -9,10 +9,10 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Bytes(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_float32_test.go b/container/gtype/gtype_z_unit_float32_test.go
index 26c5c5840..8c1a9edae 100644
--- a/container/gtype/gtype_z_unit_float32_test.go
+++ b/container/gtype/gtype_z_unit_float32_test.go
@@ -10,10 +10,10 @@ import (
"math"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Float32(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_float64_test.go b/container/gtype/gtype_z_unit_float64_test.go
index 1bc6b27b9..215b80d32 100644
--- a/container/gtype/gtype_z_unit_float64_test.go
+++ b/container/gtype/gtype_z_unit_float64_test.go
@@ -10,10 +10,10 @@ import (
"math"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Float64(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_int32_test.go b/container/gtype/gtype_z_unit_int32_test.go
index 445fabee9..9879cfbdc 100644
--- a/container/gtype/gtype_z_unit_int32_test.go
+++ b/container/gtype/gtype_z_unit_int32_test.go
@@ -11,10 +11,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Int32(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_int64_test.go b/container/gtype/gtype_z_unit_int64_test.go
index 1233f0f45..150adbab3 100644
--- a/container/gtype/gtype_z_unit_int64_test.go
+++ b/container/gtype/gtype_z_unit_int64_test.go
@@ -11,10 +11,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Int64(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_int_test.go b/container/gtype/gtype_z_unit_int_test.go
index 5bbbdbbdb..b071739fa 100644
--- a/container/gtype/gtype_z_unit_int_test.go
+++ b/container/gtype/gtype_z_unit_int_test.go
@@ -10,10 +10,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Int(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_interface_test.go b/container/gtype/gtype_z_unit_interface_test.go
index 29c66bb36..efd664a6d 100644
--- a/container/gtype/gtype_z_unit_interface_test.go
+++ b/container/gtype/gtype_z_unit_interface_test.go
@@ -9,10 +9,10 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Interface(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_string_test.go b/container/gtype/gtype_z_unit_string_test.go
index a7769110a..120a4fa4d 100644
--- a/container/gtype/gtype_z_unit_string_test.go
+++ b/container/gtype/gtype_z_unit_string_test.go
@@ -9,10 +9,10 @@ package gtype_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_String(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_uint32_test.go b/container/gtype/gtype_z_unit_uint32_test.go
index d1989a689..d1ef70cfe 100644
--- a/container/gtype/gtype_z_unit_uint32_test.go
+++ b/container/gtype/gtype_z_unit_uint32_test.go
@@ -11,10 +11,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Uint32(t *testing.T) {
diff --git a/container/gtype/gtype_z_unit_uint64_test.go b/container/gtype/gtype_z_unit_uint64_test.go
index 1cf407984..1f7016ce0 100644
--- a/container/gtype/gtype_z_unit_uint64_test.go
+++ b/container/gtype/gtype_z_unit_uint64_test.go
@@ -11,10 +11,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type Temp struct {
diff --git a/container/gtype/gtype_z_unit_uint_test.go b/container/gtype/gtype_z_unit_uint_test.go
index e4b6b957c..6069b3e81 100644
--- a/container/gtype/gtype_z_unit_uint_test.go
+++ b/container/gtype/gtype_z_unit_uint_test.go
@@ -10,10 +10,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Uint(t *testing.T) {
diff --git a/container/gvar/gvar.go b/container/gvar/gvar.go
index 07cd9af69..8c1986c52 100644
--- a/container/gvar/gvar.go
+++ b/container/gvar/gvar.go
@@ -8,8 +8,8 @@
package gvar
import (
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/json"
)
// Var is an universal variable type implementer.
diff --git a/container/gvar/gvar_basic.go b/container/gvar/gvar_basic.go
index b57b23557..cf2479959 100644
--- a/container/gvar/gvar_basic.go
+++ b/container/gvar/gvar_basic.go
@@ -7,8 +7,8 @@
package gvar
import (
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Val returns the current value of `v`.
diff --git a/container/gvar/gvar_copy.go b/container/gvar/gvar_copy.go
index a85d37482..17c7faefb 100644
--- a/container/gvar/gvar_copy.go
+++ b/container/gvar/gvar_copy.go
@@ -7,8 +7,8 @@
package gvar
import (
- "github.com/gogf/gf/v2/internal/deepcopy"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/deepcopy"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Copy does a deep copy of current Var and returns a pointer to this Var.
diff --git a/container/gvar/gvar_is.go b/container/gvar/gvar_is.go
index 497996cd9..4d95ae058 100644
--- a/container/gvar/gvar_is.go
+++ b/container/gvar/gvar_is.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// IsNil checks whether `v` is nil.
diff --git a/container/gvar/gvar_list.go b/container/gvar/gvar_list.go
index 1f24bca88..7630c5ec8 100644
--- a/container/gvar/gvar_list.go
+++ b/container/gvar/gvar_list.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/util/gutil"
)
// ListItemValues retrieves and returns the elements of all item struct/map with key `key`.
diff --git a/container/gvar/gvar_map.go b/container/gvar/gvar_map.go
index f56874d17..0bb58463b 100644
--- a/container/gvar/gvar_map.go
+++ b/container/gvar/gvar_map.go
@@ -6,7 +6,7 @@
package gvar
-import "github.com/gogf/gf/v2/util/gconv"
+import "github.com/gogf/gf/v3/util/gconv"
// MapOption specifies the option for map converting.
type MapOption = gconv.MapOption
diff --git a/container/gvar/gvar_scan.go b/container/gvar/gvar_scan.go
index 5c38bfbfe..713c1c935 100644
--- a/container/gvar/gvar_scan.go
+++ b/container/gvar/gvar_scan.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Scan automatically checks the type of `pointer` and converts value of Var to `pointer`.
diff --git a/container/gvar/gvar_set.go b/container/gvar/gvar_set.go
index a00b2a627..09f395012 100644
--- a/container/gvar/gvar_set.go
+++ b/container/gvar/gvar_set.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/container/gtype"
+ "github.com/gogf/gf/v3/container/gtype"
)
// Set sets `value` to `v`, and returns the old value.
diff --git a/container/gvar/gvar_slice.go b/container/gvar/gvar_slice.go
index 02a61aa2e..d5bb76360 100644
--- a/container/gvar/gvar_slice.go
+++ b/container/gvar/gvar_slice.go
@@ -6,7 +6,7 @@
package gvar
-import "github.com/gogf/gf/v2/util/gconv"
+import "github.com/gogf/gf/v3/util/gconv"
// Ints converts and returns `v` as []int.
func (v *Var) Ints() []int {
diff --git a/container/gvar/gvar_struct.go b/container/gvar/gvar_struct.go
index 30ca794b4..ca156fd4d 100644
--- a/container/gvar/gvar_struct.go
+++ b/container/gvar/gvar_struct.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Struct maps value of `v` to `pointer`.
diff --git a/container/gvar/gvar_time.go b/container/gvar/gvar_time.go
index 2f47ad081..f7f47728d 100644
--- a/container/gvar/gvar_time.go
+++ b/container/gvar/gvar_time.go
@@ -9,8 +9,8 @@ package gvar
import (
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Time converts and returns `v` as time.Time.
diff --git a/container/gvar/gvar_vars.go b/container/gvar/gvar_vars.go
index f566a782d..ae486cc3c 100644
--- a/container/gvar/gvar_vars.go
+++ b/container/gvar/gvar_vars.go
@@ -7,7 +7,7 @@
package gvar
import (
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Vars is a slice of *Var.
diff --git a/container/gvar/gvar_z_example_test.go b/container/gvar/gvar_z_example_test.go
index f3a7d804a..f65e4a65b 100644
--- a/container/gvar/gvar_z_example_test.go
+++ b/container/gvar/gvar_z_example_test.go
@@ -9,9 +9,9 @@ package gvar_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
)
// New
diff --git a/container/gvar/gvar_z_unit_basic_test.go b/container/gvar/gvar_z_unit_basic_test.go
index 80f930865..ac7fec46a 100644
--- a/container/gvar/gvar_z_unit_basic_test.go
+++ b/container/gvar/gvar_z_unit_basic_test.go
@@ -12,10 +12,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Set(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_is_test.go b/container/gvar/gvar_z_unit_is_test.go
index b3ce85dfb..188410a68 100644
--- a/container/gvar/gvar_z_unit_is_test.go
+++ b/container/gvar/gvar_z_unit_is_test.go
@@ -9,9 +9,9 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_IsNil(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_json_test.go b/container/gvar/gvar_z_unit_json_test.go
index 29ea08006..9f50d909c 100644
--- a/container/gvar/gvar_z_unit_json_test.go
+++ b/container/gvar/gvar_z_unit_json_test.go
@@ -10,9 +10,9 @@ import (
"math"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_Json(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_list_test.go b/container/gvar/gvar_z_unit_list_test.go
index ecb648e96..5ea944133 100644
--- a/container/gvar/gvar_z_unit_list_test.go
+++ b/container/gvar/gvar_z_unit_list_test.go
@@ -9,9 +9,9 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_ListItemValues_Map(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_map_test.go b/container/gvar/gvar_z_unit_map_test.go
index 8a47895af..838a02301 100644
--- a/container/gvar/gvar_z_unit_map_test.go
+++ b/container/gvar/gvar_z_unit_map_test.go
@@ -9,9 +9,9 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_Map(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_slice_test.go b/container/gvar/gvar_z_unit_slice_test.go
index 46531f036..921e02e3a 100644
--- a/container/gvar/gvar_z_unit_slice_test.go
+++ b/container/gvar/gvar_z_unit_slice_test.go
@@ -9,8 +9,8 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_Ints(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_struct_test.go b/container/gvar/gvar_z_unit_struct_test.go
index 7b9e12b49..4e3ab997e 100644
--- a/container/gvar/gvar_z_unit_struct_test.go
+++ b/container/gvar/gvar_z_unit_struct_test.go
@@ -9,10 +9,10 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestVar_Struct(t *testing.T) {
diff --git a/container/gvar/gvar_z_unit_vars_test.go b/container/gvar/gvar_z_unit_vars_test.go
index f4dd83f1c..780e580bf 100644
--- a/container/gvar/gvar_z_unit_vars_test.go
+++ b/container/gvar/gvar_z_unit_vars_test.go
@@ -9,9 +9,9 @@ package gvar_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVars(t *testing.T) {
diff --git a/contrib/config/apollo/README.MD b/contrib/config/apollo/README.MD
index 7223df82a..7d3147b46 100644
--- a/contrib/config/apollo/README.MD
+++ b/contrib/config/apollo/README.MD
@@ -20,8 +20,8 @@ package boot
import (
"github.com/gogf/gf/contrib/config/apollo/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func init() {
@@ -57,8 +57,8 @@ package main
import (
_ "github.com/gogf/gf/example/config/apollo/boot"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/config/apollo/apollo.go b/contrib/config/apollo/apollo.go
index 3c967c775..86fb17b4b 100644
--- a/contrib/config/apollo/apollo.go
+++ b/contrib/config/apollo/apollo.go
@@ -14,12 +14,12 @@ import (
apolloConfig "github.com/apolloconfig/agollo/v4/env/config"
"github.com/apolloconfig/agollo/v4/storage"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Config is the configuration object for apollo client.
diff --git a/contrib/config/apollo/apollo_test.go b/contrib/config/apollo/apollo_test.go
index 37b79c18d..27ff873fd 100644
--- a/contrib/config/apollo/apollo_test.go
+++ b/contrib/config/apollo/apollo_test.go
@@ -9,12 +9,12 @@ package apollo_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/config/apollo/v2"
+ "github.com/gogf/gf/contrib/config/apollo/v3"
)
var (
diff --git a/contrib/config/apollo/go.mod b/contrib/config/apollo/go.mod
index 8000cdbcc..53ff261cb 100644
--- a/contrib/config/apollo/go.mod
+++ b/contrib/config/apollo/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/config/apollo/v2
+module github.com/gogf/gf/contrib/config/apollo/v3
go 1.22
require (
github.com/apolloconfig/agollo/v4 v4.3.1
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
)
require (
@@ -45,4 +45,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/config/consul/README.md b/contrib/config/consul/README.md
index 12655eaa3..0de7f6a88 100644
--- a/contrib/config/consul/README.md
+++ b/contrib/config/consul/README.md
@@ -22,8 +22,8 @@ package boot
import (
consul "github.com/gogf/gf/contrib/config/consul/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
"github.com/hashicorp/consul/api"
"github.com/hashicorp/go-cleanhttp"
)
@@ -66,8 +66,8 @@ package main
import (
_ "github.com/gogf/gf/example/config/consul/boot"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/config/consul/consul.go b/contrib/config/consul/consul.go
index afb1cf29e..b393a4b77 100644
--- a/contrib/config/consul/consul.go
+++ b/contrib/config/consul/consul.go
@@ -14,11 +14,11 @@ import (
"github.com/hashicorp/consul/api"
"github.com/hashicorp/consul/api/watch"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/glog"
)
// Config is the configuration object for consul client.
diff --git a/contrib/config/consul/consul_test.go b/contrib/config/consul/consul_test.go
index 27fff6cab..28822f3e7 100644
--- a/contrib/config/consul/consul_test.go
+++ b/contrib/config/consul/consul_test.go
@@ -13,12 +13,12 @@ import (
"github.com/hashicorp/consul/api"
"github.com/hashicorp/go-cleanhttp"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- consul "github.com/gogf/gf/contrib/config/consul/v2"
+ consul "github.com/gogf/gf/contrib/config/consul/v3"
)
func TestConsul(t *testing.T) {
diff --git a/contrib/config/consul/go.mod b/contrib/config/consul/go.mod
index 49528da78..0234b08a9 100644
--- a/contrib/config/consul/go.mod
+++ b/contrib/config/consul/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/config/consul/v2
+module github.com/gogf/gf/contrib/config/consul/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/hashicorp/consul/api v1.24.0
github.com/hashicorp/go-cleanhttp v0.5.2
)
@@ -44,4 +44,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/config/kubecm/README.MD b/contrib/config/kubecm/README.MD
index cbabb3cac..4edc5bfa7 100644
--- a/contrib/config/kubecm/README.MD
+++ b/contrib/config/kubecm/README.MD
@@ -45,8 +45,8 @@ package boot
import (
"github.com/gogf/gf/contrib/config/kubecm/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
const (
@@ -79,8 +79,8 @@ package boot
import (
"github.com/gogf/gf/contrib/config/kubecm/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
"k8s.io/client-go/kubernetes"
)
@@ -132,8 +132,8 @@ package main
import (
_ "github.com/gogf/gf/example/config/kubecm/boot_in_pod"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/config/kubecm/go.mod b/contrib/config/kubecm/go.mod
index 0ae701bd3..597ea7dc0 100644
--- a/contrib/config/kubecm/go.mod
+++ b/contrib/config/kubecm/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/config/kubecm/v2
+module github.com/gogf/gf/contrib/config/kubecm/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
k8s.io/api v0.27.4
k8s.io/apimachinery v0.27.4
k8s.io/client-go v0.27.4
@@ -67,4 +67,4 @@ require (
sigs.k8s.io/yaml v1.3.0 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/config/kubecm/kubecm.go b/contrib/config/kubecm/kubecm.go
index 2be721d61..aa62996e9 100644
--- a/contrib/config/kubecm/kubecm.go
+++ b/contrib/config/kubecm/kubecm.go
@@ -16,11 +16,11 @@ import (
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Client implements gcfg.Adapter.
diff --git a/contrib/config/kubecm/kubecm_kube.go b/contrib/config/kubecm/kubecm_kube.go
index a2180b7e0..0865abe28 100644
--- a/contrib/config/kubecm/kubecm_kube.go
+++ b/contrib/config/kubecm/kubecm_kube.go
@@ -13,7 +13,7 @@ import (
"k8s.io/client-go/rest"
"k8s.io/client-go/tools/clientcmd"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
const (
diff --git a/contrib/config/kubecm/kubecm_test.go b/contrib/config/kubecm/kubecm_test.go
index d0e0ff435..1081a0aa6 100644
--- a/contrib/config/kubecm/kubecm_test.go
+++ b/contrib/config/kubecm/kubecm_test.go
@@ -13,14 +13,14 @@ import (
kubeMetaV1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/config/kubecm/v2"
+ "github.com/gogf/gf/contrib/config/kubecm/v3"
)
const (
diff --git a/contrib/config/nacos/README.MD b/contrib/config/nacos/README.MD
index 4035e61fa..04ba280c9 100644
--- a/contrib/config/nacos/README.MD
+++ b/contrib/config/nacos/README.MD
@@ -21,8 +21,8 @@ package boot
import (
"github.com/gogf/gf/contrib/config/nacos/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
"github.com/nacos-group/nacos-sdk-go/v2/common/constant"
"github.com/nacos-group/nacos-sdk-go/v2/vo"
)
@@ -69,8 +69,8 @@ package main
import (
_ "github.com/gogf/gf/example/config/nacos/boot"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/config/nacos/go.mod b/contrib/config/nacos/go.mod
index 6f64a34b1..110971089 100644
--- a/contrib/config/nacos/go.mod
+++ b/contrib/config/nacos/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/config/nacos/v2
+module github.com/gogf/gf/contrib/config/nacos/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/nacos-group/nacos-sdk-go/v2 v2.2.5
)
@@ -67,4 +67,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/config/nacos/nacos.go b/contrib/config/nacos/nacos.go
index a952fb3fb..af77bfb05 100644
--- a/contrib/config/nacos/nacos.go
+++ b/contrib/config/nacos/nacos.go
@@ -15,10 +15,10 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/common/constant"
"github.com/nacos-group/nacos-sdk-go/v2/vo"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
)
// Config is the configuration object for nacos client.
diff --git a/contrib/config/nacos/nacos_test.go b/contrib/config/nacos/nacos_test.go
index 473a81747..16f276210 100644
--- a/contrib/config/nacos/nacos_test.go
+++ b/contrib/config/nacos/nacos_test.go
@@ -14,13 +14,13 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/common/constant"
"github.com/nacos-group/nacos-sdk-go/v2/vo"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/config/nacos/v2"
+ "github.com/gogf/gf/contrib/config/nacos/v3"
)
var (
diff --git a/contrib/config/polaris/README.MD b/contrib/config/polaris/README.MD
index 58a1da031..dd3963e73 100644
--- a/contrib/config/polaris/README.MD
+++ b/contrib/config/polaris/README.MD
@@ -21,8 +21,8 @@ package boot
import (
"github.com/gogf/gf/contrib/config/polaris/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func init() {
@@ -63,8 +63,8 @@ package main
import (
_ "github.com/gogf/gf/example/config/polaris/boot"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/config/polaris/go.mod b/contrib/config/polaris/go.mod
index 0f6c978ef..a696c7447 100644
--- a/contrib/config/polaris/go.mod
+++ b/contrib/config/polaris/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/config/polaris/v2
+module github.com/gogf/gf/contrib/config/polaris/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/polarismesh/polaris-go v1.5.8
)
@@ -58,4 +58,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/config/polaris/polaris.go b/contrib/config/polaris/polaris.go
index 1f9d6ee05..1dabf51bd 100644
--- a/contrib/config/polaris/polaris.go
+++ b/contrib/config/polaris/polaris.go
@@ -14,11 +14,11 @@ import (
"github.com/polarismesh/polaris-go/api"
"github.com/polarismesh/polaris-go/pkg/model"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Config is the configuration for polaris.
diff --git a/contrib/drivers/clickhouse/clickhouse.go b/contrib/drivers/clickhouse/clickhouse.go
index e0dbc24fa..ddd3bfcf4 100644
--- a/contrib/drivers/clickhouse/clickhouse.go
+++ b/contrib/drivers/clickhouse/clickhouse.go
@@ -11,8 +11,8 @@ import (
"context"
"errors"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/os/gctx"
)
// Driver is the driver for postgresql database.
diff --git a/contrib/drivers/clickhouse/clickhouse_convert.go b/contrib/drivers/clickhouse/clickhouse_convert.go
index 7540bb042..d227fa674 100644
--- a/contrib/drivers/clickhouse/clickhouse_convert.go
+++ b/contrib/drivers/clickhouse/clickhouse_convert.go
@@ -14,7 +14,7 @@ import (
"github.com/google/uuid"
"github.com/shopspring/decimal"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// ConvertValueForField converts value to the type of the record field.
diff --git a/contrib/drivers/clickhouse/clickhouse_do_commit.go b/contrib/drivers/clickhouse/clickhouse_do_commit.go
index 6bd20b454..904176dfd 100644
--- a/contrib/drivers/clickhouse/clickhouse_do_commit.go
+++ b/contrib/drivers/clickhouse/clickhouse_do_commit.go
@@ -9,7 +9,7 @@ package clickhouse
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoCommit commits current sql and arguments to underlying sql driver.
diff --git a/contrib/drivers/clickhouse/clickhouse_do_delete.go b/contrib/drivers/clickhouse/clickhouse_do_delete.go
index e75d213fc..45f113814 100644
--- a/contrib/drivers/clickhouse/clickhouse_do_delete.go
+++ b/contrib/drivers/clickhouse/clickhouse_do_delete.go
@@ -10,7 +10,7 @@ import (
"context"
"database/sql"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoDelete does "DELETE FROM ... " statement for the table.
diff --git a/contrib/drivers/clickhouse/clickhouse_do_filter.go b/contrib/drivers/clickhouse/clickhouse_do_filter.go
index bb2ca2a17..d6b3e85ed 100644
--- a/contrib/drivers/clickhouse/clickhouse_do_filter.go
+++ b/contrib/drivers/clickhouse/clickhouse_do_filter.go
@@ -11,8 +11,8 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
)
// DoFilter handles the sql before posts it to database.
diff --git a/contrib/drivers/clickhouse/clickhouse_do_insert.go b/contrib/drivers/clickhouse/clickhouse_do_insert.go
index efa076305..61174e384 100644
--- a/contrib/drivers/clickhouse/clickhouse_do_insert.go
+++ b/contrib/drivers/clickhouse/clickhouse_do_insert.go
@@ -12,7 +12,7 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoInsert inserts or updates data for given table.
diff --git a/contrib/drivers/clickhouse/clickhouse_do_update.go b/contrib/drivers/clickhouse/clickhouse_do_update.go
index b1d82e66c..5f3301135 100644
--- a/contrib/drivers/clickhouse/clickhouse_do_update.go
+++ b/contrib/drivers/clickhouse/clickhouse_do_update.go
@@ -10,7 +10,7 @@ import (
"context"
"database/sql"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoUpdate does "UPDATE ... " statement for the table.
diff --git a/contrib/drivers/clickhouse/clickhouse_open.go b/contrib/drivers/clickhouse/clickhouse_open.go
index 7cf076d09..61cd85a71 100644
--- a/contrib/drivers/clickhouse/clickhouse_open.go
+++ b/contrib/drivers/clickhouse/clickhouse_open.go
@@ -11,9 +11,9 @@ import (
"fmt"
"net/url"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Open creates and returns an underlying sql.DB object for clickhouse.
diff --git a/contrib/drivers/clickhouse/clickhouse_table_fields.go b/contrib/drivers/clickhouse/clickhouse_table_fields.go
index 9617fd9ca..69199611f 100644
--- a/contrib/drivers/clickhouse/clickhouse_table_fields.go
+++ b/contrib/drivers/clickhouse/clickhouse_table_fields.go
@@ -10,9 +10,9 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gutil"
)
const (
diff --git a/contrib/drivers/clickhouse/clickhouse_tables.go b/contrib/drivers/clickhouse/clickhouse_tables.go
index ecb8b18b2..bd3a48644 100644
--- a/contrib/drivers/clickhouse/clickhouse_tables.go
+++ b/contrib/drivers/clickhouse/clickhouse_tables.go
@@ -10,7 +10,7 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/clickhouse/clickhouse_transaction.go b/contrib/drivers/clickhouse/clickhouse_transaction.go
index f3f3820a4..46f47ee88 100644
--- a/contrib/drivers/clickhouse/clickhouse_transaction.go
+++ b/contrib/drivers/clickhouse/clickhouse_transaction.go
@@ -9,7 +9,7 @@ package clickhouse
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Begin starts and returns the transaction object.
diff --git a/contrib/drivers/clickhouse/clickhouse_z_unit_db_test.go b/contrib/drivers/clickhouse/clickhouse_z_unit_db_test.go
index fc8d62fb8..cb495c01e 100644
--- a/contrib/drivers/clickhouse/clickhouse_z_unit_db_test.go
+++ b/contrib/drivers/clickhouse/clickhouse_z_unit_db_test.go
@@ -10,9 +10,9 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_DB_Ping(t *testing.T) {
diff --git a/contrib/drivers/clickhouse/clickhouse_z_unit_init_test.go b/contrib/drivers/clickhouse/clickhouse_z_unit_init_test.go
index ab775d818..d2a643617 100644
--- a/contrib/drivers/clickhouse/clickhouse_z_unit_init_test.go
+++ b/contrib/drivers/clickhouse/clickhouse_z_unit_init_test.go
@@ -10,11 +10,11 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/contrib/drivers/clickhouse/clickhouse_z_unit_issue_test.go b/contrib/drivers/clickhouse/clickhouse_z_unit_issue_test.go
index 78fc2fa32..c8e0e245f 100644
--- a/contrib/drivers/clickhouse/clickhouse_z_unit_issue_test.go
+++ b/contrib/drivers/clickhouse/clickhouse_z_unit_issue_test.go
@@ -11,10 +11,10 @@ import (
"github.com/shopspring/decimal"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Issue2584(t *testing.T) {
diff --git a/contrib/drivers/clickhouse/clickhouse_z_unit_model_test.go b/contrib/drivers/clickhouse/clickhouse_z_unit_model_test.go
index 31600e676..09536a676 100644
--- a/contrib/drivers/clickhouse/clickhouse_z_unit_model_test.go
+++ b/contrib/drivers/clickhouse/clickhouse_z_unit_model_test.go
@@ -11,10 +11,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_New(t *testing.T) {
diff --git a/contrib/drivers/clickhouse/clickhouse_z_unit_test.go b/contrib/drivers/clickhouse/clickhouse_z_unit_test.go
index caf82f77a..9c0bdbc24 100644
--- a/contrib/drivers/clickhouse/clickhouse_z_unit_test.go
+++ b/contrib/drivers/clickhouse/clickhouse_z_unit_test.go
@@ -15,13 +15,13 @@ import (
"github.com/google/uuid"
"github.com/shopspring/decimal"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/grand"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/grand"
+ "github.com/gogf/gf/v3/util/guid"
)
const (
diff --git a/contrib/drivers/clickhouse/go.mod b/contrib/drivers/clickhouse/go.mod
index 3debc6991..f5ad4b60d 100644
--- a/contrib/drivers/clickhouse/go.mod
+++ b/contrib/drivers/clickhouse/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/drivers/clickhouse/v2
+module github.com/gogf/gf/contrib/drivers/clickhouse/v3
go 1.22
require (
github.com/ClickHouse/clickhouse-go/v2 v2.0.15
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/google/uuid v1.6.0
github.com/shopspring/decimal v1.3.1
)
@@ -40,5 +40,5 @@ require (
replace (
github.com/ClickHouse/clickhouse-go/v2 => github.com/gogf/clickhouse-go/v2 v2.0.15-compatible
- github.com/gogf/gf/v2 => ../../../
+ github.com/gogf/gf/v3 => ../../../
)
diff --git a/contrib/drivers/dm/dm.go b/contrib/drivers/dm/dm.go
index 3bfb01cb9..8f330b049 100644
--- a/contrib/drivers/dm/dm.go
+++ b/contrib/drivers/dm/dm.go
@@ -10,8 +10,8 @@ package dm
import (
_ "gitee.com/chunanyong/dm"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
type Driver struct {
diff --git a/contrib/drivers/dm/dm_convert.go b/contrib/drivers/dm/dm_convert.go
index f17909d29..25b74e1d4 100644
--- a/contrib/drivers/dm/dm_convert.go
+++ b/contrib/drivers/dm/dm_convert.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// ConvertValueForField converts value to the type of the record field.
diff --git a/contrib/drivers/dm/dm_do_filter.go b/contrib/drivers/dm/dm_do_filter.go
index 8f574aef0..f13690db4 100644
--- a/contrib/drivers/dm/dm_do_filter.go
+++ b/contrib/drivers/dm/dm_do_filter.go
@@ -10,9 +10,9 @@ import (
"context"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoFilter deals with the sql string before commits it to underlying sql driver.
diff --git a/contrib/drivers/dm/dm_do_insert.go b/contrib/drivers/dm/dm_do_insert.go
index de2b216a4..ea319cb03 100644
--- a/contrib/drivers/dm/dm_do_insert.go
+++ b/contrib/drivers/dm/dm_do_insert.go
@@ -12,11 +12,11 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoInsert inserts or updates data for given table.
diff --git a/contrib/drivers/dm/dm_open.go b/contrib/drivers/dm/dm_open.go
index ebc789b79..5ca61a3ee 100644
--- a/contrib/drivers/dm/dm_open.go
+++ b/contrib/drivers/dm/dm_open.go
@@ -12,9 +12,9 @@ import (
"net/url"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Open creates and returns an underlying sql.DB object for pgsql.
diff --git a/contrib/drivers/dm/dm_table_fields.go b/contrib/drivers/dm/dm_table_fields.go
index 892973d37..effb47d75 100644
--- a/contrib/drivers/dm/dm_table_fields.go
+++ b/contrib/drivers/dm/dm_table_fields.go
@@ -11,8 +11,8 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
const (
diff --git a/contrib/drivers/dm/dm_tables.go b/contrib/drivers/dm/dm_tables.go
index 7c7935e54..24a81a71c 100644
--- a/contrib/drivers/dm/dm_tables.go
+++ b/contrib/drivers/dm/dm_tables.go
@@ -9,7 +9,7 @@ package dm
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/dm/dm_z_unit_basic_test.go b/contrib/drivers/dm/dm_z_unit_basic_test.go
index 5bede337c..682460e0b 100644
--- a/contrib/drivers/dm/dm_z_unit_basic_test.go
+++ b/contrib/drivers/dm/dm_z_unit_basic_test.go
@@ -13,9 +13,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_DB_Ping(t *testing.T) {
diff --git a/contrib/drivers/dm/dm_z_unit_init_test.go b/contrib/drivers/dm/dm_z_unit_init_test.go
index 5d81f649a..538e0cf8c 100644
--- a/contrib/drivers/dm/dm_z_unit_init_test.go
+++ b/contrib/drivers/dm/dm_z_unit_init_test.go
@@ -12,11 +12,11 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/drivers/dm/dm_z_unit_issue_test.go b/contrib/drivers/dm/dm_z_unit_issue_test.go
index fece6a618..277c4c51b 100644
--- a/contrib/drivers/dm/dm_z_unit_issue_test.go
+++ b/contrib/drivers/dm/dm_z_unit_issue_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Issue2594(t *testing.T) {
diff --git a/contrib/drivers/dm/go.mod b/contrib/drivers/dm/go.mod
index 6b487eb40..5132bf1f4 100644
--- a/contrib/drivers/dm/go.mod
+++ b/contrib/drivers/dm/go.mod
@@ -1,12 +1,12 @@
-module github.com/gogf/gf/contrib/drivers/dm/v2
+module github.com/gogf/gf/contrib/drivers/dm/v3
go 1.22
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
require (
gitee.com/chunanyong/dm v1.8.12
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
)
require (
diff --git a/contrib/drivers/mssql/go.mod b/contrib/drivers/mssql/go.mod
index 9547e8453..894afe7e3 100644
--- a/contrib/drivers/mssql/go.mod
+++ b/contrib/drivers/mssql/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/drivers/mssql/v2
+module github.com/gogf/gf/contrib/drivers/mssql/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/microsoft/go-mssqldb v1.7.1
)
@@ -38,4 +38,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/mssql/mssql.go b/contrib/drivers/mssql/mssql.go
index 5be217ce0..ebef65a21 100644
--- a/contrib/drivers/mssql/mssql.go
+++ b/contrib/drivers/mssql/mssql.go
@@ -14,7 +14,7 @@ package mssql
import (
_ "github.com/microsoft/go-mssqldb"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Driver is the driver for SQL server database.
diff --git a/contrib/drivers/mssql/mssql_do_commit.go b/contrib/drivers/mssql/mssql_do_commit.go
index 1dc57c950..d2b6ff192 100644
--- a/contrib/drivers/mssql/mssql_do_commit.go
+++ b/contrib/drivers/mssql/mssql_do_commit.go
@@ -9,7 +9,7 @@ package mssql
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoCommit commits current sql and arguments to underlying sql driver.
diff --git a/contrib/drivers/mssql/mssql_do_filter.go b/contrib/drivers/mssql/mssql_do_filter.go
index 6130b9e79..338ad23f0 100644
--- a/contrib/drivers/mssql/mssql_do_filter.go
+++ b/contrib/drivers/mssql/mssql_do_filter.go
@@ -12,9 +12,9 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/contrib/drivers/mssql/mssql_do_filter_test.go b/contrib/drivers/mssql/mssql_do_filter_test.go
index 24e2c80e9..88d368551 100644
--- a/contrib/drivers/mssql/mssql_do_filter_test.go
+++ b/contrib/drivers/mssql/mssql_do_filter_test.go
@@ -11,8 +11,8 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestDriver_DoFilter(t *testing.T) {
diff --git a/contrib/drivers/mssql/mssql_do_insert.go b/contrib/drivers/mssql/mssql_do_insert.go
index 7b71dab42..550b7131d 100644
--- a/contrib/drivers/mssql/mssql_do_insert.go
+++ b/contrib/drivers/mssql/mssql_do_insert.go
@@ -12,11 +12,11 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoInsert inserts or updates data for given table.
diff --git a/contrib/drivers/mssql/mssql_open.go b/contrib/drivers/mssql/mssql_open.go
index 6e571e4e4..eb72ba62c 100644
--- a/contrib/drivers/mssql/mssql_open.go
+++ b/contrib/drivers/mssql/mssql_open.go
@@ -10,10 +10,10 @@ import (
"database/sql"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Open creates and returns an underlying sql.DB object for mssql.
diff --git a/contrib/drivers/mssql/mssql_table_fields.go b/contrib/drivers/mssql/mssql_table_fields.go
index db2a9ba3e..b2117b691 100644
--- a/contrib/drivers/mssql/mssql_table_fields.go
+++ b/contrib/drivers/mssql/mssql_table_fields.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/contrib/drivers/mssql/mssql_tables.go b/contrib/drivers/mssql/mssql_tables.go
index 4cd2d2da2..875729b7b 100644
--- a/contrib/drivers/mssql/mssql_tables.go
+++ b/contrib/drivers/mssql/mssql_tables.go
@@ -9,7 +9,7 @@ package mssql
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/mssql/mssql_z_unit_basic_test.go b/contrib/drivers/mssql/mssql_z_unit_basic_test.go
index 7235f0b16..d4e2ebf9c 100644
--- a/contrib/drivers/mssql/mssql_z_unit_basic_test.go
+++ b/contrib/drivers/mssql/mssql_z_unit_basic_test.go
@@ -13,11 +13,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestTables(t *testing.T) {
diff --git a/contrib/drivers/mssql/mssql_z_unit_init_test.go b/contrib/drivers/mssql/mssql_z_unit_init_test.go
index 08e925c5a..e1958589a 100644
--- a/contrib/drivers/mssql/mssql_z_unit_init_test.go
+++ b/contrib/drivers/mssql/mssql_z_unit_init_test.go
@@ -10,11 +10,11 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/drivers/mssql/mssql_z_unit_model_test.go b/contrib/drivers/mssql/mssql_z_unit_model_test.go
index 6fff5e30f..a956afd5c 100644
--- a/contrib/drivers/mssql/mssql_z_unit_model_test.go
+++ b/contrib/drivers/mssql/mssql_z_unit_model_test.go
@@ -12,15 +12,15 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Page(t *testing.T) {
diff --git a/contrib/drivers/mssql/mssql_z_unit_transaction_test.go b/contrib/drivers/mssql/mssql_z_unit_transaction_test.go
index bb3ad90d7..18442eedf 100644
--- a/contrib/drivers/mssql/mssql_z_unit_transaction_test.go
+++ b/contrib/drivers/mssql/mssql_z_unit_transaction_test.go
@@ -11,12 +11,12 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_TX_Query(t *testing.T) {
diff --git a/contrib/drivers/mysql/go.mod b/contrib/drivers/mysql/go.mod
index 70fff809c..1d1acd340 100644
--- a/contrib/drivers/mysql/go.mod
+++ b/contrib/drivers/mysql/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/drivers/mysql/v2
+module github.com/gogf/gf/contrib/drivers/mysql/v3
go 1.22
require (
github.com/go-sql-driver/mysql v1.7.1
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
)
require (
@@ -35,4 +35,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/mysql/mysql.go b/contrib/drivers/mysql/mysql.go
index ce142f513..c95209bab 100644
--- a/contrib/drivers/mysql/mysql.go
+++ b/contrib/drivers/mysql/mysql.go
@@ -10,8 +10,8 @@ package mysql
import (
_ "github.com/go-sql-driver/mysql"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
// Driver is the driver for mysql database.
diff --git a/contrib/drivers/mysql/mysql_do_filter.go b/contrib/drivers/mysql/mysql_do_filter.go
index aff546ab9..29fa8f353 100644
--- a/contrib/drivers/mysql/mysql_do_filter.go
+++ b/contrib/drivers/mysql/mysql_do_filter.go
@@ -9,7 +9,7 @@ package mysql
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoFilter handles the sql before posts it to database.
diff --git a/contrib/drivers/mysql/mysql_open.go b/contrib/drivers/mysql/mysql_open.go
index fdf3595cb..ae413356d 100644
--- a/contrib/drivers/mysql/mysql_open.go
+++ b/contrib/drivers/mysql/mysql_open.go
@@ -12,9 +12,9 @@ import (
"net/url"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Open creates and returns an underlying sql.DB object for mysql.
diff --git a/contrib/drivers/mysql/mysql_table_fields.go b/contrib/drivers/mysql/mysql_table_fields.go
index 72ffa7e29..b7e53ede6 100644
--- a/contrib/drivers/mysql/mysql_table_fields.go
+++ b/contrib/drivers/mysql/mysql_table_fields.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/contrib/drivers/mysql/mysql_tables.go b/contrib/drivers/mysql/mysql_tables.go
index b30c99105..bd1c78fbb 100644
--- a/contrib/drivers/mysql/mysql_tables.go
+++ b/contrib/drivers/mysql/mysql_tables.go
@@ -9,7 +9,7 @@ package mysql
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Tables retrieves and returns the tables of current schema.
diff --git a/contrib/drivers/mysql/mysql_z_unit_basic_test.go b/contrib/drivers/mysql/mysql_z_unit_basic_test.go
index b56048bf1..6bcda4423 100644
--- a/contrib/drivers/mysql/mysql_z_unit_basic_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_basic_test.go
@@ -10,8 +10,8 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Instance(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_core_test.go b/contrib/drivers/mysql/mysql_z_unit_core_test.go
index 5dce861e1..3ffc65ee5 100644
--- a/contrib/drivers/mysql/mysql_z_unit_core_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_core_test.go
@@ -13,14 +13,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_New(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_ctx_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_ctx_test.go
index f03ca4ba5..ecb9124e2 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_ctx_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_ctx_test.go
@@ -10,9 +10,9 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Ctx(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_hook_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_hook_test.go
index 1330c158c..000a3daf5 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_hook_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_hook_test.go
@@ -12,10 +12,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Model_Hook_Select(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_master_slave_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_master_slave_test.go
index 028a4e565..8b5df3b9f 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_master_slave_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_master_slave_test.go
@@ -10,12 +10,12 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Master_Slave(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_builder_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_builder_test.go
index 97d7c5ee1..1e8589b9d 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_builder_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_builder_test.go
@@ -9,11 +9,11 @@ package mysql_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gmeta"
)
func Test_Model_Builder(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_do_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_do_test.go
index 27a08eab3..adb82ec09 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_do_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_do_test.go
@@ -9,10 +9,10 @@ package mysql_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Model_Insert_Data_DO(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_join_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_join_test.go
index af1acd993..2a89cb02e 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_join_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_join_test.go
@@ -9,9 +9,9 @@ package mysql_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Model_LeftJoinOnField(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_sharding_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_sharding_test.go
index 5ace95336..0ca6e6976 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_sharding_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_sharding_test.go
@@ -12,10 +12,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_struct_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_struct_test.go
index 1463c4080..7d1177156 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_struct_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_struct_test.go
@@ -11,13 +11,13 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Model_Embedded_Insert(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_model_subquery_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_model_subquery_test.go
index 2159c0d97..d0721eb26 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_model_subquery_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_model_subquery_test.go
@@ -9,8 +9,8 @@ package mysql_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Model_SubQuery_Where(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_raw_type_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_raw_type_test.go
index 5bc008e30..a42e84769 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_raw_type_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_raw_type_test.go
@@ -10,9 +10,9 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Raw_Insert(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_scanlist_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_scanlist_test.go
index 11fd2b649..a103e86e0 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_scanlist_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_scanlist_test.go
@@ -11,11 +11,11 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Table_Relation_One(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_soft_time_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_soft_time_test.go
index cc5ac4f4d..419a1a20e 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_soft_time_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_soft_time_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
// CreateAt/UpdateAt/DeleteAt.
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_union_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_union_test.go
index 6d6692ce0..038430619 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_union_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_union_test.go
@@ -9,8 +9,8 @@ package mysql_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Union(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_feature_with_test.go b/contrib/drivers/mysql/mysql_z_unit_feature_with_test.go
index 64a491991..4d3d10531 100644
--- a/contrib/drivers/mysql/mysql_z_unit_feature_with_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_feature_with_test.go
@@ -10,12 +10,12 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
)
/*
diff --git a/contrib/drivers/mysql/mysql_z_unit_init_test.go b/contrib/drivers/mysql/mysql_z_unit_init_test.go
index 3c0f2f762..863445128 100644
--- a/contrib/drivers/mysql/mysql_z_unit_init_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_init_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/contrib/drivers/mysql/mysql_z_unit_internal_test.go b/contrib/drivers/mysql/mysql_z_unit_internal_test.go
index b8868f6ca..d22efb2e8 100644
--- a/contrib/drivers/mysql/mysql_z_unit_internal_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_internal_test.go
@@ -9,8 +9,8 @@ package mysql
import (
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_configNodeToSource(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_issue_test.go b/contrib/drivers/mysql/mysql_z_unit_issue_test.go
index 7f7f0a854..d15151245 100644
--- a/contrib/drivers/mysql/mysql_z_unit_issue_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_issue_test.go
@@ -14,15 +14,15 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/guid"
)
// https://github.com/gogf/gf/issues/1380
diff --git a/contrib/drivers/mysql/mysql_z_unit_model_test.go b/contrib/drivers/mysql/mysql_z_unit_model_test.go
index e4190e663..0b057edb9 100644
--- a/contrib/drivers/mysql/mysql_z_unit_model_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_model_test.go
@@ -16,17 +16,17 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Model_Insert(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_model_where_test.go b/contrib/drivers/mysql/mysql_z_unit_model_where_test.go
index c0007c688..2e4b4ed98 100644
--- a/contrib/drivers/mysql/mysql_z_unit_model_where_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_model_where_test.go
@@ -10,11 +10,11 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Model_Where(t *testing.T) {
diff --git a/contrib/drivers/mysql/mysql_z_unit_transaction_test.go b/contrib/drivers/mysql/mysql_z_unit_transaction_test.go
index 0c583d964..4078d1311 100644
--- a/contrib/drivers/mysql/mysql_z_unit_transaction_test.go
+++ b/contrib/drivers/mysql/mysql_z_unit_transaction_test.go
@@ -12,12 +12,12 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_TX_Query(t *testing.T) {
diff --git a/contrib/drivers/oracle/go.mod b/contrib/drivers/oracle/go.mod
index 02e0750da..4540526e6 100644
--- a/contrib/drivers/oracle/go.mod
+++ b/contrib/drivers/oracle/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/drivers/oracle/v2
+module github.com/gogf/gf/contrib/drivers/oracle/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/sijms/go-ora/v2 v2.7.10
)
@@ -35,4 +35,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/oracle/oracle.go b/contrib/drivers/oracle/oracle.go
index ae6a1c5dd..0c7e88b93 100644
--- a/contrib/drivers/oracle/oracle.go
+++ b/contrib/drivers/oracle/oracle.go
@@ -12,7 +12,7 @@
package oracle
import (
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Driver is the driver for oracle database.
diff --git a/contrib/drivers/oracle/oracle_do_commit.go b/contrib/drivers/oracle/oracle_do_commit.go
index 19fc88f95..09c770b3a 100644
--- a/contrib/drivers/oracle/oracle_do_commit.go
+++ b/contrib/drivers/oracle/oracle_do_commit.go
@@ -9,7 +9,7 @@ package oracle
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// DoCommit commits current sql and arguments to underlying sql driver.
diff --git a/contrib/drivers/oracle/oracle_do_filter.go b/contrib/drivers/oracle/oracle_do_filter.go
index 0f952857c..4486a98e6 100644
--- a/contrib/drivers/oracle/oracle_do_filter.go
+++ b/contrib/drivers/oracle/oracle_do_filter.go
@@ -12,9 +12,9 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/contrib/drivers/oracle/oracle_do_insert.go b/contrib/drivers/oracle/oracle_do_insert.go
index cf6a9b14b..c40c964ff 100644
--- a/contrib/drivers/oracle/oracle_do_insert.go
+++ b/contrib/drivers/oracle/oracle_do_insert.go
@@ -12,12 +12,12 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// DoInsert inserts or updates data for given table.
diff --git a/contrib/drivers/oracle/oracle_open.go b/contrib/drivers/oracle/oracle_open.go
index c41505e29..4dd2f0fd5 100644
--- a/contrib/drivers/oracle/oracle_open.go
+++ b/contrib/drivers/oracle/oracle_open.go
@@ -12,10 +12,10 @@ import (
gora "github.com/sijms/go-ora/v2"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Open creates and returns an underlying sql.DB object for oracle.
diff --git a/contrib/drivers/oracle/oracle_table_fields.go b/contrib/drivers/oracle/oracle_table_fields.go
index aa20858dc..04a2df088 100644
--- a/contrib/drivers/oracle/oracle_table_fields.go
+++ b/contrib/drivers/oracle/oracle_table_fields.go
@@ -11,8 +11,8 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/contrib/drivers/oracle/oracle_tables.go b/contrib/drivers/oracle/oracle_tables.go
index c3031ce7e..74132f93e 100644
--- a/contrib/drivers/oracle/oracle_tables.go
+++ b/contrib/drivers/oracle/oracle_tables.go
@@ -9,7 +9,7 @@ package oracle
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/oracle/oracle_z_unit_basic_test.go b/contrib/drivers/oracle/oracle_z_unit_basic_test.go
index b5cba3945..5be1b6ba1 100644
--- a/contrib/drivers/oracle/oracle_z_unit_basic_test.go
+++ b/contrib/drivers/oracle/oracle_z_unit_basic_test.go
@@ -11,11 +11,11 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Tables(t *testing.T) {
diff --git a/contrib/drivers/oracle/oracle_z_unit_init_test.go b/contrib/drivers/oracle/oracle_z_unit_init_test.go
index 3e549d4b2..0018de4ba 100644
--- a/contrib/drivers/oracle/oracle_z_unit_init_test.go
+++ b/contrib/drivers/oracle/oracle_z_unit_init_test.go
@@ -13,11 +13,11 @@ import (
_ "github.com/sijms/go-ora/v2"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/drivers/oracle/oracle_z_unit_model_test.go b/contrib/drivers/oracle/oracle_z_unit_model_test.go
index 26031615e..6c84b56e2 100644
--- a/contrib/drivers/oracle/oracle_z_unit_model_test.go
+++ b/contrib/drivers/oracle/oracle_z_unit_model_test.go
@@ -13,13 +13,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Model_InnerJoin(t *testing.T) {
diff --git a/contrib/drivers/pgsql/go.mod b/contrib/drivers/pgsql/go.mod
index 2e3c9c3cf..b5e921fa8 100644
--- a/contrib/drivers/pgsql/go.mod
+++ b/contrib/drivers/pgsql/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/drivers/pgsql/v2
+module github.com/gogf/gf/contrib/drivers/pgsql/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/lib/pq v1.10.9
)
@@ -35,4 +35,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/pgsql/pgsql.go b/contrib/drivers/pgsql/pgsql.go
index b7a18a810..3466fb8dd 100644
--- a/contrib/drivers/pgsql/pgsql.go
+++ b/contrib/drivers/pgsql/pgsql.go
@@ -14,8 +14,8 @@ package pgsql
import (
_ "github.com/lib/pq"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/os/gctx"
)
// Driver is the driver for postgresql database.
diff --git a/contrib/drivers/pgsql/pgsql_convert.go b/contrib/drivers/pgsql/pgsql_convert.go
index c83a1e029..fad33a197 100644
--- a/contrib/drivers/pgsql/pgsql_convert.go
+++ b/contrib/drivers/pgsql/pgsql_convert.go
@@ -13,11 +13,11 @@ import (
"github.com/lib/pq"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// ConvertValueForField converts value to database acceptable value.
diff --git a/contrib/drivers/pgsql/pgsql_do_exec.go b/contrib/drivers/pgsql/pgsql_do_exec.go
index a44721752..c3158395a 100644
--- a/contrib/drivers/pgsql/pgsql_do_exec.go
+++ b/contrib/drivers/pgsql/pgsql_do_exec.go
@@ -12,9 +12,9 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// DoExec commits the sql string and its arguments to underlying driver
diff --git a/contrib/drivers/pgsql/pgsql_do_filter.go b/contrib/drivers/pgsql/pgsql_do_filter.go
index a04ed9a08..3df821f37 100644
--- a/contrib/drivers/pgsql/pgsql_do_filter.go
+++ b/contrib/drivers/pgsql/pgsql_do_filter.go
@@ -10,9 +10,9 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoFilter deals with the sql string before commits it to underlying sql driver.
diff --git a/contrib/drivers/pgsql/pgsql_do_insert.go b/contrib/drivers/pgsql/pgsql_do_insert.go
index ec24edde3..c7f88665b 100644
--- a/contrib/drivers/pgsql/pgsql_do_insert.go
+++ b/contrib/drivers/pgsql/pgsql_do_insert.go
@@ -10,9 +10,9 @@ import (
"context"
"database/sql"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// DoInsert inserts or updates data for given table.
diff --git a/contrib/drivers/pgsql/pgsql_format_upsert.go b/contrib/drivers/pgsql/pgsql_format_upsert.go
index fc003cb4c..b3a4ab3d7 100644
--- a/contrib/drivers/pgsql/pgsql_format_upsert.go
+++ b/contrib/drivers/pgsql/pgsql_format_upsert.go
@@ -9,11 +9,11 @@ package pgsql
import (
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// FormatUpsert returns SQL clause of type upsert for PgSQL.
diff --git a/contrib/drivers/pgsql/pgsql_open.go b/contrib/drivers/pgsql/pgsql_open.go
index 87e0e5092..b56b68bbf 100644
--- a/contrib/drivers/pgsql/pgsql_open.go
+++ b/contrib/drivers/pgsql/pgsql_open.go
@@ -10,10 +10,10 @@ import (
"database/sql"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Open creates and returns an underlying sql.DB object for pgsql.
diff --git a/contrib/drivers/pgsql/pgsql_table_fields.go b/contrib/drivers/pgsql/pgsql_table_fields.go
index d53667c08..d42a1ba9c 100644
--- a/contrib/drivers/pgsql/pgsql_table_fields.go
+++ b/contrib/drivers/pgsql/pgsql_table_fields.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/contrib/drivers/pgsql/pgsql_tables.go b/contrib/drivers/pgsql/pgsql_tables.go
index 1cdb7d5d3..ac3df7af4 100644
--- a/contrib/drivers/pgsql/pgsql_tables.go
+++ b/contrib/drivers/pgsql/pgsql_tables.go
@@ -11,10 +11,10 @@ import (
"fmt"
"regexp"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_db_test.go b/contrib/drivers/pgsql/pgsql_z_unit_db_test.go
index 688301cd4..e08175fb3 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_db_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_db_test.go
@@ -11,9 +11,9 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_DB_Query(t *testing.T) {
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_init_test.go b/contrib/drivers/pgsql/pgsql_z_unit_init_test.go
index e317d3000..91655e3e1 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_init_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_init_test.go
@@ -10,13 +10,13 @@ import (
"context"
"fmt"
- _ "github.com/gogf/gf/contrib/drivers/pgsql/v2"
+ _ "github.com/gogf/gf/contrib/drivers/pgsql/v3"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_issue_test.go b/contrib/drivers/pgsql/pgsql_z_unit_issue_test.go
index c0c9ad8f2..39aefe541 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_issue_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_issue_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
// https://github.com/gogf/gf/issues/3330
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_model_test.go b/contrib/drivers/pgsql/pgsql_z_unit_model_test.go
index 3a51ba264..2bddee019 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_model_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_model_test.go
@@ -11,10 +11,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Model_Insert(t *testing.T) {
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_raw_test.go b/contrib/drivers/pgsql/pgsql_z_unit_raw_test.go
index e43d440d1..0bb71486b 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_raw_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_raw_test.go
@@ -9,9 +9,9 @@ package pgsql_test
import (
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Raw_Insert(t *testing.T) {
diff --git a/contrib/drivers/pgsql/pgsql_z_unit_test.go b/contrib/drivers/pgsql/pgsql_z_unit_test.go
index 4cdfdabd5..c74002d43 100644
--- a/contrib/drivers/pgsql/pgsql_z_unit_test.go
+++ b/contrib/drivers/pgsql/pgsql_z_unit_test.go
@@ -10,12 +10,12 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
- "github.com/gogf/gf/contrib/drivers/pgsql/v2"
+ "github.com/gogf/gf/contrib/drivers/pgsql/v3"
)
func Test_LastInsertId(t *testing.T) {
diff --git a/contrib/drivers/sqlite/go.mod b/contrib/drivers/sqlite/go.mod
index f867d8361..fd7f8e646 100644
--- a/contrib/drivers/sqlite/go.mod
+++ b/contrib/drivers/sqlite/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/drivers/sqlite/v2
+module github.com/gogf/gf/contrib/drivers/sqlite/v3
go 1.22
require (
github.com/glebarez/go-sqlite v1.21.2
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
)
require (
@@ -41,4 +41,4 @@ require (
modernc.org/sqlite v1.23.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/sqlite/sqlite.go b/contrib/drivers/sqlite/sqlite.go
index de48aaad9..120701b6e 100644
--- a/contrib/drivers/sqlite/sqlite.go
+++ b/contrib/drivers/sqlite/sqlite.go
@@ -10,7 +10,7 @@ package sqlite
import (
_ "github.com/glebarez/go-sqlite"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Driver is the driver for sqlite database.
diff --git a/contrib/drivers/sqlite/sqlite_do_filter.go b/contrib/drivers/sqlite/sqlite_do_filter.go
index 3547b800e..ea051db9c 100644
--- a/contrib/drivers/sqlite/sqlite_do_filter.go
+++ b/contrib/drivers/sqlite/sqlite_do_filter.go
@@ -9,8 +9,8 @@ package sqlite
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoFilter deals with the sql string before commits it to underlying sql driver.
diff --git a/contrib/drivers/sqlite/sqlite_format_upsert.go b/contrib/drivers/sqlite/sqlite_format_upsert.go
index c80d5dfd7..8a8390d43 100644
--- a/contrib/drivers/sqlite/sqlite_format_upsert.go
+++ b/contrib/drivers/sqlite/sqlite_format_upsert.go
@@ -9,11 +9,11 @@ package sqlite
import (
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// FormatUpsert returns SQL clause of type upsert for SQLite.
diff --git a/contrib/drivers/sqlite/sqlite_open.go b/contrib/drivers/sqlite/sqlite_open.go
index 0f084292c..843d0c253 100644
--- a/contrib/drivers/sqlite/sqlite_open.go
+++ b/contrib/drivers/sqlite/sqlite_open.go
@@ -10,13 +10,13 @@ import (
"database/sql"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Open creates and returns an underlying sql.DB object for sqlite.
diff --git a/contrib/drivers/sqlite/sqlite_table_fields.go b/contrib/drivers/sqlite/sqlite_table_fields.go
index d4ae1650c..5d5f4caf2 100644
--- a/contrib/drivers/sqlite/sqlite_table_fields.go
+++ b/contrib/drivers/sqlite/sqlite_table_fields.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
// TableFields retrieves and returns the fields' information of specified table of current schema.
diff --git a/contrib/drivers/sqlite/sqlite_tables.go b/contrib/drivers/sqlite/sqlite_tables.go
index f8999e5c4..b57dc4391 100644
--- a/contrib/drivers/sqlite/sqlite_tables.go
+++ b/contrib/drivers/sqlite/sqlite_tables.go
@@ -9,7 +9,7 @@ package sqlite
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/sqlite/sqlite_z_unit_core_test.go b/contrib/drivers/sqlite/sqlite_z_unit_core_test.go
index f0ed23bbe..bb6ab029e 100644
--- a/contrib/drivers/sqlite/sqlite_z_unit_core_test.go
+++ b/contrib/drivers/sqlite/sqlite_z_unit_core_test.go
@@ -13,14 +13,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_New(t *testing.T) {
diff --git a/contrib/drivers/sqlite/sqlite_z_unit_init_test.go b/contrib/drivers/sqlite/sqlite_z_unit_init_test.go
index 5a9aa66ed..430ba02ed 100644
--- a/contrib/drivers/sqlite/sqlite_z_unit_init_test.go
+++ b/contrib/drivers/sqlite/sqlite_z_unit_init_test.go
@@ -9,13 +9,13 @@ package sqlite_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/drivers/sqlite/sqlite_z_unit_model_test.go b/contrib/drivers/sqlite/sqlite_z_unit_model_test.go
index 03e8465c7..d20d288db 100644
--- a/contrib/drivers/sqlite/sqlite_z_unit_model_test.go
+++ b/contrib/drivers/sqlite/sqlite_z_unit_model_test.go
@@ -15,20 +15,20 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Model_Insert(t *testing.T) {
diff --git a/contrib/drivers/sqlitecgo/go.mod b/contrib/drivers/sqlitecgo/go.mod
index e223c7ad7..b946cdd45 100644
--- a/contrib/drivers/sqlitecgo/go.mod
+++ b/contrib/drivers/sqlitecgo/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/drivers/sqlitecgo/v2
+module github.com/gogf/gf/contrib/drivers/sqlitecgo/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/mattn/go-sqlite3 v1.14.17
)
@@ -35,4 +35,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/drivers/sqlitecgo/sqlite_format_upsert.go b/contrib/drivers/sqlitecgo/sqlite_format_upsert.go
index 63cb33e5a..f1cd4b8d6 100644
--- a/contrib/drivers/sqlitecgo/sqlite_format_upsert.go
+++ b/contrib/drivers/sqlitecgo/sqlite_format_upsert.go
@@ -9,11 +9,11 @@ package sqlitecgo
import (
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// FormatUpsert returns SQL clause of type upsert for SQLite.
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo.go b/contrib/drivers/sqlitecgo/sqlitecgo.go
index efaab979c..c19ac54f6 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo.go
@@ -15,7 +15,7 @@ package sqlitecgo
import (
_ "github.com/mattn/go-sqlite3"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
// Driver is the driver for sqlite database.
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_do_filter.go b/contrib/drivers/sqlitecgo/sqlitecgo_do_filter.go
index 476ae1a0e..a08b0d229 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_do_filter.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_do_filter.go
@@ -9,8 +9,8 @@ package sqlitecgo
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DoFilter deals with the sql string before commits it to underlying sql driver.
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_open.go b/contrib/drivers/sqlitecgo/sqlitecgo_open.go
index 1e2e4b985..81cae9236 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_open.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_open.go
@@ -18,13 +18,13 @@ import (
_ "github.com/mattn/go-sqlite3"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Open creates and returns an underlying sql.DB object for sqlite.
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_table_fields.go b/contrib/drivers/sqlitecgo/sqlitecgo_table_fields.go
index 8f244d177..7c001eb53 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_table_fields.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_table_fields.go
@@ -16,8 +16,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/util/gutil"
)
// TableFields retrieves and returns the fields' information of specified table of current schema.
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_tables.go b/contrib/drivers/sqlitecgo/sqlitecgo_tables.go
index 993c6cf8b..12ba61aa2 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_tables.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_tables.go
@@ -9,7 +9,7 @@ package sqlitecgo
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
+ "github.com/gogf/gf/v3/database/gdb"
)
const (
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_core_test.go b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_core_test.go
index eb4396c92..cca6529da 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_core_test.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_core_test.go
@@ -13,14 +13,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_New(t *testing.T) {
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_init_test.go b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_init_test.go
index 0dd2aa0dc..f4e2b1799 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_init_test.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_init_test.go
@@ -9,13 +9,13 @@ package sqlitecgo_test
import (
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_model_test.go b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_model_test.go
index 3ad793df2..1ce37256d 100644
--- a/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_model_test.go
+++ b/contrib/drivers/sqlitecgo/sqlitecgo_z_unit_model_test.go
@@ -15,20 +15,20 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Model_Insert(t *testing.T) {
diff --git a/contrib/metric/otelmetric/README.MD b/contrib/metric/otelmetric/README.MD
index 501496e5b..812569ff9 100644
--- a/contrib/metric/otelmetric/README.MD
+++ b/contrib/metric/otelmetric/README.MD
@@ -27,10 +27,10 @@ import (
"go.opentelemetry.io/otel/sdk/metric"
"github.com/gogf/gf/contrib/metric/otelmetric/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gmetric"
)
var (
diff --git a/contrib/metric/otelmetric/go.mod b/contrib/metric/otelmetric/go.mod
index c0a503a81..d275c5e34 100644
--- a/contrib/metric/otelmetric/go.mod
+++ b/contrib/metric/otelmetric/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/metric/otelmetric/v2
+module github.com/gogf/gf/contrib/metric/otelmetric/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/prometheus/client_golang v1.19.1
go.opentelemetry.io/contrib/instrumentation/runtime v0.49.0
go.opentelemetry.io/otel v1.32.0
@@ -44,4 +44,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/metric/otelmetric/otelmetric.go b/contrib/metric/otelmetric/otelmetric.go
index 1de7d30c7..b361bbf7a 100644
--- a/contrib/metric/otelmetric/otelmetric.go
+++ b/contrib/metric/otelmetric/otelmetric.go
@@ -8,7 +8,7 @@
package otelmetric
import (
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// NewProvider creates and returns a metrics provider.
diff --git a/contrib/metric/otelmetric/otelmetric_callback.go b/contrib/metric/otelmetric/otelmetric_callback.go
index 5ca690d4c..827feec42 100644
--- a/contrib/metric/otelmetric/otelmetric_callback.go
+++ b/contrib/metric/otelmetric/otelmetric_callback.go
@@ -9,7 +9,7 @@ package otelmetric
import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localObserver implements interface gmetric.Observer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_counter_performer.go b/contrib/metric/otelmetric/otelmetric_meter_counter_performer.go
index 23955d353..775223959 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_counter_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_counter_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localCounterPerformer is an implementer for interface gmetric.CounterPerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_histogram_performer.go b/contrib/metric/otelmetric/otelmetric_meter_histogram_performer.go
index fddede757..ecfe4c92f 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_histogram_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_histogram_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localHistogramPerformer is an implementer for interface HistogramPerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_observable_counter_performer.go b/contrib/metric/otelmetric/otelmetric_meter_observable_counter_performer.go
index 25dca59b1..9137a79f7 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_observable_counter_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_observable_counter_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localCounterPerformer is an implementer for interface CounterPerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_observable_gauge_performer.go b/contrib/metric/otelmetric/otelmetric_meter_observable_gauge_performer.go
index d8ab5da73..9e032e302 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_observable_gauge_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_observable_gauge_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localGaugePerformer is an implementer for interface GaugePerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_observable_updown_counter_performer.go b/contrib/metric/otelmetric/otelmetric_meter_observable_updown_counter_performer.go
index 7f4312316..bbb835c88 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_observable_updown_counter_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_observable_updown_counter_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localObservableUpDownCounterPerformer is an implementer for interface CounterPerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_performer.go b/contrib/metric/otelmetric/otelmetric_meter_performer.go
index ef4b653ca..98b31db31 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_performer.go
@@ -14,10 +14,10 @@ import (
otelmetric "go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/sdk/metric"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localMeterPerformer implements interface gmetric.Performer.
diff --git a/contrib/metric/otelmetric/otelmetric_meter_updown_counter_performer.go b/contrib/metric/otelmetric/otelmetric_meter_updown_counter_performer.go
index 83d8316cc..82e9a9d80 100644
--- a/contrib/metric/otelmetric/otelmetric_meter_updown_counter_performer.go
+++ b/contrib/metric/otelmetric/otelmetric_meter_updown_counter_performer.go
@@ -11,10 +11,10 @@ import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localUpDownCounterPerformer is an implementer for interface gmetric.UpDownCounterPerformer.
diff --git a/contrib/metric/otelmetric/otelmetric_metric_callback.go b/contrib/metric/otelmetric/otelmetric_metric_callback.go
index 0efbc6218..a40683c5d 100644
--- a/contrib/metric/otelmetric/otelmetric_metric_callback.go
+++ b/contrib/metric/otelmetric/otelmetric_metric_callback.go
@@ -9,7 +9,7 @@ package otelmetric
import (
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localMetricObserver implements interface gmetric.CallbackObserver.
diff --git a/contrib/metric/otelmetric/otelmetric_prometheus.go b/contrib/metric/otelmetric/otelmetric_prometheus.go
index 4f341558a..e368ff49e 100644
--- a/contrib/metric/otelmetric/otelmetric_prometheus.go
+++ b/contrib/metric/otelmetric/otelmetric_prometheus.go
@@ -11,8 +11,8 @@ import (
"github.com/prometheus/client_golang/prometheus/collectors"
"github.com/prometheus/client_golang/prometheus/promhttp"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
)
// PrometheusHandler returns the http handler for prometheus metrics exporting.
diff --git a/contrib/metric/otelmetric/otelmetric_provider.go b/contrib/metric/otelmetric/otelmetric_provider.go
index 57ac895b8..fdd3ff147 100644
--- a/contrib/metric/otelmetric/otelmetric_provider.go
+++ b/contrib/metric/otelmetric/otelmetric_provider.go
@@ -14,9 +14,9 @@ import (
"go.opentelemetry.io/otel/sdk/instrumentation"
"go.opentelemetry.io/otel/sdk/metric"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
)
// localProvider implements interface gmetric.Provider.
diff --git a/contrib/metric/otelmetric/otelmetric_util.go b/contrib/metric/otelmetric/otelmetric_util.go
index 0051cb6d5..52a242931 100644
--- a/contrib/metric/otelmetric/otelmetric_util.go
+++ b/contrib/metric/otelmetric/otelmetric_util.go
@@ -10,10 +10,10 @@ import (
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/metric"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/util/gconv"
)
func generateAddOptions(
diff --git a/contrib/metric/otelmetric/otelmetric_z_unit_http_test.go b/contrib/metric/otelmetric/otelmetric_z_unit_http_test.go
index 325a9a8ab..7609604a1 100644
--- a/contrib/metric/otelmetric/otelmetric_z_unit_http_test.go
+++ b/contrib/metric/otelmetric/otelmetric_z_unit_http_test.go
@@ -14,17 +14,17 @@ import (
"github.com/prometheus/client_golang/prometheus/promhttp"
"go.opentelemetry.io/otel/exporters/prometheus"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/metric/otelmetric/v2"
+ "github.com/gogf/gf/contrib/metric/otelmetric/v3"
)
func Test_HTTP_Server(t *testing.T) {
diff --git a/contrib/metric/otelmetric/otelmetric_z_unit_test.go b/contrib/metric/otelmetric/otelmetric_z_unit_test.go
index 54c08a20e..42f7ab4f1 100644
--- a/contrib/metric/otelmetric/otelmetric_z_unit_test.go
+++ b/contrib/metric/otelmetric/otelmetric_z_unit_test.go
@@ -13,13 +13,13 @@ import (
"go.opentelemetry.io/otel/sdk/metric"
"go.opentelemetry.io/otel/sdk/metric/metricdata"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
- "github.com/gogf/gf/contrib/metric/otelmetric/v2"
+ "github.com/gogf/gf/contrib/metric/otelmetric/v3"
)
func Test_Basic(t *testing.T) {
diff --git a/contrib/metric/otelmetric/testdata/http.prometheus.metrics.txt b/contrib/metric/otelmetric/testdata/http.prometheus.metrics.txt
index 60d51c0d5..dca1cef0f 100644
--- a/contrib/metric/otelmetric/testdata/http.prometheus.metrics.txt
+++ b/contrib/metric/otelmetric/testdata/http.prometheus.metrics.txt
@@ -1,141 +1,141 @@
# HELP http_client_connection_duration Measures the connection establish duration of client requests.
# TYPE http_client_connection_duration histogram
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
-http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
-http_client_connection_duration_sum{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
-http_client_connection_duration_count{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"} 9
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
+http_client_connection_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
+http_client_connection_duration_sum{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
+http_client_connection_duration_count{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"} 9
# HELP http_client_request_active Number of active client requests.
# TYPE http_client_request_active gauge
-http_client_request_active{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_client_request_active{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_client_request_active{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_client_request_active{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_client_request_active{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_client_request_active{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_client_request_active{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_client_request_active{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
# HELP http_client_request_body_size Outgoing request bytes total.
# TYPE http_client_request_body_size counter
-http_client_request_body_size{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 7
-http_client_request_body_size{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 7
+http_client_request_body_size{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 7
+http_client_request_body_size{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 7
# HELP http_client_request_duration Measures the duration of client requests.
# TYPE http_client_request_duration histogram
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
-http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
-http_client_request_duration_sum{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
-http_client_request_duration_count{otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"} 8
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
+http_client_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
+http_client_request_duration_sum{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
+http_client_request_duration_count{otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"} 8
# HELP http_client_request_duration_total Total execution duration of request.
# TYPE http_client_request_duration_total counter
-http_client_request_duration_total{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_client_request_duration_total{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_client_request_duration_total{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_client_request_duration_total{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_client_request_duration_total{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_client_request_duration_total{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_client_request_duration_total{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_client_request_duration_total{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
# HELP http_client_request_total Total processed request number.
# TYPE http_client_request_total counter
-http_client_request_total{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
-http_client_request_total{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
-http_client_request_total{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
-http_client_request_total{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
+http_client_request_total{http_request_method="DELETE",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
+http_client_request_total{http_request_method="GET",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
+http_client_request_total{http_request_method="POST",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
+http_client_request_total{http_request_method="PUT",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/gclient.Client",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 2
# HELP http_server_request_active Number of active server requests.
# TYPE http_server_request_active gauge
-http_server_request_active{http_request_method="DELETE",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="DELETE",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="GET",http_route="/metrics",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_active{http_request_method="GET",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="GET",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="POST",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="POST",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="PUT",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_active{http_request_method="PUT",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="DELETE",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="DELETE",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="GET",http_route="/metrics",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_active{http_request_method="GET",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="GET",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="POST",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="POST",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="PUT",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_active{http_request_method="PUT",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
# HELP http_server_request_body_size Incoming request bytes total.
# TYPE http_server_request_body_size counter
-http_server_request_body_size{http_request_method="DELETE",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_body_size{http_request_method="DELETE",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_body_size{http_request_method="GET",http_route="/metrics",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_body_size{http_request_method="GET",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_body_size{http_request_method="GET",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
-http_server_request_body_size{http_request_method="POST",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
-http_server_request_body_size{http_request_method="POST",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 3
-http_server_request_body_size{http_request_method="PUT",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
-http_server_request_body_size{http_request_method="PUT",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 3
+http_server_request_body_size{http_request_method="DELETE",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_body_size{http_request_method="DELETE",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_body_size{http_request_method="GET",http_route="/metrics",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_body_size{http_request_method="GET",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_body_size{http_request_method="GET",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 0
+http_server_request_body_size{http_request_method="POST",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_request_body_size{http_request_method="POST",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 3
+http_server_request_body_size{http_request_method="PUT",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_request_body_size{http_request_method="PUT",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 3
# HELP http_server_request_duration Measures the duration of inbound request.
# TYPE http_server_request_duration histogram
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
-http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
-http_server_request_duration_sum{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
-http_server_request_duration_count{otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="25"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="50"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="75"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="100"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="250"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="500"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="750"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="1000"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="2500"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="5000"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="7500"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="10000"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="30000"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="60000"}
+http_server_request_duration_bucket{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",le="+Inf"}
+http_server_request_duration_sum{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
+http_server_request_duration_count{otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730"}
# HELP http_server_request_duration_total Total execution duration of request.
# TYPE http_server_request_duration_total counter
-http_server_request_duration_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
-http_server_request_duration_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
+http_server_request_duration_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"}
# HELP http_server_request_total Total processed request number.
# TYPE http_server_request_total counter
-http_server_request_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
-http_server_request_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
+http_server_request_total{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 1
# HELP http_server_response_body_size Response bytes total.
# TYPE http_server_response_body_size counter
-http_server_response_body_size{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
-http_server_response_body_size{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
-http_server_response_body_size{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
-http_server_response_body_size{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
-http_server_response_body_size{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
-http_server_response_body_size{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
-http_server_response_body_size{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
-http_server_response_body_size{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v2/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_response_body_size{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
+http_server_response_body_size{error_code="0",http_request_method="DELETE",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_response_body_size{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
+http_server_response_body_size{error_code="0",http_request_method="GET",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_response_body_size{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
+http_server_response_body_size{error_code="0",http_request_method="POST",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
+http_server_response_body_size{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/order/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 5
+http_server_response_body_size{error_code="0",http_request_method="PUT",http_response_status_code="200",http_route="/user/:id",network_protocol_version="1.1",otel_scope_name="github.com/gogf/gf/v3/net/ghttp.Server",otel_scope_version="v2.6.4",server_address="127.0.0.1",server_port="62730",url_schema="http"} 4
diff --git a/contrib/nosql/redis/go.mod b/contrib/nosql/redis/go.mod
index 3f3f71315..3e15d3a72 100644
--- a/contrib/nosql/redis/go.mod
+++ b/contrib/nosql/redis/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/nosql/redis/v2
+module github.com/gogf/gf/contrib/nosql/redis/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/redis/go-redis/v9 v9.7.0
go.opentelemetry.io/otel v1.32.0
go.opentelemetry.io/otel/trace v1.32.0
@@ -37,4 +37,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/nosql/redis/redis.go b/contrib/nosql/redis/redis.go
index 9df5e36e7..4e95a504e 100644
--- a/contrib/nosql/redis/redis.go
+++ b/contrib/nosql/redis/redis.go
@@ -13,8 +13,8 @@ import (
"github.com/redis/go-redis/v9"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Redis is an implement of Adapter using go-redis.
diff --git a/contrib/nosql/redis/redis_conn.go b/contrib/nosql/redis/redis_conn.go
index 54b1c4068..f957a2c62 100644
--- a/contrib/nosql/redis/redis_conn.go
+++ b/contrib/nosql/redis/redis_conn.go
@@ -17,16 +17,16 @@ import (
"go.opentelemetry.io/otel/codes"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Conn manages the connection operations.
@@ -44,7 +44,7 @@ type traceItem struct {
}
const (
- traceInstrumentName = "github.com/gogf/gf/v2/database/gredis"
+ traceInstrumentName = "github.com/gogf/gf/v3/database/gredis"
traceAttrRedisAddress = "redis.address"
traceAttrRedisDb = "redis.db"
traceEventRedisExecution = "redis.execution"
diff --git a/contrib/nosql/redis/redis_func.go b/contrib/nosql/redis/redis_func.go
index e9a86dd70..58f5bca6e 100644
--- a/contrib/nosql/redis/redis_func.go
+++ b/contrib/nosql/redis/redis_func.go
@@ -9,7 +9,7 @@ package redis
import (
"reflect"
- "github.com/gogf/gf/v2/os/gstructs"
+ "github.com/gogf/gf/v3/os/gstructs"
)
func mustMergeOptionToArgs(args []interface{}, option interface{}) []interface{} {
diff --git a/contrib/nosql/redis/redis_group_generic.go b/contrib/nosql/redis/redis_group_generic.go
index 1765b2bb0..e37c83611 100644
--- a/contrib/nosql/redis/redis_group_generic.go
+++ b/contrib/nosql/redis/redis_group_generic.go
@@ -10,10 +10,10 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupGeneric provides generic functions of redis.
diff --git a/contrib/nosql/redis/redis_group_hash.go b/contrib/nosql/redis/redis_group_hash.go
index 75b314743..ae20fb729 100644
--- a/contrib/nosql/redis/redis_group_hash.go
+++ b/contrib/nosql/redis/redis_group_hash.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupHash is the redis group object for hash operations.
diff --git a/contrib/nosql/redis/redis_group_list.go b/contrib/nosql/redis/redis_group_list.go
index 6767e723f..33fec67aa 100644
--- a/contrib/nosql/redis/redis_group_list.go
+++ b/contrib/nosql/redis/redis_group_list.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupList is the redis group list object.
diff --git a/contrib/nosql/redis/redis_group_pubsub.go b/contrib/nosql/redis/redis_group_pubsub.go
index 1badd05e1..53811ac23 100644
--- a/contrib/nosql/redis/redis_group_pubsub.go
+++ b/contrib/nosql/redis/redis_group_pubsub.go
@@ -9,7 +9,7 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/database/gredis"
+ "github.com/gogf/gf/v3/database/gredis"
)
// GroupPubSub provides pub/sub functions for redis.
diff --git a/contrib/nosql/redis/redis_group_script.go b/contrib/nosql/redis/redis_group_script.go
index 3f1a6ef77..c039c39d9 100644
--- a/contrib/nosql/redis/redis_group_script.go
+++ b/contrib/nosql/redis/redis_group_script.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupScript provides script functions for redis.
diff --git a/contrib/nosql/redis/redis_group_set.go b/contrib/nosql/redis/redis_group_set.go
index 631f2d9ff..82ee5c4fe 100644
--- a/contrib/nosql/redis/redis_group_set.go
+++ b/contrib/nosql/redis/redis_group_set.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupSet provides set functions for redis.
diff --git a/contrib/nosql/redis/redis_group_sorted_set.go b/contrib/nosql/redis/redis_group_sorted_set.go
index 667118a23..6e0e48393 100644
--- a/contrib/nosql/redis/redis_group_sorted_set.go
+++ b/contrib/nosql/redis/redis_group_sorted_set.go
@@ -9,8 +9,8 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
)
// GroupSortedSet provides sorted set functions for redis.
diff --git a/contrib/nosql/redis/redis_group_string.go b/contrib/nosql/redis/redis_group_string.go
index 1cac4ad05..fe15904f1 100644
--- a/contrib/nosql/redis/redis_group_string.go
+++ b/contrib/nosql/redis/redis_group_string.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GroupString is the function group manager for string operations.
diff --git a/contrib/nosql/redis/redis_operation.go b/contrib/nosql/redis/redis_operation.go
index 191ca866f..6a4ad54ab 100644
--- a/contrib/nosql/redis/redis_operation.go
+++ b/contrib/nosql/redis/redis_operation.go
@@ -9,9 +9,9 @@ package redis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Do send a command to the server and returns the received reply.
diff --git a/contrib/nosql/redis/redis_test.go b/contrib/nosql/redis/redis_test.go
index 2d904aa19..0c0143c11 100644
--- a/contrib/nosql/redis/redis_test.go
+++ b/contrib/nosql/redis/redis_test.go
@@ -7,8 +7,8 @@
package redis_test
import (
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/os/gctx"
)
var (
diff --git a/contrib/nosql/redis/redis_z_func_test.go b/contrib/nosql/redis/redis_z_func_test.go
index cd860a54f..37a5c94e0 100644
--- a/contrib/nosql/redis/redis_z_func_test.go
+++ b/contrib/nosql/redis/redis_z_func_test.go
@@ -9,9 +9,9 @@ package redis
import (
"testing"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_mustMergeOptionToArgs(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_generic_test.go b/contrib/nosql/redis/redis_z_group_generic_test.go
index b4bc4bce1..80d73b61d 100644
--- a/contrib/nosql/redis/redis_z_group_generic_test.go
+++ b/contrib/nosql/redis/redis_z_group_generic_test.go
@@ -10,10 +10,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/contrib/nosql/redis/redis_z_group_hash_test.go b/contrib/nosql/redis/redis_z_group_hash_test.go
index b365c537a..bf99fc7ca 100644
--- a/contrib/nosql/redis/redis_z_group_hash_test.go
+++ b/contrib/nosql/redis/redis_z_group_hash_test.go
@@ -9,7 +9,7 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GroupHash_HSet(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_list_test.go b/contrib/nosql/redis/redis_z_group_list_test.go
index 2980f475c..40bbdbcec 100644
--- a/contrib/nosql/redis/redis_z_group_list_test.go
+++ b/contrib/nosql/redis/redis_z_group_list_test.go
@@ -10,9 +10,9 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_GroupList_LPush(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_pubsub_test.go b/contrib/nosql/redis/redis_z_group_pubsub_test.go
index b0f7917ed..2eb4effa4 100644
--- a/contrib/nosql/redis/redis_z_group_pubsub_test.go
+++ b/contrib/nosql/redis/redis_z_group_pubsub_test.go
@@ -9,7 +9,7 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GroupPubSub_Publish(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_script_test.go b/contrib/nosql/redis/redis_z_group_script_test.go
index 8e8fa5de9..ad88fa46a 100644
--- a/contrib/nosql/redis/redis_z_group_script_test.go
+++ b/contrib/nosql/redis/redis_z_group_script_test.go
@@ -9,10 +9,10 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/crypto/gsha1"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gsha1"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GroupScript_Eval(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_set_test.go b/contrib/nosql/redis/redis_z_group_set_test.go
index 94bf40608..166b82c0f 100644
--- a/contrib/nosql/redis/redis_z_group_set_test.go
+++ b/contrib/nosql/redis/redis_z_group_set_test.go
@@ -9,8 +9,8 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_GroupSet_SAdd(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_sorted_set_test.go b/contrib/nosql/redis/redis_z_group_sorted_set_test.go
index 5e53afc31..402d261ab 100644
--- a/contrib/nosql/redis/redis_z_group_sorted_set_test.go
+++ b/contrib/nosql/redis/redis_z_group_sorted_set_test.go
@@ -9,10 +9,10 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/grand"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/grand"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_GroupSortedSet_ZADD(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_group_string_test.go b/contrib/nosql/redis/redis_z_group_string_test.go
index 99c9202ad..04f9fcb34 100644
--- a/contrib/nosql/redis/redis_z_group_string_test.go
+++ b/contrib/nosql/redis/redis_z_group_string_test.go
@@ -10,10 +10,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_GroupString_Set(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_unit_config_test.go b/contrib/nosql/redis/redis_z_unit_config_test.go
index e14c3f710..58afe817a 100644
--- a/contrib/nosql/redis/redis_z_unit_config_test.go
+++ b/contrib/nosql/redis/redis_z_unit_config_test.go
@@ -10,10 +10,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ConfigFromMap(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_unit_conn_sentinel_test.go b/contrib/nosql/redis/redis_z_unit_conn_sentinel_test.go
index 9a812a706..3f07fde01 100644
--- a/contrib/nosql/redis/redis_z_unit_conn_sentinel_test.go
+++ b/contrib/nosql/redis/redis_z_unit_conn_sentinel_test.go
@@ -10,8 +10,8 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/nosql/redis/redis_z_unit_conn_test.go b/contrib/nosql/redis/redis_z_unit_conn_test.go
index 60b2b9822..7d3ad1b45 100644
--- a/contrib/nosql/redis/redis_z_unit_conn_test.go
+++ b/contrib/nosql/redis/redis_z_unit_conn_test.go
@@ -9,7 +9,7 @@ package redis_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestConn_DoWithTimeout(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_unit_gcache_adapter_test.go b/contrib/nosql/redis/redis_z_unit_gcache_adapter_test.go
index 735309638..d41003854 100644
--- a/contrib/nosql/redis/redis_z_unit_gcache_adapter_test.go
+++ b/contrib/nosql/redis/redis_z_unit_gcache_adapter_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/contrib/nosql/redis/redis_z_unit_gins_redis_test.go b/contrib/nosql/redis/redis_z_unit_gins_redis_test.go
index 2c3479021..f365155ab 100644
--- a/contrib/nosql/redis/redis_z_unit_gins_redis_test.go
+++ b/contrib/nosql/redis/redis_z_unit_gins_redis_test.go
@@ -10,11 +10,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GINS_Redis(t *testing.T) {
diff --git a/contrib/nosql/redis/redis_z_unit_test.go b/contrib/nosql/redis/redis_z_unit_test.go
index bae2e849d..18fd40357 100644
--- a/contrib/nosql/redis/redis_z_unit_test.go
+++ b/contrib/nosql/redis/redis_z_unit_test.go
@@ -10,14 +10,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_NewClose(t *testing.T) {
diff --git a/contrib/registry/consul/README.MD b/contrib/registry/consul/README.MD
index 85da78ade..c7b0b01f1 100644
--- a/contrib/registry/consul/README.MD
+++ b/contrib/registry/consul/README.MD
@@ -21,9 +21,9 @@ import (
"context"
"github.com/gogf/gf/contrib/registry/consul/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -52,10 +52,10 @@ import (
"time"
"github.com/gogf/gf/contrib/registry/consul/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/consul/consul.go b/contrib/registry/consul/consul.go
index 7968e2ee4..dbed36905 100644
--- a/contrib/registry/consul/consul.go
+++ b/contrib/registry/consul/consul.go
@@ -16,8 +16,8 @@ import (
"github.com/hashicorp/consul/api"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
const (
diff --git a/contrib/registry/consul/consul_discovery.go b/contrib/registry/consul/consul_discovery.go
index 10fb237e5..f46bf0e2e 100644
--- a/contrib/registry/consul/consul_discovery.go
+++ b/contrib/registry/consul/consul_discovery.go
@@ -14,8 +14,8 @@ import (
"github.com/hashicorp/consul/api"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Search searches and returns services with specified condition.
diff --git a/contrib/registry/consul/consul_test.go b/contrib/registry/consul/consul_test.go
index 912f9bd9a..542623f9b 100644
--- a/contrib/registry/consul/consul_test.go
+++ b/contrib/registry/consul/consul_test.go
@@ -12,8 +12,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/contrib/registry/consul/consul_watcher.go b/contrib/registry/consul/consul_watcher.go
index 865b6e28c..bf56e37c6 100644
--- a/contrib/registry/consul/consul_watcher.go
+++ b/contrib/registry/consul/consul_watcher.go
@@ -15,8 +15,8 @@ import (
"github.com/hashicorp/consul/api"
"github.com/hashicorp/consul/api/watch"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Watcher watches the service changes.
diff --git a/contrib/registry/consul/go.mod b/contrib/registry/consul/go.mod
index 41b1ba632..be87d36cf 100644
--- a/contrib/registry/consul/go.mod
+++ b/contrib/registry/consul/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/registry/consul/v2
+module github.com/gogf/gf/contrib/registry/consul/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/hashicorp/consul/api v1.26.1
)
@@ -40,4 +40,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/etcd/README.MD b/contrib/registry/etcd/README.MD
index b2421d676..d92b6cd05 100644
--- a/contrib/registry/etcd/README.MD
+++ b/contrib/registry/etcd/README.MD
@@ -24,9 +24,9 @@ package main
import (
"github.com/gogf/gf/contrib/registry/etcd/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -50,10 +50,10 @@ import (
"time"
"github.com/gogf/gf/contrib/registry/etcd/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/etcd/etcd.go b/contrib/registry/etcd/etcd.go
index e0850c76e..90345a385 100644
--- a/contrib/registry/etcd/etcd.go
+++ b/contrib/registry/etcd/etcd.go
@@ -14,12 +14,12 @@ import (
etcd3 "go.etcd.io/etcd/client/v3"
"google.golang.org/grpc"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/contrib/registry/etcd/etcd_discovery.go b/contrib/registry/etcd/etcd_discovery.go
index 5607aa667..98a6978c0 100644
--- a/contrib/registry/etcd/etcd_discovery.go
+++ b/contrib/registry/etcd/etcd_discovery.go
@@ -11,9 +11,9 @@ import (
etcd3 "go.etcd.io/etcd/client/v3"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Search searches and returns services with specified condition.
diff --git a/contrib/registry/etcd/etcd_registrar.go b/contrib/registry/etcd/etcd_registrar.go
index 7cc6e267f..fa261adc1 100644
--- a/contrib/registry/etcd/etcd_registrar.go
+++ b/contrib/registry/etcd/etcd_registrar.go
@@ -12,9 +12,9 @@ import (
etcd3 "go.etcd.io/etcd/client/v3"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/util/grand"
)
// Register registers `service` to Registry.
diff --git a/contrib/registry/etcd/etcd_service.go b/contrib/registry/etcd/etcd_service.go
index ec0cb2581..ccbfde314 100644
--- a/contrib/registry/etcd/etcd_service.go
+++ b/contrib/registry/etcd/etcd_service.go
@@ -7,8 +7,8 @@
package etcd
import (
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Service wrapper.
diff --git a/contrib/registry/etcd/etcd_watcher.go b/contrib/registry/etcd/etcd_watcher.go
index 058c0b338..d06cc77c0 100644
--- a/contrib/registry/etcd/etcd_watcher.go
+++ b/contrib/registry/etcd/etcd_watcher.go
@@ -12,9 +12,9 @@ import (
etcd3 "go.etcd.io/etcd/client/v3"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
var (
diff --git a/contrib/registry/etcd/etcd_z_test.go b/contrib/registry/etcd/etcd_z_test.go
index c4a8194db..9233f278e 100644
--- a/contrib/registry/etcd/etcd_z_test.go
+++ b/contrib/registry/etcd/etcd_z_test.go
@@ -9,12 +9,12 @@ package etcd_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/registry/etcd/v2"
+ "github.com/gogf/gf/contrib/registry/etcd/v3"
)
func TestRegistry(t *testing.T) {
diff --git a/contrib/registry/etcd/go.mod b/contrib/registry/etcd/go.mod
index a2711193e..5f1001c35 100644
--- a/contrib/registry/etcd/go.mod
+++ b/contrib/registry/etcd/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/registry/etcd/v2
+module github.com/gogf/gf/contrib/registry/etcd/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
go.etcd.io/etcd/client/v3 v3.5.17
google.golang.org/grpc v1.59.0
)
@@ -49,4 +49,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/file/README.MD b/contrib/registry/file/README.MD
index 885af9aac..9274c927a 100644
--- a/contrib/registry/file/README.MD
+++ b/contrib/registry/file/README.MD
@@ -24,10 +24,10 @@ package main
import (
"github.com/gogf/gf/contrib/registry/file/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
)
func main() {
@@ -52,10 +52,10 @@ import (
"time"
"github.com/gogf/gf/contrib/registry/file/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
)
func main() {
diff --git a/contrib/registry/file/file.go b/contrib/registry/file/file.go
index 507bb78f7..6c55b398d 100644
--- a/contrib/registry/file/file.go
+++ b/contrib/registry/file/file.go
@@ -10,8 +10,8 @@ package file
import (
"time"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
)
var (
diff --git a/contrib/registry/file/file_discovery.go b/contrib/registry/file/file_discovery.go
index b5c03d977..7af8b3307 100644
--- a/contrib/registry/file/file_discovery.go
+++ b/contrib/registry/file/file_discovery.go
@@ -9,14 +9,14 @@ package file
import (
"context"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Search searches and returns services with specified condition.
diff --git a/contrib/registry/file/file_registrar.go b/contrib/registry/file/file_registrar.go
index d7bdfb8ee..0082447da 100644
--- a/contrib/registry/file/file_registrar.go
+++ b/contrib/registry/file/file_registrar.go
@@ -9,11 +9,11 @@ package file
import (
"context"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Register registers `service` to Registry.
diff --git a/contrib/registry/file/file_service.go b/contrib/registry/file/file_service.go
index 557a36dbe..945b1ed68 100644
--- a/contrib/registry/file/file_service.go
+++ b/contrib/registry/file/file_service.go
@@ -7,8 +7,8 @@
package file
import (
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Service wrapper.
diff --git a/contrib/registry/file/file_watcher.go b/contrib/registry/file/file_watcher.go
index b10e74304..d02bc2039 100644
--- a/contrib/registry/file/file_watcher.go
+++ b/contrib/registry/file/file_watcher.go
@@ -9,9 +9,9 @@ package file
import (
"context"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Watcher for file changes watch.
diff --git a/contrib/registry/file/file_z_basic_test.go b/contrib/registry/file/file_z_basic_test.go
index 61bd22aa6..76a84cd15 100644
--- a/contrib/registry/file/file_z_basic_test.go
+++ b/contrib/registry/file/file_z_basic_test.go
@@ -9,13 +9,13 @@ package file_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/registry/file/v2"
+ "github.com/gogf/gf/contrib/registry/file/v3"
)
func TestRegistry(t *testing.T) {
diff --git a/contrib/registry/file/file_z_http_test.go b/contrib/registry/file/file_z_http_test.go
index 500837c33..0c29dddd3 100644
--- a/contrib/registry/file/file_z_http_test.go
+++ b/contrib/registry/file/file_z_http_test.go
@@ -11,16 +11,16 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/registry/file/v2"
+ "github.com/gogf/gf/contrib/registry/file/v3"
)
var ctx = gctx.GetInitCtx()
diff --git a/contrib/registry/file/go.mod b/contrib/registry/file/go.mod
index 64f466eb2..b8d8a6034 100644
--- a/contrib/registry/file/go.mod
+++ b/contrib/registry/file/go.mod
@@ -1,8 +1,8 @@
-module github.com/gogf/gf/contrib/registry/file/v2
+module github.com/gogf/gf/contrib/registry/file/v3
go 1.22
-require github.com/gogf/gf/v2 v2.9.0
+require github.com/gogf/gf/v3 v3.0.0-alpha
require (
github.com/BurntSushi/toml v1.4.0 // indirect
@@ -32,4 +32,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/nacos/README.MD b/contrib/registry/nacos/README.MD
index 6c76a77d1..132e06857 100644
--- a/contrib/registry/nacos/README.MD
+++ b/contrib/registry/nacos/README.MD
@@ -24,9 +24,9 @@ package main
import (
"github.com/gogf/gf/contrib/registry/nacos/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -52,10 +52,10 @@ import (
"time"
"github.com/gogf/gf/contrib/registry/nacos/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/nacos/go.mod b/contrib/registry/nacos/go.mod
index 11fe63708..c16018f4f 100644
--- a/contrib/registry/nacos/go.mod
+++ b/contrib/registry/nacos/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/registry/nacos/v2
+module github.com/gogf/gf/contrib/registry/nacos/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/nacos-group/nacos-sdk-go/v2 v2.2.7
)
@@ -66,4 +66,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/nacos/nacos.go b/contrib/registry/nacos/nacos.go
index 799db2a5d..406560543 100644
--- a/contrib/registry/nacos/nacos.go
+++ b/contrib/registry/nacos/nacos.go
@@ -15,13 +15,13 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/common/constant"
"github.com/nacos-group/nacos-sdk-go/v2/vo"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/contrib/registry/nacos/nacos_discovery.go b/contrib/registry/nacos/nacos_discovery.go
index d9d1eecd9..44fb5dd85 100644
--- a/contrib/registry/nacos/nacos_discovery.go
+++ b/contrib/registry/nacos/nacos_discovery.go
@@ -12,10 +12,10 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/model"
"github.com/nacos-group/nacos-sdk-go/v2/vo"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Search searches and returns services with specified condition.
diff --git a/contrib/registry/nacos/nacos_register.go b/contrib/registry/nacos/nacos_register.go
index 0b94c97ce..089efa618 100644
--- a/contrib/registry/nacos/nacos_register.go
+++ b/contrib/registry/nacos/nacos_register.go
@@ -11,8 +11,8 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/vo"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Register registers `service` to Registry.
diff --git a/contrib/registry/nacos/nacos_service.go b/contrib/registry/nacos/nacos_service.go
index ee2208c75..c0cdbd025 100644
--- a/contrib/registry/nacos/nacos_service.go
+++ b/contrib/registry/nacos/nacos_service.go
@@ -11,9 +11,9 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/model"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// NewServiceFromInstance new one service from instance
diff --git a/contrib/registry/nacos/nacos_watcher.go b/contrib/registry/nacos/nacos_watcher.go
index fe34441f7..2766acae7 100644
--- a/contrib/registry/nacos/nacos_watcher.go
+++ b/contrib/registry/nacos/nacos_watcher.go
@@ -11,9 +11,9 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/model"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Watcher used to mange service event such as update.
diff --git a/contrib/registry/nacos/nacos_z_test.go b/contrib/registry/nacos/nacos_z_test.go
index f61038492..1ae343642 100644
--- a/contrib/registry/nacos/nacos_z_test.go
+++ b/contrib/registry/nacos/nacos_z_test.go
@@ -14,13 +14,13 @@ import (
"github.com/nacos-group/nacos-sdk-go/v2/common/constant"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/registry/nacos/v2"
+ "github.com/gogf/gf/contrib/registry/nacos/v3"
)
const (
diff --git a/contrib/registry/polaris/README.MD b/contrib/registry/polaris/README.MD
index 31719e676..bab59ea3d 100644
--- a/contrib/registry/polaris/README.MD
+++ b/contrib/registry/polaris/README.MD
@@ -29,9 +29,9 @@ import (
"github.com/polarismesh/polaris-go/pkg/config"
"github.com/gogf/gf/contrib/registry/polaris/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -62,9 +62,9 @@ import (
"github.com/gogf/gf/contrib/registry/polaris/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/polaris/README_ZH.MD b/contrib/registry/polaris/README_ZH.MD
index e47248b0c..318216e21 100644
--- a/contrib/registry/polaris/README_ZH.MD
+++ b/contrib/registry/polaris/README_ZH.MD
@@ -35,9 +35,9 @@ import (
"github.com/polarismesh/polaris-go/pkg/config"
"github.com/gogf/gf/contrib/registry/polaris/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -69,9 +69,9 @@ import (
"github.com/gogf/gf/contrib/registry/polaris/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/polaris/go.mod b/contrib/registry/polaris/go.mod
index 6ff2a3b38..d6ee19633 100644
--- a/contrib/registry/polaris/go.mod
+++ b/contrib/registry/polaris/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/registry/polaris/v2
+module github.com/gogf/gf/contrib/registry/polaris/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
github.com/polarismesh/polaris-go v1.5.8
)
@@ -58,4 +58,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/polaris/polaris.go b/contrib/registry/polaris/polaris.go
index 46457116a..aef87b9f4 100644
--- a/contrib/registry/polaris/polaris.go
+++ b/contrib/registry/polaris/polaris.go
@@ -13,9 +13,9 @@ import (
"github.com/polarismesh/polaris-go"
"github.com/polarismesh/polaris-go/pkg/config"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/glog"
)
var (
diff --git a/contrib/registry/polaris/polaris_discovery.go b/contrib/registry/polaris/polaris_discovery.go
index b03299237..93e066740 100644
--- a/contrib/registry/polaris/polaris_discovery.go
+++ b/contrib/registry/polaris/polaris_discovery.go
@@ -15,10 +15,10 @@ import (
"github.com/polarismesh/polaris-go"
"github.com/polarismesh/polaris-go/pkg/model"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Search returns the service instances in memory according to the service name.
diff --git a/contrib/registry/polaris/polaris_registry.go b/contrib/registry/polaris/polaris_registry.go
index a02e272b1..75f67cbe6 100644
--- a/contrib/registry/polaris/polaris_registry.go
+++ b/contrib/registry/polaris/polaris_registry.go
@@ -12,9 +12,9 @@ import (
"github.com/polarismesh/polaris-go"
"github.com/polarismesh/polaris-go/pkg/model"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Register the registration.
diff --git a/contrib/registry/polaris/polaris_service.go b/contrib/registry/polaris/polaris_service.go
index 28daea577..f8c718074 100644
--- a/contrib/registry/polaris/polaris_service.go
+++ b/contrib/registry/polaris/polaris_service.go
@@ -7,8 +7,8 @@
package polaris
import (
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Service for wrapping gsvc.Server and extends extra attributes for polaris purpose.
diff --git a/contrib/registry/polaris/polaris_watcher.go b/contrib/registry/polaris/polaris_watcher.go
index bdbde71b7..59f44bba2 100644
--- a/contrib/registry/polaris/polaris_watcher.go
+++ b/contrib/registry/polaris/polaris_watcher.go
@@ -14,8 +14,8 @@ import (
"github.com/polarismesh/polaris-go"
"github.com/polarismesh/polaris-go/pkg/model"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Watcher is a service watcher.
diff --git a/contrib/registry/polaris/polaris_z_test.go b/contrib/registry/polaris/polaris_z_test.go
index 3062f5785..95caf7cac 100644
--- a/contrib/registry/polaris/polaris_z_test.go
+++ b/contrib/registry/polaris/polaris_z_test.go
@@ -15,8 +15,8 @@ import (
"github.com/polarismesh/polaris-go/api"
"github.com/polarismesh/polaris-go/pkg/config"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// TestRegistry_Register TestRegistryManyService
diff --git a/contrib/registry/zookeeper/README.MD b/contrib/registry/zookeeper/README.MD
index f6280d50d..b8e5d473a 100644
--- a/contrib/registry/zookeeper/README.MD
+++ b/contrib/registry/zookeeper/README.MD
@@ -16,9 +16,9 @@ package main
import (
"github.com/gogf/gf/contrib/registry/zookeeper/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gsvc"
)
func main() {
@@ -43,10 +43,10 @@ import (
"time"
"github.com/gogf/gf/contrib/registry/zookeeper/v2"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
func main() {
diff --git a/contrib/registry/zookeeper/go.mod b/contrib/registry/zookeeper/go.mod
index ce597fc99..af9dd3eca 100644
--- a/contrib/registry/zookeeper/go.mod
+++ b/contrib/registry/zookeeper/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/registry/zookeeper/v2
+module github.com/gogf/gf/contrib/registry/zookeeper/v3
go 1.22
require (
github.com/go-zookeeper/zk v1.0.3
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
golang.org/x/sync v0.10.0
)
@@ -36,4 +36,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/registry/zookeeper/zookeeper.go b/contrib/registry/zookeeper/zookeeper.go
index be4b59c8c..169a7d33a 100644
--- a/contrib/registry/zookeeper/zookeeper.go
+++ b/contrib/registry/zookeeper/zookeeper.go
@@ -13,8 +13,8 @@ import (
"github.com/go-zookeeper/zk"
"golang.org/x/sync/singleflight"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
var _ gsvc.Registry = &Registry{}
diff --git a/contrib/registry/zookeeper/zookeeper_discovery.go b/contrib/registry/zookeeper/zookeeper_discovery.go
index 53eee5288..513b9a4be 100644
--- a/contrib/registry/zookeeper/zookeeper_discovery.go
+++ b/contrib/registry/zookeeper/zookeeper_discovery.go
@@ -11,10 +11,10 @@ import (
"path"
"strings"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Search searches and returns services with specified condition.
diff --git a/contrib/registry/zookeeper/zookeeper_registrar.go b/contrib/registry/zookeeper/zookeeper_registrar.go
index 5a67ff0b1..424fa349e 100644
--- a/contrib/registry/zookeeper/zookeeper_registrar.go
+++ b/contrib/registry/zookeeper/zookeeper_registrar.go
@@ -14,8 +14,8 @@ import (
"github.com/go-zookeeper/zk"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Register registers `service` to Registry.
diff --git a/contrib/registry/zookeeper/zookeeper_watcher.go b/contrib/registry/zookeeper/zookeeper_watcher.go
index 5efea6f57..164fae671 100644
--- a/contrib/registry/zookeeper/zookeeper_watcher.go
+++ b/contrib/registry/zookeeper/zookeeper_watcher.go
@@ -15,8 +15,8 @@ import (
"github.com/go-zookeeper/zk"
"golang.org/x/sync/singleflight"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
var _ gsvc.Watcher = (*watcher)(nil)
diff --git a/contrib/registry/zookeeper/zookeeper_z_test.go b/contrib/registry/zookeeper/zookeeper_z_test.go
index 207e82376..06a822301 100644
--- a/contrib/registry/zookeeper/zookeeper_z_test.go
+++ b/contrib/registry/zookeeper/zookeeper_z_test.go
@@ -11,9 +11,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
// TestRegistry TestRegistryManyService
diff --git a/contrib/rpc/grpcx/go.mod b/contrib/rpc/grpcx/go.mod
index eff02630b..d99d05518 100644
--- a/contrib/rpc/grpcx/go.mod
+++ b/contrib/rpc/grpcx/go.mod
@@ -1,10 +1,10 @@
-module github.com/gogf/gf/contrib/rpc/grpcx/v2
+module github.com/gogf/gf/contrib/rpc/grpcx/v3
go 1.22
require (
github.com/gogf/gf/contrib/registry/file/v2 v2.9.0
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
go.opentelemetry.io/otel v1.32.0
go.opentelemetry.io/otel/trace v1.32.0
google.golang.org/grpc v1.64.1
@@ -39,5 +39,5 @@ require (
replace (
github.com/gogf/gf/contrib/registry/file/v2 => ../../registry/file/
- github.com/gogf/gf/v2 => ../../../
+ github.com/gogf/gf/v3 => ../../../
)
diff --git a/contrib/rpc/grpcx/grpcx_grpc_client.go b/contrib/rpc/grpcx/grpcx_grpc_client.go
index 47aa27c7b..dcb8599dd 100644
--- a/contrib/rpc/grpcx/grpcx_grpc_client.go
+++ b/contrib/rpc/grpcx/grpcx_grpc_client.go
@@ -12,11 +12,11 @@ import (
"google.golang.org/grpc"
"google.golang.org/grpc/credentials/insecure"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gstr"
)
// DefaultGrpcDialOptions returns the default options for creating grpc client connection.
diff --git a/contrib/rpc/grpcx/grpcx_grpc_server.go b/contrib/rpc/grpcx/grpcx_grpc_server.go
index c022e6ea9..b284429f7 100644
--- a/contrib/rpc/grpcx/grpcx_grpc_server.go
+++ b/contrib/rpc/grpcx/grpcx_grpc_server.go
@@ -16,16 +16,16 @@ import (
"google.golang.org/grpc"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GrpcServer is the server for GRPC protocol.
diff --git a/contrib/rpc/grpcx/grpcx_grpc_server_config.go b/contrib/rpc/grpcx/grpcx_grpc_server_config.go
index f88d8ddf4..e4fb2fa1a 100644
--- a/contrib/rpc/grpcx/grpcx_grpc_server_config.go
+++ b/contrib/rpc/grpcx/grpcx_grpc_server_config.go
@@ -12,9 +12,9 @@ import (
"google.golang.org/grpc"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/util/gconv"
)
// GrpcServerConfig is the configuration for server.
diff --git a/contrib/rpc/grpcx/grpcx_grpc_server_unary.go b/contrib/rpc/grpcx/grpcx_grpc_server_unary.go
index 5658da3b6..9ade9c7f5 100644
--- a/contrib/rpc/grpcx/grpcx_grpc_server_unary.go
+++ b/contrib/rpc/grpcx/grpcx_grpc_server_unary.go
@@ -15,8 +15,8 @@ import (
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// UnaryLogger is the default unary interceptor for logging purpose.
diff --git a/contrib/rpc/grpcx/grpcx_interceptor_client.go b/contrib/rpc/grpcx/grpcx_interceptor_client.go
index bc185d7d1..c70c5a1df 100644
--- a/contrib/rpc/grpcx/grpcx_interceptor_client.go
+++ b/contrib/rpc/grpcx/grpcx_interceptor_client.go
@@ -12,8 +12,8 @@ import (
"google.golang.org/grpc"
"google.golang.org/grpc/status"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/internal/tracing"
)
diff --git a/contrib/rpc/grpcx/grpcx_interceptor_server.go b/contrib/rpc/grpcx/grpcx_interceptor_server.go
index 0d968f6a8..41b709a1d 100644
--- a/contrib/rpc/grpcx/grpcx_interceptor_server.go
+++ b/contrib/rpc/grpcx/grpcx_interceptor_server.go
@@ -14,10 +14,10 @@ import (
"google.golang.org/grpc/status"
"google.golang.org/protobuf/proto"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gutil"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/internal/tracing"
)
diff --git a/contrib/rpc/grpcx/grpcx_registry_file.go b/contrib/rpc/grpcx/grpcx_registry_file.go
index 5e2fef9a7..af1e0504c 100644
--- a/contrib/rpc/grpcx/grpcx_registry_file.go
+++ b/contrib/rpc/grpcx/grpcx_registry_file.go
@@ -7,12 +7,12 @@
package grpcx
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
- "github.com/gogf/gf/contrib/registry/file/v2"
+ "github.com/gogf/gf/contrib/registry/file/v3"
)
// autoLoadAndRegisterFileRegistry checks and registers ETCD service as default service registry
diff --git a/contrib/rpc/grpcx/grpcx_unit_z_ctx_test.go b/contrib/rpc/grpcx/grpcx_unit_z_ctx_test.go
index c673d13be..f7f5de6cc 100644
--- a/contrib/rpc/grpcx/grpcx_unit_z_ctx_test.go
+++ b/contrib/rpc/grpcx/grpcx_unit_z_ctx_test.go
@@ -12,10 +12,10 @@ import (
"google.golang.org/grpc/metadata"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
- "github.com/gogf/gf/contrib/rpc/grpcx/v2"
+ "github.com/gogf/gf/contrib/rpc/grpcx/v3"
)
func Test_Ctx_Basic(t *testing.T) {
diff --git a/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_basic_test.go b/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_basic_test.go
index 12cec2a3b..c5678f2b3 100644
--- a/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_basic_test.go
+++ b/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_basic_test.go
@@ -11,15 +11,15 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/rpc/grpcx/v2"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/testdata/controller"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/testdata/protobuf"
+ "github.com/gogf/gf/contrib/rpc/grpcx/v3"
)
func Test_Grpcx_Grpc_Server_Basic(t *testing.T) {
diff --git a/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_config_test.go b/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_config_test.go
index 71e681df0..1def4e335 100644
--- a/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_config_test.go
+++ b/contrib/rpc/grpcx/grpcx_unit_z_grpc_server_config_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Grpcx_Grpc_Server(t *testing.T) {
diff --git a/contrib/rpc/grpcx/grpcx_unit_z_issue_test.go b/contrib/rpc/grpcx/grpcx_unit_z_issue_test.go
index 531d0b284..5afcc56c3 100644
--- a/contrib/rpc/grpcx/grpcx_unit_z_issue_test.go
+++ b/contrib/rpc/grpcx/grpcx_unit_z_issue_test.go
@@ -15,12 +15,12 @@ import (
"google.golang.org/grpc"
"google.golang.org/grpc/credentials/insecure"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/rpc/grpcx/v2"
+ "github.com/gogf/gf/contrib/rpc/grpcx/v3"
)
var ctx = context.Background()
diff --git a/contrib/rpc/grpcx/internal/balancer/balancer.go b/contrib/rpc/grpcx/internal/balancer/balancer.go
index 389f5142a..4c227d3f8 100644
--- a/contrib/rpc/grpcx/internal/balancer/balancer.go
+++ b/contrib/rpc/grpcx/internal/balancer/balancer.go
@@ -14,7 +14,7 @@ import (
"google.golang.org/grpc/balancer"
"google.golang.org/grpc/balancer/base"
- "github.com/gogf/gf/v2/net/gsel"
+ "github.com/gogf/gf/v3/net/gsel"
)
type Balancer struct{}
diff --git a/contrib/rpc/grpcx/internal/balancer/balancer_builder.go b/contrib/rpc/grpcx/internal/balancer/balancer_builder.go
index 83cb5f5aa..f28f6e422 100644
--- a/contrib/rpc/grpcx/internal/balancer/balancer_builder.go
+++ b/contrib/rpc/grpcx/internal/balancer/balancer_builder.go
@@ -12,9 +12,9 @@ import (
"google.golang.org/grpc/balancer"
"google.golang.org/grpc/balancer/base"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Builder implements grpc balancer base.PickerBuilder,
diff --git a/contrib/rpc/grpcx/internal/balancer/balancer_node.go b/contrib/rpc/grpcx/internal/balancer/balancer_node.go
index 53477d0b1..532ed078d 100644
--- a/contrib/rpc/grpcx/internal/balancer/balancer_node.go
+++ b/contrib/rpc/grpcx/internal/balancer/balancer_node.go
@@ -9,7 +9,7 @@ package balancer
import (
"google.golang.org/grpc/balancer"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Node is the node for the balancer.
diff --git a/contrib/rpc/grpcx/internal/balancer/balancer_picker.go b/contrib/rpc/grpcx/internal/balancer/balancer_picker.go
index c16b469e4..f7b709192 100644
--- a/contrib/rpc/grpcx/internal/balancer/balancer_picker.go
+++ b/contrib/rpc/grpcx/internal/balancer/balancer_picker.go
@@ -9,7 +9,7 @@ package balancer
import (
"google.golang.org/grpc/balancer"
- "github.com/gogf/gf/v2/net/gsel"
+ "github.com/gogf/gf/v3/net/gsel"
)
// Picker implements grpc balancer.Picker,
diff --git a/contrib/rpc/grpcx/internal/grpcctx/grpcctx.go b/contrib/rpc/grpcx/internal/grpcctx/grpcctx.go
index f6a6a59db..55d77250d 100644
--- a/contrib/rpc/grpcx/internal/grpcctx/grpcctx.go
+++ b/contrib/rpc/grpcx/internal/grpcctx/grpcctx.go
@@ -12,9 +12,9 @@ import (
"google.golang.org/grpc/metadata"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gconv"
)
type (
diff --git a/contrib/rpc/grpcx/internal/resolver/resolver.go b/contrib/rpc/grpcx/internal/resolver/resolver.go
index 38d89f1a6..6eca630e2 100644
--- a/contrib/rpc/grpcx/internal/resolver/resolver.go
+++ b/contrib/rpc/grpcx/internal/resolver/resolver.go
@@ -10,8 +10,8 @@ package resolver
import (
"google.golang.org/grpc/resolver"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsvc"
)
const (
diff --git a/contrib/rpc/grpcx/internal/resolver/resolver_builder.go b/contrib/rpc/grpcx/internal/resolver/resolver_builder.go
index e4b140198..d77348123 100644
--- a/contrib/rpc/grpcx/internal/resolver/resolver_builder.go
+++ b/contrib/rpc/grpcx/internal/resolver/resolver_builder.go
@@ -11,10 +11,10 @@ import (
"google.golang.org/grpc/resolver"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
)
// Builder is the builder for the etcd discovery resolver.
diff --git a/contrib/rpc/grpcx/internal/resolver/resolver_manager.go b/contrib/rpc/grpcx/internal/resolver/resolver_manager.go
index b18e96713..58b8f9ef6 100644
--- a/contrib/rpc/grpcx/internal/resolver/resolver_manager.go
+++ b/contrib/rpc/grpcx/internal/resolver/resolver_manager.go
@@ -9,7 +9,7 @@ package resolver
import (
"google.golang.org/grpc/resolver"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Manager for Builder creating.
diff --git a/contrib/rpc/grpcx/internal/resolver/resolver_resolver.go b/contrib/rpc/grpcx/internal/resolver/resolver_resolver.go
index 7ba12ca31..71b705dfe 100644
--- a/contrib/rpc/grpcx/internal/resolver/resolver_resolver.go
+++ b/contrib/rpc/grpcx/internal/resolver/resolver_resolver.go
@@ -14,9 +14,9 @@ import (
"google.golang.org/grpc/attributes"
"google.golang.org/grpc/resolver"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/glog"
)
// Resolver implements grpc resolver.Resolver,
diff --git a/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_client.go b/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_client.go
index b688446f7..a60c3493c 100644
--- a/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_client.go
+++ b/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_client.go
@@ -18,9 +18,9 @@ import (
"google.golang.org/grpc/metadata"
"google.golang.org/grpc/status"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/util/gconv"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/internal/grpcctx"
)
diff --git a/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_server.go b/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_server.go
index 7395d5cf0..9d5073126 100644
--- a/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_server.go
+++ b/contrib/rpc/grpcx/internal/tracing/tracing_interceptor_server.go
@@ -19,9 +19,9 @@ import (
"google.golang.org/grpc/metadata"
"google.golang.org/grpc/status"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/util/gconv"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/internal/grpcctx"
)
diff --git a/contrib/rpc/grpcx/testdata/controller/helloworld.go b/contrib/rpc/grpcx/testdata/controller/helloworld.go
index 94a6bf441..e3360fe25 100644
--- a/contrib/rpc/grpcx/testdata/controller/helloworld.go
+++ b/contrib/rpc/grpcx/testdata/controller/helloworld.go
@@ -9,8 +9,8 @@ package controller
import (
"context"
- "github.com/gogf/gf/contrib/rpc/grpcx/v2"
"github.com/gogf/gf/contrib/rpc/grpcx/v2/testdata/protobuf"
+ "github.com/gogf/gf/contrib/rpc/grpcx/v3"
)
type Controller struct {
diff --git a/contrib/sdk/httpclient/go.mod b/contrib/sdk/httpclient/go.mod
index c871476e9..84e9e38fb 100644
--- a/contrib/sdk/httpclient/go.mod
+++ b/contrib/sdk/httpclient/go.mod
@@ -1,8 +1,8 @@
-module github.com/gogf/gf/contrib/sdk/httpclient/v2
+module github.com/gogf/gf/contrib/sdk/httpclient/v3
go 1.22
-require github.com/gogf/gf/v2 v2.9.0
+require github.com/gogf/gf/v3 v3.0.0-alpha
require (
github.com/BurntSushi/toml v1.4.0 // indirect
@@ -32,4 +32,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/sdk/httpclient/httpclient.go b/contrib/sdk/httpclient/httpclient.go
index 272f3a636..380f4e435 100644
--- a/contrib/sdk/httpclient/httpclient.go
+++ b/contrib/sdk/httpclient/httpclient.go
@@ -12,15 +12,15 @@ import (
"fmt"
"net/http"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
// Client is a http client for SDK.
diff --git a/contrib/sdk/httpclient/httpclient_config.go b/contrib/sdk/httpclient/httpclient_config.go
index eccb45323..4419a2880 100644
--- a/contrib/sdk/httpclient/httpclient_config.go
+++ b/contrib/sdk/httpclient/httpclient_config.go
@@ -7,8 +7,8 @@
package httpclient
import (
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/os/glog"
)
// Config is the configuration struct for SDK client.
diff --git a/contrib/sdk/httpclient/httpclient_handler.go b/contrib/sdk/httpclient/httpclient_handler.go
index eca6eed9e..9e9c396a0 100644
--- a/contrib/sdk/httpclient/httpclient_handler.go
+++ b/contrib/sdk/httpclient/httpclient_handler.go
@@ -10,12 +10,12 @@ import (
"context"
"encoding/json"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/glog"
)
// Handler is the interface for http response handling.
diff --git a/contrib/sdk/httpclient/httpclient_z_unit_feature_handler_test.go b/contrib/sdk/httpclient/httpclient_z_unit_feature_handler_test.go
index 2babecd88..1311c7eae 100644
--- a/contrib/sdk/httpclient/httpclient_z_unit_feature_handler_test.go
+++ b/contrib/sdk/httpclient/httpclient_z_unit_feature_handler_test.go
@@ -12,16 +12,16 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
- "github.com/gogf/gf/contrib/sdk/httpclient/v2"
+ "github.com/gogf/gf/contrib/sdk/httpclient/v3"
)
func Test_HttpClient_With_Default_Handler(t *testing.T) {
diff --git a/contrib/trace/otlpgrpc/go.mod b/contrib/trace/otlpgrpc/go.mod
index 29db122bb..c7a46710d 100644
--- a/contrib/trace/otlpgrpc/go.mod
+++ b/contrib/trace/otlpgrpc/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/trace/otlpgrpc/v2
+module github.com/gogf/gf/contrib/trace/otlpgrpc/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
go.opentelemetry.io/otel v1.32.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.24.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.24.0
@@ -42,4 +42,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/trace/otlpgrpc/otlpgrpc.go b/contrib/trace/otlpgrpc/otlpgrpc.go
index 79de7012a..bdcbf3d50 100644
--- a/contrib/trace/otlpgrpc/otlpgrpc.go
+++ b/contrib/trace/otlpgrpc/otlpgrpc.go
@@ -21,8 +21,8 @@ import (
semconv "go.opentelemetry.io/otel/semconv/v1.24.0"
"google.golang.org/grpc/encoding/gzip"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gipv4"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gipv4"
)
const (
diff --git a/contrib/trace/otlphttp/go.mod b/contrib/trace/otlphttp/go.mod
index df8b34db9..e90901f42 100644
--- a/contrib/trace/otlphttp/go.mod
+++ b/contrib/trace/otlphttp/go.mod
@@ -1,9 +1,9 @@
-module github.com/gogf/gf/contrib/trace/otlphttp/v2
+module github.com/gogf/gf/contrib/trace/otlphttp/v3
go 1.22
require (
- github.com/gogf/gf/v2 v2.9.0
+ github.com/gogf/gf/v3 v3.0.0-alpha
go.opentelemetry.io/otel v1.32.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.24.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.24.0
@@ -42,4 +42,4 @@ require (
gopkg.in/yaml.v3 v3.0.1 // indirect
)
-replace github.com/gogf/gf/v2 => ../../../
+replace github.com/gogf/gf/v3 => ../../../
diff --git a/contrib/trace/otlphttp/otlphttp.go b/contrib/trace/otlphttp/otlphttp.go
index 2a09b664d..bb46858c0 100644
--- a/contrib/trace/otlphttp/otlphttp.go
+++ b/contrib/trace/otlphttp/otlphttp.go
@@ -20,8 +20,8 @@ import (
"go.opentelemetry.io/otel/sdk/trace"
semconv "go.opentelemetry.io/otel/semconv/v1.24.0"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gipv4"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gipv4"
)
const (
diff --git a/crypto/gaes/gaes.go b/crypto/gaes/gaes.go
index acaea665d..153d408e5 100644
--- a/crypto/gaes/gaes.go
+++ b/crypto/gaes/gaes.go
@@ -13,8 +13,8 @@ import (
"crypto/cipher"
"fmt"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
const (
diff --git a/crypto/gaes/gaes_z_unit_test.go b/crypto/gaes/gaes_z_unit_test.go
index ca5a9a706..919a4cb39 100644
--- a/crypto/gaes/gaes_z_unit_test.go
+++ b/crypto/gaes/gaes_z_unit_test.go
@@ -11,9 +11,9 @@ package gaes_test
import (
"testing"
- "github.com/gogf/gf/v2/crypto/gaes"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gaes"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/crypto/gcrc32/gcrc32.go b/crypto/gcrc32/gcrc32.go
index bef114b09..14a10a2c5 100644
--- a/crypto/gcrc32/gcrc32.go
+++ b/crypto/gcrc32/gcrc32.go
@@ -10,7 +10,7 @@ package gcrc32
import (
"hash/crc32"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Encrypt encrypts any type of variable using CRC32 algorithms.
diff --git a/crypto/gcrc32/gcrc32_z_unit_test.go b/crypto/gcrc32/gcrc32_z_unit_test.go
index 9e26cc3c0..7de5c8420 100644
--- a/crypto/gcrc32/gcrc32_z_unit_test.go
+++ b/crypto/gcrc32/gcrc32_z_unit_test.go
@@ -11,9 +11,9 @@ package gcrc32_test
import (
"testing"
- "github.com/gogf/gf/v2/crypto/gcrc32"
- "github.com/gogf/gf/v2/crypto/gmd5"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gcrc32"
+ "github.com/gogf/gf/v3/crypto/gmd5"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestEncrypt(t *testing.T) {
diff --git a/crypto/gdes/gdes.go b/crypto/gdes/gdes.go
index 9b29ec5ec..7fa1f3837 100644
--- a/crypto/gdes/gdes.go
+++ b/crypto/gdes/gdes.go
@@ -12,8 +12,8 @@ import (
"crypto/cipher"
"crypto/des"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
const (
diff --git a/crypto/gdes/gdes_z_unit_test.go b/crypto/gdes/gdes_z_unit_test.go
index d23e31760..0acc1a01e 100644
--- a/crypto/gdes/gdes_z_unit_test.go
+++ b/crypto/gdes/gdes_z_unit_test.go
@@ -10,8 +10,8 @@ import (
"encoding/hex"
"testing"
- "github.com/gogf/gf/v2/crypto/gdes"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gdes"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/crypto/gmd5/gmd5.go b/crypto/gmd5/gmd5.go
index 5b28bdb80..073134424 100644
--- a/crypto/gmd5/gmd5.go
+++ b/crypto/gmd5/gmd5.go
@@ -13,8 +13,8 @@ import (
"io"
"os"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Encrypt encrypts any type of variable using MD5 algorithms.
diff --git a/crypto/gmd5/gmd5_z_unit_test.go b/crypto/gmd5/gmd5_z_unit_test.go
index 95292a19c..ef613219f 100644
--- a/crypto/gmd5/gmd5_z_unit_test.go
+++ b/crypto/gmd5/gmd5_z_unit_test.go
@@ -12,8 +12,8 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/crypto/gmd5"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gmd5"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/crypto/gsha1/gsha1.go b/crypto/gsha1/gsha1.go
index fea46335f..1538989d8 100644
--- a/crypto/gsha1/gsha1.go
+++ b/crypto/gsha1/gsha1.go
@@ -13,8 +13,8 @@ import (
"io"
"os"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Encrypt encrypts any type of variable using SHA1 algorithms.
diff --git a/crypto/gsha1/gsha1_z_unit_test.go b/crypto/gsha1/gsha1_z_unit_test.go
index ea90cf725..e8dcae006 100644
--- a/crypto/gsha1/gsha1_z_unit_test.go
+++ b/crypto/gsha1/gsha1_z_unit_test.go
@@ -12,8 +12,8 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/crypto/gsha1"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/crypto/gsha1"
+ "github.com/gogf/gf/v3/test/gtest"
)
type user struct {
diff --git a/database/gdb/gdb.go b/database/gdb/gdb.go
index a1ea177dd..ca070ae07 100644
--- a/database/gdb/gdb.go
+++ b/database/gdb/gdb.go
@@ -14,18 +14,18 @@ import (
"database/sql"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/util/grand"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/util/grand"
+ "github.com/gogf/gf/v3/util/gutil"
)
// DB defines the interfaces for ORM operations.
diff --git a/database/gdb/gdb_converter.go b/database/gdb/gdb_converter.go
index 486ca61d5..d0396e618 100644
--- a/database/gdb/gdb_converter.go
+++ b/database/gdb/gdb_converter.go
@@ -9,9 +9,9 @@ package gdb
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// iVal is used for type assert api for Val().
diff --git a/database/gdb/gdb_core.go b/database/gdb/gdb_core.go
index 3665841a3..71d1b3bd0 100644
--- a/database/gdb/gdb_core.go
+++ b/database/gdb/gdb_core.go
@@ -14,19 +14,19 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// GetCore returns the underlying *Core object.
diff --git a/database/gdb/gdb_core_config.go b/database/gdb/gdb_core_config.go
index ae9c7c85b..3a0e8aded 100644
--- a/database/gdb/gdb_core_config.go
+++ b/database/gdb/gdb_core_config.go
@@ -11,13 +11,13 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Config is the configuration management object.
diff --git a/database/gdb/gdb_core_ctx.go b/database/gdb/gdb_core_ctx.go
index ea8ca4b66..6a9142c7f 100644
--- a/database/gdb/gdb_core_ctx.go
+++ b/database/gdb/gdb_core_ctx.go
@@ -10,9 +10,9 @@ import (
"context"
"sync"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gctx"
)
// internalCtxData stores data in ctx for internal usage purpose.
diff --git a/database/gdb/gdb_core_structure.go b/database/gdb/gdb_core_structure.go
index a954e03f9..ab7c11657 100644
--- a/database/gdb/gdb_core_structure.go
+++ b/database/gdb/gdb_core_structure.go
@@ -13,15 +13,15 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// GetFieldTypeStr retrieves and returns the field type string for certain field by name.
diff --git a/database/gdb/gdb_core_trace.go b/database/gdb/gdb_core_trace.go
index 8b24f0c67..389adcf74 100644
--- a/database/gdb/gdb_core_trace.go
+++ b/database/gdb/gdb_core_trace.go
@@ -16,11 +16,11 @@ import (
semconv "go.opentelemetry.io/otel/semconv/v1.18.0"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/net/gtrace"
+ "github.com/gogf/gf/v3/net/gtrace"
)
const (
- traceInstrumentName = "github.com/gogf/gf/v2/database/gdb"
+ traceInstrumentName = "github.com/gogf/gf/v3/database/gdb"
traceAttrDbType = "db.type"
traceAttrDbHost = "db.host"
traceAttrDbPort = "db.port"
diff --git a/database/gdb/gdb_core_transaction.go b/database/gdb/gdb_core_transaction.go
index c4cbfa616..e48cedacd 100644
--- a/database/gdb/gdb_core_transaction.go
+++ b/database/gdb/gdb_core_transaction.go
@@ -10,9 +10,9 @@ import (
"context"
"database/sql"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Propagation defines transaction propagation behavior.
diff --git a/database/gdb/gdb_core_txcore.go b/database/gdb/gdb_core_txcore.go
index 492d13380..3e13b2f2b 100644
--- a/database/gdb/gdb_core_txcore.go
+++ b/database/gdb/gdb_core_txcore.go
@@ -11,11 +11,11 @@ import (
"database/sql"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// TXCore is the struct for transaction management.
diff --git a/database/gdb/gdb_core_underlying.go b/database/gdb/gdb_core_underlying.go
index 481e870e8..e9e8d1935 100644
--- a/database/gdb/gdb_core_underlying.go
+++ b/database/gdb/gdb_core_underlying.go
@@ -16,14 +16,14 @@ import (
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
)
// Query commits one query SQL to underlying driver and returns the execution result.
diff --git a/database/gdb/gdb_core_utility.go b/database/gdb/gdb_core_utility.go
index 4872f13a1..a519b5d4c 100644
--- a/database/gdb/gdb_core_utility.go
+++ b/database/gdb/gdb_core_utility.go
@@ -11,11 +11,11 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gutil"
)
// GetDB returns the underlying DB.
diff --git a/database/gdb/gdb_driver_wrapper_db.go b/database/gdb/gdb_driver_wrapper_db.go
index 4a6670627..f5b9f50a6 100644
--- a/database/gdb/gdb_driver_wrapper_db.go
+++ b/database/gdb/gdb_driver_wrapper_db.go
@@ -11,14 +11,14 @@ import (
"database/sql"
"fmt"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gutil"
)
// DriverWrapperDB is a DB wrapper for extending features with embedded DB.
diff --git a/database/gdb/gdb_func.go b/database/gdb/gdb_func.go
index ba402e5c9..6886293dd 100644
--- a/database/gdb/gdb_func.go
+++ b/database/gdb/gdb_func.go
@@ -15,22 +15,22 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/encoding/ghash"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/encoding/ghash"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/gutil"
)
// iString is the type assert api for String.
diff --git a/database/gdb/gdb_model.go b/database/gdb/gdb_model.go
index dc67fef7d..6ccd9e82a 100644
--- a/database/gdb/gdb_model.go
+++ b/database/gdb/gdb_model.go
@@ -10,9 +10,9 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Model is core struct implementing the DAO for ORM.
diff --git a/database/gdb/gdb_model_builder_where.go b/database/gdb/gdb_model_builder_where.go
index 7b695b96b..173f92279 100644
--- a/database/gdb/gdb_model_builder_where.go
+++ b/database/gdb/gdb_model_builder_where.go
@@ -9,7 +9,7 @@ package gdb
import (
"fmt"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// doWhereType sets the condition statement for the model. The parameter `where` can be type of
diff --git a/database/gdb/gdb_model_builder_whereor.go b/database/gdb/gdb_model_builder_whereor.go
index 3a83593b9..fe069c338 100644
--- a/database/gdb/gdb_model_builder_whereor.go
+++ b/database/gdb/gdb_model_builder_whereor.go
@@ -9,7 +9,7 @@ package gdb
import (
"fmt"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// WhereOr adds "OR" condition to the where statement.
diff --git a/database/gdb/gdb_model_cache.go b/database/gdb/gdb_model_cache.go
index 76592cdec..668d01286 100644
--- a/database/gdb/gdb_model_cache.go
+++ b/database/gdb/gdb_model_cache.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// CacheOption is options for model cache control in query.
diff --git a/database/gdb/gdb_model_delete.go b/database/gdb/gdb_model_delete.go
index 25b417be5..0ecc96eec 100644
--- a/database/gdb/gdb_model_delete.go
+++ b/database/gdb/gdb_model_delete.go
@@ -9,10 +9,10 @@ package gdb
import (
"database/sql"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Delete does "DELETE FROM ... " statement for the model.
diff --git a/database/gdb/gdb_model_fields.go b/database/gdb/gdb_model_fields.go
index 9f7e2cc7c..a7ed0c1b1 100644
--- a/database/gdb/gdb_model_fields.go
+++ b/database/gdb/gdb_model_fields.go
@@ -9,10 +9,10 @@ package gdb
import (
"fmt"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Fields appends `fieldNamesOrMapStruct` to the operation fields of the model, multiple fields joined using char ','.
diff --git a/database/gdb/gdb_model_hook.go b/database/gdb/gdb_model_hook.go
index 7c88428f7..1899f8667 100644
--- a/database/gdb/gdb_model_hook.go
+++ b/database/gdb/gdb_model_hook.go
@@ -11,9 +11,9 @@ import (
"database/sql"
"fmt"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
type (
diff --git a/database/gdb/gdb_model_insert.go b/database/gdb/gdb_model_insert.go
index efb65df06..2550451d1 100644
--- a/database/gdb/gdb_model_insert.go
+++ b/database/gdb/gdb_model_insert.go
@@ -11,14 +11,14 @@ import (
"database/sql"
"reflect"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Batch sets the batch operation number for the model.
diff --git a/database/gdb/gdb_model_join.go b/database/gdb/gdb_model_join.go
index 2ebc2436d..c5d44420b 100644
--- a/database/gdb/gdb_model_join.go
+++ b/database/gdb/gdb_model_join.go
@@ -9,7 +9,7 @@ package gdb
import (
"fmt"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// LeftJoin does "LEFT JOIN ... ON ..." statement on the model.
diff --git a/database/gdb/gdb_model_order_group.go b/database/gdb/gdb_model_order_group.go
index 664dcf540..9f0f88302 100644
--- a/database/gdb/gdb_model_order_group.go
+++ b/database/gdb/gdb_model_order_group.go
@@ -9,8 +9,8 @@ package gdb
import (
"strings"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Order sets the "ORDER BY" statement for the model.
diff --git a/database/gdb/gdb_model_select.go b/database/gdb/gdb_model_select.go
index cc7a08148..78c9b122a 100644
--- a/database/gdb/gdb_model_select.go
+++ b/database/gdb/gdb_model_select.go
@@ -11,13 +11,13 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// All does "SELECT FROM ..." statement for the model.
diff --git a/database/gdb/gdb_model_sharding.go b/database/gdb/gdb_model_sharding.go
index 384f32bef..6e5f10635 100644
--- a/database/gdb/gdb_model_sharding.go
+++ b/database/gdb/gdb_model_sharding.go
@@ -12,9 +12,9 @@ import (
"hash/fnv"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
)
// ShardingConfig defines the configuration for database/table sharding.
diff --git a/database/gdb/gdb_model_soft_time.go b/database/gdb/gdb_model_soft_time.go
index 73e155275..9692a3e84 100644
--- a/database/gdb/gdb_model_soft_time.go
+++ b/database/gdb/gdb_model_soft_time.go
@@ -11,15 +11,15 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SoftTimeType custom defines the soft time field type.
diff --git a/database/gdb/gdb_model_update.go b/database/gdb/gdb_model_update.go
index c253ab96d..a6fac1ca6 100644
--- a/database/gdb/gdb_model_update.go
+++ b/database/gdb/gdb_model_update.go
@@ -11,13 +11,13 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Update does "UPDATE ... " statement for the model.
diff --git a/database/gdb/gdb_model_utility.go b/database/gdb/gdb_model_utility.go
index b9782f7fa..546c7f5c3 100644
--- a/database/gdb/gdb_model_utility.go
+++ b/database/gdb/gdb_model_utility.go
@@ -9,13 +9,13 @@ package gdb
import (
"time"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// QuoteWord checks given string `s` a word,
diff --git a/database/gdb/gdb_model_with.go b/database/gdb/gdb_model_with.go
index fcd36aeec..f62ce66d1 100644
--- a/database/gdb/gdb_model_with.go
+++ b/database/gdb/gdb_model_with.go
@@ -10,12 +10,12 @@ import (
"database/sql"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gutil"
)
// With creates and returns an ORM model based on metadata of given object.
diff --git a/database/gdb/gdb_result.go b/database/gdb/gdb_result.go
index f86714203..4e46c9179 100644
--- a/database/gdb/gdb_result.go
+++ b/database/gdb/gdb_result.go
@@ -9,7 +9,7 @@ package gdb
import (
"database/sql"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// SqlResult is execution result for sql operations.
diff --git a/database/gdb/gdb_type_record.go b/database/gdb/gdb_type_record.go
index 934705510..e0df88150 100644
--- a/database/gdb/gdb_type_record.go
+++ b/database/gdb/gdb_type_record.go
@@ -9,10 +9,10 @@ package gdb
import (
"database/sql"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Json converts `r` to JSON format content.
diff --git a/database/gdb/gdb_type_result.go b/database/gdb/gdb_type_result.go
index e1bff6184..a09d1772d 100644
--- a/database/gdb/gdb_type_result.go
+++ b/database/gdb/gdb_type_result.go
@@ -10,10 +10,10 @@ import (
"database/sql"
"math"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IsEmpty checks and returns whether `r` is empty.
diff --git a/database/gdb/gdb_type_result_scanlist.go b/database/gdb/gdb_type_result_scanlist.go
index d2d322846..c72607431 100644
--- a/database/gdb/gdb_type_result_scanlist.go
+++ b/database/gdb/gdb_type_result_scanlist.go
@@ -10,12 +10,12 @@ import (
"database/sql"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// ScanList converts `r` to struct slice which contains other complex struct attributes.
diff --git a/database/gdb/gdb_z_example_test.go b/database/gdb/gdb_z_example_test.go
index bfe69faa3..7cc1ff11e 100644
--- a/database/gdb/gdb_z_example_test.go
+++ b/database/gdb/gdb_z_example_test.go
@@ -9,8 +9,8 @@ package gdb_test
import (
"context"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/frame/g"
)
func ExampleTransaction() {
diff --git a/database/gdb/gdb_z_mysql_internal_test.go b/database/gdb/gdb_z_mysql_internal_test.go
index 5b5872eb8..b8130bdd5 100644
--- a/database/gdb/gdb_z_mysql_internal_test.go
+++ b/database/gdb/gdb_z_mysql_internal_test.go
@@ -10,8 +10,8 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gregex"
)
func Test_GetConverter(t *testing.T) {
diff --git a/database/gredis/gredis.go b/database/gredis/gredis.go
index 3f8f5dc24..477243176 100644
--- a/database/gredis/gredis.go
+++ b/database/gredis/gredis.go
@@ -14,8 +14,8 @@
package gredis
import (
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// AdapterFunc is the function creating redis adapter.
diff --git a/database/gredis/gredis_adapter.go b/database/gredis/gredis_adapter.go
index c941ab0f8..ea6a230fa 100644
--- a/database/gredis/gredis_adapter.go
+++ b/database/gredis/gredis_adapter.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// Adapter is an interface for universal redis operations.
diff --git a/database/gredis/gredis_config.go b/database/gredis/gredis_config.go
index ca6d34e18..97b995a16 100644
--- a/database/gredis/gredis_config.go
+++ b/database/gredis/gredis_config.go
@@ -11,11 +11,11 @@ import (
"crypto/tls"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Config is redis configuration.
diff --git a/database/gredis/gredis_instance.go b/database/gredis/gredis_instance.go
index 2805d557a..93e94173e 100644
--- a/database/gredis/gredis_instance.go
+++ b/database/gredis/gredis_instance.go
@@ -9,8 +9,8 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/internal/intlog"
)
var (
diff --git a/database/gredis/gredis_redis.go b/database/gredis/gredis_redis.go
index 5b24be32d..d32ba453a 100644
--- a/database/gredis/gredis_redis.go
+++ b/database/gredis/gredis_redis.go
@@ -9,9 +9,9 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Redis client.
diff --git a/database/gredis/gredis_redis_group_generic.go b/database/gredis/gredis_redis_group_generic.go
index 5dd6ffac4..3b52284db 100644
--- a/database/gredis/gredis_redis_group_generic.go
+++ b/database/gredis/gredis_redis_group_generic.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupGeneric manages generic redis operations.
diff --git a/database/gredis/gredis_redis_group_hash.go b/database/gredis/gredis_redis_group_hash.go
index ab3984472..04731a4f9 100644
--- a/database/gredis/gredis_redis_group_hash.go
+++ b/database/gredis/gredis_redis_group_hash.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupHash manages redis hash operations.
diff --git a/database/gredis/gredis_redis_group_list.go b/database/gredis/gredis_redis_group_list.go
index fa989170c..a2ded2739 100644
--- a/database/gredis/gredis_redis_group_list.go
+++ b/database/gredis/gredis_redis_group_list.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupList manages redis list operations.
diff --git a/database/gredis/gredis_redis_group_script.go b/database/gredis/gredis_redis_group_script.go
index e2ef1fc4e..3c344d748 100644
--- a/database/gredis/gredis_redis_group_script.go
+++ b/database/gredis/gredis_redis_group_script.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupScript manages redis script operations.
diff --git a/database/gredis/gredis_redis_group_set.go b/database/gredis/gredis_redis_group_set.go
index 27e04fbfe..314a1837c 100644
--- a/database/gredis/gredis_redis_group_set.go
+++ b/database/gredis/gredis_redis_group_set.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupSet manages redis set operations.
diff --git a/database/gredis/gredis_redis_group_sorted_set.go b/database/gredis/gredis_redis_group_sorted_set.go
index 83367136c..a44d87bc3 100644
--- a/database/gredis/gredis_redis_group_sorted_set.go
+++ b/database/gredis/gredis_redis_group_sorted_set.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupSortedSet manages redis sorted set operations.
diff --git a/database/gredis/gredis_redis_group_string.go b/database/gredis/gredis_redis_group_string.go
index 88e82704d..ca8187680 100644
--- a/database/gredis/gredis_redis_group_string.go
+++ b/database/gredis/gredis_redis_group_string.go
@@ -9,7 +9,7 @@ package gredis
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// IGroupString manages redis string operations.
diff --git a/debug/gdebug/gdebug_version.go b/debug/gdebug/gdebug_version.go
index db4bec6ec..f407b7391 100644
--- a/debug/gdebug/gdebug_version.go
+++ b/debug/gdebug/gdebug_version.go
@@ -13,8 +13,8 @@ import (
"os"
"strconv"
- "github.com/gogf/gf/v2/encoding/ghash"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/encoding/ghash"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// BinVersion returns the version of current running binary.
diff --git a/debug/gdebug/gdebug_z_unit_internal_test.go b/debug/gdebug/gdebug_z_unit_internal_test.go
index 272141479..1b28eb612 100644
--- a/debug/gdebug/gdebug_z_unit_internal_test.go
+++ b/debug/gdebug/gdebug_z_unit_internal_test.go
@@ -12,10 +12,10 @@ import (
func Test_getPackageFromCallerFunction(t *testing.T) {
dataMap := map[string]string{
- "github.com/gogf/gf/v2/test/a": "github.com/gogf/gf/v2/test/a",
- "github.com/gogf/gf/v2/test/a.C": "github.com/gogf/gf/v2/test/a",
- "github.com/gogf/gf/v2/test/aa.C": "github.com/gogf/gf/v2/test/aa",
- "github.com/gogf/gf/v2/test/gtest.C": "github.com/gogf/gf/v2/test/gtest",
+ "github.com/gogf/gf/v3/test/a": "github.com/gogf/gf/v3/test/a",
+ "github.com/gogf/gf/v3/test/a.C": "github.com/gogf/gf/v3/test/a",
+ "github.com/gogf/gf/v3/test/aa.C": "github.com/gogf/gf/v3/test/aa",
+ "github.com/gogf/gf/v3/test/gtest.C": "github.com/gogf/gf/v3/test/gtest",
}
for functionName, packageName := range dataMap {
if result := getPackageFromCallerFunction(functionName); result != packageName {
diff --git a/debug/gdebug/gdebug_z_unit_test.go b/debug/gdebug/gdebug_z_unit_test.go
index 0a8b0f84f..539a2fa8d 100644
--- a/debug/gdebug/gdebug_z_unit_test.go
+++ b/debug/gdebug/gdebug_z_unit_test.go
@@ -10,14 +10,14 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_CallerPackage(t *testing.T) {
gtest.C(t, func(t *gtest.T) {
- t.Assert(gdebug.CallerPackage(), "github.com/gogf/gf/v2/test/gtest")
+ t.Assert(gdebug.CallerPackage(), "github.com/gogf/gf/v3/test/gtest")
})
}
@@ -54,7 +54,7 @@ func Test_CallerFileLineShort(t *testing.T) {
func Test_FuncPath(t *testing.T) {
gtest.C(t, func(t *gtest.T) {
- t.Assert(gdebug.FuncPath(Test_FuncPath), "github.com/gogf/gf/v2/debug/gdebug_test.Test_FuncPath")
+ t.Assert(gdebug.FuncPath(Test_FuncPath), "github.com/gogf/gf/v3/debug/gdebug_test.Test_FuncPath")
})
}
diff --git a/encoding/gbase64/gbase64.go b/encoding/gbase64/gbase64.go
index fc9f11a33..44fe5095f 100644
--- a/encoding/gbase64/gbase64.go
+++ b/encoding/gbase64/gbase64.go
@@ -11,7 +11,7 @@ import (
"encoding/base64"
"os"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Encode encodes bytes with BASE64 algorithm.
diff --git a/encoding/gbase64/gbase64_z_unit_test.go b/encoding/gbase64/gbase64_z_unit_test.go
index 65cbc6561..85cfe96e8 100644
--- a/encoding/gbase64/gbase64_z_unit_test.go
+++ b/encoding/gbase64/gbase64_z_unit_test.go
@@ -9,8 +9,8 @@ package gbase64_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/test/gtest"
)
type testPair struct {
diff --git a/encoding/gbinary/gbinary_be.go b/encoding/gbinary/gbinary_be.go
index 6f6085489..c780a01e2 100644
--- a/encoding/gbinary/gbinary_be.go
+++ b/encoding/gbinary/gbinary_be.go
@@ -13,8 +13,8 @@ import (
"fmt"
"math"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// BeEncode encodes one or multiple `values` into bytes using BigEndian.
diff --git a/encoding/gbinary/gbinary_le.go b/encoding/gbinary/gbinary_le.go
index b648c09d2..49531b7ea 100644
--- a/encoding/gbinary/gbinary_le.go
+++ b/encoding/gbinary/gbinary_le.go
@@ -13,8 +13,8 @@ import (
"fmt"
"math"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// LeEncode encodes one or multiple `values` into bytes using LittleEndian.
diff --git a/encoding/gbinary/gbinary_z_unit_be_test.go b/encoding/gbinary/gbinary_z_unit_be_test.go
index f5997ca76..c695e836f 100644
--- a/encoding/gbinary/gbinary_z_unit_be_test.go
+++ b/encoding/gbinary/gbinary_z_unit_be_test.go
@@ -9,8 +9,8 @@ package gbinary_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_BeEncodeAndBeDecode(t *testing.T) {
diff --git a/encoding/gbinary/gbinary_z_unit_le_test.go b/encoding/gbinary/gbinary_z_unit_le_test.go
index a21e76891..617986938 100644
--- a/encoding/gbinary/gbinary_z_unit_le_test.go
+++ b/encoding/gbinary/gbinary_z_unit_le_test.go
@@ -9,8 +9,8 @@ package gbinary_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_LeEncodeAndLeDecode(t *testing.T) {
diff --git a/encoding/gbinary/gbinary_z_unit_test.go b/encoding/gbinary/gbinary_z_unit_test.go
index 060f38cc3..119bc447c 100644
--- a/encoding/gbinary/gbinary_z_unit_test.go
+++ b/encoding/gbinary/gbinary_z_unit_test.go
@@ -10,8 +10,8 @@ import (
"math"
"testing"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/test/gtest"
)
type User struct {
diff --git a/encoding/gcharset/gcharset.go b/encoding/gcharset/gcharset.go
index 5bb6a5ac0..b76d1ec57 100644
--- a/encoding/gcharset/gcharset.go
+++ b/encoding/gcharset/gcharset.go
@@ -28,9 +28,9 @@ import (
"golang.org/x/text/encoding/ianaindex"
"golang.org/x/text/transform"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// Alias for charsets.
diff --git a/encoding/gcharset/gcharset_z_unit_test.go b/encoding/gcharset/gcharset_z_unit_test.go
index 0d59d9de1..7ab3237e3 100644
--- a/encoding/gcharset/gcharset_z_unit_test.go
+++ b/encoding/gcharset/gcharset_z_unit_test.go
@@ -9,8 +9,8 @@ package gcharset_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gcharset"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gcharset"
+ "github.com/gogf/gf/v3/test/gtest"
)
var testData = []struct {
diff --git a/encoding/gcompress/gcompress_gzip.go b/encoding/gcompress/gcompress_gzip.go
index 40464f925..0fbfda002 100644
--- a/encoding/gcompress/gcompress_gzip.go
+++ b/encoding/gcompress/gcompress_gzip.go
@@ -11,8 +11,8 @@ import (
"compress/gzip"
"io"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
)
// Gzip compresses `data` using gzip algorithm.
diff --git a/encoding/gcompress/gcompress_z_unit_gzip_test.go b/encoding/gcompress/gcompress_z_unit_gzip_test.go
index 81983bb51..cca68b7fc 100644
--- a/encoding/gcompress/gcompress_z_unit_gzip_test.go
+++ b/encoding/gcompress/gcompress_z_unit_gzip_test.go
@@ -9,10 +9,10 @@ package gcompress_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Gzip_UnGzip(t *testing.T) {
diff --git a/encoding/gcompress/gcompress_z_unit_zip_test.go b/encoding/gcompress/gcompress_z_unit_zip_test.go
index 568b10d56..d6306046f 100644
--- a/encoding/gcompress/gcompress_z_unit_zip_test.go
+++ b/encoding/gcompress/gcompress_z_unit_zip_test.go
@@ -10,10 +10,10 @@ import (
"bytes"
"testing"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ZipPath(t *testing.T) {
diff --git a/encoding/gcompress/gcompress_z_unit_zlib_test.go b/encoding/gcompress/gcompress_z_unit_zlib_test.go
index ffd3e5d5d..e682be2fb 100644
--- a/encoding/gcompress/gcompress_z_unit_zlib_test.go
+++ b/encoding/gcompress/gcompress_z_unit_zlib_test.go
@@ -9,8 +9,8 @@ package gcompress_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Zlib_UnZlib(t *testing.T) {
diff --git a/encoding/gcompress/gcompress_zip.go b/encoding/gcompress/gcompress_zip.go
index a1c2ff419..e0dc63929 100644
--- a/encoding/gcompress/gcompress_zip.go
+++ b/encoding/gcompress/gcompress_zip.go
@@ -15,10 +15,10 @@ import (
"path/filepath"
"strings"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
)
// ZipPath compresses `fileOrFolderPaths` to `dstFilePath` using zip compressing algorithm.
diff --git a/encoding/gcompress/gcompress_zlib.go b/encoding/gcompress/gcompress_zlib.go
index c45b3d2bd..46226a664 100644
--- a/encoding/gcompress/gcompress_zlib.go
+++ b/encoding/gcompress/gcompress_zlib.go
@@ -12,7 +12,7 @@ import (
"compress/zlib"
"io"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Zlib compresses `data` with zlib algorithm.
diff --git a/encoding/ghash/ghash_z_bench_test.go b/encoding/ghash/ghash_z_bench_test.go
index 8ffb8ce7d..74a07dbae 100644
--- a/encoding/ghash/ghash_z_bench_test.go
+++ b/encoding/ghash/ghash_z_bench_test.go
@@ -11,7 +11,7 @@ package ghash_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/ghash"
+ "github.com/gogf/gf/v3/encoding/ghash"
)
var (
diff --git a/encoding/ghash/ghash_z_unit_test.go b/encoding/ghash/ghash_z_unit_test.go
index de24dd198..b6c76b642 100755
--- a/encoding/ghash/ghash_z_unit_test.go
+++ b/encoding/ghash/ghash_z_unit_test.go
@@ -9,8 +9,8 @@ package ghash_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/ghash"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/ghash"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/encoding/ghtml/ghtml.go b/encoding/ghtml/ghtml.go
index d027fb192..ed09b1e5b 100644
--- a/encoding/ghtml/ghtml.go
+++ b/encoding/ghtml/ghtml.go
@@ -14,8 +14,8 @@ import (
strip "github.com/grokify/html-strip-tags-go"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// StripTags strips HTML tags from content, and returns only text.
diff --git a/encoding/ghtml/ghtml_z_unit_test.go b/encoding/ghtml/ghtml_z_unit_test.go
index 41b06912d..a81c39e57 100644
--- a/encoding/ghtml/ghtml_z_unit_test.go
+++ b/encoding/ghtml/ghtml_z_unit_test.go
@@ -9,9 +9,9 @@ package ghtml_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/ghtml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/ghtml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_StripTags(t *testing.T) {
diff --git a/encoding/gini/gini.go b/encoding/gini/gini.go
index a9f0e821d..e641f24d4 100644
--- a/encoding/gini/gini.go
+++ b/encoding/gini/gini.go
@@ -14,9 +14,9 @@ import (
"io"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
)
// Decode converts INI format to map.
diff --git a/encoding/gini/gini_z_unit_test.go b/encoding/gini/gini_z_unit_test.go
index e3001f7f3..121078bc3 100644
--- a/encoding/gini/gini_z_unit_test.go
+++ b/encoding/gini/gini_z_unit_test.go
@@ -9,9 +9,9 @@ package gini_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gini"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gini"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/test/gtest"
)
var iniContent = `
diff --git a/encoding/gjson/gjson.go b/encoding/gjson/gjson.go
index e1f512067..7eb580905 100644
--- a/encoding/gjson/gjson.go
+++ b/encoding/gjson/gjson.go
@@ -12,13 +12,13 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
type ContentType string
diff --git a/encoding/gjson/gjson_api.go b/encoding/gjson/gjson_api.go
index 1b7425bd9..32f9452af 100644
--- a/encoding/gjson/gjson_api.go
+++ b/encoding/gjson/gjson_api.go
@@ -9,10 +9,10 @@ package gjson
import (
"fmt"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Interface returns the json value.
diff --git a/encoding/gjson/gjson_api_encoding.go b/encoding/gjson/gjson_api_encoding.go
index 23a0ae86f..c6d7136e3 100644
--- a/encoding/gjson/gjson_api_encoding.go
+++ b/encoding/gjson/gjson_api_encoding.go
@@ -7,12 +7,12 @@
package gjson
import (
- "github.com/gogf/gf/v2/encoding/gini"
- "github.com/gogf/gf/v2/encoding/gproperties"
- "github.com/gogf/gf/v2/encoding/gtoml"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/encoding/gyaml"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/encoding/gini"
+ "github.com/gogf/gf/v3/encoding/gproperties"
+ "github.com/gogf/gf/v3/encoding/gtoml"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/encoding/gyaml"
+ "github.com/gogf/gf/v3/internal/json"
)
// ========================================================================
diff --git a/encoding/gjson/gjson_api_new_load.go b/encoding/gjson/gjson_api_new_load.go
index 113e0dc96..83e023132 100644
--- a/encoding/gjson/gjson_api_new_load.go
+++ b/encoding/gjson/gjson_api_new_load.go
@@ -9,9 +9,9 @@ package gjson
import (
"reflect"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// New creates a Json object with any variable type of `data`, but `data` should be a map
diff --git a/encoding/gjson/gjson_api_new_load_content.go b/encoding/gjson/gjson_api_new_load_content.go
index 7ddda24c1..5db1043b2 100644
--- a/encoding/gjson/gjson_api_new_load_content.go
+++ b/encoding/gjson/gjson_api_new_load_content.go
@@ -9,16 +9,16 @@ package gjson
import (
"bytes"
- "github.com/gogf/gf/v2/encoding/gini"
- "github.com/gogf/gf/v2/encoding/gproperties"
- "github.com/gogf/gf/v2/encoding/gtoml"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/encoding/gyaml"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gini"
+ "github.com/gogf/gf/v3/encoding/gproperties"
+ "github.com/gogf/gf/v3/encoding/gtoml"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/encoding/gyaml"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// LoadWithOptions creates a Json object from given JSON format content and options.
diff --git a/encoding/gjson/gjson_api_new_load_path.go b/encoding/gjson/gjson_api_new_load_path.go
index 7cdab5d86..37aa229cf 100644
--- a/encoding/gjson/gjson_api_new_load_path.go
+++ b/encoding/gjson/gjson_api_new_load_path.go
@@ -6,7 +6,7 @@
package gjson
-import "github.com/gogf/gf/v2/os/gfile"
+import "github.com/gogf/gf/v3/os/gfile"
// Load loads content from specified file `path`, and creates a Json object from its content.
// Deprecated: use LoadPath instead.
diff --git a/encoding/gjson/gjson_stdlib_json_util.go b/encoding/gjson/gjson_stdlib_json_util.go
index 7ce04b81d..f96727bcc 100644
--- a/encoding/gjson/gjson_stdlib_json_util.go
+++ b/encoding/gjson/gjson_stdlib_json_util.go
@@ -9,9 +9,9 @@ package gjson
import (
"bytes"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Valid checks whether `data` is a valid JSON data type.
diff --git a/encoding/gjson/gjson_z_bench_test.go b/encoding/gjson/gjson_z_bench_test.go
index 7506c1f7d..151cf05bf 100644
--- a/encoding/gjson/gjson_z_bench_test.go
+++ b/encoding/gjson/gjson_z_bench_test.go
@@ -10,7 +10,7 @@ import (
json2 "encoding/json"
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
var (
diff --git a/encoding/gjson/gjson_z_example_conversion_test.go b/encoding/gjson/gjson_z_example_conversion_test.go
index 413d8802e..4677cb812 100644
--- a/encoding/gjson/gjson_z_example_conversion_test.go
+++ b/encoding/gjson/gjson_z_example_conversion_test.go
@@ -9,7 +9,7 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
func ExampleConversionNormalFormats() {
diff --git a/encoding/gjson/gjson_z_example_dataset_test.go b/encoding/gjson/gjson_z_example_dataset_test.go
index d80ce2eb0..020d871ac 100644
--- a/encoding/gjson/gjson_z_example_dataset_test.go
+++ b/encoding/gjson/gjson_z_example_dataset_test.go
@@ -9,7 +9,7 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
func ExampleJson_Set_DataSetCreate1() {
diff --git a/encoding/gjson/gjson_z_example_load_test.go b/encoding/gjson/gjson_z_example_load_test.go
index 812cd2a70..cd4e0646f 100644
--- a/encoding/gjson/gjson_z_example_load_test.go
+++ b/encoding/gjson/gjson_z_example_load_test.go
@@ -9,8 +9,8 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/test/gtest"
)
func ExampleLoad() {
diff --git a/encoding/gjson/gjson_z_example_new_test.go b/encoding/gjson/gjson_z_example_new_test.go
index 95e8cd459..8468531e8 100644
--- a/encoding/gjson/gjson_z_example_new_test.go
+++ b/encoding/gjson/gjson_z_example_new_test.go
@@ -9,7 +9,7 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
func ExampleNew() {
diff --git a/encoding/gjson/gjson_z_example_pattern_test.go b/encoding/gjson/gjson_z_example_pattern_test.go
index 020d7bff7..c22e2b406 100644
--- a/encoding/gjson/gjson_z_example_pattern_test.go
+++ b/encoding/gjson/gjson_z_example_pattern_test.go
@@ -9,7 +9,7 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
func ExampleDecodeToJson_PatternGet() {
diff --git a/encoding/gjson/gjson_z_example_test.go b/encoding/gjson/gjson_z_example_test.go
index 3e6c45f3f..1db8d4bbf 100644
--- a/encoding/gjson/gjson_z_example_test.go
+++ b/encoding/gjson/gjson_z_example_test.go
@@ -3,7 +3,7 @@ package gjson_test
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gjson"
)
func ExampleJson_SetSplitChar() {
diff --git a/encoding/gjson/gjson_z_unit_feature_json_test.go b/encoding/gjson/gjson_z_unit_feature_json_test.go
index 542b8e795..402169886 100644
--- a/encoding/gjson/gjson_z_unit_feature_json_test.go
+++ b/encoding/gjson/gjson_z_unit_feature_json_test.go
@@ -9,10 +9,10 @@ package gjson_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_ToJson(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_feature_load_test.go b/encoding/gjson/gjson_z_unit_feature_load_test.go
index 4a1f5e098..7d778b654 100644
--- a/encoding/gjson/gjson_z_unit_feature_load_test.go
+++ b/encoding/gjson/gjson_z_unit_feature_load_test.go
@@ -9,10 +9,10 @@ package gjson_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Load_JSON1(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_feature_new_test.go b/encoding/gjson/gjson_z_unit_feature_new_test.go
index 1cc8105e2..77986a8ad 100644
--- a/encoding/gjson/gjson_z_unit_feature_new_test.go
+++ b/encoding/gjson/gjson_z_unit_feature_new_test.go
@@ -9,8 +9,8 @@ package gjson_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_NewWithTag(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_feature_set_test.go b/encoding/gjson/gjson_z_unit_feature_set_test.go
index 1685e816f..1040d5388 100644
--- a/encoding/gjson/gjson_z_unit_feature_set_test.go
+++ b/encoding/gjson/gjson_z_unit_feature_set_test.go
@@ -10,11 +10,11 @@ import (
"bytes"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Set1(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_feature_struct_test.go b/encoding/gjson/gjson_z_unit_feature_struct_test.go
index df13c1b98..6bf9a8072 100644
--- a/encoding/gjson/gjson_z_unit_feature_struct_test.go
+++ b/encoding/gjson/gjson_z_unit_feature_struct_test.go
@@ -9,8 +9,8 @@ package gjson_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GetScan(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_implements_test.go b/encoding/gjson/gjson_z_unit_implements_test.go
index a47746e3d..9cf79378e 100644
--- a/encoding/gjson/gjson_z_unit_implements_test.go
+++ b/encoding/gjson/gjson_z_unit_implements_test.go
@@ -9,11 +9,11 @@ package gjson_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestJson_UnmarshalJSON(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_internal_test.go b/encoding/gjson/gjson_z_unit_internal_test.go
index 118096823..8a42c8f52 100644
--- a/encoding/gjson/gjson_z_unit_internal_test.go
+++ b/encoding/gjson/gjson_z_unit_internal_test.go
@@ -9,7 +9,7 @@ package gjson
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_checkDataType(t *testing.T) {
diff --git a/encoding/gjson/gjson_z_unit_test.go b/encoding/gjson/gjson_z_unit_test.go
index 9bb6958e5..526d5342b 100644
--- a/encoding/gjson/gjson_z_unit_test.go
+++ b/encoding/gjson/gjson_z_unit_test.go
@@ -10,13 +10,13 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_New(t *testing.T) {
diff --git a/encoding/gproperties/gproperties.go b/encoding/gproperties/gproperties.go
index 580fe2980..369e58cee 100644
--- a/encoding/gproperties/gproperties.go
+++ b/encoding/gproperties/gproperties.go
@@ -14,9 +14,9 @@ import (
"github.com/magiconair/properties"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Decode converts properties format to map.
diff --git a/encoding/gproperties/gproperties_z_unit_test.go b/encoding/gproperties/gproperties_z_unit_test.go
index c23ad2709..8cd07c857 100644
--- a/encoding/gproperties/gproperties_z_unit_test.go
+++ b/encoding/gproperties/gproperties_z_unit_test.go
@@ -11,10 +11,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gproperties"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gproperties"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
var pStr string = `
diff --git a/encoding/gtoml/gtoml.go b/encoding/gtoml/gtoml.go
index aeca726bb..c6ffbb51b 100644
--- a/encoding/gtoml/gtoml.go
+++ b/encoding/gtoml/gtoml.go
@@ -12,8 +12,8 @@ import (
"github.com/BurntSushi/toml"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
)
func Encode(v interface{}) ([]byte, error) {
diff --git a/encoding/gtoml/gtoml_z_unit_test.go b/encoding/gtoml/gtoml_z_unit_test.go
index aa02421fa..e0a57e363 100644
--- a/encoding/gtoml/gtoml_z_unit_test.go
+++ b/encoding/gtoml/gtoml_z_unit_test.go
@@ -8,9 +8,9 @@ package gtoml_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gtoml"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gtoml"
+ "github.com/gogf/gf/v3/test/gtest"
)
var tomlStr string = `
diff --git a/encoding/gurl/url.go b/encoding/gurl/url.go
index e519f3481..878425528 100644
--- a/encoding/gurl/url.go
+++ b/encoding/gurl/url.go
@@ -11,7 +11,7 @@ import (
"net/url"
"strings"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Encode escapes the string so it can be safely placed
diff --git a/encoding/gurl/url_z_unit_test.go b/encoding/gurl/url_z_unit_test.go
index 88e39659a..e6ae94b5e 100644
--- a/encoding/gurl/url_z_unit_test.go
+++ b/encoding/gurl/url_z_unit_test.go
@@ -9,8 +9,8 @@ import (
"net/url"
"testing"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/encoding/gxml/gxml.go b/encoding/gxml/gxml.go
index f28d3dbc4..3df545db8 100644
--- a/encoding/gxml/gxml.go
+++ b/encoding/gxml/gxml.go
@@ -12,9 +12,9 @@ import (
"github.com/clbanning/mxj/v2"
- "github.com/gogf/gf/v2/encoding/gcharset"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/encoding/gcharset"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gregex"
)
// Decode parses `content` into and returns as map.
diff --git a/encoding/gxml/gxml_z_unit_test.go b/encoding/gxml/gxml_z_unit_test.go
index e519cda81..43e766cbb 100644
--- a/encoding/gxml/gxml_z_unit_test.go
+++ b/encoding/gxml/gxml_z_unit_test.go
@@ -11,10 +11,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/encoding/gcharset"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gcharset"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/test/gtest"
)
var testData = []struct {
diff --git a/encoding/gyaml/gyaml.go b/encoding/gyaml/gyaml.go
index 00aa91554..f9a28974a 100644
--- a/encoding/gyaml/gyaml.go
+++ b/encoding/gyaml/gyaml.go
@@ -13,9 +13,9 @@ import (
"gopkg.in/yaml.v3"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Encode encodes `value` to an YAML format content as bytes.
diff --git a/encoding/gyaml/gyaml_z_unit_test.go b/encoding/gyaml/gyaml_z_unit_test.go
index cea2fac10..e30203815 100644
--- a/encoding/gyaml/gyaml_z_unit_test.go
+++ b/encoding/gyaml/gyaml_z_unit_test.go
@@ -9,11 +9,11 @@ package gyaml_test
import (
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gyaml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gyaml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
)
var yamlStr string = `
diff --git a/errors/gcode/gcode_z_unit_test.go b/errors/gcode/gcode_z_unit_test.go
index 7bbd5b254..79170cb6d 100644
--- a/errors/gcode/gcode_z_unit_test.go
+++ b/errors/gcode/gcode_z_unit_test.go
@@ -9,8 +9,8 @@ package gcode_test
import (
"testing"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Case(t *testing.T) {
diff --git a/errors/gerror/gerror.go b/errors/gerror/gerror.go
index e252d872a..0afcc8eab 100644
--- a/errors/gerror/gerror.go
+++ b/errors/gerror/gerror.go
@@ -12,7 +12,7 @@
package gerror
import (
- "github.com/gogf/gf/v2/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gcode"
)
// IEqual is the interface for Equal feature.
diff --git a/errors/gerror/gerror_api.go b/errors/gerror/gerror_api.go
index 9f6a8c9e3..fde86f351 100644
--- a/errors/gerror/gerror_api.go
+++ b/errors/gerror/gerror_api.go
@@ -9,7 +9,7 @@ package gerror
import (
"fmt"
- "github.com/gogf/gf/v2/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gcode"
)
// New creates and returns an error which is formatted from given text.
diff --git a/errors/gerror/gerror_api_code.go b/errors/gerror/gerror_api_code.go
index 98ac32821..22741d929 100644
--- a/errors/gerror/gerror_api_code.go
+++ b/errors/gerror/gerror_api_code.go
@@ -10,7 +10,7 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gcode"
)
// NewCode creates and returns an error that has error code and given text.
diff --git a/errors/gerror/gerror_api_option.go b/errors/gerror/gerror_api_option.go
index 4ac7f1d93..7b89a61c1 100644
--- a/errors/gerror/gerror_api_option.go
+++ b/errors/gerror/gerror_api_option.go
@@ -6,7 +6,7 @@
package gerror
-import "github.com/gogf/gf/v2/errors/gcode"
+import "github.com/gogf/gf/v3/errors/gcode"
// Option is option for creating error.
type Option struct {
diff --git a/errors/gerror/gerror_error.go b/errors/gerror/gerror_error.go
index 18a181184..7b354a4a5 100644
--- a/errors/gerror/gerror_error.go
+++ b/errors/gerror/gerror_error.go
@@ -12,7 +12,7 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gcode"
)
// Error is custom error for additional features.
diff --git a/errors/gerror/gerror_error_code.go b/errors/gerror/gerror_error_code.go
index 1000e9f9d..e59c574f9 100644
--- a/errors/gerror/gerror_error_code.go
+++ b/errors/gerror/gerror_error_code.go
@@ -7,7 +7,7 @@
package gerror
import (
- "github.com/gogf/gf/v2/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gcode"
)
// Code returns the error code.
diff --git a/errors/gerror/gerror_error_stack.go b/errors/gerror/gerror_error_stack.go
index 553abd5a8..26b22e51b 100644
--- a/errors/gerror/gerror_error_stack.go
+++ b/errors/gerror/gerror_error_stack.go
@@ -13,8 +13,8 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/errors"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/errors"
)
// stackInfo manages stack info of certain error.
diff --git a/errors/gerror/gerror_z_bench_test.go b/errors/gerror/gerror_z_bench_test.go
index 5046b8a4d..f62f6dbc4 100644
--- a/errors/gerror/gerror_z_bench_test.go
+++ b/errors/gerror/gerror_z_bench_test.go
@@ -10,8 +10,8 @@ import (
"errors"
"testing"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
var (
diff --git a/errors/gerror/gerror_z_example_test.go b/errors/gerror/gerror_z_example_test.go
index a0af3762f..c5f0b6566 100644
--- a/errors/gerror/gerror_z_example_test.go
+++ b/errors/gerror/gerror_z_example_test.go
@@ -10,8 +10,8 @@ import (
"errors"
"fmt"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
func ExampleNewCode() {
diff --git a/errors/gerror/gerror_z_unit_test.go b/errors/gerror/gerror_z_unit_test.go
index 83acc1837..c3a31e455 100644
--- a/errors/gerror/gerror_z_unit_test.go
+++ b/errors/gerror/gerror_z_unit_test.go
@@ -11,10 +11,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
)
// customError is used to test As function
diff --git a/examples b/examples
index f15e0c197..2544fee34 160000
--- a/examples
+++ b/examples
@@ -1 +1 @@
-Subproject commit f15e0c1978935dbe44ae6a7b8fe91de53abf1beb
+Subproject commit 2544fee34dd10e6914687f7335bd9e772215ce07
diff --git a/frame/g/g.go b/frame/g/g.go
index 5c196c5cb..891971c06 100644
--- a/frame/g/g.go
+++ b/frame/g/g.go
@@ -13,8 +13,8 @@ package g
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/util/gmeta"
)
type (
diff --git a/frame/g/g_func.go b/frame/g/g_func.go
index 3aba33570..41995d2fa 100644
--- a/frame/g/g_func.go
+++ b/frame/g/g_func.go
@@ -10,11 +10,11 @@ import (
"context"
"io"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Go creates a new asynchronous goroutine function with specified recover function.
diff --git a/frame/g/g_object.go b/frame/g/g_object.go
index 86fd97004..038cf802e 100644
--- a/frame/g/g_object.go
+++ b/frame/g/g_object.go
@@ -7,19 +7,19 @@
package g
import (
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/net/gudp"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/net/gudp"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/util/gvalid"
)
// Client is a convenience function, which creates and returns a new HTTP client.
diff --git a/frame/g/g_setting.go b/frame/g/g_setting.go
index 5d5ffdfea..c3f3a4f0b 100644
--- a/frame/g/g_setting.go
+++ b/frame/g/g_setting.go
@@ -7,7 +7,7 @@
package g
import (
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// SetDebug enables/disables the GoFrame internal logging manually.
diff --git a/frame/g/g_z_example_test.go b/frame/g/g_z_example_test.go
index ba90c880e..fb1502110 100644
--- a/frame/g/g_z_example_test.go
+++ b/frame/g/g_z_example_test.go
@@ -7,8 +7,8 @@
package g_test
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
)
func ExampleServer() {
diff --git a/frame/g/g_z_unit_test.go b/frame/g/g_z_unit_test.go
index 56bd9e874..37f8b66f6 100644
--- a/frame/g/g_z_unit_test.go
+++ b/frame/g/g_z_unit_test.go
@@ -12,10 +12,10 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/frame/gins/gins_config.go b/frame/gins/gins_config.go
index c8eb28f80..47ffd5e0d 100644
--- a/frame/gins/gins_config.go
+++ b/frame/gins/gins_config.go
@@ -7,7 +7,7 @@
package gins
import (
- "github.com/gogf/gf/v2/os/gcfg"
+ "github.com/gogf/gf/v3/os/gcfg"
)
// Config returns an instance of View with default settings.
diff --git a/frame/gins/gins_database.go b/frame/gins/gins_database.go
index ef8e07aaf..cf70e5423 100644
--- a/frame/gins/gins_database.go
+++ b/frame/gins/gins_database.go
@@ -10,16 +10,16 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gdb"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gdb"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Database returns an instance of database ORM object with specified configuration group name.
diff --git a/frame/gins/gins_httpclient.go b/frame/gins/gins_httpclient.go
index c3fb70d2f..5ffaa36bf 100644
--- a/frame/gins/gins_httpclient.go
+++ b/frame/gins/gins_httpclient.go
@@ -9,8 +9,8 @@ package gins
import (
"fmt"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/net/gclient"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/net/gclient"
)
// HttpClient returns an instance of http client with specified name.
diff --git a/frame/gins/gins_i18n.go b/frame/gins/gins_i18n.go
index 146952a11..3fdf653ca 100644
--- a/frame/gins/gins_i18n.go
+++ b/frame/gins/gins_i18n.go
@@ -7,7 +7,7 @@
package gins
import (
- "github.com/gogf/gf/v2/i18n/gi18n"
+ "github.com/gogf/gf/v3/i18n/gi18n"
)
// I18n returns an instance of gi18n.Manager.
diff --git a/frame/gins/gins_log.go b/frame/gins/gins_log.go
index bc1889f4a..626d85a99 100644
--- a/frame/gins/gins_log.go
+++ b/frame/gins/gins_log.go
@@ -10,10 +10,10 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Log returns an instance of glog.Logger.
diff --git a/frame/gins/gins_redis.go b/frame/gins/gins_redis.go
index 7dc36d1a8..b10cfcc09 100644
--- a/frame/gins/gins_redis.go
+++ b/frame/gins/gins_redis.go
@@ -10,14 +10,14 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Redis returns an instance of redis client with specified configuration group name.
diff --git a/frame/gins/gins_resource.go b/frame/gins/gins_resource.go
index bd84d50b2..87554d0bb 100644
--- a/frame/gins/gins_resource.go
+++ b/frame/gins/gins_resource.go
@@ -7,7 +7,7 @@
package gins
import (
- "github.com/gogf/gf/v2/os/gres"
+ "github.com/gogf/gf/v3/os/gres"
)
// Resource returns an instance of Resource.
diff --git a/frame/gins/gins_server.go b/frame/gins/gins_server.go
index dba6f67db..97a11de53 100644
--- a/frame/gins/gins_server.go
+++ b/frame/gins/gins_server.go
@@ -10,12 +10,12 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Server returns an instance of http server with specified name.
diff --git a/frame/gins/gins_view.go b/frame/gins/gins_view.go
index e9d166d82..4632ee236 100644
--- a/frame/gins/gins_view.go
+++ b/frame/gins/gins_view.go
@@ -10,11 +10,11 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/util/gutil"
)
// View returns an instance of View with default settings.
diff --git a/frame/gins/gins_z_unit_config_test.go b/frame/gins/gins_z_unit_config_test.go
index 7a335f114..79a57488c 100644
--- a/frame/gins/gins_z_unit_config_test.go
+++ b/frame/gins/gins_z_unit_config_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/frame/gins/gins_z_unit_database_test.go b/frame/gins/gins_z_unit_database_test.go
index bd18b541c..b0ddfc194 100644
--- a/frame/gins/gins_z_unit_database_test.go
+++ b/frame/gins/gins_z_unit_database_test.go
@@ -10,11 +10,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Database(t *testing.T) {
diff --git a/frame/gins/gins_z_unit_httpclient_test.go b/frame/gins/gins_z_unit_httpclient_test.go
index b250ae7b5..86996592a 100644
--- a/frame/gins/gins_z_unit_httpclient_test.go
+++ b/frame/gins/gins_z_unit_httpclient_test.go
@@ -10,8 +10,8 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Client(t *testing.T) {
diff --git a/frame/gins/gins_z_unit_server_test.go b/frame/gins/gins_z_unit_server_test.go
index 6aa835c88..4b6b2c92f 100644
--- a/frame/gins/gins_z_unit_server_test.go
+++ b/frame/gins/gins_z_unit_server_test.go
@@ -11,13 +11,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/gins"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/gins"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Server(t *testing.T) {
diff --git a/frame/gins/gins_z_unit_view_test.go b/frame/gins/gins_z_unit_view_test.go
index 5a713e5b7..ab84fd150 100644
--- a/frame/gins/gins_z_unit_view_test.go
+++ b/frame/gins/gins_z_unit_view_test.go
@@ -11,11 +11,11 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_View(t *testing.T) {
diff --git a/go.mod b/go.mod
index 4d1a19404..129099504 100644
--- a/go.mod
+++ b/go.mod
@@ -1,4 +1,4 @@
-module github.com/gogf/gf/v2
+module github.com/gogf/gf/v3
go 1.22
diff --git a/i18n/gi18n/gi18n_ctx.go b/i18n/gi18n/gi18n_ctx.go
index 8d164ac9e..d732a5914 100644
--- a/i18n/gi18n/gi18n_ctx.go
+++ b/i18n/gi18n/gi18n_ctx.go
@@ -10,7 +10,7 @@ package gi18n
import (
"context"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/os/gctx"
)
const (
diff --git a/i18n/gi18n/gi18n_instance.go b/i18n/gi18n/gi18n_instance.go
index 58505b948..ad70fe471 100644
--- a/i18n/gi18n/gi18n_instance.go
+++ b/i18n/gi18n/gi18n_instance.go
@@ -6,7 +6,7 @@
package gi18n
-import "github.com/gogf/gf/v2/container/gmap"
+import "github.com/gogf/gf/v3/container/gmap"
const (
// DefaultName is the default group name for instance usage.
diff --git a/i18n/gi18n/gi18n_manager.go b/i18n/gi18n/gi18n_manager.go
index 20d903405..e555f883b 100644
--- a/i18n/gi18n/gi18n_manager.go
+++ b/i18n/gi18n/gi18n_manager.go
@@ -12,15 +12,15 @@ import (
"strings"
"sync"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// pathType is the type for i18n file path.
diff --git a/i18n/gi18n/gi18n_z_unit_test.go b/i18n/gi18n/gi18n_z_unit_test.go
index 2a1d672a4..b452c4bda 100644
--- a/i18n/gi18n/gi18n_z_unit_test.go
+++ b/i18n/gi18n/gi18n_z_unit_test.go
@@ -11,16 +11,16 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Basic(t *testing.T) {
diff --git a/internal/consts/consts.go b/internal/consts/consts.go
index 8b1bd37fe..160fd1f3e 100644
--- a/internal/consts/consts.go
+++ b/internal/consts/consts.go
@@ -16,6 +16,6 @@ const (
ConfigNodeNameServerSecondary = "httpserver" // New version configuration item name support from v2.
// StackFilterKeyForGoFrame is the stack filtering key for all GoFrame module paths.
- // Eg: .../pkg/mod/github.com/gogf/gf/v2@v2.0.0-20211011134327-54dd11f51122/debug/gdebug/gdebug_caller.go
+ // Eg: .../pkg/mod/github.com/gogf/gf/v3@v2.0.0-20211011134327-54dd11f51122/debug/gdebug/gdebug_caller.go
StackFilterKeyForGoFrame = "github.com/gogf/gf/"
)
diff --git a/internal/empty/empty.go b/internal/empty/empty.go
index 5ca3d3b7e..3c9d097c8 100644
--- a/internal/empty/empty.go
+++ b/internal/empty/empty.go
@@ -11,7 +11,7 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/internal/reflection"
+ "github.com/gogf/gf/v3/internal/reflection"
)
// iString is used for type assert api for String().
diff --git a/internal/empty/empty_z_unit_test.go b/internal/empty/empty_z_unit_test.go
index 6acb52638..57d256ca4 100644
--- a/internal/empty/empty_z_unit_test.go
+++ b/internal/empty/empty_z_unit_test.go
@@ -10,11 +10,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type TestInt int
diff --git a/internal/errors/errors.go b/internal/errors/errors.go
index b1f83aa5e..663314b87 100644
--- a/internal/errors/errors.go
+++ b/internal/errors/errors.go
@@ -8,7 +8,7 @@
package errors
import (
- "github.com/gogf/gf/v2/internal/command"
+ "github.com/gogf/gf/v3/internal/command"
)
// StackMode is the mode that printing stack information in StackModeBrief or StackModeDetail mode.
diff --git a/internal/errors/errors_test.go b/internal/errors/errors_test.go
index e0ebab6eb..fa7fefce5 100644
--- a/internal/errors/errors_test.go
+++ b/internal/errors/errors_test.go
@@ -9,8 +9,8 @@ package errors_test
import (
"testing"
- "github.com/gogf/gf/v2/internal/errors"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/internal/errors"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_IsStackModeBrief(t *testing.T) {
diff --git a/internal/httputil/httputils.go b/internal/httputil/httputils.go
index 55f181ed8..480bce3fd 100644
--- a/internal/httputil/httputils.go
+++ b/internal/httputil/httputils.go
@@ -11,10 +11,10 @@ import (
"net/http"
"strings"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/internal/httputil/httputils_test.go b/internal/httputil/httputils_test.go
index 8833b9534..b0a48e17e 100644
--- a/internal/httputil/httputils_test.go
+++ b/internal/httputil/httputils_test.go
@@ -9,10 +9,10 @@ package httputil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func TestBuildParams(t *testing.T) {
diff --git a/internal/instance/instance.go b/internal/instance/instance.go
index a5c021505..53d644657 100644
--- a/internal/instance/instance.go
+++ b/internal/instance/instance.go
@@ -10,8 +10,8 @@
package instance
import (
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/encoding/ghash"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/encoding/ghash"
)
const (
diff --git a/internal/instance/instance_test.go b/internal/instance/instance_test.go
index afdda594a..6a1cb5af9 100644
--- a/internal/instance/instance_test.go
+++ b/internal/instance/instance_test.go
@@ -9,8 +9,8 @@ package instance_test
import (
"testing"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_SetGet(t *testing.T) {
diff --git a/internal/intlog/intlog.go b/internal/intlog/intlog.go
index e86380dc4..63c8dfb17 100644
--- a/internal/intlog/intlog.go
+++ b/internal/intlog/intlog.go
@@ -16,8 +16,8 @@ import (
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/internal/utils"
)
const (
diff --git a/internal/json/json.go b/internal/json/json.go
index 374aec688..204b30234 100644
--- a/internal/json/json.go
+++ b/internal/json/json.go
@@ -12,7 +12,7 @@ import (
"encoding/json"
"io"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// RawMessage is a raw encoded JSON value.
diff --git a/internal/mutex/mutex_z_bench_test.go b/internal/mutex/mutex_z_bench_test.go
index 9a284300f..7e90eac47 100644
--- a/internal/mutex/mutex_z_bench_test.go
+++ b/internal/mutex/mutex_z_bench_test.go
@@ -9,7 +9,7 @@ package mutex_test
import (
"testing"
- "github.com/gogf/gf/v2/internal/mutex"
+ "github.com/gogf/gf/v3/internal/mutex"
)
var (
diff --git a/internal/mutex/mutex_z_unit_test.go b/internal/mutex/mutex_z_unit_test.go
index 1e2808694..542745c41 100644
--- a/internal/mutex/mutex_z_unit_test.go
+++ b/internal/mutex/mutex_z_unit_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/internal/mutex"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/internal/mutex"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestMutexIsSafe(t *testing.T) {
diff --git a/internal/reflection/reflection_test.go b/internal/reflection/reflection_test.go
index 417cf807c..1b80b9475 100644
--- a/internal/reflection/reflection_test.go
+++ b/internal/reflection/reflection_test.go
@@ -10,8 +10,8 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_OriginValueAndKind(t *testing.T) {
diff --git a/internal/rwmutex/rwmutex_z_bench_test.go b/internal/rwmutex/rwmutex_z_bench_test.go
index 90540a4c8..70c2eda01 100644
--- a/internal/rwmutex/rwmutex_z_bench_test.go
+++ b/internal/rwmutex/rwmutex_z_bench_test.go
@@ -9,7 +9,7 @@ package rwmutex_test
import (
"testing"
- "github.com/gogf/gf/v2/internal/rwmutex"
+ "github.com/gogf/gf/v3/internal/rwmutex"
)
var (
diff --git a/internal/rwmutex/rwmutex_z_unit_test.go b/internal/rwmutex/rwmutex_z_unit_test.go
index a7426d97a..427e58f17 100644
--- a/internal/rwmutex/rwmutex_z_unit_test.go
+++ b/internal/rwmutex/rwmutex_z_unit_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/internal/rwmutex"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/internal/rwmutex"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestRWMutexIsSafe(t *testing.T) {
diff --git a/internal/tracing/tracing.go b/internal/tracing/tracing.go
index c9d7a6f48..49f4e3ea8 100644
--- a/internal/tracing/tracing.go
+++ b/internal/tracing/tracing.go
@@ -13,9 +13,9 @@ import (
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/util/grand"
)
var (
diff --git a/internal/utils/utils_debug.go b/internal/utils/utils_debug.go
index 9b26e78b8..2b1103086 100644
--- a/internal/utils/utils_debug.go
+++ b/internal/utils/utils_debug.go
@@ -7,7 +7,7 @@
package utils
import (
- "github.com/gogf/gf/v2/internal/command"
+ "github.com/gogf/gf/v3/internal/command"
)
const (
diff --git a/internal/utils/utils_is.go b/internal/utils/utils_is.go
index 01fe759ee..7e94bb83e 100644
--- a/internal/utils/utils_is.go
+++ b/internal/utils/utils_is.go
@@ -9,7 +9,7 @@ package utils
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
+ "github.com/gogf/gf/v3/internal/empty"
)
// IsNil checks whether `value` is nil, especially for interface{} type value.
diff --git a/internal/utils/utils_z_bench_test.go b/internal/utils/utils_z_bench_test.go
index 4ad988c28..799204353 100644
--- a/internal/utils/utils_z_bench_test.go
+++ b/internal/utils/utils_z_bench_test.go
@@ -10,7 +10,7 @@ import (
"regexp"
"testing"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
var (
diff --git a/internal/utils/utils_z_unit_is_test.go b/internal/utils/utils_z_unit_is_test.go
index e215d91ae..f91e354b0 100644
--- a/internal/utils/utils_z_unit_is_test.go
+++ b/internal/utils/utils_z_unit_is_test.go
@@ -9,11 +9,11 @@ package utils_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestVar_IsNil(t *testing.T) {
diff --git a/internal/utils/utils_z_unit_test.go b/internal/utils/utils_z_unit_test.go
index 8c73eeac1..5ce87b7fa 100644
--- a/internal/utils/utils_z_unit_test.go
+++ b/internal/utils/utils_z_unit_test.go
@@ -12,8 +12,8 @@ import (
"testing"
"unsafe"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ReadCloser(t *testing.T) {
diff --git a/net/gclient/gclient.go b/net/gclient/gclient.go
index 10444a9fe..e4ae6fadb 100644
--- a/net/gclient/gclient.go
+++ b/net/gclient/gclient.go
@@ -15,11 +15,11 @@ import (
"os"
"time"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
)
// Client is the HTTP client for HTTP request management.
diff --git a/net/gclient/gclient_bytes.go b/net/gclient/gclient_bytes.go
index 1899b920e..4bbd815f1 100644
--- a/net/gclient/gclient_bytes.go
+++ b/net/gclient/gclient_bytes.go
@@ -10,7 +10,7 @@ import (
"context"
"net/http"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// GetBytes sends a GET request, retrieves and returns the result content as bytes.
diff --git a/net/gclient/gclient_chain.go b/net/gclient/gclient_chain.go
index 7b0b6c643..142adb61e 100644
--- a/net/gclient/gclient_chain.go
+++ b/net/gclient/gclient_chain.go
@@ -9,7 +9,7 @@ package gclient
import (
"time"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Prefix is a chaining function,
diff --git a/net/gclient/gclient_config.go b/net/gclient/gclient_config.go
index baa090220..f81288785 100644
--- a/net/gclient/gclient_config.go
+++ b/net/gclient/gclient_config.go
@@ -18,12 +18,12 @@ import (
"golang.org/x/net/proxy"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SetBrowserMode enables browser mode of the client.
diff --git a/net/gclient/gclient_discovery.go b/net/gclient/gclient_discovery.go
index ff9a1df9d..03f77cf6b 100644
--- a/net/gclient/gclient_discovery.go
+++ b/net/gclient/gclient_discovery.go
@@ -10,12 +10,12 @@ import (
"context"
"net/http"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gsel"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gsel"
+ "github.com/gogf/gf/v3/net/gsvc"
)
type discoveryNode struct {
diff --git a/net/gclient/gclient_dump.go b/net/gclient/gclient_dump.go
index 9a3023f02..2d2ec5622 100644
--- a/net/gclient/gclient_dump.go
+++ b/net/gclient/gclient_dump.go
@@ -12,8 +12,8 @@ import (
"net/http"
"net/http/httputil"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/utils"
)
// dumpTextFormat is the format of the dumped raw string
diff --git a/net/gclient/gclient_metrics.go b/net/gclient/gclient_metrics.go
index 2b81a9b9b..f985f88ef 100644
--- a/net/gclient/gclient_metrics.go
+++ b/net/gclient/gclient_metrics.go
@@ -9,10 +9,10 @@ package gclient
import (
"net/http"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
)
type localMetricManager struct {
diff --git a/net/gclient/gclient_middleware.go b/net/gclient/gclient_middleware.go
index 010ba30bb..2b4dfe346 100644
--- a/net/gclient/gclient_middleware.go
+++ b/net/gclient/gclient_middleware.go
@@ -3,7 +3,7 @@ package gclient
import (
"net/http"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/os/gctx"
)
// HandlerFunc middleware handler func
diff --git a/net/gclient/gclient_observability.go b/net/gclient/gclient_observability.go
index f45efaa8b..10c348472 100644
--- a/net/gclient/gclient_observability.go
+++ b/net/gclient/gclient_observability.go
@@ -18,16 +18,16 @@ import (
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
- instrumentName = "github.com/gogf/gf/v2/net/gclient.Client"
+ instrumentName = "github.com/gogf/gf/v3/net/gclient.Client"
tracingAttrHttpAddressRemote = "http.address.remote"
tracingAttrHttpAddressLocal = "http.address.local"
tracingAttrHttpDnsStart = "http.dns.start"
diff --git a/net/gclient/gclient_request.go b/net/gclient/gclient_request.go
index be1c2ad0f..1ce3269df 100644
--- a/net/gclient/gclient_request.go
+++ b/net/gclient/gclient_request.go
@@ -16,17 +16,17 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Get send GET request and returns the response object.
diff --git a/net/gclient/gclient_request_obj.go b/net/gclient/gclient_request_obj.go
index 852eaff67..7331e5d5a 100644
--- a/net/gclient/gclient_request_obj.go
+++ b/net/gclient/gclient_request_obj.go
@@ -11,14 +11,14 @@ import (
"net/http"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/gutil"
)
// DoRequestObj does HTTP request using standard request/response object.
diff --git a/net/gclient/gclient_response.go b/net/gclient/gclient_response.go
index 0b599d077..220a36e89 100644
--- a/net/gclient/gclient_response.go
+++ b/net/gclient/gclient_response.go
@@ -11,7 +11,7 @@ import (
"io"
"net/http"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// Response is the struct for client request response.
diff --git a/net/gclient/gclient_tracer_metrics.go b/net/gclient/gclient_tracer_metrics.go
index 3af9ef3cb..4fd3c27a3 100644
--- a/net/gclient/gclient_tracer_metrics.go
+++ b/net/gclient/gclient_tracer_metrics.go
@@ -12,7 +12,7 @@ import (
"net/http/httptrace"
"net/textproto"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
type clientTracerMetrics struct {
diff --git a/net/gclient/gclient_tracer_tracing.go b/net/gclient/gclient_tracer_tracing.go
index 566138bdb..552a8e42b 100644
--- a/net/gclient/gclient_tracer_tracing.go
+++ b/net/gclient/gclient_tracer_tracing.go
@@ -21,9 +21,9 @@ import (
"go.opentelemetry.io/otel/codes"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/util/gconv"
)
// clientTracerTracing is used for implementing httptrace.ClientTrace.
diff --git a/net/gclient/gclient_var.go b/net/gclient/gclient_var.go
index bb0ba66fe..799568c9a 100644
--- a/net/gclient/gclient_var.go
+++ b/net/gclient/gclient_var.go
@@ -10,8 +10,8 @@ import (
"context"
"net/http"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// GetVar sends a GET request, retrieves and converts the result content to *gvar.Var.
diff --git a/net/gclient/gclient_z_example_test.go b/net/gclient/gclient_z_example_test.go
index 48e63c505..57732a112 100644
--- a/net/gclient/gclient_z_example_test.go
+++ b/net/gclient/gclient_z_example_test.go
@@ -14,13 +14,13 @@ import (
"net/http"
"time"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/net/gclient/gclient_z_unit_feature_trace_test.go b/net/gclient/gclient_z_unit_feature_trace_test.go
index 903c5acac..80d87c44d 100644
--- a/net/gclient/gclient_z_unit_feature_trace_test.go
+++ b/net/gclient/gclient_z_unit_feature_trace_test.go
@@ -17,11 +17,11 @@ import (
sdkTrace "go.opentelemetry.io/otel/sdk/trace"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/tracing"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/tracing"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type CustomProvider struct {
diff --git a/net/gclient/gclient_z_unit_issue_test.go b/net/gclient/gclient_z_unit_issue_test.go
index e3203f3e1..47a964724 100644
--- a/net/gclient/gclient_z_unit_issue_test.go
+++ b/net/gclient/gclient_z_unit_issue_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Issue3748(t *testing.T) {
diff --git a/net/gclient/gclient_z_unit_request_obj_test.go b/net/gclient/gclient_z_unit_request_obj_test.go
index 771f257ea..c84c13321 100644
--- a/net/gclient/gclient_z_unit_request_obj_test.go
+++ b/net/gclient/gclient_z_unit_request_obj_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Client_DoRequestObj(t *testing.T) {
diff --git a/net/gclient/gclient_z_unit_test.go b/net/gclient/gclient_z_unit_test.go
index d6e8c6f2f..cf7458ae9 100644
--- a/net/gclient/gclient_z_unit_test.go
+++ b/net/gclient/gclient_z_unit_test.go
@@ -18,15 +18,15 @@ import (
"github.com/gorilla/websocket"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/gclient"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/gclient"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/net/ghttp/ghttp.go b/net/ghttp/ghttp.go
index dd5e02906..bab6aeff4 100644
--- a/net/ghttp/ghttp.go
+++ b/net/ghttp/ghttp.go
@@ -15,18 +15,18 @@ import (
"github.com/gorilla/websocket"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/ghttp/internal/graceful"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/ghttp/internal/graceful"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/util/gtag"
)
type (
diff --git a/net/ghttp/ghttp_func.go b/net/ghttp/ghttp_func.go
index cf045c6b2..f8b1ed1e9 100644
--- a/net/ghttp/ghttp_func.go
+++ b/net/ghttp/ghttp_func.go
@@ -7,10 +7,10 @@
package ghttp
import (
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SupportedMethods returns all supported HTTP methods.
diff --git a/net/ghttp/ghttp_middleware_handler_response.go b/net/ghttp/ghttp_middleware_handler_response.go
index 23d3bab7a..f382ee13a 100644
--- a/net/ghttp/ghttp_middleware_handler_response.go
+++ b/net/ghttp/ghttp_middleware_handler_response.go
@@ -10,8 +10,8 @@ import (
"mime"
"net/http"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// DefaultHandlerResponse is the default implementation of HandlerResponse.
diff --git a/net/ghttp/ghttp_middleware_json_body.go b/net/ghttp/ghttp_middleware_json_body.go
index eb3263ec9..30a2e8817 100644
--- a/net/ghttp/ghttp_middleware_json_body.go
+++ b/net/ghttp/ghttp_middleware_json_body.go
@@ -7,7 +7,7 @@
package ghttp
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// MiddlewareJsonBody validates and returns request body whether JSON format.
diff --git a/net/ghttp/ghttp_middleware_tracing.go b/net/ghttp/ghttp_middleware_tracing.go
index 8e1559153..507959b9b 100644
--- a/net/ghttp/ghttp_middleware_tracing.go
+++ b/net/ghttp/ghttp_middleware_tracing.go
@@ -16,15 +16,15 @@ import (
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
- instrumentName = "github.com/gogf/gf/v2/net/ghttp.Server"
+ instrumentName = "github.com/gogf/gf/v3/net/ghttp.Server"
tracingEventHttpRequest = "http.request"
tracingEventHttpRequestHeaders = "http.request.headers"
tracingEventHttpRequestBaggage = "http.request.baggage"
diff --git a/net/ghttp/ghttp_request.go b/net/ghttp/ghttp_request.go
index 6bb4f622d..773fbf8ce 100644
--- a/net/ghttp/ghttp_request.go
+++ b/net/ghttp/ghttp_request.go
@@ -12,14 +12,14 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
// Request is the context object for a request.
diff --git a/net/ghttp/ghttp_request_auth.go b/net/ghttp/ghttp_request_auth.go
index f02942aad..ee28a5fa5 100644
--- a/net/ghttp/ghttp_request_auth.go
+++ b/net/ghttp/ghttp_request_auth.go
@@ -11,7 +11,7 @@ import (
"net/http"
"strings"
- "github.com/gogf/gf/v2/encoding/gbase64"
+ "github.com/gogf/gf/v3/encoding/gbase64"
)
// BasicAuth enables the http basic authentication feature with a given passport and password
diff --git a/net/ghttp/ghttp_request_middleware.go b/net/ghttp/ghttp_request_middleware.go
index 0d9ba3ec1..a4af71851 100644
--- a/net/ghttp/ghttp_request_middleware.go
+++ b/net/ghttp/ghttp_request_middleware.go
@@ -10,9 +10,9 @@ import (
"context"
"net/http"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gutil"
)
// middleware is the plugin for request workflow management.
diff --git a/net/ghttp/ghttp_request_param.go b/net/ghttp/ghttp_request_param.go
index 6e44814c0..6fd36caf6 100644
--- a/net/ghttp/ghttp_request_param.go
+++ b/net/ghttp/ghttp_request_param.go
@@ -15,18 +15,18 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gvalid"
)
const (
diff --git a/net/ghttp/ghttp_request_param_ctx.go b/net/ghttp/ghttp_request_param_ctx.go
index 4d42205c7..29624a08a 100644
--- a/net/ghttp/ghttp_request_param_ctx.go
+++ b/net/ghttp/ghttp_request_param_ctx.go
@@ -9,8 +9,8 @@ package ghttp
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/os/gctx"
)
// RequestFromCtx retrieves and returns the Request object from context.
diff --git a/net/ghttp/ghttp_request_param_file.go b/net/ghttp/ghttp_request_param_file.go
index d32ea9c71..b3025b5d2 100644
--- a/net/ghttp/ghttp_request_param_file.go
+++ b/net/ghttp/ghttp_request_param_file.go
@@ -13,13 +13,13 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/grand"
)
// UploadFile wraps the multipart uploading file with more and convenient features.
diff --git a/net/ghttp/ghttp_request_param_form.go b/net/ghttp/ghttp_request_param_form.go
index 49a36cf96..cf8c18ee1 100644
--- a/net/ghttp/ghttp_request_param_form.go
+++ b/net/ghttp/ghttp_request_param_form.go
@@ -7,8 +7,8 @@
package ghttp
import (
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/util/gconv"
)
// SetForm sets custom form value with key-value pairs.
diff --git a/net/ghttp/ghttp_request_param_page.go b/net/ghttp/ghttp_request_param_page.go
index 4cd366d42..43334427c 100644
--- a/net/ghttp/ghttp_request_param_page.go
+++ b/net/ghttp/ghttp_request_param_page.go
@@ -9,9 +9,9 @@ package ghttp
import (
"fmt"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gpage"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gpage"
)
// GetPage creates and returns the pagination object for given `totalSize` and `pageSize`.
diff --git a/net/ghttp/ghttp_request_param_param.go b/net/ghttp/ghttp_request_param_param.go
index 48c1d7429..45ee1672c 100644
--- a/net/ghttp/ghttp_request_param_param.go
+++ b/net/ghttp/ghttp_request_param_param.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/container/gvar"
+import "github.com/gogf/gf/v3/container/gvar"
// SetParam sets custom parameter with key-value pairs.
func (r *Request) SetParam(key string, value interface{}) {
diff --git a/net/ghttp/ghttp_request_param_query.go b/net/ghttp/ghttp_request_param_query.go
index 5badddbfe..4c58e6fcd 100644
--- a/net/ghttp/ghttp_request_param_query.go
+++ b/net/ghttp/ghttp_request_param_query.go
@@ -9,8 +9,8 @@ package ghttp
import (
"net/http"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/util/gconv"
)
// SetQuery sets custom query value with key-value pairs.
diff --git a/net/ghttp/ghttp_request_param_request.go b/net/ghttp/ghttp_request_param_request.go
index 622590f09..eb6dd9b1e 100644
--- a/net/ghttp/ghttp_request_param_request.go
+++ b/net/ghttp/ghttp_request_param_request.go
@@ -7,11 +7,11 @@
package ghttp
import (
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// GetRequest retrieves and returns the parameter named `key` passed from the client and
diff --git a/net/ghttp/ghttp_request_param_router.go b/net/ghttp/ghttp_request_param_router.go
index ee816ba10..8c00d8a70 100644
--- a/net/ghttp/ghttp_request_param_router.go
+++ b/net/ghttp/ghttp_request_param_router.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/container/gvar"
+import "github.com/gogf/gf/v3/container/gvar"
// GetRouterMap retrieves and returns a copy of the router map.
func (r *Request) GetRouterMap() map[string]string {
diff --git a/net/ghttp/ghttp_request_view.go b/net/ghttp/ghttp_request_view.go
index 143ecc701..a785a557c 100644
--- a/net/ghttp/ghttp_request_view.go
+++ b/net/ghttp/ghttp_request_view.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/os/gview"
+import "github.com/gogf/gf/v3/os/gview"
// SetView sets template view engine object for this request.
func (r *Request) SetView(view *gview.View) {
diff --git a/net/ghttp/ghttp_response.go b/net/ghttp/ghttp_response.go
index b4e2d7ea3..b0ab0c477 100644
--- a/net/ghttp/ghttp_response.go
+++ b/net/ghttp/ghttp_response.go
@@ -14,10 +14,10 @@ import (
"net/url"
"time"
- "github.com/gogf/gf/v2/net/ghttp/internal/response"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
+ "github.com/gogf/gf/v3/net/ghttp/internal/response"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
)
// Response is the http response manager.
diff --git a/net/ghttp/ghttp_response_cors.go b/net/ghttp/ghttp_response_cors.go
index 7a80fe647..12ccfe149 100644
--- a/net/ghttp/ghttp_response_cors.go
+++ b/net/ghttp/ghttp_response_cors.go
@@ -11,8 +11,8 @@ import (
"net/http"
"net/url"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// CORSOptions is the options for CORS feature.
diff --git a/net/ghttp/ghttp_response_view.go b/net/ghttp/ghttp_response_view.go
index 06c0388f2..c83c3ded4 100644
--- a/net/ghttp/ghttp_response_view.go
+++ b/net/ghttp/ghttp_response_view.go
@@ -8,11 +8,11 @@
package ghttp
import (
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmode"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmode"
+ "github.com/gogf/gf/v3/util/gutil"
)
// WriteTpl parses and responses given template file.
diff --git a/net/ghttp/ghttp_response_write.go b/net/ghttp/ghttp_response_write.go
index 1772c61a1..21b684e77 100644
--- a/net/ghttp/ghttp_response_write.go
+++ b/net/ghttp/ghttp_response_write.go
@@ -11,10 +11,10 @@ import (
"fmt"
"net/http"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Write writes `content` to the response buffer.
diff --git a/net/ghttp/ghttp_server.go b/net/ghttp/ghttp_server.go
index 6e84d9c95..ae27fddb0 100644
--- a/net/ghttp/ghttp_server.go
+++ b/net/ghttp/ghttp_server.go
@@ -19,28 +19,28 @@ import (
"github.com/olekukonko/tablewriter"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/ghttp/internal/graceful"
- "github.com/gogf/gf/v2/net/ghttp/internal/swaggerui"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/ghttp/internal/graceful"
+ "github.com/gogf/gf/v3/net/ghttp/internal/swaggerui"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
func init() {
diff --git a/net/ghttp/ghttp_server_admin.go b/net/ghttp/ghttp_server_admin.go
index 987e51a3e..e4d6858ae 100644
--- a/net/ghttp/ghttp_server_admin.go
+++ b/net/ghttp/ghttp_server_admin.go
@@ -12,10 +12,10 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/os/gview"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/os/gview"
)
// utilAdmin is the controller for administration.
diff --git a/net/ghttp/ghttp_server_admin_process.go b/net/ghttp/ghttp_server_admin_process.go
index 93dcecf11..e1196e06d 100644
--- a/net/ghttp/ghttp_server_admin_process.go
+++ b/net/ghttp/ghttp_server_admin_process.go
@@ -16,18 +16,18 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/net/ghttp/ghttp_server_admin_unix.go b/net/ghttp/ghttp_server_admin_unix.go
index a58ee0073..e8ebf265b 100644
--- a/net/ghttp/ghttp_server_admin_unix.go
+++ b/net/ghttp/ghttp_server_admin_unix.go
@@ -14,9 +14,9 @@ import (
"os"
"syscall"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gproc"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gproc"
)
// handleProcessSignal handles all signals from system in blocking way.
diff --git a/net/ghttp/ghttp_server_admin_windows.go b/net/ghttp/ghttp_server_admin_windows.go
index 7d83e3e0d..592901263 100644
--- a/net/ghttp/ghttp_server_admin_windows.go
+++ b/net/ghttp/ghttp_server_admin_windows.go
@@ -13,7 +13,7 @@ import (
"context"
"os"
- "github.com/gogf/gf/v2/os/gproc"
+ "github.com/gogf/gf/v3/os/gproc"
)
// handleProcessSignal handles all signals from system in blocking way.
diff --git a/net/ghttp/ghttp_server_config.go b/net/ghttp/ghttp_server_config.go
index f5a6f4fe9..a967127f7 100644
--- a/net/ghttp/ghttp_server_config.go
+++ b/net/ghttp/ghttp_server_config.go
@@ -16,18 +16,18 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
const (
diff --git a/net/ghttp/ghttp_server_config_logging.go b/net/ghttp/ghttp_server_config_logging.go
index c35edeb54..2ee89920c 100644
--- a/net/ghttp/ghttp_server_config_logging.go
+++ b/net/ghttp/ghttp_server_config_logging.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/os/glog"
+import "github.com/gogf/gf/v3/os/glog"
// SetLogPath sets the log path for server.
// It logs content to file only if the log path is set.
diff --git a/net/ghttp/ghttp_server_config_session.go b/net/ghttp/ghttp_server_config_session.go
index a9c25abaf..c015c7d99 100644
--- a/net/ghttp/ghttp_server_config_session.go
+++ b/net/ghttp/ghttp_server_config_session.go
@@ -9,7 +9,7 @@ package ghttp
import (
"time"
- "github.com/gogf/gf/v2/os/gsession"
+ "github.com/gogf/gf/v3/os/gsession"
)
// SetSessionMaxAge sets the SessionMaxAge for server.
diff --git a/net/ghttp/ghttp_server_config_static.go b/net/ghttp/ghttp_server_config_static.go
index 651f6b695..ad2ed0593 100644
--- a/net/ghttp/ghttp_server_config_static.go
+++ b/net/ghttp/ghttp_server_config_static.go
@@ -12,10 +12,10 @@ import (
"context"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/util/gconv"
)
// staticPathItem is the item struct for static path configuration.
diff --git a/net/ghttp/ghttp_server_cookie.go b/net/ghttp/ghttp_server_cookie.go
index b5e618ba0..664b9f562 100644
--- a/net/ghttp/ghttp_server_cookie.go
+++ b/net/ghttp/ghttp_server_cookie.go
@@ -10,7 +10,7 @@ import (
"net/http"
"time"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// Cookie for HTTP COOKIE management.
diff --git a/net/ghttp/ghttp_server_error_logger.go b/net/ghttp/ghttp_server_error_logger.go
index 7bc89a079..879346095 100644
--- a/net/ghttp/ghttp_server_error_logger.go
+++ b/net/ghttp/ghttp_server_error_logger.go
@@ -10,7 +10,7 @@ import (
"bytes"
"context"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/os/glog"
)
// errorLogger is the error logging logger for underlying net/http.Server.
diff --git a/net/ghttp/ghttp_server_graceful.go b/net/ghttp/ghttp_server_graceful.go
index 611ba74e7..cc95a6801 100644
--- a/net/ghttp/ghttp_server_graceful.go
+++ b/net/ghttp/ghttp_server_graceful.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/net/ghttp/internal/graceful"
+import "github.com/gogf/gf/v3/net/ghttp/internal/graceful"
// newGracefulServer creates and returns a graceful http server with a given address.
// The optional parameter `fd` specifies the file descriptor which is passed from parent server.
diff --git a/net/ghttp/ghttp_server_handler.go b/net/ghttp/ghttp_server_handler.go
index 27ca64e14..becb13c41 100644
--- a/net/ghttp/ghttp_server_handler.go
+++ b/net/ghttp/ghttp_server_handler.go
@@ -12,15 +12,15 @@ import (
"sort"
"strings"
- "github.com/gogf/gf/v2/encoding/ghtml"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gspath"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/ghtml"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gspath"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
)
// ServeHTTP is the default handler for http request.
diff --git a/net/ghttp/ghttp_server_log.go b/net/ghttp/ghttp_server_log.go
index 49b498ad0..bfa86f941 100644
--- a/net/ghttp/ghttp_server_log.go
+++ b/net/ghttp/ghttp_server_log.go
@@ -9,10 +9,10 @@ package ghttp
import (
"fmt"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/instance"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/instance"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/text/gstr"
)
// handleAccessLog handles the access logging for server.
diff --git a/net/ghttp/ghttp_server_metric.go b/net/ghttp/ghttp_server_metric.go
index b9eb458e4..99890ad92 100644
--- a/net/ghttp/ghttp_server_metric.go
+++ b/net/ghttp/ghttp_server_metric.go
@@ -10,10 +10,10 @@ import (
"net"
"net/http"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/text/gstr"
)
type localMetricManager struct {
diff --git a/net/ghttp/ghttp_server_openapi.go b/net/ghttp/ghttp_server_openapi.go
index 1789b4dbe..b39926c17 100644
--- a/net/ghttp/ghttp_server_openapi.go
+++ b/net/ghttp/ghttp_server_openapi.go
@@ -9,8 +9,8 @@ package ghttp
import (
"context"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/text/gstr"
)
// initOpenApi generates api specification using OpenApiV3 protocol.
diff --git a/net/ghttp/ghttp_server_pprof.go b/net/ghttp/ghttp_server_pprof.go
index 3477d68a6..8efdc80fd 100644
--- a/net/ghttp/ghttp_server_pprof.go
+++ b/net/ghttp/ghttp_server_pprof.go
@@ -11,8 +11,8 @@ import (
runpprof "runtime/pprof"
"strings"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gview"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gview"
)
// utilPProf is the PProf interface implementer.
diff --git a/net/ghttp/ghttp_server_registry.go b/net/ghttp/ghttp_server_registry.go
index 5a8ae5aff..d2df3b125 100644
--- a/net/ghttp/ghttp_server_registry.go
+++ b/net/ghttp/ghttp_server_registry.go
@@ -10,11 +10,11 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// doServiceRegister registers current service to Registry.
diff --git a/net/ghttp/ghttp_server_router.go b/net/ghttp/ghttp_server_router.go
index dd4e6640d..ea9dfe442 100644
--- a/net/ghttp/ghttp_server_router.go
+++ b/net/ghttp/ghttp_server_router.go
@@ -13,16 +13,16 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
var (
diff --git a/net/ghttp/ghttp_server_router_group.go b/net/ghttp/ghttp_server_router_group.go
index 449367b08..2afc9a327 100644
--- a/net/ghttp/ghttp_server_router_group.go
+++ b/net/ghttp/ghttp_server_router_group.go
@@ -11,11 +11,11 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
type (
diff --git a/net/ghttp/ghttp_server_router_hook.go b/net/ghttp/ghttp_server_router_hook.go
index fcac4e3ca..de8446db4 100644
--- a/net/ghttp/ghttp_server_router_hook.go
+++ b/net/ghttp/ghttp_server_router_hook.go
@@ -11,7 +11,7 @@ import (
"net/http"
"reflect"
- "github.com/gogf/gf/v2/debug/gdebug"
+ "github.com/gogf/gf/v3/debug/gdebug"
)
// BindHookHandler registers handler for specified hook.
diff --git a/net/ghttp/ghttp_server_router_middleware.go b/net/ghttp/ghttp_server_router_middleware.go
index cf4adfc9d..595d86e46 100644
--- a/net/ghttp/ghttp_server_router_middleware.go
+++ b/net/ghttp/ghttp_server_router_middleware.go
@@ -10,7 +10,7 @@ import (
"context"
"reflect"
- "github.com/gogf/gf/v2/debug/gdebug"
+ "github.com/gogf/gf/v3/debug/gdebug"
)
const (
diff --git a/net/ghttp/ghttp_server_router_serve.go b/net/ghttp/ghttp_server_router_serve.go
index abb9bd590..9788f8f8d 100644
--- a/net/ghttp/ghttp_server_router_serve.go
+++ b/net/ghttp/ghttp_server_router_serve.go
@@ -12,13 +12,13 @@ import (
"net/http"
"strings"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gmeta"
)
// handlerCacheItem is an item just for internal router searching cache.
diff --git a/net/ghttp/ghttp_server_service_handler.go b/net/ghttp/ghttp_server_service_handler.go
index 7e248c75c..260951db9 100644
--- a/net/ghttp/ghttp_server_service_handler.go
+++ b/net/ghttp/ghttp_server_service_handler.go
@@ -12,10 +12,10 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
)
// BindHandler registers a handler function to server with a given pattern.
diff --git a/net/ghttp/ghttp_server_service_object.go b/net/ghttp/ghttp_server_service_object.go
index f497ab309..a621b069e 100644
--- a/net/ghttp/ghttp_server_service_object.go
+++ b/net/ghttp/ghttp_server_service_object.go
@@ -12,9 +12,9 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// BindObject registers object to server routes with a given pattern.
diff --git a/net/ghttp/ghttp_server_session.go b/net/ghttp/ghttp_server_session.go
index f6ceade95..4768d7465 100644
--- a/net/ghttp/ghttp_server_session.go
+++ b/net/ghttp/ghttp_server_session.go
@@ -6,7 +6,7 @@
package ghttp
-import "github.com/gogf/gf/v2/os/gsession"
+import "github.com/gogf/gf/v3/os/gsession"
// Session is actually an alias of gsession.Session,
// which is bound to a single request.
diff --git a/net/ghttp/ghttp_server_swagger.go b/net/ghttp/ghttp_server_swagger.go
index 7ef7a1918..bca96a6a0 100644
--- a/net/ghttp/ghttp_server_swagger.go
+++ b/net/ghttp/ghttp_server_swagger.go
@@ -7,7 +7,7 @@
package ghttp
import (
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
const (
diff --git a/net/ghttp/ghttp_z_example_test.go b/net/ghttp/ghttp_z_example_test.go
index f3a6016ef..501860b08 100644
--- a/net/ghttp/ghttp_z_example_test.go
+++ b/net/ghttp/ghttp_z_example_test.go
@@ -7,9 +7,9 @@
package ghttp_test
import (
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleServer_Run() {
diff --git a/net/ghttp/ghttp_z_unit_feature_config_test.go b/net/ghttp/ghttp_z_unit_feature_config_test.go
index 306d61e97..09e0fc59b 100644
--- a/net/ghttp/ghttp_z_unit_feature_config_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_config_test.go
@@ -12,14 +12,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_ConfigFromMap(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_context_test.go b/net/ghttp/ghttp_z_unit_feature_context_test.go
index 73e8ae218..4823f48d0 100644
--- a/net/ghttp/ghttp_z_unit_feature_context_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_context_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Context(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_cookie_test.go b/net/ghttp/ghttp_z_unit_feature_cookie_test.go
index b6aa8fa8c..27a1386f0 100644
--- a/net/ghttp/ghttp_z_unit_feature_cookie_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_cookie_test.go
@@ -13,10 +13,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Cookie(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_custom_listeners_test.go b/net/ghttp/ghttp_z_unit_feature_custom_listeners_test.go
index 292df2687..5bdc7a0dd 100644
--- a/net/ghttp/ghttp_z_unit_feature_custom_listeners_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_custom_listeners_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_SetSingleCustomListener(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_error_code_test.go b/net/ghttp/ghttp_z_unit_feature_error_code_test.go
index fbf625fd0..63ace4d3e 100644
--- a/net/ghttp/ghttp_z_unit_feature_error_code_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_error_code_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Error_Code(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_https_test.go b/net/ghttp/ghttp_z_unit_feature_https_test.go
index 06b54fe0d..b3ece3268 100644
--- a/net/ghttp/ghttp_z_unit_feature_https_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_https_test.go
@@ -11,15 +11,15 @@ import (
"testing"
"time"
- _ "github.com/gogf/gf/v2/net/ghttp/testdata/https/packed"
+ _ "github.com/gogf/gf/v3/net/ghttp/testdata/https/packed"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_HTTPS_Basic(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_ip_test.go b/net/ghttp/ghttp_z_unit_feature_ip_test.go
index e5b5b7d6c..1afc38b1b 100644
--- a/net/ghttp/ghttp_z_unit_feature_ip_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_ip_test.go
@@ -13,10 +13,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func TestRequest_GetRemoteIp(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_log_test.go b/net/ghttp/ghttp_z_unit_feature_log_test.go
index 6e74e2765..64e050f90 100644
--- a/net/ghttp/ghttp_z_unit_feature_log_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_log_test.go
@@ -13,13 +13,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Log(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_middleware_basic_test.go b/net/ghttp/ghttp_z_unit_feature_middleware_basic_test.go
index 67c5d2749..31c145efc 100644
--- a/net/ghttp/ghttp_z_unit_feature_middleware_basic_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_middleware_basic_test.go
@@ -18,11 +18,11 @@ import (
"go.opentelemetry.io/otel/trace"
"go.opentelemetry.io/otel/trace/noop"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_BindMiddleware_Basic1(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_middleware_cors_test.go b/net/ghttp/ghttp_z_unit_feature_middleware_cors_test.go
index 645463c93..30cb84c5b 100644
--- a/net/ghttp/ghttp_z_unit_feature_middleware_cors_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_middleware_cors_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Middleware_CORS1(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_openapi_swagger_test.go b/net/ghttp/ghttp_z_unit_feature_openapi_swagger_test.go
index b1b423424..61d1e5955 100644
--- a/net/ghttp/ghttp_z_unit_feature_openapi_swagger_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_openapi_swagger_test.go
@@ -12,13 +12,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_OpenApi_Swagger(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_otel_test.go b/net/ghttp/ghttp_z_unit_feature_otel_test.go
index 0400c4fc8..947534be3 100644
--- a/net/ghttp/ghttp_z_unit_feature_otel_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_otel_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_OTEL_TraceID(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_pprof_test.go b/net/ghttp/ghttp_z_unit_feature_pprof_test.go
index ca8d428cb..75a9a3332 100644
--- a/net/ghttp/ghttp_z_unit_feature_pprof_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_pprof_test.go
@@ -13,11 +13,11 @@ import (
"testing"
"time"
- . "github.com/gogf/gf/v2/test/gtest"
+ . "github.com/gogf/gf/v3/test/gtest"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/util/guid"
)
func TestServer_EnablePProf(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_ctx_test.go b/net/ghttp/ghttp_z_unit_feature_request_ctx_test.go
index 642e50901..e41141954 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_ctx_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_ctx_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Request_IsFileRequest(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_file_test.go b/net/ghttp/ghttp_z_unit_feature_request_file_test.go
index f2318f3c2..22ad4388b 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_file_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_file_test.go
@@ -13,15 +13,15 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Params_File_Single(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_json_test.go b/net/ghttp/ghttp_z_unit_feature_request_json_test.go
index d219d29b2..f39e9a51f 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_json_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_json_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Params_Json_Request(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_page_test.go b/net/ghttp/ghttp_z_unit_feature_request_page_test.go
index dcb1fea36..fcd375883 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_page_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_page_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Params_Page(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_param_test.go b/net/ghttp/ghttp_z_unit_feature_request_param_test.go
index 041886225..86b7ad86e 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_param_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_param_test.go
@@ -13,10 +13,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
// UserTagInReq struct tag "in" supports: header, cookie
diff --git a/net/ghttp/ghttp_z_unit_feature_request_struct_test.go b/net/ghttp/ghttp_z_unit_feature_request_struct_test.go
index a54e73ae4..d88648c66 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_struct_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_struct_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gvalid"
)
func Test_Params_Parse(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_test.go b/net/ghttp/ghttp_z_unit_feature_request_test.go
index fb200d938..a8a68bd25 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_test.go
@@ -14,11 +14,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Params_Basic(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_request_xml_test.go b/net/ghttp/ghttp_z_unit_feature_request_xml_test.go
index bc5da0abe..f91c37c98 100644
--- a/net/ghttp/ghttp_z_unit_feature_request_xml_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_request_xml_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Params_Xml_Request(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_response_test.go b/net/ghttp/ghttp_z_unit_feature_response_test.go
index 6615baada..d05530406 100644
--- a/net/ghttp/ghttp_z_unit_feature_response_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_response_test.go
@@ -13,13 +13,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gxml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gxml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Response_ServeFile(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_basic_test.go b/net/ghttp/ghttp_z_unit_feature_router_basic_test.go
index 7b59db326..142396338 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_basic_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_basic_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Basic1(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_domain_basic_test.go b/net/ghttp/ghttp_z_unit_feature_router_domain_basic_test.go
index d9c91428f..2ffc0dbaf 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_domain_basic_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_domain_basic_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_DomainBasic(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_domain_object_rest_test.go b/net/ghttp/ghttp_z_unit_feature_router_domain_object_rest_test.go
index a8f6cb1c2..eed98469d 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_domain_object_rest_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_domain_object_rest_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type DomainObjectRest struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_domain_object_test.go b/net/ghttp/ghttp_z_unit_feature_router_domain_object_test.go
index 48de90f6d..d5241f9d2 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_domain_object_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_domain_object_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type DomainObject struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_exit_test.go b/net/ghttp/ghttp_z_unit_feature_router_exit_test.go
index d269cc3e8..ff93defbe 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_exit_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_exit_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Exit(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_group_group_test.go b/net/ghttp/ghttp_z_unit_feature_router_group_group_test.go
index 1da856f15..527f6dd6c 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_group_group_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_group_group_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Group_Group(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_group_hook_test.go b/net/ghttp/ghttp_z_unit_feature_router_group_hook_test.go
index cc3ef8718..a74fd3100 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_group_hook_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_group_hook_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Group_Hook1(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_group_rest_test.go b/net/ghttp/ghttp_z_unit_feature_router_group_rest_test.go
index ca47cac70..05faeca2e 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_group_rest_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_group_rest_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type GroupObjRest struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_group_test.go b/net/ghttp/ghttp_z_unit_feature_router_group_test.go
index b5ac0eff0..baa9288a0 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_group_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_group_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
// 执行对象
diff --git a/net/ghttp/ghttp_z_unit_feature_router_hook_test.go b/net/ghttp/ghttp_z_unit_feature_router_hook_test.go
index ea2fd49e1..f01fbfd57 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_hook_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_hook_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Hook_Basic(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_router_names_test.go b/net/ghttp/ghttp_z_unit_feature_router_names_test.go
index 5b46aa2e6..40a1f9330 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_names_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_names_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type NamesObject struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_object_rest1_test.go b/net/ghttp/ghttp_z_unit_feature_router_object_rest1_test.go
index 32d5ec7d1..06f5b7a00 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_object_rest1_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_object_rest1_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type ObjectRest struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_object_rest2_test.go b/net/ghttp/ghttp_z_unit_feature_router_object_rest2_test.go
index ed6bfdbcd..f82d70605 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_object_rest2_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_object_rest2_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type ObjectRest2 struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_object_test.go b/net/ghttp/ghttp_z_unit_feature_router_object_test.go
index 932712832..1b0427041 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_object_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_object_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type Object struct{}
diff --git a/net/ghttp/ghttp_z_unit_feature_router_standard_test.go b/net/ghttp/ghttp_z_unit_feature_router_standard_test.go
index 286bfb15d..5d54e0cf9 100644
--- a/net/ghttp/ghttp_z_unit_feature_router_standard_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_router_standard_test.go
@@ -12,13 +12,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Router_Handler_Standard_WithObject(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_server_util_test.go b/net/ghttp/ghttp_z_unit_feature_server_util_test.go
index 900d7e9ef..4467400d5 100644
--- a/net/ghttp/ghttp_z_unit_feature_server_util_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_server_util_test.go
@@ -12,10 +12,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
type testWrapStdHTTPStruct struct {
diff --git a/net/ghttp/ghttp_z_unit_feature_session_test.go b/net/ghttp/ghttp_z_unit_feature_session_test.go
index 2f4b36dd5..924020701 100644
--- a/net/ghttp/ghttp_z_unit_feature_session_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_session_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Session_Cookie(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_static_test.go b/net/ghttp/ghttp_z_unit_feature_static_test.go
index 840a7e4d3..139910773 100644
--- a/net/ghttp/ghttp_z_unit_feature_static_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_static_test.go
@@ -13,11 +13,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Static_ServerRoot(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_status_test.go b/net/ghttp/ghttp_z_unit_feature_status_test.go
index e52325de9..7118f258d 100644
--- a/net/ghttp/ghttp_z_unit_feature_status_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_status_test.go
@@ -13,10 +13,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_StatusHandler(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_template_test.go b/net/ghttp/ghttp_z_unit_feature_template_test.go
index ab64c506b..2fefc8e85 100644
--- a/net/ghttp/ghttp_z_unit_feature_template_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_template_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/ghtml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/ghtml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Template_Basic(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_feature_websocket_test.go b/net/ghttp/ghttp_z_unit_feature_websocket_test.go
index 6d2e09e98..0726dca98 100644
--- a/net/ghttp/ghttp_z_unit_feature_websocket_test.go
+++ b/net/ghttp/ghttp_z_unit_feature_websocket_test.go
@@ -13,10 +13,10 @@ import (
"github.com/gorilla/websocket"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_WebSocket(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_issue_test.go b/net/ghttp/ghttp_z_unit_issue_test.go
index 92f761ce9..32559d825 100644
--- a/net/ghttp/ghttp_z_unit_issue_test.go
+++ b/net/ghttp/ghttp_z_unit_issue_test.go
@@ -13,14 +13,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/guid"
)
// https://github.com/gogf/gf/issues/1609
@@ -397,7 +397,7 @@ func Test_Issue2890(t *testing.T) {
t.AssertNil(err)
defer t.AssertNil(gtag.SetGlobalEnums(oldEnumsJson))
- err = gtag.SetGlobalEnums(`{"github.com/gogf/gf/v2/net/ghttp_test.Issue2890Enum": ["a","b"]}`)
+ err = gtag.SetGlobalEnums(`{"github.com/gogf/gf/v3/net/ghttp_test.Issue2890Enum": ["a","b"]}`)
t.AssertNil(err)
s := g.Server(guid.S())
diff --git a/net/ghttp/ghttp_z_unit_middleware_gzip_test.go b/net/ghttp/ghttp_z_unit_middleware_gzip_test.go
index 7bacfe4bd..c12387271 100644
--- a/net/ghttp/ghttp_z_unit_middleware_gzip_test.go
+++ b/net/ghttp/ghttp_z_unit_middleware_gzip_test.go
@@ -14,10 +14,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Middleware_Gzip(t *testing.T) {
diff --git a/net/ghttp/ghttp_z_unit_test.go b/net/ghttp/ghttp_z_unit_test.go
index b9feeccc3..39dce4de1 100644
--- a/net/ghttp/ghttp_z_unit_test.go
+++ b/net/ghttp/ghttp_z_unit_test.go
@@ -15,13 +15,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/httputil"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/httputil"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/net/ghttp/internal/graceful/graceful.go b/net/ghttp/internal/graceful/graceful.go
index 126e4c42e..bf58928d2 100644
--- a/net/ghttp/internal/graceful/graceful.go
+++ b/net/ghttp/internal/graceful/graceful.go
@@ -30,13 +30,13 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/text/gstr"
)
// ServerStatus is the server status enum type.
diff --git a/net/ghttp/internal/swaggerui/swaggerui-redoc.go b/net/ghttp/internal/swaggerui/swaggerui-redoc.go
index 6a67c1159..183276598 100644
--- a/net/ghttp/internal/swaggerui/swaggerui-redoc.go
+++ b/net/ghttp/internal/swaggerui/swaggerui-redoc.go
@@ -1,6 +1,6 @@
package swaggerui
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func Init() {
if err := gres.Add("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"); err != nil {
diff --git a/net/ghttp/testdata/https/packed/packed.go b/net/ghttp/testdata/https/packed/packed.go
index 26bb29b4a..e6114f9fc 100644
--- a/net/ghttp/testdata/https/packed/packed.go
+++ b/net/ghttp/testdata/https/packed/packed.go
@@ -1,6 +1,6 @@
package packed
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/net/gipv4/gipv4_ip.go b/net/gipv4/gipv4_ip.go
index 7dda6b926..90321ba34 100644
--- a/net/gipv4/gipv4_ip.go
+++ b/net/gipv4/gipv4_ip.go
@@ -12,7 +12,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// GetIpArray retrieves and returns all the ip of current host.
diff --git a/net/gipv4/gipv4_mac.go b/net/gipv4/gipv4_mac.go
index a09520554..f4c07dc23 100644
--- a/net/gipv4/gipv4_mac.go
+++ b/net/gipv4/gipv4_mac.go
@@ -10,7 +10,7 @@ package gipv4
import (
"net"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// GetMac retrieves and returns the first mac address of current host.
diff --git a/net/gipv4/gipv4_z_unit_convert_test.go b/net/gipv4/gipv4_z_unit_convert_test.go
index 19ef9c5f5..6aeb6966d 100644
--- a/net/gipv4/gipv4_z_unit_convert_test.go
+++ b/net/gipv4/gipv4_z_unit_convert_test.go
@@ -9,8 +9,8 @@ package gipv4_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/net/gipv4/gipv4_z_unit_ip_test.go b/net/gipv4/gipv4_z_unit_ip_test.go
index 38849be07..4916eaef8 100644
--- a/net/gipv4/gipv4_z_unit_ip_test.go
+++ b/net/gipv4/gipv4_z_unit_ip_test.go
@@ -9,8 +9,8 @@ package gipv4_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestGetIpArray(t *testing.T) {
diff --git a/net/gipv4/gipv4_z_unit_lookup_test.go b/net/gipv4/gipv4_z_unit_lookup_test.go
index d0a3e745d..3fc7979b0 100644
--- a/net/gipv4/gipv4_z_unit_lookup_test.go
+++ b/net/gipv4/gipv4_z_unit_lookup_test.go
@@ -9,8 +9,8 @@ package gipv4_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestGetHostByName(t *testing.T) {
diff --git a/net/gipv4/gipv4_z_unit_mac_test.go b/net/gipv4/gipv4_z_unit_mac_test.go
index 6236cf9f8..4ac88eab5 100644
--- a/net/gipv4/gipv4_z_unit_mac_test.go
+++ b/net/gipv4/gipv4_z_unit_mac_test.go
@@ -9,8 +9,8 @@ package gipv4_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestGetMac(t *testing.T) {
diff --git a/net/gipv4/gipv4_z_unit_test.go b/net/gipv4/gipv4_z_unit_test.go
index 580e2d4e0..e5a1a9345 100644
--- a/net/gipv4/gipv4_z_unit_test.go
+++ b/net/gipv4/gipv4_z_unit_test.go
@@ -9,8 +9,8 @@ package gipv4_test
import (
"testing"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestValidate(t *testing.T) {
diff --git a/net/gipv6/gipv6.go b/net/gipv6/gipv6.go
index 146307c38..c4d82f54b 100644
--- a/net/gipv6/gipv6.go
+++ b/net/gipv6/gipv6.go
@@ -7,7 +7,7 @@
// Package gipv6 provides useful API for IPv6 address handling.
package gipv6
-import "github.com/gogf/gf/v2/text/gregex"
+import "github.com/gogf/gf/v3/text/gregex"
// Validate checks whether given `ip` a valid IPv6 address.
func Validate(ip string) bool {
diff --git a/net/goai/goai.go b/net/goai/goai.go
index 9228b89dc..df38790fd 100644
--- a/net/goai/goai.go
+++ b/net/goai/goai.go
@@ -14,12 +14,12 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gtag"
)
// OpenApiV3 is the structure defined from:
diff --git a/net/goai/goai_callback.go b/net/goai/goai_callback.go
index b68ce3bcd..b329aa2a5 100644
--- a/net/goai/goai_callback.go
+++ b/net/goai/goai_callback.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// Callback is specified by OpenAPI/Swagger standard version 3.0.
diff --git a/net/goai/goai_example.go b/net/goai/goai_example.go
index 34ec816c2..9bfa1800e 100644
--- a/net/goai/goai_example.go
+++ b/net/goai/goai_example.go
@@ -9,11 +9,11 @@ package goai
import (
"fmt"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
)
// Example is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_external_docs.go b/net/goai/goai_external_docs.go
index 2265865c0..c04795b83 100644
--- a/net/goai/goai_external_docs.go
+++ b/net/goai/goai_external_docs.go
@@ -7,9 +7,9 @@
package goai
import (
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// ExternalDocs is specified by OpenAPI/Swagger standard version 3.0.
diff --git a/net/goai/goai_header.go b/net/goai/goai_header.go
index 97f472a61..ec6e31233 100644
--- a/net/goai/goai_header.go
+++ b/net/goai/goai_header.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// Header is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_link.go b/net/goai/goai_link.go
index 0968c1b71..8e2806c1c 100644
--- a/net/goai/goai_link.go
+++ b/net/goai/goai_link.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// Link is specified by OpenAPI/Swagger standard version 3.0.
diff --git a/net/goai/goai_operation.go b/net/goai/goai_operation.go
index 42447db6f..e4cac87f2 100644
--- a/net/goai/goai_operation.go
+++ b/net/goai/goai_operation.go
@@ -7,9 +7,9 @@
package goai
import (
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Operation represents "operation" specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_parameter.go b/net/goai/goai_parameter.go
index 6b6e122c5..463a69182 100644
--- a/net/goai/goai_parameter.go
+++ b/net/goai/goai_parameter.go
@@ -7,9 +7,9 @@
package goai
import (
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Parameter is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_parameter_ref.go b/net/goai/goai_parameter_ref.go
index 6c53cfee7..5a75575a3 100644
--- a/net/goai/goai_parameter_ref.go
+++ b/net/goai/goai_parameter_ref.go
@@ -10,12 +10,12 @@ import (
"fmt"
"net/http"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Parameters is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_path.go b/net/goai/goai_path.go
index 2d5ac6576..5e7a0a5a7 100644
--- a/net/goai/goai_path.go
+++ b/net/goai/goai_path.go
@@ -10,16 +10,16 @@ import (
"net/http"
"reflect"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
// Path is specified by OpenAPI/Swagger standard version 3.0.
diff --git a/net/goai/goai_requestbody.go b/net/goai/goai_requestbody.go
index d9c1858db..8ad4d390e 100644
--- a/net/goai/goai_requestbody.go
+++ b/net/goai/goai_requestbody.go
@@ -9,9 +9,9 @@ package goai
import (
"reflect"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RequestBody is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_response.go b/net/goai/goai_response.go
index 1f81365f6..b2ef48425 100644
--- a/net/goai/goai_response.go
+++ b/net/goai/goai_response.go
@@ -7,9 +7,9 @@
package goai
import (
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// EnhancedStatusCode is http status for response.
diff --git a/net/goai/goai_response_ref.go b/net/goai/goai_response_ref.go
index 683aa1233..816f4fc4a 100644
--- a/net/goai/goai_response_ref.go
+++ b/net/goai/goai_response_ref.go
@@ -9,11 +9,11 @@ package goai
import (
"reflect"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
type ResponseRef struct {
diff --git a/net/goai/goai_security.go b/net/goai/goai_security.go
index ece9b8523..b7c735b56 100644
--- a/net/goai/goai_security.go
+++ b/net/goai/goai_security.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
type SecurityScheme struct {
diff --git a/net/goai/goai_shema.go b/net/goai/goai_shema.go
index 9d1e1e712..71942a2ca 100644
--- a/net/goai/goai_shema.go
+++ b/net/goai/goai_shema.go
@@ -10,16 +10,16 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gvalid"
)
// Schema is specified by OpenAPI/Swagger 3.0 standard.
diff --git a/net/goai/goai_shema_ref.go b/net/goai/goai_shema_ref.go
index 63eef6894..7ba05c7e4 100644
--- a/net/goai/goai_shema_ref.go
+++ b/net/goai/goai_shema_ref.go
@@ -10,10 +10,10 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gtag"
)
type SchemaRefs []SchemaRef
diff --git a/net/goai/goai_shemas.go b/net/goai/goai_shemas.go
index d2e3020f8..5fd0fa3f5 100644
--- a/net/goai/goai_shemas.go
+++ b/net/goai/goai_shemas.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
type Schemas struct {
diff --git a/net/goai/goai_xextensions.go b/net/goai/goai_xextensions.go
index 1d2f2462e..9173469ff 100644
--- a/net/goai/goai_xextensions.go
+++ b/net/goai/goai_xextensions.go
@@ -7,7 +7,7 @@
package goai
import (
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// XExtensions stores the `x-` custom extensions.
diff --git a/net/goai/goai_z_unit_issue_test.go b/net/goai/goai_z_unit_issue_test.go
index 67fed9a26..e0d98854c 100644
--- a/net/goai/goai_z_unit_issue_test.go
+++ b/net/goai/goai_z_unit_issue_test.go
@@ -12,13 +12,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
var ctx = context.Background()
diff --git a/net/goai/goai_z_unit_test.go b/net/goai/goai_z_unit_test.go
index f7e5d53a4..dcf5bd858 100644
--- a/net/goai/goai_z_unit_test.go
+++ b/net/goai/goai_z_unit_test.go
@@ -12,14 +12,14 @@ import (
"net/http"
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/goai"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/goai"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
func Test_Basic(t *testing.T) {
@@ -1297,7 +1297,7 @@ func Test_Enums(t *testing.T) {
req = new(Req)
)
err = gtag.SetGlobalEnums(gjson.MustEncodeString(g.Map{
- "github.com/gogf/gf/v2/net/goai_test.Status": []interface{}{StatusA, StatusB},
+ "github.com/gogf/gf/v3/net/goai_test.Status": []interface{}{StatusA, StatusB},
}))
t.AssertNil(err)
diff --git a/net/gsel/gsel.go b/net/gsel/gsel.go
index ce28506dd..fe96e7e7d 100644
--- a/net/gsel/gsel.go
+++ b/net/gsel/gsel.go
@@ -10,7 +10,7 @@ package gsel
import (
"context"
- "github.com/gogf/gf/v2/net/gsvc"
+ "github.com/gogf/gf/v3/net/gsvc"
)
// Builder creates and returns selector in runtime.
diff --git a/net/gsel/gsel_selector_least_connection.go b/net/gsel/gsel_selector_least_connection.go
index c31b7fc0d..5d83aa705 100644
--- a/net/gsel/gsel_selector_least_connection.go
+++ b/net/gsel/gsel_selector_least_connection.go
@@ -10,8 +10,8 @@ import (
"context"
"sync"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/internal/intlog"
)
type selectorLeastConnection struct {
diff --git a/net/gsel/gsel_selector_random.go b/net/gsel/gsel_selector_random.go
index d638af9d8..c66c7f089 100644
--- a/net/gsel/gsel_selector_random.go
+++ b/net/gsel/gsel_selector_random.go
@@ -10,8 +10,8 @@ import (
"context"
"sync"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/grand"
)
type selectorRandom struct {
diff --git a/net/gsel/gsel_selector_round_robin.go b/net/gsel/gsel_selector_round_robin.go
index bbc06b754..151aed77b 100644
--- a/net/gsel/gsel_selector_round_robin.go
+++ b/net/gsel/gsel_selector_round_robin.go
@@ -10,7 +10,7 @@ import (
"context"
"sync"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
type selectorRoundRobin struct {
diff --git a/net/gsel/gsel_selector_weight.go b/net/gsel/gsel_selector_weight.go
index e15968354..cc12666df 100644
--- a/net/gsel/gsel_selector_weight.go
+++ b/net/gsel/gsel_selector_weight.go
@@ -10,9 +10,9 @@ import (
"context"
"sync"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gsvc"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gsvc"
+ "github.com/gogf/gf/v3/util/grand"
)
type selectorWeight struct {
diff --git a/net/gsvc/gsvc.go b/net/gsvc/gsvc.go
index 348c9f513..84352e8a5 100644
--- a/net/gsvc/gsvc.go
+++ b/net/gsvc/gsvc.go
@@ -11,7 +11,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Registry interface for service.
diff --git a/net/gsvc/gsvc_discovery.go b/net/gsvc/gsvc_discovery.go
index a50c1208e..82016bd3c 100644
--- a/net/gsvc/gsvc_discovery.go
+++ b/net/gsvc/gsvc_discovery.go
@@ -10,11 +10,11 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/gutil"
)
// watchedMap stores discovery object and its watched service mapping.
diff --git a/net/gsvc/gsvc_endpoint.go b/net/gsvc/gsvc_endpoint.go
index d4420614f..08dc5ec0f 100644
--- a/net/gsvc/gsvc_endpoint.go
+++ b/net/gsvc/gsvc_endpoint.go
@@ -10,10 +10,10 @@ package gsvc
import (
"fmt"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// LocalEndpoint implements interface Endpoint.
diff --git a/net/gsvc/gsvc_endpoints.go b/net/gsvc/gsvc_endpoints.go
index 478764a60..c89e394af 100644
--- a/net/gsvc/gsvc_endpoints.go
+++ b/net/gsvc/gsvc_endpoints.go
@@ -8,7 +8,7 @@
package gsvc
import (
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// NewEndpoints creates and returns Endpoints from multiple addresses like:
diff --git a/net/gsvc/gsvc_metadata.go b/net/gsvc/gsvc_metadata.go
index 015c599eb..10ea98d16 100644
--- a/net/gsvc/gsvc_metadata.go
+++ b/net/gsvc/gsvc_metadata.go
@@ -7,7 +7,7 @@
package gsvc
import (
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// Set sets key-value pair into metadata.
diff --git a/net/gsvc/gsvc_registry.go b/net/gsvc/gsvc_registry.go
index ca0f6578e..b44352acb 100644
--- a/net/gsvc/gsvc_registry.go
+++ b/net/gsvc/gsvc_registry.go
@@ -9,8 +9,8 @@ package gsvc
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Register registers `service` to default registry..
diff --git a/net/gsvc/gsvc_service.go b/net/gsvc/gsvc_service.go
index 80837e425..3f982de91 100644
--- a/net/gsvc/gsvc_service.go
+++ b/net/gsvc/gsvc_service.go
@@ -9,12 +9,12 @@ package gsvc
import (
"context"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/text/gstr"
)
// LocalService provides a default implements for interface Service.
diff --git a/net/gtcp/gtcp_conn.go b/net/gtcp/gtcp_conn.go
index 30510068c..465c80937 100644
--- a/net/gtcp/gtcp_conn.go
+++ b/net/gtcp/gtcp_conn.go
@@ -14,7 +14,7 @@ import (
"net"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Conn is the TCP connection object.
diff --git a/net/gtcp/gtcp_conn_pkg.go b/net/gtcp/gtcp_conn_pkg.go
index 797baa92e..be3b6f6b6 100644
--- a/net/gtcp/gtcp_conn_pkg.go
+++ b/net/gtcp/gtcp_conn_pkg.go
@@ -10,8 +10,8 @@ import (
"encoding/binary"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
const (
diff --git a/net/gtcp/gtcp_func.go b/net/gtcp/gtcp_func.go
index bb30c47ca..fc3f372fa 100644
--- a/net/gtcp/gtcp_func.go
+++ b/net/gtcp/gtcp_func.go
@@ -12,8 +12,8 @@ import (
"net"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
)
const (
diff --git a/net/gtcp/gtcp_pool.go b/net/gtcp/gtcp_pool.go
index 5d4135bb6..499f63547 100644
--- a/net/gtcp/gtcp_pool.go
+++ b/net/gtcp/gtcp_pool.go
@@ -9,8 +9,8 @@ package gtcp
import (
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gpool"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gpool"
)
// PoolConn is a connection with pool feature for TCP.
diff --git a/net/gtcp/gtcp_server.go b/net/gtcp/gtcp_server.go
index 010f6b1a2..7ea36ae54 100644
--- a/net/gtcp/gtcp_server.go
+++ b/net/gtcp/gtcp_server.go
@@ -12,11 +12,11 @@ import (
"net"
"sync"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/net/gtcp/gtcp_z_example_test.go b/net/gtcp/gtcp_z_example_test.go
index 93dd6a91e..f71109bdc 100644
--- a/net/gtcp/gtcp_z_example_test.go
+++ b/net/gtcp/gtcp_z_example_test.go
@@ -9,7 +9,7 @@ package gtcp_test
import (
"fmt"
- "github.com/gogf/gf/v2/net/gtcp"
+ "github.com/gogf/gf/v3/net/gtcp"
)
func ExampleGetFreePort() {
diff --git a/net/gtcp/gtcp_z_unit_conn_pkg_test.go b/net/gtcp/gtcp_z_unit_conn_pkg_test.go
index 19479e3cc..fd8e06097 100644
--- a/net/gtcp/gtcp_z_unit_conn_pkg_test.go
+++ b/net/gtcp/gtcp_z_unit_conn_pkg_test.go
@@ -11,11 +11,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Package_Basic(t *testing.T) {
diff --git a/net/gtcp/gtcp_z_unit_pool_pkg_test.go b/net/gtcp/gtcp_z_unit_pool_pkg_test.go
index 03ecc00ac..1c1195c33 100644
--- a/net/gtcp/gtcp_z_unit_pool_pkg_test.go
+++ b/net/gtcp/gtcp_z_unit_pool_pkg_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Pool_Package_Basic(t *testing.T) {
diff --git a/net/gtcp/gtcp_z_unit_pool_test.go b/net/gtcp/gtcp_z_unit_pool_test.go
index 7fc19d8d8..1e0a0c993 100644
--- a/net/gtcp/gtcp_z_unit_pool_test.go
+++ b/net/gtcp/gtcp_z_unit_pool_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Pool_Basic1(t *testing.T) {
diff --git a/net/gtcp/gtcp_z_unit_test.go b/net/gtcp/gtcp_z_unit_test.go
index 9e529b7d7..6dd399141 100644
--- a/net/gtcp/gtcp_z_unit_test.go
+++ b/net/gtcp/gtcp_z_unit_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/net/gtrace/gtrace.go b/net/gtrace/gtrace.go
index d1e72273b..90d8b8911 100644
--- a/net/gtrace/gtrace.go
+++ b/net/gtrace/gtrace.go
@@ -18,15 +18,15 @@ import (
semconv "go.opentelemetry.io/otel/semconv/v1.24.0"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/net/gtrace/internal/provider"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/net/gtrace/internal/provider"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/net/gtrace/gtrace_baggage.go b/net/gtrace/gtrace_baggage.go
index 26a9eb86a..7cbd1fee0 100644
--- a/net/gtrace/gtrace_baggage.go
+++ b/net/gtrace/gtrace_baggage.go
@@ -11,9 +11,9 @@ import (
"go.opentelemetry.io/otel/baggage"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Baggage holds the data through all tracing spans.
diff --git a/net/gtrace/gtrace_carrier.go b/net/gtrace/gtrace_carrier.go
index e29d7007b..96dce7192 100644
--- a/net/gtrace/gtrace_carrier.go
+++ b/net/gtrace/gtrace_carrier.go
@@ -7,8 +7,8 @@
package gtrace
import (
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Carrier is the storage medium used by a TextMapPropagator.
diff --git a/net/gtrace/gtrace_content.go b/net/gtrace/gtrace_content.go
index 7d596426a..1189b65fb 100644
--- a/net/gtrace/gtrace_content.go
+++ b/net/gtrace/gtrace_content.go
@@ -10,8 +10,8 @@ import (
"net/http"
"strings"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SafeContentForHttp cuts and returns given content by `MaxContentLogSize`.
diff --git a/net/gtrace/gtrace_z_unit_carrier_test.go b/net/gtrace/gtrace_z_unit_carrier_test.go
index a23fde0f0..6286b4ea8 100644
--- a/net/gtrace/gtrace_z_unit_carrier_test.go
+++ b/net/gtrace/gtrace_z_unit_carrier_test.go
@@ -13,8 +13,8 @@ import (
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/test/gtest"
)
const (
diff --git a/net/gtrace/gtrace_z_unit_feature_http_test.go b/net/gtrace/gtrace_z_unit_feature_http_test.go
index 511e1fb95..6459f432f 100644
--- a/net/gtrace/gtrace_z_unit_feature_http_test.go
+++ b/net/gtrace/gtrace_z_unit_feature_http_test.go
@@ -12,11 +12,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Client_Server_Tracing(t *testing.T) {
diff --git a/net/gtrace/gtrace_z_unit_test.go b/net/gtrace/gtrace_z_unit_test.go
index 604fd7f6e..fb40b11f1 100644
--- a/net/gtrace/gtrace_z_unit_test.go
+++ b/net/gtrace/gtrace_z_unit_test.go
@@ -12,10 +12,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func TestWithTraceID(t *testing.T) {
diff --git a/net/gtrace/internal/provider/provider_idgenerator.go b/net/gtrace/internal/provider/provider_idgenerator.go
index 6c5baec3b..d96422c3c 100644
--- a/net/gtrace/internal/provider/provider_idgenerator.go
+++ b/net/gtrace/internal/provider/provider_idgenerator.go
@@ -11,7 +11,7 @@ import (
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/internal/tracing"
+ "github.com/gogf/gf/v3/internal/tracing"
)
// IDGenerator is a trace ID generator.
diff --git a/net/gudp/gudp_conn.go b/net/gudp/gudp_conn.go
index d12994ba9..6420ab344 100644
--- a/net/gudp/gudp_conn.go
+++ b/net/gudp/gudp_conn.go
@@ -11,7 +11,7 @@ import (
"net"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// localConn provides common operations for udp connection.
diff --git a/net/gudp/gudp_conn_client_conn.go b/net/gudp/gudp_conn_client_conn.go
index e62842d42..e1db9c020 100644
--- a/net/gudp/gudp_conn_client_conn.go
+++ b/net/gudp/gudp_conn_client_conn.go
@@ -10,7 +10,7 @@ import (
"io"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// ClientConn holds the client side connection.
diff --git a/net/gudp/gudp_conn_server_conn.go b/net/gudp/gudp_conn_server_conn.go
index 56a5a0baf..9ea8d63e6 100644
--- a/net/gudp/gudp_conn_server_conn.go
+++ b/net/gudp/gudp_conn_server_conn.go
@@ -11,7 +11,7 @@ import (
"net"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// ServerConn holds the server side connection.
diff --git a/net/gudp/gudp_func.go b/net/gudp/gudp_func.go
index 32e4e8a05..2da29235d 100644
--- a/net/gudp/gudp_func.go
+++ b/net/gudp/gudp_func.go
@@ -9,7 +9,7 @@ package gudp
import (
"net"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// NewNetConn creates and returns a *net.UDPConn with given addresses.
diff --git a/net/gudp/gudp_server.go b/net/gudp/gudp_server.go
index 0ace0996e..2e4fec235 100644
--- a/net/gudp/gudp_server.go
+++ b/net/gudp/gudp_server.go
@@ -11,11 +11,11 @@ import (
"net"
"sync"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/net/gudp/gudp_z_example_test.go b/net/gudp/gudp_z_example_test.go
index 1c861341c..91b4e4477 100644
--- a/net/gudp/gudp_z_example_test.go
+++ b/net/gudp/gudp_z_example_test.go
@@ -9,7 +9,7 @@ package gudp_test
import (
"fmt"
- "github.com/gogf/gf/v2/net/gudp"
+ "github.com/gogf/gf/v3/net/gudp"
)
func ExampleGetFreePort() {
diff --git a/net/gudp/gudp_z_unit_test.go b/net/gudp/gudp_z_unit_test.go
index 55404a976..5f5b23f85 100644
--- a/net/gudp/gudp_z_unit_test.go
+++ b/net/gudp/gudp_z_unit_test.go
@@ -13,10 +13,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/net/gudp"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/net/gudp"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/os/gbuild/gbuild.go b/os/gbuild/gbuild.go
index b7afb9e1a..fb92587d9 100644
--- a/os/gbuild/gbuild.go
+++ b/os/gbuild/gbuild.go
@@ -11,11 +11,11 @@ import (
"context"
"runtime"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
)
// BuildInfo maintains the built info of the current binary.
diff --git a/os/gbuild/gbuild_z_unit_test.go b/os/gbuild/gbuild_z_unit_test.go
index 6cb5e8a2e..55f336705 100644
--- a/os/gbuild/gbuild_z_unit_test.go
+++ b/os/gbuild/gbuild_z_unit_test.go
@@ -9,10 +9,10 @@ package gbuild_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gbuild"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gbuild"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Info(t *testing.T) {
diff --git a/os/gcache/gcache.go b/os/gcache/gcache.go
index 892b2a034..aeb40ddb1 100644
--- a/os/gcache/gcache.go
+++ b/os/gcache/gcache.go
@@ -13,7 +13,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// Func is the cache function that calculates and returns the value.
diff --git a/os/gcache/gcache_adapter.go b/os/gcache/gcache_adapter.go
index 3c98011ba..b2b374aea 100644
--- a/os/gcache/gcache_adapter.go
+++ b/os/gcache/gcache_adapter.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// Adapter is the core adapter for cache features implements.
diff --git a/os/gcache/gcache_adapter_memory.go b/os/gcache/gcache_adapter_memory.go
index aceb0dc39..4f7d74137 100644
--- a/os/gcache/gcache_adapter_memory.go
+++ b/os/gcache/gcache_adapter_memory.go
@@ -11,12 +11,12 @@ import (
"math"
"time"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// AdapterMemory is an adapter implements using memory.
diff --git a/os/gcache/gcache_adapter_memory_data.go b/os/gcache/gcache_adapter_memory_data.go
index ddd0c5fae..c99eeb8b6 100644
--- a/os/gcache/gcache_adapter_memory_data.go
+++ b/os/gcache/gcache_adapter_memory_data.go
@@ -11,7 +11,7 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
type memoryData struct {
diff --git a/os/gcache/gcache_adapter_memory_expire_sets.go b/os/gcache/gcache_adapter_memory_expire_sets.go
index 58ef3424e..1a01cd7ce 100644
--- a/os/gcache/gcache_adapter_memory_expire_sets.go
+++ b/os/gcache/gcache_adapter_memory_expire_sets.go
@@ -9,7 +9,7 @@ package gcache
import (
"sync"
- "github.com/gogf/gf/v2/container/gset"
+ "github.com/gogf/gf/v3/container/gset"
)
type memoryExpireSets struct {
diff --git a/os/gcache/gcache_adapter_memory_item.go b/os/gcache/gcache_adapter_memory_item.go
index ede93f32c..598858248 100644
--- a/os/gcache/gcache_adapter_memory_item.go
+++ b/os/gcache/gcache_adapter_memory_item.go
@@ -7,7 +7,7 @@
package gcache
import (
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// IsExpired checks whether `item` is expired.
diff --git a/os/gcache/gcache_adapter_memory_lru.go b/os/gcache/gcache_adapter_memory_lru.go
index cf7f71c43..e25c93c56 100644
--- a/os/gcache/gcache_adapter_memory_lru.go
+++ b/os/gcache/gcache_adapter_memory_lru.go
@@ -9,8 +9,8 @@ package gcache
import (
"sync"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gmap"
)
// memoryLru holds LRU info.
diff --git a/os/gcache/gcache_adapter_redis.go b/os/gcache/gcache_adapter_redis.go
index 794556a45..58d154d7c 100644
--- a/os/gcache/gcache_adapter_redis.go
+++ b/os/gcache/gcache_adapter_redis.go
@@ -10,9 +10,9 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/util/gconv"
)
// AdapterRedis is the gcache adapter implements using Redis server.
diff --git a/os/gcache/gcache_cache.go b/os/gcache/gcache_cache.go
index 939227731..fdd8ef90e 100644
--- a/os/gcache/gcache_cache.go
+++ b/os/gcache/gcache_cache.go
@@ -9,7 +9,7 @@ package gcache
import (
"context"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Cache struct.
diff --git a/os/gcache/gcache_cache_must.go b/os/gcache/gcache_cache_must.go
index 65961a001..771048abd 100644
--- a/os/gcache/gcache_cache_must.go
+++ b/os/gcache/gcache_cache_must.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
// MustGet acts like Get, but it panics if any error occurs.
diff --git a/os/gcache/gcache_z_bench_test.go b/os/gcache/gcache_z_bench_test.go
index 3ab6b9b4f..add26ac54 100644
--- a/os/gcache/gcache_z_bench_test.go
+++ b/os/gcache/gcache_z_bench_test.go
@@ -12,7 +12,7 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/os/gcache"
+ "github.com/gogf/gf/v3/os/gcache"
)
var (
diff --git a/os/gcache/gcache_z_example_cache_test.go b/os/gcache/gcache_z_example_cache_test.go
index 64a5e012b..b52f036f8 100644
--- a/os/gcache/gcache_z_example_cache_test.go
+++ b/os/gcache/gcache_z_example_cache_test.go
@@ -11,10 +11,10 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gctx"
)
func ExampleNew() {
diff --git a/os/gcache/gcache_z_unit_test.go b/os/gcache/gcache_z_unit_test.go
index 4eba06475..310f38022 100644
--- a/os/gcache/gcache_z_unit_test.go
+++ b/os/gcache/gcache_z_unit_test.go
@@ -14,12 +14,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/grpool"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/grpool"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/os/gcfg/gcfg.go b/os/gcfg/gcfg.go
index f8357b65c..82fc30629 100644
--- a/os/gcfg/gcfg.go
+++ b/os/gcfg/gcfg.go
@@ -10,13 +10,13 @@ package gcfg
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/genv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/genv"
)
// Config is the configuration management object.
diff --git a/os/gcfg/gcfg_adapter_content.go b/os/gcfg/gcfg_adapter_content.go
index 9a0b12a28..d3a048c92 100644
--- a/os/gcfg/gcfg_adapter_content.go
+++ b/os/gcfg/gcfg_adapter_content.go
@@ -9,9 +9,9 @@ package gcfg
import (
"context"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// AdapterContent implements interface Adapter using content.
diff --git a/os/gcfg/gcfg_adapter_file.go b/os/gcfg/gcfg_adapter_file.go
index 1a9a1f83a..d6fd31a15 100644
--- a/os/gcfg/gcfg_adapter_file.go
+++ b/os/gcfg/gcfg_adapter_file.go
@@ -9,18 +9,18 @@ package gcfg
import (
"context"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/util/gmode"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/util/gmode"
+ "github.com/gogf/gf/v3/util/gutil"
)
// AdapterFile implements interface Adapter using file.
diff --git a/os/gcfg/gcfg_adapter_file_content.go b/os/gcfg/gcfg_adapter_file_content.go
index 4304d5709..b3bb7e897 100644
--- a/os/gcfg/gcfg_adapter_file_content.go
+++ b/os/gcfg/gcfg_adapter_file_content.go
@@ -9,7 +9,7 @@ package gcfg
import (
"context"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// SetContent sets customized configuration content for specified `file`.
diff --git a/os/gcfg/gcfg_adapter_file_path.go b/os/gcfg/gcfg_adapter_file_path.go
index f799e51d2..c4320a826 100644
--- a/os/gcfg/gcfg_adapter_file_path.go
+++ b/os/gcfg/gcfg_adapter_file_path.go
@@ -12,13 +12,13 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gspath"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gspath"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SetPath sets the configuration `directory` path for file search.
diff --git a/os/gcfg/gcfg_z_example_test.go b/os/gcfg/gcfg_z_example_test.go
index d45d74e6a..615298aea 100644
--- a/os/gcfg/gcfg_z_example_test.go
+++ b/os/gcfg/gcfg_z_example_test.go
@@ -10,11 +10,11 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/genv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/genv"
)
func ExampleConfig_GetWithEnv() {
diff --git a/os/gcfg/gcfg_z_unit_adapter_content_test.go b/os/gcfg/gcfg_z_unit_adapter_content_test.go
index 8a30f1316..8726bdbff 100644
--- a/os/gcfg/gcfg_z_unit_adapter_content_test.go
+++ b/os/gcfg/gcfg_z_unit_adapter_content_test.go
@@ -11,9 +11,9 @@ package gcfg_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestAdapterContent_Available_Get_Data(t *testing.T) {
diff --git a/os/gcfg/gcfg_z_unit_adapter_file_test.go b/os/gcfg/gcfg_z_unit_adapter_file_test.go
index 4f46e44ea..acf6145b3 100644
--- a/os/gcfg/gcfg_z_unit_adapter_file_test.go
+++ b/os/gcfg/gcfg_z_unit_adapter_file_test.go
@@ -11,9 +11,9 @@ package gcfg_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestAdapterFile_Dump(t *testing.T) {
diff --git a/os/gcfg/gcfg_z_unit_basic_test.go b/os/gcfg/gcfg_z_unit_basic_test.go
index ff0347660..9846fb3c4 100644
--- a/os/gcfg/gcfg_z_unit_basic_test.go
+++ b/os/gcfg/gcfg_z_unit_basic_test.go
@@ -11,12 +11,12 @@ package gcfg_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Basic1(t *testing.T) {
diff --git a/os/gcfg/gcfg_z_unit_instance_test.go b/os/gcfg/gcfg_z_unit_instance_test.go
index 47bf3cbda..e50154e7a 100644
--- a/os/gcfg/gcfg_z_unit_instance_test.go
+++ b/os/gcfg/gcfg_z_unit_instance_test.go
@@ -12,10 +12,10 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/os/gcmd/gcmd.go b/os/gcmd/gcmd.go
index b73644e91..4a9690549 100644
--- a/os/gcmd/gcmd.go
+++ b/os/gcmd/gcmd.go
@@ -11,10 +11,10 @@ package gcmd
import (
"os"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gctx"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gctx"
)
const (
@@ -27,7 +27,7 @@ const (
helpOptionName = "help"
helpOptionNameShort = "h"
maxLineChars = 120
- tracingInstrumentName = "github.com/gogf/gf/v2/os/gcmd.Command"
+ tracingInstrumentName = "github.com/gogf/gf/v3/os/gcmd.Command"
tagNameName = "name"
tagNameShort = "short"
)
diff --git a/os/gcmd/gcmd_command.go b/os/gcmd/gcmd_command.go
index 80c824da3..d1bf52f30 100644
--- a/os/gcmd/gcmd_command.go
+++ b/os/gcmd/gcmd_command.go
@@ -10,9 +10,9 @@ package gcmd
import (
"context"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Command holds the info about an argument that can handle custom logic.
diff --git a/os/gcmd/gcmd_command_help.go b/os/gcmd/gcmd_command_help.go
index c9aa85985..54afaac5d 100644
--- a/os/gcmd/gcmd_command_help.go
+++ b/os/gcmd/gcmd_command_help.go
@@ -14,7 +14,7 @@ import (
"io"
"os"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Print prints help info to stdout for current command.
diff --git a/os/gcmd/gcmd_command_object.go b/os/gcmd/gcmd_command_object.go
index f98820591..10b30c16b 100644
--- a/os/gcmd/gcmd_command_object.go
+++ b/os/gcmd/gcmd_command_object.go
@@ -12,20 +12,20 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/gutil"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/gutil"
+ "github.com/gogf/gf/v3/util/gvalid"
)
var (
diff --git a/os/gcmd/gcmd_command_run.go b/os/gcmd/gcmd_command_run.go
index 1f4c4bd06..b6c8c0f38 100644
--- a/os/gcmd/gcmd_command_run.go
+++ b/os/gcmd/gcmd_command_run.go
@@ -17,16 +17,16 @@ import (
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/gcfg"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Run calls custom function in os.Args that bound to this command.
diff --git a/os/gcmd/gcmd_parser.go b/os/gcmd/gcmd_parser.go
index f27945426..7c4ab0134 100644
--- a/os/gcmd/gcmd_parser.go
+++ b/os/gcmd/gcmd_parser.go
@@ -12,13 +12,13 @@ import (
"os"
"strings"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
// ParserOption manages the parsing options.
diff --git a/os/gcmd/gcmd_scan.go b/os/gcmd/gcmd_scan.go
index d29296b18..60b8b5da6 100644
--- a/os/gcmd/gcmd_scan.go
+++ b/os/gcmd/gcmd_scan.go
@@ -12,7 +12,7 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Scan prints `info` to stdout, reads and returns user input, which stops by '\n'.
diff --git a/os/gcmd/gcmd_z_example_test.go b/os/gcmd/gcmd_z_example_test.go
index 5370191e7..a41616834 100644
--- a/os/gcmd/gcmd_z_example_test.go
+++ b/os/gcmd/gcmd_z_example_test.go
@@ -11,10 +11,10 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/genv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/genv"
)
func ExampleInit() {
diff --git a/os/gcmd/gcmd_z_unit_feature_object1_test.go b/os/gcmd/gcmd_z_unit_feature_object1_test.go
index bd58acf9a..6f8169337 100644
--- a/os/gcmd/gcmd_z_unit_feature_object1_test.go
+++ b/os/gcmd/gcmd_z_unit_feature_object1_test.go
@@ -13,10 +13,10 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
type TestCmdObject struct {
diff --git a/os/gcmd/gcmd_z_unit_feature_object2_test.go b/os/gcmd/gcmd_z_unit_feature_object2_test.go
index a772ce329..ebe132ada 100644
--- a/os/gcmd/gcmd_z_unit_feature_object2_test.go
+++ b/os/gcmd/gcmd_z_unit_feature_object2_test.go
@@ -13,11 +13,11 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gtag"
)
type commandBuild struct {
diff --git a/os/gcmd/gcmd_z_unit_feature_object3_test.go b/os/gcmd/gcmd_z_unit_feature_object3_test.go
index d6c185e1c..01ef0ac6d 100644
--- a/os/gcmd/gcmd_z_unit_feature_object3_test.go
+++ b/os/gcmd/gcmd_z_unit_feature_object3_test.go
@@ -11,10 +11,10 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
type TestParamsCase struct {
diff --git a/os/gcmd/gcmd_z_unit_feature_object4_test.go b/os/gcmd/gcmd_z_unit_feature_object4_test.go
index f5ffaf87e..bccff13e8 100644
--- a/os/gcmd/gcmd_z_unit_feature_object4_test.go
+++ b/os/gcmd/gcmd_z_unit_feature_object4_test.go
@@ -11,10 +11,10 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
type TestNoNameTagCase struct {
diff --git a/os/gcmd/gcmd_z_unit_issue_test.go b/os/gcmd/gcmd_z_unit_issue_test.go
index 2db62bd65..f1edc3279 100644
--- a/os/gcmd/gcmd_z_unit_issue_test.go
+++ b/os/gcmd/gcmd_z_unit_issue_test.go
@@ -12,11 +12,11 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
type Issue3390CommandCase1 struct {
diff --git a/os/gcmd/gcmd_z_unit_parser_test.go b/os/gcmd/gcmd_z_unit_parser_test.go
index 5a9307d01..57b73023f 100644
--- a/os/gcmd/gcmd_z_unit_parser_test.go
+++ b/os/gcmd/gcmd_z_unit_parser_test.go
@@ -12,8 +12,8 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Parse(t *testing.T) {
diff --git a/os/gcmd/gcmd_z_unit_test.go b/os/gcmd/gcmd_z_unit_test.go
index 605b0b3fa..2cc90553b 100644
--- a/os/gcmd/gcmd_z_unit_test.go
+++ b/os/gcmd/gcmd_z_unit_test.go
@@ -15,13 +15,13 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Default(t *testing.T) {
diff --git a/os/gcron/gcron.go b/os/gcron/gcron.go
index 0e375185c..6507dd881 100644
--- a/os/gcron/gcron.go
+++ b/os/gcron/gcron.go
@@ -11,8 +11,8 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtimer"
)
const (
diff --git a/os/gcron/gcron_cron.go b/os/gcron/gcron_cron.go
index 2588de4c0..75b337adf 100644
--- a/os/gcron/gcron_cron.go
+++ b/os/gcron/gcron_cron.go
@@ -11,11 +11,11 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// Cron stores all the cron job entries.
diff --git a/os/gcron/gcron_entry.go b/os/gcron/gcron_entry.go
index cbededcce..0379867bb 100644
--- a/os/gcron/gcron_entry.go
+++ b/os/gcron/gcron_entry.go
@@ -13,12 +13,12 @@ import (
"runtime"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/util/gconv"
)
// JobFunc is the timing called job function in cron.
diff --git a/os/gcron/gcron_schedule.go b/os/gcron/gcron_schedule.go
index abf685f5f..7b40c6750 100644
--- a/os/gcron/gcron_schedule.go
+++ b/os/gcron/gcron_schedule.go
@@ -11,11 +11,11 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
)
// cronSchedule is the schedule for cron job.
diff --git a/os/gcron/gcron_schedule_check.go b/os/gcron/gcron_schedule_check.go
index 7c0069015..efd4bfd0a 100644
--- a/os/gcron/gcron_schedule_check.go
+++ b/os/gcron/gcron_schedule_check.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// checkMeetAndUpdateLastSeconds checks if the given time `t` meets the runnable point for the job.
diff --git a/os/gcron/gcron_schedule_fix.go b/os/gcron/gcron_schedule_fix.go
index b5e10dbc8..009c48982 100644
--- a/os/gcron/gcron_schedule_fix.go
+++ b/os/gcron/gcron_schedule_fix.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// getAndUpdateLastCheckTimestamp checks fixes and returns the last timestamp that have delay fix in some seconds.
diff --git a/os/gcron/gcron_z_bench_test.go b/os/gcron/gcron_z_bench_test.go
index 287084f24..8614c1792 100644
--- a/os/gcron/gcron_z_bench_test.go
+++ b/os/gcron/gcron_z_bench_test.go
@@ -10,7 +10,7 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/os/gcron"
+ "github.com/gogf/gf/v3/os/gcron"
)
func Benchmark_Add(b *testing.B) {
diff --git a/os/gcron/gcron_z_example_1_test.go b/os/gcron/gcron_z_example_1_test.go
index 40027cda8..485168b51 100644
--- a/os/gcron/gcron_z_example_1_test.go
+++ b/os/gcron/gcron_z_example_1_test.go
@@ -13,9 +13,9 @@ import (
"syscall"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcron"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcron"
+ "github.com/gogf/gf/v3/os/glog"
)
func ExampleCronAddSingleton() {
diff --git a/os/gcron/gcron_z_unit_entry_test.go b/os/gcron/gcron_z_unit_entry_test.go
index 62fa361ac..cece1561e 100644
--- a/os/gcron/gcron_z_unit_entry_test.go
+++ b/os/gcron/gcron_z_unit_entry_test.go
@@ -11,9 +11,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gcron"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gcron"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestCron_Entry_Operations(t *testing.T) {
diff --git a/os/gcron/gcron_z_unit_schedule_test.go b/os/gcron/gcron_z_unit_schedule_test.go
index 5bb5ef60f..2974d68db 100644
--- a/os/gcron/gcron_z_unit_schedule_test.go
+++ b/os/gcron/gcron_z_unit_schedule_test.go
@@ -11,7 +11,7 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestSlash(t *testing.T) {
diff --git a/os/gcron/gcron_z_unit_test.go b/os/gcron/gcron_z_unit_test.go
index 1f162d560..47058e9c5 100644
--- a/os/gcron/gcron_z_unit_test.go
+++ b/os/gcron/gcron_z_unit_test.go
@@ -15,11 +15,11 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcron"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcron"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/os/gctx/gctx.go b/os/gctx/gctx.go
index 2a7e71113..dfd34ef2e 100644
--- a/os/gctx/gctx.go
+++ b/os/gctx/gctx.go
@@ -15,7 +15,7 @@ import (
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/propagation"
- "github.com/gogf/gf/v2/net/gtrace"
+ "github.com/gogf/gf/v3/net/gtrace"
)
type (
diff --git a/os/gctx/gctx_z_unit_internal_test.go b/os/gctx/gctx_z_unit_internal_test.go
index 78d14e1d7..0b8cf8775 100644
--- a/os/gctx/gctx_z_unit_internal_test.go
+++ b/os/gctx/gctx_z_unit_internal_test.go
@@ -11,8 +11,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_NeverDone(t *testing.T) {
diff --git a/os/gctx/gctx_z_unit_test.go b/os/gctx/gctx_z_unit_test.go
index 25d63b573..7c5c3563a 100644
--- a/os/gctx/gctx_z_unit_test.go
+++ b/os/gctx/gctx_z_unit_test.go
@@ -10,8 +10,8 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_New(t *testing.T) {
diff --git a/os/genv/genv.go b/os/genv/genv.go
index 895563055..6987b245a 100644
--- a/os/genv/genv.go
+++ b/os/genv/genv.go
@@ -12,10 +12,10 @@ import (
"os"
"strings"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/utils"
)
// All returns a copy of strings representing the environment,
diff --git a/os/genv/genv_z_unit_test.go b/os/genv/genv_z_unit_test.go
index a107dcfa4..2fb6da806 100644
--- a/os/genv/genv_z_unit_test.go
+++ b/os/genv/genv_z_unit_test.go
@@ -10,12 +10,12 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_GEnv_All(t *testing.T) {
diff --git a/os/gfile/gfile.go b/os/gfile/gfile.go
index ee1c902f1..dae2c840c 100644
--- a/os/gfile/gfile.go
+++ b/os/gfile/gfile.go
@@ -14,10 +14,10 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/os/gfile/gfile_cache.go b/os/gfile/gfile_cache.go
index 731cb1cef..0e9161506 100644
--- a/os/gfile/gfile_cache.go
+++ b/os/gfile/gfile_cache.go
@@ -10,12 +10,12 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcache"
- "github.com/gogf/gf/v2/os/gfsnotify"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcache"
+ "github.com/gogf/gf/v3/os/gfsnotify"
)
const (
diff --git a/os/gfile/gfile_contents.go b/os/gfile/gfile_contents.go
index 048136f73..54339198d 100644
--- a/os/gfile/gfile_contents.go
+++ b/os/gfile/gfile_contents.go
@@ -11,7 +11,7 @@ import (
"io"
"os"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
var (
diff --git a/os/gfile/gfile_copy.go b/os/gfile/gfile_copy.go
index 1a8155516..a0251db62 100644
--- a/os/gfile/gfile_copy.go
+++ b/os/gfile/gfile_copy.go
@@ -11,8 +11,8 @@ import (
"os"
"path/filepath"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// CopyOption is the option for Copy* functions.
diff --git a/os/gfile/gfile_home.go b/os/gfile/gfile_home.go
index 817e74bf7..9789a8c40 100644
--- a/os/gfile/gfile_home.go
+++ b/os/gfile/gfile_home.go
@@ -14,7 +14,7 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Home returns absolute path of current user's home directory.
diff --git a/os/gfile/gfile_replace.go b/os/gfile/gfile_replace.go
index 74fba01d6..622b01193 100644
--- a/os/gfile/gfile_replace.go
+++ b/os/gfile/gfile_replace.go
@@ -7,7 +7,7 @@
package gfile
import (
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// ReplaceFile replaces content for file `path`.
diff --git a/os/gfile/gfile_scan.go b/os/gfile/gfile_scan.go
index deda5b6da..8e5c46d17 100644
--- a/os/gfile/gfile_scan.go
+++ b/os/gfile/gfile_scan.go
@@ -10,8 +10,8 @@ import (
"path/filepath"
"sort"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
const (
diff --git a/os/gfile/gfile_search.go b/os/gfile/gfile_search.go
index a0d06999d..762416c02 100644
--- a/os/gfile/gfile_search.go
+++ b/os/gfile/gfile_search.go
@@ -10,8 +10,8 @@ import (
"bytes"
"fmt"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Search searches file by name `name` in following paths with priority:
diff --git a/os/gfile/gfile_sort.go b/os/gfile/gfile_sort.go
index 3772cb07d..c4c143fa0 100644
--- a/os/gfile/gfile_sort.go
+++ b/os/gfile/gfile_sort.go
@@ -9,7 +9,7 @@ package gfile
import (
"strings"
- "github.com/gogf/gf/v2/container/garray"
+ "github.com/gogf/gf/v3/container/garray"
)
// fileSortFunc is the comparison function for files.
diff --git a/os/gfile/gfile_source.go b/os/gfile/gfile_source.go
index d77f0b9b9..1e1063a0a 100644
--- a/os/gfile/gfile_source.go
+++ b/os/gfile/gfile_source.go
@@ -11,8 +11,8 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/os/gfile/gfile_z_example_cache_test.go b/os/gfile/gfile_z_example_cache_test.go
index 0c2a7dff0..5590da68c 100644
--- a/os/gfile/gfile_z_example_cache_test.go
+++ b/os/gfile/gfile_z_example_cache_test.go
@@ -10,7 +10,7 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleGetContentsWithCache() {
diff --git a/os/gfile/gfile_z_example_contents_test.go b/os/gfile/gfile_z_example_contents_test.go
index c8310a8a0..b785ed1b0 100644
--- a/os/gfile/gfile_z_example_contents_test.go
+++ b/os/gfile/gfile_z_example_contents_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleGetContents() {
diff --git a/os/gfile/gfile_z_example_copy_test.go b/os/gfile/gfile_z_example_copy_test.go
index 9276029c6..fd87946cf 100644
--- a/os/gfile/gfile_z_example_copy_test.go
+++ b/os/gfile/gfile_z_example_copy_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleCopy() {
diff --git a/os/gfile/gfile_z_example_home_test.go b/os/gfile/gfile_z_example_home_test.go
index 9cc2b9707..4ec2983bc 100644
--- a/os/gfile/gfile_z_example_home_test.go
+++ b/os/gfile/gfile_z_example_home_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleHome() {
diff --git a/os/gfile/gfile_z_example_replace_test.go b/os/gfile/gfile_z_example_replace_test.go
index 2c1a13d9a..197cc8ea8 100644
--- a/os/gfile/gfile_z_example_replace_test.go
+++ b/os/gfile/gfile_z_example_replace_test.go
@@ -10,7 +10,7 @@ import (
"fmt"
"regexp"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleReplaceFile() {
diff --git a/os/gfile/gfile_z_example_scan_test.go b/os/gfile/gfile_z_example_scan_test.go
index 063f6a519..d1bcbf3bd 100644
--- a/os/gfile/gfile_z_example_scan_test.go
+++ b/os/gfile/gfile_z_example_scan_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleScanDir() {
diff --git a/os/gfile/gfile_z_example_search_test.go b/os/gfile/gfile_z_example_search_test.go
index c24138bf8..fbb1ad366 100644
--- a/os/gfile/gfile_z_example_search_test.go
+++ b/os/gfile/gfile_z_example_search_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleSearch() {
diff --git a/os/gfile/gfile_z_example_size_test.go b/os/gfile/gfile_z_example_size_test.go
index 6e7d14cab..cc96c68de 100644
--- a/os/gfile/gfile_z_example_size_test.go
+++ b/os/gfile/gfile_z_example_size_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleSize() {
diff --git a/os/gfile/gfile_z_example_sort_test.go b/os/gfile/gfile_z_example_sort_test.go
index aaa46d2b6..9b5bdd872 100644
--- a/os/gfile/gfile_z_example_sort_test.go
+++ b/os/gfile/gfile_z_example_sort_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleSortFiles() {
diff --git a/os/gfile/gfile_z_example_time_test.go b/os/gfile/gfile_z_example_time_test.go
index 9d51ba1b0..01c38112c 100644
--- a/os/gfile/gfile_z_example_time_test.go
+++ b/os/gfile/gfile_z_example_time_test.go
@@ -9,7 +9,7 @@ package gfile_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleMTime() {
diff --git a/os/gfile/gfile_z_exmaple_basic_test.go b/os/gfile/gfile_z_exmaple_basic_test.go
index a592e3cf2..63ef7a4ea 100644
--- a/os/gfile/gfile_z_exmaple_basic_test.go
+++ b/os/gfile/gfile_z_exmaple_basic_test.go
@@ -10,7 +10,7 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
func ExampleMkdir() {
diff --git a/os/gfile/gfile_z_unit_cache_test.go b/os/gfile/gfile_z_unit_cache_test.go
index b77b8610b..ede0b7f7b 100644
--- a/os/gfile/gfile_z_unit_cache_test.go
+++ b/os/gfile/gfile_z_unit_cache_test.go
@@ -11,8 +11,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_GetContentsWithCache(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_contents_test.go b/os/gfile/gfile_z_unit_contents_test.go
index ecb192229..0098f3965 100644
--- a/os/gfile/gfile_z_unit_contents_test.go
+++ b/os/gfile/gfile_z_unit_contents_test.go
@@ -12,11 +12,11 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func createTestFile(filename, content string) error {
diff --git a/os/gfile/gfile_z_unit_copy_test.go b/os/gfile/gfile_z_unit_copy_test.go
index b914ca7d4..69f59f4ae 100644
--- a/os/gfile/gfile_z_unit_copy_test.go
+++ b/os/gfile/gfile_z_unit_copy_test.go
@@ -10,10 +10,10 @@ import (
"os"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Copy(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_scan_test.go b/os/gfile/gfile_z_unit_scan_test.go
index 151488313..27a72079f 100644
--- a/os/gfile/gfile_z_unit_scan_test.go
+++ b/os/gfile/gfile_z_unit_scan_test.go
@@ -9,9 +9,9 @@ package gfile_test
import (
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ScanDir(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_search_test.go b/os/gfile/gfile_z_unit_search_test.go
index 527abec5f..5b1d9ecfe 100644
--- a/os/gfile/gfile_z_unit_search_test.go
+++ b/os/gfile/gfile_z_unit_search_test.go
@@ -10,8 +10,8 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Search(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_size_test.go b/os/gfile/gfile_z_unit_size_test.go
index 8e410a97b..a4722ec31 100644
--- a/os/gfile/gfile_z_unit_size_test.go
+++ b/os/gfile/gfile_z_unit_size_test.go
@@ -9,9 +9,9 @@ package gfile_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_Size(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_test.go b/os/gfile/gfile_z_unit_test.go
index 40696d871..80ed33274 100644
--- a/os/gfile/gfile_z_unit_test.go
+++ b/os/gfile/gfile_z_unit_test.go
@@ -12,11 +12,11 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_IsDir(t *testing.T) {
diff --git a/os/gfile/gfile_z_unit_time_test.go b/os/gfile/gfile_z_unit_time_test.go
index fb83d1faa..eb8479240 100644
--- a/os/gfile/gfile_z_unit_time_test.go
+++ b/os/gfile/gfile_z_unit_time_test.go
@@ -11,8 +11,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_MTime(t *testing.T) {
diff --git a/os/gfpool/gfpool.go b/os/gfpool/gfpool.go
index 5eec01b27..70ad7ebdd 100644
--- a/os/gfpool/gfpool.go
+++ b/os/gfpool/gfpool.go
@@ -11,9 +11,9 @@ import (
"os"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gpool"
- "github.com/gogf/gf/v2/container/gtype"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gpool"
+ "github.com/gogf/gf/v3/container/gtype"
)
// Pool pointer pool.
diff --git a/os/gfpool/gfpool_file.go b/os/gfpool/gfpool_file.go
index 052866d6b..8009e4848 100644
--- a/os/gfpool/gfpool_file.go
+++ b/os/gfpool/gfpool_file.go
@@ -11,7 +11,7 @@ import (
"os"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Open creates and returns a file item with given file path, flag and opening permission.
diff --git a/os/gfpool/gfpool_pool.go b/os/gfpool/gfpool_pool.go
index 55929b461..5bc79e324 100644
--- a/os/gfpool/gfpool_pool.go
+++ b/os/gfpool/gfpool_pool.go
@@ -10,10 +10,10 @@ import (
"os"
"time"
- "github.com/gogf/gf/v2/container/gpool"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfsnotify"
+ "github.com/gogf/gf/v3/container/gpool"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfsnotify"
)
// New creates and returns a file pointer pool with given file path, flag and opening permission.
diff --git a/os/gfpool/gfpool_z_unit_test.go b/os/gfpool/gfpool_z_unit_test.go
index 6960d668c..fb0a6a212 100644
--- a/os/gfpool/gfpool_z_unit_test.go
+++ b/os/gfpool/gfpool_z_unit_test.go
@@ -12,12 +12,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfpool"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfpool"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
// TestOpen test open file cache
diff --git a/os/gfsnotify/gfsnotify.go b/os/gfsnotify/gfsnotify.go
index 51f7c93ea..771eb4498 100644
--- a/os/gfsnotify/gfsnotify.go
+++ b/os/gfsnotify/gfsnotify.go
@@ -14,15 +14,15 @@ import (
"github.com/fsnotify/fsnotify"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gqueue"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcache"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gqueue"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcache"
)
// Watcher is the monitor for file changes.
diff --git a/os/gfsnotify/gfsnotify_filefunc.go b/os/gfsnotify/gfsnotify_filefunc.go
index 754be56cf..6d6617b12 100644
--- a/os/gfsnotify/gfsnotify_filefunc.go
+++ b/os/gfsnotify/gfsnotify_filefunc.go
@@ -13,7 +13,7 @@ import (
"sort"
"strings"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// fileDir returns all but the last element of path, typically the path's directory.
diff --git a/os/gfsnotify/gfsnotify_watcher.go b/os/gfsnotify/gfsnotify_watcher.go
index 915e588c2..6d8ad7191 100644
--- a/os/gfsnotify/gfsnotify_watcher.go
+++ b/os/gfsnotify/gfsnotify_watcher.go
@@ -9,10 +9,10 @@ package gfsnotify
import (
"context"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// Add monitors `path` with callback function `callbackFunc` to the watcher.
diff --git a/os/gfsnotify/gfsnotify_watcher_loop.go b/os/gfsnotify/gfsnotify_watcher_loop.go
index dc12d5763..5fde4cac5 100644
--- a/os/gfsnotify/gfsnotify_watcher_loop.go
+++ b/os/gfsnotify/gfsnotify_watcher_loop.go
@@ -9,10 +9,10 @@ package gfsnotify
import (
"context"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// watchLoop starts the loop for event listening from underlying inotify monitor.
diff --git a/os/gfsnotify/gfsnotify_z_unit_test.go b/os/gfsnotify/gfsnotify_z_unit_test.go
index 1ca79a58f..39ec26a7d 100644
--- a/os/gfsnotify/gfsnotify_z_unit_test.go
+++ b/os/gfsnotify/gfsnotify_z_unit_test.go
@@ -10,13 +10,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestWatcher_AddOnce(t *testing.T) {
diff --git a/os/glog/glog.go b/os/glog/glog.go
index 9a5a0dd62..2626459dd 100644
--- a/os/glog/glog.go
+++ b/os/glog/glog.go
@@ -10,9 +10,9 @@ package glog
import (
"context"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/os/grpool"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/os/grpool"
+ "github.com/gogf/gf/v3/util/gconv"
)
// ILogger is the API interface for logger.
diff --git a/os/glog/glog_instance.go b/os/glog/glog_instance.go
index 3b732606d..94047616d 100644
--- a/os/glog/glog_instance.go
+++ b/os/glog/glog_instance.go
@@ -6,7 +6,7 @@
package glog
-import "github.com/gogf/gf/v2/container/gmap"
+import "github.com/gogf/gf/v3/container/gmap"
const (
// DefaultName is the default group name for instance usage.
diff --git a/os/glog/glog_logger.go b/os/glog/glog_logger.go
index 942986dae..b77308644 100644
--- a/os/glog/glog_logger.go
+++ b/os/glog/glog_logger.go
@@ -19,17 +19,17 @@ import (
"github.com/fatih/color"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/internal/consts"
- "github.com/gogf/gf/v2/internal/errors"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfpool"
- "github.com/gogf/gf/v2/os/gmlock"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/internal/consts"
+ "github.com/gogf/gf/v3/internal/errors"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfpool"
+ "github.com/gogf/gf/v3/os/gmlock"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Logger is the struct for logging management.
diff --git a/os/glog/glog_logger_chaining.go b/os/glog/glog_logger_chaining.go
index 72a90fade..22d76f01a 100644
--- a/os/glog/glog_logger_chaining.go
+++ b/os/glog/glog_logger_chaining.go
@@ -9,7 +9,7 @@ package glog
import (
"io"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
// To is a chaining function,
diff --git a/os/glog/glog_logger_config.go b/os/glog/glog_logger_config.go
index fcd83d162..68c65022a 100644
--- a/os/glog/glog_logger_config.go
+++ b/os/glog/glog_logger_config.go
@@ -12,13 +12,13 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Config is the configuration object for logger.
diff --git a/os/glog/glog_logger_handler.go b/os/glog/glog_logger_handler.go
index bf4c105ab..503f0bab7 100644
--- a/os/glog/glog_logger_handler.go
+++ b/os/glog/glog_logger_handler.go
@@ -11,7 +11,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Handler is function handler for custom logging content outputs.
diff --git a/os/glog/glog_logger_handler_json.go b/os/glog/glog_logger_handler_json.go
index be5d6cdab..7fefebd83 100644
--- a/os/glog/glog_logger_handler_json.go
+++ b/os/glog/glog_logger_handler_json.go
@@ -9,7 +9,7 @@ package glog
import (
"context"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// HandlerOutputJson is the structure outputting logging content as single json.
diff --git a/os/glog/glog_logger_handler_structure.go b/os/glog/glog_logger_handler_structure.go
index 0b0846942..9656c8a67 100644
--- a/os/glog/glog_logger_handler_structure.go
+++ b/os/glog/glog_logger_handler_structure.go
@@ -13,7 +13,7 @@ import (
"unicode"
"unicode/utf8"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
type structuredBuffer struct {
diff --git a/os/glog/glog_logger_level.go b/os/glog/glog_logger_level.go
index 5b4ecc884..2f447f77b 100644
--- a/os/glog/glog_logger_level.go
+++ b/os/glog/glog_logger_level.go
@@ -9,8 +9,8 @@ package glog
import (
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Note that the LEVEL_PANI and LEVEL_FATA levels are not used for logging output,
diff --git a/os/glog/glog_logger_rotate.go b/os/glog/glog_logger_rotate.go
index 7e8403616..f232622cf 100644
--- a/os/glog/glog_logger_rotate.go
+++ b/os/glog/glog_logger_rotate.go
@@ -12,14 +12,14 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gmlock"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gmlock"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/text/gregex"
)
const (
diff --git a/os/glog/glog_z_example_test.go b/os/glog/glog_z_example_test.go
index e98a793e9..62b640415 100644
--- a/os/glog/glog_z_example_test.go
+++ b/os/glog/glog_z_example_test.go
@@ -9,7 +9,7 @@ package glog_test
import (
"context"
- "github.com/gogf/gf/v2/frame/g"
+ "github.com/gogf/gf/v3/frame/g"
)
func ExampleContext() {
diff --git a/os/glog/glog_z_unit_config_test.go b/os/glog/glog_z_unit_config_test.go
index bb31284d8..09c3873c9 100644
--- a/os/glog/glog_z_unit_config_test.go
+++ b/os/glog/glog_z_unit_config_test.go
@@ -11,7 +11,7 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_SetConfigWithMap(t *testing.T) {
diff --git a/os/glog/glog_z_unit_internal_test.go b/os/glog/glog_z_unit_internal_test.go
index f712eaf4e..8433f58a8 100644
--- a/os/glog/glog_z_unit_internal_test.go
+++ b/os/glog/glog_z_unit_internal_test.go
@@ -11,8 +11,8 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/os/glog/glog_z_unit_logger_chaining_test.go b/os/glog/glog_z_unit_logger_chaining_test.go
index 54eaa2e4b..a293e2d4d 100644
--- a/os/glog/glog_z_unit_logger_chaining_test.go
+++ b/os/glog/glog_z_unit_logger_chaining_test.go
@@ -12,10 +12,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_To(t *testing.T) {
diff --git a/os/glog/glog_z_unit_logger_handler_test.go b/os/glog/glog_z_unit_logger_handler_test.go
index 86dcf20e6..1fb60a755 100644
--- a/os/glog/glog_z_unit_logger_handler_test.go
+++ b/os/glog/glog_z_unit_logger_handler_test.go
@@ -11,10 +11,10 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
var arrayForHandlerTest1 = garray.NewStrArray()
diff --git a/os/glog/glog_z_unit_logger_rotate_test.go b/os/glog/glog_z_unit_logger_rotate_test.go
index 4cdffe713..78d8d1bdd 100644
--- a/os/glog/glog_z_unit_logger_rotate_test.go
+++ b/os/glog/glog_z_unit_logger_rotate_test.go
@@ -11,12 +11,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
var (
diff --git a/os/glog/glog_z_unit_test.go b/os/glog/glog_z_unit_test.go
index 87a837713..bbce58a17 100644
--- a/os/glog/glog_z_unit_test.go
+++ b/os/glog/glog_z_unit_test.go
@@ -15,12 +15,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func TestCase(t *testing.T) {
diff --git a/os/gmetric/gmetric_attribute.go b/os/gmetric/gmetric_attribute.go
index 85d5159b7..4085b0152 100644
--- a/os/gmetric/gmetric_attribute.go
+++ b/os/gmetric/gmetric_attribute.go
@@ -11,8 +11,8 @@ import (
"fmt"
"os"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gfile"
)
// Attributes is a slice of Attribute.
diff --git a/os/gmetric/gmetric_global_attributes.go b/os/gmetric/gmetric_global_attributes.go
index fa00d7c13..817b97630 100644
--- a/os/gmetric/gmetric_global_attributes.go
+++ b/os/gmetric/gmetric_global_attributes.go
@@ -9,7 +9,7 @@ package gmetric
import (
"sync"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// SetGlobalAttributesOption binds the global attributes to certain instrument.
diff --git a/os/gmetric/gmetric_metric.go b/os/gmetric/gmetric_metric.go
index f4c9043a3..065bff7b7 100644
--- a/os/gmetric/gmetric_metric.go
+++ b/os/gmetric/gmetric_metric.go
@@ -7,10 +7,10 @@
package gmetric
import (
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gregex"
)
// localMetric implements interface Metric.
diff --git a/os/gmetric/gmetric_z_unit_internal_test.go b/os/gmetric/gmetric_z_unit_internal_test.go
index f155b04a2..b991d3dea 100644
--- a/os/gmetric/gmetric_z_unit_internal_test.go
+++ b/os/gmetric/gmetric_z_unit_internal_test.go
@@ -9,7 +9,7 @@ package gmetric
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func truncateGlobalAttributes() {
diff --git a/os/gmetric/gmetric_z_unit_test.go b/os/gmetric/gmetric_z_unit_test.go
index ca225eed6..cbe48f98a 100644
--- a/os/gmetric/gmetric_z_unit_test.go
+++ b/os/gmetric/gmetric_z_unit_test.go
@@ -10,8 +10,8 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/os/gmetric"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gmetric"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Counter(t *testing.T) {
diff --git a/os/gmlock/gmlock_locker.go b/os/gmlock/gmlock_locker.go
index b802d76f8..4dab0b80b 100644
--- a/os/gmlock/gmlock_locker.go
+++ b/os/gmlock/gmlock_locker.go
@@ -9,7 +9,7 @@ package gmlock
import (
"sync"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
// Locker is a memory based locker.
diff --git a/os/gmlock/gmlock_z_bench_test.go b/os/gmlock/gmlock_z_bench_test.go
index b057ed933..73414a34e 100644
--- a/os/gmlock/gmlock_z_bench_test.go
+++ b/os/gmlock/gmlock_z_bench_test.go
@@ -9,7 +9,7 @@ package gmlock_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gmlock"
+ "github.com/gogf/gf/v3/os/gmlock"
)
var (
diff --git a/os/gmlock/gmlock_z_unit_test.go b/os/gmlock/gmlock_z_unit_test.go
index ae7aaf94c..fb35ceb1f 100644
--- a/os/gmlock/gmlock_z_unit_test.go
+++ b/os/gmlock/gmlock_z_unit_test.go
@@ -11,9 +11,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gmlock"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gmlock"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Locker_Lock(t *testing.T) {
diff --git a/os/gmutex/gmutex_z_bench_test.go b/os/gmutex/gmutex_z_bench_test.go
index 9c8380ddf..96efb8f99 100644
--- a/os/gmutex/gmutex_z_bench_test.go
+++ b/os/gmutex/gmutex_z_bench_test.go
@@ -10,7 +10,7 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/os/gmutex"
+ "github.com/gogf/gf/v3/os/gmutex"
)
var (
diff --git a/os/gmutex/gmutex_z_unit_mutex_test.go b/os/gmutex/gmutex_z_unit_mutex_test.go
index fe4845178..355e65062 100644
--- a/os/gmutex/gmutex_z_unit_mutex_test.go
+++ b/os/gmutex/gmutex_z_unit_mutex_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gmutex"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gmutex"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Mutex_Unlock(t *testing.T) {
diff --git a/os/gmutex/gmutex_z_unit_rwmutex_test.go b/os/gmutex/gmutex_z_unit_rwmutex_test.go
index a61715ee6..a3ba1c261 100644
--- a/os/gmutex/gmutex_z_unit_rwmutex_test.go
+++ b/os/gmutex/gmutex_z_unit_rwmutex_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gmutex"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gmutex"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_RWMutex_RUnlock(t *testing.T) {
diff --git a/os/gproc/gproc.go b/os/gproc/gproc.go
index 00403774d..d6b777150 100644
--- a/os/gproc/gproc.go
+++ b/os/gproc/gproc.go
@@ -12,15 +12,15 @@ import (
"runtime"
"time"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
envKeyPPid = "GPROC_PPID"
- tracingInstrumentName = "github.com/gogf/gf/v2/os/gproc.Process"
+ tracingInstrumentName = "github.com/gogf/gf/v3/os/gproc.Process"
)
var (
diff --git a/os/gproc/gproc_comm.go b/os/gproc/gproc_comm.go
index b547d31d7..9973cdeb6 100644
--- a/os/gproc/gproc_comm.go
+++ b/os/gproc/gproc_comm.go
@@ -11,12 +11,12 @@ import (
"fmt"
"sync"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/util/gconv"
)
// MsgRequest is the request structure for process communication.
diff --git a/os/gproc/gproc_comm_receive.go b/os/gproc/gproc_comm_receive.go
index 942c04e69..6eb5947b1 100644
--- a/os/gproc/gproc_comm_receive.go
+++ b/os/gproc/gproc_comm_receive.go
@@ -11,14 +11,14 @@ import (
"fmt"
"net"
- "github.com/gogf/gf/v2/container/gqueue"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/gtcp"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gqueue"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/gtcp"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/os/gproc/gproc_comm_send.go b/os/gproc/gproc_comm_send.go
index a42ec47e3..57f79d0f3 100644
--- a/os/gproc/gproc_comm_send.go
+++ b/os/gproc/gproc_comm_send.go
@@ -9,9 +9,9 @@ package gproc
import (
"io"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/net/gtcp"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/net/gtcp"
)
// Send sends data to specified process of given pid.
diff --git a/os/gproc/gproc_manager.go b/os/gproc/gproc_manager.go
index 3fafb11ba..2f91c4e8f 100644
--- a/os/gproc/gproc_manager.go
+++ b/os/gproc/gproc_manager.go
@@ -9,8 +9,8 @@ package gproc
import (
"os"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Manager is a process manager maintaining multiple processes.
diff --git a/os/gproc/gproc_process.go b/os/gproc/gproc_process.go
index 9d0193e32..0167eaa27 100644
--- a/os/gproc/gproc_process.go
+++ b/os/gproc/gproc_process.go
@@ -18,13 +18,13 @@ import (
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/net/gtrace"
- "github.com/gogf/gf/v2/os/genv"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/net/gtrace"
+ "github.com/gogf/gf/v3/os/genv"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Process is the struct for a single process.
diff --git a/os/gproc/gproc_process_newprocess_windows.go b/os/gproc/gproc_process_newprocess_windows.go
index 704ec6b0b..27fba97a1 100644
--- a/os/gproc/gproc_process_newprocess_windows.go
+++ b/os/gproc/gproc_process_newprocess_windows.go
@@ -11,7 +11,7 @@ package gproc
import (
"syscall"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Set the underlying parameters directly on the Windows platform
diff --git a/os/gproc/gproc_shell.go b/os/gproc/gproc_shell.go
index 538a73399..60721d1e7 100644
--- a/os/gproc/gproc_shell.go
+++ b/os/gproc/gproc_shell.go
@@ -16,7 +16,7 @@ import (
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/propagation"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/os/gfile"
)
// Shell executes command `cmd` synchronously with given input pipe `in` and output pipe `out`.
diff --git a/os/gproc/gproc_signal.go b/os/gproc/gproc_signal.go
index 30efc61f3..87c16b4ab 100644
--- a/os/gproc/gproc_signal.go
+++ b/os/gproc/gproc_signal.go
@@ -13,8 +13,8 @@ import (
"sync"
"syscall"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/gutil"
)
// SigHandler defines a function type for signal handling.
diff --git a/os/gproc/gproc_z_signal_test.go b/os/gproc/gproc_z_signal_test.go
index ff5dc09a0..86a22cbd0 100644
--- a/os/gproc/gproc_z_signal_test.go
+++ b/os/gproc/gproc_z_signal_test.go
@@ -12,7 +12,7 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Signal(t *testing.T) {
diff --git a/os/gproc/gproc_z_unit_process_windows_test.go b/os/gproc/gproc_z_unit_process_windows_test.go
index e1c28b2d2..4af961976 100644
--- a/os/gproc/gproc_z_unit_process_windows_test.go
+++ b/os/gproc/gproc_z_unit_process_windows_test.go
@@ -15,10 +15,10 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ProcessRun(t *testing.T) {
diff --git a/os/gproc/gproc_z_unit_shell_windows_test.go b/os/gproc/gproc_z_unit_shell_windows_test.go
index 9c898528e..e8feb2bdc 100644
--- a/os/gproc/gproc_z_unit_shell_windows_test.go
+++ b/os/gproc/gproc_z_unit_shell_windows_test.go
@@ -15,10 +15,10 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_ShellExec_GoBuild_Windows(t *testing.T) {
diff --git a/os/gproc/gproc_z_unit_test.go b/os/gproc/gproc_z_unit_test.go
index 0c6e31c7a..d8571c290 100644
--- a/os/gproc/gproc_z_unit_test.go
+++ b/os/gproc/gproc_z_unit_test.go
@@ -13,11 +13,11 @@ import (
"path/filepath"
"testing"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gproc"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gproc"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/os/gres/gres_file.go b/os/gres/gres_file.go
index a63269fcf..0e80d21fd 100644
--- a/os/gres/gres_file.go
+++ b/os/gres/gres_file.go
@@ -12,7 +12,7 @@ import (
"io"
"os"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// File is a file in a zip file.
diff --git a/os/gres/gres_func.go b/os/gres/gres_func.go
index f26c2fb5b..fdb4c5891 100644
--- a/os/gres/gres_func.go
+++ b/os/gres/gres_func.go
@@ -12,18 +12,18 @@ import (
"encoding/hex"
"fmt"
- "github.com/gogf/gf/v2/encoding/gbase64"
- "github.com/gogf/gf/v2/encoding/gcompress"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/encoding/gbase64"
+ "github.com/gogf/gf/v3/encoding/gcompress"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
)
const (
packedGoSourceTemplate = `
package %s
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("%s"); err != nil {
diff --git a/os/gres/gres_func_zip.go b/os/gres/gres_func_zip.go
index bd2f1f65c..464bc7741 100644
--- a/os/gres/gres_func_zip.go
+++ b/os/gres/gres_func_zip.go
@@ -13,10 +13,10 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/fileinfo"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/fileinfo"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gregex"
)
// ZipPathWriter compresses `paths` to `writer` using zip compressing algorithm.
diff --git a/os/gres/gres_http_file.go b/os/gres/gres_http_file.go
index e6d10124c..70ee6680d 100644
--- a/os/gres/gres_http_file.go
+++ b/os/gres/gres_http_file.go
@@ -10,7 +10,7 @@ import (
"bytes"
"os"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Close implements interface of http.File.
diff --git a/os/gres/gres_instance.go b/os/gres/gres_instance.go
index e04dc4311..a3917aee9 100644
--- a/os/gres/gres_instance.go
+++ b/os/gres/gres_instance.go
@@ -6,7 +6,7 @@
package gres
-import "github.com/gogf/gf/v2/container/gmap"
+import "github.com/gogf/gf/v3/container/gmap"
const (
// DefaultName default group name for instance usage.
diff --git a/os/gres/gres_resource.go b/os/gres/gres_resource.go
index 783758fdb..d255e7c9e 100644
--- a/os/gres/gres_resource.go
+++ b/os/gres/gres_resource.go
@@ -13,11 +13,11 @@ import (
"path/filepath"
"strings"
- "github.com/gogf/gf/v2/container/gtree"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gtree"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Resource is the resource manager for the file system.
diff --git a/os/gres/gres_z_unit_test.go b/os/gres/gres_z_unit_test.go
index 4b0653730..de1f516a2 100644
--- a/os/gres/gres_z_unit_test.go
+++ b/os/gres/gres_z_unit_test.go
@@ -10,13 +10,13 @@ import (
"strings"
"testing"
- _ "github.com/gogf/gf/v2/os/gres/testdata/data"
+ _ "github.com/gogf/gf/v3/os/gres/testdata/data"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_PackFolderToGoFile(t *testing.T) {
diff --git a/os/gres/testdata/data/data.go b/os/gres/testdata/data/data.go
index 0a154f6af..a2be46487 100755
--- a/os/gres/testdata/data/data.go
+++ b/os/gres/testdata/data/data.go
@@ -1,6 +1,6 @@
package data
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/os/gres/testdata/example/boot/data.go b/os/gres/testdata/example/boot/data.go
index c1f8e4491..5cdb925dc 100644
--- a/os/gres/testdata/example/boot/data.go
+++ b/os/gres/testdata/example/boot/data.go
@@ -1,6 +1,6 @@
package boot
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("1f8b08000000000002ff0af066661161e060606048cea809604002420c9c0cc9f9796999e9fa104aaf243f37273484958191cbbb3e8e2bba38b5a82cb528964b414141c13125a528b5b818c4b45550b2b2b0b0b050024b04831505e5e79780240a4a9372329395b8b8a2cb3253cb619a5d52d3124b734adc327352418a32f352522bf44a0a7294a0b23999b99925a945c520b315a29554aa957414946a9562b9b8b8b802bcd939b81c64d7b63330308030c23fad68fe6183fb07ec072feffa389066642508cdd6e9a89a05193819208ed787382fa3041a16973cebe33c527372f21541a6859dd19acb06b68c905320a611e1940c2cf152929a5b90935892aa0f0f2bb041a2de50b728a854ebe525e6a6d6821d75255b6e263f0303033f5e477120998bc7598c4c22cc8804831cf42087c1c09246108927f9201b842d7860c1cee070016e1092ab109a4131851cea8228aee06564c0136fc43b221a6e0e564780e2083994518362062303be18c3e70a0e14577c403208c91dac6c1007b3314c666460d06702f100010000ffffc7c852f1d8030000"); err != nil {
diff --git a/os/gres/testdata/testdata.go b/os/gres/testdata/testdata.go
index c391ce058..40b34727c 100644
--- a/os/gres/testdata/testdata.go
+++ b/os/gres/testdata/testdata.go
@@ -1,6 +1,6 @@
package testdata
-import "github.com/gogf/gf/v2/os/gres"
+import "github.com/gogf/gf/v3/os/gres"
func init() {
if err := gres.Add("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"); err != nil {
diff --git a/os/grpool/grpool.go b/os/grpool/grpool.go
index 1abf99195..877a5878d 100644
--- a/os/grpool/grpool.go
+++ b/os/grpool/grpool.go
@@ -11,10 +11,10 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/glist"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/container/glist"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/util/grand"
)
// Func is the pool function which contains context parameter.
diff --git a/os/grpool/grpool_pool.go b/os/grpool/grpool_pool.go
index a2fc9b14b..43680ea66 100644
--- a/os/grpool/grpool_pool.go
+++ b/os/grpool/grpool_pool.go
@@ -9,8 +9,8 @@ package grpool
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Add pushes a new job to the pool.
diff --git a/os/grpool/grpool_supervisor.go b/os/grpool/grpool_supervisor.go
index f4a7a3b6c..c0fe5efd8 100644
--- a/os/grpool/grpool_supervisor.go
+++ b/os/grpool/grpool_supervisor.go
@@ -9,7 +9,7 @@ package grpool
import (
"context"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// supervisor checks the job list and fork new worker goroutine to handle the job
diff --git a/os/grpool/grpool_z_bench_test.go b/os/grpool/grpool_z_bench_test.go
index 411afb14f..74ddbc1cd 100644
--- a/os/grpool/grpool_z_bench_test.go
+++ b/os/grpool/grpool_z_bench_test.go
@@ -12,7 +12,7 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/os/grpool"
+ "github.com/gogf/gf/v3/os/grpool"
)
var (
diff --git a/os/grpool/grpool_z_unit_test.go b/os/grpool/grpool_z_unit_test.go
index eb73c5fa4..876c50c03 100644
--- a/os/grpool/grpool_z_unit_test.go
+++ b/os/grpool/grpool_z_unit_test.go
@@ -12,9 +12,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/grpool"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/grpool"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Basic(t *testing.T) {
diff --git a/os/gsession/gsession.go b/os/gsession/gsession.go
index e6ed66e63..8a2cdc9dd 100644
--- a/os/gsession/gsession.go
+++ b/os/gsession/gsession.go
@@ -8,9 +8,9 @@
package gsession
import (
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/guid"
)
var (
diff --git a/os/gsession/gsession_session.go b/os/gsession/gsession_session.go
index 1844b51de..5c9128eda 100644
--- a/os/gsession/gsession_session.go
+++ b/os/gsession/gsession_session.go
@@ -10,11 +10,11 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// Session struct for storing single session data, which is bound to a single request.
diff --git a/os/gsession/gsession_storage.go b/os/gsession/gsession_storage.go
index da5d4e791..f2eebf684 100644
--- a/os/gsession/gsession_storage.go
+++ b/os/gsession/gsession_storage.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
// Storage is the interface definition for session storage.
diff --git a/os/gsession/gsession_storage_base.go b/os/gsession/gsession_storage_base.go
index 8436f5411..3c4940916 100644
--- a/os/gsession/gsession_storage_base.go
+++ b/os/gsession/gsession_storage_base.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
+ "github.com/gogf/gf/v3/container/gmap"
)
// StorageBase is a base implement for Session Storage.
diff --git a/os/gsession/gsession_storage_file.go b/os/gsession/gsession_storage_file.go
index 27c83dcd6..d2ecf3bb6 100644
--- a/os/gsession/gsession_storage_file.go
+++ b/os/gsession/gsession_storage_file.go
@@ -12,17 +12,17 @@ import (
"os"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/crypto/gaes"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/crypto/gaes"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// StorageFile implements the Session Storage interface with file system.
diff --git a/os/gsession/gsession_storage_memory.go b/os/gsession/gsession_storage_memory.go
index 96f786ece..f36f81312 100644
--- a/os/gsession/gsession_storage_memory.go
+++ b/os/gsession/gsession_storage_memory.go
@@ -10,9 +10,9 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/os/gcache"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/os/gcache"
)
// StorageMemory implements the Session Storage interface with memory.
diff --git a/os/gsession/gsession_storage_redis.go b/os/gsession/gsession_storage_redis.go
index 34e895e4c..7abcc94f3 100644
--- a/os/gsession/gsession_storage_redis.go
+++ b/os/gsession/gsession_storage_redis.go
@@ -10,11 +10,11 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtimer"
)
// StorageRedis implements the Session Storage interface with redis.
diff --git a/os/gsession/gsession_storage_redis_hashtable.go b/os/gsession/gsession_storage_redis_hashtable.go
index 71a9ab07a..796d3744f 100644
--- a/os/gsession/gsession_storage_redis_hashtable.go
+++ b/os/gsession/gsession_storage_redis_hashtable.go
@@ -10,9 +10,9 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/database/gredis"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/database/gredis"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// StorageRedisHashTable implements the Session Storage interface with redis hash table.
diff --git a/os/gsession/gsession_z_example_test.go b/os/gsession/gsession_z_example_test.go
index 869c778b8..d1947c95f 100644
--- a/os/gsession/gsession_z_example_test.go
+++ b/os/gsession/gsession_z_example_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gsession"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gsession"
)
func ExampleNew() {
diff --git a/os/gsession/gsession_z_unit_storage_file_test.go b/os/gsession/gsession_z_unit_storage_file_test.go
index 6ef7bad75..f0f017b8a 100644
--- a/os/gsession/gsession_z_unit_storage_file_test.go
+++ b/os/gsession/gsession_z_unit_storage_file_test.go
@@ -11,9 +11,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_StorageFile(t *testing.T) {
diff --git a/os/gsession/gsession_z_unit_storage_memory_test.go b/os/gsession/gsession_z_unit_storage_memory_test.go
index 02d55830e..7d7822d29 100644
--- a/os/gsession/gsession_z_unit_storage_memory_test.go
+++ b/os/gsession/gsession_z_unit_storage_memory_test.go
@@ -11,9 +11,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gsession"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gsession"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_StorageMemory(t *testing.T) {
diff --git a/os/gsession/gsession_z_unit_test.go b/os/gsession/gsession_z_unit_test.go
index 613c00dc4..ee0bd7de7 100644
--- a/os/gsession/gsession_z_unit_test.go
+++ b/os/gsession/gsession_z_unit_test.go
@@ -11,7 +11,7 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
var ctx = context.TODO()
diff --git a/os/gspath/gspath.go b/os/gspath/gspath.go
index 12fdbe70c..5a8621e74 100644
--- a/os/gspath/gspath.go
+++ b/os/gspath/gspath.go
@@ -17,13 +17,13 @@ import (
"sort"
"strings"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/text/gstr"
)
// SPath manages the path searching feature.
diff --git a/os/gspath/gspath_cache.go b/os/gspath/gspath_cache.go
index c442b005e..832d6757f 100644
--- a/os/gspath/gspath_cache.go
+++ b/os/gspath/gspath_cache.go
@@ -13,9 +13,9 @@ import (
"runtime"
"strings"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/text/gstr"
)
// updateCacheByPath adds all files under `path` recursively.
diff --git a/os/gspath/gspath_z_unit_test.go b/os/gspath/gspath_z_unit_test.go
index 0b6479365..58da955f9 100644
--- a/os/gspath/gspath_z_unit_test.go
+++ b/os/gspath/gspath_z_unit_test.go
@@ -9,9 +9,9 @@ package gspath_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gspath"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gspath"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestSPath_Api(t *testing.T) {
diff --git a/os/gstructs/gstructs.go b/os/gstructs/gstructs.go
index b0ac1550c..a55d0d86d 100644
--- a/os/gstructs/gstructs.go
+++ b/os/gstructs/gstructs.go
@@ -10,7 +10,7 @@ package gstructs
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Type wraps reflect.Type for additional features.
diff --git a/os/gstructs/gstructs_field.go b/os/gstructs/gstructs_field.go
index 5fc234242..6753b1e9b 100644
--- a/os/gstructs/gstructs_field.go
+++ b/os/gstructs/gstructs_field.go
@@ -9,9 +9,9 @@ package gstructs
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gtag"
)
// Tag returns the value associated with key in the tag string. If there is no
diff --git a/os/gstructs/gstructs_field_tag.go b/os/gstructs/gstructs_field_tag.go
index fa7211515..9ab697fe4 100644
--- a/os/gstructs/gstructs_field_tag.go
+++ b/os/gstructs/gstructs_field_tag.go
@@ -9,7 +9,7 @@ package gstructs
import (
"strings"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/util/gtag"
)
// TagJsonName returns the `json` tag name string of the field.
diff --git a/os/gstructs/gstructs_tag.go b/os/gstructs/gstructs_tag.go
index 701ac7ec3..e5f77a481 100644
--- a/os/gstructs/gstructs_tag.go
+++ b/os/gstructs/gstructs_tag.go
@@ -10,9 +10,9 @@ import (
"reflect"
"strconv"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gtag"
)
// ParseTag parses tag string into map.
diff --git a/os/gstructs/gstructs_z_bench_test.go b/os/gstructs/gstructs_z_bench_test.go
index 6bce57fda..e94e15d29 100644
--- a/os/gstructs/gstructs_z_bench_test.go
+++ b/os/gstructs/gstructs_z_bench_test.go
@@ -10,7 +10,7 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/os/gstructs"
+ "github.com/gogf/gf/v3/os/gstructs"
)
type User struct {
diff --git a/os/gstructs/gstructs_z_unit_test.go b/os/gstructs/gstructs_z_unit_test.go
index 15b1befd5..f7f581d8e 100644
--- a/os/gstructs/gstructs_z_unit_test.go
+++ b/os/gstructs/gstructs_z_unit_test.go
@@ -9,9 +9,9 @@ package gstructs_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Basic(t *testing.T) {
@@ -273,7 +273,7 @@ func Test_StructType(t *testing.T) {
}
r, err := gstructs.StructType(new(A))
t.AssertNil(err)
- t.Assert(r.Signature(), `github.com/gogf/gf/v2/os/gstructs_test/gstructs_test.A`)
+ t.Assert(r.Signature(), `github.com/gogf/gf/v3/os/gstructs_test/gstructs_test.A`)
})
gtest.C(t, func(t *gtest.T) {
type B struct {
@@ -284,7 +284,7 @@ func Test_StructType(t *testing.T) {
}
r, err := gstructs.StructType(new(A).B)
t.AssertNil(err)
- t.Assert(r.Signature(), `github.com/gogf/gf/v2/os/gstructs_test/gstructs_test.B`)
+ t.Assert(r.Signature(), `github.com/gogf/gf/v3/os/gstructs_test/gstructs_test.B`)
})
gtest.C(t, func(t *gtest.T) {
type B struct {
@@ -321,7 +321,7 @@ func Test_StructTypeBySlice(t *testing.T) {
}
r, err := gstructs.StructType(new(A).Array)
t.AssertNil(err)
- t.Assert(r.Signature(), `github.com/gogf/gf/v2/os/gstructs_test/gstructs_test.B`)
+ t.Assert(r.Signature(), `github.com/gogf/gf/v3/os/gstructs_test/gstructs_test.B`)
})
gtest.C(t, func(t *gtest.T) {
type B struct {
@@ -332,7 +332,7 @@ func Test_StructTypeBySlice(t *testing.T) {
}
r, err := gstructs.StructType(new(A).Array)
t.AssertNil(err)
- t.Assert(r.Signature(), `github.com/gogf/gf/v2/os/gstructs_test/gstructs_test.B`)
+ t.Assert(r.Signature(), `github.com/gogf/gf/v3/os/gstructs_test/gstructs_test.B`)
})
gtest.C(t, func(t *gtest.T) {
type B struct {
@@ -343,7 +343,7 @@ func Test_StructTypeBySlice(t *testing.T) {
}
r, err := gstructs.StructType(new(A).Array)
t.AssertNil(err)
- t.Assert(r.Signature(), `github.com/gogf/gf/v2/os/gstructs_test/gstructs_test.B`)
+ t.Assert(r.Signature(), `github.com/gogf/gf/v3/os/gstructs_test/gstructs_test.B`)
})
}
diff --git a/os/gtime/gtime.go b/os/gtime/gtime.go
index f09ed0eff..02da045cb 100644
--- a/os/gtime/gtime.go
+++ b/os/gtime/gtime.go
@@ -17,11 +17,11 @@ import (
"strings"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/text/gregex"
)
const (
diff --git a/os/gtime/gtime_format.go b/os/gtime/gtime_format.go
index 71b27c885..ffe549ba7 100644
--- a/os/gtime/gtime_format.go
+++ b/os/gtime/gtime_format.go
@@ -12,7 +12,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
var (
diff --git a/os/gtime/gtime_time.go b/os/gtime/gtime_time.go
index 388c4248f..637fe66e1 100644
--- a/os/gtime/gtime_time.go
+++ b/os/gtime/gtime_time.go
@@ -11,8 +11,8 @@ import (
"strconv"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Time is a wrapper for time.Time for additional features.
diff --git a/os/gtime/gtime_time_zone.go b/os/gtime/gtime_time_zone.go
index ce6a8c036..66a0f9b8e 100644
--- a/os/gtime/gtime_time_zone.go
+++ b/os/gtime/gtime_time_zone.go
@@ -12,8 +12,8 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
var (
diff --git a/os/gtime/gtime_z_bench_test.go b/os/gtime/gtime_z_bench_test.go
index 1446da1ed..2e154df9b 100644
--- a/os/gtime/gtime_z_bench_test.go
+++ b/os/gtime/gtime_z_bench_test.go
@@ -10,7 +10,7 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
func Benchmark_Timestamp(b *testing.B) {
diff --git a/os/gtime/gtime_z_example_basic_test.go b/os/gtime/gtime_z_example_basic_test.go
index 60ebf4464..0ddb6a5a9 100644
--- a/os/gtime/gtime_z_example_basic_test.go
+++ b/os/gtime/gtime_z_example_basic_test.go
@@ -9,7 +9,7 @@ package gtime_test
import (
"fmt"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// New creates and returns a Time object with given parameter.
diff --git a/os/gtime/gtime_z_example_time_test.go b/os/gtime/gtime_z_example_time_test.go
index 439b8ff35..2cfdd742b 100644
--- a/os/gtime/gtime_z_example_time_test.go
+++ b/os/gtime/gtime_z_example_time_test.go
@@ -12,7 +12,7 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
func ExampleNew_Basic() {
diff --git a/os/gtime/gtime_z_unit_feature_json_test.go b/os/gtime/gtime_z_unit_feature_json_test.go
index ccdf85a78..56eee9bc3 100644
--- a/os/gtime/gtime_z_unit_feature_json_test.go
+++ b/os/gtime/gtime_z_unit_feature_json_test.go
@@ -9,10 +9,10 @@ package gtime_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Json_Pointer(t *testing.T) {
diff --git a/os/gtime/gtime_z_unit_feature_sql_test.go b/os/gtime/gtime_z_unit_feature_sql_test.go
index 015425bb0..4c8fbfd12 100644
--- a/os/gtime/gtime_z_unit_feature_sql_test.go
+++ b/os/gtime/gtime_z_unit_feature_sql_test.go
@@ -3,8 +3,8 @@ package gtime_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestTime_Scan(t1 *testing.T) {
diff --git a/os/gtime/gtime_z_unit_format_test.go b/os/gtime/gtime_z_unit_format_test.go
index df89b69f5..df840c6c5 100644
--- a/os/gtime/gtime_z_unit_format_test.go
+++ b/os/gtime/gtime_z_unit_format_test.go
@@ -9,8 +9,8 @@ package gtime_test
import (
"testing"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Format(t *testing.T) {
diff --git a/os/gtime/gtime_z_unit_issue_test.go b/os/gtime/gtime_z_unit_issue_test.go
index 6650c5aa8..72c98ab13 100644
--- a/os/gtime/gtime_z_unit_issue_test.go
+++ b/os/gtime/gtime_z_unit_issue_test.go
@@ -10,8 +10,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
// https://github.com/gogf/gf/issues/1681
diff --git a/os/gtime/gtime_z_unit_test.go b/os/gtime/gtime_z_unit_test.go
index eae6eac07..16f199e57 100644
--- a/os/gtime/gtime_z_unit_test.go
+++ b/os/gtime/gtime_z_unit_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_TimestampStr(t *testing.T) {
diff --git a/os/gtime/gtime_z_unit_time_test.go b/os/gtime/gtime_z_unit_time_test.go
index 9cd64583c..d62f0a0da 100644
--- a/os/gtime/gtime_z_unit_time_test.go
+++ b/os/gtime/gtime_z_unit_time_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_New(t *testing.T) {
diff --git a/os/gtimer/gtimer.go b/os/gtimer/gtimer.go
index 9c335ecb0..13ad8e821 100644
--- a/os/gtimer/gtimer.go
+++ b/os/gtimer/gtimer.go
@@ -24,10 +24,10 @@ import (
"sync"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/command"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/command"
)
// Timer is the timer manager, which uses ticks to calculate the timing interval.
diff --git a/os/gtimer/gtimer_entry.go b/os/gtimer/gtimer_entry.go
index 791b4401c..67573b023 100644
--- a/os/gtimer/gtimer_entry.go
+++ b/os/gtimer/gtimer_entry.go
@@ -9,9 +9,9 @@ package gtimer
import (
"context"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Entry is the timing job.
diff --git a/os/gtimer/gtimer_queue.go b/os/gtimer/gtimer_queue.go
index 92b575231..600560ba2 100644
--- a/os/gtimer/gtimer_queue.go
+++ b/os/gtimer/gtimer_queue.go
@@ -11,7 +11,7 @@ import (
"math"
"sync"
- "github.com/gogf/gf/v2/container/gtype"
+ "github.com/gogf/gf/v3/container/gtype"
)
// priorityQueue is an abstract data type similar to a regular queue or stack data structure in which
diff --git a/os/gtimer/gtimer_timer.go b/os/gtimer/gtimer_timer.go
index 2792cc442..5cf9213f1 100644
--- a/os/gtimer/gtimer_timer.go
+++ b/os/gtimer/gtimer_timer.go
@@ -10,7 +10,7 @@ import (
"context"
"time"
- "github.com/gogf/gf/v2/container/gtype"
+ "github.com/gogf/gf/v3/container/gtype"
)
// New creates and returns a Timer.
diff --git a/os/gtimer/gtimer_z_example_test.go b/os/gtimer/gtimer_z_example_test.go
index abd256ce7..e5f060e3c 100644
--- a/os/gtimer/gtimer_z_example_test.go
+++ b/os/gtimer/gtimer_z_example_test.go
@@ -11,7 +11,7 @@ import (
"fmt"
"time"
- "github.com/gogf/gf/v2/os/gtimer"
+ "github.com/gogf/gf/v3/os/gtimer"
)
func ExampleAdd() {
diff --git a/os/gtimer/gtimer_z_unit_entry_test.go b/os/gtimer/gtimer_z_unit_entry_test.go
index 08a1a794b..23d77ec88 100644
--- a/os/gtimer/gtimer_z_unit_entry_test.go
+++ b/os/gtimer/gtimer_z_unit_entry_test.go
@@ -13,9 +13,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestJob_Start_Stop_Close(t *testing.T) {
diff --git a/os/gtimer/gtimer_z_unit_internal_test.go b/os/gtimer/gtimer_z_unit_internal_test.go
index fda89b155..b2a9b20c9 100644
--- a/os/gtimer/gtimer_z_unit_internal_test.go
+++ b/os/gtimer/gtimer_z_unit_internal_test.go
@@ -11,8 +11,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestTimer_Proceed(t *testing.T) {
diff --git a/os/gtimer/gtimer_z_unit_test.go b/os/gtimer/gtimer_z_unit_test.go
index a951e60a9..aeb6070c3 100644
--- a/os/gtimer/gtimer_z_unit_test.go
+++ b/os/gtimer/gtimer_z_unit_test.go
@@ -13,9 +13,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/os/gtimer/gtimer_z_unit_timer_test.go b/os/gtimer/gtimer_z_unit_timer_test.go
index 0504c2b8c..831c3d261 100644
--- a/os/gtimer/gtimer_z_unit_timer_test.go
+++ b/os/gtimer/gtimer_z_unit_timer_test.go
@@ -13,9 +13,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/os/gtimer"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/os/gtimer"
+ "github.com/gogf/gf/v3/test/gtest"
)
func TestTimer_Add_Close(t *testing.T) {
diff --git a/os/gview/gview.go b/os/gview/gview.go
index acd395b48..7152ac09c 100644
--- a/os/gview/gview.go
+++ b/os/gview/gview.go
@@ -13,12 +13,12 @@ package gview
import (
"context"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gcmd"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gcmd"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
)
// View object for template engine.
diff --git a/os/gview/gview_buildin.go b/os/gview/gview_buildin.go
index 0ddb63804..f4d110770 100644
--- a/os/gview/gview_buildin.go
+++ b/os/gview/gview_buildin.go
@@ -13,14 +13,14 @@ import (
htmltpl "html/template"
"strings"
- "github.com/gogf/gf/v2/encoding/ghtml"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/encoding/gurl"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmode"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/encoding/ghtml"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/encoding/gurl"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmode"
+ "github.com/gogf/gf/v3/util/gutil"
)
// buildInFuncDump implements build-in template function: dump
diff --git a/os/gview/gview_config.go b/os/gview/gview_config.go
index 58d6108a2..d16ae2690 100644
--- a/os/gview/gview_config.go
+++ b/os/gview/gview_config.go
@@ -9,16 +9,16 @@ package gview
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gspath"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gspath"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// Config is the configuration object for template engine.
diff --git a/os/gview/gview_error.go b/os/gview/gview_error.go
index b3178167c..c876aee97 100644
--- a/os/gview/gview_error.go
+++ b/os/gview/gview_error.go
@@ -7,7 +7,7 @@
package gview
import (
- "github.com/gogf/gf/v2/os/gcmd"
+ "github.com/gogf/gf/v3/os/gcmd"
)
const (
diff --git a/os/gview/gview_i18n.go b/os/gview/gview_i18n.go
index ca868c09f..772df526a 100644
--- a/os/gview/gview_i18n.go
+++ b/os/gview/gview_i18n.go
@@ -9,8 +9,8 @@ package gview
import (
"context"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/os/gview/gview_instance.go b/os/gview/gview_instance.go
index 42bf0fe1a..c5b1e66e3 100644
--- a/os/gview/gview_instance.go
+++ b/os/gview/gview_instance.go
@@ -6,7 +6,7 @@
package gview
-import "github.com/gogf/gf/v2/container/gmap"
+import "github.com/gogf/gf/v3/container/gmap"
const (
// DefaultName is the default group name for instance usage.
diff --git a/os/gview/gview_parse.go b/os/gview/gview_parse.go
index 364a065ad..7f9d24cc4 100644
--- a/os/gview/gview_parse.go
+++ b/os/gview/gview_parse.go
@@ -15,20 +15,20 @@ import (
"strings"
texttpl "text/template"
- "github.com/gogf/gf/v2"
- "github.com/gogf/gf/v2/container/gmap"
- "github.com/gogf/gf/v2/encoding/ghash"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gfsnotify"
- "github.com/gogf/gf/v2/os/glog"
- "github.com/gogf/gf/v2/os/gmlock"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gspath"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3"
+ "github.com/gogf/gf/v3/container/gmap"
+ "github.com/gogf/gf/v3/encoding/ghash"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gfsnotify"
+ "github.com/gogf/gf/v3/os/glog"
+ "github.com/gogf/gf/v3/os/gmlock"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gspath"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gutil"
)
const (
diff --git a/os/gview/gview_z_unit_config_test.go b/os/gview/gview_z_unit_config_test.go
index 98369c6cd..0da635e8a 100644
--- a/os/gview/gview_z_unit_config_test.go
+++ b/os/gview/gview_z_unit_config_test.go
@@ -10,11 +10,11 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Config(t *testing.T) {
diff --git a/os/gview/gview_z_unit_feature_encode_test.go b/os/gview/gview_z_unit_feature_encode_test.go
index 786f98a4b..60072ceda 100644
--- a/os/gview/gview_z_unit_feature_encode_test.go
+++ b/os/gview/gview_z_unit_feature_encode_test.go
@@ -10,10 +10,10 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Encode_Parse(t *testing.T) {
diff --git a/os/gview/gview_z_unit_i18n_test.go b/os/gview/gview_z_unit_i18n_test.go
index bf2e7d219..1031c298a 100644
--- a/os/gview/gview_z_unit_i18n_test.go
+++ b/os/gview/gview_z_unit_i18n_test.go
@@ -10,13 +10,13 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_I18n(t *testing.T) {
diff --git a/os/gview/gview_z_unit_test.go b/os/gview/gview_z_unit_test.go
index bdff3456f..aabd70590 100644
--- a/os/gview/gview_z_unit_test.go
+++ b/os/gview/gview_z_unit_test.go
@@ -14,18 +14,18 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/encoding/ghtml"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gfile"
- "github.com/gogf/gf/v2/os/gres"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/os/gview"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmode"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/encoding/ghtml"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gfile"
+ "github.com/gogf/gf/v3/os/gres"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/os/gview"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmode"
+ "github.com/gogf/gf/v3/util/guid"
)
func init() {
diff --git a/test/gtest/gtest_util.go b/test/gtest/gtest_util.go
index c1609474d..972e038a1 100644
--- a/test/gtest/gtest_util.go
+++ b/test/gtest/gtest_util.go
@@ -13,10 +13,10 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/test/gtest/gtest_z_unit_test.go b/test/gtest/gtest_z_unit_test.go
index 7d576fd79..3575ad52a 100644
--- a/test/gtest/gtest_z_unit_test.go
+++ b/test/gtest/gtest_z_unit_test.go
@@ -12,7 +12,7 @@ import (
"strconv"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
var (
diff --git a/text/gregex/gregex_cache.go b/text/gregex/gregex_cache.go
index 88c6804c3..d593463a8 100644
--- a/text/gregex/gregex_cache.go
+++ b/text/gregex/gregex_cache.go
@@ -10,7 +10,7 @@ import (
"regexp"
"sync"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
var (
diff --git a/text/gregex/gregex_z_bench_test.go b/text/gregex/gregex_z_bench_test.go
index 89f2c48e5..29cf2ee59 100644
--- a/text/gregex/gregex_z_bench_test.go
+++ b/text/gregex/gregex_z_bench_test.go
@@ -12,7 +12,7 @@ import (
"regexp"
"testing"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
var pattern = `(\w+).+\-\-\s*(.+)`
diff --git a/text/gregex/gregex_z_example_test.go b/text/gregex/gregex_z_example_test.go
index b137094fc..3f22796ca 100644
--- a/text/gregex/gregex_z_example_test.go
+++ b/text/gregex/gregex_z_example_test.go
@@ -10,8 +10,8 @@ import (
"fmt"
"strings"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gregex"
)
func ExampleIsMatch() {
diff --git a/text/gregex/gregex_z_unit_test.go b/text/gregex/gregex_z_unit_test.go
index 8de86509b..189463b67 100644
--- a/text/gregex/gregex_z_unit_test.go
+++ b/text/gregex/gregex_z_unit_test.go
@@ -12,8 +12,8 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gregex"
)
var (
diff --git a/text/gstr/gstr_convert.go b/text/gstr/gstr_convert.go
index 4bf221b31..fad5a6f22 100644
--- a/text/gstr/gstr_convert.go
+++ b/text/gstr/gstr_convert.go
@@ -15,7 +15,7 @@ import (
"strings"
"unicode"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/util/grand"
)
var (
diff --git a/text/gstr/gstr_is.go b/text/gstr/gstr_is.go
index 2f52e9495..71e618f78 100644
--- a/text/gstr/gstr_is.go
+++ b/text/gstr/gstr_is.go
@@ -6,7 +6,7 @@
package gstr
-import "github.com/gogf/gf/v2/internal/utils"
+import "github.com/gogf/gf/v3/internal/utils"
// IsNumeric tests whether the given string s is numeric.
func IsNumeric(s string) bool {
diff --git a/text/gstr/gstr_parse.go b/text/gstr/gstr_parse.go
index 52878bc70..149b6b591 100644
--- a/text/gstr/gstr_parse.go
+++ b/text/gstr/gstr_parse.go
@@ -10,8 +10,8 @@ import (
"net/url"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Parse parses the string into map[string]interface{}.
diff --git a/text/gstr/gstr_replace.go b/text/gstr/gstr_replace.go
index 94b650813..d57b3a20d 100644
--- a/text/gstr/gstr_replace.go
+++ b/text/gstr/gstr_replace.go
@@ -9,7 +9,7 @@ package gstr
import (
"strings"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// Replace returns a copy of the string `origin`
diff --git a/text/gstr/gstr_slashes.go b/text/gstr/gstr_slashes.go
index 5095be165..31aeacbe9 100644
--- a/text/gstr/gstr_slashes.go
+++ b/text/gstr/gstr_slashes.go
@@ -9,7 +9,7 @@ package gstr
import (
"bytes"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// AddSlashes quotes with slashes `\` for chars: '"\.
diff --git a/text/gstr/gstr_split_join.go b/text/gstr/gstr_split_join.go
index 8858cacf5..5ff3fd687 100644
--- a/text/gstr/gstr_split_join.go
+++ b/text/gstr/gstr_split_join.go
@@ -9,8 +9,8 @@ package gstr
import (
"strings"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Split splits string `str` by a string `delimiter`, to an array.
diff --git a/text/gstr/gstr_trim.go b/text/gstr/gstr_trim.go
index f7701505e..3738b4ed3 100644
--- a/text/gstr/gstr_trim.go
+++ b/text/gstr/gstr_trim.go
@@ -9,7 +9,7 @@ package gstr
import (
"strings"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// Trim strips whitespace (or other characters) from the beginning and end of a string.
diff --git a/text/gstr/gstr_upper_lower.go b/text/gstr/gstr_upper_lower.go
index 69ad78c11..6823b5e70 100644
--- a/text/gstr/gstr_upper_lower.go
+++ b/text/gstr/gstr_upper_lower.go
@@ -9,7 +9,7 @@ package gstr
import (
"strings"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// ToLower returns a copy of the string s with all Unicode letters mapped to their lower case.
diff --git a/text/gstr/gstr_version.go b/text/gstr/gstr_version.go
index f931b2c9d..edc9ce50a 100644
--- a/text/gstr/gstr_version.go
+++ b/text/gstr/gstr_version.go
@@ -9,7 +9,7 @@ package gstr
import (
"strings"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// IsGNUVersion checks and returns whether given `version` is valid GNU version string.
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
index afaefee0b..b4b71efe7 100644
--- a/text/gstr/gstr_z_example_test.go
+++ b/text/gstr/gstr_z_example_test.go
@@ -11,7 +11,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
func ExampleCount() {
diff --git a/text/gstr/gstr_z_unit_array_test.go b/text/gstr/gstr_z_unit_array_test.go
index 4945c2284..4f80ba9db 100644
--- a/text/gstr/gstr_z_unit_array_test.go
+++ b/text/gstr/gstr_z_unit_array_test.go
@@ -11,9 +11,9 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_SearchArray(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_case_test.go b/text/gstr/gstr_z_unit_case_test.go
index bdc033c0d..9ffc4fcdb 100644
--- a/text/gstr/gstr_z_unit_case_test.go
+++ b/text/gstr/gstr_z_unit_case_test.go
@@ -9,8 +9,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_CaseCamel(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_convert_test.go b/text/gstr/gstr_z_unit_convert_test.go
index 4d0a7a813..12e946b12 100644
--- a/text/gstr/gstr_z_unit_convert_test.go
+++ b/text/gstr/gstr_z_unit_convert_test.go
@@ -9,8 +9,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_OctStr(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_domain_test.go b/text/gstr/gstr_z_unit_domain_test.go
index f7176d6b8..bdc32972d 100644
--- a/text/gstr/gstr_z_unit_domain_test.go
+++ b/text/gstr/gstr_z_unit_domain_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_IsSubDomain(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_list_test.go b/text/gstr/gstr_z_unit_list_test.go
index 865a97a02..c329711a9 100644
--- a/text/gstr/gstr_z_unit_list_test.go
+++ b/text/gstr/gstr_z_unit_list_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_List2(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_parse_test.go b/text/gstr/gstr_z_unit_parse_test.go
index bc4d457e9..404d02e73 100644
--- a/text/gstr/gstr_z_unit_parse_test.go
+++ b/text/gstr/gstr_z_unit_parse_test.go
@@ -12,9 +12,9 @@ import (
"net/url"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Parse(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_pos_test.go b/text/gstr/gstr_z_unit_pos_test.go
index 430ca30b7..50e4cfe39 100644
--- a/text/gstr/gstr_z_unit_pos_test.go
+++ b/text/gstr/gstr_z_unit_pos_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Pos(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_replace_test.go b/text/gstr/gstr_z_unit_replace_test.go
index fbc66fca6..81b84f9bc 100644
--- a/text/gstr/gstr_z_unit_replace_test.go
+++ b/text/gstr/gstr_z_unit_replace_test.go
@@ -12,9 +12,9 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Replace(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_test.go b/text/gstr/gstr_z_unit_test.go
index 63780d8e0..f0693f674 100644
--- a/text/gstr/gstr_z_unit_test.go
+++ b/text/gstr/gstr_z_unit_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_ToLower(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_trim_test.go b/text/gstr/gstr_z_unit_trim_test.go
index 1485a91e9..641084995 100644
--- a/text/gstr/gstr_z_unit_trim_test.go
+++ b/text/gstr/gstr_z_unit_trim_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_Trim(t *testing.T) {
diff --git a/text/gstr/gstr_z_unit_version_test.go b/text/gstr/gstr_z_unit_version_test.go
index 88ebb7bf5..185a7f67d 100644
--- a/text/gstr/gstr_z_unit_version_test.go
+++ b/text/gstr/gstr_z_unit_version_test.go
@@ -11,8 +11,8 @@ package gstr_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
)
func Test_IsGNUVersion(t *testing.T) {
diff --git a/util/gconv/gconv.go b/util/gconv/gconv.go
index 20e2cb844..077a20391 100644
--- a/util/gconv/gconv.go
+++ b/util/gconv/gconv.go
@@ -13,10 +13,10 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv/internal/converter"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
- "github.com/gogf/gf/v2/util/gconv/internal/structcache"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv/internal/converter"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/util/gconv/internal/structcache"
)
// Converter is the manager for type converting.
diff --git a/util/gconv/gconv_maps.go b/util/gconv/gconv_maps.go
index 6b3a237a2..95ba97a2e 100644
--- a/util/gconv/gconv_maps.go
+++ b/util/gconv/gconv_maps.go
@@ -7,8 +7,8 @@
package gconv
import (
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv/internal/converter"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv/internal/converter"
)
// SliceMap is alias of Maps.
diff --git a/util/gconv/gconv_scan_list.go b/util/gconv/gconv_scan_list.go
index 78cc98335..456b83096 100644
--- a/util/gconv/gconv_scan_list.go
+++ b/util/gconv/gconv_scan_list.go
@@ -9,10 +9,10 @@ package gconv
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gstructs"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gstructs"
)
// ScanList converts `structSlice` to struct slice which contains other complex struct attributes.
diff --git a/util/gconv/gconv_structs.go b/util/gconv/gconv_structs.go
index 9cc1c0771..d33aedabe 100644
--- a/util/gconv/gconv_structs.go
+++ b/util/gconv/gconv_structs.go
@@ -6,7 +6,7 @@
package gconv
-import "github.com/gogf/gf/v2/util/gconv/internal/converter"
+import "github.com/gogf/gf/v3/util/gconv/internal/converter"
// Structs converts any slice to given struct slice.
// Also see Scan, Struct.
diff --git a/util/gconv/gconv_time.go b/util/gconv/gconv_time.go
index 1102e0e87..3c7b6eb76 100644
--- a/util/gconv/gconv_time.go
+++ b/util/gconv/gconv_time.go
@@ -9,7 +9,7 @@ package gconv
import (
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// Time converts `any` to time.Time.
diff --git a/util/gconv/gconv_z_bench_bytes_test.go b/util/gconv/gconv_z_bench_bytes_test.go
index eafa27c99..1c000cc72 100644
--- a/util/gconv/gconv_z_bench_bytes_test.go
+++ b/util/gconv/gconv_z_bench_bytes_test.go
@@ -12,7 +12,7 @@ import (
"testing"
"unsafe"
- "github.com/gogf/gf/v2/encoding/gbinary"
+ "github.com/gogf/gf/v3/encoding/gbinary"
)
var valueBytes = gbinary.Encode(123456789)
diff --git a/util/gconv/gconv_z_unit_bool_test.go b/util/gconv/gconv_z_unit_bool_test.go
index 912a2dc2b..edc2fd290 100644
--- a/util/gconv/gconv_z_unit_bool_test.go
+++ b/util/gconv/gconv_z_unit_bool_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/util/gconv/gconv_z_unit_byte_test.go b/util/gconv/gconv_z_unit_byte_test.go
index ab47f012a..358262453 100644
--- a/util/gconv/gconv_z_unit_byte_test.go
+++ b/util/gconv/gconv_z_unit_byte_test.go
@@ -9,9 +9,9 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var byteTests = []struct {
diff --git a/util/gconv/gconv_z_unit_convert_test.go b/util/gconv/gconv_z_unit_convert_test.go
index e1626f6ee..068e2494b 100644
--- a/util/gconv/gconv_z_unit_convert_test.go
+++ b/util/gconv/gconv_z_unit_convert_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestConvert(t *testing.T) {
diff --git a/util/gconv/gconv_z_unit_converter_test.go b/util/gconv/gconv_z_unit_converter_test.go
index 3565eb4de..6135d8725 100644
--- a/util/gconv/gconv_z_unit_converter_test.go
+++ b/util/gconv/gconv_z_unit_converter_test.go
@@ -12,8 +12,8 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type converterStructInTest struct {
diff --git a/util/gconv/gconv_z_unit_float_test.go b/util/gconv/gconv_z_unit_float_test.go
index df888a3d0..efc7ca16f 100644
--- a/util/gconv/gconv_z_unit_float_test.go
+++ b/util/gconv/gconv_z_unit_float_test.go
@@ -11,9 +11,9 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/util/gconv/gconv_z_unit_int_test.go b/util/gconv/gconv_z_unit_int_test.go
index 9129896f3..d70cb80cb 100644
--- a/util/gconv/gconv_z_unit_int_test.go
+++ b/util/gconv/gconv_z_unit_int_test.go
@@ -10,9 +10,9 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/util/gconv/gconv_z_unit_interfaces_test.go b/util/gconv/gconv_z_unit_interfaces_test.go
index 8389feefd..4a1d359ea 100644
--- a/util/gconv/gconv_z_unit_interfaces_test.go
+++ b/util/gconv/gconv_z_unit_interfaces_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var interfacesTests = []struct {
diff --git a/util/gconv/gconv_z_unit_issue_test.go b/util/gconv/gconv_z_unit_issue_test.go
index 7e80fe30a..685434340 100644
--- a/util/gconv/gconv_z_unit_issue_test.go
+++ b/util/gconv/gconv_z_unit_issue_test.go
@@ -12,14 +12,14 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
// https://github.com/gogf/gf/issues/1227
diff --git a/util/gconv/gconv_z_unit_map_test.go b/util/gconv/gconv_z_unit_map_test.go
index ac30b0ae5..f29956083 100644
--- a/util/gconv/gconv_z_unit_map_test.go
+++ b/util/gconv/gconv_z_unit_map_test.go
@@ -11,9 +11,9 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type SubMapTest struct {
diff --git a/util/gconv/gconv_z_unit_ptr_test.go b/util/gconv/gconv_z_unit_ptr_test.go
index cda396c10..3986a71af 100644
--- a/util/gconv/gconv_z_unit_ptr_test.go
+++ b/util/gconv/gconv_z_unit_ptr_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestPtrAny(t *testing.T) {
diff --git a/util/gconv/gconv_z_unit_rune_test.go b/util/gconv/gconv_z_unit_rune_test.go
index a2def9f10..7f8a083d0 100644
--- a/util/gconv/gconv_z_unit_rune_test.go
+++ b/util/gconv/gconv_z_unit_rune_test.go
@@ -9,9 +9,9 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var runeTests = []struct {
diff --git a/util/gconv/gconv_z_unit_scan_basic_types_test.go b/util/gconv/gconv_z_unit_scan_basic_types_test.go
index 7e13faaab..b1420a5c6 100644
--- a/util/gconv/gconv_z_unit_scan_basic_types_test.go
+++ b/util/gconv/gconv_z_unit_scan_basic_types_test.go
@@ -10,8 +10,8 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type testScan struct {
diff --git a/util/gconv/gconv_z_unit_scan_list_test.go b/util/gconv/gconv_z_unit_scan_list_test.go
index 3cf420a4c..63cf5b13e 100644
--- a/util/gconv/gconv_z_unit_scan_list_test.go
+++ b/util/gconv/gconv_z_unit_scan_list_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestScanList(t *testing.T) {
diff --git a/util/gconv/gconv_z_unit_scan_test.go b/util/gconv/gconv_z_unit_scan_test.go
index eddfc9bbc..c0f451bb5 100644
--- a/util/gconv/gconv_z_unit_scan_test.go
+++ b/util/gconv/gconv_z_unit_scan_test.go
@@ -10,12 +10,12 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type scanStructTest struct {
diff --git a/util/gconv/gconv_z_unit_string_test.go b/util/gconv/gconv_z_unit_string_test.go
index 2d9eaf248..c306068bf 100644
--- a/util/gconv/gconv_z_unit_string_test.go
+++ b/util/gconv/gconv_z_unit_string_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var stringTests = []struct {
diff --git a/util/gconv/gconv_z_unit_struct_marshal_unmarshal_test.go b/util/gconv/gconv_z_unit_struct_marshal_unmarshal_test.go
index 12738ab5d..28ed940da 100644
--- a/util/gconv/gconv_z_unit_struct_marshal_unmarshal_test.go
+++ b/util/gconv/gconv_z_unit_struct_marshal_unmarshal_test.go
@@ -10,13 +10,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/crypto/gcrc32"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/crypto/gcrc32"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type MyTime struct {
diff --git a/util/gconv/gconv_z_unit_struct_test.go b/util/gconv/gconv_z_unit_struct_test.go
index 1dcb190c2..66be16308 100644
--- a/util/gconv/gconv_z_unit_struct_test.go
+++ b/util/gconv/gconv_z_unit_struct_test.go
@@ -11,10 +11,10 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type structExpect struct {
diff --git a/util/gconv/gconv_z_unit_test.go b/util/gconv/gconv_z_unit_test.go
index ca83b3fea..5ec66c14c 100644
--- a/util/gconv/gconv_z_unit_test.go
+++ b/util/gconv/gconv_z_unit_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
type impUnmarshalValue struct{}
diff --git a/util/gconv/gconv_z_unit_time_test.go b/util/gconv/gconv_z_unit_time_test.go
index 2a758fe1d..23aba43b2 100644
--- a/util/gconv/gconv_z_unit_time_test.go
+++ b/util/gconv/gconv_z_unit_time_test.go
@@ -10,9 +10,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/util/gconv/gconv_z_unit_uint_test.go b/util/gconv/gconv_z_unit_uint_test.go
index 58ae283d0..a18e09550 100644
--- a/util/gconv/gconv_z_unit_uint_test.go
+++ b/util/gconv/gconv_z_unit_uint_test.go
@@ -10,9 +10,9 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
var (
diff --git a/util/gconv/gconv_z_unit_unsafe_test.go b/util/gconv/gconv_z_unit_unsafe_test.go
index 2ff82e31c..a203d6851 100644
--- a/util/gconv/gconv_z_unit_unsafe_test.go
+++ b/util/gconv/gconv_z_unit_unsafe_test.go
@@ -9,8 +9,8 @@ package gconv_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func TestUnsafeStrToBytes(t *testing.T) {
diff --git a/util/gconv/internal/converter/converter.go b/util/gconv/internal/converter/converter.go
index cd69edda5..9dc5a15bd 100644
--- a/util/gconv/internal/converter/converter.go
+++ b/util/gconv/internal/converter/converter.go
@@ -11,10 +11,10 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv/internal/structcache"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv/internal/structcache"
)
// AnyConvertFunc is the type for any type converting function.
diff --git a/util/gconv/internal/converter/converter_bool.go b/util/gconv/internal/converter/converter_bool.go
index f8d9ce7c9..bc190fad3 100644
--- a/util/gconv/internal/converter/converter_bool.go
+++ b/util/gconv/internal/converter/converter_bool.go
@@ -10,8 +10,8 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Bool converts `any` to bool.
diff --git a/util/gconv/internal/converter/converter_builtin.go b/util/gconv/internal/converter/converter_builtin.go
index f7ac1cf0e..59a0db742 100644
--- a/util/gconv/internal/converter/converter_builtin.go
+++ b/util/gconv/internal/converter/converter_builtin.go
@@ -10,7 +10,7 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
func (c *Converter) builtInAnyConvertFuncForInt64(from any, to reflect.Value) error {
diff --git a/util/gconv/internal/converter/converter_bytes.go b/util/gconv/internal/converter/converter_bytes.go
index 79cd23378..0796e2f0c 100644
--- a/util/gconv/internal/converter/converter_bytes.go
+++ b/util/gconv/internal/converter/converter_bytes.go
@@ -10,11 +10,11 @@ import (
"math"
"reflect"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Bytes converts `any` to []byte.
diff --git a/util/gconv/internal/converter/converter_convert.go b/util/gconv/internal/converter/converter_convert.go
index 33ea78c28..c547725fc 100644
--- a/util/gconv/internal/converter/converter_convert.go
+++ b/util/gconv/internal/converter/converter_convert.go
@@ -10,8 +10,8 @@ import (
"reflect"
"time"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
)
// ConvertOption is the option for converting.
diff --git a/util/gconv/internal/converter/converter_float.go b/util/gconv/internal/converter/converter_float.go
index 21418100d..513a2b83d 100644
--- a/util/gconv/internal/converter/converter_float.go
+++ b/util/gconv/internal/converter/converter_float.go
@@ -10,11 +10,11 @@ import (
"reflect"
"strconv"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Float32 converts `any` to float32.
diff --git a/util/gconv/internal/converter/converter_int.go b/util/gconv/internal/converter/converter_int.go
index dc82e926c..eccd00cf9 100644
--- a/util/gconv/internal/converter/converter_int.go
+++ b/util/gconv/internal/converter/converter_int.go
@@ -11,11 +11,11 @@ import (
"reflect"
"strconv"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Int converts `any` to int.
diff --git a/util/gconv/internal/converter/converter_map.go b/util/gconv/internal/converter/converter_map.go
index aff383938..a250eaf56 100644
--- a/util/gconv/internal/converter/converter_map.go
+++ b/util/gconv/internal/converter/converter_map.go
@@ -10,11 +10,11 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/util/gtag"
)
// MapOption specifies the option for map converting.
diff --git a/util/gconv/internal/converter/converter_maptomap.go b/util/gconv/internal/converter/converter_maptomap.go
index 35fa31219..d3f3b3296 100644
--- a/util/gconv/internal/converter/converter_maptomap.go
+++ b/util/gconv/internal/converter/converter_maptomap.go
@@ -9,8 +9,8 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// MapToMap converts any map type variable `params` to another map type variable `pointer`.
diff --git a/util/gconv/internal/converter/converter_maptomaps.go b/util/gconv/internal/converter/converter_maptomaps.go
index cb940c407..85e9c1842 100644
--- a/util/gconv/internal/converter/converter_maptomaps.go
+++ b/util/gconv/internal/converter/converter_maptomaps.go
@@ -9,8 +9,8 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// MapToMaps converts any map type variable `params` to another map slice variable `pointer`.
diff --git a/util/gconv/internal/converter/converter_scan.go b/util/gconv/internal/converter/converter_scan.go
index 9630ffb2a..dcca91201 100644
--- a/util/gconv/internal/converter/converter_scan.go
+++ b/util/gconv/internal/converter/converter_scan.go
@@ -9,10 +9,10 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// ScanOption is the option for the Scan function.
diff --git a/util/gconv/internal/converter/converter_slice_any.go b/util/gconv/internal/converter/converter_slice_any.go
index 673c9afdf..e6ddcabf2 100644
--- a/util/gconv/internal/converter/converter_slice_any.go
+++ b/util/gconv/internal/converter/converter_slice_any.go
@@ -9,10 +9,10 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// SliceOption is the option for Slice type converting.
diff --git a/util/gconv/internal/converter/converter_slice_float.go b/util/gconv/internal/converter/converter_slice_float.go
index 382ca764e..5d352d295 100644
--- a/util/gconv/internal/converter/converter_slice_float.go
+++ b/util/gconv/internal/converter/converter_slice_float.go
@@ -9,11 +9,11 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// SliceFloat32 converts `any` to []float32.
diff --git a/util/gconv/internal/converter/converter_slice_int.go b/util/gconv/internal/converter/converter_slice_int.go
index 388c2075a..0641a768f 100644
--- a/util/gconv/internal/converter/converter_slice_int.go
+++ b/util/gconv/internal/converter/converter_slice_int.go
@@ -9,11 +9,11 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// SliceInt converts `any` to []int.
diff --git a/util/gconv/internal/converter/converter_slice_map.go b/util/gconv/internal/converter/converter_slice_map.go
index fb45d3c37..3e15e13fa 100644
--- a/util/gconv/internal/converter/converter_slice_map.go
+++ b/util/gconv/internal/converter/converter_slice_map.go
@@ -6,7 +6,7 @@
package converter
-import "github.com/gogf/gf/v2/internal/json"
+import "github.com/gogf/gf/v3/internal/json"
// SliceMapOption is the option for SliceMap function.
type SliceMapOption struct {
diff --git a/util/gconv/internal/converter/converter_slice_str.go b/util/gconv/internal/converter/converter_slice_str.go
index 87fa83dbd..8092574c5 100644
--- a/util/gconv/internal/converter/converter_slice_str.go
+++ b/util/gconv/internal/converter/converter_slice_str.go
@@ -9,10 +9,10 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// SliceStr converts `any` to []string.
diff --git a/util/gconv/internal/converter/converter_slice_uint.go b/util/gconv/internal/converter/converter_slice_uint.go
index d6d192194..f46c8ec89 100644
--- a/util/gconv/internal/converter/converter_slice_uint.go
+++ b/util/gconv/internal/converter/converter_slice_uint.go
@@ -9,11 +9,11 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// SliceUint converts `any` to []uint.
diff --git a/util/gconv/internal/converter/converter_string.go b/util/gconv/internal/converter/converter_string.go
index cd9434faa..c877a681a 100644
--- a/util/gconv/internal/converter/converter_string.go
+++ b/util/gconv/internal/converter/converter_string.go
@@ -12,12 +12,12 @@ import (
"strconv"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
func (c *Converter) String(any any) (string, error) {
diff --git a/util/gconv/internal/converter/converter_struct.go b/util/gconv/internal/converter/converter_struct.go
index 1a84e41b6..902b4272d 100644
--- a/util/gconv/internal/converter/converter_struct.go
+++ b/util/gconv/internal/converter/converter_struct.go
@@ -10,13 +10,13 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
- "github.com/gogf/gf/v2/util/gconv/internal/structcache"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/util/gconv/internal/structcache"
)
// StructOption is the option for Struct converting.
diff --git a/util/gconv/internal/converter/converter_structs.go b/util/gconv/internal/converter/converter_structs.go
index f164382bd..46023a5ac 100644
--- a/util/gconv/internal/converter/converter_structs.go
+++ b/util/gconv/internal/converter/converter_structs.go
@@ -9,8 +9,8 @@ package converter
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// StructsOption is the option for Structs function.
diff --git a/util/gconv/internal/converter/converter_time.go b/util/gconv/internal/converter/converter_time.go
index 05eae209f..1702503bf 100644
--- a/util/gconv/internal/converter/converter_time.go
+++ b/util/gconv/internal/converter/converter_time.go
@@ -9,10 +9,10 @@ package converter
import (
"time"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Time converts `any` to time.Time.
diff --git a/util/gconv/internal/converter/converter_uint.go b/util/gconv/internal/converter/converter_uint.go
index 2055b0c0c..aa5204f06 100644
--- a/util/gconv/internal/converter/converter_uint.go
+++ b/util/gconv/internal/converter/converter_uint.go
@@ -11,11 +11,11 @@ import (
"reflect"
"strconv"
- "github.com/gogf/gf/v2/encoding/gbinary"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/encoding/gbinary"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
// Uint converts `any` to uint.
diff --git a/util/gconv/internal/localinterface/localinterface.go b/util/gconv/internal/localinterface/localinterface.go
index d6821b2c4..f6346bb0f 100644
--- a/util/gconv/internal/localinterface/localinterface.go
+++ b/util/gconv/internal/localinterface/localinterface.go
@@ -7,7 +7,7 @@
// Package localinterface defines some interfaces for converting usage.
package localinterface
-import "github.com/gogf/gf/v2/os/gtime"
+import "github.com/gogf/gf/v3/os/gtime"
// IVal is used for type assert api for Val().
type IVal interface {
diff --git a/util/gconv/internal/structcache/structcache.go b/util/gconv/internal/structcache/structcache.go
index 99f6d2362..8dd28eeae 100644
--- a/util/gconv/internal/structcache/structcache.go
+++ b/util/gconv/internal/structcache/structcache.go
@@ -13,8 +13,8 @@ import (
"runtime"
"sync"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/util/gconv/internal/localinterface"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/util/gconv/internal/localinterface"
)
type interfaceTypeConverter struct {
diff --git a/util/gconv/internal/structcache/structcache_cached.go b/util/gconv/internal/structcache/structcache_cached.go
index 041b3c79b..26a3f9a00 100644
--- a/util/gconv/internal/structcache/structcache_cached.go
+++ b/util/gconv/internal/structcache/structcache_cached.go
@@ -9,8 +9,8 @@ package structcache
import (
"reflect"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/util/gtag"
)
// GetCachedStructInfo retrieves or parses and returns a cached info for certain struct type.
diff --git a/util/gconv/internal/structcache/structcache_cached_struct_info.go b/util/gconv/internal/structcache/structcache_cached_struct_info.go
index f3ff52d5d..3145389ef 100644
--- a/util/gconv/internal/structcache/structcache_cached_struct_info.go
+++ b/util/gconv/internal/structcache/structcache_cached_struct_info.go
@@ -10,7 +10,7 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// CachedStructInfo holds the cached info for certain struct.
diff --git a/util/gmeta/gmeta.go b/util/gmeta/gmeta.go
index 7d73ca925..aecd330ca 100644
--- a/util/gmeta/gmeta.go
+++ b/util/gmeta/gmeta.go
@@ -10,8 +10,8 @@ package gmeta
import (
"reflect"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/os/gstructs"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/os/gstructs"
)
// Meta is used as an embedded attribute for struct to enabled metadata feature.
diff --git a/util/gmeta/gmeta_z_bench_test.go b/util/gmeta/gmeta_z_bench_test.go
index e04b2cf65..096b99ab1 100644
--- a/util/gmeta/gmeta_z_bench_test.go
+++ b/util/gmeta/gmeta_z_bench_test.go
@@ -9,7 +9,7 @@ package gmeta_test
import (
"testing"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/util/gmeta"
)
type A struct {
diff --git a/util/gmeta/gmeta_z_unit_test.go b/util/gmeta/gmeta_z_unit_test.go
index d65e284a7..0acc174f2 100644
--- a/util/gmeta/gmeta_z_unit_test.go
+++ b/util/gmeta/gmeta_z_unit_test.go
@@ -9,10 +9,10 @@ package gmeta_test
import (
"testing"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
)
func TestMeta_Basic(t *testing.T) {
diff --git a/util/gmode/gmode.go b/util/gmode/gmode.go
index 624bb91b1..08097a1ab 100644
--- a/util/gmode/gmode.go
+++ b/util/gmode/gmode.go
@@ -10,9 +10,9 @@
package gmode
import (
- "github.com/gogf/gf/v2/debug/gdebug"
- "github.com/gogf/gf/v2/internal/command"
- "github.com/gogf/gf/v2/os/gfile"
+ "github.com/gogf/gf/v3/debug/gdebug"
+ "github.com/gogf/gf/v3/internal/command"
+ "github.com/gogf/gf/v3/os/gfile"
)
const (
diff --git a/util/gmode/gmode_z_unit_test.go b/util/gmode/gmode_z_unit_test.go
index bbc019160..db27d1766 100644
--- a/util/gmode/gmode_z_unit_test.go
+++ b/util/gmode/gmode_z_unit_test.go
@@ -11,8 +11,8 @@ package gmode_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gmode"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gmode"
)
func Test_AutoCheckSourceCodes(t *testing.T) {
diff --git a/util/gpage/gpage.go b/util/gpage/gpage.go
index adcb3eb73..69f0f9deb 100644
--- a/util/gpage/gpage.go
+++ b/util/gpage/gpage.go
@@ -14,8 +14,8 @@ import (
"html"
"math"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Page is the pagination implementer.
diff --git a/util/gpage/gpage_z_unit_test.go b/util/gpage/gpage_z_unit_test.go
index 5399db86f..da2678d1f 100644
--- a/util/gpage/gpage_z_unit_test.go
+++ b/util/gpage/gpage_z_unit_test.go
@@ -11,8 +11,8 @@ package gpage_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gpage"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gpage"
)
func Test_New(t *testing.T) {
diff --git a/util/grand/grand_buffer.go b/util/grand/grand_buffer.go
index 75d1fb724..323b8b91a 100644
--- a/util/grand/grand_buffer.go
+++ b/util/grand/grand_buffer.go
@@ -9,8 +9,8 @@ package grand
import (
"crypto/rand"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
const (
diff --git a/util/grand/grand_z_bench_test.go b/util/grand/grand_z_bench_test.go
index d52cdef7d..5dfd02aca 100644
--- a/util/grand/grand_z_bench_test.go
+++ b/util/grand/grand_z_bench_test.go
@@ -14,7 +14,7 @@ import (
mathRand "math/rand"
"testing"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/util/grand"
)
var (
diff --git a/util/grand/grand_z_unit_test.go b/util/grand/grand_z_unit_test.go
index d3ea2d713..48a198120 100644
--- a/util/grand/grand_z_unit_test.go
+++ b/util/grand/grand_z_unit_test.go
@@ -13,9 +13,9 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/grand"
)
func Test_Intn(t *testing.T) {
diff --git a/util/gtag/gtag_enums.go b/util/gtag/gtag_enums.go
index 10a4dbe97..b75b5b256 100644
--- a/util/gtag/gtag_enums.go
+++ b/util/gtag/gtag_enums.go
@@ -7,7 +7,7 @@
package gtag
import (
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// Type name => enums json.
@@ -29,7 +29,7 @@ func GetGlobalEnums() (string, error) {
}
// GetEnumsByType retrieves and returns the stored enums json by type name.
-// The type name is like: github.com/gogf/gf/v2/encoding/gjson.ContentType
+// The type name is like: github.com/gogf/gf/v3/encoding/gjson.ContentType
func GetEnumsByType(typeName string) string {
return string(enumsMap[typeName])
}
diff --git a/util/gtag/gtag_func.go b/util/gtag/gtag_func.go
index 5085c788b..4cce10271 100644
--- a/util/gtag/gtag_func.go
+++ b/util/gtag/gtag_func.go
@@ -9,7 +9,7 @@ package gtag
import (
"regexp"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gerror"
)
var (
diff --git a/util/gtag/gtag_z_example_test.go b/util/gtag/gtag_z_example_test.go
index 124a8db45..59c408932 100644
--- a/util/gtag/gtag_z_example_test.go
+++ b/util/gtag/gtag_z_example_test.go
@@ -9,9 +9,9 @@ package gtag_test
import (
"fmt"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gtag"
)
func ExampleSet() {
diff --git a/util/gtag/gtag_z_unit_test.go b/util/gtag/gtag_z_unit_test.go
index 4460ac95c..7779360a9 100644
--- a/util/gtag/gtag_z_unit_test.go
+++ b/util/gtag/gtag_z_unit_test.go
@@ -10,10 +10,10 @@ import (
"fmt"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gtag"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gtag"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_Set_Get(t *testing.T) {
diff --git a/util/guid/guid.go b/util/guid/guid.go
index e475b3dea..77b95600f 100644
--- a/util/guid/guid.go
+++ b/util/guid/guid.go
@@ -12,12 +12,12 @@ import (
"strconv"
"time"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/encoding/ghash"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/util/grand"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/encoding/ghash"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/util/grand"
)
const (
diff --git a/util/guid/guid_z_bench_test.go b/util/guid/guid_z_bench_test.go
index 282bc76ad..558751d24 100644
--- a/util/guid/guid_z_bench_test.go
+++ b/util/guid/guid_z_bench_test.go
@@ -11,7 +11,7 @@ package guid_test
import (
"testing"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/util/guid"
)
func Benchmark_S(b *testing.B) {
diff --git a/util/guid/guid_z_unit_test.go b/util/guid/guid_z_unit_test.go
index 52d106f64..61e59d7ca 100644
--- a/util/guid/guid_z_unit_test.go
+++ b/util/guid/guid_z_unit_test.go
@@ -11,9 +11,9 @@ package guid_test
import (
"testing"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
)
func Test_S(t *testing.T) {
diff --git a/util/gutil/gutil.go b/util/gutil/gutil.go
index 15f4e76a5..0475b09f0 100644
--- a/util/gutil/gutil.go
+++ b/util/gutil/gutil.go
@@ -10,7 +10,7 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
const (
diff --git a/util/gutil/gutil_comparator.go b/util/gutil/gutil_comparator.go
index c454cf920..c73c841c0 100644
--- a/util/gutil/gutil_comparator.go
+++ b/util/gutil/gutil_comparator.go
@@ -9,7 +9,7 @@ package gutil
import (
"strings"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Comparator is a function that compare a and b, and returns the result as int.
diff --git a/util/gutil/gutil_copy.go b/util/gutil/gutil_copy.go
index 24398b381..15b9f072c 100644
--- a/util/gutil/gutil_copy.go
+++ b/util/gutil/gutil_copy.go
@@ -7,7 +7,7 @@
package gutil
import (
- "github.com/gogf/gf/v2/internal/deepcopy"
+ "github.com/gogf/gf/v3/internal/deepcopy"
)
// Copy returns a deep copy of v.
diff --git a/util/gutil/gutil_dump.go b/util/gutil/gutil_dump.go
index 69282cf99..7d0fad2a2 100644
--- a/util/gutil/gutil_dump.go
+++ b/util/gutil/gutil_dump.go
@@ -14,9 +14,9 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/text/gstr"
)
// iString is used for type assert api for String().
diff --git a/util/gutil/gutil_is.go b/util/gutil/gutil_is.go
index 4a7232fb3..55f9c7175 100644
--- a/util/gutil/gutil_is.go
+++ b/util/gutil/gutil_is.go
@@ -9,7 +9,7 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/internal/empty"
+ "github.com/gogf/gf/v3/internal/empty"
)
// IsEmpty checks given `value` empty or not.
diff --git a/util/gutil/gutil_list.go b/util/gutil/gutil_list.go
index b7f771bed..223986e14 100644
--- a/util/gutil/gutil_list.go
+++ b/util/gutil/gutil_list.go
@@ -9,7 +9,7 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// ListItemValues retrieves and returns the elements of all item struct/map with key `key`.
diff --git a/util/gutil/gutil_map.go b/util/gutil/gutil_map.go
index 854471b1c..f39b19528 100644
--- a/util/gutil/gutil_map.go
+++ b/util/gutil/gutil_map.go
@@ -9,7 +9,7 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/internal/utils"
+ "github.com/gogf/gf/v3/internal/utils"
)
// MapCopy does a shallow copy from map `data` to `copy` for most commonly used map type
diff --git a/util/gutil/gutil_reflect.go b/util/gutil/gutil_reflect.go
index 87fdb7814..9d446696c 100644
--- a/util/gutil/gutil_reflect.go
+++ b/util/gutil/gutil_reflect.go
@@ -7,7 +7,7 @@
package gutil
import (
- "github.com/gogf/gf/v2/internal/reflection"
+ "github.com/gogf/gf/v3/internal/reflection"
)
type (
diff --git a/util/gutil/gutil_slice.go b/util/gutil/gutil_slice.go
index fa8d71e5f..413060efb 100644
--- a/util/gutil/gutil_slice.go
+++ b/util/gutil/gutil_slice.go
@@ -9,7 +9,7 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// SliceCopy does a shallow copy of slice `data` for most commonly used slice type
diff --git a/util/gutil/gutil_struct.go b/util/gutil/gutil_struct.go
index f0b87cbcd..e57727904 100644
--- a/util/gutil/gutil_struct.go
+++ b/util/gutil/gutil_struct.go
@@ -9,10 +9,10 @@ package gutil
import (
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/util/gconv"
)
// StructToSlice converts struct to slice of which all keys and values are its items.
diff --git a/util/gutil/gutil_try_catch.go b/util/gutil/gutil_try_catch.go
index db82a3cb0..25ace892c 100644
--- a/util/gutil/gutil_try_catch.go
+++ b/util/gutil/gutil_try_catch.go
@@ -9,8 +9,8 @@ package gutil
import (
"context"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
)
// Throw throws out an exception, which can be caught be TryCatch or recover.
diff --git a/util/gutil/gutil_z_example_test.go b/util/gutil/gutil_z_example_test.go
index aeb549225..083840af2 100644
--- a/util/gutil/gutil_z_example_test.go
+++ b/util/gutil/gutil_z_example_test.go
@@ -9,8 +9,8 @@ package gutil_test
import (
"fmt"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/util/gutil"
)
func ExampleSliceInsertBefore() {
diff --git a/util/gutil/gutil_z_unit_comparator_test.go b/util/gutil/gutil_z_unit_comparator_test.go
index 4036e47f0..d712c19b4 100755
--- a/util/gutil/gutil_z_unit_comparator_test.go
+++ b/util/gutil/gutil_z_unit_comparator_test.go
@@ -9,8 +9,8 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_ComparatorString(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_copy_test.go b/util/gutil/gutil_z_unit_copy_test.go
index 087121c60..726b965ba 100755
--- a/util/gutil/gutil_z_unit_copy_test.go
+++ b/util/gutil/gutil_z_unit_copy_test.go
@@ -9,9 +9,9 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Copy(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_dump_test.go b/util/gutil/gutil_z_unit_dump_test.go
index 04a966500..a12814060 100755
--- a/util/gutil/gutil_z_unit_dump_test.go
+++ b/util/gutil/gutil_z_unit_dump_test.go
@@ -10,14 +10,14 @@ import (
"bytes"
"testing"
- "github.com/gogf/gf/v2/container/gtype"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/gtype"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Dump(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_goroutine_test.go b/util/gutil/gutil_z_unit_goroutine_test.go
index 8a86055a1..cc6593e8c 100644
--- a/util/gutil/gutil_z_unit_goroutine_test.go
+++ b/util/gutil/gutil_z_unit_goroutine_test.go
@@ -11,9 +11,9 @@ import (
"sync"
"testing"
- "github.com/gogf/gf/v2/container/garray"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/container/garray"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_Go(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_is_test.go b/util/gutil/gutil_z_unit_is_test.go
index 43c802c06..6ab8e23e8 100644
--- a/util/gutil/gutil_z_unit_is_test.go
+++ b/util/gutil/gutil_z_unit_is_test.go
@@ -9,8 +9,8 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_IsEmpty(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_list_test.go b/util/gutil/gutil_z_unit_list_test.go
index 0f8cc1897..85ff7617f 100755
--- a/util/gutil/gutil_z_unit_list_test.go
+++ b/util/gutil/gutil_z_unit_list_test.go
@@ -9,9 +9,9 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_ListItemValues_Map(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_map_test.go b/util/gutil/gutil_z_unit_map_test.go
index 29ad92693..90730eaed 100755
--- a/util/gutil/gutil_z_unit_map_test.go
+++ b/util/gutil/gutil_z_unit_map_test.go
@@ -9,9 +9,9 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_MapCopy(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_reflect_test.go b/util/gutil/gutil_z_unit_reflect_test.go
index 6b99cdbd6..d370f2d4a 100644
--- a/util/gutil/gutil_z_unit_reflect_test.go
+++ b/util/gutil/gutil_z_unit_reflect_test.go
@@ -10,8 +10,8 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_OriginValueAndKind(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_slice_test.go b/util/gutil/gutil_z_unit_slice_test.go
index 4d27c46ee..d6af66f6a 100755
--- a/util/gutil/gutil_z_unit_slice_test.go
+++ b/util/gutil/gutil_z_unit_slice_test.go
@@ -9,9 +9,9 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_SliceCopy(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_struct_test.go b/util/gutil/gutil_z_unit_struct_test.go
index d9ebde805..9ebfe1af9 100755
--- a/util/gutil/gutil_z_unit_struct_test.go
+++ b/util/gutil/gutil_z_unit_struct_test.go
@@ -9,9 +9,9 @@ package gutil_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
func Test_StructToSlice(t *testing.T) {
diff --git a/util/gutil/gutil_z_unit_test.go b/util/gutil/gutil_z_unit_test.go
index 2583ba307..c217164d2 100755
--- a/util/gutil/gutil_z_unit_test.go
+++ b/util/gutil/gutil_z_unit_test.go
@@ -11,10 +11,10 @@ import (
"reflect"
"testing"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gutil"
)
var (
diff --git a/util/gvalid/gvalid.go b/util/gvalid/gvalid.go
index 462b2e9ed..8f63c54e1 100644
--- a/util/gvalid/gvalid.go
+++ b/util/gvalid/gvalid.go
@@ -13,9 +13,9 @@ import (
"regexp"
"strings"
- "github.com/gogf/gf/v2/internal/intlog"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/internal/intlog"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/util/gtag"
)
// CustomMsg is the custom error message type,
diff --git a/util/gvalid/gvalid_error.go b/util/gvalid/gvalid_error.go
index 099c89878..f1b0d382b 100644
--- a/util/gvalid/gvalid_error.go
+++ b/util/gvalid/gvalid_error.go
@@ -9,10 +9,10 @@ package gvalid
import (
"strings"
- "github.com/gogf/gf/v2/container/gset"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/container/gset"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gstr"
)
// Error is the validation error for validation result.
diff --git a/util/gvalid/gvalid_register.go b/util/gvalid/gvalid_register.go
index 4b2df0978..14c085c99 100644
--- a/util/gvalid/gvalid_register.go
+++ b/util/gvalid/gvalid_register.go
@@ -12,8 +12,8 @@ import (
"reflect"
"runtime"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/internal/intlog"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/internal/intlog"
)
// RuleFunc is the custom function for data validation.
diff --git a/util/gvalid/gvalid_validator.go b/util/gvalid/gvalid_validator.go
index f461ff327..0776cc654 100644
--- a/util/gvalid/gvalid_validator.go
+++ b/util/gvalid/gvalid_validator.go
@@ -11,11 +11,11 @@ import (
"errors"
"reflect"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/internal/utils"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/internal/utils"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// Validator is the validation manager for chaining operations.
diff --git a/util/gvalid/gvalid_validator_check_map.go b/util/gvalid/gvalid_validator_check_map.go
index 3d15cd7bc..77ccf27dc 100644
--- a/util/gvalid/gvalid_validator_check_map.go
+++ b/util/gvalid/gvalid_validator_check_map.go
@@ -12,9 +12,9 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/internal/reflection"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/internal/reflection"
+ "github.com/gogf/gf/v3/util/gconv"
)
func (v *Validator) doCheckMap(ctx context.Context, params interface{}) Error {
diff --git a/util/gvalid/gvalid_validator_check_struct.go b/util/gvalid/gvalid_validator_check_struct.go
index e2ba2121e..b16bdc5a3 100644
--- a/util/gvalid/gvalid_validator_check_struct.go
+++ b/util/gvalid/gvalid_validator_check_struct.go
@@ -11,12 +11,12 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/os/gstructs"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gmeta"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/os/gstructs"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gmeta"
+ "github.com/gogf/gf/v3/util/gutil"
)
func (v *Validator) doCheckStruct(ctx context.Context, object interface{}) Error {
diff --git a/util/gvalid/gvalid_validator_check_value.go b/util/gvalid/gvalid_validator_check_value.go
index cd1c40210..01c5f6957 100644
--- a/util/gvalid/gvalid_validator_check_value.go
+++ b/util/gvalid/gvalid_validator_check_value.go
@@ -12,14 +12,14 @@ import (
"reflect"
"strings"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/encoding/gjson"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/text/gregex"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gvalid/internal/builtin"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/encoding/gjson"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/text/gregex"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gvalid/internal/builtin"
)
type doCheckValueInput struct {
diff --git a/util/gvalid/gvalid_validator_message.go b/util/gvalid/gvalid_validator_message.go
index 0585e4469..577a5aeba 100644
--- a/util/gvalid/gvalid_validator_message.go
+++ b/util/gvalid/gvalid_validator_message.go
@@ -9,7 +9,7 @@ package gvalid
import (
"context"
- "github.com/gogf/gf/v2/util/gvalid/internal/builtin"
+ "github.com/gogf/gf/v3/util/gvalid/internal/builtin"
)
// getErrorMessageByRule retrieves and returns the error message for specified rule.
diff --git a/util/gvalid/gvalid_z_example_feature_rule_test.go b/util/gvalid/gvalid_z_example_feature_rule_test.go
index 9980e9ba0..7d0f93744 100644
--- a/util/gvalid/gvalid_z_example_feature_rule_test.go
+++ b/util/gvalid/gvalid_z_example_feature_rule_test.go
@@ -10,8 +10,8 @@ import (
"context"
"fmt"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/text/gstr"
)
func ExampleRule_Required() {
diff --git a/util/gvalid/gvalid_z_example_test.go b/util/gvalid/gvalid_z_example_test.go
index 444fcea14..5cbc37249 100644
--- a/util/gvalid/gvalid_z_example_test.go
+++ b/util/gvalid/gvalid_z_example_test.go
@@ -11,13 +11,13 @@ import (
"errors"
"fmt"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gvalid"
)
func ExampleNew() {
diff --git a/util/gvalid/gvalid_z_unit_feature_checkmap_test.go b/util/gvalid/gvalid_z_unit_feature_checkmap_test.go
index f3fba9a7b..973ddac1b 100755
--- a/util/gvalid/gvalid_z_unit_feature_checkmap_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_checkmap_test.go
@@ -10,10 +10,10 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gvalid"
)
func Test_CheckMap1(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_checkstruct_test.go b/util/gvalid/gvalid_z_unit_feature_checkstruct_test.go
index b9037d00a..71f0930ed 100755
--- a/util/gvalid/gvalid_z_unit_feature_checkstruct_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_checkstruct_test.go
@@ -10,11 +10,11 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/container/gvar"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/container/gvar"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gconv"
)
func Test_CheckStruct(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_ci_test.go b/util/gvalid/gvalid_z_unit_feature_ci_test.go
index fcacf15c1..dd4e0bf6a 100644
--- a/util/gvalid/gvalid_z_unit_feature_ci_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_ci_test.go
@@ -9,8 +9,8 @@ package gvalid_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_CI(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_custom_error_test.go b/util/gvalid/gvalid_z_unit_feature_custom_error_test.go
index 7b333febe..a394c5cc5 100755
--- a/util/gvalid/gvalid_z_unit_feature_custom_error_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_custom_error_test.go
@@ -11,8 +11,8 @@ import (
"strings"
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_Map(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_custom_rule_test.go b/util/gvalid/gvalid_z_unit_feature_custom_rule_test.go
index 39b975b16..9743992ec 100644
--- a/util/gvalid/gvalid_z_unit_feature_custom_rule_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_custom_rule_test.go
@@ -11,11 +11,11 @@ import (
"errors"
"testing"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gvalid"
)
func Test_CustomRule1(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_i18n_test.go b/util/gvalid/gvalid_z_unit_feature_i18n_test.go
index d43d4c566..f070dfbf4 100644
--- a/util/gvalid/gvalid_z_unit_feature_i18n_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_i18n_test.go
@@ -10,9 +10,9 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/i18n/gi18n"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/i18n/gi18n"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gvalid"
)
func TestValidator_I18n(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_meta_test.go b/util/gvalid/gvalid_z_unit_feature_meta_test.go
index 7bea9e2b2..4577769bc 100644
--- a/util/gvalid/gvalid_z_unit_feature_meta_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_meta_test.go
@@ -10,10 +10,10 @@ import (
"context"
"testing"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gvalid"
)
type UserCreateReq struct {
diff --git a/util/gvalid/gvalid_z_unit_feature_recursive_test.go b/util/gvalid/gvalid_z_unit_feature_recursive_test.go
index e3524c70d..ad509a569 100755
--- a/util/gvalid/gvalid_z_unit_feature_recursive_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_recursive_test.go
@@ -9,8 +9,8 @@ package gvalid_test
import (
"testing"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_CheckStruct_Recursive_Struct(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_feature_rule_test.go b/util/gvalid/gvalid_z_unit_feature_rule_test.go
index 7d16bae83..0cef4f592 100755
--- a/util/gvalid/gvalid_z_unit_feature_rule_test.go
+++ b/util/gvalid/gvalid_z_unit_feature_rule_test.go
@@ -10,13 +10,13 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/os/gctx"
- "github.com/gogf/gf/v2/os/gtime"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/os/gctx"
+ "github.com/gogf/gf/v3/os/gtime"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/gtag"
)
var (
@@ -1590,7 +1590,7 @@ func Test_Enums(t *testing.T) {
t.AssertNil(err)
defer t.AssertNil(gtag.SetGlobalEnums(oldEnumsJson))
- err = gtag.SetGlobalEnums(`{"github.com/gogf/gf/v2/util/gvalid_test.EnumsTest": ["a","b"]}`)
+ err = gtag.SetGlobalEnums(`{"github.com/gogf/gf/v3/util/gvalid_test.EnumsTest": ["a","b"]}`)
t.AssertNil(err)
err = g.Validator().Data(&Params{
diff --git a/util/gvalid/gvalid_z_unit_internal_test.go b/util/gvalid/gvalid_z_unit_internal_test.go
index 4a86d5053..f1186a196 100644
--- a/util/gvalid/gvalid_z_unit_internal_test.go
+++ b/util/gvalid/gvalid_z_unit_internal_test.go
@@ -9,7 +9,7 @@ package gvalid
import (
"testing"
- "github.com/gogf/gf/v2/test/gtest"
+ "github.com/gogf/gf/v3/test/gtest"
)
func Test_parseSequenceTag(t *testing.T) {
diff --git a/util/gvalid/gvalid_z_unit_issue_test.go b/util/gvalid/gvalid_z_unit_issue_test.go
index 80449e342..282a01918 100644
--- a/util/gvalid/gvalid_z_unit_issue_test.go
+++ b/util/gvalid/gvalid_z_unit_issue_test.go
@@ -13,12 +13,12 @@ import (
"testing"
"time"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/test/gtest"
- "github.com/gogf/gf/v2/util/guid"
- "github.com/gogf/gf/v2/util/gvalid"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/frame/g"
+ "github.com/gogf/gf/v3/net/ghttp"
+ "github.com/gogf/gf/v3/test/gtest"
+ "github.com/gogf/gf/v3/util/guid"
+ "github.com/gogf/gf/v3/util/gvalid"
)
type Foo struct {
diff --git a/util/gvalid/internal/builtin/builtin.go b/util/gvalid/internal/builtin/builtin.go
index bb7ff77b3..917c034ad 100644
--- a/util/gvalid/internal/builtin/builtin.go
+++ b/util/gvalid/internal/builtin/builtin.go
@@ -13,7 +13,7 @@ package builtin
import (
"reflect"
- "github.com/gogf/gf/v2/container/gvar"
+ "github.com/gogf/gf/v3/container/gvar"
)
type Rule interface {
diff --git a/util/gvalid/internal/builtin/builtin_after.go b/util/gvalid/internal/builtin/builtin_after.go
index cf4312632..77f0e73c6 100644
--- a/util/gvalid/internal/builtin/builtin_after.go
+++ b/util/gvalid/internal/builtin/builtin_after.go
@@ -9,9 +9,9 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleAfter implements `after` rule:
diff --git a/util/gvalid/internal/builtin/builtin_after_equal.go b/util/gvalid/internal/builtin/builtin_after_equal.go
index 569ac70ce..8a12bb77d 100644
--- a/util/gvalid/internal/builtin/builtin_after_equal.go
+++ b/util/gvalid/internal/builtin/builtin_after_equal.go
@@ -9,9 +9,9 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleAfterEqual implements `after-equal` rule:
diff --git a/util/gvalid/internal/builtin/builtin_array.go b/util/gvalid/internal/builtin/builtin_array.go
index b051e0a81..89811d488 100644
--- a/util/gvalid/internal/builtin/builtin_array.go
+++ b/util/gvalid/internal/builtin/builtin_array.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// RuleArray implements `array` rule:
diff --git a/util/gvalid/internal/builtin/builtin_before.go b/util/gvalid/internal/builtin/builtin_before.go
index cad27fd02..16720c834 100644
--- a/util/gvalid/internal/builtin/builtin_before.go
+++ b/util/gvalid/internal/builtin/builtin_before.go
@@ -9,9 +9,9 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleBefore implements `before` rule:
diff --git a/util/gvalid/internal/builtin/builtin_before_equal.go b/util/gvalid/internal/builtin/builtin_before_equal.go
index 562408b47..9b05f59d0 100644
--- a/util/gvalid/internal/builtin/builtin_before_equal.go
+++ b/util/gvalid/internal/builtin/builtin_before_equal.go
@@ -9,9 +9,9 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleBeforeEqual implements `before-equal` rule:
diff --git a/util/gvalid/internal/builtin/builtin_between.go b/util/gvalid/internal/builtin/builtin_between.go
index c14f04130..15f4ce268 100644
--- a/util/gvalid/internal/builtin/builtin_between.go
+++ b/util/gvalid/internal/builtin/builtin_between.go
@@ -11,7 +11,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RuleBetween implements `between` rule:
diff --git a/util/gvalid/internal/builtin/builtin_date.go b/util/gvalid/internal/builtin/builtin_date.go
index d186bbd64..60cd2e097 100644
--- a/util/gvalid/internal/builtin/builtin_date.go
+++ b/util/gvalid/internal/builtin/builtin_date.go
@@ -10,7 +10,7 @@ import (
"errors"
"time"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleDate implements `date` rule:
diff --git a/util/gvalid/internal/builtin/builtin_date_format.go b/util/gvalid/internal/builtin/builtin_date_format.go
index cfd6a8f59..b131c5561 100644
--- a/util/gvalid/internal/builtin/builtin_date_format.go
+++ b/util/gvalid/internal/builtin/builtin_date_format.go
@@ -10,7 +10,7 @@ import (
"errors"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// RuleDateFormat implements `date-format` rule:
diff --git a/util/gvalid/internal/builtin/builtin_datetime.go b/util/gvalid/internal/builtin/builtin_datetime.go
index 82b60e46e..839f4e1c6 100644
--- a/util/gvalid/internal/builtin/builtin_datetime.go
+++ b/util/gvalid/internal/builtin/builtin_datetime.go
@@ -10,7 +10,7 @@ import (
"errors"
"time"
- "github.com/gogf/gf/v2/os/gtime"
+ "github.com/gogf/gf/v3/os/gtime"
)
// RuleDatetime implements `datetime` rule:
diff --git a/util/gvalid/internal/builtin/builtin_different.go b/util/gvalid/internal/builtin/builtin_different.go
index d028aef3e..c8e9df542 100644
--- a/util/gvalid/internal/builtin/builtin_different.go
+++ b/util/gvalid/internal/builtin/builtin_different.go
@@ -10,9 +10,9 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleDifferent implements `different` rule:
diff --git a/util/gvalid/internal/builtin/builtin_domain.go b/util/gvalid/internal/builtin/builtin_domain.go
index adca4472c..04ee2ae9d 100644
--- a/util/gvalid/internal/builtin/builtin_domain.go
+++ b/util/gvalid/internal/builtin/builtin_domain.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleDomain implements `domain` rule:
diff --git a/util/gvalid/internal/builtin/builtin_email.go b/util/gvalid/internal/builtin/builtin_email.go
index e3ea0ddc3..4f73f2335 100644
--- a/util/gvalid/internal/builtin/builtin_email.go
+++ b/util/gvalid/internal/builtin/builtin_email.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleEmail implements `email` rule:
diff --git a/util/gvalid/internal/builtin/builtin_enums.go b/util/gvalid/internal/builtin/builtin_enums.go
index 1c370f511..f6ce67576 100644
--- a/util/gvalid/internal/builtin/builtin_enums.go
+++ b/util/gvalid/internal/builtin/builtin_enums.go
@@ -11,12 +11,12 @@ import (
"fmt"
"reflect"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/internal/json"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gtag"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/internal/json"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gtag"
)
// RuleEnums implements `enums` rule:
diff --git a/util/gvalid/internal/builtin/builtin_gt.go b/util/gvalid/internal/builtin/builtin_gt.go
index 7cd523e0d..a303c967d 100644
--- a/util/gvalid/internal/builtin/builtin_gt.go
+++ b/util/gvalid/internal/builtin/builtin_gt.go
@@ -10,9 +10,9 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleGT implements `gt` rule:
diff --git a/util/gvalid/internal/builtin/builtin_gte.go b/util/gvalid/internal/builtin/builtin_gte.go
index a19705855..046868bb5 100644
--- a/util/gvalid/internal/builtin/builtin_gte.go
+++ b/util/gvalid/internal/builtin/builtin_gte.go
@@ -10,9 +10,9 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleGTE implements `gte` rule:
diff --git a/util/gvalid/internal/builtin/builtin_in.go b/util/gvalid/internal/builtin/builtin_in.go
index dfc9a828e..57c95b9f1 100644
--- a/util/gvalid/internal/builtin/builtin_in.go
+++ b/util/gvalid/internal/builtin/builtin_in.go
@@ -10,7 +10,7 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RuleIn implements `in` rule:
diff --git a/util/gvalid/internal/builtin/builtin_ip.go b/util/gvalid/internal/builtin/builtin_ip.go
index cf5ed4090..e5894fb5b 100644
--- a/util/gvalid/internal/builtin/builtin_ip.go
+++ b/util/gvalid/internal/builtin/builtin_ip.go
@@ -9,8 +9,8 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/net/gipv4"
- "github.com/gogf/gf/v2/net/gipv6"
+ "github.com/gogf/gf/v3/net/gipv4"
+ "github.com/gogf/gf/v3/net/gipv6"
)
// RuleIp implements `ip` rule:
diff --git a/util/gvalid/internal/builtin/builtin_ipv4.go b/util/gvalid/internal/builtin/builtin_ipv4.go
index f37770e71..748ebb9e3 100644
--- a/util/gvalid/internal/builtin/builtin_ipv4.go
+++ b/util/gvalid/internal/builtin/builtin_ipv4.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/net/gipv4"
+ "github.com/gogf/gf/v3/net/gipv4"
)
// RuleIpv4 implements `ipv4` rule:
diff --git a/util/gvalid/internal/builtin/builtin_ipv6.go b/util/gvalid/internal/builtin/builtin_ipv6.go
index fa9cdfea1..1d092975b 100644
--- a/util/gvalid/internal/builtin/builtin_ipv6.go
+++ b/util/gvalid/internal/builtin/builtin_ipv6.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/net/gipv6"
+ "github.com/gogf/gf/v3/net/gipv6"
)
// RuleIpv6 implements `ipv6` rule:
diff --git a/util/gvalid/internal/builtin/builtin_json.go b/util/gvalid/internal/builtin/builtin_json.go
index 0f1be7868..1ae606605 100644
--- a/util/gvalid/internal/builtin/builtin_json.go
+++ b/util/gvalid/internal/builtin/builtin_json.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/internal/json"
+ "github.com/gogf/gf/v3/internal/json"
)
// RuleJson implements `json` rule:
diff --git a/util/gvalid/internal/builtin/builtin_length.go b/util/gvalid/internal/builtin/builtin_length.go
index c99de47df..e2273a0c1 100644
--- a/util/gvalid/internal/builtin/builtin_length.go
+++ b/util/gvalid/internal/builtin/builtin_length.go
@@ -11,8 +11,8 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// RuleLength implements `length` rule:
diff --git a/util/gvalid/internal/builtin/builtin_lt.go b/util/gvalid/internal/builtin/builtin_lt.go
index 4bb67c036..293a40368 100644
--- a/util/gvalid/internal/builtin/builtin_lt.go
+++ b/util/gvalid/internal/builtin/builtin_lt.go
@@ -10,9 +10,9 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleLT implements `lt` rule:
diff --git a/util/gvalid/internal/builtin/builtin_lte.go b/util/gvalid/internal/builtin/builtin_lte.go
index 428d9922c..4a347bc38 100644
--- a/util/gvalid/internal/builtin/builtin_lte.go
+++ b/util/gvalid/internal/builtin/builtin_lte.go
@@ -10,9 +10,9 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleLTE implements `lte` rule:
diff --git a/util/gvalid/internal/builtin/builtin_mac.go b/util/gvalid/internal/builtin/builtin_mac.go
index d09f41367..31b2c546b 100644
--- a/util/gvalid/internal/builtin/builtin_mac.go
+++ b/util/gvalid/internal/builtin/builtin_mac.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleMac implements `mac` rule:
diff --git a/util/gvalid/internal/builtin/builtin_max.go b/util/gvalid/internal/builtin/builtin_max.go
index 6083fad51..898fcb59b 100644
--- a/util/gvalid/internal/builtin/builtin_max.go
+++ b/util/gvalid/internal/builtin/builtin_max.go
@@ -10,7 +10,7 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RuleMax implements `max` rule:
diff --git a/util/gvalid/internal/builtin/builtin_max_length.go b/util/gvalid/internal/builtin/builtin_max_length.go
index e9847c973..f7516cfaf 100644
--- a/util/gvalid/internal/builtin/builtin_max_length.go
+++ b/util/gvalid/internal/builtin/builtin_max_length.go
@@ -10,8 +10,8 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// RuleMaxLength implements `max-length` rule:
diff --git a/util/gvalid/internal/builtin/builtin_min.go b/util/gvalid/internal/builtin/builtin_min.go
index 2cfd08757..ee7330e7d 100644
--- a/util/gvalid/internal/builtin/builtin_min.go
+++ b/util/gvalid/internal/builtin/builtin_min.go
@@ -10,7 +10,7 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RuleMin implements `min` rule:
diff --git a/util/gvalid/internal/builtin/builtin_min_length.go b/util/gvalid/internal/builtin/builtin_min_length.go
index cf5c1e2cd..b6cbf81d1 100644
--- a/util/gvalid/internal/builtin/builtin_min_length.go
+++ b/util/gvalid/internal/builtin/builtin_min_length.go
@@ -10,8 +10,8 @@ import (
"errors"
"strconv"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
)
// RuleMinLength implements `min-length` rule:
diff --git a/util/gvalid/internal/builtin/builtin_not_in.go b/util/gvalid/internal/builtin/builtin_not_in.go
index 90fd79153..0209e8652 100644
--- a/util/gvalid/internal/builtin/builtin_not_in.go
+++ b/util/gvalid/internal/builtin/builtin_not_in.go
@@ -10,7 +10,7 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
+ "github.com/gogf/gf/v3/text/gstr"
)
// RuleNotIn implements `not-in` rule:
diff --git a/util/gvalid/internal/builtin/builtin_not_regex.go b/util/gvalid/internal/builtin/builtin_not_regex.go
index a2019dea7..4133a9044 100644
--- a/util/gvalid/internal/builtin/builtin_not_regex.go
+++ b/util/gvalid/internal/builtin/builtin_not_regex.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleNotRegex implements `not-regex` rule:
diff --git a/util/gvalid/internal/builtin/builtin_passport.go b/util/gvalid/internal/builtin/builtin_passport.go
index 742f41dc1..3b9e730a4 100644
--- a/util/gvalid/internal/builtin/builtin_passport.go
+++ b/util/gvalid/internal/builtin/builtin_passport.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePassport implements `passport` rule:
diff --git a/util/gvalid/internal/builtin/builtin_password.go b/util/gvalid/internal/builtin/builtin_password.go
index d75b42a12..9551aff52 100644
--- a/util/gvalid/internal/builtin/builtin_password.go
+++ b/util/gvalid/internal/builtin/builtin_password.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePassword implements `password` rule:
diff --git a/util/gvalid/internal/builtin/builtin_password2.go b/util/gvalid/internal/builtin/builtin_password2.go
index 4ef076f2b..bde4c648e 100644
--- a/util/gvalid/internal/builtin/builtin_password2.go
+++ b/util/gvalid/internal/builtin/builtin_password2.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePassword2 implements `password2` rule:
diff --git a/util/gvalid/internal/builtin/builtin_password3.go b/util/gvalid/internal/builtin/builtin_password3.go
index 7ef778351..11ce38843 100644
--- a/util/gvalid/internal/builtin/builtin_password3.go
+++ b/util/gvalid/internal/builtin/builtin_password3.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePassword3 implements `password3` rule:
diff --git a/util/gvalid/internal/builtin/builtin_phone.go b/util/gvalid/internal/builtin/builtin_phone.go
index 155016d71..654a9f0cc 100644
--- a/util/gvalid/internal/builtin/builtin_phone.go
+++ b/util/gvalid/internal/builtin/builtin_phone.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePhone implements `phone` rule:
diff --git a/util/gvalid/internal/builtin/builtin_phone_loose.go b/util/gvalid/internal/builtin/builtin_phone_loose.go
index 4c8bcf3ed..27c0e147c 100644
--- a/util/gvalid/internal/builtin/builtin_phone_loose.go
+++ b/util/gvalid/internal/builtin/builtin_phone_loose.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePhoneLoose implements `phone-loose` rule:
diff --git a/util/gvalid/internal/builtin/builtin_postcode.go b/util/gvalid/internal/builtin/builtin_postcode.go
index 8b656f5dc..5b3a50cda 100644
--- a/util/gvalid/internal/builtin/builtin_postcode.go
+++ b/util/gvalid/internal/builtin/builtin_postcode.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RulePostcode implements `postcode` rule:
diff --git a/util/gvalid/internal/builtin/builtin_qq.go b/util/gvalid/internal/builtin/builtin_qq.go
index cd3cb9815..9f331984e 100644
--- a/util/gvalid/internal/builtin/builtin_qq.go
+++ b/util/gvalid/internal/builtin/builtin_qq.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleQQ implements `qq` rule:
diff --git a/util/gvalid/internal/builtin/builtin_regex.go b/util/gvalid/internal/builtin/builtin_regex.go
index e69089a74..51f9020dd 100644
--- a/util/gvalid/internal/builtin/builtin_regex.go
+++ b/util/gvalid/internal/builtin/builtin_regex.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleRegex implements `regex` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required.go b/util/gvalid/internal/builtin/builtin_required.go
index a70293ebb..c87ccc1c8 100644
--- a/util/gvalid/internal/builtin/builtin_required.go
+++ b/util/gvalid/internal/builtin/builtin_required.go
@@ -10,7 +10,7 @@ import (
"errors"
"reflect"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// RuleRequired implements `required` rule.
diff --git a/util/gvalid/internal/builtin/builtin_required_if.go b/util/gvalid/internal/builtin/builtin_required_if.go
index 71299eff3..df5ecaf24 100644
--- a/util/gvalid/internal/builtin/builtin_required_if.go
+++ b/util/gvalid/internal/builtin/builtin_required_if.go
@@ -10,10 +10,10 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredIf implements `required-if` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_if_all.go b/util/gvalid/internal/builtin/builtin_required_if_all.go
index de4f0d87d..ed8b51086 100644
--- a/util/gvalid/internal/builtin/builtin_required_if_all.go
+++ b/util/gvalid/internal/builtin/builtin_required_if_all.go
@@ -10,10 +10,10 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/errors/gcode"
- "github.com/gogf/gf/v2/errors/gerror"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/errors/gcode"
+ "github.com/gogf/gf/v3/errors/gerror"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredIfAll implements `required-if-all` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_unless.go b/util/gvalid/internal/builtin/builtin_required_unless.go
index b2e41a282..5fcfd3d4a 100644
--- a/util/gvalid/internal/builtin/builtin_required_unless.go
+++ b/util/gvalid/internal/builtin/builtin_required_unless.go
@@ -10,8 +10,8 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredUnless implements `required-unless` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_with.go b/util/gvalid/internal/builtin/builtin_required_with.go
index c82044c17..73512d5c7 100644
--- a/util/gvalid/internal/builtin/builtin_required_with.go
+++ b/util/gvalid/internal/builtin/builtin_required_with.go
@@ -10,8 +10,8 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredWith implements `required-with` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_with_all.go b/util/gvalid/internal/builtin/builtin_required_with_all.go
index 5fd2c4acd..985c1d748 100644
--- a/util/gvalid/internal/builtin/builtin_required_with_all.go
+++ b/util/gvalid/internal/builtin/builtin_required_with_all.go
@@ -10,8 +10,8 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredWithAll implements `required-with-all` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_without.go b/util/gvalid/internal/builtin/builtin_required_without.go
index 82465341b..b589756a3 100644
--- a/util/gvalid/internal/builtin/builtin_required_without.go
+++ b/util/gvalid/internal/builtin/builtin_required_without.go
@@ -10,8 +10,8 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredWithout implements `required-without` rule:
diff --git a/util/gvalid/internal/builtin/builtin_required_without_all.go b/util/gvalid/internal/builtin/builtin_required_without_all.go
index e55101266..c5c2bfd87 100644
--- a/util/gvalid/internal/builtin/builtin_required_without_all.go
+++ b/util/gvalid/internal/builtin/builtin_required_without_all.go
@@ -10,8 +10,8 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/internal/empty"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/internal/empty"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleRequiredWithoutAll implements `required-without-all` rule:
diff --git a/util/gvalid/internal/builtin/builtin_resident_id.go b/util/gvalid/internal/builtin/builtin_resident_id.go
index 3da02e786..3f835debf 100644
--- a/util/gvalid/internal/builtin/builtin_resident_id.go
+++ b/util/gvalid/internal/builtin/builtin_resident_id.go
@@ -11,7 +11,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleResidentId implements `resident-id` rule:
diff --git a/util/gvalid/internal/builtin/builtin_same.go b/util/gvalid/internal/builtin/builtin_same.go
index 2ac234ddb..14cc0024b 100644
--- a/util/gvalid/internal/builtin/builtin_same.go
+++ b/util/gvalid/internal/builtin/builtin_same.go
@@ -10,9 +10,9 @@ import (
"errors"
"strings"
- "github.com/gogf/gf/v2/text/gstr"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/gogf/gf/v2/util/gutil"
+ "github.com/gogf/gf/v3/text/gstr"
+ "github.com/gogf/gf/v3/util/gconv"
+ "github.com/gogf/gf/v3/util/gutil"
)
// RuleSame implements `same` rule:
diff --git a/util/gvalid/internal/builtin/builtin_size.go b/util/gvalid/internal/builtin/builtin_size.go
index becf32b79..713822e39 100644
--- a/util/gvalid/internal/builtin/builtin_size.go
+++ b/util/gvalid/internal/builtin/builtin_size.go
@@ -11,7 +11,7 @@ import (
"strconv"
"strings"
- "github.com/gogf/gf/v2/util/gconv"
+ "github.com/gogf/gf/v3/util/gconv"
)
// RuleSize implements `size` rule:
diff --git a/util/gvalid/internal/builtin/builtin_telephone.go b/util/gvalid/internal/builtin/builtin_telephone.go
index 1adb7a615..e9c8e8d26 100644
--- a/util/gvalid/internal/builtin/builtin_telephone.go
+++ b/util/gvalid/internal/builtin/builtin_telephone.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleTelephone implements `telephone` rule:
diff --git a/util/gvalid/internal/builtin/builtin_url.go b/util/gvalid/internal/builtin/builtin_url.go
index cb4e356a0..b35e79542 100644
--- a/util/gvalid/internal/builtin/builtin_url.go
+++ b/util/gvalid/internal/builtin/builtin_url.go
@@ -9,7 +9,7 @@ package builtin
import (
"errors"
- "github.com/gogf/gf/v2/text/gregex"
+ "github.com/gogf/gf/v3/text/gregex"
)
// RuleUrl implements `url` rule:
diff --git a/version.go b/version.go
index cd0daf596..1d06669ab 100644
--- a/version.go
+++ b/version.go
@@ -2,5 +2,5 @@ package gf
const (
// VERSION is the current GoFrame version.
- VERSION = "v2.9.0"
+ VERSION = "v3.0.0-alpha"
)