From 6f9ef0d55803f0074ebb71ad913ce14a23fcfc8b Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Fri, 10 Mar 2023 09:02:11 +0400 Subject: [PATCH 1/2] Document explicit telemetry sharing (#2169) --- .../handlers/common/aggregations/stage.go | 2 +- website/docs/telemetry.md | 41 ++++++++++++++----- 2 files changed, 32 insertions(+), 11 deletions(-) diff --git a/internal/handlers/common/aggregations/stage.go b/internal/handlers/common/aggregations/stage.go index 9b07728b8572..2b0bdcd746ca 100644 --- a/internal/handlers/common/aggregations/stage.go +++ b/internal/handlers/common/aggregations/stage.go @@ -58,7 +58,7 @@ func NewStage(stage *types.Document) (Stage, error) { return nil, commonerrors.NewCommandErrorMsgWithArgument( commonerrors.ErrNotImplemented, fmt.Sprintf("`aggregate` stage %q is not implemented yet", name), - name, + name+" (stage)", // to differentiate update operator $set from aggregation stage $set, etc ) } diff --git a/website/docs/telemetry.md b/website/docs/telemetry.md index c14816955abb..f7e731197682 100644 --- a/website/docs/telemetry.md +++ b/website/docs/telemetry.md @@ -13,7 +13,7 @@ Your privacy is important to us, and we understand how sensitive data collection which is why we are not collecting any personally-identifying information or share any of the data with third parties. -The following data will be collected: +The following data is collected: * FerretDB version * Random instance UUID @@ -69,20 +69,20 @@ If you disable telemetry, automated version checks and information on updates wi Telemetry can be disabled using any of the following options: 1. Pass the command-line flag `--telemetry` to the FerretDB executable with value: - `0`, `f`, `false`, `n`, `no`, `off`, `disable`, `disabled`, `optout`, `opt-out`, `disallow`, `forbid`: + `0`, `f`, `false`, `n`, `no`, `off`, `disable`, `disabled`, `optout`, `opt-out`, `disallow`, `forbid`. ```sh --telemetry=disable ``` -2. Set the environment variable `FERRETDB_TELEMETRY`: +2. Set the environment variable `FERRETDB_TELEMETRY`. ```sh export FERRETDB_TELEMETRY=disable ``` 3. Set the `DO_NOT_TRACK` environment variable with any of the following values: - `1`, `t`, `true`, `y`, `yes`, `on`, `enable`, `enabled`: + `1`, `t`, `true`, `y`, `yes`, `on`, `enable`, `enabled`. ```sh export DO_NOT_TRACK=true @@ -108,16 +108,37 @@ Telemetry can be disabled using any of the following options: ### Enable Telemetry -If telemetry is disabled, enable telemetry with the command-line flag `--telemetry` and assign any of these values to it: -`1`, `t`, `true`, `y`, `yes`, `on`, `enable`, `enabled`, `optin`, `opt-in`, `allow`: +Telemetry can be explicitly enabled (see [above](#configure-telemetry)) with the command-line flag `--telemetry` +by setting one of the values: +`1`, `t`, `true`, `y`, `yes`, `on`, `enable`, `enabled`, `optin`, `opt-in`, `allow`. ```sh --telemetry=enable ``` -You can also use `FERRETDB_TELEMETRY` environment variable with same values. +You can also use `FERRETDB_TELEMETRY` environment variable with same values +or on runtime via `db.enableFreeMonitoring()` command. -If telemetry is disabled with a `donottrack` string in the executable, -remove the `donottrack` string to use the command-line flag and values again. + ```sh + export FERRETDB_TELEMETRY=enable + ``` + + ```js + db.enableFreeMonitoring() + ``` -It's also possible to enable telemetry on runtime via `db.enableFreeMonitoring()` command. +One case when explicitly enabling telemetry is useful is if you want to help us improve compatibility +with your application by running its integration tests or just by testing it manually. +If you leave the telemetry state undecided and your test lasts less than an hour, +we will not have data about unimplemented commands and errors. + +If you want to help us with that, please do the following: + +1. Start FerretDB with [debug logging](flags.md) and telemetry explicitly enabled. + Confirm that telemetry is enabled from the logs. +2. Test your application with integration tests or manually. +3. Gracefully stop FerretDB with `SIGTERM` or `docker stop` (not with `SIGKILL` or `docker kill`). +4. Optionally, locate instance UUID in the `state.json` file in the state directory + (`/state` for Docker, current directory otherwise) and send it to us. + That would allow us to locate your data and understand what FerretDB functionality + should be implemented or fixed to improve compatibility with your application. From 566611dc77985b2a0541e74c561da6a62dfc5157 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Fri, 10 Mar 2023 09:03:14 +0400 Subject: [PATCH 2/2] Bump deps, minor cleanup (#2176) --- .github/ISSUE_TEMPLATE/bug.yml | 4 --- .gitignore | 3 -- build/deps/tigris.Dockerfile | 2 +- build/deps/trivy.Dockerfile | 2 +- go.mod | 6 ++-- go.sum | 12 ++++---- integration/go.mod | 6 ++-- integration/go.sum | 12 ++++---- internal/handlers/tigris/tjson/datetime.go | 4 +-- internal/types/object_id.go | 7 +++-- tools/go.mod | 16 +++++------ tools/go.sum | 32 +++++++++++----------- 12 files changed, 51 insertions(+), 55 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 0e3515c0babe..c19305e6c642 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -46,16 +46,12 @@ body: - **OS**: Ubuntu 22.04 - **Architecture**: x86_64 - **Version**: v0.9.0 - - **Go version**: 1.20.1 - - **Git version**: 2.39.2 - **Deployment**: Docker - **Deployment details**: Docker version 20.10.23 value: | - OS: - Architecture: - Version: - - Go: - - Git: - Deployment: - Deployment details: render: markdown diff --git a/.gitignore b/.gitignore index e6428ab1cc57..386ca54e2311 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,3 @@ vendor/ state.json tmp/ website/build/ - -# for local Docker Compse changes; see https://docs.docker.com/compose/extends/#multiple-compose-files -docker-compose.override.yml diff --git a/build/deps/tigris.Dockerfile b/build/deps/tigris.Dockerfile index b516bdc75958..df1f9fa620ab 100644 --- a/build/deps/tigris.Dockerfile +++ b/build/deps/tigris.Dockerfile @@ -1 +1 @@ -FROM tigrisdata/tigris-local:1.0.0-beta.48 +FROM tigrisdata/tigris-local:1.0.0-beta.50 diff --git a/build/deps/trivy.Dockerfile b/build/deps/trivy.Dockerfile index 294c5116de7c..74ff68bbfc01 100644 --- a/build/deps/trivy.Dockerfile +++ b/build/deps/trivy.Dockerfile @@ -1,2 +1,2 @@ -FROM aquasec/trivy:0.38.1 +FROM aquasec/trivy:0.38.2 WORKDIR /workdir diff --git a/go.mod b/go.mod index 32f73afadbf1..15cf477678e7 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,7 @@ go 1.20 require ( github.com/AlekSi/pointer v1.2.0 - github.com/SAP/go-hdb v1.1.1 + github.com/SAP/go-hdb v1.1.2 github.com/alecthomas/kong v0.7.1 github.com/google/uuid v1.3.0 github.com/jackc/pgconn v1.14.0 @@ -13,13 +13,13 @@ require ( github.com/pmezard/go-difflib v1.0.0 github.com/prometheus/client_golang v1.14.0 github.com/prometheus/client_model v0.3.0 - github.com/prometheus/common v0.41.0 + github.com/prometheus/common v0.42.0 github.com/stretchr/testify v1.8.2 github.com/tigrisdata/tigris-client-go v1.0.0-beta.24 go.opentelemetry.io/otel v1.14.0 go.uber.org/zap v1.24.0 golang.org/x/crypto v0.7.0 // indirect; always use @latest - golang.org/x/exp v0.0.0-20230304125523-9ff063c70017 + golang.org/x/exp v0.0.0-20230307190834-24139beb5833 golang.org/x/net v0.8.0 golang.org/x/sys v0.6.0 ) diff --git a/go.sum b/go.sum index 3cfdf59a0cbd..1f7968cf0c08 100644 --- a/go.sum +++ b/go.sum @@ -10,8 +10,8 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= -github.com/SAP/go-hdb v1.1.1 h1:C2wAjcQxzStJmDXlFdNYgqvDATHmgh00yDpTcTgZwJU= -github.com/SAP/go-hdb v1.1.1/go.mod h1:9SUyBwe2Iyp3MigpVZvooq3G7B9kJEe+YfKNDhC2VZE= +github.com/SAP/go-hdb v1.1.2 h1:Xd98A6DlWflaQCj9iZ0H4MKcVyWXjIA0ihlyddqXQ38= +github.com/SAP/go-hdb v1.1.2/go.mod h1:pQa7aqyiR1MbpYebkm4GRiNQt/T/glbVjfGOH5LrBYM= github.com/alecthomas/assert/v2 v2.1.0 h1:tbredtNcQnoSd3QBhQWI7QZ3XHOVkw1Moklp2ojoH/0= github.com/alecthomas/kong v0.7.1 h1:azoTh0IOfwlAX3qN9sHWTxACE2oV8Bg2gAwBsMwDQY4= github.com/alecthomas/kong v0.7.1/go.mod h1:n1iCIO2xS46oE8ZfYCNDqdR0b0wZNrXAIAqro/2132U= @@ -230,8 +230,8 @@ github.com/prometheus/client_golang v1.14.0/go.mod h1:8vpkKitgIVNcqrRBWh1C4TIUQg github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= -github.com/prometheus/common v0.41.0 h1:npo01n6vUlRViIj5fgwiK8vlNIh8bnoxqh3gypKsyAw= -github.com/prometheus/common v0.41.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= +github.com/prometheus/common v0.42.0 h1:EKsfXEYo4JpWMHH5cg+KOUWeuJSov1Id8zGR8eeI1YM= +github.com/prometheus/common v0.42.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= github.com/prometheus/procfs v0.9.0 h1:wzCHvIvM5SxWqYvwgVL7yJY8Lz3PKn49KQtpgMYJfhI= github.com/prometheus/procfs v0.9.0/go.mod h1:+pB4zwohETzFnmlpe6yd2lSc+0/46IYZRB/chUwxUZY= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= @@ -314,8 +314,8 @@ golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58 golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20230304125523-9ff063c70017 h1:3Ea9SZLCB0aRIhSEjM+iaGIlzzeDJdpi579El/YIhEE= -golang.org/x/exp v0.0.0-20230304125523-9ff063c70017/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833 h1:SChBja7BCQewoTAU7IgvucQKMIXrEpFxNMs0spT3/5s= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= diff --git a/integration/go.mod b/integration/go.mod index bf49dc818f15..2a4bad1179ca 100644 --- a/integration/go.mod +++ b/integration/go.mod @@ -18,13 +18,13 @@ require ( go.opentelemetry.io/otel/exporters/jaeger v1.14.0 go.opentelemetry.io/otel/sdk v1.14.0 go.uber.org/zap v1.24.0 - golang.org/x/exp v0.0.0-20230304125523-9ff063c70017 + golang.org/x/exp v0.0.0-20230307190834-24139beb5833 ) require ( cloud.google.com/go/compute v1.18.0 // indirect cloud.google.com/go/compute/metadata v0.2.3 // indirect - github.com/SAP/go-hdb v1.1.1 // indirect + github.com/SAP/go-hdb v1.1.2 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/benbjohnson/clock v1.1.0 // indirect github.com/beorn7/perks v1.0.1 // indirect @@ -68,7 +68,7 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/prometheus/client_model v0.3.0 // indirect - github.com/prometheus/common v0.41.0 // indirect + github.com/prometheus/common v0.42.0 // indirect github.com/prometheus/procfs v0.9.0 // indirect github.com/tigrisdata/tigris-client-go v1.0.0-beta.24 // indirect github.com/xdg-go/pbkdf2 v1.0.0 // indirect diff --git a/integration/go.sum b/integration/go.sum index 52a312b221c1..39b5306acb55 100644 --- a/integration/go.sum +++ b/integration/go.sum @@ -10,8 +10,8 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= -github.com/SAP/go-hdb v1.1.1 h1:C2wAjcQxzStJmDXlFdNYgqvDATHmgh00yDpTcTgZwJU= -github.com/SAP/go-hdb v1.1.1/go.mod h1:9SUyBwe2Iyp3MigpVZvooq3G7B9kJEe+YfKNDhC2VZE= +github.com/SAP/go-hdb v1.1.2 h1:Xd98A6DlWflaQCj9iZ0H4MKcVyWXjIA0ihlyddqXQ38= +github.com/SAP/go-hdb v1.1.2/go.mod h1:pQa7aqyiR1MbpYebkm4GRiNQt/T/glbVjfGOH5LrBYM= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= @@ -233,8 +233,8 @@ github.com/prometheus/client_golang v1.14.0/go.mod h1:8vpkKitgIVNcqrRBWh1C4TIUQg github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= -github.com/prometheus/common v0.41.0 h1:npo01n6vUlRViIj5fgwiK8vlNIh8bnoxqh3gypKsyAw= -github.com/prometheus/common v0.41.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= +github.com/prometheus/common v0.42.0 h1:EKsfXEYo4JpWMHH5cg+KOUWeuJSov1Id8zGR8eeI1YM= +github.com/prometheus/common v0.42.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= github.com/prometheus/procfs v0.9.0 h1:wzCHvIvM5SxWqYvwgVL7yJY8Lz3PKn49KQtpgMYJfhI= github.com/prometheus/procfs v0.9.0/go.mod h1:+pB4zwohETzFnmlpe6yd2lSc+0/46IYZRB/chUwxUZY= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= @@ -338,8 +338,8 @@ golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58 golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20230304125523-9ff063c70017 h1:3Ea9SZLCB0aRIhSEjM+iaGIlzzeDJdpi579El/YIhEE= -golang.org/x/exp v0.0.0-20230304125523-9ff063c70017/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833 h1:SChBja7BCQewoTAU7IgvucQKMIXrEpFxNMs0spT3/5s= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= diff --git a/internal/handlers/tigris/tjson/datetime.go b/internal/handlers/tigris/tjson/datetime.go index ac516e8c0709..acb1401663f7 100644 --- a/internal/handlers/tigris/tjson/datetime.go +++ b/internal/handlers/tigris/tjson/datetime.go @@ -51,14 +51,14 @@ func (dt *dateTimeType) UnmarshalJSON(data []byte) error { return lazyerrors.Error(err) } - *dt = dateTimeType(time.UnixMilli(o.UnixMilli()).UTC()) + *dt = dateTimeType(o.Truncate(time.Millisecond).UTC()) return nil } // MarshalJSON implements tjsontype interface. func (dt *dateTimeType) MarshalJSON() ([]byte, error) { - res, err := json.Marshal(time.UnixMilli(time.Time(*dt).UnixMilli()).UTC()) + res, err := json.Marshal(time.Time(*dt).Truncate(time.Millisecond).UTC()) if err != nil { return nil, lazyerrors.Error(err) } diff --git a/internal/types/object_id.go b/internal/types/object_id.go index 5f33b029efb1..f22ebca263e8 100644 --- a/internal/types/object_id.go +++ b/internal/types/object_id.go @@ -20,6 +20,7 @@ import ( "sync/atomic" "time" + "github.com/FerretDB/FerretDB/internal/util/debugbuild" "github.com/FerretDB/FerretDB/internal/util/must" ) @@ -59,8 +60,10 @@ var ( ) func init() { - // TODO remove for Go 1.20 - rand.Seed(time.Now().UnixNano()) + // to make debugging easier + if debugbuild.Enabled { + return + } must.NotFail(rand.Read(objectIDProcess[:])) objectIDCounter.Store(rand.Uint32()) diff --git a/tools/go.mod b/tools/go.mod index 04753737a6aa..c81f707f39b1 100644 --- a/tools/go.mod +++ b/tools/go.mod @@ -10,8 +10,8 @@ require ( github.com/quasilyte/go-consistent v0.0.0-20220429160651-4e46040fbc82 github.com/reviewdog/reviewdog v0.14.1 golang.org/x/perf v0.0.0-20230227161431-f7320a6d63e8 - golang.org/x/tools v0.6.1-0.20230217175706-3102dad5faf9 - golang.org/x/vuln v0.0.0-20230303230808-d3042fecc4e3 + golang.org/x/tools v0.7.0 + golang.org/x/vuln v0.0.0-20230309043308-bbc736fc3bc1 mvdan.cc/gofumpt v0.4.0 ) @@ -238,16 +238,16 @@ require ( go.uber.org/multierr v1.8.0 // indirect go.uber.org/zap v1.21.0 // indirect golang.org/x/build v0.0.0-20200616162219-07bebbe343e9 // indirect - golang.org/x/crypto v0.5.0 // indirect + golang.org/x/crypto v0.7.0 // indirect golang.org/x/exp v0.0.0-20230212135524-a684f29349b6 // indirect golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9 // indirect - golang.org/x/mod v0.8.0 // indirect - golang.org/x/net v0.7.0 // indirect + golang.org/x/mod v0.9.0 // indirect + golang.org/x/net v0.8.0 // indirect golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783 // indirect golang.org/x/sync v0.1.0 // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/term v0.5.0 // indirect - golang.org/x/text v0.7.0 // indirect + golang.org/x/sys v0.6.0 // indirect + golang.org/x/term v0.6.0 // indirect + golang.org/x/text v0.8.0 // indirect golang.org/x/time v0.1.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.107.0 // indirect diff --git a/tools/go.sum b/tools/go.sum index bbbe5ea54fe9..3540dd582fea 100644 --- a/tools/go.sum +++ b/tools/go.sum @@ -813,8 +813,8 @@ golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= -golang.org/x/crypto v0.5.0 h1:U/0M97KRkSFvyD/3FSmdP5W5swImpNgle/EHFhOsQPE= -golang.org/x/crypto v0.5.0/go.mod h1:NK/OQwhpMQP3MwtdjgLlYHnH9ebylxKWv3e0fK+mkQU= +golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= +golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -872,8 +872,8 @@ golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.9.0 h1:KENHtAZL2y3NLMYZeHY9DW8HW8V+kQyJsY/V9JlKvCs= +golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -916,8 +916,8 @@ golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/oauth2 v0.0.0-20170207211851-4464e7848382/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1010,16 +1010,16 @@ golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= -golang.org/x/term v0.5.0 h1:n2a8QNdAb0sZNpU9R1ALUXBbY+w51fCQDN+7EdxNBsY= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.6.0 h1:clScbb1cHjoCkyRbWwBEUZ5H/tIFu5TAXIqaZD0Gcjw= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1032,8 +1032,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -1118,10 +1118,10 @@ golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= -golang.org/x/tools v0.6.1-0.20230217175706-3102dad5faf9 h1:IuFp2CklNBim6OdHXn/1P4VoeKt5pA2jcDKWlboqtlQ= -golang.org/x/tools v0.6.1-0.20230217175706-3102dad5faf9/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/vuln v0.0.0-20230303230808-d3042fecc4e3 h1:9GJsAwSzB/ztwMwsEm3ihUgCXHCULbNsubxqIrdKa44= -golang.org/x/vuln v0.0.0-20230303230808-d3042fecc4e3/go.mod h1:LTLnfk/dpXDNKsX6aCg/cI4LyCVnTyrQhgV/yLJuly0= +golang.org/x/tools v0.7.0 h1:W4OVu8VVOaIO0yzWMNdepAulS7YfoS3Zabrm8DOXXU4= +golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= +golang.org/x/vuln v0.0.0-20230309043308-bbc736fc3bc1 h1:lr8cfq4uFU13nGjPkaOMqL70RLn3m8H2aAwAhmcXrnk= +golang.org/x/vuln v0.0.0-20230309043308-bbc736fc3bc1/go.mod h1:ydpjOTRSBwOBFJRP/w5NF2HSPnFg1JxobEZQGOirxgo= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=