From 502b9fe4d278a381dbac162d06944c17a1f8c496 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:19:20 +0400 Subject: [PATCH 01/15] Add repository settings --- .github/settings.yml | 61 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 .github/settings.yml diff --git a/.github/settings.yml b/.github/settings.yml new file mode 100644 index 000000000..b806061e6 --- /dev/null +++ b/.github/settings.yml @@ -0,0 +1,61 @@ +--- +# https://github.com/repository-settings/app + +repository: + allow_squash_merge: true + allow_merge_commit: false + allow_rebase_merge: false + delete_branch_on_merge: true + enable_automated_security_fixes: true + enable_vulnerability_alerts: true + +# https://docs.github.com/en/rest/issues/labels +labels: + - name: badly estimated + color: "#FF3333" + description: Scope, difficulty and/or clarify were different + + - name: code/chore + color: "#E99695" + description: Dance tool code maintenance improvements + + - name: code/enhancement + color: "#FBCA04" + description: Some dance tool feature could work better + + - name: code/feature + color: "#0E8A16" + description: Some dance tool feature is not implemented yet + + - name: conflict + color: "#FF0000" + description: PRs that have merge conflicts + + - name: deps + color: "#D4C5F9" + description: PRs that update dependencies + + - name: do not merge + color: "#0052CC" + description: PRs that should not be merged + + - name: good first issue + color: "#5319E7" + description: Good issues for new external contributors + + - name: help wanted + color: "#006B75" + description: Issues that require extra attention + + - name: not ready + color: "#000000" + description: Issues that are not ready to be worked on; PRs that should skip CI + + # https://hacktoberfest.com/participation/#spam + - name: spam + color: "#C5DEF5" + description: Spam issues and PRs + + - name: trust + color: "#00FF00" + description: PRs that can access Actions secrets From 767a365a1ca07d1001813902ac5352b1dd58b920 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:19:52 +0400 Subject: [PATCH 02/15] Sync Mergify config --- .github/mergify.yml | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/.github/mergify.yml b/.github/mergify.yml index 8070370e5..208f0cccc 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -1,20 +1,43 @@ --- -# see https://docs.mergify.com/configuration/ -pull_request_rules: - - name: "Update out-of-date ready PRs" +# see https://docs.mergify.com/ +pull_request_rules: + - name: "Update out-of-date approved PRs" conditions: - # those rules are implicit + # those rules are implicit for the update action: # - "#commits-behind > 0" # - "-closed" - - "-conflict" - "-draft" - "-locked" - "-merged" - "author != dependabot[bot]" - "base = main" + - "branch-protection-review-decision = APPROVED" - "label != 'not ready'" - actions: update: + + - name: "Assign PRs" + conditions: + - "-closed" + - "#assignee = 0" + actions: + assign: + add_users: ["{{ author }}"] + + - name: "Add label on conflicts" + conditions: + - "conflict" + actions: + comment: + message: "@{{author}} this pull request has merge conflicts." + label: + add: [conflict] + + - name: "Remove label when conflicts were resolved" + conditions: + - "-conflict" + actions: + label: + remove: [conflict] From 188903001b6b8b394bb0d11216be1b4609cb815f Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:20:14 +0400 Subject: [PATCH 03/15] Cleanup --- .gitmodules | 8 ++++---- tests/enmeshed-runtime.yml | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index 3e22bc461..6dd98448e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,6 +2,10 @@ path = tests/dotnet-example url = https://github.com/FerretDB/dotnet-example.git branch = main +[submodule "enmeshed-runtime"] + path = tests/enmeshed-runtime + url = https://github.com/nmshd/cns-runtime.git + branch = main [submodule "java-example"] path = tests/java-example url = https://github.com/FerretDB/java-example.git @@ -22,7 +26,3 @@ path = tests/python-example url = https://github.com/FerretDB/python-example.git branch = main -[submodule "enmeshed-runtime"] - path = tests/enmeshed-runtime - url = https://github.com/nmshd/cns-runtime.git - branch = main diff --git a/tests/enmeshed-runtime.yml b/tests/enmeshed-runtime.yml index e79da12cc..6f76ab6b6 100644 --- a/tests/enmeshed-runtime.yml +++ b/tests/enmeshed-runtime.yml @@ -1,6 +1,5 @@ --- runner: command -dir: enmeshed-runtime args: ["sh", "-c", "npm i && CONNECTION_STRING=mongodb://localhost:27017 npx jest -i"] results: From c1e94fb8adb66288132f1c1b414b7f3305c2d98a Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:21:01 +0400 Subject: [PATCH 04/15] Bump deps --- go.mod | 6 ++-- go.sum | 12 +++---- tools/go.mod | 48 +++++++++++++------------- tools/go.sum | 96 ++++++++++++++++++++++++++-------------------------- 4 files changed, 81 insertions(+), 81 deletions(-) diff --git a/go.mod b/go.mod index 15ddeab13..2b0985b79 100644 --- a/go.mod +++ b/go.mod @@ -6,9 +6,9 @@ require ( github.com/AlekSi/pointer v1.2.0 github.com/pmezard/go-difflib v1.0.0 github.com/stretchr/testify v1.8.4 - go.mongodb.org/mongo-driver v1.12.0 - golang.org/x/exp v0.0.0-20230728194245-b0cb94b80691 - golang.org/x/sys v0.10.0 + go.mongodb.org/mongo-driver v1.12.1 + golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb + golang.org/x/sys v0.11.0 gopkg.in/yaml.v3 v3.0.1 ) diff --git a/go.sum b/go.sum index 9a6a8b86a..752d16e9b 100644 --- a/go.sum +++ b/go.sum @@ -23,14 +23,14 @@ github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gi github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -go.mongodb.org/mongo-driver v1.12.0 h1:aPx33jmn/rQuJXPQLZQ8NtfPQG8CaqgLThFtqRb0PiE= -go.mongodb.org/mongo-driver v1.12.0/go.mod h1:AZkxhPnFJUoH7kZlFkVKucV20K387miPfm7oimrSmK0= +go.mongodb.org/mongo-driver v1.12.1 h1:nLkghSU8fQNaK7oUmDhQFsnrtcoNy7Z6LVFKsEecqgE= +go.mongodb.org/mongo-driver v1.12.1/go.mod h1:/rGBTebI3XYboVmgz+Wv3Bcbl3aD0QF9zl6kDDw18rQ= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d h1:sK3txAijHtOK88l68nt020reeT1ZdKLIYetKl95FzVY= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/exp v0.0.0-20230728194245-b0cb94b80691 h1:/yRP+0AN7mf5DkD3BAI6TOFnd51gEoDEb8o35jIFtgw= -golang.org/x/exp v0.0.0-20230728194245-b0cb94b80691/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= +golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb h1:mIKbk8weKhSeLH2GmUTrvx8CjkyJmnU1wFmg59CUjFA= +golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= @@ -45,8 +45,8 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= -golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM= +golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/tools/go.mod b/tools/go.mod index 7344d37bc..59884061b 100644 --- a/tools/go.mod +++ b/tools/go.mod @@ -5,12 +5,12 @@ go 1.20 require ( github.com/BurntSushi/go-sumtype v0.0.0-20221020234012-480526a59796 github.com/go-task/task/v3 v3.28.0 - github.com/golangci/golangci-lint v1.53.3 + github.com/golangci/golangci-lint v1.54.1 github.com/pingcap/go-ycsb v1.0.1 github.com/quasilyte/go-consistent v0.6.0 github.com/reviewdog/reviewdog v0.14.2 golang.org/x/perf v0.0.0-20230717203022-1ba3a21238c9 - golang.org/x/tools v0.11.1 + golang.org/x/tools v0.12.0 golang.org/x/vuln v1.0.0 mvdan.cc/gofumpt v0.5.0 ) @@ -25,14 +25,14 @@ require ( cloud.google.com/go/iam v0.12.0 // indirect cloud.google.com/go/longrunning v0.4.1 // indirect cloud.google.com/go/spanner v1.44.0 // indirect - github.com/4meepo/tagalign v1.2.2 // indirect - github.com/Abirdcfly/dupword v0.0.11 // indirect + github.com/4meepo/tagalign v1.3.2 // indirect + github.com/Abirdcfly/dupword v0.0.12 // indirect github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 // indirect github.com/Antonboom/errname v0.1.10 // indirect github.com/Antonboom/nilnil v0.1.5 // indirect github.com/BurntSushi/toml v1.3.2 // indirect github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 // indirect - github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0 // indirect + github.com/GaijinEntertainment/go-exhaustruct/v3 v3.1.0 // indirect github.com/HdrHistogram/hdrhistogram-go v1.1.2 // indirect github.com/Masterminds/semver v1.5.0 // indirect github.com/Masterminds/semver/v3 v3.2.1 // indirect @@ -46,7 +46,7 @@ require ( github.com/alingse/asasalint v0.0.11 // indirect github.com/apache/thrift v0.0.0-20171203172758-327ebb6c2b6d // indirect github.com/apple/foundationdb/bindings/go v0.0.0-20200112054404-407dc0907f4f // indirect - github.com/ashanbrown/forbidigo v1.5.3 // indirect + github.com/ashanbrown/forbidigo v1.6.0 // indirect github.com/ashanbrown/makezero v1.1.1 // indirect github.com/aws/aws-sdk-go-v2 v1.16.16 // indirect github.com/aws/aws-sdk-go-v2/config v1.17.8 // indirect @@ -90,7 +90,7 @@ require ( github.com/coreos/go-systemd/v22 v22.3.2 // indirect github.com/curioswitch/go-reassign v0.2.0 // indirect github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 // indirect - github.com/daixiang0/gci v0.10.1 // indirect + github.com/daixiang0/gci v0.11.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/denis-tingaikin/go-header v0.4.3 // indirect github.com/dgraph-io/badger v1.5.4 // indirect @@ -107,7 +107,7 @@ require ( github.com/firefart/nonamedreturns v1.0.4 // indirect github.com/fsnotify/fsnotify v1.5.4 // indirect github.com/fzipp/gocyclo v0.6.0 // indirect - github.com/go-critic/go-critic v0.8.1 // indirect + github.com/go-critic/go-critic v0.9.0 // indirect github.com/go-ini/ini v1.49.0 // indirect github.com/go-redis/redis/v9 v9.0.0-rc.1 // indirect github.com/go-sql-driver/mysql v1.7.0 // indirect @@ -136,7 +136,7 @@ require ( github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 // indirect github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 // indirect github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca // indirect - github.com/golangci/misspell v0.4.0 // indirect + github.com/golangci/misspell v0.4.1 // indirect github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6 // indirect github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 // indirect github.com/google/btree v1.1.2 // indirect @@ -175,7 +175,7 @@ require ( github.com/kkHAIKE/contextcheck v1.1.4 // indirect github.com/klauspost/compress v1.13.6 // indirect github.com/kulti/thelper v0.6.3 // indirect - github.com/kunwardeep/paralleltest v1.0.7 // indirect + github.com/kunwardeep/paralleltest v1.0.8 // indirect github.com/kyoh86/exportloopref v0.1.11 // indirect github.com/ldez/gomoddirectives v0.2.3 // indirect github.com/ldez/tagliatelle v0.5.0 // indirect @@ -205,7 +205,7 @@ require ( github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect github.com/nishanths/exhaustive v0.11.0 // indirect github.com/nishanths/predeclared v0.2.2 // indirect - github.com/nunnatsa/ginkgolinter v0.12.1 // indirect + github.com/nunnatsa/ginkgolinter v0.13.3 // indirect github.com/olekukonko/tablewriter v0.0.5 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect github.com/pelletier/go-toml v1.9.5 // indirect @@ -216,12 +216,12 @@ require ( github.com/pingcap/log v0.0.0-20211215031037-e024ba4eb0ee // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/polyfloyd/go-errorlint v1.4.2 // indirect + github.com/polyfloyd/go-errorlint v1.4.3 // indirect github.com/prometheus/client_golang v1.13.0 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.37.0 // indirect github.com/prometheus/procfs v0.8.0 // indirect - github.com/quasilyte/go-ruleguard v0.3.19 // indirect + github.com/quasilyte/go-ruleguard v0.4.0 // indirect github.com/quasilyte/gogrep v0.5.0 // indirect github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect @@ -268,9 +268,9 @@ require ( github.com/tomarrell/wrapcheck/v2 v2.8.1 // indirect github.com/tommy-muehle/go-mnd/v2 v2.5.1 // indirect github.com/twmb/murmur3 v1.1.3 // indirect - github.com/ultraware/funlen v0.0.3 // indirect + github.com/ultraware/funlen v0.1.0 // indirect github.com/ultraware/whitespace v0.0.5 // indirect - github.com/uudashr/gocognit v1.0.6 // indirect + github.com/uudashr/gocognit v1.0.7 // indirect github.com/vvakame/sdlog v1.1.2 // indirect github.com/xanzy/go-gitlab v0.85.0 // indirect github.com/xdg-go/pbkdf2 v1.0.0 // indirect @@ -279,30 +279,30 @@ require ( github.com/xen0n/gosmopolitan v1.2.1 // indirect github.com/yagipy/maintidx v1.0.0 // indirect github.com/yeya24/promlinter v0.2.0 // indirect - github.com/ykadowak/zerologlint v0.1.2 // indirect + github.com/ykadowak/zerologlint v0.1.3 // indirect github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d // indirect github.com/yuin/gopher-lua v0.0.0-20181031023651-12c4817b42c5 // indirect - gitlab.com/bosi/decorder v0.2.3 // indirect + gitlab.com/bosi/decorder v0.4.0 // indirect go.etcd.io/etcd/api/v3 v3.5.4 // indirect go.etcd.io/etcd/client/pkg/v3 v3.5.4 // indirect go.etcd.io/etcd/client/v3 v3.5.4 // indirect go.mongodb.org/mongo-driver v1.11.3 // indirect go.opencensus.io v0.24.0 // indirect - go.tmz.dev/musttag v0.7.0 // indirect + go.tmz.dev/musttag v0.7.1 // indirect go.uber.org/atomic v1.9.0 // indirect go.uber.org/multierr v1.7.0 // indirect go.uber.org/zap v1.24.0 // indirect golang.org/x/build v0.0.0-20230616225607-2f704e01b36f // indirect - golang.org/x/crypto v0.11.0 // indirect + golang.org/x/crypto v0.12.0 // indirect golang.org/x/exp v0.0.0-20230510235704-dd950f8aeaea // indirect - golang.org/x/exp/typeparams v0.0.0-20230224173230-c95f2b4c22f2 // indirect + golang.org/x/exp/typeparams v0.0.0-20230307190834-24139beb5833 // indirect golang.org/x/mod v0.12.0 // indirect - golang.org/x/net v0.12.0 // indirect + golang.org/x/net v0.14.0 // indirect golang.org/x/oauth2 v0.9.0 // indirect golang.org/x/sync v0.3.0 // indirect - golang.org/x/sys v0.10.0 // indirect - golang.org/x/term v0.10.0 // indirect - golang.org/x/text v0.11.0 // indirect + golang.org/x/sys v0.11.0 // indirect + golang.org/x/term v0.11.0 // indirect + golang.org/x/text v0.12.0 // indirect golang.org/x/time v0.3.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.114.0 // indirect diff --git a/tools/go.sum b/tools/go.sum index 790f6d4b5..b6652d20b 100644 --- a/tools/go.sum +++ b/tools/go.sum @@ -57,10 +57,10 @@ cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9 cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8= -github.com/4meepo/tagalign v1.2.2 h1:kQeUTkFTaBRtd/7jm8OKJl9iHk0gAO+TDFPHGSna0aw= -github.com/4meepo/tagalign v1.2.2/go.mod h1:Q9c1rYMZJc9dPRkbQPpcBNCLEmY2njbAsXhQOZFE2dE= -github.com/Abirdcfly/dupword v0.0.11 h1:z6v8rMETchZXUIuHxYNmlUAuKuB21PeaSymTed16wgU= -github.com/Abirdcfly/dupword v0.0.11/go.mod h1:wH8mVGuf3CP5fsBTkfWwwwKTjDnVVCxtU8d8rgeVYXA= +github.com/4meepo/tagalign v1.3.2 h1:1idD3yxlRGV18VjqtDbqYvQ5pXqQS0wO2dn6M3XstvI= +github.com/4meepo/tagalign v1.3.2/go.mod h1:Q9c1rYMZJc9dPRkbQPpcBNCLEmY2njbAsXhQOZFE2dE= +github.com/Abirdcfly/dupword v0.0.12 h1:56NnOyrXzChj07BDFjeRA+IUzSz01jmzEq+G4kEgFhc= +github.com/Abirdcfly/dupword v0.0.12/go.mod h1:+us/TGct/nI9Ndcbcp3rgNcQzctTj68pq7TcgNpLfdI= github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 h1:PqzgE6kAMi81xWQA2QIVxjWkFHptGgC547vchpUbtFo= github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= github.com/Antonboom/errname v0.1.10 h1:RZ7cYo/GuZqjr1nuJLNe8ZH+a+Jd9DaZzttWzak9Bls= @@ -75,8 +75,8 @@ github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbi github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 h1:sHglBQTwgx+rWPdisA5ynNEsoARbiCBOyGcJM4/OzsM= github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24/go.mod h1:4UJr5HIiMZrwgkSPdsjy2uOQExX/WEILpIrO9UPGuXs= -github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0 h1:+r1rSv4gvYn0wmRjC8X7IAzX8QezqtFV9m0MUHFJgts= -github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0/go.mod h1:b3g59n2Y+T5xmcxJL+UEG2f8cQploZm1mR/v6BW0mU0= +github.com/GaijinEntertainment/go-exhaustruct/v3 v3.1.0 h1:3ZBs7LAezy8gh0uECsA6CGU43FF3zsx5f4eah5FxTMA= +github.com/GaijinEntertainment/go-exhaustruct/v3 v3.1.0/go.mod h1:rZLTje5A9kFBe0pzhpe2TdhRniBF++PRHQuRpR8esVc= github.com/GoogleCloudPlatform/cloudsql-proxy v0.0.0-20190129172621-c8b1d7a94ddf/go.mod h1:aJ4qN3TfrelA6NZ6AXsXRfmEVaYin3EDbSPJrKS8OXo= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= @@ -115,8 +115,8 @@ github.com/apache/thrift v0.0.0-20171203172758-327ebb6c2b6d h1:b/FqDLjWXDQI6XBYv github.com/apache/thrift v0.0.0-20171203172758-327ebb6c2b6d/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= github.com/apple/foundationdb/bindings/go v0.0.0-20200112054404-407dc0907f4f h1:HkQOU77BCH+BZPpzwNxm3zjUAt+N7mJWRAGxyCwAGZw= github.com/apple/foundationdb/bindings/go v0.0.0-20200112054404-407dc0907f4f/go.mod h1:OMVSB21p9+xQUIqlGizHPZfjK+SHws1ht+ZytVDoz9U= -github.com/ashanbrown/forbidigo v1.5.3 h1:jfg+fkm/snMx+V9FBwsl1d340BV/99kZGv5jN9hBoXk= -github.com/ashanbrown/forbidigo v1.5.3/go.mod h1:Y8j9jy9ZYAEHXdu723cUlraTqbzjKF1MUyfOKL+AjcU= +github.com/ashanbrown/forbidigo v1.6.0 h1:D3aewfM37Yb3pxHujIPSpTf6oQk9sc9WZi8gerOIVIY= +github.com/ashanbrown/forbidigo v1.6.0/go.mod h1:Y8j9jy9ZYAEHXdu723cUlraTqbzjKF1MUyfOKL+AjcU= github.com/ashanbrown/makezero v1.1.1 h1:iCQ87C0V0vSyO+M9E/FZYbu65auqH0lnsOkf5FcB28s= github.com/ashanbrown/makezero v1.1.1/go.mod h1:i1bJLCRSCHOcOa9Y6MyF2FTfMZMFdHvxKHxgO5Z1axI= github.com/aws/aws-sdk-go-v2 v1.16.16 h1:M1fj4FE2lB4NzRb9Y0xdWsn2P0+2UHVxwKyOa4YJNjk= @@ -234,8 +234,8 @@ github.com/curioswitch/go-reassign v0.2.0 h1:G9UZyOcpk/d7Gd6mqYgd8XYWFMw/znxwGDU github.com/curioswitch/go-reassign v0.2.0/go.mod h1:x6OpXuWvgfQaMGks2BZybTngWjT84hqJfKoO8Tt/Roc= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= -github.com/daixiang0/gci v0.10.1 h1:eheNA3ljF6SxnPD/vE4lCBusVHmV3Rs3dkKvFrJ7MR0= -github.com/daixiang0/gci v0.10.1/go.mod h1:xtHP9N7AHdNvtRNfcx9gwTDfw7FRJx4bZUsiEfiNNAI= +github.com/daixiang0/gci v0.11.0 h1:XeQbFKkCRxvVyn06EOuNY6LPGBLVuB/W130c8FrnX6A= +github.com/daixiang0/gci v0.11.0/go.mod h1:xtHP9N7AHdNvtRNfcx9gwTDfw7FRJx4bZUsiEfiNNAI= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -288,8 +288,8 @@ github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmV github.com/fzipp/gocyclo v0.6.0 h1:lsblElZG7d3ALtGMx9fmxeTKZaLLpU8mET09yN4BBLo= github.com/fzipp/gocyclo v0.6.0/go.mod h1:rXPyn8fnlpa0R2csP/31uerbiVBugk5whMdlyaLkLoA= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/go-critic/go-critic v0.8.1 h1:16omCF1gN3gTzt4j4J6fKI/HnRojhEp+Eks6EuKw3vw= -github.com/go-critic/go-critic v0.8.1/go.mod h1:kpzXl09SIJX1cr9TB/g/sAG+eFEl7ZS9f9cqvZtyNl0= +github.com/go-critic/go-critic v0.9.0 h1:Pmys9qvU3pSML/3GEQ2Xd9RZ/ip+aXHKILuxczKGV/U= +github.com/go-critic/go-critic v0.9.0/go.mod h1:5P8tdXL7m/6qnyG6oRAlYLORvoXH0WDypYgAEmagT40= github.com/go-fonts/dejavu v0.1.0/go.mod h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g= github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3T0ecnM9pNujks= github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= @@ -403,14 +403,14 @@ github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe h1:6RGUuS7EGotKx6 github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe/go.mod h1:gjqyPShc/m8pEMpk0a3SeagVb0kaqvhscv+i9jI5ZhQ= github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 h1:amWTbTGqOZ71ruzrdA+Nx5WA3tV1N0goTspwmKCQvBY= github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2/go.mod h1:9wOXstvyDRshQ9LggQuzBCGysxs3b6Uo/1MvYCR2NMs= -github.com/golangci/golangci-lint v1.53.3 h1:CUcRafczT4t1F+mvdkUm6KuOpxUZTl0yWN/rSU6sSMo= -github.com/golangci/golangci-lint v1.53.3/go.mod h1:W4Gg3ONq6p3Jl+0s/h9Gr0j7yEgHJWWZO2bHl2tBUXM= +github.com/golangci/golangci-lint v1.54.1 h1:0qMrH1gkeIBqCZaaAm5Fwq4xys9rO/lJofHfZURIFFk= +github.com/golangci/golangci-lint v1.54.1/go.mod h1:JK47+qksV/t2mAz9YvndwT0ZLW4A1rvDljOs3g9jblo= github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 h1:MfyDlzVjl1hoaPzPD4Gpb/QgoRfSBR0jdhwGyAWwMSA= github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0/go.mod h1:66R6K6P6VWk9I95jvqGxkqJxVWGFy9XlDwLwVz1RCFg= github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca h1:kNY3/svz5T29MYHubXix4aDDuE3RWHkPvopM/EDv/MA= github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca/go.mod h1:tvlJhZqDe4LMs4ZHD0oMUlt9G2LWuDGoisJTBzLMV9o= -github.com/golangci/misspell v0.4.0 h1:KtVB/hTK4bbL/S6bs64rYyk8adjmh1BygbBiaAiX+a0= -github.com/golangci/misspell v0.4.0/go.mod h1:W6O/bwV6lGDxUCChm2ykw9NQdd5bYd1Xkjo88UcWyJc= +github.com/golangci/misspell v0.4.1 h1:+y73iSicVy2PqyX7kmUefHusENlrP9YwuHZHPLGQj/g= +github.com/golangci/misspell v0.4.1/go.mod h1:9mAN1quEo3DlpbaIKKyEvRxK1pwqR9s/Sea1bJCtlNI= github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6 h1:DIPQnGy2Gv2FSA4B/hh8Q7xx3B7AIDk3DAMeHclH1vQ= github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6/go.mod h1:0AKcRCkMoKvUvlf89F6O7H2LYdhr1zBh736mBItOdRs= github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 h1:zwtduBRr5SSWhqsYNgcuWO2kFlpdOZbP0+yRjmvPGys= @@ -577,8 +577,8 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kulti/thelper v0.6.3 h1:ElhKf+AlItIu+xGnI990no4cE2+XaSu1ULymV2Yulxs= github.com/kulti/thelper v0.6.3/go.mod h1:DsqKShOvP40epevkFrvIwkCMNYxMeTNjdWL4dqWHZ6I= -github.com/kunwardeep/paralleltest v1.0.7 h1:2uCk94js0+nVNQoHZNLBkAR1DQJrVzw6T0RMzJn55dQ= -github.com/kunwardeep/paralleltest v1.0.7/go.mod h1:2C7s65hONVqY7Q5Efj5aLzRCNLjw2h4eMc9EcypGjcY= +github.com/kunwardeep/paralleltest v1.0.8 h1:Ul2KsqtzFxTlSU7IP0JusWlLiNqQaloB9vguyjbE558= +github.com/kunwardeep/paralleltest v1.0.8/go.mod h1:2C7s65hONVqY7Q5Efj5aLzRCNLjw2h4eMc9EcypGjcY= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/kyoh86/exportloopref v0.1.11 h1:1Z0bcmTypkL3Q4k+IDHMWTcnCliEZcaPiIe0/ymEyhQ= github.com/kyoh86/exportloopref v0.1.11/go.mod h1:qkV4UF1zGl6EkF1ox8L5t9SwyeBAZ3qLMd6up458uqA= @@ -652,8 +652,8 @@ github.com/nishanths/exhaustive v0.11.0 h1:T3I8nUGhl/Cwu5Z2hfc92l0e04D2GEW6e0l8p github.com/nishanths/exhaustive v0.11.0/go.mod h1:RqwDsZ1xY0dNdqHho2z6X+bgzizwbLYOWnZbbl2wLB4= github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= github.com/nishanths/predeclared v0.2.2/go.mod h1:RROzoN6TnGQupbC+lqggsOlcgysk3LMK/HI84Mp280c= -github.com/nunnatsa/ginkgolinter v0.12.1 h1:vwOqb5Nu05OikTXqhvLdHCGcx5uthIYIl0t79UVrERQ= -github.com/nunnatsa/ginkgolinter v0.12.1/go.mod h1:AK8Ab1PypVrcGUusuKD8RDcl2KgsIwvNaaxAlyHSzso= +github.com/nunnatsa/ginkgolinter v0.13.3 h1:wEvjrzSMfDdnoWkctignX9QTf4rT9f4GkQ3uVoXBmiU= +github.com/nunnatsa/ginkgolinter v0.13.3/go.mod h1:aTKXo8WddENYxNEFT+4ZxEgWXqlD9uMD3w9Bfw/ABEc= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= @@ -702,8 +702,8 @@ github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZ github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/polyfloyd/go-errorlint v1.4.2 h1:CU+O4181IxFDdPH6t/HT7IiDj1I7zxNi1RIUxYwn8d0= -github.com/polyfloyd/go-errorlint v1.4.2/go.mod h1:k6fU/+fQe38ednoZS51T7gSIGQW1y94d6TkSr35OzH8= +github.com/polyfloyd/go-errorlint v1.4.3 h1:P6NALOLV8BrWhm6PsqOraUK05E5h8IZnpXYJ+CIg+0U= +github.com/polyfloyd/go-errorlint v1.4.3/go.mod h1:VPlWPh6hB/wruVG803SuNpLuTGNjLHYlvcdSy4RhdPA= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= @@ -732,8 +732,8 @@ github.com/prometheus/procfs v0.8.0 h1:ODq8ZFEaYeCaZOJlZZdJA2AbQR98dSHSM1KW/You5 github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4= github.com/quasilyte/go-consistent v0.6.0 h1:tY8DYfgM+7ADpOyr5X47i8hV/XbMNoucqnqZWVjI+rU= github.com/quasilyte/go-consistent v0.6.0/go.mod h1:dKYK1JZl3150J1+Jh4cDYPCIu2MqybUBi0YVW2b2E6c= -github.com/quasilyte/go-ruleguard v0.3.19 h1:tfMnabXle/HzOb5Xe9CUZYWXKfkS1KwRmZyPmD9nVcc= -github.com/quasilyte/go-ruleguard v0.3.19/go.mod h1:lHSn69Scl48I7Gt9cX3VrbsZYvYiBYszZOZW4A+oTEw= +github.com/quasilyte/go-ruleguard v0.4.0 h1:DyM6r+TKL+xbKB4Nm7Afd1IQh9kEUKQs2pboWGKtvQo= +github.com/quasilyte/go-ruleguard v0.4.0/go.mod h1:Eu76Z/R8IXtViWUIHkE3p8gdH3/PKk1eh3YGfaEof10= github.com/quasilyte/gogrep v0.5.0 h1:eTKODPXbI8ffJMN+W2aE0+oL0z/nh8/5eNdiO34SOAo= github.com/quasilyte/gogrep v0.5.0/go.mod h1:Cm9lpz9NZjEoL1tgZ2OgeUKPIxL1meE7eo60Z6Sk+Ng= github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 h1:TCg2WBOl980XxGFEZSS6KlBGIV0diGdySzxATTWoqaU= @@ -864,12 +864,12 @@ github.com/tommy-muehle/go-mnd/v2 v2.5.1 h1:NowYhSdyE/1zwK9QCLeRb6USWdoif80Ie+v+ github.com/tommy-muehle/go-mnd/v2 v2.5.1/go.mod h1:WsUAkMJMYww6l/ufffCD3m+P7LEvr8TnZn9lwVDlgzw= github.com/twmb/murmur3 v1.1.3 h1:D83U0XYKcHRYwYIpBKf3Pks91Z0Byda/9SJ8B6EMRcA= github.com/twmb/murmur3 v1.1.3/go.mod h1:Qq/R7NUyOfr65zD+6Q5IHKsJLwP7exErjN6lyyq3OSQ= -github.com/ultraware/funlen v0.0.3 h1:5ylVWm8wsNwH5aWo9438pwvsK0QiqVuUrt9bn7S/iLA= -github.com/ultraware/funlen v0.0.3/go.mod h1:Dp4UiAus7Wdb9KUZsYWZEWiRzGuM2kXM1lPbfaF6xhA= +github.com/ultraware/funlen v0.1.0 h1:BuqclbkY6pO+cvxoq7OsktIXZpgBSkYTQtmwhAK81vI= +github.com/ultraware/funlen v0.1.0/go.mod h1:XJqmOQja6DpxarLj6Jj1U7JuoS8PvL4nEqDaQhy22p4= github.com/ultraware/whitespace v0.0.5 h1:hh+/cpIcopyMYbZNVov9iSxvJU3OYQg78Sfaqzi/CzI= github.com/ultraware/whitespace v0.0.5/go.mod h1:aVMh/gQve5Maj9hQ/hg+F75lr/X5A89uZnzAmWSineA= -github.com/uudashr/gocognit v1.0.6 h1:2Cgi6MweCsdB6kpcVQp7EW4U23iBFQWfTXiWlyp842Y= -github.com/uudashr/gocognit v1.0.6/go.mod h1:nAIUuVBnYU7pcninia3BHOvQkpQCeO76Uscky5BOwcY= +github.com/uudashr/gocognit v1.0.7 h1:e9aFXgKgUJrQ5+bs61zBigmj7bFJ/5cC6HmMahVzuDo= +github.com/uudashr/gocognit v1.0.7/go.mod h1:nAIUuVBnYU7pcninia3BHOvQkpQCeO76Uscky5BOwcY= github.com/vvakame/sdlog v1.1.2 h1:hWV5ESsYMn/vubf1uFWdkMJomrQucAU+9gc/S3A/JE8= github.com/vvakame/sdlog v1.1.2/go.mod h1:jQWcS5V7V6xNIpNUEdLRwWlub0SYicmkE9c6N6FgJ44= github.com/xanzy/go-gitlab v0.85.0 h1:E/wjnsd/mM5kV6O9y5+i6zxjx+wfAwa97sgcT1ETNwk= @@ -886,8 +886,8 @@ github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM github.com/yagipy/maintidx v1.0.0/go.mod h1:0qNf/I/CCZXSMhsRsrEPDZ+DkekpKLXAJfsTACwgXLk= github.com/yeya24/promlinter v0.2.0 h1:xFKDQ82orCU5jQujdaD8stOHiv8UN68BSdn2a8u8Y3o= github.com/yeya24/promlinter v0.2.0/go.mod h1:u54lkmBOZrpEbQQ6gox2zWKKLKu2SGe+2KOiextY+IA= -github.com/ykadowak/zerologlint v0.1.2 h1:Um4P5RMmelfjQqQJKtE8ZW+dLZrXrENeIzWWKw800U4= -github.com/ykadowak/zerologlint v0.1.2/go.mod h1:KaUskqF3e/v59oPmdq1U1DnKcuHokl2/K1U4pmIELKg= +github.com/ykadowak/zerologlint v0.1.3 h1:TLy1dTW3Nuc+YE3bYRPToG1Q9Ej78b5UUN6bjbGdxPE= +github.com/ykadowak/zerologlint v0.1.3/go.mod h1:KaUskqF3e/v59oPmdq1U1DnKcuHokl2/K1U4pmIELKg= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -899,8 +899,8 @@ github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1 github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/gopher-lua v0.0.0-20181031023651-12c4817b42c5 h1:d9vJ/8gXbVnNk8QFOxFZ7MN7TuHiuvolK1usz5KXVDo= github.com/yuin/gopher-lua v0.0.0-20181031023651-12c4817b42c5/go.mod h1:aEV29XrmTYFr3CiRxZeGHpkvbwq+prZduBqMaascyCU= -gitlab.com/bosi/decorder v0.2.3 h1:gX4/RgK16ijY8V+BRQHAySfQAb354T7/xQpDB2n10P0= -gitlab.com/bosi/decorder v0.2.3/go.mod h1:9K1RB5+VPNQYtXtTDAzd2OEftsZb1oV0IrJrzChSdGE= +gitlab.com/bosi/decorder v0.4.0 h1:HWuxAhSxIvsITcXeP+iIRg9d1cVfvVkmlF7M68GaoDY= +gitlab.com/bosi/decorder v0.4.0/go.mod h1:xarnteyUoJiOTEldDysquWKTVDCKo2TOIOIibSuWqOg= go-simpler.org/assert v0.5.0 h1:+5L/lajuQtzmbtEfh69sr5cRf2/xZzyJhFjoOz/PPqs= go.etcd.io/etcd/api/v3 v3.5.4 h1:OHVyt3TopwtUQ2GKdd5wu3PmmipR4FTwCqoEjSyRdIc= go.etcd.io/etcd/api/v3 v3.5.4/go.mod h1:5GB2vv4A4AOn3yk7MftYGHkUfGtDHnEraIjym4dYz5A= @@ -920,8 +920,8 @@ go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= -go.tmz.dev/musttag v0.7.0 h1:QfytzjTWGXZmChoX0L++7uQN+yRCPfyFm+whsM+lfGc= -go.tmz.dev/musttag v0.7.0/go.mod h1:oTFPvgOkJmp5kYL02S8+jrH0eLrBIl57rzWeA26zDEM= +go.tmz.dev/musttag v0.7.1 h1:9lFmeSFnFfPuMq4IksHGomItE6NgKMNW2Nt2FPOhCfU= +go.tmz.dev/musttag v0.7.1/go.mod h1:oJLkpR56EsIryktZJk/B0IroSMi37YWver47fibGh5U= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= @@ -963,8 +963,8 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0 golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= -golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.12.0 h1:tFM/ta59kqch6LlvYnPa0yx5a83cL2nHflFhYKvv9Yk= +golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw= golang.org/x/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= @@ -983,8 +983,8 @@ golang.org/x/exp v0.0.0-20230510235704-dd950f8aeaea h1:vLCWI/yYrdEHyN2JzIzPO3aaQ golang.org/x/exp v0.0.0-20230510235704-dd950f8aeaea/go.mod h1:V1LtkGg67GoY2N1AnLN78QLrzxkLyJw7RJb1gzOOz9w= golang.org/x/exp/typeparams v0.0.0-20220428152302-39d4317da171/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= -golang.org/x/exp/typeparams v0.0.0-20230224173230-c95f2b4c22f2 h1:J74nGeMgeFnYQJN59eFwh06jX/V8g0lB7LWpjSLxtgU= -golang.org/x/exp/typeparams v0.0.0-20230224173230-c95f2b4c22f2/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= +golang.org/x/exp/typeparams v0.0.0-20230307190834-24139beb5833 h1:jWGQJV4niP+CCmFW9ekjA9Zx8vYORzOUH2/Nl5WPuLQ= +golang.org/x/exp/typeparams v0.0.0-20230307190834-24139beb5833/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= @@ -1077,8 +1077,8 @@ golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50= -golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.14.0 h1:BONx9s002vGdD9umnlX1Po8vOZmrgH34qlHcD1MfK14= +golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/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= @@ -1178,8 +1178,8 @@ golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= -golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM= +golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -1188,8 +1188,8 @@ golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= -golang.org/x/term v0.10.0 h1:3R7pNqamzBraeqj/Tj8qt1aQ2HpmlC+Cx/qL/7hn4/c= -golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.11.0 h1:F9tnn/DA/Im8nCwm+fX+1/eBwi4qFjRT++MhtVC4ZX0= +golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU= 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= @@ -1204,8 +1204,8 @@ golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= -golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.12.0 h1:k+n5B8goJNdU7hSvEtMUz3d1Q6D/XW4COJSJR6fN0mc= +golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= 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= @@ -1290,8 +1290,8 @@ 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.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.11.1 h1:ojD5zOW8+7dOGzdnNgersm8aPfcDjhMp12UfG93NIMc= -golang.org/x/tools v0.11.1/go.mod h1:anzJrxPjNtfgiYQYirP2CPGzGLxrH2u2QBhn6Bf3qY8= +golang.org/x/tools v0.12.0 h1:YW6HUoUmYBpwSgyaGaZq1fHjrBjX1rlpZ54T6mu2kss= +golang.org/x/tools v0.12.0/go.mod h1:Sc0INKfu04TlqNoRA1hgpFZbhYXHPr4V5DzpSBTPqQM= golang.org/x/vuln v1.0.0 h1:tYLAU3jD9LQr98Y+3el06lWyGMCnvzw06PIWP3LIy7g= golang.org/x/vuln v1.0.0/go.mod h1:V0eyhHwaAaHrt42J9bgrN6rd12f6GU4T0Lu0ex2wDg4= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= From 1f7cc297bc2ace32a708587705bb8c8bb5b58b98 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:35:15 +0400 Subject: [PATCH 05/15] Add trusted configuration --- .github/workflows/conform-pr.yml | 2 + .github/workflows/dance-trust.yml | 111 ++++++++++++++++++++++++++++++ .github/workflows/dance.yml | 17 ++--- .github/workflows/linters.yml | 2 + tests/python-example-auth.yml | 5 +- tests/python-example.yml | 5 +- 6 files changed, 124 insertions(+), 18 deletions(-) create mode 100644 .github/workflows/dance-trust.yml diff --git a/.github/workflows/conform-pr.yml b/.github/workflows/conform-pr.yml index 7fd554423..833bb7b12 100644 --- a/.github/workflows/conform-pr.yml +++ b/.github/workflows/conform-pr.yml @@ -57,6 +57,8 @@ env: GOLANGCI_LINT_CACHE: /home/runner/go/cache/lint GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org + GOTOOLCHAIN: local + GOEXPERIMENT: loopvar GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CONFORM_TOKEN: ${{ secrets.CONFORM_TOKEN }} # repo-scoped GITHUB_TOKEN is not enough to query org-level projects diff --git a/.github/workflows/dance-trust.yml b/.github/workflows/dance-trust.yml new file mode 100644 index 000000000..7ead7494a --- /dev/null +++ b/.github/workflows/dance-trust.yml @@ -0,0 +1,111 @@ +--- +# Tests that need access to secrets. + +name: Dance trusted +on: + pull_request_target: + types: + # not for "labeled" to prevent two builds for "labeled" and "unlabeled" when labels are changed + - unlabeled # if GitHub Actions stuck, add and remove "not ready" label to force rebuild + - opened + - reopened + - synchronize + push: + branches: + - main + schedule: + - cron: "12 3 * * *" # after FerretDB's Docker workflow + +env: + GOPATH: /home/runner/go + GOCACHE: /home/runner/go/cache + GOLANGCI_LINT_CACHE: /home/runner/go/cache/lint + GOMODCACHE: /home/runner/go/mod + GOPROXY: https://proxy.golang.org + GOTOOLCHAIN: local + GOEXPERIMENT: loopvar + +jobs: + dance: + name: dance + runs-on: ubuntu-22.04 + timeout-minutes: 30 + + # Do not run this job in parallel for any PR change or branch push + # to save some resources. + concurrency: + group: ${{ github.workflow }}-dance-${{ matrix.db }}-${{ matrix.test }}-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true + + if: > + github.event_name != 'pull_request_target' || + ( + contains(github.event.pull_request.labels.*.name, 'trust') && + !contains(github.event.pull_request.labels.*.name, 'not ready') + ) + + strategy: + fail-fast: false + matrix: + db: + - ferretdb + - mongodb + test: + - enmeshed-runtime + + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + fetch-depth: 0 + submodules: recursive + + - name: Setup Go + uses: FerretDB/github-actions/setup-go@main + with: + cache-key: dance + + - name: Install Task + run: go generate -x + working-directory: tools + + - name: Start environment + run: bin/task env-up-detach + env: + FERRETDB_IMAGE: ghcr.io/ferretdb/ferretdb-dev:main + DB: ${{ matrix.db }} + + - name: Run init + run: bin/task init + + - name: Dance! + run: bin/task dance + env: + DB: ${{ matrix.db }} + TEST: ${{ matrix.test }} + NMSHD_TEST_BASEURL: ${{ secrets.NMSHD_TEST_BASEURL }} + NMSHD_TEST_CLIENTID: ${{ secrets.NMSHD_TEST_CLIENTID }} + NMSHD_TEST_CLIENTSECRET: ${{ secrets.NMSHD_TEST_CLIENTSECRET }} + + - name: Collect logs + if: failure() + run: | + bin/task env-logs-collect > /tmp/compose-logs.txt + + - name: Compress logs before upload + if: failure() + run: zip -q -9 compose-logs.zip /tmp/compose-logs.txt + + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v3 + with: + name: compose-logs-${{ matrix.db }}-${{ matrix.test }} + path: compose-logs.zip + retention-days: 1 + + # ignore `go mod tidy` being applied to the Go driver, etc + - name: Check dirty + run: | + git status --ignore-submodules=none + git diff --ignore-submodules=all --exit-code diff --git a/.github/workflows/dance.yml b/.github/workflows/dance.yml index 5fd2129ff..d2ea146b7 100644 --- a/.github/workflows/dance.yml +++ b/.github/workflows/dance.yml @@ -1,15 +1,15 @@ --- name: Dance on: - push: - branches: - - main pull_request: types: - unlabeled # if GitHub Actions stuck, add and remove "not ready" label to force rebuild - opened - reopened - synchronize + push: + branches: + - main schedule: - cron: "12 3 * * *" # after FerretDB's Docker workflow @@ -19,6 +19,8 @@ env: GOLANGCI_LINT_CACHE: /home/runner/go/cache/lint GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org + GOTOOLCHAIN: local + GOEXPERIMENT: loopvar jobs: dance: @@ -47,11 +49,11 @@ jobs: - dotnet-example-auth - java-example - java-example-auth - - python-example - - python-example-auth - mongo - mongo-go-driver - mongo-tools + - python-example + - python-example-auth - ycsb-workloada - ycsb-workloadc @@ -67,11 +69,6 @@ jobs: with: cache-key: dance - # set up Python build environment - - name: Install Python dependencies - run: | - pip3 install pymongo - - name: Install Task run: go generate -x working-directory: tools diff --git a/.github/workflows/linters.yml b/.github/workflows/linters.yml index 55ab2760a..923680bf5 100644 --- a/.github/workflows/linters.yml +++ b/.github/workflows/linters.yml @@ -24,6 +24,8 @@ env: GOLANGCI_LINT_CACHE: /home/runner/go/cache/lint GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org + GOTOOLCHAIN: local + GOEXPERIMENT: loopvar jobs: linters: diff --git a/tests/python-example-auth.yml b/tests/python-example-auth.yml index 280bab1c7..a4a41dcf4 100644 --- a/tests/python-example-auth.yml +++ b/tests/python-example-auth.yml @@ -1,10 +1,7 @@ --- runner: command dir: python-example -args: - - python3 - - pymongo_test.py - - mongodb://user:password@localhost:27017/?authMechanism=PLAIN +args: ["sh", "-c", "pip3 install pymongo && python3 pymongo_test.py mongodb://user:password@localhost:27017/?authMechanism=PLAIN"] results: ferretdb: diff --git a/tests/python-example.yml b/tests/python-example.yml index 4625ced45..7bfcad218 100644 --- a/tests/python-example.yml +++ b/tests/python-example.yml @@ -1,10 +1,7 @@ --- runner: command dir: python-example -args: - - python3 - - pymongo_test.py - - mongodb://localhost:27017/ +args: ["sh", "-c", "pip3 install pymongo && python3 pymongo_test.py mongodb://localhost:27017/"] results: common: From 8eb204ea7abff73b737017f8d7bb87f8c3c5054b Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:39:33 +0400 Subject: [PATCH 06/15] Remove unknown experiment --- .github/workflows/conform-pr.yml | 1 - .github/workflows/dance-trust.yml | 1 - .github/workflows/dance.yml | 1 - .github/workflows/linters.yml | 1 - 4 files changed, 4 deletions(-) diff --git a/.github/workflows/conform-pr.yml b/.github/workflows/conform-pr.yml index 833bb7b12..e63318c28 100644 --- a/.github/workflows/conform-pr.yml +++ b/.github/workflows/conform-pr.yml @@ -58,7 +58,6 @@ env: GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org GOTOOLCHAIN: local - GOEXPERIMENT: loopvar GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CONFORM_TOKEN: ${{ secrets.CONFORM_TOKEN }} # repo-scoped GITHUB_TOKEN is not enough to query org-level projects diff --git a/.github/workflows/dance-trust.yml b/.github/workflows/dance-trust.yml index 7ead7494a..faa51e991 100644 --- a/.github/workflows/dance-trust.yml +++ b/.github/workflows/dance-trust.yml @@ -23,7 +23,6 @@ env: GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org GOTOOLCHAIN: local - GOEXPERIMENT: loopvar jobs: dance: diff --git a/.github/workflows/dance.yml b/.github/workflows/dance.yml index d2ea146b7..13bfc9fee 100644 --- a/.github/workflows/dance.yml +++ b/.github/workflows/dance.yml @@ -20,7 +20,6 @@ env: GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org GOTOOLCHAIN: local - GOEXPERIMENT: loopvar jobs: dance: diff --git a/.github/workflows/linters.yml b/.github/workflows/linters.yml index 923680bf5..1d823c22d 100644 --- a/.github/workflows/linters.yml +++ b/.github/workflows/linters.yml @@ -25,7 +25,6 @@ env: GOMODCACHE: /home/runner/go/mod GOPROXY: https://proxy.golang.org GOTOOLCHAIN: local - GOEXPERIMENT: loopvar jobs: linters: From 2d9f754d0c914df81ccd6710dba59217aac5a265 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 16:57:55 +0400 Subject: [PATCH 07/15] Use shell scripts --- tests/enmeshed-runtime.sh | 7 +++++++ tests/enmeshed-runtime.yml | 2 +- tests/python-example-auth.sh | 7 +++++++ tests/python-example-auth.yml | 2 +- tests/python-example.sh | 7 +++++++ tests/python-example.yml | 2 +- 6 files changed, 24 insertions(+), 3 deletions(-) create mode 100755 tests/enmeshed-runtime.sh create mode 100755 tests/python-example-auth.sh create mode 100755 tests/python-example.sh diff --git a/tests/enmeshed-runtime.sh b/tests/enmeshed-runtime.sh new file mode 100755 index 000000000..89ee945f1 --- /dev/null +++ b/tests/enmeshed-runtime.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +set -ex + +npm i + +env CONNECTION_STRING=mongodb://localhost:27017 npx jest -i diff --git a/tests/enmeshed-runtime.yml b/tests/enmeshed-runtime.yml index 6f76ab6b6..bdc0b3af4 100644 --- a/tests/enmeshed-runtime.yml +++ b/tests/enmeshed-runtime.yml @@ -1,6 +1,6 @@ --- runner: command -args: ["sh", "-c", "npm i && CONNECTION_STRING=mongodb://localhost:27017 npx jest -i"] +args: ../enmeshed-runtime.sh results: common: diff --git a/tests/python-example-auth.sh b/tests/python-example-auth.sh new file mode 100755 index 000000000..b78eff407 --- /dev/null +++ b/tests/python-example-auth.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +set -ex + +pip3 install pymongo + +python3 pymongo_test.py mongodb://user:password@localhost:27017/?authMechanism=PLAIN diff --git a/tests/python-example-auth.yml b/tests/python-example-auth.yml index a4a41dcf4..0855fbe58 100644 --- a/tests/python-example-auth.yml +++ b/tests/python-example-auth.yml @@ -1,7 +1,7 @@ --- runner: command dir: python-example -args: ["sh", "-c", "pip3 install pymongo && python3 pymongo_test.py mongodb://user:password@localhost:27017/?authMechanism=PLAIN"] +args: ../python-example-auth.sh results: ferretdb: diff --git a/tests/python-example.sh b/tests/python-example.sh new file mode 100755 index 000000000..8c22f9c08 --- /dev/null +++ b/tests/python-example.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +set -ex + +pip3 install pymongo + +python3 pymongo_test.py mongodb://localhost:27017/ diff --git a/tests/python-example.yml b/tests/python-example.yml index 7bfcad218..46a4f3711 100644 --- a/tests/python-example.yml +++ b/tests/python-example.yml @@ -1,7 +1,7 @@ --- runner: command dir: python-example -args: ["sh", "-c", "pip3 install pymongo && python3 pymongo_test.py mongodb://localhost:27017/"] +args: ../python-example.sh results: common: From b226469845ea69ac99353974a6e9e140eb4a1526 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:03:46 +0400 Subject: [PATCH 08/15] Speedup checkout --- .github/workflows/dance-trust.yml | 3 +-- .github/workflows/dance.yml | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/dance-trust.yml b/.github/workflows/dance-trust.yml index faa51e991..99b0e874b 100644 --- a/.github/workflows/dance-trust.yml +++ b/.github/workflows/dance-trust.yml @@ -56,8 +56,7 @@ jobs: - name: Checkout code uses: actions/checkout@v3 with: - fetch-depth: 0 - submodules: recursive + submodules: true - name: Setup Go uses: FerretDB/github-actions/setup-go@main diff --git a/.github/workflows/dance.yml b/.github/workflows/dance.yml index 13bfc9fee..ed2b9e353 100644 --- a/.github/workflows/dance.yml +++ b/.github/workflows/dance.yml @@ -60,8 +60,7 @@ jobs: - name: Checkout code uses: actions/checkout@v3 with: - fetch-depth: 0 - submodules: recursive + submodules: true - name: Setup Go uses: FerretDB/github-actions/setup-go@main From cc8534107ef0a29862a97dc7886497eb9ab5b35c Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:11:23 +0400 Subject: [PATCH 09/15] Fix syntax --- tests/enmeshed-runtime.yml | 2 +- tests/python-example-auth.yml | 2 +- tests/python-example.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/enmeshed-runtime.yml b/tests/enmeshed-runtime.yml index bdc0b3af4..3b294ee5a 100644 --- a/tests/enmeshed-runtime.yml +++ b/tests/enmeshed-runtime.yml @@ -1,6 +1,6 @@ --- runner: command -args: ../enmeshed-runtime.sh +args: [../enmeshed-runtime.sh] results: common: diff --git a/tests/python-example-auth.yml b/tests/python-example-auth.yml index 0855fbe58..801ab4c57 100644 --- a/tests/python-example-auth.yml +++ b/tests/python-example-auth.yml @@ -1,7 +1,7 @@ --- runner: command dir: python-example -args: ../python-example-auth.sh +args: [../python-example-auth.sh] results: ferretdb: diff --git a/tests/python-example.yml b/tests/python-example.yml index 46a4f3711..a57d07252 100644 --- a/tests/python-example.yml +++ b/tests/python-example.yml @@ -1,7 +1,7 @@ --- runner: command dir: python-example -args: ../python-example.sh +args: [../python-example.sh] results: common: From 63340c9e72be8b8cf7261dfa5ccfdb783e74d8b2 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:25:40 +0400 Subject: [PATCH 10/15] Simplify --- tests/dotnet-example.yml | 1 - tests/python-example.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/tests/dotnet-example.yml b/tests/dotnet-example.yml index de04b2307..e9e546c06 100644 --- a/tests/dotnet-example.yml +++ b/tests/dotnet-example.yml @@ -1,6 +1,5 @@ --- runner: command -dir: dotnet-example args: - dotnet - run diff --git a/tests/python-example.yml b/tests/python-example.yml index a57d07252..e6b811f50 100644 --- a/tests/python-example.yml +++ b/tests/python-example.yml @@ -1,6 +1,5 @@ --- runner: command -dir: python-example args: [../python-example.sh] results: From 2dad11a56e89b80cbbb3cd2ad2c710d948e0fe41 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:34:01 +0400 Subject: [PATCH 11/15] Do not lookup relative files --- internal/command/command.go | 9 ++------- tests/enmeshed-runtime.sh | 2 +- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/internal/command/command.go b/internal/command/command.go index 54cf084ab..63f1dfd9d 100644 --- a/internal/command/command.go +++ b/internal/command/command.go @@ -29,12 +29,7 @@ import ( // It runs a command with arguments in a directory and returns the combined output as is. // If the command exits with a non-zero exit code, the test fails. func Run(ctx context.Context, dir string, args []string) (*internal.TestResults, error) { - bin, err := exec.LookPath(args[0]) - if err != nil { - return nil, err - } - - cmd := exec.CommandContext(ctx, bin, args[1:]...) + cmd := exec.CommandContext(ctx, args[0], args[1:]...) cmd.Dir = dir cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr @@ -49,7 +44,7 @@ func Run(ctx context.Context, dir string, args []string) (*internal.TestResults, }, } - if err = cmd.Run(); err != nil { + if err := cmd.Run(); err != nil { res.TestResults[dir] = internal.TestResult{ Status: internal.Fail, Output: err.Error(), diff --git a/tests/enmeshed-runtime.sh b/tests/enmeshed-runtime.sh index 89ee945f1..64b608e0a 100755 --- a/tests/enmeshed-runtime.sh +++ b/tests/enmeshed-runtime.sh @@ -2,6 +2,6 @@ set -ex -npm i +npm ci env CONNECTION_STRING=mongodb://localhost:27017 npx jest -i From 36bb3995ab9935dadf6a8e604a4d779c404c55c4 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:45:44 +0400 Subject: [PATCH 12/15] Update labels --- .github/settings.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/settings.yml b/.github/settings.yml index b806061e6..ce981833e 100644 --- a/.github/settings.yml +++ b/.github/settings.yml @@ -17,15 +17,15 @@ labels: - name: code/chore color: "#E99695" - description: Dance tool code maintenance improvements + description: Dance tool code or tests configuration maintenance improvements - name: code/enhancement color: "#FBCA04" - description: Some dance tool feature could work better + description: Some dance tool feature or tests configuration could work better - name: code/feature color: "#0E8A16" - description: Some dance tool feature is not implemented yet + description: Some dance tool feature or tests configuration is not implemented yet - name: conflict color: "#FF0000" From 011372c04de928a9cb86de4eae246980087dd271 Mon Sep 17 00:00:00 2001 From: Alexey Palazhchenko Date: Wed, 16 Aug 2023 17:47:05 +0400 Subject: [PATCH 13/15] Add label --- .github/settings.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/settings.yml b/.github/settings.yml index ce981833e..ec094d4f6 100644 --- a/.github/settings.yml +++ b/.github/settings.yml @@ -39,6 +39,10 @@ labels: color: "#0052CC" description: PRs that should not be merged + - name: documentation + color: "#0052CC" + description: Something is badly or not documented + - name: good first issue color: "#5319E7" description: Good issues for new external contributors From d138aa6ce4126fbdd79cdc6873dc15610f2bf47c Mon Sep 17 00:00:00 2001 From: b1ron Date: Wed, 16 Aug 2023 17:59:00 +0200 Subject: [PATCH 14/15] add java auth --- tests/java-example-auth.sh | 9 +++++++++ tests/java-example-auth.yml | 7 +------ 2 files changed, 10 insertions(+), 6 deletions(-) create mode 100755 tests/java-example-auth.sh diff --git a/tests/java-example-auth.sh b/tests/java-example-auth.sh new file mode 100755 index 000000000..146a4e2d2 --- /dev/null +++ b/tests/java-example-auth.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +set -ex + +# enables Maven exceptions +export MAVEN_OPTS='-ea' + +mvn compile exec:java -Dexec.mainClass=com.start.Connection \ +-Dexec.args="mongodb://user:password@localhost:27017/?authMechanism=PLAIN" diff --git a/tests/java-example-auth.yml b/tests/java-example-auth.yml index 847fc585f..036c99fea 100644 --- a/tests/java-example-auth.yml +++ b/tests/java-example-auth.yml @@ -1,12 +1,7 @@ --- runner: command dir: java-example/java -args: - - mvn - - compile - - exec:java - - -Dexec.mainClass=com.start.Connection - - -Dexec.args="mongodb://user:password@localhost:27017/?authMechanism=PLAIN" +args: [../../java-example-auth.sh] results: ferretdb: From 923dc294a74f4c23272d3ece5bb60a9a36fde7f2 Mon Sep 17 00:00:00 2001 From: b1ron Date: Wed, 16 Aug 2023 18:03:19 +0200 Subject: [PATCH 15/15] add java no auth --- tests/java-example.sh | 9 +++++++++ tests/java-example.yml | 7 +------ 2 files changed, 10 insertions(+), 6 deletions(-) create mode 100755 tests/java-example.sh diff --git a/tests/java-example.sh b/tests/java-example.sh new file mode 100755 index 000000000..5fb1554d5 --- /dev/null +++ b/tests/java-example.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +set -ex + +# enables Maven exceptions +export MAVEN_OPTS='-ea' + +mvn compile exec:java -Dexec.mainClass=com.start.Connection \ +-Dexec.args="mongodb://localhost:27017/" diff --git a/tests/java-example.yml b/tests/java-example.yml index a744e7bc7..95d1ba4e7 100644 --- a/tests/java-example.yml +++ b/tests/java-example.yml @@ -1,12 +1,7 @@ --- runner: command dir: java-example/java -args: - - mvn - - compile - - exec:java - - -Dexec.mainClass=com.start.Connection - - -Dexec.args="mongodb://localhost:27017/" +args: [../../java-example.sh] results: common: