Compare commits
136 Commits
Author | SHA1 | Date | |
---|---|---|---|
0ad9a0988b | |||
235ea57a8f | |||
a6ed001163 | |||
3a7156a1b4 | |||
481f8ba892 | |||
06edb377a6 | |||
c2f79a722b | |||
d6eac69936 | |||
72684341c8 | |||
a926e2b3f3 | |||
07db5389c9 | |||
328c000029 | |||
3a79f8d45a | |||
43c645b597 | |||
88e5fc6380 | |||
6191de56c9 | |||
5423639e7b | |||
c225631afd | |||
b81d829cdb | |||
5b682fd40b | |||
3c6fb4a9a4 | |||
5acb063f68 | |||
08fdc050d7 | |||
b2bfd0f130 | |||
ef5f262671 | |||
a831c707bf | |||
9305be5e9f | |||
db74785593 | |||
4fbce4913d | |||
739eee4a65 | |||
bd7227e0c3 | |||
69982bc3b3 | |||
bda13fa868 | |||
c73fd3d91c | |||
deeca11946 | |||
ae667cb4ae | |||
419a536bfa | |||
1a17d0c27c | |||
4ed6524494 | |||
3edd9862e6 | |||
37d0148f78 | |||
90ccd72000 | |||
032fa5c5e4 | |||
b7bf60a5f7 | |||
ec5b0e19fc | |||
fd0768f916 | |||
3912a545cd | |||
6c4fff998e | |||
2856371066 | |||
beaa3476df | |||
05a61b80ab | |||
d5e3361cc5 | |||
c084df1245 | |||
954d4da58d | |||
4f42fc20b5 | |||
88a61333be | |||
42f1ace2dc | |||
e1a59558d0 | |||
60dc9d3648 | |||
5513777940 | |||
92e5575c87 | |||
6eab792f60 | |||
0445a18732 | |||
789454d92c | |||
0ae0217f51 | |||
565398b3aa | |||
2a9d271458 | |||
7dcc9e5fc3 | |||
422f985057 | |||
0db771b9ab | |||
5724191dd1 | |||
1ebc11120f | |||
7ee82f294a | |||
2de045bd7a | |||
fcb77afa4d | |||
0b542c7480 | |||
19d17f2de0 | |||
0335180c90 | |||
aae6024394 | |||
f016ec070e | |||
f8ba9f50be | |||
23255795fb | |||
1b63d697bd | |||
946a98c47e | |||
e837bc5a0c | |||
62870e168c | |||
421056684a | |||
451e84b610 | |||
1f5703370e | |||
7e8cc74dba | |||
bb2438c717 | |||
89600cb733 | |||
5c2b59ab34 | |||
c51d1e2f87 | |||
f3c064d740 | |||
6aefae24f7 | |||
537aa1903e | |||
f70e52dcc9 | |||
a304692ecb | |||
eeca7c5026 | |||
dfbcd2aee1 | |||
4421331437 | |||
5e6c1bb9e2 | |||
44eba43bae | |||
358a5e374f | |||
b9c65a53a1 | |||
9620ff9416 | |||
f973c7630e | |||
ac76264da2 | |||
b6b896c763 | |||
6d7c5c3914 | |||
df2c66cf29 | |||
f9d718302d | |||
c3ef0c3702 | |||
e498e7736a | |||
e1674c1af9 | |||
f233bcb89a | |||
4b237a63e5 | |||
af9f6d8b8e | |||
fb6358de51 | |||
226c5fce6f | |||
009d23987c | |||
6f887e018c | |||
5af63786ee | |||
128458b745 | |||
ca6bec4c75 | |||
042a8136fa | |||
827c06dc36 | |||
0105abc295 | |||
eb940f762b | |||
f9482e011a | |||
1e52a5d65c | |||
2a74a2a5c4 | |||
6ab5ae85b2 | |||
024aa36e22 | |||
f6cb2006aa |
73
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
73
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
name: Bug Report
|
||||||
|
description: "Create a report to help us improve."
|
||||||
|
body:
|
||||||
|
- type: checkboxes
|
||||||
|
id: terms
|
||||||
|
attributes:
|
||||||
|
label: Welcome
|
||||||
|
options:
|
||||||
|
- label: Yes, I understand that the GitHub action repository is not the repository of golangci-lint itself.
|
||||||
|
required: true
|
||||||
|
- label: Yes, I've searched similar issues on GitHub and didn't find any.
|
||||||
|
required: true
|
||||||
|
- label: Yes, I've included all information below (version, config, etc).
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: Description of the problem
|
||||||
|
placeholder: Your problem description
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: golangci-lint-version
|
||||||
|
attributes:
|
||||||
|
label: Version of golangci-lint
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: github-action-version
|
||||||
|
attributes:
|
||||||
|
label: Version of the GitHub Action
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: config
|
||||||
|
attributes:
|
||||||
|
label: Workflow file
|
||||||
|
value: |-
|
||||||
|
<details>
|
||||||
|
|
||||||
|
```
|
||||||
|
<add you file here>
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: go-env
|
||||||
|
attributes:
|
||||||
|
label: Go version
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: code-example
|
||||||
|
attributes:
|
||||||
|
label: Code example or link to a public repository
|
||||||
|
value: |-
|
||||||
|
<details>
|
||||||
|
|
||||||
|
```go
|
||||||
|
// add your code here
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
validations:
|
||||||
|
required: true
|
11
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
11
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
blank_issues_enabled: false
|
||||||
|
contact_links:
|
||||||
|
- name: Questions
|
||||||
|
url: https://github.com/golangci/golangci-lint-action/discussions
|
||||||
|
about: If you have a question, or are looking for advice, please post on our Discussions forum!
|
||||||
|
- name: golangci-lint main repository
|
||||||
|
url: https://github.com/golangci/golangci-lint
|
||||||
|
about: The main repository of golangci-lint.
|
||||||
|
- name: golangci-lint documentation
|
||||||
|
url: https://golangci-lint.run
|
||||||
|
about: Please take a look to our documentation.
|
44
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
44
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
name: Feature request
|
||||||
|
description: "Suggest an idea for this project."
|
||||||
|
body:
|
||||||
|
- type: checkboxes
|
||||||
|
id: terms
|
||||||
|
attributes:
|
||||||
|
label: Welcome
|
||||||
|
options:
|
||||||
|
- label: Yes, I understand that the GitHub action repository is not the repository of golangci-lint itself.
|
||||||
|
required: true
|
||||||
|
- label: Yes, I've searched similar issues on GitHub and didn't find any.
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: Your feature request related to a problem? Please describe.
|
||||||
|
placeholder: "A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]"
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: solution
|
||||||
|
attributes:
|
||||||
|
label: Describe the solution you'd like.
|
||||||
|
placeholder: "A clear and concise description of what you want to happen."
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: alternatives
|
||||||
|
attributes:
|
||||||
|
label: Describe alternatives you've considered.
|
||||||
|
placeholder: "A clear and concise description of any alternative solutions or features you've considered."
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: additional
|
||||||
|
attributes:
|
||||||
|
label: Additional context.
|
||||||
|
placeholder: "Add any other context or screenshots about the feature request here."
|
||||||
|
validations:
|
||||||
|
required: false
|
4
.github/dependabot.yml
vendored
4
.github/dependabot.yml
vendored
@ -4,11 +4,7 @@ updates:
|
|||||||
directory: "/"
|
directory: "/"
|
||||||
schedule:
|
schedule:
|
||||||
interval: weekly
|
interval: weekly
|
||||||
reviewers:
|
|
||||||
- "golangci/team"
|
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/"
|
directory: "/"
|
||||||
schedule:
|
schedule:
|
||||||
interval: weekly
|
interval: weekly
|
||||||
reviewers:
|
|
||||||
- "golangci/team"
|
|
||||||
|
6
.github/workflows/codeql.yaml
vendored
6
.github/workflows/codeql.yaml
vendored
@ -16,7 +16,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
# Must fetch at least the immediate parents so that if this is
|
# Must fetch at least the immediate parents so that if this is
|
||||||
# a pull request then we can checkout the head of the pull request.
|
# a pull request then we can checkout the head of the pull request.
|
||||||
@ -31,7 +31,7 @@ jobs:
|
|||||||
|
|
||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
uses: github/codeql-action/init@v1
|
uses: github/codeql-action/init@v2
|
||||||
# Override language selection by uncommenting this and choosing your languages
|
# Override language selection by uncommenting this and choosing your languages
|
||||||
with:
|
with:
|
||||||
language: 'javascript'
|
language: 'javascript'
|
||||||
@ -41,4 +41,4 @@ jobs:
|
|||||||
npm run all
|
npm run all
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
uses: github/codeql-action/analyze@v1
|
uses: github/codeql-action/analyze@v2
|
||||||
|
17
.github/workflows/test.yml
vendored
17
.github/workflows/test.yml
vendored
@ -10,14 +10,17 @@ jobs:
|
|||||||
build: # make sure build/ci work properly
|
build: # make sure build/ci work properly
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
ref: ${{ github.event.pull_request.head.ref }}
|
||||||
- run: |
|
- run: |
|
||||||
npm install
|
npm install
|
||||||
npm run all
|
npm run all
|
||||||
|
|
||||||
# Update dist files if there is label dependencies
|
# Update dist files if there is label dependencies or pull request' author is dependabot[bot] (id = 49699333)
|
||||||
- name: Update dist files
|
- name: Update dist files
|
||||||
if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'dependencies')
|
if: github.event_name == 'pull_request' && (github.event.pull_request.user.id == 49699333 || contains(github.event.pull_request.labels.*.name, 'dependencies'))
|
||||||
run: |
|
run: |
|
||||||
if [[ -z $(git status -s) ]]
|
if [[ -z $(git status -s) ]]
|
||||||
then
|
then
|
||||||
@ -52,8 +55,8 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
pull-requests: read
|
pull-requests: read
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: actions/setup-go@v2
|
- uses: actions/setup-go@v3
|
||||||
- uses: ./
|
- uses: ./
|
||||||
with:
|
with:
|
||||||
version: ${{ matrix.version }}
|
version: ${{ matrix.version }}
|
||||||
@ -72,8 +75,8 @@ jobs:
|
|||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: actions/setup-go@v2
|
- uses: actions/setup-go@v3
|
||||||
- uses: ./
|
- uses: ./
|
||||||
with:
|
with:
|
||||||
working-directory: sample-go-mod
|
working-directory: sample-go-mod
|
||||||
|
20
README.md
20
README.md
@ -9,7 +9,7 @@ The action runs [golangci-lint](https://github.com/golangci/golangci-lint) and r
|
|||||||
|
|
||||||
## Compatibility
|
## Compatibility
|
||||||
|
|
||||||
* `v3.0.0+` requires explicit setup-go installation step prior to using this action: `uses: actions/setup-go@v2`.
|
* `v3.0.0+` requires explicit setup-go installation step prior to using this action: `uses: actions/setup-go@v3`.
|
||||||
The `skip-go-installation` option has been removed.
|
The `skip-go-installation` option has been removed.
|
||||||
* `v2.0.0+` works with `golangci-lint` version >= `v1.28.3`
|
* `v2.0.0+` works with `golangci-lint` version >= `v1.28.3`
|
||||||
* `v1.2.2` is deprecated due to we forgot to change the minimum version of `golangci-lint` to `v1.28.3` ([issue](https://github.com/golangci/golangci-lint-action/issues/39))
|
* `v1.2.2` is deprecated due to we forgot to change the minimum version of `golangci-lint` to `v1.28.3` ([issue](https://github.com/golangci/golangci-lint-action/issues/39))
|
||||||
@ -38,10 +38,12 @@ jobs:
|
|||||||
name: lint
|
name: lint
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/setup-go@v2
|
- uses: actions/setup-go@v3
|
||||||
- uses: actions/checkout@v2
|
with:
|
||||||
|
go-version: 1.17
|
||||||
|
- uses: actions/checkout@v3
|
||||||
- name: golangci-lint
|
- name: golangci-lint
|
||||||
uses: golangci/golangci-lint-action@v2
|
uses: golangci/golangci-lint-action@v3
|
||||||
with:
|
with:
|
||||||
# Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version
|
# Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version
|
||||||
version: v1.29
|
version: v1.29
|
||||||
@ -91,15 +93,17 @@ jobs:
|
|||||||
golangci:
|
golangci:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
go-version: [1.15.x]
|
go: [1.17]
|
||||||
os: [macos-latest, windows-latest]
|
os: [macos-latest, windows-latest]
|
||||||
name: lint
|
name: lint
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/setup-go@v2
|
- uses: actions/setup-go@v3
|
||||||
- uses: actions/checkout@v2
|
with:
|
||||||
|
go-version: ${{ matrix.go }}
|
||||||
|
- uses: actions/checkout@v3
|
||||||
- name: golangci-lint
|
- name: golangci-lint
|
||||||
uses: golangci/golangci-lint-action@v2
|
uses: golangci/golangci-lint-action@v3
|
||||||
with:
|
with:
|
||||||
# Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
|
# Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
|
||||||
version: v1.29
|
version: v1.29
|
||||||
|
10
action.yml
10
action.yml
@ -15,25 +15,25 @@ inputs:
|
|||||||
github-token:
|
github-token:
|
||||||
description: "the token is used for fetching patch of a pull request to show only new issues"
|
description: "the token is used for fetching patch of a pull request to show only new issues"
|
||||||
default: ${{ github.token }}
|
default: ${{ github.token }}
|
||||||
required: true
|
required: false
|
||||||
only-new-issues:
|
only-new-issues:
|
||||||
description: "if set to true and the action runs on a pull request - the action outputs only newly found issues"
|
description: "if set to true and the action runs on a pull request - the action outputs only newly found issues"
|
||||||
default: false
|
default: false
|
||||||
required: true
|
required: false
|
||||||
skip-cache:
|
skip-cache:
|
||||||
description: |
|
description: |
|
||||||
if set to true then the all caching functionality will be complete disabled,
|
if set to true then the all caching functionality will be complete disabled,
|
||||||
takes precedence over all other caching options.
|
takes precedence over all other caching options.
|
||||||
default: false
|
default: false
|
||||||
required: true
|
required: false
|
||||||
skip-pkg-cache:
|
skip-pkg-cache:
|
||||||
description: "if set to true then the action doesn't cache or restore ~/go/pkg."
|
description: "if set to true then the action doesn't cache or restore ~/go/pkg."
|
||||||
default: false
|
default: false
|
||||||
required: true
|
required: false
|
||||||
skip-build-cache:
|
skip-build-cache:
|
||||||
description: "if set to true then the action doesn't cache or restore ~/.cache/go-build."
|
description: "if set to true then the action doesn't cache or restore ~/.cache/go-build."
|
||||||
default: false
|
default: false
|
||||||
required: true
|
required: false
|
||||||
runs:
|
runs:
|
||||||
using: "node16"
|
using: "node16"
|
||||||
main: "dist/run/index.js"
|
main: "dist/run/index.js"
|
||||||
|
4909
dist/post_run/index.js
vendored
4909
dist/post_run/index.js
vendored
File diff suppressed because one or more lines are too long
4909
dist/run/index.js
vendored
4909
dist/run/index.js
vendored
File diff suppressed because one or more lines are too long
1592
package-lock.json
generated
1592
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
33
package.json
33
package.json
@ -24,25 +24,26 @@
|
|||||||
"author": "golangci",
|
"author": "golangci",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/cache": "^1.0.9",
|
"@actions/cache": "^3.0.6",
|
||||||
"@actions/core": "^1.6.0",
|
"@actions/core": "^1.10.0",
|
||||||
"@actions/exec": "^1.1.0",
|
"@actions/exec": "^1.1.1",
|
||||||
"@actions/github": "^5.0.0",
|
"@actions/github": "^5.1.1",
|
||||||
"@actions/tool-cache": "^1.7.1",
|
"@actions/http-client": "^2.0.1",
|
||||||
"@types/semver": "^7.3.9",
|
"@actions/tool-cache": "^2.0.1",
|
||||||
|
"@types/semver": "^7.3.13",
|
||||||
"@types/tmp": "^0.2.3",
|
"@types/tmp": "^0.2.3",
|
||||||
"tmp": "^0.2.1"
|
"tmp": "^0.2.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@typescript-eslint/eslint-plugin": "^5.12.1",
|
"@typescript-eslint/eslint-plugin": "^5.42.0",
|
||||||
"@typescript-eslint/parser": "^5.12.1",
|
"@typescript-eslint/parser": "^5.42.0",
|
||||||
"@vercel/ncc": "^0.33.3",
|
"@vercel/ncc": "^0.34.0",
|
||||||
"eslint": "^8.10.0",
|
"eslint": "^8.27.0",
|
||||||
"eslint-config-prettier": "^8.4.0",
|
"eslint-config-prettier": "^8.5.0",
|
||||||
"eslint-plugin-import": "^2.25.4",
|
"eslint-plugin-import": "^2.26.0",
|
||||||
"eslint-plugin-prettier": "^4.0.0",
|
"eslint-plugin-prettier": "^4.2.1",
|
||||||
"eslint-plugin-simple-import-sort": "^7.0.0",
|
"eslint-plugin-simple-import-sort": "^8.0.0",
|
||||||
"prettier": "^2.5.1",
|
"prettier": "^2.7.1",
|
||||||
"typescript": "^4.5.5"
|
"typescript": "^4.8.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -52,12 +52,9 @@ const getIntervalKey = (invalidationIntervalDays: number): string => {
|
|||||||
|
|
||||||
async function buildCacheKeys(): Promise<string[]> {
|
async function buildCacheKeys(): Promise<string[]> {
|
||||||
const keys = []
|
const keys = []
|
||||||
let cacheKey = `golangci-lint.cache-`
|
|
||||||
keys.push(cacheKey)
|
|
||||||
|
|
||||||
// Periodically invalidate a cache because a new code being added.
|
// Periodically invalidate a cache because a new code being added.
|
||||||
// TODO: configure it via inputs.
|
// TODO: configure it via inputs.
|
||||||
cacheKey += `${getIntervalKey(7)}-`
|
let cacheKey = `golangci-lint.cache-${getIntervalKey(7)}-`
|
||||||
keys.push(cacheKey)
|
keys.push(cacheKey)
|
||||||
|
|
||||||
if (await pathExists(`go.mod`)) {
|
if (await pathExists(`go.mod`)) {
|
||||||
|
Reference in New Issue
Block a user