ldez / golangci-lint-bench

2 stars 0 forks source link

benchmark: PR 5013 (recv) #18

Closed ldez closed 2 months ago

ldez commented 2 months ago

{ "pr": 5013, "linter": "recv" }

github-actions[bot] commented 2 months ago

The benchmark (Benchmark PR (new linter)) is done!

beego/beego

``` client/orm/internal/utils/utils.go:26:6: the methods of "StrTo" use pointer receiver and non pointer receiver. (recv) type StrTo string ^ client/orm/migration/ddl.go:126:7: the receiver name "foreign" is too long. (recv) func (foreign *Foreign) SetOnDelete(del string) *Foreign { ^ client/orm/migration/ddl.go:132:7: the receiver name "foreign" is too long. (recv) func (foreign *Foreign) SetOnUpdate(update string) *Foreign { ^ client/orm/migration/ddl.go:218:7: the receiver name "unique" is too long. (recv) func (unique *Unique) AddColumnsToUnique(columns ...*Column) *Unique { ^ client/httplib/filter/log/filter.go:76:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) FilterChain(next httplib.Filter) httplib.Filter { ^ client/httplib/filter/log/filter.go:102:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) shouldPrintBody(contentType string, body io.ReadCloser) bool { ^ client/httplib/filter/log/filter.go:121:7: the receiver name "info" is too long. (recv) func (info *logInfo) print(log func(f interface{}, v ...interface{})) { ^ client/httplib/filter/opentelemetry/filter.go:45:7: the receiver name "builder" is too long. (recv) func (builder *OtelFilterChainBuilder) FilterChain(next httplib.Filter) httplib.Filter { ^ client/httplib/filter/opentracing/filter.go:37:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) FilterChain(next httplib.Filter) httplib.Filter { ^ client/httplib/filter/prometheus/filter.go:40:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) FilterChain(next httplib.Filter) httplib.Filter { ^ client/httplib/filter/prometheus/filter.go:65:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) report(startTime time.Time, endTime time.Time, ^ client/orm/orm_conds.go:42:6: the methods of "Condition" use pointer receiver and non pointer receiver. (recv) type Condition struct { ^ client/orm/orm_queryset.go:72:6: the methods of "querySet" use pointer receiver and non pointer receiver. (recv) type querySet struct { ^ client/orm/orm_raw.go:68:6: the methods of "rawSet" use pointer receiver and non pointer receiver. (recv) type rawSet struct { ^ client/orm/models_test.go:33:6: the methods of "SliceStringField" use pointer receiver and non pointer receiver. (recv) type SliceStringField []string ^ client/orm/filter/opentelemetry/filter.go:56:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) FilterChain(next orm.Filter) orm.Filter { ^ client/orm/filter/opentelemetry/filter.go:71:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) buildSpan(ctx context.Context, span otelTrace.Span, inv *orm.Invocation) { ^ client/orm/filter/opentracing/filter.go:38:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) FilterChain(next orm.Filter) orm.Filter { ^ client/orm/filter/opentracing/filter.go:53:7: the receiver name "builder" is too long. (recv) func (builder *FilterChainBuilder) buildSpan(span opentracing.Span, ctx context.Context, inv *orm.Invocation) { ^ client/orm/internal/models/models_fields.go:62:6: the methods of "BooleanField" use pointer receiver and non pointer receiver. (recv) type BooleanField bool ^ client/orm/internal/models/models_fields.go:113:6: the methods of "CharField" use pointer receiver and non pointer receiver. (recv) type CharField string ^ client/orm/internal/models/models_fields.go:167:6: the methods of "TimeField" use pointer receiver and non pointer receiver. (recv) type TimeField time.Time ^ client/orm/internal/models/models_fields.go:226:6: the methods of "DateField" use pointer receiver and non pointer receiver. (recv) type DateField time.Time ^ client/orm/internal/models/models_fields.go:276:6: the methods of "DateTimeField" use pointer receiver and non pointer receiver. (recv) type DateTimeField time.Time ^ client/orm/internal/models/models_fields.go:324:6: the methods of "FloatField" use pointer receiver and non pointer receiver. (recv) type FloatField float64 ^ client/orm/internal/models/models_fields.go:374:6: the methods of "SmallIntegerField" use pointer receiver and non pointer receiver. (recv) type SmallIntegerField int16 ^ client/orm/internal/models/models_fields.go:422:6: the methods of "IntegerField" use pointer receiver and non pointer receiver. (recv) type IntegerField int32 ^ client/orm/internal/models/models_fields.go:470:6: the methods of "BigIntegerField" use pointer receiver and non pointer receiver. (recv) type BigIntegerField int64 ^ client/orm/internal/models/models_fields.go:518:6: the methods of "PositiveSmallIntegerField" use pointer receiver and non pointer receiver. (recv) type PositiveSmallIntegerField uint16 ^ client/orm/internal/models/models_fields.go:566:6: the methods of "PositiveIntegerField" use pointer receiver and non pointer receiver. (recv) type PositiveIntegerField uint32 ^ client/orm/internal/models/models_fields.go:614:6: the methods of "PositiveBigIntegerField" use pointer receiver and non pointer receiver. (recv) type PositiveBigIntegerField uint64 ^ client/orm/internal/models/models_fields.go:662:6: the methods of "TextField" use pointer receiver and non pointer receiver. (recv) type TextField string ^ client/orm/internal/models/models_fields.go:704:6: the methods of "JSONField" use pointer receiver and non pointer receiver. (recv) type JSONField string ^ client/orm/internal/models/models_fields.go:746:6: the methods of "JsonbField" use pointer receiver and non pointer receiver. (recv) type JsonbField string ^ core/config/etcd/config.go:152:7: the receiver name "provider" is too long. (recv) func (provider *EtcdConfigerProvider) Parse(key string) (config.Configer, error) { ^ core/config/etcd/config.go:157:7: the receiver name "provider" is too long. (recv) func (provider *EtcdConfigerProvider) ParseData(data []byte) (config.Configer, error) { ^ server/web/admin.go:86:7: the receiver name "admin" is too long. (recv) func (admin *adminApp) Run() { ^ server/web/tree.go:397:7: the receiver name "leaf" is too long. (recv) func (leaf *leafInfo) match(treePattern string, wildcardValues []string, ctx *context.Context) (ok bool) { ^ server/web/namespace_test.go:36:6: the methods of "ExampleController" use pointer receiver and non pointer receiver. (recv) type ExampleController struct { ^ server/web/router_test.go:39:6: the methods of "TestControllerWithInterface" use pointer receiver and non pointer receiver. (recv) type TestControllerWithInterface struct{} ^ server/web/context/input.go:68:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Reset(ctx *Context) { ^ server/web/context/input.go:80:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Protocol() string { ^ server/web/context/input.go:85:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) URI() string { ^ server/web/context/input.go:90:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) URL() string { ^ server/web/context/input.go:95:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Site() string { ^ server/web/context/input.go:100:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Scheme() string { ^ server/web/context/input.go:114:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Domain() string { ^ server/web/context/input.go:120:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Host() string { ^ server/web/context/input.go:131:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Method() string { ^ server/web/context/input.go:136:7: the receiver name "input" is too long. (recv) func (input *BeegoInput) Is(method string) bool { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 1.093 ± 0.015 1.064 1.117 2.11 ± 0.04
goconst 0.518 ± 0.007 0.509 0.531 1.00
durationcheck 0.866 ± 0.056 0.826 1.011 1.67 ± 0.11

cilium/cilium

``` cilium-cli/connectivity/perf/common/metrics.go:29:7: the receiver name "metric" is too long. (recv) func (metric *LatencyMetric) toPerfData(labels map[string]string, prefix string) dataItem { ^ cilium-cli/connectivity/perf/common/metrics.go:53:7: the receiver name "metric" is too long. (recv) func (metric *TransactionRateMetric) toPerfData(labels map[string]string, prefix string) dataItem { ^ cilium-cli/connectivity/perf/common/metrics.go:73:7: the receiver name "metric" is too long. (recv) func (metric *ThroughputMetric) toPerfData(labels map[string]string, prefix string) dataItem { ^ pkg/alibabacloud/eni/types/types.go:72:6: the methods of "ENI" use different receiver names: e, in. (recv) type ENI struct { ^ pkg/aws/eni/types/types.go:149:6: the methods of "ENI" use different receiver names: e, in. (recv) type ENI struct { ^ pkg/k8s/slim/k8s/apis/labels/selector.go:131:6: the methods of "Requirement" use pointer receiver and non pointer receiver. (recv) type Requirement struct { ^ pkg/k8s/slim/k8s/apis/labels/selector.go:118:6: the methods of "ByKey" use pointer receiver and non pointer receiver. (recv) type ByKey []Requirement ^ pkg/k8s/slim/k8s/apis/labels/labels.go:26:6: the methods of "Set" use pointer receiver and non pointer receiver. (recv) type Set map[string]string ^ pkg/k8s/slim/k8s/apis/labels/selector.go:964:6: the methods of "ValidatedSetSelector" use pointer receiver and non pointer receiver. (recv) type ValidatedSetSelector Set ^ pkg/k8s/slim/k8s/apis/labels/selector.go:586:6: the methods of "Parser" use different receiver names: in, p. (recv) type Parser struct { ^ pkg/k8s/slim/k8s/apis/labels/selector.go:485:6: the methods of "Lexer" use different receiver names: in, l. (recv) type Lexer struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:14:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) GetResourceVersion() string { return meta.ResourceVersion } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:15:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) SetResourceVersion(version string) { meta.ResourceVersion = version } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:16:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) GetSelfLink() string { panic("ListMeta - GetSelfLink() not implemented") } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:17:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) SetSelfLink(_ string) { panic("ListMeta - SetSelfLink() not implemented") } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:18:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) GetContinue() string { return meta.Continue } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:19:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) SetContinue(c string) { meta.Continue = c } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:20:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) GetRemainingItemCount() *int64 { return meta.RemainingItemCount } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:21:7: the receiver name "meta" is too long. (recv) func (meta *ListMeta) SetRemainingItemCount(c *int64) { meta.RemainingItemCount = c } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:41:7: the receiver name "meta" is too long. (recv) func (meta *ObjectMeta) GetNamespace() string { return meta.Namespace } ^ pkg/k8s/slim/k8s/apis/meta/v1/meta.go:42:7: the receiver name "meta" is too long. (recv) func (meta *ObjectMeta) SetNamespace(namespace string) { meta.Namespace = namespace } ^ pkg/k8s/slim/k8s/apis/meta/v1/time.go:23:6: the methods of "Time" use pointer receiver and non pointer receiver. (recv) type Time struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:267:6: the methods of "LabelSelector" use different receiver names: in, m, this. (recv) type LabelSelector struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:46:6: the methods of "ListMeta" use different receiver names: in, m, meta, obj, this. (recv) type ListMeta struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:330:6: the methods of "PartialObjectMetadata" use different receiver names: in, m, this. (recv) type PartialObjectMetadata struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:221:6: the methods of "OwnerReference" use different receiver names: in, m, this. (recv) type OwnerReference struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:340:6: the methods of "PartialObjectMetadataList" use different receiver names: in, m, this. (recv) type PartialObjectMetadataList struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/time_proto.go:15:6: the methods of "Timestamp" use different receiver names: in, m, this. (recv) type Timestamp struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:27:6: the methods of "TypeMeta" use different receiver names: in, m, obj, this. (recv) type TypeMeta struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:366:6: the methods of "Condition" use different receiver names: in, m, this. (recv) type Condition struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:288:6: the methods of "LabelSelectorRequirement" use different receiver names: in, m, this. (recv) type LabelSelectorRequirement struct { ^ pkg/k8s/slim/k8s/apis/meta/v1/types.go:92:6: the methods of "ObjectMeta" use different receiver names: in, m, meta, obj, this. (recv) type ObjectMeta struct { ^ pkg/k8s/slim/k8s/apis/util/intstr/intstr.go:75:7: the receiver name "intstr" is too long. (recv) func (intstr *IntOrString) UnmarshalJSON(value []byte) error { ^ pkg/k8s/slim/k8s/apis/util/intstr/intstr.go:85:7: the receiver name "intstr" is too long. (recv) func (intstr *IntOrString) String() string { ^ pkg/k8s/slim/k8s/apis/util/intstr/intstr.go:98:7: the receiver name "intstr" is too long. (recv) func (intstr *IntOrString) IntValue() int { ^ pkg/k8s/slim/k8s/apis/util/intstr/intstr.go:107:7: the receiver name "intstr" is too long. (recv) func (intstr IntOrString) MarshalJSON() ([]byte, error) { ^ pkg/k8s/slim/k8s/apis/util/intstr/intstr.go:29:6: the methods of "IntOrString" use pointer receiver and non pointer receiver. (recv) type IntOrString struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1357:6: the methods of "Bytes" use pointer receiver and non pointer receiver. (recv) type Bytes []byte ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1076:6: the methods of "EndpointPort" use different receiver names: in, m, this. (recv) type EndpointPort struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:459:6: the methods of "PodList" use different receiver names: in, m, this. (recv) type PodList struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1364:6: the methods of "Secret" use different receiver names: in, m, this. (recv) type Secret struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:574:6: the methods of "ServiceStatus" use different receiver names: in, m, this. (recv) type ServiceStatus struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1343:6: the methods of "TypedLocalObjectReference" use different receiver names: in, m, this. (recv) type TypedLocalObjectReference struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:493:6: the methods of "ClientIPConfig" use different receiver names: in, m, this. (recv) type ClientIPConfig struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1115:6: the methods of "EndpointsList" use different receiver names: in, m, this. (recv) type EndpointsList struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1276:6: the methods of "Node" use different receiver names: in, m, this. (recv) type Node struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:1208:6: the methods of "NodeCondition" use different receiver names: in, m, this. (recv) type NodeCondition struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:435:6: the methods of "Pod" use different receiver names: in, m, p, this. (recv) type Pod struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:290:6: the methods of "PodSpec" use different receiver names: in, m, this. (recv) type PodSpec struct { ^ pkg/k8s/slim/k8s/api/core/v1/types.go:361:6: the methods of "PodStatus" use different receiver names: in, m, this. (recv) type PodStatus struct { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 12.677 ± 0.171 12.409 12.899 4.16 ± 0.06
goconst 3.050 ± 0.020 3.020 3.078 1.00
durationcheck 6.088 ± 0.064 6.003 6.171 2.00 ± 0.02

spf13/cobra

Command Mean [ms] Min [ms] Max [ms] Relative
recv 376.5 ± 5.2 370.1 384.4 1.51 ± 0.03
goconst 249.5 ± 3.2 244.5 253.5 1.00
durationcheck 344.2 ± 11.7 333.4 375.2 1.38 ± 0.05

hashicorp/consul

``` proto/private/pbpeering/peering.go:257:7: the receiver name "resp" is too long. (recv) func (resp *PeeringListResponse) ToAPI() []*api.Peering { ^ proto/private/pbpeering/peering.go:266:7: the receiver name "resp" is too long. (recv) func (resp *GenerateTokenResponse) ToAPI() *api.PeeringGenerateTokenResponse { ^ proto/private/pbpeering/peering.go:273:7: the receiver name "resp" is too long. (recv) func (resp *EstablishResponse) ToAPI() *api.PeeringEstablishResponse { ^ agent/consul/reporting/reporting.go:16:6: the methods of "ReportingManager" use different receiver names: m, rm. (recv) type ReportingManager struct { ^ command/cli/cli.go:31:6: the methods of "BasicUI" use different receiver names: b, u. (recv) type BasicUI struct { ^ agent/mock/notify.go:13:6: the methods of "Notify" use different receiver names: c, m. (recv) type Notify struct { ^ internal/resource/resourcetest/client.go:89:7: the receiver name "client" is too long. (recv) func (client *Client) SetRetryerConfig(timeout time.Duration, wait time.Duration) { ^ internal/resource/resourcetest/client.go:94:7: the receiver name "client" is too long. (recv) func (client *Client) retry(t T, fn func(r *retry.R)) { ^ internal/resource/resourcetest/client.go:100:7: the receiver name "client" is too long. (recv) func (client *Client) PublishResources(t T, resources []*pbresource.Resource) { ^ internal/resource/resourcetest/client.go:166:7: the receiver name "client" is too long. (recv) func (client *Client) Write(ctx context.Context, in *pbresource.WriteRequest, opts ...grpc.CallOption) (*pbresource.WriteResponse, error) { ^ internal/resource/resourcetest/client.go:171:7: the receiver name "client" is too long. (recv) func (client *Client) Context(t T) context.Context { ^ internal/resource/resourcetest/client.go:184:7: the receiver name "client" is too long. (recv) func (client *Client) RequireResourceNotFound(t T, id *pbresource.ID) { ^ internal/resource/resourcetest/client.go:193:7: the receiver name "client" is too long. (recv) func (client *Client) RequireResourceExists(t T, id *pbresource.ID) *pbresource.Resource { ^ internal/resource/resourcetest/client.go:202:7: the receiver name "client" is too long. (recv) func (client *Client) RequireVersionUnchanged(t T, id *pbresource.ID, version string) *pbresource.Resource { ^ internal/resource/resourcetest/client.go:210:7: the receiver name "client" is too long. (recv) func (client *Client) RequireVersionChanged(t T, id *pbresource.ID, version string) *pbresource.Resource { ^ internal/resource/resourcetest/client.go:218:7: the receiver name "client" is too long. (recv) func (client *Client) RequireStatusCondition(t T, id *pbresource.ID, statusKey string, condition *pbresource.Condition) *pbresource.Resource { ^ acl/policy_authorizer.go:433:7: the receiver name "authz" is too long. (recv) func (authz *policyAuthorizer) anyAllowed(tree *radix.Tree, requiredPermission AccessLevel) EnforcementDecision { ^ acl/policy_authorizer.go:450:7: the receiver name "authz" is too long. (recv) func (authz *policyAuthorizer) allAllowed(tree *radix.Tree, requiredPermission AccessLevel) EnforcementDecision { ^ acl/policy_authorizer_ce.go:11:7: the receiver name "authz" is too long. (recv) func (authz *enterprisePolicyAuthorizer) init(*Config) { ^ acl/policy_authorizer_ce.go:15:7: the receiver name "authz" is too long. (recv) func (authz *enterprisePolicyAuthorizer) enforce(_ *EnterpriseRule, _ *AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:14:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) ACLRead(*AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:17:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) ACLWrite(*AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:20:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) AgentRead(string, *AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:23:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) AgentWrite(string, *AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:26:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) EventRead(string, *AuthorizerContext) EnforcementDecision { ^ acl/chained_authorizer_test.go:29:7: the receiver name "authz" is too long. (recv) func (authz testAuthorizer) EventWrite(string, *AuthorizerContext) EnforcementDecision { ^ acl/enterprisemeta_ce.go:13:6: the methods of "EnterpriseMeta" use different receiver names: _, m. (recv) type EnterpriseMeta struct{} ^ acl/policy_authorizer.go:10:6: the methods of "policyAuthorizer" use different receiver names: authz, p. (recv) type policyAuthorizer struct { ^ acl/MockAuthorizer.go:8:6: the methods of "MockAuthorizer" use different receiver names: m, p. (recv) type MockAuthorizer struct { ^ agent/checks/grpc.go:56:7: the receiver name "probe" is too long. (recv) func (probe *GrpcHealthProbe) Check(target string) error { ^ agent/config/ratelimited_file_watcher.go:13:6: the methods of "rateLimitedFileWatcher" use pointer receiver and non pointer receiver. (recv) type rateLimitedFileWatcher struct { ^ agent/config/runtime.go:55:6: the methods of "RuntimeConfig" use different receiver names: c, o. (recv) type RuntimeConfig struct { ^ agent/consul/auto_config_endpoint.go:37:7: the receiver name "opts" is too long. (recv) func (opts AutoConfigOptions) PartitionOrDefault() string { ^ agent/consul/acl.go:188:6: the methods of "ACLResolverSettings" use different receiver names: a, s. (recv) type ACLResolverSettings struct { ^ agent/consul/peering_backend.go:30:6: the methods of "PeeringBackend" use different receiver names: b, s. (recv) type PeeringBackend struct { ^ agent/consul/acl.go:277:6: the methods of "ACLResolver" use different receiver names: _, r. (recv) type ACLResolver struct { ^ agent/consul/server.go:176:6: the methods of "Server" use different receiver names: _, s. (recv) type Server struct { ^ agent/consul/autopilotevents/ready_servers_events.go:38:7: the receiver name "info" is too long. (recv) func (info *ReadyServerInfo) Equal(other *ReadyServerInfo) bool { ^ agent/consul/controller/queue/defer.go:192:6: the methods of "deferHeap" use pointer receiver and non pointer receiver. (recv) type deferHeap[T ItemType] []*deferredRequest[T] ^ agent/consul/discoverychain/string_stack.go:6:6: the methods of "stringStack" use pointer receiver and non pointer receiver. (recv) type stringStack []string ^ agent/consul/fsm/decode_downgrade.go:654:6: the methods of "ShadowProxyConfigEntry" use pointer receiver and non pointer receiver. (recv) type ShadowProxyConfigEntry struct { ^ agent/consul/fsm/commands_ce_test.go:1796:6: the methods of "testRaftHandle" use pointer receiver and non pointer receiver. (recv) type testRaftHandle struct { ^ agent/consul/fsm/fsm.go:51:6: the methods of "FSM" use different receiver names: c, f. (recv) type FSM struct { ^ agent/consul/gateways/controller_gateways.go:583:6: the methods of "gatewayMeta" use different receiver names: g, m. (recv) type gatewayMeta struct { ^ agent/consul/rate/handler.go:400:7: the receiver name "prefix" is too long. (recv) func (prefix limitedEntity) Key() multilimiter.KeyType { ^ agent/consul/state/catalog_schema.go:514:7: the receiver name "index" is too long. (recv) func (index *ServiceNameIndex) FromObject(obj interface{}) (bool, []byte, error) { ^ agent/consul/state/catalog_schema.go:537:7: the receiver name "index" is too long. (recv) func (index *ServiceNameIndex) FromArgs(args ...interface{}) ([]byte, error) { ^ agent/consul/state/catalog_schema.go:552:7: the receiver name "index" is too long. (recv) func (index *ServiceNameIndex) PrefixFromArgs(args ...interface{}) ([]byte, error) { ^ agent/consul/state/catalog_schema.go:643:7: the receiver name "index" is too long. (recv) func (index *ServiceManualVIPIndex) FromObject(obj interface{}) (bool, []byte, error) { ^ agent/consul/state/catalog_schema.go:655:7: the receiver name "index" is too long. (recv) func (index *ServiceManualVIPIndex) FromArgs(args ...interface{}) ([]byte, error) { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 6.853 ± 0.058 6.761 6.944 2.62 ± 0.03
goconst 2.617 ± 0.024 2.576 2.644 1.00
durationcheck 4.804 ± 0.070 4.739 4.960 1.84 ± 0.03

go-delve/delve

``` pkg/dwarf/reader/reader.go:23:7: the receiver name "reader" is too long. (recv) func (reader *Reader) Seek(off dwarf.Offset) { ^ pkg/dwarf/reader/reader.go:29:7: the receiver name "reader" is too long. (recv) func (reader *Reader) SeekToEntry(entry *dwarf.Entry) error { ^ pkg/dwarf/reader/reader.go:37:7: the receiver name "reader" is too long. (recv) func (reader *Reader) AddrFor(name string, staticBase uint64, ptrSize int) (uint64, error) { ^ pkg/dwarf/reader/reader.go:58:7: the receiver name "reader" is too long. (recv) func (reader *Reader) SeekToType(entry *dwarf.Entry, resolveTypedefs bool, resolvePointerTypes bool) (*dwarf.Entry, error) { ^ pkg/dwarf/reader/reader.go:92:7: the receiver name "reader" is too long. (recv) func (reader *Reader) NextType() (*dwarf.Entry, error) { ^ pkg/dwarf/reader/reader.go:110:7: the receiver name "reader" is too long. (recv) func (reader *Reader) SeekToTypeNamed(name string) (*dwarf.Entry, error) { ^ pkg/dwarf/reader/reader.go:131:7: the receiver name "reader" is too long. (recv) func (reader *Reader) FindEntryNamed(name string, member bool) (*dwarf.Entry, error) { ^ pkg/dwarf/reader/reader.go:168:7: the receiver name "reader" is too long. (recv) func (reader *Reader) InstructionsForEntryNamed(name string, member bool) ([]byte, error) { ^ pkg/dwarf/reader/reader.go:186:7: the receiver name "reader" is too long. (recv) func (reader *Reader) InstructionsForEntry(entry *dwarf.Entry) ([]byte, error) { ^ pkg/dwarf/reader/reader.go:207:7: the receiver name "reader" is too long. (recv) func (reader *Reader) NextMemberVariable() (*dwarf.Entry, error) { ^ pkg/internal/gosym/pclntab.go:422:6: the methods of "funcData" use pointer receiver and non pointer receiver. (recv) type funcData struct { ^ pkg/internal/gosym/symtab.go:186:6: the methods of "Table" use different receiver names: T, t. (recv) type Table struct { ^ pkg/proc/amd64util/xsave.go:39:7: the receiver name "xstate" is too long. (recv) func (xstate *AMD64Xstate) Decode() []proc.Register { ^ pkg/proc/amd64util/xsave.go:134:7: the receiver name "xstate" is too long. (recv) func (xstate *AMD64Xstate) SetXmmRegister(n int, value []byte) error { ^ pkg/proc/core/minidump/minidump.go:684:7: the receiver name "mdmp" is too long. (recv) func (mdmp *Minidump) addMemory(addr uint64, data []byte) { ^ pkg/proc/linutil/regs_arm64_arch.go:190:7: the receiver name "fpregs" is too long. (recv) func (fpregs *ARM64PtraceFpRegs) Decode() (regs []proc.Register) { ^ pkg/proc/linutil/regs_arm64_arch.go:197:7: the receiver name "fpregs" is too long. (recv) func (fpregs *ARM64PtraceFpRegs) Byte() []byte { ^ pkg/proc/linutil/regs_ppc64le_arch.go:209:7: the receiver name "fpregs" is too long. (recv) func (fpregs *PPC64LEPtraceFpRegs) Decode() (regs []proc.Register) { ^ pkg/proc/gdbserial/gdbserver.go:1675:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) init(regsInfo []gdbRegisterInfo, arch *proc.Arch, regnames *gdbRegnames) { ^ pkg/proc/gdbserial/gdbserver.go:1693:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) gdbRegisterNew(reginfo *gdbRegisterInfo) gdbRegister { ^ pkg/proc/gdbserial/gdbserver.go:2007:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) PC() uint64 { ^ pkg/proc/gdbserial/gdbserver.go:2011:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) setPC(value uint64) { ^ pkg/proc/gdbserial/gdbserver.go:2015:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) SP() uint64 { ^ pkg/proc/gdbserial/gdbserver.go:2019:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) BP() uint64 { ^ pkg/proc/gdbserial/gdbserver.go:2023:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) CX() uint64 { ^ pkg/proc/gdbserial/gdbserver.go:2027:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) setCX(value uint64) { ^ pkg/proc/gdbserial/gdbserver.go:2031:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) TLS() uint64 { ^ pkg/proc/gdbserial/gdbserver.go:2035:7: the receiver name "regs" is too long. (recv) func (regs *gdbRegisters) GAddr() (uint64, bool) { ^ pkg/proc/gdbserial/gdbserver_conn.go:100:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) handshake(regnames *gdbRegnames) error { ^ pkg/proc/gdbserial/gdbserver_conn.go:192:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) qSupported(multiprocess bool) (features map[string]bool, err error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:220:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) disableAck() error { ^ pkg/proc/gdbserial/gdbserver_conn.go:261:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) readTargetXml(regFound map[string]bool) (err error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:286:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) readRegisterInfo(regFound map[string]bool) (err error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:359:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) readAnnex(annex string) ([]gdbRegisterInfo, error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:379:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) readExecFile() (string, error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:387:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) readAuxv() ([]byte, error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:393:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) qXfer(kind, annex string, binary bool) ([]byte, error) { ^ pkg/proc/gdbserial/gdbserver_conn.go:415:7: the receiver name "conn" is too long. (recv) func (conn *gdbConn) qXferWrite(kind, annex string) error { ^ pkg/proc/native/proc.go:107:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) Detach(pid int, kill bool) (err error) { ^ pkg/proc/native/proc.go:133:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) Close() error { ^ pkg/proc/native/proc.go:221:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) numValid() int { ^ pkg/proc/native/proc.go:231:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) procForThread(tid int) *nativeProcess { ^ pkg/proc/native/proc.go:240:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) procForPid(pid int) *nativeProcess { ^ pkg/proc/native/proc.go:249:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) add(p *nativeProcess, pid int, currentThread proc.Thread, path string, stopReason proc.StopReason, cmdline string) (*proc.Target, error) { ^ pkg/proc/native/proc.go:268:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) ContinueOnce(cctx *proc.ContinueOnceContext) (proc.Thread, proc.StopReason, error) { ^ pkg/proc/native/proc_linux.go:263:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) kill(dbp *nativeProcess) error { ^ pkg/proc/native/proc_linux.go:663:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) resume() error { ^ pkg/proc/native/proc_linux.go:691:7: the receiver name "procgrp" is too long. (recv) func (procgrp *processGroup) stop(cctx *proc.ContinueOnceContext, trapthread *nativeThread) (*nativeThread, error) { ^ pkg/proc/native/registers_linux_amd64.go:17:7: the receiver name "thread" is too long. (recv) func (thread *nativeThread) setPC(pc uint64) error { ^ pkg/proc/native/registers_linux_amd64.go:29:7: the receiver name "thread" is too long. (recv) func (thread *nativeThread) SetReg(regNum uint64, reg *op.DwarfRegister) error { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 1.195 ± 0.014 1.169 1.219 2.14 ± 0.05
goconst 0.558 ± 0.013 0.536 0.573 1.00
durationcheck 0.909 ± 0.021 0.867 0.938 1.63 ± 0.05

etcd-io/etcd

``` contrib/raftexample/raftexample_test.go:78:7: the receiver name "clus" is too long. (recv) func (clus *cluster) Close() (err error) { ^ contrib/raftexample/raftexample_test.go:97:7: the receiver name "clus" is too long. (recv) func (clus *cluster) closeNoErrors(t *testing.T) { ^ ```
Command Mean [ms] Min [ms] Max [ms] Relative
recv 645.2 ± 54.1 595.1 752.1 1.92 ± 0.18
goconst 335.3 ± 15.4 321.2 361.2 1.00
durationcheck 582.8 ± 12.8 561.2 609.4 1.74 ± 0.09

go-gitea/gitea

``` models/issues/assignees.go:29:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadAssignees(ctx context.Context) (err error) { ^ models/issues/assignees.go:77:7: the receiver name "opts" is too long. (recv) func (opts *AssignedIssuesOptions) ToConds() builder.Cond { ^ models/issues/comment.go:1066:7: the receiver name "opts" is too long. (recv) func (opts FindCommentsOptions) ToConds() builder.Cond { ^ models/issues/comment_list.go:20:7: the receiver name "comments" is too long. (recv) func (comments CommentList) LoadPosters(ctx context.Context) error { ^ models/issues/comment_list.go:42:7: the receiver name "comments" is too long. (recv) func (comments CommentList) getLabelIDs() []int64 { ^ models/issues/comment_list.go:48:7: the receiver name "comments" is too long. (recv) func (comments CommentList) loadLabels(ctx context.Context) error { ^ models/issues/comment_list.go:88:7: the receiver name "comments" is too long. (recv) func (comments CommentList) getMilestoneIDs() []int64 { ^ models/issues/comment_list.go:94:7: the receiver name "comments" is too long. (recv) func (comments CommentList) loadMilestones(ctx context.Context) error { ^ models/issues/comment_list.go:127:7: the receiver name "comments" is too long. (recv) func (comments CommentList) getOldMilestoneIDs() []int64 { ^ models/issues/comment_list.go:133:7: the receiver name "comments" is too long. (recv) func (comments CommentList) loadOldMilestones(ctx context.Context) error { ^ models/issues/comment_list.go:166:7: the receiver name "comments" is too long. (recv) func (comments CommentList) getAssigneeIDs() []int64 { ^ models/issues/comment_list.go:172:7: the receiver name "comments" is too long. (recv) func (comments CommentList) loadAssignees(ctx context.Context) error { ^ models/issues/comment_list.go:219:7: the receiver name "comments" is too long. (recv) func (comments CommentList) getIssueIDs() []int64 { ^ models/issues/issue.go:166:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadTotalTimes(ctx context.Context) (err error) { ^ models/issues/issue.go:176:7: the receiver name "issue" is too long. (recv) func (issue *Issue) IsOverdue() bool { ^ models/issues/issue.go:184:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadRepo(ctx context.Context) (err error) { ^ models/issues/issue.go:194:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadAttachments(ctx context.Context) (err error) { ^ models/issues/issue.go:208:7: the receiver name "issue" is too long. (recv) func (issue *Issue) IsTimetrackerEnabled(ctx context.Context) bool { ^ models/issues/issue.go:217:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadPoster(ctx context.Context) (err error) { ^ models/issues/issue.go:233:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadPullRequest(ctx context.Context) (err error) { ^ models/issues/issue.go:251:7: the receiver name "issue" is too long. (recv) func (issue *Issue) loadComments(ctx context.Context) (err error) { ^ models/issues/issue.go:256:7: the receiver name "issue" is too long. (recv) func (issue *Issue) LoadDiscussComments(ctx context.Context) error { ^ models/issues/issue_list.go:23:7: the receiver name "issues" is too long. (recv) func (issues IssueList) getRepoIDs() []int64 { ^ models/issues/issue_list.go:36:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadRepositories(ctx context.Context) (repo_model.RepositoryList, error) { ^ models/issues/issue_list.go:75:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadPosters(ctx context.Context) error { ^ models/issues/issue_list.go:131:7: the receiver name "issues" is too long. (recv) func (issues IssueList) getIssueIDs() []int64 { ^ models/issues/issue_list.go:139:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadLabels(ctx context.Context) error { ^ models/issues/issue_list.go:193:7: the receiver name "issues" is too long. (recv) func (issues IssueList) getMilestoneIDs() []int64 { ^ models/issues/issue_list.go:199:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadMilestones(ctx context.Context) error { ^ models/issues/issue_list.go:229:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadProjects(ctx context.Context) error { ^ models/issues/issue_list.go:268:7: the receiver name "issues" is too long. (recv) func (issues IssueList) LoadAssignees(ctx context.Context) error { ^ models/issues/issue_list.go:323:7: the receiver name "issues" is too long. (recv) func (issues IssueList) getPullIssueIDs() []int64 { ^ models/organization/org.go:87:6: the methods of "Organization" use pointer receiver and non pointer receiver. (recv) type Organization user_model.User ^ models/organization/org.go:464:7: the receiver name "opts" is too long. (recv) func (opts FindOrgOptions) ToConds() builder.Cond { ^ models/organization/org.go:475:7: the receiver name "opts" is too long. (recv) func (opts FindOrgOptions) ToOrders() string { ^ models/organization/team_list.go:56:7: the receiver name "opts" is too long. (recv) func (opts *SearchTeamOptions) toCond() builder.Cond { ^ models/organization/team_user.go:39:7: the receiver name "opts" is too long. (recv) func (opts SearchMembersOptions) ToConds() builder.Cond { ^ models/packages/package_file.go:132:7: the receiver name "opts" is too long. (recv) func (opts *PackageFileSearchOptions) toConds() builder.Cond { ^ models/packages/package_version.go:193:7: the receiver name "opts" is too long. (recv) func (opts *PackageSearchOptions) ToConds() builder.Cond { ^ models/packages/package_version.go:267:7: the receiver name "opts" is too long. (recv) func (opts *PackageSearchOptions) configureOrderBy(e db.Engine) { ^ models/pull/review_state.go:24:7: the receiver name "viewedState" is too long. (recv) func (viewedState ViewedState) String() string { ^ models/secret/secret.go:95:7: the receiver name "opts" is too long. (recv) func (opts FindSecretsOptions) ToConds() builder.Cond { ^ modules/markup/markdown/math/inline_parser.go:49:7: the receiver name "parser" is too long. (recv) func (parser *inlineParser) Trigger() []byte { ^ modules/markup/markdown/math/inline_parser.go:66:7: the receiver name "parser" is too long. (recv) func (parser *inlineParser) Parse(parent ast.Node, block text.Reader, pc parser.Context) ast.Node { ^ modules/optional/option.go:6:6: the methods of "Option" use pointer receiver and non pointer receiver. (recv) type Option[T any] []T ^ modules/setting/config/value.go:29:7: the receiver name "value" is too long. (recv) func (value *Value[T]) parse(key, valStr string) (v T) { ^ modules/setting/config/value.go:39:7: the receiver name "value" is too long. (recv) func (value *Value[T]) Value(ctx context.Context) (v T) { ^ modules/setting/config/value.go:78:7: the receiver name "value" is too long. (recv) func (value *Value[T]) DynKey() string { ^ modules/setting/config/value.go:82:7: the receiver name "value" is too long. (recv) func (value *Value[T]) WithDefault(def T) *Value[T] { ^ modules/setting/config/value.go:87:7: the receiver name "value" is too long. (recv) func (value *Value[T]) WithFileConfig(cfgSecKey CfgSecKey) *Value[T] { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 5.014 ± 0.079 4.930 5.162 2.79 ± 0.05
goconst 1.797 ± 0.016 1.774 1.822 1.00
durationcheck 3.464 ± 0.025 3.430 3.505 1.93 ± 0.02

google/go-github

``` github/event.go:13:6: the methods of "Event" use pointer receiver and non pointer receiver. (recv) type Event struct { ^ github/git_trees.go:33:6: the methods of "TreeEntry" use pointer receiver and non pointer receiver. (recv) type TreeEntry struct { ^ github/actions_permissions_orgs.go:35:6: the methods of "ActionsAllowed" use pointer receiver and non pointer receiver. (recv) type ActionsAllowed struct { ^ github/actions_permissions_orgs.go:16:6: the methods of "ActionsPermissions" use pointer receiver and non pointer receiver. (recv) type ActionsPermissions struct { ^ github/actions_permissions_enterprise.go:22:6: the methods of "ActionsPermissionsEnterprise" use pointer receiver and non pointer receiver. (recv) type ActionsPermissionsEnterprise struct { ^ github/admin_stats.go:14:6: the methods of "AdminStats" use pointer receiver and non pointer receiver. (recv) type AdminStats struct { ^ github/authorizations.go:57:6: the methods of "Authorization" use pointer receiver and non pointer receiver. (recv) type Authorization struct { ^ github/authorizations.go:80:6: the methods of "AuthorizationApp" use pointer receiver and non pointer receiver. (recv) type AuthorizationApp struct { ^ github/authorizations.go:105:6: the methods of "AuthorizationRequest" use pointer receiver and non pointer receiver. (recv) type AuthorizationRequest struct { ^ github/authorizations.go:125:6: the methods of "AuthorizationUpdateRequest" use pointer receiver and non pointer receiver. (recv) type AuthorizationUpdateRequest struct { ^ github/checks.go:20:6: the methods of "CheckRun" use pointer receiver and non pointer receiver. (recv) type CheckRun struct { ^ github/checks.go:71:6: the methods of "CheckSuite" use pointer receiver and non pointer receiver. (recv) type CheckSuite struct { ^ github/admin_stats.go:79:6: the methods of "CommentStats" use pointer receiver and non pointer receiver. (recv) type CommentStats struct { ^ github/git_commits.go:45:6: the methods of "Commit" use pointer receiver and non pointer receiver. (recv) type Commit struct { ^ github/git_commits.go:70:6: the methods of "CommitAuthor" use pointer receiver and non pointer receiver. (recv) type CommitAuthor struct { ^ github/admin.go:66:6: the methods of "Enterprise" use pointer receiver and non pointer receiver. (recv) type Enterprise struct { ^ github/gists.go:21:6: the methods of "Gist" use pointer receiver and non pointer receiver. (recv) type Gist struct { ^ github/gists_comments.go:14:6: the methods of "GistComment" use pointer receiver and non pointer receiver. (recv) type GistComment struct { ^ github/gists.go:58:6: the methods of "GistCommit" use pointer receiver and non pointer receiver. (recv) type GistCommit struct { ^ github/gists.go:44:6: the methods of "GistFile" use pointer receiver and non pointer receiver. (recv) type GistFile struct { ^ github/gists.go:72:6: the methods of "GistFork" use pointer receiver and non pointer receiver. (recv) type GistFork struct { ^ github/admin_stats.go:111:6: the methods of "GistStats" use pointer receiver and non pointer receiver. (recv) type GistStats struct { ^ github/git_refs.go:28:6: the methods of "GitObject" use pointer receiver and non pointer receiver. (recv) type GitObject struct { ^ github/authorizations.go:91:6: the methods of "Grant" use pointer receiver and non pointer receiver. (recv) type Grant struct { ^ github/event_types.go:1326:6: the methods of "HeadCommit" use pointer receiver and non pointer receiver. (recv) type HeadCommit struct { ^ github/admin_stats.go:43:6: the methods of "HookStats" use pointer receiver and non pointer receiver. (recv) type HookStats struct { ^ github/apps.go:134:6: the methods of "Installation" use pointer receiver and non pointer receiver. (recv) type Installation struct { ^ github/admin_stats.go:32:6: the methods of "IssueStats" use pointer receiver and non pointer receiver. (recv) type IssueStats struct { ^ github/admin_stats.go:54:6: the methods of "MilestoneStats" use pointer receiver and non pointer receiver. (recv) type MilestoneStats struct { ^ github/admin_users.go:70:6: the methods of "OAuthAPP" use pointer receiver and non pointer receiver. (recv) type OAuthAPP struct { ^ github/admin_stats.go:66:6: the methods of "OrgStats" use pointer receiver and non pointer receiver. (recv) type OrgStats struct { ^ github/admin_stats.go:91:6: the methods of "PageStats" use pointer receiver and non pointer receiver. (recv) type PageStats struct { ^ github/admin_stats.go:123:6: the methods of "PullStats" use pointer receiver and non pointer receiver. (recv) type PullStats struct { ^ github/event_types.go:1293:6: the methods of "PushEvent" use pointer receiver and non pointer receiver. (recv) type PushEvent struct { ^ github/git_refs.go:16:6: the methods of "Reference" use pointer receiver and non pointer receiver. (recv) type Reference struct { ^ github/admin_stats.go:136:6: the methods of "RepoStats" use pointer receiver and non pointer receiver. (recv) type RepoStats struct { ^ github/dependency_graph.go:17:6: the methods of "SBOM" use pointer receiver and non pointer receiver. (recv) type SBOM struct { ^ github/admin.go:21:6: the methods of "TeamLDAPMapping" use pointer receiver and non pointer receiver. (recv) type TeamLDAPMapping struct { ^ github/git_trees.go:15:6: the methods of "Tree" use pointer receiver and non pointer receiver. (recv) type Tree struct { ^ github/admin.go:40:6: the methods of "UserLDAPMapping" use pointer receiver and non pointer receiver. (recv) type UserLDAPMapping struct { ^ github/admin_stats.go:100:6: the methods of "UserStats" use pointer receiver and non pointer receiver. (recv) type UserStats struct { ^ github/gitignore.go:20:6: the methods of "Gitignore" use pointer receiver and non pointer receiver. (recv) type Gitignore struct { ^ github/issues.go:27:6: the methods of "Issue" use pointer receiver and non pointer receiver. (recv) type Issue struct { ^ github/issues_comments.go:15:6: the methods of "IssueComment" use pointer receiver and non pointer receiver. (recv) type IssueComment struct { ^ github/issues_events.go:183:6: the methods of "Rename" use pointer receiver and non pointer receiver. (recv) type Rename struct { ^ github/issues_labels.go:14:6: the methods of "Label" use pointer receiver and non pointer receiver. (recv) type Label struct { ^ github/issues_milestones.go:14:6: the methods of "Milestone" use pointer receiver and non pointer receiver. (recv) type Milestone struct { ^ github/licenses.go:20:6: the methods of "RepositoryLicense" use pointer receiver and non pointer receiver. (recv) type RepositoryLicense struct { ^ github/licenses.go:41:6: the methods of "License" use pointer receiver and non pointer receiver. (recv) type License struct { ^ github/migrations.go:23:6: the methods of "Migration" use pointer receiver and non pointer receiver. (recv) type Migration struct { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 1.904 ± 0.037 1.863 1.995 2.55 ± 0.07
goconst 0.747 ± 0.015 0.732 0.787 1.00
durationcheck 1.576 ± 0.025 1.539 1.616 2.11 ± 0.05

golangci/golangci-lint

``` pkg/logutils/stderr_log.go:20:6: the methods of "StderrLog" use pointer receiver and non pointer receiver. (recv) type StderrLog struct { ^ pkg/goanalysis/linter.go:23:7: the receiver name "loadMode" is too long. (recv) func (loadMode LoadMode) String() string { ^ pkg/goanalysis/runner_action.go:33:7: the receiver name "actAlloc" is too long. (recv) func (actAlloc *actionAllocator) alloc() *action { ^ pkg/result/processors/nolint.go:305:7: the receiver name "issues" is too long. (recv) func (issues sortWithNolintlintLast) Len() int { ^ pkg/result/processors/nolint.go:309:7: the receiver name "issues" is too long. (recv) func (issues sortWithNolintlintLast) Less(i, j int) bool { ^ pkg/result/processors/nolint.go:313:7: the receiver name "issues" is too long. (recv) func (issues sortWithNolintlintLast) Swap(i, j int) { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 1.150 ± 0.080 1.110 1.374 1.99 ± 0.15
goconst 0.578 ± 0.020 0.549 0.615 1.00
durationcheck 1.014 ± 0.025 0.980 1.069 1.75 ± 0.07

goreleaser/goreleaser

``` internal/skips/skips.go:82:7: the receiver name "keys" is too long. (recv) func (keys Keys) String() string { ^ internal/skips/skips.go:91:7: the receiver name "keys" is too long. (recv) func (keys Keys) Complete(prefix string) []string { ^ internal/artifact/artifact.go:337:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Refresh() error { ^ internal/artifact/artifact.go:344:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) List() []*Artifact { ^ internal/artifact/artifact.go:351:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) GroupByID() map[string][]*Artifact { ^ internal/artifact/artifact.go:364:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) GroupByPlatform() map[string][]*Artifact { ^ internal/artifact/artifact.go:394:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Add(a *Artifact) { ^ internal/artifact/artifact.go:413:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Remove(filter Filter) error { ^ internal/artifact/artifact.go:583:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Filter(filter Filter) *Artifacts { ^ internal/artifact/artifact.go:598:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Paths() []string { ^ internal/artifact/artifact.go:610:7: the receiver name "artifacts" is too long. (recv) func (artifacts *Artifacts) Visit(fn VisitFn) error { ^ internal/exec/exec_mock.go:18:6: the methods of "MockData" use pointer receiver and non pointer receiver. (recv) type MockData struct { ^ pkg/config/config.go:102:6: the methods of "PullRequestBase" use pointer receiver and non pointer receiver. (recv) type PullRequestBase struct { ^ pkg/config/config.go:153:6: the methods of "HomebrewDependency" use pointer receiver and non pointer receiver. (recv) type HomebrewDependency struct { ^ pkg/config/config.go:274:6: the methods of "NixDependency" use pointer receiver and non pointer receiver. (recv) type NixDependency struct { ^ pkg/config/config.go:429:6: the methods of "StringArray" use pointer receiver and non pointer receiver. (recv) type StringArray []string ^ pkg/config/config.go:460:6: the methods of "FlagArray" use pointer receiver and non pointer receiver. (recv) type FlagArray []string ^ pkg/config/config.go:542:6: the methods of "Hooks" use pointer receiver and non pointer receiver. (recv) type Hooks []Hook ^ pkg/config/config.go:578:6: the methods of "Hook" use pointer receiver and non pointer receiver. (recv) type Hook struct { ^ pkg/config/config.go:625:6: the methods of "File" use pointer receiver and non pointer receiver. (recv) type File struct { ^ pkg/config/config.go:1413:6: the methods of "SlackBlock" use pointer receiver and non pointer receiver. (recv) type SlackBlock struct { ^ pkg/config/config.go:1435:6: the methods of "SlackAttachment" use pointer receiver and non pointer receiver. (recv) type SlackAttachment struct { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 1.866 ± 0.096 1.784 2.062 2.48 ± 0.13
goconst 0.753 ± 0.010 0.741 0.774 1.00
durationcheck 1.559 ± 0.020 1.526 1.585 2.07 ± 0.04

grpc/grpc-go

``` balancer/weightedtarget/weightedaggregator/aggregator.go:93:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) Start() { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:101:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) Stop() { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:110:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) Add(id string, weight uint32) { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:131:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) Remove(id string) { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:150:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) UpdateWeight(id string, newWeight uint32) { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:163:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) PauseStateUpdates() { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:172:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) ResumeStateUpdates() { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:183:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) NeedUpdateStateOnResume() { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:193:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) UpdateState(id string, newState balancer.State) { ^ balancer/weightedtarget/weightedaggregator/aggregator.go:220:7: the receiver name "wbsa" is too long. (recv) func (wbsa *Aggregator) clearStates() { ^ internal/testutils/xds/fakeserver/server.go:169:7: the receiver name "xdsS" is too long. (recv) func (xdsS *xdsServerV3) StreamAggregatedResources(s v3discoverygrpc.AggregatedDiscoveryService_StreamAggregatedResourcesServer) error { ^ internal/testutils/xds/fakeserver/server.go:211:7: the receiver name "xdsS" is too long. (recv) func (xdsS *xdsServerV3) DeltaAggregatedResources(v3discoverygrpc.AggregatedDiscoveryService_DeltaAggregatedResourcesServer) error { ^ internal/testutils/xds/fakeserver/server.go:222:7: the receiver name "lrsS" is too long. (recv) func (lrsS *lrsServerV3) StreamLoadStats(s v3lrsgrpc.LoadReportingService_StreamLoadStatsServer) error { ^ interop/stress/client/main.go:132:7: the receiver name "selector" is too long. (recv) func (selector weightedRandomTestSelector) getNextTest() string { ^ xds/internal/testutils/fakeclient/client.go:53:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) ReportLoad(server *bootstrap.ServerConfig) (loadStore *load.Store, cancel func()) { ^ xds/internal/testutils/fakeclient/client.go:62:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) WaitForCancelReportLoad(ctx context.Context) error { ^ xds/internal/testutils/fakeclient/client.go:68:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) LoadStore() *load.Store { ^ xds/internal/testutils/fakeclient/client.go:74:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) WaitForReportLoad(ctx context.Context) (ReportLoadArgs, error) { ^ xds/internal/testutils/fakeclient/client.go:83:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) BootstrapConfig() *bootstrap.Config { ^ xds/internal/testutils/fakeclient/client.go:88:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) SetBootstrapConfig(cfg *bootstrap.Config) { ^ xds/internal/testutils/fakeclient/client.go:93:7: the receiver name "xdsC" is too long. (recv) func (xdsC *Client) Name() string { ^ balancer_wrapper.go:265:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) updateState(s connectivity.State, curAddr resolver.Address, err error) { ^ balancer_wrapper.go:291:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) String() string { ^ balancer_wrapper.go:295:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) UpdateAddresses(addrs []resolver.Address) { ^ balancer_wrapper.go:299:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) Connect() { ^ balancer_wrapper.go:303:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) Shutdown() { ^ balancer_wrapper.go:310:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) NewStream(ctx context.Context, desc *StreamDesc, method string, opts ...CallOption) (ClientStream, error) { ^ balancer_wrapper.go:320:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) Invoke(ctx context.Context, method string, args any, reply any, opts ...CallOption) error { ^ balancer_wrapper.go:337:7: the receiver name "acbw" is too long. (recv) func (acbw *acBalancerWrapper) GetOrBuildProducer(pb balancer.ProducerBuilder) (balancer.Producer, func()) { ^ authz/rbac_translator.go:292:7: the receiver name "options" is too long. (recv) func (options *auditLoggingOptions) toProtos() (allow *v3rbacpb.RBAC_AuditLoggingOptions, deny *v3rbacpb.RBAC_AuditLoggingOptions, err error) { ^ authz/audit/audit_logging_test.go:66:6: the methods of "loggerBuilder" use pointer receiver and non pointer receiver. (recv) type loggerBuilder struct { ^ authz/audit/stdout/stdout_logger.go:76:6: the methods of "loggerBuilder" use pointer receiver and non pointer receiver. (recv) type loggerBuilder struct { ^ balancer/rls/config.go:70:7: the receiver name "lbCfg" is too long. (recv) func (lbCfg *lbConfig) Equal(other *lbConfig) bool { ^ benchmark/primitives/syncmap_test.go:63:7: the receiver name "mwaf" is too long. (recv) func (mwaf *mapWithAtomicFastpath) increment(c string) { ^ benchmark/primitives/syncmap_test.go:83:7: the receiver name "mwaf" is too long. (recv) func (mwaf *mapWithAtomicFastpath) result(c string) uint64 { ^ benchmark/primitives/syncmap_test.go:95:7: the receiver name "mwsm" is too long. (recv) func (mwsm *mapWithSyncMap) increment(c string) { ^ benchmark/primitives/syncmap_test.go:104:7: the receiver name "mwsm" is too long. (recv) func (mwsm *mapWithSyncMap) result(c string) uint64 { ^ channelz/service/service_test.go:553:6: the methods of "OtherChannelzSecurityValue" use pointer receiver and non pointer receiver. (recv) type OtherChannelzSecurityValue struct { ^ codes/codes.go:35:6: the methods of "Code" use pointer receiver and non pointer receiver. (recv) type Code uint32 ^ credentials/tls.go:79:6: the methods of "tlsCreds" use pointer receiver and non pointer receiver. (recv) type tlsCreds struct { ^ internal/profiling/profiling.go:105:7: the receiver name "timer" is too long. (recv) func (timer *Timer) Egress() { ^ internal/profiling/profiling.go:157:7: the receiver name "stat" is too long. (recv) func (stat *Stat) NewTimer(tags string) *Timer { ^ internal/profiling/profiling.go:177:7: the receiver name "stat" is too long. (recv) func (stat *Stat) AppendTimer(timer *Timer) { ^ internal/serviceconfig/duration.go:34:6: the methods of "Duration" use pointer receiver and non pointer receiver. (recv) type Duration time.Duration ^ internal/testutils/wrr.go:51:7: the receiver name "twrr" is too long. (recv) func (twrr *testWRR) Add(item any, weight int64) { ^ internal/testutils/wrr.go:59:7: the receiver name "twrr" is too long. (recv) func (twrr *testWRR) Next() any { ^ internal/testutils/wrr.go:71:7: the receiver name "twrr" is too long. (recv) func (twrr *testWRR) String() string { ^ internal/wrr/edf.go:50:6: the methods of "edfPriorityQueue" use pointer receiver and non pointer receiver. (recv) type edfPriorityQueue []*edfEntry ^ internal/xds/rbac/rbac_engine_test.go:62:6: the methods of "addr" use pointer receiver and non pointer receiver. (recv) type addr struct { ^ internal/xds/rbac/rbac_engine_test.go:1832:7: the receiver name "logger" is too long. (recv) func (logger *TestAuditLoggerBuffer) Log(e *audit.Event) { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 2.575 ± 0.098 2.514 2.844 2.78 ± 0.13
goconst 0.925 ± 0.023 0.908 0.984 1.00
durationcheck 1.604 ± 0.020 1.572 1.642 1.73 ± 0.05

gohugoio/hugo

``` hugolib/filesystems/basefs.go:230:6: the methods of "SourceFilesystems" use pointer receiver and non pointer receiver. (recv) type SourceFilesystems struct { ^ cache/filecache/filecache.go:418:6: the methods of "Caches" use different receiver names: c, f. (recv) type Caches map[string]*Cache ^ deps/deps.go:41:6: the methods of "Deps" use pointer receiver and non pointer receiver. (recv) type Deps struct { ^ resources/resource_transformers/babel/babel.go:60:7: the receiver name "opts" is too long. (recv) func (opts Options) toArgs() []any { ^ releaser/releaser.go:72:6: the methods of "ReleaseHandler" use pointer receiver and non pointer receiver. (recv) type ReleaseHandler struct { ^ commands/import.go:71:6: the methods of "importCommand" use different receiver names: c, i. (recv) type importCommand struct { ^ common/herrors/file_error.go:126:6: the methods of "fileError" use pointer receiver and non pointer receiver. (recv) type fileError struct { ^ common/hugo/version.go:29:6: the methods of "Version" use different receiver names: h, v. (recv) type Version struct { ^ common/paths/pathparser.go:252:6: the methods of "Path" use pointer receiver and non pointer receiver. (recv) type Path struct { ^ config/commonConfig.go:96:6: the methods of "BuildConfig" use pointer receiver and non pointer receiver. (recv) type BuildConfig struct { ^ config/allconfig/allconfig.go:99:6: the methods of "Config" use pointer receiver and non pointer receiver. (recv) type Config struct { ^ config/allconfig/allconfig.go:706:6: the methods of "Configs" use pointer receiver and non pointer receiver. (recv) type Configs struct { ^ config/allconfig/load.go:128:6: the methods of "configLoader" use pointer receiver and non pointer receiver. (recv) type configLoader struct { ^ hugofs/noop_fs.go:33:6: the methods of "noOpFs" use pointer receiver and non pointer receiver. (recv) type noOpFs struct{} ^ hugofs/rootmapping_fs.go:188:6: the methods of "RootMapping" use pointer receiver and non pointer receiver. (recv) type RootMapping struct { ^ hugofs/rootmapping_fs.go:232:6: the methods of "RootMappingFs" use pointer receiver and non pointer receiver. (recv) type RootMappingFs struct { ^ hugofs/fileinfo.go:46:6: the methods of "FileMeta" use different receiver names: f, m. (recv) type FileMeta struct { ^ hugofs/createcounting_fs.go:70:6: the methods of "createCountingFs" use different receiver names: c, fs. (recv) type createCountingFs struct { ^ hugolib/content_map.go:57:6: the methods of "resourceSource" use pointer receiver and non pointer receiver. (recv) type resourceSource struct { ^ hugolib/content_map_page.go:114:6: the methods of "pageTrees" use pointer receiver and non pointer receiver. (recv) type pageTrees struct { ^ hugolib/site.go:106:7: the receiver name "init" is too long. (recv) func (init *siteInit) Reset() { ^ hugolib/site.go:267:6: the methods of "siteRefLinker" use pointer receiver and non pointer receiver. (recv) type siteRefLinker struct { ^ hugolib/page__content.go:182:6: the methods of "contentParseInfo" use different receiver names: c, p, pi, rn. (recv) type contentParseInfo struct { ^ hugolib/page__output.go:82:6: the methods of "pageOutput" use different receiver names: p, po. (recv) type pageOutput struct { ^ hugolib/shortcode.go:191:6: the methods of "shortcode" use different receiver names: s, sc. (recv) type shortcode struct { ^ hugolib/page__meta.go:52:6: the methods of "pageMeta" use different receiver names: m, p. (recv) type pageMeta struct { ^ hugolib/page__per_output.go:82:6: the methods of "pageContentOutput" use different receiver names: cp, pco. (recv) type pageContentOutput struct { ^ hugolib/page.go:94:6: the methods of "pageState" use different receiver names: p, po, ps. (recv) type pageState struct { ^ hugolib/hugo_sites.go:53:6: the methods of "HugoSites" use different receiver names: h, s. (recv) type HugoSites struct { ^ hugolib/page__tree.go:29:6: the methods of "pageTree" use different receiver names: p, pt. (recv) type pageTree struct { ^ hugolib/doctree/nodeshifttree.go:294:6: the methods of "NodeShiftTreeWalker" use pointer receiver and non pointer receiver. (recv) type NodeShiftTreeWalker[T any] struct { ^ hugolib/doctree/nodeshifttree.go:64:6: the methods of "NodeShiftTree" use pointer receiver and non pointer receiver. (recv) type NodeShiftTree[T any] struct { ^ hugolib/doctree/simpletree.go:42:7: the receiver name "tree" is too long. (recv) func (tree *SimpleTree[T]) Get(s string) T { ^ hugolib/doctree/simpletree.go:52:7: the receiver name "tree" is too long. (recv) func (tree *SimpleTree[T]) LongestPrefix(s string) (string, T) { ^ hugolib/doctree/simpletree.go:62:7: the receiver name "tree" is too long. (recv) func (tree *SimpleTree[T]) Insert(s string, v T) T { ^ hugolib/doctree/simpletree.go:70:7: the receiver name "tree" is too long. (recv) func (tree *SimpleTree[T]) Lock(lockType LockType) func() { ^ hugolib/doctree/simpletree.go:84:7: the receiver name "tree" is too long. (recv) func (tree *SimpleTree[T]) WalkPrefix(lockType LockType, s string, f func(s string, v T) (bool, error)) error { ^ hugolib/doctree/treeshifttree.go:18:6: the methods of "TreeShiftTree" use pointer receiver and non pointer receiver. (recv) type TreeShiftTree[T comparable] struct { ^ hugolib/pagesfromdata/pagesfromgotmpl.go:176:6: the methods of "PagesFromTemplate" use pointer receiver and non pointer receiver. (recv) type PagesFromTemplate struct { ^ internal/warpc/warpc.go:250:7: the receiver name "call" is too long. (recv) func (call *call[Q, R]) done() { ^ markup/goldmark/hugocontext/hugocontext.go:54:6: the methods of "HugoContext" use different receiver names: h, n. (recv) type HugoContext struct { ^ markup/goldmark/hugocontext/hugocontext.go:99:6: the methods of "hugoContextParser" use different receiver names: a, s. (recv) type hugoContextParser struct{} ^ markup/tableofcontents/tableofcontents.go:31:6: the methods of "Builder" use pointer receiver and non pointer receiver. (recv) type Builder struct { ^ markup/tableofcontents/tableofcontents.go:78:6: the methods of "Heading" use pointer receiver and non pointer receiver. (recv) type Heading struct { ^ markup/tableofcontents/tableofcontents.go:99:6: the methods of "Fragments" use pointer receiver and non pointer receiver. (recv) type Fragments struct { ^ media/config.go:80:6: the methods of "ContentTypes" use pointer receiver and non pointer receiver. (recv) type ContentTypes struct { ^ media/mediaType.go:36:6: the methods of "Type" use pointer receiver and non pointer receiver. (recv) type Type struct { ^ modules/client.go:789:7: the receiver name "modules" is too long. (recv) func (modules goModules) GetByPath(p string) *goModule { ^ modules/client.go:803:7: the receiver name "modules" is too long. (recv) func (modules goModules) GetMain() *goModule { ^ modules/collect.go:107:6: the methods of "ModulesConfig" use pointer receiver and non pointer receiver. (recv) type ModulesConfig struct { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 3.232 ± 0.036 3.179 3.303 3.27 ± 0.07
goconst 0.989 ± 0.019 0.954 1.014 1.00
durationcheck 2.591 ± 0.047 2.555 2.713 2.62 ± 0.07

kubernetes/kubernetes

``` cmd/cloud-controller-manager/nodeipamcontroller.go:54:7: the receiver name "nodeIpamController" is too long. (recv) func (nodeIpamController *nodeIPAMController) StartNodeIpamControllerWrapper(initContext app.ControllerInitContext, completedConfig *cloudcontrollerconfig.CompletedConfig, cloud cloudprovider.Interface) app.InitFunc { ^ pkg/kubeapiserver/authenticator/config.go:100:7: the receiver name "config" is too long. (recv) func (config Config) New(serverLifecycle context.Context) (authenticator.Request, func(context.Context, *apiserver.AuthenticationConfiguration) error, *spec.SecurityDefinitions, spec3.SecuritySchemes, error) { ^ pkg/apis/rbac/types.go:45:6: the methods of "PolicyRule" use pointer receiver and non pointer receiver. (recv) type PolicyRule struct { ^ pkg/apis/rbac/helpers.go:369:6: the methods of "SortableRuleSlice" use different receiver names: in, s. (recv) type SortableRuleSlice []PolicyRule ^ pkg/apis/rbac/v1/evaluation_helpers.go:138:6: the methods of "SortableRuleSlice" use different receiver names: in, s. (recv) type SortableRuleSlice []rbacv1.PolicyRule ^ pkg/kubeapiserver/authorizer/config.go:75:7: the receiver name "config" is too long. (recv) func (config Config) New(ctx context.Context, serverID string) (authorizer.Authorizer, authorizer.RuleResolver, error) { ^ pkg/registry/rbac/clusterrolebinding/policybased/storage.go:38:6: the methods of "Storage" use different receiver names: r, s. (recv) type Storage struct { ^ pkg/registry/rbac/rolebinding/policybased/storage.go:39:6: the methods of "Storage" use different receiver names: r, s. (recv) type Storage struct { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:100:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) Name() string { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:104:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) addSVM(logger klog.Logger, obj interface{}) { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:110:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) updateSVM(logger klog.Logger, oldObj, newObj interface{}) { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:117:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) enqueue(svm *svmv1alpha1.StorageVersionMigration) { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:127:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) Run(ctx context.Context) { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:146:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) worker(ctx context.Context) { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:151:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) processNext(ctx context.Context) bool { ^ pkg/controller/storageversionmigrator/storageversionmigrator.go:170:7: the receiver name "svmc" is too long. (recv) func (svmc *SVMController) sync(ctx context.Context, key string) error { ^ pkg/util/goroutinemap/exponentialbackoff/exponential_backoff.go:50:7: the receiver name "expBackoff" is too long. (recv) func (expBackoff *ExponentialBackoff) SafeToRetry(operationName string) error { ^ pkg/util/goroutinemap/exponentialbackoff/exponential_backoff.go:58:7: the receiver name "expBackoff" is too long. (recv) func (expBackoff *ExponentialBackoff) Update(err *error) { ^ pkg/util/goroutinemap/exponentialbackoff/exponential_backoff.go:72:7: the receiver name "expBackoff" is too long. (recv) func (expBackoff *ExponentialBackoff) GenerateNoRetriesPermittedMsg(operationName string) string { ^ pkg/controller/volume/persistentvolume/metrics/metrics.go:171:7: the receiver name "collector" is too long. (recv) func (collector *pvAndPVCCountCollector) DescribeWithStability(ch chan<- *metrics.Desc) { ^ pkg/controller/volume/persistentvolume/metrics/metrics.go:179:7: the receiver name "collector" is too long. (recv) func (collector *pvAndPVCCountCollector) CollectWithStability(ch chan<- metrics.Metric) { ^ pkg/controller/volume/persistentvolume/metrics/metrics.go:184:7: the receiver name "collector" is too long. (recv) func (collector *pvAndPVCCountCollector) getPVPluginName(pv *v1.PersistentVolume) string { ^ pkg/controller/volume/persistentvolume/metrics/metrics.go:193:7: the receiver name "collector" is too long. (recv) func (collector *pvAndPVCCountCollector) pvCollect(ch chan<- metrics.Metric) { ^ pkg/controller/volume/persistentvolume/metrics/metrics.go:236:7: the receiver name "collector" is too long. (recv) func (collector *pvAndPVCCountCollector) pvcCollect(ch chan<- metrics.Metric) { ^ pkg/proxy/metaproxier/meta_proxier.go:48:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) Sync() { ^ pkg/proxy/metaproxier/meta_proxier.go:55:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) SyncLoop() { ^ pkg/proxy/metaproxier/meta_proxier.go:61:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnServiceAdd(service *v1.Service) { ^ pkg/proxy/metaproxier/meta_proxier.go:68:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnServiceUpdate(oldService, service *v1.Service) { ^ pkg/proxy/metaproxier/meta_proxier.go:75:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnServiceDelete(service *v1.Service) { ^ pkg/proxy/metaproxier/meta_proxier.go:83:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnServiceSynced() { ^ pkg/proxy/metaproxier/meta_proxier.go:90:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice) { ^ pkg/proxy/metaproxier/meta_proxier.go:103:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice) { ^ pkg/proxy/metaproxier/meta_proxier.go:116:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice) { ^ pkg/proxy/metaproxier/meta_proxier.go:129:7: the receiver name "proxier" is too long. (recv) func (proxier *metaProxier) OnEndpointSlicesSynced() { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:34:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceStart(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:40:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceStop(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:46:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceRestart(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:55:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceExists(service string) bool { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:62:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceIsEnabled(service string) bool { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:69:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) ServiceIsActive(service string) bool { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:77:7: the receiver name "openrc" is too long. (recv) func (openrc OpenRCInitSystem) EnableCommand(service string) string { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:85:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) EnableCommand(service string) string { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:90:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) reloadSystemd() error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:98:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceStart(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:108:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceRestart(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:118:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceStop(service string) error { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:124:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceExists(service string) bool { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:132:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceIsEnabled(service string) bool { ^ cmd/kubeadm/app/util/initsystem/initsystem_unix.go:141:7: the receiver name "sysd" is too long. (recv) func (sysd SystemdInitSystem) ServiceIsActive(service string) bool { ^ test/utils/runners.go:299:7: the receiver name "config" is too long. (recv) func (config *DeploymentConfig) create() error { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 24.734 ± 0.297 24.310 25.296 4.45 ± 0.06
goconst 5.560 ± 0.016 5.538 5.591 1.00
durationcheck 9.386 ± 0.086 9.265 9.569 1.69 ± 0.02

go-acme/lego

``` challenge/dns01/nameserver.go:48:7: the receiver name "cache" is too long. (recv) func (cache *soaCacheEntry) isExpired() bool { ^ providers/dns/hyperone/internal/passport.go:41:7: the receiver name "passport" is too long. (recv) func (passport *Passport) validate() error { ^ providers/dns/hyperone/internal/passport.go:61:7: the receiver name "passport" is too long. (recv) func (passport *Passport) ExtractProjectID() (string, error) { ^ providers/dns/hyperone/internal/token.go:22:7: the receiver name "input" is too long. (recv) func (input *TokenSigner) GetJWT() (string, error) { ^ providers/dns/hyperone/internal/token.go:65:7: the receiver name "payload" is too long. (recv) func (payload *Payload) buildToken(signer *jose.Signer) (string, error) { ^ providers/dns/servercow/internal/types.go:16:6: the methods of "Value" use pointer receiver and non pointer receiver. (recv) type Value []string ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 2.909 ± 0.097 2.797 3.114 3.28 ± 0.11
goconst 0.886 ± 0.003 0.880 0.889 1.00
durationcheck 1.900 ± 0.020 1.872 1.933 2.15 ± 0.02

pact-foundation/pact-go

``` message/v4/synchronous_message.go:188:6: the methods of "SynchronousMessageWithPlugin" use different receiver names: m, s. (recv) type SynchronousMessageWithPlugin struct { ^ message/v4/synchronous_message.go:202:6: the methods of "SynchronousMessageWithPluginContents" use different receiver names: m, s. (recv) type SynchronousMessageWithPluginContents struct { ^ ```
Command Mean [ms] Min [ms] Max [ms] Relative
recv 521.2 ± 7.5 508.7 533.3 1.78 ± 0.03
goconst 292.2 ± 3.5 287.9 300.4 1.00
durationcheck 463.4 ± 8.9 450.5 481.0 1.59 ± 0.04

rclone/rclone

``` fs/hash/hash.go:21:6: the methods of "Type" use pointer receiver and non pointer receiver. (recv) type Type int ^ fs/hash/hash.go:279:6: the methods of "Set" use pointer receiver and non pointer receiver. (recv) type Set int ^ backend/b2/api/types.go:56:6: the methods of "Timestamp" use pointer receiver and non pointer receiver. (recv) type Timestamp time.Time ^ backend/filefabric/api/types.go:24:6: the methods of "Time" use pointer receiver and non pointer receiver. (recv) type Time time.Time ^ backend/internetarchive/internetarchive.go:1197:7: the receiver name "file" is too long. (recv) func (file IAFile) parseMtime() (mtime time.Time) { ^ backend/quatrix/api/types.go:124:6: the methods of "JSONTime" use pointer receiver and non pointer receiver. (recv) type JSONTime time.Time ^ backend/sharefile/api/types.go:122:7: the receiver name "finish" is too long. (recv) func (finish *UploadFinishResponse) ID() (string, error) { ^ cmd/bisync/cmd.go:75:6: the methods of "CheckSyncMode" use pointer receiver and non pointer receiver. (recv) type CheckSyncMode int ^ cmd/test/info/internal/internal.go:23:6: the methods of "Position" use pointer receiver and non pointer receiver. (recv) type Position int ^ cmd/test/info/internal/internal.go:12:6: the methods of "Presence" use pointer receiver and non pointer receiver. (recv) type Presence int ^ backend/b2/b2.go:1783:7: the receiver name "file" is too long. (recv) func (file *openFile) Read(p []byte) (n int, err error) { ^ backend/b2/b2.go:1794:7: the receiver name "file" is too long. (recv) func (file *openFile) Close() (err error) { ^ backend/crypt/cipher.go:106:7: the receiver name "mode" is too long. (recv) func (mode NameEncryptionMode) String() (out string) { ^ backend/drive/drive.go:4110:7: the receiver name "file" is too long. (recv) func (file *openDocumentFile) Read(p []byte) (n int, err error) { ^ backend/drive/drive.go:4123:7: the receiver name "file" is too long. (recv) func (file *openDocumentFile) Close() (err error) { ^ backend/jottacloud/api/types.go:36:6: the methods of "JottaTime" use pointer receiver and non pointer receiver. (recv) type JottaTime time.Time ^ backend/jottacloud/api/types.go:54:6: the methods of "Rfc3339Time" use pointer receiver and non pointer receiver. (recv) type Rfc3339Time time.Time ^ backend/local/local.go:1223:7: the receiver name "file" is too long. (recv) func (file *localOpenFile) Read(p []byte) (n int, err error) { ^ backend/local/local.go:1251:7: the receiver name "file" is too long. (recv) func (file *localOpenFile) Close() (err error) { ^ backend/oracleobjectstorage/waiter.go:59:7: the receiver name "conf" is too long. (recv) func (conf *StateChangeConf) WaitForStateContext(ctx context.Context, entityType string) (interface{}, error) { ^ backend/sftp/sftp.go:2083:7: the receiver name "file" is too long. (recv) func (file *objectReader) Read(p []byte) (n int, err error) { ^ backend/sftp/sftp.go:2089:7: the receiver name "file" is too long. (recv) func (file *objectReader) Close() (err error) { ^ backend/ulozto/ulozto.go:290:7: the receiver name "session" is too long. (recv) func (session *UploadSession) renewUploadSession(ctx context.Context) error { ^ cmd/serve/dlna/cds.go:350:6: the methods of "object" use pointer receiver and non pointer receiver. (recv) type object struct { ^ cmd/serve/dlna/mrrs.go:14:7: the receiver name "mrrs" is too long. (recv) func (mrrs *mediaReceiverRegistrarService) Handle(action string, argsXML []byte, r *http.Request) (map[string]string, error) { ^ cmd/serve/s3/backend.go:26:6: the methods of "s3Backend" use different receiver names: b, db. (recv) type s3Backend struct { ^ cmd/tree/tree.go:213:7: the receiver name "dirs" is too long. (recv) func (dirs Fs) Stat(filePath string) (fi os.FileInfo, err error) { ^ cmd/tree/tree.go:229:7: the receiver name "dirs" is too long. (recv) func (dirs Fs) ReadDir(dir string) (names []string, err error) { ^ fs/bits.go:31:6: the methods of "Bits" use pointer receiver and non pointer receiver. (recv) type Bits[C BitsChoices] uint64 ^ fs/bwtimetable.go:65:6: the methods of "BwTimetable" use pointer receiver and non pointer receiver. (recv) type BwTimetable []BwTimeSlot ^ fs/config_list.go:11:6: the methods of "CommaSepList" use pointer receiver and non pointer receiver. (recv) type CommaSepList []string ^ fs/config_list.go:15:6: the methods of "SpaceSepList" use pointer receiver and non pointer receiver. (recv) type SpaceSepList []string ^ fs/config_list.go:17:6: the methods of "genericList" use pointer receiver and non pointer receiver. (recv) type genericList []string ^ fs/configmap.go:15:7: the receiver name "configName" is too long. (recv) func (configName configEnvVars) Get(key string) (value string, ok bool) { ^ fs/configmap.go:77:7: the receiver name "section" is too long. (recv) func (section setConfigFile) Set(key, value string) { ^ fs/configmap.go:89:7: the receiver name "section" is too long. (recv) func (section getConfigFile) Get(key string) (value string, ok bool) { ^ fs/countsuffix.go:14:6: the methods of "CountSuffix" use pointer receiver and non pointer receiver. (recv) type CountSuffix int64 ^ fs/enum.go:30:6: the methods of "Enum" use pointer receiver and non pointer receiver. (recv) type Enum[C Choices] byte ^ fs/parseduration.go:13:6: the methods of "Duration" use pointer receiver and non pointer receiver. (recv) type Duration time.Duration ^ fs/parsetime.go:10:6: the methods of "Time" use pointer receiver and non pointer receiver. (recv) type Time time.Time ^ fs/sizesuffix.go:15:6: the methods of "SizeSuffix" use pointer receiver and non pointer receiver. (recv) type SizeSuffix int64 ^ fs/tristate.go:12:6: the methods of "Tristate" use pointer receiver and non pointer receiver. (recv) type Tristate struct { ^ fs/accounting/stats.go:157:6: the methods of "timeRanges" use pointer receiver and non pointer receiver. (recv) type timeRanges []timeRange ^ fs/fserrors/error.go:301:6: the methods of "wrappedCountableError" use pointer receiver and non pointer receiver. (recv) type wrappedCountableError struct { ^ fs/operations/dedupe.go:182:6: the methods of "DeduplicateMode" use pointer receiver and non pointer receiver. (recv) type DeduplicateMode int ^ fs/operations/logger.go:19:7: the receiver name "sigil" is too long. (recv) func (sigil Sigil) String() string { ^ fs/operations/logger.go:40:7: the receiver name "sigil" is too long. (recv) func (sigil Sigil) Writer(opt LoggerOpt) io.Writer { ^ fs/rc/jobs/job.go:150:7: the receiver name "jobs" is too long. (recv) func (jobs *Jobs) kickExpire() { ^ fs/rc/jobs/job.go:160:7: the receiver name "jobs" is too long. (recv) func (jobs *Jobs) Expire() { ^ fs/rc/jobs/job.go:180:7: the receiver name "jobs" is too long. (recv) func (jobs *Jobs) IDs() (IDs []int64) { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 3.200 ± 0.028 3.161 3.244 2.41 ± 0.15
goconst 1.326 ± 0.083 1.272 1.541 1.00
durationcheck 2.306 ± 0.029 2.264 2.357 1.74 ± 0.11

hashicorp/terraform

``` internal/command/jsonformat/computed/diff.go:53:7: the receiver name "diff" is too long. (recv) func (diff Diff) RenderHuman(indent int, opts RenderHumanOpts) string { ^ internal/command/jsonformat/computed/diff.go:62:7: the receiver name "diff" is too long. (recv) func (diff Diff) WarningsHuman(indent int, opts RenderHumanOpts) []string { ^ internal/command/jsonformat/computed/diff.go:117:7: the receiver name "opts" is too long. (recv) func (opts RenderHumanOpts) Clone() RenderHumanOpts { ^ internal/command/jsonformat/structured/change.go:192:7: the receiver name "change" is too long. (recv) func (change Change) CalculateAction() plans.Action { ^ internal/command/jsonformat/structured/change.go:217:7: the receiver name "change" is too long. (recv) func (change Change) GetDefaultActionForIteration() plans.Action { ^ internal/command/jsonformat/structured/change.go:234:7: the receiver name "change" is too long. (recv) func (change Change) AsNoOp() Change { ^ internal/command/jsonformat/structured/change.go:251:7: the receiver name "change" is too long. (recv) func (change Change) AsDelete() Change { ^ internal/command/jsonformat/structured/change.go:268:7: the receiver name "change" is too long. (recv) func (change Change) AsCreate() Change { ^ internal/command/jsonformat/structured/map.go:45:7: the receiver name "change" is too long. (recv) func (change Change) AsMap() ChangeMap { ^ internal/command/jsonformat/structured/sensitive.go:14:7: the receiver name "change" is too long. (recv) func (change Change) IsBeforeSensitive() bool { ^ internal/command/jsonformat/structured/sensitive.go:21:7: the receiver name "change" is too long. (recv) func (change Change) IsAfterSensitive() bool { ^ internal/command/jsonformat/structured/sensitive.go:48:7: the receiver name "change" is too long. (recv) func (change Change) CheckForSensitive(processInner ProcessSensitiveInner, createDiff CreateSensitiveDiff) (computed.Diff, bool) { ^ internal/command/jsonformat/structured/slice.go:40:7: the receiver name "change" is too long. (recv) func (change Change) AsSlice() ChangeSlice { ^ internal/command/jsonformat/jsondiff/diff.go:38:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) Transform(change structured.Change) computed.Diff { ^ internal/command/jsonformat/jsondiff/diff.go:66:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processUpdate(change structured.Change, jtype Type) computed.Diff { ^ internal/command/jsonformat/jsondiff/diff.go:85:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processPrimitive(change structured.Change, ctype cty.Type) computed.Diff { ^ internal/command/jsonformat/jsondiff/diff.go:104:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processArray(change structured.ChangeSlice) computed.Diff { ^ internal/command/jsonformat/jsondiff/diff.go:125:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processObject(change structured.ChangeMap) computed.Diff { ^ internal/command/jsonformat/jsondiff/diff.go:136:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processUnknown(change structured.Change) (computed.Diff, bool) { ^ internal/command/jsonformat/jsondiff/diff.go:147:7: the receiver name "opts" is too long. (recv) func (opts JsonOpts) processSensitive(change structured.Change) (computed.Diff, bool) { ^ internal/promising/promise_container.go:42:7: the receiver name "pair" is too long. (recv) func (pair PromiseResolverPair[AType, BType]) AnnounceContainedPromises(cb func(AnyPromiseResolver)) { ^ internal/stacks/stackruntime/hooks/component_instance.go:55:6: the methods of "ComponentInstanceChange" use pointer receiver and non pointer receiver. (recv) type ComponentInstanceChange struct { ^ internal/stacks/stackruntime/hooks/component_instance.go:16:6: the methods of "ComponentInstanceStatus" use different receiver names: i, s. (recv) type ComponentInstanceStatus rune ^ internal/stacks/stackruntime/hooks/resource_instance.go:62:6: the methods of "ProvisionerStatus" use different receiver names: i, s. (recv) type ProvisionerStatus rune ^ internal/stacks/stackruntime/hooks/resource_instance.go:18:6: the methods of "ResourceInstanceStatus" use different receiver names: i, s. (recv) type ResourceInstanceStatus rune ^ internal/command/testing/test_provider.go:117:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) DataPrefix() string { ^ internal/command/testing/test_provider.go:125:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) SetDataPrefix(prefix string) { ^ internal/command/testing/test_provider.go:129:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) GetDataKey(id string) string { ^ internal/command/testing/test_provider.go:136:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) ResourcePrefix() string { ^ internal/command/testing/test_provider.go:144:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) SetResourcePrefix(prefix string) { ^ internal/command/testing/test_provider.go:148:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) GetResourceKey(id string) string { ^ internal/command/testing/test_provider.go:155:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) ResourceString() string { ^ internal/command/testing/test_provider.go:159:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) ResourceCount() int { ^ internal/command/testing/test_provider.go:163:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) DataSourceString() string { ^ internal/command/testing/test_provider.go:167:7: the receiver name "provider" is too long. (recv) func (provider *TestProvider) DataSourceCount() int { ^ internal/command/testing/test_provider.go:351:7: the receiver name "store" is too long. (recv) func (store *ResourceStore) Delete(key string) cty.Value { ^ internal/command/testing/test_provider.go:362:7: the receiver name "store" is too long. (recv) func (store *ResourceStore) Get(key string) cty.Value { ^ internal/command/testing/test_provider.go:369:7: the receiver name "store" is too long. (recv) func (store *ResourceStore) Put(key string, resource cty.Value) cty.Value { ^ internal/command/testing/test_provider.go:378:7: the receiver name "store" is too long. (recv) func (store *ResourceStore) get(key string) cty.Value { ^ internal/provider-simple/provider.go:18:6: the methods of "simple" use different receiver names: p, s. (recv) type simple struct { ^ internal/provider-simple-v6/provider.go:19:6: the methods of "simple" use different receiver names: p, s. (recv) type simple struct { ^ internal/addrs/move_endpoint_module.go:714:7: the receiver name "from" is too long. (recv) func (from *MoveEndpointInModule) IsModuleReIndex(to *MoveEndpointInModule) bool { ^ internal/addrs/resource.go:258:6: the methods of "AbsResourceInstance" use different receiver names: r, v. (recv) type AbsResourceInstance struct { ^ internal/addrs/check_rule.go:83:6: the methods of "CheckRuleType" use different receiver names: c, i. (recv) type CheckRuleType int ^ internal/addrs/move_endpoint_module.go:40:6: the methods of "MoveEndpointInModule" use different receiver names: e, from. (recv) type MoveEndpointInModule struct { ^ internal/addrs/resource.go:412:6: the methods of "ConfigResource" use different receiver names: r, v. (recv) type ConfigResource struct { ^ internal/backend/local/test.go:83:7: the receiver name "runner" is too long. (recv) func (runner *TestSuiteRunner) Stop() { ^ internal/backend/local/test.go:87:7: the receiver name "runner" is too long. (recv) func (runner *TestSuiteRunner) Cancel() { ^ internal/backend/local/test.go:91:7: the receiver name "runner" is too long. (recv) func (runner *TestSuiteRunner) Test() (moduletest.Status, tfdiags.Diagnostics) { ^ internal/backend/local/test.go:177:7: the receiver name "runner" is too long. (recv) func (runner *TestSuiteRunner) collectTests() (*moduletest.Suite, tfdiags.Diagnostics) { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 3.957 ± 0.035 3.898 4.022 2.50 ± 0.05
goconst 1.581 ± 0.026 1.551 1.628 1.00
durationcheck 3.029 ± 0.030 2.971 3.076 1.92 ± 0.04

traefik/traefik

``` pkg/plugins/middlewarewasm.go:21:6: the methods of "wasmMiddlewareBuilder" use pointer receiver and non pointer receiver. (recv) type wasmMiddlewareBuilder struct { ^ pkg/config/dynamic/middlewares.go:170:6: the methods of "Compress" use different receiver names: c, in. (recv) type Compress struct { ^ pkg/config/dynamic/middlewares.go:403:6: the methods of "IPStrategy" use different receiver names: in, s. (recv) type IPStrategy struct { ^ pkg/config/dynamic/http_config.go:82:6: the methods of "Mirroring" use different receiver names: in, m. (recv) type Mirroring struct { ^ pkg/config/dynamic/http_config.go:187:6: the methods of "ServersLoadBalancer" use different receiver names: in, l. (recv) type ServersLoadBalancer struct { ^ pkg/config/dynamic/http_config.go:246:6: the methods of "Server" use different receiver names: in, s. (recv) type Server struct { ^ pkg/config/dynamic/tcp_config.go:48:6: the methods of "TCPWRRService" use different receiver names: in, w. (recv) type TCPWRRService struct { ^ pkg/config/dynamic/http_config.go:317:6: the methods of "ForwardingTimeouts" use different receiver names: f, in. (recv) type ForwardingTimeouts struct { ^ pkg/config/dynamic/middlewares.go:145:6: the methods of "CircuitBreaker" use different receiver names: c, in. (recv) type CircuitBreaker struct { ^ pkg/config/dynamic/middlewares.go:274:6: the methods of "Headers" use different receiver names: h, in. (recv) type Headers struct { ^ pkg/config/dynamic/http_config.go:229:6: the methods of "ResponseForwarding" use different receiver names: in, r. (recv) type ResponseForwarding struct { ^ pkg/config/dynamic/http_config.go:261:6: the methods of "ServerHealthCheck" use different receiver names: h, in. (recv) type ServerHealthCheck struct { ^ pkg/config/dynamic/tcp_config.go:142:6: the methods of "TCPServersTransport" use different receiver names: in, t. (recv) type TCPServersTransport struct { ^ pkg/config/dynamic/udp_config.go:55:6: the methods of "UDPServersLoadBalancer" use different receiver names: in, l. (recv) type UDPServersLoadBalancer struct { ^ pkg/config/dynamic/http_config.go:132:6: the methods of "WRRService" use different receiver names: in, w. (recv) type WRRService struct { ^ pkg/config/dynamic/tcp_config.go:129:6: the methods of "ProxyProtocol" use different receiver names: in, p. (recv) type ProxyProtocol struct { ^ pkg/config/dynamic/udp_config.go:33:6: the methods of "UDPWRRService" use different receiver names: in, w. (recv) type UDPWRRService struct { ^ pkg/config/dynamic/middlewares.go:510:6: the methods of "RateLimit" use different receiver names: in, r. (recv) type RateLimit struct { ^ pkg/config/dynamic/tcp_config.go:85:6: the methods of "TCPServersLoadBalancer" use different receiver names: in, l. (recv) type TCPServersLoadBalancer struct { ^ pkg/config/static/entrypoints.go:13:6: the methods of "EntryPoint" use pointer receiver and non pointer receiver. (recv) type EntryPoint struct { ^ pkg/muxer/tcp/mux.go:43:6: the methods of "Muxer" use pointer receiver and non pointer receiver. (recv) type Muxer struct { ^ pkg/provider/aggregator/aggregator.go:62:6: the methods of "ProviderAggregator" use pointer receiver and non pointer receiver. (recv) type ProviderAggregator struct { ^ pkg/provider/kubernetes/crd/kubernetes_http.go:202:6: the methods of "configBuilder" use pointer receiver and non pointer receiver. (recv) type configBuilder struct { ^ pkg/provider/traefik/internal.go:25:6: the methods of "Provider" use pointer receiver and non pointer receiver. (recv) type Provider struct { ^ pkg/rules/parser.go:102:7: the receiver name "tree" is too long. (recv) func (tree *Tree) ParseMatchers(matchers []string) []string { ^ pkg/tcp/proxy.go:17:6: the methods of "Proxy" use pointer receiver and non pointer receiver. (recv) type Proxy struct { ^ pkg/tls/certificate.go:57:6: the methods of "Certificates" use pointer receiver and non pointer receiver. (recv) type Certificates []Certificate ^ pkg/tls/certificate_store.go:17:6: the methods of "CertificateStore" use pointer receiver and non pointer receiver. (recv) type CertificateStore struct { ^ pkg/tls/tls.go:20:6: the methods of "Options" use different receiver names: in, o. (recv) type Options struct { ^ pkg/types/domains.go:10:6: the methods of "Domain" use different receiver names: d, in. (recv) type Domain struct { ^ pkg/types/tls.go:18:6: the methods of "ClientTLS" use different receiver names: c, in. (recv) type ClientTLS struct { ^ ```
Command Mean [s] Min [s] Max [s] Relative
recv 4.739 ± 0.098 4.541 4.859 4.10 ± 0.09
goconst 1.154 ± 0.012 1.139 1.178 1.00
durationcheck 3.028 ± 0.044 2.962 3.115 2.62 ± 0.05

You can find the workflow here: https://github.com/ldez/golangci-lint-bench/actions/runs/10851253974