From 7b4377ad9d8a7205416df8d6217ef2b010f89481 Mon Sep 17 00:00:00 2001 From: Taras Madan Date: Wed, 22 Jan 2025 16:07:17 +0100 Subject: vendor: delete --- .../github.com/lasiar/canonicalheader/.gitignore | 1 - .../lasiar/canonicalheader/.golangci.yaml | 784 --------------------- .../lasiar/canonicalheader/.goreleaser.yaml | 18 - vendor/github.com/lasiar/canonicalheader/LICENCE | 21 - vendor/github.com/lasiar/canonicalheader/README.md | 77 -- .../github.com/lasiar/canonicalheader/analyzer.go | 265 ------- .../lasiar/canonicalheader/constant_string.go | 50 -- .../lasiar/canonicalheader/initialism.go | 75 -- .../lasiar/canonicalheader/literal_string.go | 80 --- vendor/github.com/lasiar/canonicalheader/makefile | 12 - 10 files changed, 1383 deletions(-) delete mode 100644 vendor/github.com/lasiar/canonicalheader/.gitignore delete mode 100644 vendor/github.com/lasiar/canonicalheader/.golangci.yaml delete mode 100644 vendor/github.com/lasiar/canonicalheader/.goreleaser.yaml delete mode 100644 vendor/github.com/lasiar/canonicalheader/LICENCE delete mode 100644 vendor/github.com/lasiar/canonicalheader/README.md delete mode 100644 vendor/github.com/lasiar/canonicalheader/analyzer.go delete mode 100644 vendor/github.com/lasiar/canonicalheader/constant_string.go delete mode 100644 vendor/github.com/lasiar/canonicalheader/initialism.go delete mode 100644 vendor/github.com/lasiar/canonicalheader/literal_string.go delete mode 100644 vendor/github.com/lasiar/canonicalheader/makefile (limited to 'vendor/github.com/lasiar') diff --git a/vendor/github.com/lasiar/canonicalheader/.gitignore b/vendor/github.com/lasiar/canonicalheader/.gitignore deleted file mode 100644 index 723ef36f4..000000000 --- a/vendor/github.com/lasiar/canonicalheader/.gitignore +++ /dev/null @@ -1 +0,0 @@ -.idea \ No newline at end of file diff --git a/vendor/github.com/lasiar/canonicalheader/.golangci.yaml b/vendor/github.com/lasiar/canonicalheader/.golangci.yaml deleted file mode 100644 index 997ec0cb0..000000000 --- a/vendor/github.com/lasiar/canonicalheader/.golangci.yaml +++ /dev/null @@ -1,784 +0,0 @@ -# See: https://olegk.dev/go-linters-configuration-the-right-version - -run: - # Automatically adjust the maximum concurrency to the container CPU quota. - concurrency: 0 - - # I really care about the result, so I'm fine to wait for it. - timeout: 30m - - # Fail if the error was met. - issues-exit-code: 1 - - # This is very important, bugs in tests are not acceptable either. - tests: true - - # In most cases this can be empty but there is a popular pattern - # to keep integration tests under this tag. Such tests often require - # additional setups like Postgres, Redis etc and are run separately. - # (to be honest I don't find this useful but I have such tags) - build-tags: - - integration - - # Autogenerated files can be skipped (I'm looking at you gRPC). - # AFAIK autogen files are skipped but skipping the whole directory should be somewhat faster. - #skip-files: - # - "protobuf/.*.go" - - # With the read-only mode linter will fail if go.mod file is outdated. - modules-download-mode: readonly - - # Till today I didn't know this param exists, never ran 2 golangci-lint at once. - allow-parallel-runners: false - - # Keep this empty to use the Go version from the go.mod file. - go: "" - -linters: - # Set to true runs only fast linters. - # Good option for 'lint on save', pre-commit hook or CI. - fast: false - - enable: - # Globals and init() are no ok, because this linter use on golangci lint. - - gochecknoglobals - - gochecknoinits - # Check for pass []any as any in variadic func(...any). - # Rare case but saved me from debugging a few times. - - asasalint - - # I prefer plane ASCII identifiers. - # Symbol `∆` instead of `delta` looks cool but no thanks. - - asciicheck - - # Checks for dangerous unicode character sequences. - # Super rare but why not to be a bit paranoid? - - bidichk - - # Checks whether HTTP response body is closed successfully. - - bodyclose - - # Check whether the function uses a non-inherited context. - - contextcheck - - # after go 1.22 don't need copy var at for range. - - copyloopvar - - # Find duplicate words, rare. - - dupword - - # Check for two durations multiplied together. - - durationcheck - - # Forces to not skip error check. - - errcheck - - # Checks `Err-` prefix for var and `-Error` suffix for error type. - - errname - - # Suggests to use `%w` for error-wrapping. - - errorlint - - # Checks for pointers to enclosing loop variables. - - exportloopref - - - # Imports order. - - gci - - # As you already know I'm a co-author. It would be strange to not use - # one of my warmly loved projects. - - gocritic - - # Forces to put `.` at the end of the comment. Code is poetry. - - godot - - # Might not be that important but I prefer to keep all of them. - # `gofumpt` is amazing, kudos to Daniel Marti https://github.com/mvdan/gofumpt - - gofmt - - gofumpt - - goimports - - # Allow or ban replace directives in go.mod - # or force explanation for retract directives. - - gomoddirectives - - # Powerful security-oriented linter. But requires some time to - # configure it properly, see https://github.com/securego/gosec#available-rules - - gosec - - # Linter that specializes in simplifying code. - - gosimple - - # Official Go tool. Must have. - - govet - - # Detects when assignments to existing variables are not used - # Last week I caught a bug with it. - - ineffassign - - # range over int, work after go 1.22 - - intrange - - # Fix all the misspells, amazing thing. - - misspell - - # Reports wrong mirror patterns of bytes/strings usage. - - mirror - - # Finds naked/bare returns and requires change them. - - nakedret - - # Both require a bit more explicit returns. - - nilerr - - nilnil - - # Finds sending HTTP request without context.Context. - - noctx - - # Forces comment why another check is disabled. - # Better not to have //nolint: at all ;) - - nolintlint - - # aiming at usages of fmt.Sprintf which have faster alternatives. - - perfsprint - - # Finds slices that could potentially be pre-allocated. - # Small performance win + cleaner code. - - prealloc - - # Finds shadowing of Go's predeclared identifiers. - # I hear a lot of complaints from junior developers. - # But after some time they find it very useful. - - predeclared - - # Lint your Prometheus metrics name. - - promlinter - - # Checks that package variables are not reassigned. - # Super rare case but can catch bad things (like `io.EOF = nil`) - - reassign - - # Drop-in replacement of `golint`. - - revive - - # Somewhat similar to `bodyclose` but for `database/sql` package. - - rowserrcheck - - sqlclosecheck - - # Ensure consistent code style when using log/slog. - - sloglint - - # I have found that it's not the same as staticcheck binary :\ - - staticcheck - - # Is a replacement for `golint`, similar to `revive`. - - stylecheck - - # Check struct tags. - - tagliatelle - - # Test-related checks. All of them are good. - - tenv - - testableexamples - - testifylint - - thelper - - tparallel - - # Remove unnecessary type conversions, make code cleaner - - unconvert - - # Might be noisy but better to know what is unused - - unparam - - # Must have. Finds unused declarations. - - unused - - # Detect the possibility to use variables/constants from stdlib. - - usestdlibvars - - # Finds wasted assignment statements. - - wastedassign - - disable: - # Detects struct contained context.Context field. Not a problem. - - containedctx - - # Checks function and package cyclomatic complexity. - # I can have a long but trivial switch-case. - # - # Cyclomatic complexity is a measurement, not a goal. - # (c) Bryan C. Mills / https://github.com/bcmills - - cyclop - - # Check declaration order of types, consts, vars and funcs. - # I like it but I don't use it. - - decorder - - # Checks if package imports are in a list of acceptable packages. - # I'm very picky about what I import, so no automation. - - depguard - - # Checks assignments with too many blank identifiers. Very rare. - - dogsled - - # Tool for code clone detection. - - dupl - - # I'm fine to check the error from json.Marshal ¯\_(ツ)_/¯ - - errchkjson - - # All SQL queries MUST BE covered with tests. - - execinquery - - # Forces to handle more cases. Cool but noisy. - - exhaustive - - exhaustruct - - # Forbids some identifiers. I don't have a case for it. - - forbidigo - - # Finds forced type assertions, very good for juniors. - - forcetypeassert - - # I might have long but a simple function. - - funlen - - # I'm not a fan of ginkgo and gomega packages. - - ginkgolinter - - # Checks that compiler directive comments (//go:) are valid. Rare. - - gocheckcompilerdirectives - - # Same as `cyclop` linter (see above) - - gocognit - - goconst - - gocyclo - - # TODO and friends are ok. - - godox - - # Check the error handling expressions. Too noisy. - - err113 - - # I don't use file headers. - - goheader - - # Reports magic consts. Might be noisy but still good. - - mnd - - # Allowed/blocked packages to import. I prefer to do it manually. - - gomodguard - - # Printf-like functions must have -f. - - goprintffuncname - - # Groupt declarations, I prefer manually. - - grouper - - # Checks imports aliases, rare. - - importas - - # Forces tiny interfaces, very subjective. - - interfacebloat - - # Accept interfaces, return types. Not always. - - ireturn - - # I don't set line length. 120 is fine by the way ;) - - lll - - # Some log checkers, might be useful. - - loggercheck - - # Maintainability index of each function, subjective. - - maintidx - - # Slice declarations with non-zero initial length. Not my case. - - makezero - - # Enforce tags in un/marshaled structs. Cool but not my case. - - musttag - - # Deeply nested if statements, subjective. - - nestif - - # Forces newlines in some places. - - nlreturn - - # Reports all named returns, not that bad. - - nonamedreturns - - # Finds misuse of Sprintf with host:port in a URL. Cool but rare. - - nosprintfhostport - - # I don't use t.Parallel() that much. - - paralleltest - - # Often non-`_test` package is ok. - - testpackage - - # Compiler can do it too :) - - typecheck - - # I'm fine with long variable names with a small scope. - - varnamelen - - # gofmt,gofumpt covers that (from what I know). - - whitespace - - # Don't find it useful to wrap all errors from external packages. - - wrapcheck - - # Forces you to use empty lines. Great if configured correctly. - # I mean there is an agreement in a team. - - wsl - -linters-settings: - gci: - sections: - - standard - - default - - localmodule - - revive: - # Maximum number of open files at the same time. - # See https://github.com/mgechev/revive#command-line-flags - # Defaults to unlimited. - max-open-files: 2048 - # When set to false, ignores files with "GENERATED" header, similar to golint. - # See https://github.com/mgechev/revive#available-rules for details. - # Default: false - ignore-generated-header: true - # Sets the default severity. - # See https://github.com/mgechev/revive#configuration - # Default: warning - severity: error - # Enable all available rules. - # Default: false - enable-all-rules: true - # Sets the default failure confidence. - # This means that linting errors with less than 0.8 confidence will be ignored. - # Default: 0.8 - confidence: 0.1 - rules: - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#add-constant - - name: add-constant - severity: warning - disabled: false - arguments: - - maxLitCount: "3" - allowStrs: '""' - allowInts: "0,1,2" - allowFloats: "0.0,0.,1.0,1.,2.0,2." - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#argument-limit - - name: argument-limit - severity: warning - disabled: false - arguments: [4] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#atomic - - name: atomic - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#banned-characters - - name: banned-characters - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#bare-return - - name: bare-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#blank-imports - - name: blank-imports - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#bool-literal-in-expr - - name: bool-literal-in-expr - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#call-to-gc - - name: call-to-gc - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#cognitive-complexity - - name: cognitive-complexity - severity: warning - disabled: true - arguments: [7] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#comment-spacings - - name: comment-spacings - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#confusing-naming - - name: confusing-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#confusing-results - - name: confusing-results - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#constant-logical-expr - - name: constant-logical-expr - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#context-as-argument - - name: context-as-argument - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#context-keys-type - - name: context-keys-type - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#cyclomatic - - name: cyclomatic - severity: warning - disabled: true - arguments: [3] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#datarace - - name: datarace - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#deep-exit - - name: deep-exit - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#defer - - name: defer - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#dot-imports - - name: dot-imports - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#duplicated-imports - - name: duplicated-imports - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#early-return - - name: early-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#empty-block - - name: empty-block - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#empty-lines - - name: empty-lines - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#enforce-map-style - - name: enforce-map-style - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#error-naming - - name: error-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#error-return - - name: error-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#function-length - - name: function-length - severity: warning - disabled: true - arguments: [10, 0] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#error-strings - - name: error-strings - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#errorf - - name: errorf - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#exported - - name: exported - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#file-header - - name: file-header - severity: warning - disabled: true - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#flag-parameter - - name: flag-parameter - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#function-result-limit - - name: function-result-limit - severity: warning - disabled: false - arguments: [2] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#get-return - - name: get-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#identical-branches - - name: identical-branches - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#if-return - - name: if-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#increment-decrement - - name: increment-decrement - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#indent-error-flow - - name: indent-error-flow - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#import-alias-naming - - name: import-alias-naming - severity: warning - disabled: false - arguments: - - "^[a-z][a-z0-9]{0,}$" - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#imports-blacklist - - name: imports-blacklist - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#import-shadowing - - name: import-shadowing - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#line-length-limit - - name: line-length-limit - severity: warning - disabled: true - arguments: [80] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#max-public-structs - - name: max-public-structs - severity: warning - disabled: false - arguments: [3] - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#modifies-parameter - - name: modifies-parameter - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#modifies-value-receiver - - name: modifies-value-receiver - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#nested-structs - - name: nested-structs - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#optimize-operands-order - - name: optimize-operands-order - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#package-comments - - name: package-comments - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#range - - name: range - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#range-val-in-closure - - name: range-val-in-closure - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#range-val-address - - name: range-val-address - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#receiver-naming - - name: receiver-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#redundant-import-alias - - name: redundant-import-alias - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#redefines-builtin-id - - name: redefines-builtin-id - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#string-of-int - - name: string-of-int - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#string-format - - name: string-format - severity: warning - disabled: false - arguments: - - - 'core.WriteError[1].Message' - - '/^([^A-Z]|$)/' - - must not start with a capital letter - - - 'fmt.Errorf[0]' - - '/(^|[^\.!?])$/' - - must not end in punctuation - - - panic - - '/^[^\n]*$/' - - must not contain line breaks - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#struct-tag - - name: struct-tag - arguments: - - "json,inline" - - "bson,outline,gnu" - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#superfluous-else - - name: superfluous-else - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#time-equal - - name: time-equal - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#time-naming - - name: time-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#var-naming - - name: var-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#var-declaration - - name: var-declaration - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unconditional-recursion - - name: unconditional-recursion - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unexported-naming - - name: unexported-naming - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unexported-return - - name: unexported-return - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unhandled-error - - name: unhandled-error - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unnecessary-stmt - - name: unnecessary-stmt - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unreachable-code - - name: unreachable-code - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unused-parameter - - name: unused-parameter - severity: warning - disabled: false - arguments: - - allowRegex: "^_" - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#unused-receiver - - name: unused-receiver - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#useless-break - - name: useless-break - severity: warning - disabled: false - # https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#waitgroup-by-value - - name: waitgroup-by-value - severity: warning - disabled: false - # I'm biased and I'm enabling more than 100 checks - # Might be too much for you. See https://go-critic.com/overview.html - gocritic: - enabled-tags: - - diagnostic - - experimental - - opinionated - - performance - - style - disabled-checks: - # These 3 will detect many cases, but they do sense - # if it's performance oriented code - - hugeParam - - rangeExprCopy - - rangeValCopy - - godot: - scope: all - - errcheck: - # Report `a := b.(MyStruct)` when `a, ok := ...` should be. - check-type-assertions: true # Default: false - - # Report skipped checks:`num, _ := strconv.Atoi(numStr)`. - check-blank: true # Default: false - - # Function to skip. - exclude-functions: - - io/ioutil.ReadFile - - io.Copy(*bytes.Buffer) - - io.Copy(os.Stdout) - - govet: - disable: - - fieldalignment # I'm ok to waste some bytes - - nakedret: - # No naked returns, ever. - max-func-lines: 1 # Default: 30 - - tagliatelle: - case: - rules: - json: snake # why it's not a `snake` by default?! - yaml: snake # why it's not a `snake` by default?! - xml: camel - bson: camel - avro: snake - mapstructure: kebab - -# See also https://gist.github.com/cristaloleg/dc29ca0ef2fb554de28d94c3c6f6dc88 - -output: - # I prefer the simplest one: `line-number` and saving to `lint.txt` - # - # The `tab` also looks good and with the next release I will switch to it - # (ref: https://github.com/golangci/golangci-lint/issues/3728) - # - # There are more formats which can be used on CI or by your IDE. - formats: - - format: line-number - - # I do not find this useful, parameter above already enables filepath - # with a line and column. For me, it's easier to follow the path and - # see the line in an IDE where I see more code and understand it better. - print-issued-lines: false - - # Must have. Easier to understand the output. - print-linter-name: true - - # No, no skips, everything should be reported. - uniq-by-line: false - - # To be honest no idea when this can be needed, maybe a multi-module setup? - path-prefix: "" - - # Slightly easier to follow the results + getting deterministic output. - sort-results: true - -issues: - exclude-dirs-use-default: false - # I found it strange to skip the errors, setting 0 to have all the results. - max-issues-per-linter: 0 - - # Same here, nothing should be skipped to not miss errors. - max-same-issues: 0 - - # When set to `true` linter will analyze only new code which are - # not committed or after some specific revision. This is a cool - # feature when you're going to introduce linter into a big project. - # But I prefer going gradually package by package. - # So, it's set to `false` to scan all code. - new: false - - # 2 other params regarding git integration - - # Even with a recent GPT-4 release I still believe that - # I know better how to do my job and fix the suggestions. - fix: false \ No newline at end of file diff --git a/vendor/github.com/lasiar/canonicalheader/.goreleaser.yaml b/vendor/github.com/lasiar/canonicalheader/.goreleaser.yaml deleted file mode 100644 index ada67063e..000000000 --- a/vendor/github.com/lasiar/canonicalheader/.goreleaser.yaml +++ /dev/null @@ -1,18 +0,0 @@ -builds: - - main: ./cmd/canonicalheader - env: - - CGO_ENABLED=0 - flags: - - -trimpath - ldflags: - - -s -w - targets: - - darwin_amd64 - - darwin_arm64 - - linux_amd64 - - windows_amd64 - -archives: - - format_overrides: - - goos: windows - format: zip \ No newline at end of file diff --git a/vendor/github.com/lasiar/canonicalheader/LICENCE b/vendor/github.com/lasiar/canonicalheader/LICENCE deleted file mode 100644 index 5b93b736c..000000000 --- a/vendor/github.com/lasiar/canonicalheader/LICENCE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2023 Roman Chaliy - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/vendor/github.com/lasiar/canonicalheader/README.md b/vendor/github.com/lasiar/canonicalheader/README.md deleted file mode 100644 index 997145219..000000000 --- a/vendor/github.com/lasiar/canonicalheader/README.md +++ /dev/null @@ -1,77 +0,0 @@ -# canonicalheader - -[![CI](https://github.com/lasiar/canonicalheader/actions/workflows/test.yml/badge.svg)](https://github.com/lasiar/canonicalheader/actions/workflows/test.yml) -[![tag](https://img.shields.io/github/tag/lasiar/canonicalheader.svg)](https://github.com/lasiar/canonicalheader/releases) -[![Go Report Card](https://goreportcard.com/badge/github.com/lasiar/canonicalheader)](https://goreportcard.com/report/github.com/lasiar/canonicalheader) -[![License](https://img.shields.io/github/license/lasiar/canonicalheader)](./LICENCE) - -Golang linter for check canonical header. - -### Install - -```shell -go install -v github.com/lasiar/canonicalheader/cmd/canonicalheader@latest -``` - -Or download the binary file from the [release](https://github.com/lasiar/canonicalheader/releases/latest). - - -### Example - -before - -```go -package main - -import ( - "net/http" -) - -const testHeader = "testHeader" - -func main() { - v := http.Header{} - v.Get(testHeader) - - v.Get("Test-HEader") - v.Set("Test-HEader", "value") - v.Add("Test-HEader", "value") - v.Del("Test-HEader") - v.Values("Test-HEader") - - v.Set("Test-Header", "value") - v.Add("Test-Header", "value") - v.Del("Test-Header") - v.Values("Test-Header") -} - -``` - -after - -```go -package main - -import ( - "net/http" -) - -const testHeader = "testHeader" - -func main() { - v := http.Header{} - v.Get(testHeader) - - v.Get("Test-Header") - v.Set("Test-Header", "value") - v.Add("Test-Header", "value") - v.Del("Test-Header") - v.Values("Test-Header") - - v.Set("Test-Header", "value") - v.Add("Test-Header", "value") - v.Del("Test-Header") - v.Values("Test-Header") -} - -``` diff --git a/vendor/github.com/lasiar/canonicalheader/analyzer.go b/vendor/github.com/lasiar/canonicalheader/analyzer.go deleted file mode 100644 index 258ebdfd4..000000000 --- a/vendor/github.com/lasiar/canonicalheader/analyzer.go +++ /dev/null @@ -1,265 +0,0 @@ -package canonicalheader - -import ( - "fmt" - "go/ast" - "go/types" - "net/http" - - "github.com/go-toolsmith/astcast" - "golang.org/x/tools/go/analysis" - "golang.org/x/tools/go/analysis/passes/inspect" - "golang.org/x/tools/go/ast/inspector" - "golang.org/x/tools/go/types/typeutil" -) - -const ( - pkgPath = "net/http" - name = "Header" -) - -//nolint:gochecknoglobals // struct is not big, can be skip. -var Analyzer = &analysis.Analyzer{ - Name: "canonicalheader", - Doc: "canonicalheader checks whether net/http.Header uses canonical header", - Run: run, - Requires: []*analysis.Analyzer{inspect.Analyzer}, -} - -type argumenter interface { - diagnostic(canonicalHeader string) analysis.Diagnostic - value() string -} - -func run(pass *analysis.Pass) (any, error) { - var headerObject types.Object - for _, object := range pass.TypesInfo.Uses { - if object.Pkg() != nil && - object.Pkg().Path() == pkgPath && - object.Name() == name { - headerObject = object - break - } - } - - if headerObject == nil { - //nolint:nilnil // nothing to do here, because http.Header{} not usage. - return nil, nil - } - - spctor, ok := pass.ResultOf[inspect.Analyzer].(*inspector.Inspector) - if !ok { - return nil, fmt.Errorf("want %T, got %T", spctor, pass.ResultOf[inspect.Analyzer]) - } - - wellKnownHeaders := initialism() - - nodeFilter := []ast.Node{ - (*ast.CallExpr)(nil), - } - var outerErr error - - spctor.Preorder(nodeFilter, func(n ast.Node) { - if outerErr != nil { - return - } - - callExp, ok := n.(*ast.CallExpr) - if !ok { - return - } - - var ( - // gotType type receiver. - gotType types.Type - gotMethodName string - ) - - switch t := typeutil.Callee(pass.TypesInfo, callExp).(type) { - // Direct call method. - case *types.Func: - fn := t - // Find net/http.Header{} by function call. - signature, ok := fn.Type().(*types.Signature) - if !ok { - return - } - - recv := signature.Recv() - - // It's a func, not a method. - if recv == nil { - return - } - gotType = recv.Type() - gotMethodName = astcast.ToSelectorExpr(callExp.Fun).Sel.Name - - // h := http.Header{} - // f := h.Get - // v("Test-Value"). - case *types.Var: - ident, ok := callExp.Fun.(*ast.Ident) - if !ok { - return - } - - if ident.Obj == nil { - return - } - - // f := h.Get. - assign, ok := ident.Obj.Decl.(*ast.AssignStmt) - if !ok { - return - } - - // For case `i, v := 0, h.Get`. - // indexAssign--^. - indexAssign := -1 - for i, lh := range assign.Lhs { - // Find by name of variable. - if astcast.ToIdent(lh).Name == ident.Name { - indexAssign = i - } - } - - // Not found. - if indexAssign == -1 { - return - } - - if len(assign.Rhs) <= indexAssign { - return - } - - sel, ok := assign.Rhs[indexAssign].(*ast.SelectorExpr) - if !ok { - return - } - - gotMethodName = sel.Sel.Name - ident, ok = sel.X.(*ast.Ident) - if !ok { - return - } - - obj := pass.TypesInfo.ObjectOf(ident) - gotType = obj.Type() - - default: - return - } - - // It is not net/http.Header{}. - if !types.Identical(gotType, headerObject.Type()) { - return - } - - // Search for known methods where the key is the first arg. - if !isValidMethod(gotMethodName) { - return - } - - // Should be more than one. Because get the value by index it - // will not be superfluous. - if len(callExp.Args) == 0 { - return - } - - callArg := callExp.Args[0] - - // Check for type casting from myString to string. - // it could be: Get(string(string(string(myString)))). - // need this node------------------------^^^^^^^^. - for { - // If it is not *ast.CallExpr, this is a value. - c, ok := callArg.(*ast.CallExpr) - if !ok { - break - } - - // Some function is called, skip this case. - if len(c.Args) == 0 { - return - } - - f, ok := c.Fun.(*ast.Ident) - if !ok { - break - } - - obj := pass.TypesInfo.ObjectOf(f) - // nil may be by code, but not by logic. - // TypeInfo should contain of type. - if obj == nil { - break - } - - // This is function. - // Skip this method call. - _, ok = obj.Type().(*types.Signature) - if ok { - return - } - - callArg = c.Args[0] - } - - var arg argumenter - switch t := callArg.(type) { - case *ast.BasicLit: - lString, err := newLiteralString(t) - if err != nil { - return - } - - arg = lString - - case *ast.Ident: - constString, err := newConstantKey(pass.TypesInfo, t) - if err != nil { - return - } - - arg = constString - - default: - return - } - - argValue := arg.value() - headerKeyCanonical := http.CanonicalHeaderKey(argValue) - if argValue == headerKeyCanonical { - return - } - - headerKeyCanonical, isWellKnown := canonicalHeaderKey(argValue, wellKnownHeaders) - if argValue == headerKeyCanonical || isWellKnown { - return - } - - pass.Report(arg.diagnostic(headerKeyCanonical)) - }) - - return nil, outerErr -} - -func canonicalHeaderKey(s string, m map[string]string) (string, bool) { - canonical := http.CanonicalHeaderKey(s) - - wellKnown, ok := m[canonical] - if !ok { - return canonical, ok - } - - return wellKnown, ok -} - -func isValidMethod(name string) bool { - switch name { - case "Get", "Set", "Add", "Del", "Values": - return true - default: - return false - } -} diff --git a/vendor/github.com/lasiar/canonicalheader/constant_string.go b/vendor/github.com/lasiar/canonicalheader/constant_string.go deleted file mode 100644 index 27988f0d5..000000000 --- a/vendor/github.com/lasiar/canonicalheader/constant_string.go +++ /dev/null @@ -1,50 +0,0 @@ -package canonicalheader - -import ( - "fmt" - "go/ast" - "go/constant" - "go/token" - "go/types" - - "golang.org/x/tools/go/analysis" -) - -type constantString struct { - originalValue, - nameOfConst string - - pos token.Pos - end token.Pos -} - -func newConstantKey(info *types.Info, ident *ast.Ident) (constantString, error) { - c, ok := info.ObjectOf(ident).(*types.Const) - if !ok { - return constantString{}, fmt.Errorf("type %T is not support", c) - } - - return constantString{ - nameOfConst: c.Name(), - originalValue: constant.StringVal(c.Val()), - pos: ident.Pos(), - end: ident.End(), - }, nil -} - -func (c constantString) diagnostic(canonicalHeader string) analysis.Diagnostic { - return analysis.Diagnostic{ - Pos: c.pos, - End: c.end, - Message: fmt.Sprintf( - "const %q used as a key at http.Header, but %q is not canonical, want %q", - c.nameOfConst, - c.originalValue, - canonicalHeader, - ), - } -} - -func (c constantString) value() string { - return c.originalValue -} diff --git a/vendor/github.com/lasiar/canonicalheader/initialism.go b/vendor/github.com/lasiar/canonicalheader/initialism.go deleted file mode 100644 index c3d91c23e..000000000 --- a/vendor/github.com/lasiar/canonicalheader/initialism.go +++ /dev/null @@ -1,75 +0,0 @@ -// Code generated by initialismer; DO NOT EDIT. -package canonicalheader - -// initialism mapping of not canonical headers from -// https://en.wikipedia.org/wiki/List_of_HTTP_header_fields -// https://www.iana.org/assignments/http-fields/http-fields.xhtml. -func initialism() map[string]string { - return map[string]string{ - "A-Im": "A-IM", - "Accept-Ch": "Accept-CH", - "Alpn": "ALPN", - "Amp-Cache-Transform": "AMP-Cache-Transform", - "C-Pep": "C-PEP", - "C-Pep-Info": "C-PEP-Info", - "Cal-Managed-Id": "Cal-Managed-ID", - "Caldav-Timezones": "CalDAV-Timezones", - "Cdn-Cache-Control": "CDN-Cache-Control", - "Cdn-Loop": "CDN-Loop", - "Content-Id": "Content-ID", - "Content-Md5": "Content-MD5", - "Dasl": "DASL", - "Dav": "DAV", - "Differential-Id": "Differential-ID", - "Dnt": "DNT", - "Dpop": "DPoP", - "Dpop-Nonce": "DPoP-Nonce", - "Ediint-Features": "EDIINT-Features", - "Etag": "ETag", - "Expect-Ct": "Expect-CT", - "Getprofile": "GetProfile", - "Http2-Settings": "HTTP2-Settings", - "Im": "IM", - "Include-Referred-Token-Binding-Id": "Include-Referred-Token-Binding-ID", - "Last-Event-Id": "Last-Event-ID", - "Mime-Version": "MIME-Version", - "Nel": "NEL", - "Odata-Entityid": "OData-EntityId", - "Odata-Isolation": "OData-Isolation", - "Odata-Maxversion": "OData-MaxVersion", - "Odata-Version": "OData-Version", - "Optional-Www-Authenticate": "Optional-WWW-Authenticate", - "Oscore": "OSCORE", - "Oslc-Core-Version": "OSLC-Core-Version", - "P3p": "P3P", - "Pep": "PEP", - "Pep-Info": "PEP-Info", - "Pics-Label": "PICS-Label", - "Profileobject": "ProfileObject", - "Repeatability-Client-Id": "Repeatability-Client-ID", - "Repeatability-Request-Id": "Repeatability-Request-ID", - "Sec-Gpc": "Sec-GPC", - "Sec-Websocket-Accept": "Sec-WebSocket-Accept", - "Sec-Websocket-Extensions": "Sec-WebSocket-Extensions", - "Sec-Websocket-Key": "Sec-WebSocket-Key", - "Sec-Websocket-Protocol": "Sec-WebSocket-Protocol", - "Sec-Websocket-Version": "Sec-WebSocket-Version", - "Setprofile": "SetProfile", - "Slug": "SLUG", - "Soapaction": "SoapAction", - "Status-Uri": "Status-URI", - "Tcn": "TCN", - "Te": "TE", - "Ttl": "TTL", - "Uri": "URI", - "Www-Authenticate": "WWW-Authenticate", - "X-Correlation-Id": "X-Correlation-ID", - "X-Dns-Prefetch-Control": "X-DNS-Prefetch-Control", - "X-Real-Ip": "X-Real-IP", - "X-Request-Id": "X-Request-ID", - "X-Ua-Compatible": "X-UA-Compatible", - "X-Webkit-Csp": "X-WebKit-CSP", - "X-Xss": "X-XSS", - "X-Xss-Protection": "X-XSS-Protection", - } -} diff --git a/vendor/github.com/lasiar/canonicalheader/literal_string.go b/vendor/github.com/lasiar/canonicalheader/literal_string.go deleted file mode 100644 index 71cd5f397..000000000 --- a/vendor/github.com/lasiar/canonicalheader/literal_string.go +++ /dev/null @@ -1,80 +0,0 @@ -package canonicalheader - -import ( - "fmt" - "go/ast" - "go/token" - "strconv" - "unicode/utf8" - "unsafe" - - "golang.org/x/tools/go/analysis" -) - -type literalString struct { - originalValue string - quote byte - pos, end token.Pos -} - -func newLiteralString(basicList *ast.BasicLit) (literalString, error) { - if basicList.Kind != token.STRING { - return literalString{}, fmt.Errorf("%#v is not a string", basicList) - } - - if len(basicList.Value) < 2 { - return literalString{}, fmt.Errorf("%#v has a strange value length %q", basicList, basicList.Value) - } - - quote := basicList.Value[0] - switch quote { - case '`', '"': - default: - return literalString{}, fmt.Errorf("%q is a strange quote", quote) - } - - originalValue, err := strconv.Unquote(basicList.Value) - if err != nil { - return literalString{}, fmt.Errorf("unquote %q: %w", basicList.Value, err) - } - - if !utf8.ValidString(originalValue) { - return literalString{}, fmt.Errorf("%#v is not a valid utf8 string", basicList.Value) - } - - return literalString{ - originalValue: originalValue, - quote: quote, - pos: basicList.Pos(), - end: basicList.End(), - }, nil -} - -func (l literalString) diagnostic(canonicalHeader string) analysis.Diagnostic { - newText := make([]byte, 0, len(canonicalHeader)+2) - newText = append(newText, l.quote) - newText = append(newText, unsafe.Slice(unsafe.StringData(canonicalHeader), len(canonicalHeader))...) - newText = append(newText, l.quote) - - return analysis.Diagnostic{ - Pos: l.pos, - End: l.end, - Message: fmt.Sprintf("non-canonical header %q, instead use: %q", l.originalValue, canonicalHeader), - SuggestedFixes: []analysis.SuggestedFix{ - { - Message: fmt.Sprintf("should replace %q with %q", l.originalValue, canonicalHeader), - TextEdits: []analysis.TextEdit{ - { - Pos: l.pos, - End: l.end, - NewText: newText, - }, - }, - }, - }, - } -} - -func (l literalString) value() string { - return l.originalValue -} diff --git a/vendor/github.com/lasiar/canonicalheader/makefile b/vendor/github.com/lasiar/canonicalheader/makefile deleted file mode 100644 index a96cb628e..000000000 --- a/vendor/github.com/lasiar/canonicalheader/makefile +++ /dev/null @@ -1,12 +0,0 @@ -.PHONY: - -test: - go test -v -race ./... - -linter: - golangci-lint -v run ./... - -generate: - go run ./cmd/initialismer/*.go -target="mapping" > ./initialism.go - go run ./cmd/initialismer/*.go -target="test" > ./testdata/src/initialism/initialism.go - gofmt -w ./initialism.go ./testdata/src/initialism/initialism.go -- cgit mrf-deployment