Compare commits

...

19 Commits

Author SHA1 Message Date
3418f85292 Update CHANGELOG.md 2022-11-02 01:38:14 +04:00
361afd87aa Bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#152)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-02 01:33:17 +04:00
7f6815c274 Bump github.com/spf13/cobra from 1.5.0 to 1.6.1 (#151) 2022-11-01 21:31:51 +00:00
4ecd70330a Bump aquasecurity/trivy-action from 0.7.1 to 0.8.0 (#148) 2022-11-01 21:28:27 +00:00
ae13905512 Bump github.com/prometheus/client_model from 0.2.0 to 0.3.0 (#149) 2022-11-01 21:27:39 +00:00
e3377d0f28 Bump github.com/fasthttp/router from 1.4.12 to 1.4.13 (#153) 2022-11-01 21:27:23 +00:00
b15061a110 wip: Readme file updated 2022-11-02 01:25:19 +04:00
CDN
6d6945bf44 Add 🇨🇳 Chinese Translation (#147) 2022-11-02 01:23:29 +04:00
cf7c526d4f golangci-lint issues fixed 2022-11-02 01:13:03 +04:00
8e21be0340 Update golangci/golangci-lint Docker tag to v1.50 (#144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-04 15:41:42 +04:00
37265ccb4f Bump github.com/fasthttp/router from 1.4.11 to 1.4.12 (#142) 2022-10-02 05:28:04 +00:00
169fbe3b93 Bump github.com/valyala/fasthttp from 1.39.0 to 1.40.0 (#143) 2022-10-02 02:22:55 +00:00
617b378c36 Update orangeopensource/hurl Docker tag to v1.7.0 (#141)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-24 10:31:48 +04:00
438e954dd6 Bump go.uber.org/zap from 1.21.0 to 1.23.0 (#135) 2022-09-02 02:57:20 +00:00
df1a0e20ee Bump aquasecurity/trivy-action from 0.6.1 to 0.7.1 (#137) 2022-09-02 02:53:52 +00:00
7b3c286790 Bump github.com/valyala/fasthttp from 1.38.0 to 1.39.0 (#136) 2022-09-02 02:53:34 +00:00
fb7d7c75cf Bump github.com/prometheus/client_golang from 1.12.2 to 1.13.0 (#138) 2022-09-02 02:52:41 +00:00
1eafe58d16 Update golang Docker tag to v1.19 (#127)
* Update golang Docker tag to v1.19

* wip: temporary commit

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Paramtamtam <7326800+tarampampam@users.noreply.github.com>
2022-08-24 21:38:26 +04:00
e7a909dc4e Update golangci/golangci-lint Docker tag to v1.49 (#134)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-24 20:38:41 +04:00
16 changed files with 163 additions and 82 deletions

View File

@ -27,7 +27,7 @@ jobs:
arch: [amd64] # amd64, 386 arch: [amd64] # amd64, 386
steps: steps:
- uses: actions/setup-go@v3 - uses: actions/setup-go@v3
with: {go-version: 1.18} with: {go-version: 1.19}
- uses: actions/checkout@v3 - uses: actions/checkout@v3

View File

@ -67,7 +67,7 @@ jobs: # Docs: <https://git.io/JvxXE>
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
steps: steps:
- uses: actions/setup-go@v3 - uses: actions/setup-go@v3
with: {go-version: 1.18} with: {go-version: 1.19}
- uses: actions/checkout@v3 - uses: actions/checkout@v3
with: {fetch-depth: 2} # Fixes codecov error 'Issue detecting commit SHA' with: {fetch-depth: 2} # Fixes codecov error 'Issue detecting commit SHA'
@ -103,7 +103,7 @@ jobs: # Docs: <https://git.io/JvxXE>
needs: [golangci-lint, go-test, validate-config-file] needs: [golangci-lint, go-test, validate-config-file]
steps: steps:
- uses: actions/setup-go@v3 - uses: actions/setup-go@v3
with: {go-version: 1.18} with: {go-version: 1.19}
- uses: actions/checkout@v3 - uses: actions/checkout@v3
@ -210,7 +210,7 @@ jobs: # Docs: <https://git.io/JvxXE>
name: docker-image name: docker-image
path: .artifact path: .artifact
- uses: aquasecurity/trivy-action@0.6.1 # action page: <https://github.com/aquasecurity/trivy-action> - uses: aquasecurity/trivy-action@0.8.0 # action page: <https://github.com/aquasecurity/trivy-action>
with: with:
input: .artifact/docker-image.tar input: .artifact/docker-image.tar
format: sarif format: sarif

View File

@ -43,7 +43,6 @@ linters: # All available linters list: <https://golangci-lint.run/usage/linters/
enable: enable:
- asciicheck # Simple linter to check that your code does not contain non-ASCII identifiers - asciicheck # Simple linter to check that your code does not contain non-ASCII identifiers
- bidichk # Checks for dangerous unicode character sequences - bidichk # Checks for dangerous unicode character sequences
- deadcode # Finds unused code
- depguard # Go linter that checks if package imports are in a list of acceptable packages - depguard # Go linter that checks if package imports are in a list of acceptable packages
- dogsled # Checks assignments with too many blank identifiers (e.g. x, _, _, _, := f()) - dogsled # Checks assignments with too many blank identifiers (e.g. x, _, _, _, := f())
- dupl # Tool for code clone detection - dupl # Tool for code clone detection
@ -78,7 +77,6 @@ linters: # All available linters list: <https://golangci-lint.run/usage/linters/
- typecheck # Like the front-end of a Go compiler, parses and type-checks Go code - typecheck # Like the front-end of a Go compiler, parses and type-checks Go code
- unconvert # Remove unnecessary type conversions - unconvert # Remove unnecessary type conversions
- unused # Checks Go code for unused constants, variables, functions and types - unused # Checks Go code for unused constants, variables, functions and types
- varcheck # Finds unused global variables and constants
- whitespace # Tool for detection of leading and trailing whitespace - whitespace # Tool for detection of leading and trailing whitespace
- wsl # Whitespace Linter - Forces you to use empty lines! - wsl # Whitespace Linter - Forces you to use empty lines!

View File

@ -4,6 +4,18 @@ All notable changes to this package will be documented in this file.
The format is based on [Keep a Changelog][keepachangelog] and this project adheres to [Semantic Versioning][semver]. The format is based on [Keep a Changelog][keepachangelog] and this project adheres to [Semantic Versioning][semver].
## v2.19.0
### Changed
- Go updated from `1.18` up to `1.19`
### Added
- Error pages now translated into Chinese 🇨🇳 [#147]
[#147]:https://github.com/tarampampam/error-pages/pull/147
## v2.18.0 ## v2.18.0
### Changed ### Changed

View File

@ -1,7 +1,7 @@
# syntax=docker/dockerfile:1.2 # syntax=docker/dockerfile:1.2
# Image page: <https://hub.docker.com/_/golang> # Image page: <https://hub.docker.com/_/golang>
FROM golang:1.18-alpine as builder FROM golang:1.19-alpine as builder
# can be passed with any prefix (like `v1.2.3@GITHASH`), e.g.: `docker build --build-arg "APP_VERSION=v1.2.3@GITHASH" .` # can be passed with any prefix (like `v1.2.3@GITHASH`), e.g.: `docker build --build-arg "APP_VERSION=v1.2.3@GITHASH" .`
ARG APP_VERSION="undefined@docker" ARG APP_VERSION="undefined@docker"

View File

@ -34,7 +34,7 @@ One day you may want to replace the standard error pages of your HTTP server wit
- Error pages can be [embedded into your own `nginx`][wiki-usage-with-nginx] docker image - Error pages can be [embedded into your own `nginx`][wiki-usage-with-nginx] docker image
- Fully configurable (take a look at the [configuration file](https://github.com/tarampampam/error-pages/blob/master/error-pages.yml) and [project Wiki][wiki]) - Fully configurable (take a look at the [configuration file](https://github.com/tarampampam/error-pages/blob/master/error-pages.yml) and [project Wiki][wiki])
- Distributed using docker image and compiled binary files - Distributed using docker image and compiled binary files
- Localized (🇺🇸, 🇫🇷, 🇺🇦, 🇷🇺, 🇵🇹, 🇳🇱, 🇩🇪, 🇪🇸) HTML error pages (translation process [described here](https://github.com/tarampampam/error-pages/tree/master/l10n) - other translations are welcome!) - Localized (🇺🇸, 🇫🇷, 🇺🇦, 🇷🇺, 🇵🇹, 🇳🇱, 🇩🇪, 🇪🇸, 🇨🇳) HTML error pages (translation process [described here](https://github.com/tarampampam/error-pages/tree/master/l10n) - other translations are welcome!)
## 🧩 Install ## 🧩 Install

View File

@ -8,7 +8,7 @@ volumes:
services: services:
app: &app-service app: &app-service
image: golang:1.18-buster # Image page: <https://hub.docker.com/_/golang> image: golang:1.19-buster # Image page: <https://hub.docker.com/_/golang>
working_dir: /src working_dir: /src
environment: environment:
HOME: /tmp HOME: /tmp
@ -31,7 +31,7 @@ services:
start_period: 5s start_period: 5s
golint: golint:
image: golangci/golangci-lint:v1.48-alpine # Image page: <https://hub.docker.com/r/golangci/golangci-lint> image: golangci/golangci-lint:v1.50-alpine # Image page: <https://hub.docker.com/r/golangci/golangci-lint>
environment: environment:
GOLANGCI_LINT_CACHE: /tmp/golint # <https://github.com/golangci/golangci-lint/blob/v1.42.0/internal/cache/default.go#L68> GOLANGCI_LINT_CACHE: /tmp/golint # <https://github.com/golangci/golangci-lint/blob/v1.42.0/internal/cache/default.go#L68>
volumes: volumes:
@ -41,7 +41,7 @@ services:
command: /bin/true command: /bin/true
hurl: hurl:
image: orangeopensource/hurl:1.6.1 image: orangeopensource/hurl:1.7.0
volumes: volumes:
- .:/src:ro - .:/src:ro
working_dir: /src working_dir: /src

28
go.mod
View File

@ -1,20 +1,20 @@
module github.com/tarampampam/error-pages module github.com/tarampampam/error-pages
go 1.18 go 1.19
require ( require (
github.com/a8m/envsubst v1.3.0 github.com/a8m/envsubst v1.3.0
github.com/fasthttp/router v1.4.11 github.com/fasthttp/router v1.4.13
github.com/fatih/color v1.13.0 github.com/fatih/color v1.13.0
github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d
github.com/pkg/errors v0.9.1 github.com/pkg/errors v0.9.1
github.com/prometheus/client_golang v1.12.2 github.com/prometheus/client_golang v1.13.0
github.com/prometheus/client_model v0.2.0 github.com/prometheus/client_model v0.3.0
github.com/spf13/cobra v1.5.0 github.com/spf13/cobra v1.6.1
github.com/spf13/pflag v1.0.5 github.com/spf13/pflag v1.0.5
github.com/stretchr/testify v1.8.0 github.com/stretchr/testify v1.8.1
github.com/valyala/fasthttp v1.38.0 github.com/valyala/fasthttp v1.41.0
go.uber.org/zap v1.21.0 go.uber.org/zap v1.23.0
gopkg.in/yaml.v3 v3.0.1 gopkg.in/yaml.v3 v3.0.1
) )
@ -24,18 +24,18 @@ require (
github.com/cespare/xxhash/v2 v2.1.2 // indirect github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect
github.com/golang/protobuf v1.5.2 // indirect github.com/golang/protobuf v1.5.2 // indirect
github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/inconshreveable/mousetrap v1.0.1 // indirect
github.com/klauspost/compress v1.15.0 // indirect github.com/klauspost/compress v1.15.9 // indirect
github.com/mattn/go-colorable v0.1.12 // indirect github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect github.com/mattn/go-isatty v0.0.14 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/prometheus/common v0.32.1 // indirect github.com/prometheus/common v0.37.0 // indirect
github.com/prometheus/procfs v0.7.3 // indirect github.com/prometheus/procfs v0.8.0 // indirect
github.com/savsgio/gotils v0.0.0-20220530130905-52f3993e8d6d // indirect github.com/savsgio/gotils v0.0.0-20220530130905-52f3993e8d6d // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect
go.uber.org/atomic v1.7.0 // indirect go.uber.org/atomic v1.7.0 // indirect
go.uber.org/multierr v1.6.0 // indirect go.uber.org/multierr v1.6.0 // indirect
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f // indirect golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10 // indirect
google.golang.org/protobuf v1.27.1 // indirect google.golang.org/protobuf v1.28.1 // indirect
) )

72
go.sum
View File

@ -43,7 +43,6 @@ github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk5
github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY= github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY=
github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
@ -65,8 +64,8 @@ github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymF
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/fasthttp/router v1.4.11 h1:99BvgVxeS2oOZBHnKr/okpdPq1jkn8WvYA2trh/71LY= github.com/fasthttp/router v1.4.13 h1:42M7+7tNO6clb5seb4HhXlBIX1lnNv8DLhiT6jUv75A=
github.com/fasthttp/router v1.4.11/go.mod h1:luEEYkGBSAmYyPaMeIUGNgqY+FdHHYDOK9Kivaw7aNo= github.com/fasthttp/router v1.4.13/go.mod h1:mVhHMaSQA2Hi1HeuL/ZMuZpsZWk5bya75EpaDr3fO7E=
github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w=
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
@ -75,9 +74,11 @@ github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=
github.com/go-kit/log v0.2.0/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0=
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
@ -118,8 +119,8 @@ github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=
@ -137,8 +138,8 @@ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5m
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=
github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc=
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
@ -151,8 +152,8 @@ github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8
github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d h1:cVtBfNW5XTHiKQe7jDaDBSh/EVM4XLPutLAGboIXuM0= github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d h1:cVtBfNW5XTHiKQe7jDaDBSh/EVM4XLPutLAGboIXuM0=
github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d/go.mod h1:P2viExyCEfeWGU259JnaQ34Inuec4R38JCyBx2edgD0= github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d/go.mod h1:P2viExyCEfeWGU259JnaQ34Inuec4R38JCyBx2edgD0=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/compress v1.15.0 h1:xqfchp4whNFxn5A4XFyyYtitiWI8Hy5EW59jEwcyL6U= github.com/klauspost/compress v1.15.9 h1:wKRjX6JRtDdrE9qwa4b/Cip7ACOshUI4smpCQanqjSY=
github.com/klauspost/compress v1.15.0/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
@ -186,24 +187,28 @@ github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXP
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= 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= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0=
github.com/prometheus/client_golang v1.12.2 h1:51L9cDoUHVrXx4zWYlcLQIZ+d+VXHgqnYKkIuq4g/34= github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY=
github.com/prometheus/client_golang v1.12.2/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= github.com/prometheus/client_golang v1.13.0 h1:b71QUfeo5M8gq2+evJdTPfZhYMAU0uKPkyPJ7TPsloU=
github.com/prometheus/client_golang v1.13.0/go.mod h1:vTeo+zgvILHsnnj/39Ou/1fPN5nJFOEMgftOUOmlvYQ=
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M=
github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.2.0/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.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo=
github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc=
github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4=
github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls=
github.com/prometheus/common v0.37.0 h1:ccBbHCgIiT9uSoFY0vX8H3zsNR5eLt17/RQLUvn8pXE=
github.com/prometheus/common v0.37.0/go.mod h1:phzohg0JFMnBEFGxTDbfu3QyL5GI8gTQJFhYO5B3mfA=
github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU=
github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA=
github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU=
github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA=
github.com/prometheus/procfs v0.8.0 h1:ODq8ZFEaYeCaZOJlZZdJA2AbQR98dSHSM1KW/You5mo=
github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4=
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/savsgio/gotils v0.0.0-20220530130905-52f3993e8d6d h1:Q+gqLBOPkFGHyCJxXMRqtUgUbTjI8/Ze8vu8GGyNFwo= github.com/savsgio/gotils v0.0.0-20220530130905-52f3993e8d6d h1:Q+gqLBOPkFGHyCJxXMRqtUgUbTjI8/Ze8vu8GGyNFwo=
@ -211,29 +216,29 @@ github.com/savsgio/gotils v0.0.0-20220530130905-52f3993e8d6d/go.mod h1:Gy+0tqhJv
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
github.com/spf13/cobra v1.5.0 h1:X+jTBEBqF0bHN+9cSMgmfuvv2VHJ9ezmFNf9Y/XstYU= github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA=
github.com/spf13/cobra v1.5.0/go.mod h1:dWXEIy2H428czQCjInthrTRUg7yKbok+2Qi/yBIJoUM= github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
github.com/valyala/fasthttp v1.38.0 h1:yTjSSNjuDi2PPvXY2836bIwLmiTS2T4T9p1coQshpco= github.com/valyala/fasthttp v1.41.0 h1:zeR0Z1my1wDHTRiamBCXVglQdbUwgb9uWG3k1HQz6jY=
github.com/valyala/fasthttp v1.38.0/go.mod h1:t/G+3rLek+CyY9bnIE+YlMRddxVAAGjhxndDB4i4C0I= github.com/valyala/fasthttp v1.41.0/go.mod h1:f6VbjjoI3z1NDOZOv17o6RvtRSWxC77seBFc2uWtgiY=
github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc= github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc=
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
@ -242,11 +247,10 @@ go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw=
go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI= go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI=
go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ=
go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4= go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4=
go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
go.uber.org/zap v1.21.0 h1:WefMeulhovoZ2sYXz7st6K0sLj7bBhpiFaud4r4zST8= go.uber.org/zap v1.23.0 h1:OjGQ5KQDEUawVHxNwQgPpiypGHOxo2mNZsOqTak4fFY=
go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw= go.uber.org/zap v1.23.0/go.mod h1:D+nX8jyLsMHMYrln8A0rJjFt/T/9/bGgIhAqxv5URuY=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
@ -284,7 +288,6 @@ golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzB
golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 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-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@ -313,16 +316,18 @@ golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/
golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/net v0.0.0-20220906165146-f3363e06e74c/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/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= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@ -332,7 +337,6 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@ -367,18 +371,15 @@ golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10 h1:WIoqL4EROvwiPdUtaip4VcDdpZ4kha7wBWZrbVKCIZg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s= golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/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-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.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@ -431,11 +432,9 @@ golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roY
golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 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-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=
google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M=
@ -512,8 +511,8 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj
google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
google.golang.org/protobuf v1.27.1 h1:SnqbnDw1V7RiZcXPx5MEeqPv2s79L9i7BJUlG/+RurQ= google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w=
google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@ -524,12 +523,9 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=

View File

@ -3,11 +3,12 @@ package checkers_test
import ( import (
"bytes" "bytes"
"context" "context"
"io/ioutil" "io"
"net/http" "net/http"
"testing" "testing"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/tarampampam/error-pages/internal/checkers" "github.com/tarampampam/error-pages/internal/checkers"
) )
@ -22,7 +23,7 @@ func TestHealthChecker_CheckSuccess(t *testing.T) {
assert.Equal(t, "HealthChecker/internal", req.Header.Get("User-Agent")) assert.Equal(t, "HealthChecker/internal", req.Header.Get("User-Agent"))
return &http.Response{ return &http.Response{
Body: ioutil.NopCloser(bytes.NewReader([]byte{})), Body: io.NopCloser(bytes.NewReader([]byte{})),
StatusCode: http.StatusOK, StatusCode: http.StatusOK,
}, nil }, nil
} }
@ -35,7 +36,7 @@ func TestHealthChecker_CheckSuccess(t *testing.T) {
func TestHealthChecker_CheckFail(t *testing.T) { func TestHealthChecker_CheckFail(t *testing.T) {
var httpMock httpClientFunc = func(req *http.Request) (*http.Response, error) { var httpMock httpClientFunc = func(req *http.Request) (*http.Response, error) {
return &http.Response{ return &http.Response{
Body: ioutil.NopCloser(bytes.NewReader([]byte{})), Body: io.NopCloser(bytes.NewReader([]byte{})),
StatusCode: http.StatusBadGateway, StatusCode: http.StatusBadGateway,
}, nil }, nil
} }

View File

@ -7,6 +7,7 @@ import (
"github.com/spf13/cobra" "github.com/spf13/cobra"
"github.com/spf13/pflag" "github.com/spf13/pflag"
"github.com/tarampampam/error-pages/internal/env" "github.com/tarampampam/error-pages/internal/env"
) )
@ -29,7 +30,7 @@ func NewCommand(checker checker) *cobra.Command {
// flag was NOT defined using CLI (flags should have maximal priority) // flag was NOT defined using CLI (flags should have maximal priority)
if !flag.Changed && flag.Name == portFlagName { if !flag.Changed && flag.Name == portFlagName {
if envPort, exists := env.ListenPort.Lookup(); exists && envPort != "" { if envPort, exists := env.ListenPort.Lookup(); exists && envPort != "" {
if p, err := strconv.ParseUint(envPort, 10, 16); err == nil { //nolint:gomnd if p, err := strconv.ParseUint(envPort, 10, 16); err == nil {
port = uint16(p) port = uint16(p)
} else { } else {
lastErr = fmt.Errorf("wrong TCP port environment variable [%s] value", envPort) lastErr = fmt.Errorf("wrong TCP port environment variable [%s] value", envPort)

View File

@ -8,6 +8,7 @@ import (
"strings" "strings"
"github.com/spf13/pflag" "github.com/spf13/pflag"
"github.com/tarampampam/error-pages/internal/env" "github.com/tarampampam/error-pages/internal/env"
"github.com/tarampampam/error-pages/internal/options" "github.com/tarampampam/error-pages/internal/options"
) )
@ -118,7 +119,7 @@ func (f *flags) OverrideUsingEnv(flagSet *pflag.FlagSet) (lastErr error) { //nol
case portFlagName: case portFlagName:
if envVar, exists := env.ListenPort.Lookup(); exists { if envVar, exists := env.ListenPort.Lookup(); exists {
if p, err := strconv.ParseUint(envVar, 10, 16); err == nil { //nolint:gomnd if p, err := strconv.ParseUint(envVar, 10, 16); err == nil {
f.Listen.Port = uint16(p) f.Listen.Port = uint16(p)
} else { } else {
lastErr = fmt.Errorf("wrong TCP port environment variable [%s] value", envVar) lastErr = fmt.Errorf("wrong TCP port environment variable [%s] value", envVar)
@ -137,7 +138,7 @@ func (f *flags) OverrideUsingEnv(flagSet *pflag.FlagSet) (lastErr error) { //nol
case defaultHTTPCodeFlagName: case defaultHTTPCodeFlagName:
if envVar, exists := env.DefaultHTTPCode.Lookup(); exists { if envVar, exists := env.DefaultHTTPCode.Lookup(); exists {
if code, err := strconv.ParseUint(envVar, 10, 16); err == nil { //nolint:gomnd if code, err := strconv.ParseUint(envVar, 10, 16); err == nil {
f.defaultHTTPCode = uint16(code) f.defaultHTTPCode = uint16(code)
} else { } else {
lastErr = fmt.Errorf("wrong default HTTP response code environment variable [%s] value", envVar) lastErr = fmt.Errorf("wrong default HTTP response code environment variable [%s] value", envVar)

View File

@ -1,7 +1,6 @@
package config package config
import ( import (
"io/ioutil"
"os" "os"
"path" "path"
"path/filepath" "path/filepath"
@ -68,7 +67,7 @@ func (t Template) Name() string { return t.name }
func (t Template) Content() []byte { return t.content } func (t Template) Content() []byte { return t.content }
func (t *Template) loadContentFromFile(filePath string) (err error) { func (t *Template) loadContentFromFile(filePath string) (err error) {
if t.content, err = ioutil.ReadFile(filePath); err != nil { if t.content, err = os.ReadFile(filePath); err != nil {
return errors.Wrap(err, "cannot load content for the template "+t.Name()+" from file "+filePath) return errors.Wrap(err, "cannot load content for the template "+t.Name()+" from file "+filePath)
} }
@ -236,7 +235,7 @@ func FromYaml(in []byte) (_ *Config, err error) {
// FromYamlFile creates new Config instance using YAML file. // FromYamlFile creates new Config instance using YAML file.
func FromYamlFile(filepath string) (*Config, error) { func FromYamlFile(filepath string) (*Config, error) {
bytes, err := ioutil.ReadFile(filepath) bytes, err := os.ReadFile(filepath)
if err != nil { if err != nil {
return nil, errors.Wrap(err, "cannot read configuration file") return nil, errors.Wrap(err, "cannot read configuration file")
} }

View File

@ -39,7 +39,7 @@ func ClientWantFormat(ctx *fasthttp.RequestCtx) ContentType {
f := format{b[0:idx], 0} f := format{b[0:idx], 0}
if len(b) > idx+3 { if len(b) > idx+3 {
if weight, err := strconv.ParseFloat(string(b[idx+3:]), 32); err == nil { //nolint:gomnd if weight, err := strconv.ParseFloat(string(b[idx+3:]), 32); err == nil {
f.weight = float32(weight) f.weight = float32(weight)
} }
} }

View File

@ -10,6 +10,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Fout', nl: 'Fout',
de: 'Fehler', de: 'Fehler',
es: 'Error', es: 'Error',
zh: '错误',
}, },
'Good luck': { 'Good luck': {
fr: 'Bonne chance', fr: 'Bonne chance',
@ -19,6 +20,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Veel succes', nl: 'Veel succes',
de: 'Viel Glück', de: 'Viel Glück',
es: 'Buena Suerte', es: 'Buena Suerte',
zh: '祝好运',
}, },
'UH OH': { 'UH OH': {
fr: 'Oups', fr: 'Oups',
@ -28,6 +30,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Oeps', nl: 'Oeps',
de: 'Hoppla', de: 'Hoppla',
es: 'Oups', es: 'Oups',
zh: '哎呀',
}, },
'Request details': { 'Request details': {
fr: 'Détails de la requête', fr: 'Détails de la requête',
@ -37,6 +40,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Details van verzoek', nl: 'Details van verzoek',
de: 'Details der Anfrage', de: 'Details der Anfrage',
es: 'Detalles de la petición', es: 'Detalles de la petición',
zh: '请求详情',
}, },
'Double-check the URL': { 'Double-check the URL': {
fr: 'Vérifiez lURL', fr: 'Vérifiez lURL',
@ -46,6 +50,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Controleer de URL', nl: 'Controleer de URL',
de: 'Überprüfen Sie die URL', de: 'Überprüfen Sie die URL',
es: 'Verifique la url', es: 'Verifique la url',
zh: '请再次检查地址',
}, },
'Alternatively, go back': { 'Alternatively, go back': {
fr: 'Essayer de revenir en arrière', fr: 'Essayer de revenir en arrière',
@ -55,6 +60,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Of ga terug', nl: 'Of ga terug',
de: 'Alternativ gehen Sie zurück', de: 'Alternativ gehen Sie zurück',
es: 'Como alternativa, vuelva atrás', es: 'Como alternativa, vuelva atrás',
zh: '或返回上一页',
}, },
'Here\'s what might have happened': { 'Here\'s what might have happened': {
fr: 'Voici ce qui aurait pu se passer', fr: 'Voici ce qui aurait pu se passer',
@ -64,6 +70,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Wat er gebeurd kan zijn', nl: 'Wat er gebeurd kan zijn',
de: 'Folgendes könnte passiert sein', de: 'Folgendes könnte passiert sein',
es: 'Esto es lo que ha podido pasar', es: 'Esto es lo que ha podido pasar',
zh: '可能原因有',
}, },
'You may have mistyped the URL': { 'You may have mistyped the URL': {
fr: 'Vous avez peut-être mal tapé lURL', fr: 'Vous avez peut-être mal tapé lURL',
@ -73,6 +80,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De URL bevat een typefout', nl: 'De URL bevat een typefout',
de: 'Möglicherweise haben Sie die URL falsch eingegeben', de: 'Möglicherweise haben Sie die URL falsch eingegeben',
es: 'Igual ha escrito mal la URL', es: 'Igual ha escrito mal la URL',
zh: '您可能输入了错误的地址',
}, },
'The site was moved': { 'The site was moved': {
fr: 'Le site a été déplacé', fr: 'Le site a été déplacé',
@ -82,6 +90,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De site is verplaatst', nl: 'De site is verplaatst',
de: 'Die Seite wurde verschoben', de: 'Die Seite wurde verschoben',
es: 'El sitio se ha movido', es: 'El sitio se ha movido',
zh: '站点已被转移',
}, },
'It was never here': { 'It was never here': {
fr: 'Il na jamais été ici', fr: 'Il na jamais été ici',
@ -91,6 +100,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Het was hier nooit', nl: 'Het was hier nooit',
de: 'Es war nie hier', de: 'Es war nie hier',
es: 'Nunca ha estado aquí', es: 'Nunca ha estado aquí',
zh: '站点从未存在',
}, },
'Bad Request': { 'Bad Request': {
fr: 'Mauvaise requête', fr: 'Mauvaise requête',
@ -99,7 +109,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'Requisição inválida', pt: 'Requisição inválida',
nl: 'Foutieve anvraag', nl: 'Foutieve anvraag',
de: 'Fehlerhafte Anfrage', de: 'Fehlerhafte Anfrage',
es: 'Petición inválida' es: 'Petición inválida',
zh: '错误请求',
}, },
'The server did not understand the request': { 'The server did not understand the request': {
fr: 'Le serveur ne comprend pas la requête', fr: 'Le serveur ne comprend pas la requête',
@ -108,7 +119,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'O servidor não entendeu a solicitação', pt: 'O servidor não entendeu a solicitação',
nl: 'De server begreep het verzoek niet', nl: 'De server begreep het verzoek niet',
de: 'Der Server hat die Anfrage nicht verstanden', de: 'Der Server hat die Anfrage nicht verstanden',
es: 'El servidor no entendió la petición' es: 'El servidor no entendió la petición',
zh: '服务器不理解该请求',
}, },
'Unauthorized': { 'Unauthorized': {
fr: 'Non autorisé', fr: 'Non autorisé',
@ -118,6 +130,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Niet geautoriseerd', nl: 'Niet geautoriseerd',
de: 'Nicht autorisiert', de: 'Nicht autorisiert',
es: 'No autorizado', es: 'No autorizado',
zh: '未经授权',
}, },
'The requested page needs a username and a password': { 'The requested page needs a username and a password': {
fr: 'La page demandée nécessite un nom dutilisateur et un mot de passe', fr: 'La page demandée nécessite un nom dutilisateur et un mot de passe',
@ -127,6 +140,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De pagina heeft een gebruikersnaam en wachtwoord nodig', nl: 'De pagina heeft een gebruikersnaam en wachtwoord nodig',
de: 'Die angeforderte Seite benötigt einen Benutzernamen und ein Passwort', de: 'Die angeforderte Seite benötigt einen Benutzernamen und ein Passwort',
es: 'La página solicitada necesita un usuario y una contraseña', es: 'La página solicitada necesita un usuario y una contraseña',
zh: '请求的页面需要用户名和密码',
}, },
'Forbidden': { 'Forbidden': {
fr: 'Interdit', fr: 'Interdit',
@ -136,6 +150,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Verboden', nl: 'Verboden',
de: 'Verboten', de: 'Verboten',
es: 'Prohibido', es: 'Prohibido',
zh: '禁止访问',
}, },
'Access is forbidden to the requested page': { 'Access is forbidden to the requested page': {
fr: 'Accès interdit à la page demandée', fr: 'Accès interdit à la page demandée',
@ -145,6 +160,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Toegang tot de pagina is verboden', nl: 'Toegang tot de pagina is verboden',
de: 'Der Zugriff auf die angeforderte Seite ist verboten', de: 'Der Zugriff auf die angeforderte Seite ist verboten',
es: 'El acceso está prohibido para la página solicitada', es: 'El acceso está prohibido para la página solicitada',
zh: '禁止访问请求的页面',
}, },
'Not Found': { 'Not Found': {
fr: 'Introuvable', fr: 'Introuvable',
@ -154,6 +170,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Niet gevonden', nl: 'Niet gevonden',
de: 'Nicht gefunden', de: 'Nicht gefunden',
es: 'No encontrado', es: 'No encontrado',
zh: '未找到',
}, },
'The server can not find the requested page': { 'The server can not find the requested page': {
fr: 'Le serveur ne peut trouver la page demandée', fr: 'Le serveur ne peut trouver la page demandée',
@ -163,6 +180,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De server kan de pagina niet vinden', nl: 'De server kan de pagina niet vinden',
de: 'Der Server kann die angeforderte Seite nicht finden', de: 'Der Server kann die angeforderte Seite nicht finden',
es: 'El servidor no puede encontrar la página solicitada', es: 'El servidor no puede encontrar la página solicitada',
zh: '服务器找不到请求的页面',
}, },
'Method Not Allowed': { 'Method Not Allowed': {
fr: 'Méthode Non Autorisée', fr: 'Méthode Non Autorisée',
@ -172,6 +190,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Methode niet toegestaan', nl: 'Methode niet toegestaan',
de: 'Methode nicht erlaubt', de: 'Methode nicht erlaubt',
es: 'Método no permitido', es: 'Método no permitido',
zh: '方法不被允许',
}, },
'The method specified in the request is not allowed': { 'The method specified in the request is not allowed': {
fr: 'La méthode spécifiée dans la requête nest pas autorisée', fr: 'La méthode spécifiée dans la requête nest pas autorisée',
@ -180,7 +199,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'O método especificado na solicitação não é permitido', pt: 'O método especificado na solicitação não é permitido',
nl: 'De methode in het verzoek is niet toegestaan', nl: 'De methode in het verzoek is niet toegestaan',
de: 'Die in der Anfrage angegebene Methode ist nicht zulässig', de: 'Die in der Anfrage angegebene Methode ist nicht zulässig',
es: 'El método especificado en la petición no está permitido' es: 'El método especificado en la petición no está permitido',
zh: '请求指定的方法不被允许',
}, },
'Proxy Authentication Required': { 'Proxy Authentication Required': {
fr: 'Authentification proxy requise', fr: 'Authentification proxy requise',
@ -190,6 +210,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Authenticatie op de proxyserver verplicht', nl: 'Authenticatie op de proxyserver verplicht',
de: 'Proxy-Authentifizierung benötigt', de: 'Proxy-Authentifizierung benötigt',
es: 'Autenticación de proxy requerida', es: 'Autenticación de proxy requerida',
zh: '需要代理服务器身份验证',
}, },
'You must authenticate with a proxy server before this request can be served': { 'You must authenticate with a proxy server before this request can be served': {
fr: 'Vous devez vous authentifier avec un serveur proxy avant que cette requête puisse être servie', fr: 'Vous devez vous authentifier avec un serveur proxy avant que cette requête puisse être servie',
@ -199,6 +220,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Je moet authenticeren bij een proxyserver voordat dit verzoek uitgevoerd kan worden', nl: 'Je moet authenticeren bij een proxyserver voordat dit verzoek uitgevoerd kan worden',
de: 'Sie müssen sich bei einem Proxy-Server authentifizieren, bevor diese Anfrage bedient werden kann', de: 'Sie müssen sich bei einem Proxy-Server authentifizieren, bevor diese Anfrage bedient werden kann',
es: 'Debes autentificarte con un servidor proxy antes de que esta petición pueda ser atendida', es: 'Debes autentificarte con un servidor proxy antes de que esta petición pueda ser atendida',
zh: '您必须对代理服务器进行身份验证,然后才能让请求得到处理',
}, },
'Request Timeout': { 'Request Timeout': {
fr: 'Requête expiré', fr: 'Requête expiré',
@ -208,6 +230,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Aanvraagtijd verstreken', nl: 'Aanvraagtijd verstreken',
de: 'Zeitüberschreitung der Anforderung', de: 'Zeitüberschreitung der Anforderung',
es: 'Tiempo límite de la petición excedido', es: 'Tiempo límite de la petición excedido',
zh: '请求超时',
}, },
'The request took longer than the server was prepared to wait': { 'The request took longer than the server was prepared to wait': {
fr: 'La requête prend plus de temps que prévu', fr: 'La requête prend plus de temps que prévu',
@ -217,6 +240,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Het verzoek duurde langer dan de server wilde wachten', nl: 'Het verzoek duurde langer dan de server wilde wachten',
de: 'Die Anfrage hat länger gedauert, als der Server bereit war zu warten', de: 'Die Anfrage hat länger gedauert, als der Server bereit war zu warten',
es: 'La petición esta tardando más de lo que el servidor estaba preparado para esperar', es: 'La petición esta tardando más de lo que el servidor estaba preparado para esperar',
zh: '请求用时超过了服务器设置的最长等待时间',
}, },
'Conflict': { 'Conflict': {
fr: 'Conflit', fr: 'Conflit',
@ -226,6 +250,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Conflict', nl: 'Conflict',
de: 'Konflikt', de: 'Konflikt',
es: 'Conflicto', es: 'Conflicto',
zh: '冲突',
}, },
'The request could not be completed because of a conflict': { 'The request could not be completed because of a conflict': {
fr: 'La requête na pas pu être complétée à cause dun conflit', fr: 'La requête na pas pu être complétée à cause dun conflit',
@ -235,6 +260,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Het verzoek kon niet worden verwerkt vanwege een conflict', nl: 'Het verzoek kon niet worden verwerkt vanwege een conflict',
de: 'Die Anfrage konnte aufgrund eines Konflikts nicht abgeschlossen werden', de: 'Die Anfrage konnte aufgrund eines Konflikts nicht abgeschlossen werden',
es: 'La petición no ha podido ser completada por un conflicto', es: 'La petición no ha podido ser completada por un conflicto',
zh: '由于冲突,请求无法完成',
}, },
'Gone': { 'Gone': {
fr: 'Supprimé', fr: 'Supprimé',
@ -244,6 +270,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Verdwenen', nl: 'Verdwenen',
de: 'Verschwunden', de: 'Verschwunden',
es: 'Eliminado', es: 'Eliminado',
zh: '已移除',
}, },
'The requested page is no longer available': { 'The requested page is no longer available': {
fr: 'La page demandée nest plus disponible', fr: 'La page demandée nest plus disponible',
@ -253,6 +280,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De pagina is niet langer beschikbaar', nl: 'De pagina is niet langer beschikbaar',
de: 'Die angeforderte Seite ist nicht mehr verfügbar', de: 'Die angeforderte Seite ist nicht mehr verfügbar',
es: 'La página solicitada no está ya disponible', es: 'La página solicitada no está ya disponible',
zh: '请求的页面不再可用',
}, },
'Length Required': { 'Length Required': {
fr: 'Longueur requise', fr: 'Longueur requise',
@ -262,6 +290,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Lengte benodigd', nl: 'Lengte benodigd',
de: 'Länge benötigt', de: 'Länge benötigt',
es: 'Longitud requerida', es: 'Longitud requerida',
zh: '需要长度',
}, },
'The "Content-Length" is not defined. The server will not accept the request without it': { 'The "Content-Length" is not defined. The server will not accept the request without it': {
fr: 'Le "Content-Length" nest pas défini. Le serveur ne prendra pas en compte la requête', fr: 'Le "Content-Length" nest pas défini. Le serveur ne prendra pas en compte la requête',
@ -271,6 +300,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De "Content-Length" is niet gespecificeerd. De server accepteert het verzoek niet zonder', nl: 'De "Content-Length" is niet gespecificeerd. De server accepteert het verzoek niet zonder',
de: 'Die "Content-Length" ist nicht definiert. Ohne sie akzeptiert der Server die Anfrage nicht', de: 'Die "Content-Length" ist nicht definiert. Ohne sie akzeptiert der Server die Anfrage nicht',
es: 'El "Content-Legth" no eta definido. Este servidor no aceptará la petición sin él', es: 'El "Content-Legth" no eta definido. Este servidor no aceptará la petición sin él',
zh: '未指定Content-Length(内容长度)。服务器将不接受不包含此头信息的请求',
}, },
'Precondition Failed': { 'Precondition Failed': {
fr: 'Échec de la condition préalable', fr: 'Échec de la condition préalable',
@ -280,6 +310,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Niet voldaan aan vooraf gestelde voorwaarde', nl: 'Niet voldaan aan vooraf gestelde voorwaarde',
de: 'Vorbedingung fehlgeschlagen', de: 'Vorbedingung fehlgeschlagen',
es: 'Precondición fallida', es: 'Precondición fallida',
zh: '前置条件判定失败',
}, },
'The pre condition given in the request evaluated to false by the server': { 'The pre condition given in the request evaluated to false by the server': {
fr: 'La précondition donnée dans la requête a été évaluée comme étant fausse par le serveur', fr: 'La précondition donnée dans la requête a été évaluée comme étant fausse par le serveur',
@ -288,7 +319,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'A pré-condição dada na solicitação avaliada como falsa pelo servidor', pt: 'A pré-condição dada na solicitação avaliada como falsa pelo servidor',
nl: 'De vooraf gestelde voorwaarde is afgewezen door de server', nl: 'De vooraf gestelde voorwaarde is afgewezen door de server',
de: 'Die in der Anfrage angegebene Vorbedingung wird vom Server als falsch bewertet', de: 'Die in der Anfrage angegebene Vorbedingung wird vom Server als falsch bewertet',
es: 'La precondición ha sido evaluada como negativa para esta petición por el servidor' es: 'La precondición ha sido evaluada como negativa para esta petición por el servidor',
zh: '服务器评估请求中给出的前置条件的结果为false(假)',
}, },
'Payload Too Large': { 'Payload Too Large': {
fr: 'Charge trop volumineuse', fr: 'Charge trop volumineuse',
@ -298,6 +330,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Aanvraag te grood', nl: 'Aanvraag te grood',
de: 'Anfrage zu groß', de: 'Anfrage zu groß',
es: 'Carga muy grande', es: 'Carga muy grande',
zh: '请求体过大',
}, },
'The server will not accept the request, because the request entity is too large': { 'The server will not accept the request, because the request entity is too large': {
fr: 'Le serveur ne prendra pas en compte la requête, car lentité de la requête est trop volumineuse', fr: 'Le serveur ne prendra pas en compte la requête, car lentité de la requête est trop volumineuse',
@ -307,6 +340,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De server accepteert het verzoek niet omdat de aanvraag te groot is', nl: 'De server accepteert het verzoek niet omdat de aanvraag te groot is',
de: 'Der Server akzeptiert die Anfrage nicht, da die Datenmenge zu groß ist', de: 'Der Server akzeptiert die Anfrage nicht, da die Datenmenge zu groß ist',
es: 'El servidor no aceptará esta petición, porque la carga es demasiado grande', es: 'El servidor no aceptará esta petición, porque la carga es demasiado grande',
zh: '请求体过大,服务器将不接受该请求',
}, },
'Requested Range Not Satisfiable': { 'Requested Range Not Satisfiable': {
fr: 'Requête non satisfaisante', fr: 'Requête non satisfaisante',
@ -316,6 +350,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Aangevraagd gedeelte niet opvraagbaar', nl: 'Aangevraagd gedeelte niet opvraagbaar',
de: 'Anfrage-Bereich nicht erfüllbar', de: 'Anfrage-Bereich nicht erfüllbar',
es: 'Intervalo solicitado no satisfactorio', es: 'Intervalo solicitado no satisfactorio',
zh: '不满足请求范围',
}, },
'The requested byte range is not available and is out of bounds': { 'The requested byte range is not available and is out of bounds': {
fr: 'Le byte range demandé nest pas disponible et est hors des limites', fr: 'Le byte range demandé nest pas disponible et est hors des limites',
@ -325,6 +360,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De aangevraagde bytes zijn buiten het limiet', nl: 'De aangevraagde bytes zijn buiten het limiet',
de: 'Der angefragte Teilbereich der Ressource existiert nicht oder ist ungültig', de: 'Der angefragte Teilbereich der Ressource existiert nicht oder ist ungültig',
es: 'El intervalo de bytes requerido no está disponible o se encuentra fuera de los límites', es: 'El intervalo de bytes requerido no está disponible o se encuentra fuera de los límites',
zh: '请求的字节范围不可用,超出边界',
}, },
'I\'m a teapot': { 'I\'m a teapot': {
fr: 'Je suis une théière', fr: 'Je suis une théière',
@ -333,7 +369,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'Eu sou um bule', pt: 'Eu sou um bule',
nl: 'Ik ben een theepot', nl: 'Ik ben een theepot',
de: 'Ich bin eine Teekanne', de: 'Ich bin eine Teekanne',
es: 'Soy una tetera' es: 'Soy una tetera',
zh: '我是一只茶壶',
}, },
'Attempt to brew coffee with a teapot is not supported': { 'Attempt to brew coffee with a teapot is not supported': {
fr: 'Tenter de préparer du café avec une théière nest pas pris en charge', fr: 'Tenter de préparer du café avec une théière nest pas pris en charge',
@ -343,6 +380,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Koffie maken met een theepot is niet ondersteund', nl: 'Koffie maken met een theepot is niet ondersteund',
de: 'Der Versuch, Kaffee mit einer Teekanne zuzubereiten, wird nicht unterstützt', de: 'Der Versuch, Kaffee mit einer Teekanne zuzubereiten, wird nicht unterstützt',
es: 'Intentar hacer un café en una tetera no está soportado', es: 'Intentar hacer un café en una tetera no está soportado',
zh: '用茶壶泡咖啡不受支持',
}, },
'Too Many Requests': { 'Too Many Requests': {
fr: 'Trop de requêtes', fr: 'Trop de requêtes',
@ -351,7 +389,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'Excesso de solicitações', pt: 'Excesso de solicitações',
nl: 'Te veel requests', nl: 'Te veel requests',
de: 'Zu viele Anfragen', de: 'Zu viele Anfragen',
es: 'Demasiadas peticiones' es: 'Demasiadas peticiones',
zh: '请求过多',
}, },
'Too many requests in a given amount of time': { 'Too many requests in a given amount of time': {
fr: 'Trop de requêtes dans un délai donné', fr: 'Trop de requêtes dans un délai donné',
@ -361,6 +400,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Te veel verzoeken binnen een bepaalde tijd', nl: 'Te veel verzoeken binnen een bepaalde tijd',
de: 'Der Client hat zu viele Anfragen in einem bestimmten Zeitraum gesendet', de: 'Der Client hat zu viele Anfragen in einem bestimmten Zeitraum gesendet',
es: 'Demasiadas peticiones en un determinado periodo de tiempo', es: 'Demasiadas peticiones en un determinado periodo de tiempo',
zh: '在给定的时间内发送了过多请求',
}, },
'Internal Server Error': { 'Internal Server Error': {
fr: 'Erreur interne du serveur', fr: 'Erreur interne du serveur',
@ -370,6 +410,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Interne serverfout', nl: 'Interne serverfout',
de: 'Interner Server-Fehler', de: 'Interner Server-Fehler',
es: 'Error Interno', es: 'Error Interno',
zh: '内部服务器错误',
}, },
'The server met an unexpected condition': { 'The server met an unexpected condition': {
fr: 'Le serveur a rencontré une condition inattendue', fr: 'Le serveur a rencontré une condition inattendue',
@ -379,6 +420,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De server ondervond een onverwachte conditie', nl: 'De server ondervond een onverwachte conditie',
de: 'Der Server hat einen internen Fehler festgestellt', de: 'Der Server hat einen internen Fehler festgestellt',
es: 'El servidor ha encontrado una condición no esperada', es: 'El servidor ha encontrado una condición no esperada',
zh: '服务器遇到了意外情况',
}, },
'Bad Gateway': { 'Bad Gateway': {
fr: 'Mauvaise passerelle', fr: 'Mauvaise passerelle',
@ -388,6 +430,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Ongeldige Gateway', nl: 'Ongeldige Gateway',
de: 'Fehlerhafter Gateway', de: 'Fehlerhafter Gateway',
es: 'Puerta de enlace no valida', es: 'Puerta de enlace no valida',
zh: '无效网关',
}, },
'The server received an invalid response from the upstream server': { 'The server received an invalid response from the upstream server': {
fr: 'Le serveur a reçu une réponse invalide du serveur distant', fr: 'Le serveur a reçu une réponse invalide du serveur distant',
@ -396,7 +439,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'O servidor recebeu uma resposta inválida do servidor upstream', pt: 'O servidor recebeu uma resposta inválida do servidor upstream',
nl: 'De server ontving een ongeldig antwoord van een bovenliggende server', nl: 'De server ontving een ongeldig antwoord van een bovenliggende server',
de: 'Der Server hat eine ungültige Antwort vom Upstream-Server erhalten', de: 'Der Server hat eine ungültige Antwort vom Upstream-Server erhalten',
es: 'El servidor ha recibido una respuesta no válida del servidor de origen' es: 'El servidor ha recibido una respuesta no válida del servidor de origen',
zh: '服务器从上游服务器收到了无效的响应',
}, },
'Service Unavailable': { 'Service Unavailable': {
fr: 'Service indisponible', fr: 'Service indisponible',
@ -406,6 +450,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Dienst niet beschikbaar', nl: 'Dienst niet beschikbaar',
de: 'Dienst nicht verfügbar', de: 'Dienst nicht verfügbar',
es: 'Servicio no disponible', es: 'Servicio no disponible',
zh: '服务不可用',
}, },
'The server is temporarily overloading or down': { 'The server is temporarily overloading or down': {
fr: 'Le serveur est temporairement en surcharge ou indisponible', fr: 'Le serveur est temporairement en surcharge ou indisponible',
@ -415,6 +460,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De server is tijdelijk overbelast of niet bereikbaar', nl: 'De server is tijdelijk overbelast of niet bereikbaar',
de: 'Der Server ist vorübergehend überlastet oder ausgefallen', de: 'Der Server ist vorübergehend überlastet oder ausgefallen',
es: 'El servidor está temporalmente sobrecargado o inactivo', es: 'El servidor está temporalmente sobrecargado o inactivo',
zh: '服务器暂时过载或不可用',
}, },
'Gateway Timeout': { 'Gateway Timeout': {
fr: 'Expiration Passerelle', fr: 'Expiration Passerelle',
@ -424,6 +470,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Gateway Verlopen', nl: 'Gateway Verlopen',
de: 'Gateway Zeitüberschreitung', de: 'Gateway Zeitüberschreitung',
es: 'Tiempo límite de puerta de enlace excedido', es: 'Tiempo límite de puerta de enlace excedido',
zh: '网关超时',
}, },
'The gateway has timed out': { 'The gateway has timed out': {
fr: 'Le temps dattente de la passerelle est dépassé', fr: 'Le temps dattente de la passerelle est dépassé',
@ -433,6 +480,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De verbinding naar de bovenliggende server is verlopen', nl: 'De verbinding naar de bovenliggende server is verlopen',
de: 'Das Zeitlimit für den Verbindungsaufbau mit dem Upstream-Server ist abgelaufen', de: 'Das Zeitlimit für den Verbindungsaufbau mit dem Upstream-Server ist abgelaufen',
es: 'La puerta de enlace ha sobrepasado el tiempo límite', es: 'La puerta de enlace ha sobrepasado el tiempo límite',
zh: '网关响应已经超时',
}, },
'HTTP Version Not Supported': { 'HTTP Version Not Supported': {
fr: 'Version HTTP non prise en charge', fr: 'Version HTTP non prise en charge',
@ -442,6 +490,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'HTTP-versie wordt niet ondersteunt', nl: 'HTTP-versie wordt niet ondersteunt',
de: 'HTTP-Version wird nicht unterstützt', de: 'HTTP-Version wird nicht unterstützt',
es: 'Versión de HTTP no soportada', es: 'Versión de HTTP no soportada',
zh: 'HTTP版本不受支持',
}, },
'The server does not support the "http protocol" version': { 'The server does not support the "http protocol" version': {
fr: 'Le serveur ne supporte pas la version du protocole HTTP', fr: 'Le serveur ne supporte pas la version du protocole HTTP',
@ -451,6 +500,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'De server ondersteunt deze HTTP-versie niet', nl: 'De server ondersteunt deze HTTP-versie niet',
de: 'Der Server unterstützt die HTTP-Protokoll-Version nicht', de: 'Der Server unterstützt die HTTP-Protokoll-Version nicht',
es: 'El servidor no soporta la versión del protocolo HTTP', es: 'El servidor no soporta la versión del protocolo HTTP',
zh: '服务器不支持该HTTP协议版本',
}, },
'Host': { 'Host': {
@ -461,6 +511,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Host', nl: 'Host',
de: 'Host', de: 'Host',
es: 'Host', es: 'Host',
zh: '主机',
}, },
'Original URI': { 'Original URI': {
fr: 'URI dorigine', fr: 'URI dorigine',
@ -470,6 +521,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Originele URI', nl: 'Originele URI',
de: 'Originale URI', de: 'Originale URI',
es: 'URI original', es: 'URI original',
zh: '原始URI',
}, },
'Forwarded for': { 'Forwarded for': {
fr: 'Transmis pour', fr: 'Transmis pour',
@ -479,6 +531,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Doorgestuurd voor', nl: 'Doorgestuurd voor',
de: 'Weitergeleitet für', de: 'Weitergeleitet für',
es: 'Remitido por', es: 'Remitido por',
zh: '转发自',
}, },
'Namespace': { 'Namespace': {
fr: 'Espace de noms', fr: 'Espace de noms',
@ -488,6 +541,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Elementnaam', nl: 'Elementnaam',
de: 'Namensraum', de: 'Namensraum',
es: 'Namespace', es: 'Namespace',
zh: '命名空间',
}, },
'Ingress name': { 'Ingress name': {
fr: 'Nom ingress', fr: 'Nom ingress',
@ -497,6 +551,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Ingress naam', nl: 'Ingress naam',
de: 'Ingress Name', de: 'Ingress Name',
es: 'Nombre Ingress', es: 'Nombre Ingress',
zh: '入口名',
}, },
'Service name': { 'Service name': {
fr: 'Nom du service', fr: 'Nom du service',
@ -505,7 +560,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'Nome do Serviço', pt: 'Nome do Serviço',
nl: 'Service naam', nl: 'Service naam',
de: 'Service Name', de: 'Service Name',
es: 'Nombre del servicio' es: 'Nombre del servicio',
zh: '服务名',
}, },
'Service port': { 'Service port': {
fr: 'Port du service', fr: 'Port du service',
@ -515,6 +571,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Service poort', nl: 'Service poort',
de: 'Service Port', de: 'Service Port',
es: 'Puerto del servicio', es: 'Puerto del servicio',
zh: '服务端口',
}, },
'Request ID': { 'Request ID': {
fr: 'Identifiant de la requête', fr: 'Identifiant de la requête',
@ -524,6 +581,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'ID van het verzoek', nl: 'ID van het verzoek',
de: 'Anfrage ID', de: 'Anfrage ID',
es: 'ID de la petición', es: 'ID de la petición',
zh: '请求ID',
}, },
'Timestamp': { 'Timestamp': {
fr: 'Horodatage', fr: 'Horodatage',
@ -533,6 +591,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Tijdstempel', nl: 'Tijdstempel',
de: 'Zeitstempel', de: 'Zeitstempel',
es: 'Timestamp', es: 'Timestamp',
zh: '时间戳',
}, },
'client-side error': { 'client-side error': {
@ -543,6 +602,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'fout aan de gebruikerskant', nl: 'fout aan de gebruikerskant',
de: 'Clientseitiger Fehler', de: 'Clientseitiger Fehler',
es: 'Error del lado del cliente', es: 'Error del lado del cliente',
zh: '客户端错误',
}, },
'server-side error': { 'server-side error': {
fr: 'Erreur Serveur', fr: 'Erreur Serveur',
@ -552,6 +612,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'fout aan de serverkant', nl: 'fout aan de serverkant',
de: 'Serverseitiger Fehler', de: 'Serverseitiger Fehler',
es: 'Error del lado del servidor', es: 'Error del lado del servidor',
zh: '服务端错误',
}, },
'Your Client': { 'Your Client': {
@ -562,6 +623,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Jouw Client', nl: 'Jouw Client',
de: 'Ihr Client', de: 'Ihr Client',
es: 'Tu cliente', es: 'Tu cliente',
zh: '您的客户端',
}, },
'Network': { 'Network': {
fr: 'Réseau', fr: 'Réseau',
@ -571,6 +633,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Netwerk', nl: 'Netwerk',
de: 'Netzwerk', de: 'Netzwerk',
es: 'Red', es: 'Red',
zh: '网络',
}, },
'Web Server': { 'Web Server': {
fr: 'Serveur Web', fr: 'Serveur Web',
@ -580,6 +643,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Web Server', nl: 'Web Server',
de: 'Webserver', de: 'Webserver',
es: 'Servidor web', es: 'Servidor web',
zh: 'Web服务器',
}, },
'What happened?': { 'What happened?': {
fr: 'Que sest-il passé ?', fr: 'Que sest-il passé ?',
@ -589,6 +653,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Wat is er gebeurd?', nl: 'Wat is er gebeurd?',
de: 'Was ist passiert?', de: 'Was ist passiert?',
es: '¿Que ha pasado?', es: '¿Que ha pasado?',
zh: '发生了什么?',
}, },
'What can i do?': { 'What can i do?': {
fr: 'Que puis-je faire ?', fr: 'Que puis-je faire ?',
@ -598,6 +663,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Wat kan ik doen?', nl: 'Wat kan ik doen?',
de: 'Was kann ich machen?', de: 'Was kann ich machen?',
es: '¿Que puedo hacer?', es: '¿Que puedo hacer?',
zh: '我能做什么?',
}, },
'Please try again in a few minutes': { 'Please try again in a few minutes': {
fr: 'Veuillez réessayer dans quelques minutes', fr: 'Veuillez réessayer dans quelques minutes',
@ -607,6 +673,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Probeer het alstublieft opnieuw over een paar minuten', nl: 'Probeer het alstublieft opnieuw over een paar minuten',
de: 'Bitte versuchen Sie es in ein paar Minuten erneut', de: 'Bitte versuchen Sie es in ein paar Minuten erneut',
es: 'Por favor, intente nuevamente en unos minutos', es: 'Por favor, intente nuevamente en unos minutos',
zh: '请在几分钟后重试',
}, },
'Working': { 'Working': {
fr: 'Opérationnel', fr: 'Opérationnel',
@ -616,6 +683,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Functioneel', nl: 'Functioneel',
de: 'Funktioniert', de: 'Funktioniert',
es: 'Trabajando', es: 'Trabajando',
zh: '正常运行',
}, },
'Unknown': { 'Unknown': {
fr: 'Inconnu', fr: 'Inconnu',
@ -625,6 +693,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Onbekend', nl: 'Onbekend',
de: 'Unbekannt', de: 'Unbekannt',
es: 'Desconocido', es: 'Desconocido',
zh: '未知',
}, },
'Please try to change the request method, headers, payload, or URL': { 'Please try to change the request method, headers, payload, or URL': {
fr: 'Veuillez essayer de changer la méthode de requête, les en-têtes, le contenu ou lURL', fr: 'Veuillez essayer de changer la méthode de requête, les en-têtes, le contenu ou lURL',
@ -633,7 +702,8 @@ Object.defineProperty(window, 'l10n', {
pt: 'Tente alterar o método de solicitação, cabeçalhos, payload ou URL', pt: 'Tente alterar o método de solicitação, cabeçalhos, payload ou URL',
nl: 'Probeer het opnieuw met een andere methode, headers, payload of URL', nl: 'Probeer het opnieuw met een andere methode, headers, payload of URL',
de: 'Bitte versuchen Sie, die Anfragemethode, Header, Payload oder URL zu ändern', de: 'Bitte versuchen Sie, die Anfragemethode, Header, Payload oder URL zu ändern',
es: 'Por favor intente cambiar el método de la petición, cabeceras, carga o URL' es: 'Por favor intente cambiar el método de la petición, cabeceras, carga o URL',
zh: '请尝试更改请求方法、标头、有效负载或URL',
}, },
'Please check your authorization data': { 'Please check your authorization data': {
fr: 'Veuillez vérifier vos données dautorisation', fr: 'Veuillez vérifier vos données dautorisation',
@ -643,6 +713,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Controleer de authenticatiegegevens', nl: 'Controleer de authenticatiegegevens',
de: 'Bitte überprüfen Sie Ihre Zugangsdaten', de: 'Bitte überprüfen Sie Ihre Zugangsdaten',
es: 'Verifique sus datos de autorización', es: 'Verifique sus datos de autorización',
zh: '请检查您的授权数据',
}, },
'Please double-check the URL and try again': { 'Please double-check the URL and try again': {
fr: 'Veuillez vérifier lURL et réessayer', fr: 'Veuillez vérifier lURL et réessayer',
@ -652,6 +723,7 @@ Object.defineProperty(window, 'l10n', {
nl: 'Controleer de URL en probeer het opnieuw', nl: 'Controleer de URL en probeer het opnieuw',
de: 'Bitte überprüfen Sie die URL und versuchen Sie es erneut', de: 'Bitte überprüfen Sie die URL und versuchen Sie es erneut',
es: 'Verifique de nuevo la URL y vuelva a probar', es: 'Verifique de nuevo la URL y vuelva a probar',
zh: '请再次检查URL并重试',
}, },
}; };

View File

@ -18,3 +18,4 @@ By default, pages markup contains strings in English (`en` locale). If you want
- 🇳🇱 Dutch by [@SchoNie](https://github.com/SchoNie) - 🇳🇱 Dutch by [@SchoNie](https://github.com/SchoNie)
- 🇩🇪 German by [@mschoeffmann](https://github.com/mschoeffmann) - 🇩🇪 German by [@mschoeffmann](https://github.com/mschoeffmann)
- 🇪🇸 Spanish by [@Runig006](https://github.com/Runig006) - 🇪🇸 Spanish by [@Runig006](https://github.com/Runig006)
- 🇨🇳 Chinese by [@CDN18](https://github.com/CDN18)