
O Creedengo é um projeto coletivo com o objetivo de reduzir a pegada ambiental de software no nível do código. O objetivo do projeto é fornecer uma lista de analisadores de código estáticos para destacar estruturas de código que podem ter um impacto ecológico negativo: energia e recursos excessivos, "Fatware", encurtar a vida útil dos terminais, etc.
O Creedengo é baseado em catálogos em evolução de boas práticas, para várias tecnologias. Um plugin sonarqube implementa esses catálogos como regras para digitalizar seus projetos.
Aviso : este ainda é um projeto de estágio muito inicial. Qualquer feedback ou contribuição será muito apreciado. Consulte a seção de contribuição.
7 As tecnologias são apoiadas por Creedengo agora:


Existem dois tipos de plugins:
O código é analisado para ser transformado como AST. AST permitirá que você acesse um ou mais nós do seu código. Por exemplo, você poderá acessar todo o seu for , para explorar conteúdo etc.
Para entender melhor a estrutura AST, você pode usar o AST Explorer.
Este projeto contém as especificações de todas as regras de Creedengo, para todos os idiomas.
As regras são organizadas por pasta com base em seu ID na pasta Regras Root. Cada uma dessas pastas contém um arquivo com os metadados da regra e descrição por idioma.
O arquivo de metadados usa o formato suportado pela biblioteca SonarSource Analyzers Commons. Para descobrir quais valores podem ser colocados lá, recomendamos que você use a documentação oficial do sonarqube e a confiar nos arquivos já existentes.
Aqui está um exemplo:
src/main/rules
├── EC104
│ ├── java
│ │ ├── EC104.asciidoc
│ │ ├── EC104.json
│ ├── php
│ │ ├── EC104.asciidoc
│ ├── python
│ │ ├── EC104.asciidoc
│ └── EC104.json
├── ...
Para especificar metadados para um determinado idioma (por exemplo, depreciar uma regra apenas para um único idioma), é possível criar um arquivo JSON na pasta de idiomas, e isso será fundido com o arquivo comum durante a compilação. As chaves no arquivo específico têm prioridade e é possível adicionar novas, mas não excluí -las do global.
A descrição das regras usa o formato ASCIIDOC (com compatibilidade de Markdown) para permitir a inclusão de outras páginas (esse recurso não está disponível no padrão com o Markdown).
Ver:
Você pode rapidamente dar uma olhada nos plugins Creedengo com o Docker. Plase dê uma olhada na seção "Introdução" de cada plug -in:
A principal maneira de obter plugins Creedengo é baixá -los no seu mercado Sonarqube (disponível na seção de administração). Mas se você quiser, também pode baixá -los nos lançamentos do GitHub.
Dividimos o repositório de plugins creedengo em um repositório para cada plug -in em dezembro de 2023. Assim, as versões do plug -in estão disponíveis em 2 repositórios, dependendo da versão que você deseja:
| Versão dos plugins | Versão Sonarqube |
|---|---|
| 1.4.+ | Sonarqube 9.4.+ LTS a 10.1 |
| 1.3.+ | Sonarqube 9.4.+ LTS a 10.0 |
| 1.2.+ | Sonarqube 9.4.+ LTS a 10.0 |
| 1.1.+ | Sonarqube 9.4.+ LTS a 9,9 |
| 1.0.+ | Sonarqube 9.4.+ LTS a 9,9 |
| 0.2.+ | Sonarqube 9.4.+ LTS a 9,9 |
| 0.1.+ | Sonarqube 8.9.+ LTS a 9,3 |
| Versão dos plugins | Versão Java |
|---|---|
| 1.4.+ | 11/17 |
| 1.3.+ | 11/17 |
| 1.2.+ | 11/17 |
| 1.1.+ | 11/17 |
| 1.0.+ | 11/17 |
| 0.2.+ | 11/17 |
| 0.1.+ | 11/17 |
Você é um especialista técnico, um designer, um gerente de projeto, um especialista em RSE, um especialista em Ecodesign ...
Você deseja oferecer a ajuda da sua empresa, ajudar -nos a organizar, comunicar -se ao projeto?
Você tem idéias para nos enviar?
Estamos ouvindo você para fazer o projeto progredir coletivamente e talvez com você!
Nós precisamos de você!
Aqui o pacote inicial
Alguma pergunta? Estamos aqui para você! Primeiro, crie um problema, por favor. Então, se não houver resposta, entre em contato ...
Aqui, honramos alguns membros da equipe principal mais ativos que fizeram contribuições valiosas no passado.
Eles contribuíram para o sucesso de Creedengo:
Eles apoiaram o projeto: