This repository has been archived by the owner on Apr 4, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 562
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: Update linter and protogen configuration (#1478)
* add protolint yaml * Update .protolint.yml with Evmos settings * Add super-linter.yml for GH action * Copy .markdownlint.yml settings from Evmos * Sort proto imports * address protolint error in all Protobuf files * update Makefile to mirror Proto commands for Evmos * remove unnecessary go get command in protocgen.sh when using cosmos docker image * copy .clang-format from Evmos repo * apply make proto-format * Execute make proto-all after changes to config are complete * address last linter comment
- Loading branch information
1 parent
16fb2e1
commit 3752485
Showing
30 changed files
with
681 additions
and
527 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,115 +1,6 @@ | ||
--- | ||
Language: Proto | ||
# BasedOnStyle: LLVM | ||
AccessModifierOffset: -2 | ||
AlignAfterOpenBracket: Align | ||
AlignConsecutiveAssignments: true | ||
AlignConsecutiveDeclarations: true | ||
AlignEscapedNewlines: Right | ||
AlignOperands: true | ||
AlignTrailingComments: true | ||
AllowAllParametersOfDeclarationOnNextLine: true | ||
AllowShortBlocksOnASingleLine: true | ||
AllowShortCaseLabelsOnASingleLine: false | ||
AllowShortFunctionsOnASingleLine: Empty | ||
AllowShortIfStatementsOnASingleLine: false | ||
AllowShortLoopsOnASingleLine: false | ||
AlwaysBreakAfterDefinitionReturnType: None | ||
AlwaysBreakAfterReturnType: None | ||
AlwaysBreakBeforeMultilineStrings: false | ||
AlwaysBreakTemplateDeclarations: false | ||
BinPackArguments: true | ||
BinPackParameters: true | ||
BraceWrapping: | ||
AfterClass: false | ||
AfterControlStatement: false | ||
AfterEnum: false | ||
AfterFunction: false | ||
AfterNamespace: false | ||
AfterObjCDeclaration: false | ||
AfterStruct: false | ||
AfterUnion: false | ||
AfterExternBlock: false | ||
BeforeCatch: false | ||
BeforeElse: false | ||
IndentBraces: false | ||
SplitEmptyFunction: true | ||
SplitEmptyRecord: true | ||
SplitEmptyNamespace: true | ||
BreakBeforeBinaryOperators: None | ||
BreakBeforeBraces: Attach | ||
BreakBeforeInheritanceComma: false | ||
BreakBeforeTernaryOperators: true | ||
BreakConstructorInitializersBeforeComma: false | ||
BreakConstructorInitializers: BeforeColon | ||
BreakAfterJavaFieldAnnotations: false | ||
BreakStringLiterals: true | ||
ColumnLimit: 120 | ||
CommentPragmas: '^ IWYU pragma:' | ||
CompactNamespaces: false | ||
ConstructorInitializerAllOnOneLineOrOnePerLine: false | ||
ConstructorInitializerIndentWidth: 4 | ||
ContinuationIndentWidth: 4 | ||
Cpp11BracedListStyle: true | ||
DerivePointerAlignment: false | ||
DisableFormat: false | ||
ExperimentalAutoDetectBinPacking: false | ||
FixNamespaceComments: true | ||
ForEachMacros: | ||
- foreach | ||
- Q_FOREACH | ||
- BOOST_FOREACH | ||
IncludeBlocks: Preserve | ||
IncludeCategories: | ||
- Regex: '^"(llvm|llvm-c|clang|clang-c)/' | ||
Priority: 2 | ||
- Regex: '^(<|"(gtest|gmock|isl|json)/)' | ||
Priority: 3 | ||
- Regex: '.*' | ||
Priority: 1 | ||
IncludeIsMainRegex: '(Test)?$' | ||
IndentCaseLabels: false | ||
IndentPPDirectives: None | ||
IndentWidth: 2 | ||
IndentWrappedFunctionNames: false | ||
JavaScriptQuotes: Leave | ||
JavaScriptWrapImports: true | ||
KeepEmptyLinesAtTheStartOfBlocks: true | ||
MacroBlockBegin: '' | ||
MacroBlockEnd: '' | ||
MaxEmptyLinesToKeep: 1 | ||
NamespaceIndentation: None | ||
ObjCBlockIndentWidth: 2 | ||
ObjCSpaceAfterProperty: false | ||
ObjCSpaceBeforeProtocolList: true | ||
PenaltyBreakAssignment: 2 | ||
PenaltyBreakBeforeFirstCallParameter: 19 | ||
PenaltyBreakComment: 300 | ||
PenaltyBreakFirstLessLess: 120 | ||
PenaltyBreakString: 1000 | ||
PenaltyExcessCharacter: 1000000 | ||
PenaltyReturnTypeOnItsOwnLine: 60 | ||
PointerAlignment: Right | ||
RawStringFormats: | ||
- Delimiters: | ||
- pb | ||
Language: TextProto | ||
BasedOnStyle: google | ||
ReflowComments: true | ||
SortIncludes: true | ||
SortUsingDeclarations: true | ||
SpaceAfterCStyleCast: false | ||
SpaceAfterTemplateKeyword: true | ||
SpaceBeforeAssignmentOperators: true | ||
SpaceBeforeParens: ControlStatements | ||
SpaceInEmptyParentheses: false | ||
SpacesBeforeTrailingComments: 1 | ||
SpacesInAngles: false | ||
SpacesInContainerLiterals: false | ||
SpacesInCStyleCastParentheses: false | ||
SpacesInParentheses: false | ||
SpacesInSquareBrackets: false | ||
Standard: Cpp11 | ||
TabWidth: 8 | ||
UseTab: Never | ||
Language: Proto | ||
BasedOnStyle: google | ||
ColumnLimit: 120 | ||
IndentWidth: 2 | ||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# This workflow executes several linters on changed files based on languages used in your code base whenever | ||
# you push a code or open a pull request. | ||
# | ||
# You can adjust the behavior by modifying this file. | ||
# For more information, see: | ||
# https://github.com/github/super-linter | ||
--- | ||
name: Lint Code Base | ||
|
||
on: | ||
push: | ||
branches: ["main"] | ||
pull_request: | ||
branches: ["main"] | ||
jobs: | ||
run-lint: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 | ||
with: | ||
# Full git history is needed to get a proper list of changed files within `super-linter` | ||
fetch-depth: 0 | ||
|
||
- name: Lint Code Base | ||
uses: github/super-linter@v4 | ||
env: | ||
LINTER_RULES_PATH: / | ||
YAML_CONFIG_FILE: .yamllint | ||
VALIDATE_ALL_CODEBASE: false | ||
MARKDOWN_CONFIG_FILE: .markdownlint.yml | ||
PROTOBUF_CONFIG_FILE: .protolint.yml | ||
VALIDATE_NATURAL_LANGUAGE: false | ||
VALIDATE_OPENAPI: false | ||
VALIDATE_JSCPD: false | ||
VALIDATE_GO: false | ||
DEFAULT_BRANCH: "main" | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,21 @@ | ||
"default": true | ||
"MD001": false | ||
"MD004": false | ||
"MD007": | ||
"MD007": | ||
"indent": 4 | ||
"MD013": false | ||
"MD024": | ||
"MD024": | ||
"siblings_only": true | ||
"MD025": false | ||
"MD026": | ||
"MD026": | ||
"punctuation": ".;:" | ||
"MD029": false | ||
"MD033": false | ||
"MD034": false | ||
"MD036": false | ||
"MD040": false | ||
"MD041": false | ||
"MD049": | ||
"MD051": false | ||
"MD049": | ||
"style": "asterisk" | ||
"no-hard-tabs": false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,174 @@ | ||
--- | ||
# Lint directives. | ||
lint: | ||
# # Linter files to ignore. | ||
# ignores: | ||
# - id: MESSAGE_NAMES_UPPER_CAMEL_CASE | ||
# files: | ||
# # NOTE: UNIX paths will be properly accepted by both UNIX and Windows. | ||
# - _example/proto/simple.proto | ||
# - id: ENUM_NAMES_UPPER_CAMEL_CASE | ||
# files: | ||
# - path/to/foo.proto | ||
|
||
# # Linter files to walk. | ||
# files: | ||
# # The specific files to exclude. | ||
# exclude: | ||
# # NOTE: UNIX paths will be properly accepted by both UNIX and Windows. | ||
# - path/to/file | ||
|
||
# # Linter directories to walk. | ||
# directories: | ||
# # The specific directories to exclude. | ||
# exclude: | ||
# # NOTE: UNIX paths will be properly accepted by both UNIX and Windows. | ||
# - path/to/dir | ||
|
||
# Linter rules. | ||
# Run `protolint list` to see all available rules. | ||
rules: | ||
# Determines whether or not to include the default set of linters. | ||
no_default: true | ||
|
||
# Set the default to all linters. This option works the other way around as no_default does. | ||
# If you want to enable this option, delete the comment out below and no_default. | ||
# all_default: true | ||
|
||
# The specific linters to add. | ||
add: | ||
- FIELD_NAMES_LOWER_SNAKE_CASE | ||
- MESSAGE_NAMES_UPPER_CAMEL_CASE | ||
- MAX_LINE_LENGTH | ||
- INDENT | ||
# - SERVICE_NAMES_END_WITH | ||
- FIELD_NAMES_EXCLUDE_PREPOSITIONS | ||
- MESSAGE_NAMES_EXCLUDE_PREPOSITIONS | ||
- FILE_NAMES_LOWER_SNAKE_CASE | ||
- IMPORTS_SORTED | ||
- PACKAGE_NAME_LOWER_CASE | ||
- ORDER | ||
- MESSAGES_HAVE_COMMENT | ||
- SERVICES_HAVE_COMMENT | ||
- RPCS_HAVE_COMMENT | ||
- FIELDS_HAVE_COMMENT | ||
- PROTO3_FIELDS_AVOID_REQUIRED | ||
- PROTO3_GROUPS_AVOID | ||
# - REPEATED_FIELD_NAMES_PLURALIZED | ||
- ENUMS_HAVE_COMMENT | ||
- ENUM_FIELDS_HAVE_COMMENT | ||
- SYNTAX_CONSISTENT | ||
- RPC_NAMES_UPPER_CAMEL_CASE | ||
# - FILE_HAS_COMMENT | ||
- QUOTE_CONSISTENT | ||
|
||
# # The specific linters to remove. | ||
# remove: | ||
# - RPC_NAMES_UPPER_CAMEL_CASE | ||
|
||
# Linter rules option. | ||
rules_option: | ||
# MAX_LINE_LENGTH rule option. | ||
max_line_length: | ||
# Enforces a maximum line length | ||
max_chars: 120 | ||
# Specifies the character count for tab characters | ||
tab_chars: 2 | ||
|
||
# INDENT rule option. | ||
indent: | ||
# Available styles are 4(4-spaces), 2(2-spaces) or tab. | ||
style: 2 | ||
# Specifies if it should stop considering and inserting new lines at the appropriate positions | ||
# when the inner elements are on the same line. Default is false. | ||
not_insert_newline: true | ||
|
||
# # FILE_NAMES_LOWER_SNAKE_CASE rule option. | ||
# file_names_lower_snake_case: | ||
# excludes: | ||
# - ../proto/invalidFileName.proto | ||
|
||
# QUOTE_CONSISTENT rule option. | ||
quote_consistent: | ||
# Available quote are "double" or "single". | ||
quote: double | ||
|
||
# ENUM_FIELD_NAMES_ZERO_VALUE_END_WITH rule option. | ||
enum_field_names_zero_value_end_with: | ||
suffix: INVALID | ||
|
||
# # SERVICE_NAMES_END_WITH rule option. | ||
# service_names_end_with: | ||
# text: Service | ||
|
||
# FIELD_NAMES_EXCLUDE_PREPOSITIONS rule option. | ||
field_names_exclude_prepositions: | ||
# The specific prepositions to determine if the field name includes. | ||
prepositions: | ||
- for | ||
- at | ||
- of | ||
# The specific keywords including prepositions to ignore. E.g. end_of_support is a term you would like to use, and skip checking. | ||
excludes: | ||
- duration_of_decay | ||
|
||
# # REPEATED_FIELD_NAMES_PLURALIZED rule option. | ||
# ## The spec for each rules follows the implementation of https://github.com/gertd/go-pluralize. | ||
# ## Plus, you can refer to this rule's test code. | ||
# repeated_field_names_pluralized: | ||
# uncountable_rules: | ||
# - paper | ||
# irregular_rules: | ||
# Irregular: Regular | ||
|
||
# MESSAGE_NAMES_EXCLUDE_PREPOSITIONS rule option. | ||
message_names_exclude_prepositions: | ||
# The specific prepositions to determine if the message name includes. | ||
prepositions: | ||
- With | ||
- For | ||
- Of | ||
# # The specific keywords including prepositions to ignore. E.g. EndOfSupport is a term you would like to use, and skip checking. | ||
# excludes: | ||
# - EndOfSupport | ||
|
||
# # RPC_NAMES_CASE rule option. | ||
# rpc_names_case: | ||
# # The specific convention the name should conforms to. | ||
# ## Available conventions are "lower_camel_case", "upper_snake_case", or "lower_snake_case". | ||
# convention: upper_snake_case | ||
|
||
# MESSAGES_HAVE_COMMENT rule option. | ||
messages_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# SERVICES_HAVE_COMMENT rule option. | ||
services_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# RPCS_HAVE_COMMENT rule option. | ||
rpcs_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# FIELDS_HAVE_COMMENT rule option. | ||
fields_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# ENUMS_HAVE_COMMENT rule option. | ||
enums_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# ENUM_FIELDS_HAVE_COMMENT rule option. | ||
enum_fields_have_comment: | ||
# Comments need to begin with the name of the thing being described. default is false. | ||
should_follow_golang_style: true | ||
|
||
# # SYNTAX_CONSISTENT rule option. | ||
# syntax_consistent: | ||
# # Default is proto3. | ||
# version: proto2 |
Oops, something went wrong.