monanadmin / monan

Repositório organizacional das atividades dos macro-grupos do MONAN - Model for Ocean-laNd-Atmosphere PredictioN
14 stars 10 forks source link

[GCC] GRC: Regras Understand compatives com DTN-01 #510

Closed joaomas closed 1 month ago

joaomas commented 1 month ago

:people_holding_hands: User Story

COMO (...) QUEREMOS (...) PARA (...)

:clipboard: Critérios de aceite de conclusão da Issue

:pencil: Detalhamento adicional da atividade

:comet: Impactos

-.

:link: Dependências

-.

:hammer_and_wrench: Solução

Suporte Understand

Analise Scitools Recommended

Scitools Recommended DTN01 Revisão
1 Commented Out Code (*) NC OK
2 Definitions in Header Files CP (5.38) OK
3 Files too Long CP (5.25) OK
3 Floating Equality Test (**) C (5.4) OK
4 Functions too Long C (5.32.1) e CP (5.25) OK
5 Functions shall not be declared implicitly C (4.6 e 4.28) OK
6 Goto statement C (5.29) OK
7 Macros shall not be #defined'd or #undef'd within a block NA OK
8 Magic Numbers C (4.14, 4.30) OK
9 Nested Comments C (5.2 e 5.7) OK
10 Overly Complex Functions C (5.32.1) e CP (5.25) OK
11 Trigraphs shall not be used NA OK
12 Unreachable Code NC OK
13 Unused Functions CP (5.15) OK
14 Unused C and C++ Local Variables NA OK
15 Unused Static Globals CP (5.9 e 5.14) OK
16 Variables should be commented C (5.20 e 4.47) OK
17 Upper limit shall not be modified within the bounds of the loop NC OK
28 Unused Local Variables (Non C/C++ languages) CP (4.33) e C (5.14 e 5.39) OK
19 Comments Indicating Future Fixes NC OK
20 Duplicate Code NC OK

C - Compatível, CP - Compatível Parcialmente, NC - Não Compatível, NA - Não Aplicável.

(*) Commented Out Code - Identificação de código removido através de comentários. (\) Floating Equality Test** - É o teste de verificação de igualdades entre números de ponto flutuante levando em consideração a natureza da imprecisão intrínseca aos números tratados. Neste caso a comparação deve-se adotar um epsilon para tal que a igualdade é considerada verdadeira quando a diferença entre dois números for menor que o epsilon,

Analise Convenção de Nomes

O Understand possuiu um área para verificações de convenções de nomes, tanto de funções, variáveis, procedures, modules, etc. Este recurso pode ser usado para verificações como a regra 4.7 (snake_case) da DTN-01. Abaixo segue os recursos personalizáveis disponíveis no CodeCheck.

Image

Select the required naming convention for Fortran Variables. Variables can have different naming conventions based off of their kind (Block Namelist). The first group of options will define the naming conventions for All Variables, the other options will let you specify a subset of Variables to test.

Naming Convention Options: Minimum Length: Specify the shortest length for a valid name. Prefixes and Suffixes are included in the count. The Default value is 1 character. Maximum Length: Specify the longest length for a valid name. Prefixes and Suffixes are included in the count. The Default value is 0, which means there is no max length. Prefix and Suffix: If the entity needs to have a prefix or suffix, specify them here. If there are multiple valid options, separate them with a coma. If the entity should not have a particular prefix or suffix, put an exclamation (!) before the string. Character Set: Limit valid characters to Letters only (a-zA-Z), letters and numbers (a-zA-Z0-9) or All Characters (default). Prefixes and suffixes are ignored for this test. Capitalization: The default option is to ignore capitalization. CamelCase allows upper and lower case letters but must start with a lower case letter for lowerCamelCase or a capital letter for UpperCamelCase. Alternatively you can require all capital letters or no capital letters. By default there can be two Capital Letters next to each other, but that can be disallowed. Required prefixes and suffixes are not tested for capitalization. Regular Expression: For complete flexibility you can test the name against a perl regular expression. To find results that do not match the expression put an exclamation (!) before it.

:rotating_light: Problemas encontrados

:white_check_mark: Conclusão

:spiral_calendar: Trabalhos Futuros

joaomas commented 1 month ago

@klclaudio encaminhei a resposta do e-mail do Suporte - Understand para você.

joaomas commented 1 month ago

@klclaudio finalizei as revisões, como mudou alguns NC para C ou CP, se possível fazer um double check. Obrigado.

joaomas commented 1 month ago

Codee: https://www.codee.com/

Image