
Creedengo - это коллективный проект, направленный на снижение экологического использования программного обеспечения на уровне кода. Целью проекта является предоставление списка анализаторов статического кода для выделения структур кода, которые могут оказать негативное экологическое воздействие: чрезмерное потребление энергии и ресурсов, «жирное программное обеспечение», сокращение продолжительности жизни терминалов и т. Д.
Creedengo основан на развивающихся каталогах хороших практик, для различных технологий. Затем плагин Sonarqube реализует эти каталоги как правила сканирования ваших проектов.
Предупреждение : это все еще очень ранний проект. Любая обратная связь или вклад будут высоко оценены. Пожалуйста, обратитесь к разделу вклада.
7 технологии поддерживаются Creedengo прямо сейчас:


Есть два вида плагинов:
Код проанализирован, чтобы быть преобразованным как AST. AST позволит вам получить доступ к одному или нескольким узлам вашего кода. Например, вы сможете получить доступ к всем своим for , чтобы исследовать контент и т. Д.
Чтобы лучше понять структуру AST, вы можете использовать AST Explorer.
Этот проект содержит спецификации всех правил CREEDENGO для всех языков.
Правила организованы папкой на основе их идентификатора в папке Root Rules. Каждая из этих папок содержит файл с метаданными правила и описанием по языку.
Файл метаданных использует формат, поддерживаемый библиотекой Sonarsource Analyzers Commons. Чтобы выяснить, какие ценности можно поместить там, мы советуем вам использовать официальную документацию Sonarqube и полагаться на уже существующие файлы.
Вот пример:
src/main/rules
├── EC104
│ ├── java
│ │ ├── EC104.asciidoc
│ │ ├── EC104.json
│ ├── php
│ │ ├── EC104.asciidoc
│ ├── python
│ │ ├── EC104.asciidoc
│ └── EC104.json
├── ...
Чтобы указать метаданные для заданного языка (например, осуществить правило только для одного языка), можно создать файл JSON в языковой папке, и это будет объединено с общим файлом во время сборки. Ключи в конкретном файле имеют приоритет, и можно добавить новые, но не удалять их из глобального.
В описании правил используется формат Asciidoc (с совместимостью с маркировкой), чтобы разрешить включение других страниц (эта функция недоступна в стандарте с Markdown).
Видеть:
Вы можете быстро взглянуть на плагины Criedengo с Docker. Plase посмотрите на раздел «Начало работы» каждого плагина:
Основным способом получить плагины Criedengo является загрузка их с вашего рынка Sonarqube (доступно в разделе администрирования). Но если вы хотите, вы также можете загрузить их из выпусков GitHub.
Мы разделили репозиторий плагинов creedengo на один репозиторий для каждого плагина в декабре 2023 года. Таким образом, версии плагинов доступны на 2 репозиториях в зависимости от версии, которую вы хотите:
| Плагины версия | Версия Sonarqube |
|---|---|
| 1.4.+ | Sonarqube 9.4.+ LTS до 10.1 |
| 1.3.+ | Sonarqube 9.4.+ LTS до 10.0 |
| 1.2.+ | Sonarqube 9.4.+ LTS до 10.0 |
| 1.1.+ | Sonarqube 9.4.+ LTS до 9,9 |
| 1.0.+ | Sonarqube 9.4.+ LTS до 9,9 |
| 0,2.+ | Sonarqube 9.4.+ LTS до 9,9 |
| 0,1.+ | Sonarqube 8.9.+ LTS до 9,3 |
| Плагины версия | 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 |
Вы - технический эксперт, дизайнер, менеджер проекта, эксперт по КСО, эксперт по экодизенту ...
Вы хотите предложить помощь своей компании, помочь нам организовать, общаться в проекте?
У вас есть идеи, чтобы подчиниться нам?
Мы слушаем вас, чтобы сделать проект коллективно и, возможно, с вами!
Ты нужен нам!
Здесь стартовый пакет
Есть вопрос? Мы здесь для вас! Во -первых, создайте проблему, пожалуйста. Затем, если нет ответа, свяжитесь с ...
Здесь мы чтим некоторых бездействующих членов команды, которые внесли ценные вклад в прошлом.
Они внесли свой вклад в успех Кридженго:
Они поддержали проект: