-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #6 from AtomicEmails/v2.0.0-hotfix-3
refactor: Added GolangCI-lint GitHub Action and refactored code to follow the linter rules
- Loading branch information
Showing
37 changed files
with
1,309 additions
and
281 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
name: golangci-lint | ||
on: | ||
push: | ||
branches: | ||
- "main" | ||
- "**-hotfix**" | ||
pull_request: | ||
|
||
permissions: | ||
contents: read | ||
pull-requests: read | ||
|
||
jobs: | ||
golangci: | ||
name: lint | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-go@v4 | ||
with: | ||
go-version: '1.20' | ||
cache: false | ||
- name: golangci-lint | ||
uses: golangci/golangci-lint-action@v3 | ||
with: | ||
version: latest | ||
only-new-issues: true | ||
install-mode: "goinstall" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,321 @@ | ||
run: | ||
concurrency: 12 | ||
timeout: 5m | ||
skip-dirs: | ||
- ent | ||
modules-download-mode: readonly | ||
go: "1.20" | ||
|
||
linters: | ||
enable: | ||
- errcheck | ||
- gosimple | ||
- govet | ||
- ineffassign | ||
- staticcheck | ||
- unused | ||
- asasalint | ||
- asciicheck | ||
- bidichk | ||
- dupl | ||
- revive | ||
- gocognit | ||
- gofumpt | ||
|
||
linters-settings: | ||
revive: | ||
ignore-generated-header: true | ||
confidence: 0.8 | ||
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#banned-characters | ||
- name: banned-characters | ||
severity: warning | ||
disabled: false | ||
arguments: ["Ω", "Σ", "σ", "7"] | ||
# 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#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-keys-type | ||
- name: context-keys-type | ||
severity: warning | ||
disabled: false | ||
# 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 | ||
arguments: | ||
- ["call-chain", "loop"] | ||
# 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#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#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#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#function-length | ||
- name: function-length | ||
severity: warning | ||
disabled: true | ||
arguments: [10, 0] | ||
# 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#imports-blacklist | ||
- name: imports-blacklist | ||
severity: warning | ||
disabled: false | ||
arguments: | ||
- "crypto/md5" | ||
- "crypto/sha1" | ||
# 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: false | ||
arguments: [120] | ||
# https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#max-public-structs | ||
- name: max-public-structs | ||
severity: warning | ||
disabled: false | ||
arguments: [0] | ||
# 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#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 | ||
arguments: | ||
- ["ID"] # AllowList | ||
- ["VM"] # DenyList | ||
# 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 | ||
arguments: | ||
- "fmt.Printf" | ||
- "myFunction" | ||
# 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 | ||
# 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 | ||
gocognit: | ||
min-complexity: 10 | ||
|
||
output: | ||
format: github-actions |
Oops, something went wrong.