Closed
Description
The golangci-lint deadcode lint incorrectly considers swagger annotation as dead code.
The golangci-lint version
# golangci-lint --version
golangci-lint has version 1.30.0 built from 45b90f6 on 2020-08-03T03:10:34Z
The golangcli-lint validation failure
{
"description": "deadcode: `appSwaggerParameterDefinition` is unused",
"fingerprint": "A4AB72*********E99AEAA3D",
"location": {
"path": "app/server.go",
"lines": {
"begin": 110
}
}
},
However this is not dead code as it is a type of swagger annotation.
// DEFINED HERE
// Swagger parameters for the post endpoint
// swagger:parameters SwaggerParameterDefinition
type appSwaggerParameterDefinition struct {
// The POST body for creating an Item
// in: body
// required: true
Body service.RequestItemForPost
// The integration type
// in: path
// required: true
// example: {genericType}
itemType string `json: "itemType"`
}
// USED HERE
// Swagger Docs for the post sql server endpoint where SwaggerParameterDefinition is a link to the Swagger parameters for this endpoint
// swagger:route POST /{itemType}/endpoint SwaggerParameterDefinition
// Returns created Item
// Schemes: http
// Responses:
// 200: okResponse
// 500: errorResponse
// handlePostItem creates an Item
func (s *IntegrationService) handlePostItem(c echo.Context) error {