mirror of
https://github.com/scratchfoundation/golangci-lint.git
synced 2025-08-01 17:09:18 -04:00
docs: Replace links to godoc.org with pkg.go.dev (#3584)
Co-authored-by: Fernandez Ludovic <ldez@users.noreply.github.com>
This commit is contained in:
parent
e128f0df51
commit
a221d01b41
6 changed files with 12 additions and 12 deletions
docs/src/docs
|
@ -126,7 +126,7 @@ func (cl *ContextLoader) Load(ctx context.Context, linters []*linter.Config) (*l
|
|||
```
|
||||
|
||||
First, we find a load mode as union of load modes for all enabled linters.
|
||||
We use [go/packages](https://godoc.org/golang.org/x/tools/go/packages) for packages loading and use it's enum `packages.Need*` for load modes.
|
||||
We use [go/packages](https://pkg.go.dev/golang.org/x/tools/go/packages) for packages loading and use it's enum `packages.Need*` for load modes.
|
||||
Load mode sets which data does a linter needs for execution.
|
||||
|
||||
A linter that works only with AST need minimum of information: only filenames and AST. There is no need for
|
||||
|
@ -165,7 +165,7 @@ func (m Manager) GetAllSupportedLinterConfigs() []*linter.Config {
|
|||
WithLoadForGoAnalysis().
|
||||
WithPresets(linter.PresetBugs).
|
||||
WithAlternativeNames("vet", "vetshadow").
|
||||
WithURL("https://golang.org/cmd/vet/"),
|
||||
WithURL("https://pkg.go.dev/cmd/vet"),
|
||||
linter.NewConfig(golinters.NewBodyclose()).
|
||||
WithLoadForGoAnalysis().
|
||||
WithPresets(linter.PresetPerformance, linter.PresetBugs).
|
||||
|
@ -208,10 +208,10 @@ Currently, all linters except `unused` can be merged into this meta linter.
|
|||
The `unused` isn't merged because it has high memory usage.
|
||||
|
||||
Linters execution starts in `runAnalyzers`. It's the most complex part of the `golangci-lint`.
|
||||
We use custom [go/analysis](https://godoc.org/golang.org/x/tools/go/analysis) runner there. It runs as much as it can in parallel. It lazy-loads as much as it can
|
||||
We use custom [go/analysis](https://pkg.go.dev/golang.org/x/tools/go/analysis) runner there. It runs as much as it can in parallel. It lazy-loads as much as it can
|
||||
to reduce memory usage. Also, it sets all heavyweight data to `nil` as becomes unneeded to save memory.
|
||||
|
||||
We don't use existing [multichecker](https://godoc.org/golang.org/x/tools/go/analysis/multichecker) because
|
||||
We don't use existing [multichecker](https://pkg.go.dev/golang.org/x/tools/go/analysis/multichecker) because
|
||||
it doesn't use caching and doesn't have some important performance optimizations.
|
||||
|
||||
All found by linters issues are represented with `result.Issue` struct:
|
||||
|
|
|
@ -9,12 +9,12 @@ conduct](https://github.com/golangci/golangci-lint/blob/master/CODE_OF_CONDUCT.m
|
|||
|
||||
## Setup your machine
|
||||
|
||||
`golangci-lint` is written in [Go](https://golang.org/).
|
||||
`golangci-lint` is written in [Go](https://go.dev).
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- `make`
|
||||
- [Go](https://golang.org/doc/install)
|
||||
- [Go](https://go.dev/doc/install)
|
||||
|
||||
Fork and clone [golangci-lint](https://github.com/golangci/golangci-lint) repository.
|
||||
|
||||
|
|
|
@ -48,6 +48,6 @@ the `go tool trace` command and visualization tool.
|
|||
|
||||
## Cache
|
||||
|
||||
GolangCI-Lint stores its cache in the subdirectory `golangci-lint` inside the [default user cache directory](https://golang.org/pkg/os/#UserCacheDir).
|
||||
GolangCI-Lint stores its cache in the subdirectory `golangci-lint` inside the [default user cache directory](https://pkg.go.dev/os#UserCacheDir).
|
||||
|
||||
You can override the default cache directory with the environment variable `GOLANGCI_LINT_CACHE`; the path must be absolute.
|
||||
|
|
|
@ -4,7 +4,7 @@ title: Performance
|
|||
|
||||
## Memory Usage
|
||||
|
||||
A trade-off between memory usage and execution time can be controlled by [`GOGC`](https://golang.org/pkg/runtime/#hdr-Environment_Variables) environment variable.
|
||||
A trade-off between memory usage and execution time can be controlled by [`GOGC`](https://pkg.go.dev/runtime#hdr-Environment_Variables) environment variable.
|
||||
Less `GOGC` values trigger garbage collection more frequently and golangci-lint consumes less memory and more CPU. Below is the trade-off table for running on this repo:
|
||||
|
||||
| `GOGC` | Peak Memory, GB | Execution Time, s |
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue