
Creedengoは、コードレベルでのソフトウェアの環境フットプリントを削減することを目的とした集合プロジェクトです。このプロジェクトの目標は、エネルギーとリソースの過剰消費、「ファットウェア」、ターミナルの短縮など、エネルギーとリソースの短縮などのコード構造を強調するために、静的コードアナライザーのリストを提供することです。
Creedengoは、さまざまなテクノロジーのための、優れたプラクティスの進化するカタログに基づいています。 Sonarqubeプラグインは、プロジェクトをスキャンするためのルールとしてこれらのカタログを実装します。
警告:これはまだ非常に早い段階のプロジェクトです。フィードバックや貢献は高く評価されます。貢献セクションを参照してください。
7テクノロジーは現在、Creedengoによってサポートされています:


プラグインには2種類のプラグインがあります。
コードはASTとして変換されるように解析されます。 ASTを使用すると、コードの1つ以上のノードにアクセスできます。たとえば、すべてのforにアクセスして、コンテンツなどを探索することができます。
AST構造をよりよく理解するために、ASTエクスプローラーを使用できます。
このプロジェクトには、すべての言語のすべてのCreedengoルールの仕様が含まれています。
ルールは、ルートルールフォルダーのIDに基づいてフォルダーによって編成されます。これらの各フォルダーには、ルールのメタデータを含むファイルと、言語ごとの説明が含まれています。
メタデータファイルは、Sonarsource Analyzers Commons Libraryによってサポートされている形式を使用します。そこにどのような値を置くことができるかを調べるために、公式のSonarqubeドキュメントを使用し、すでに既存のファイルに依存することをお勧めします。
これが例です:
src/main/rules
├── EC104
│ ├── java
│ │ ├── EC104.asciidoc
│ │ ├── EC104.json
│ ├── php
│ │ ├── EC104.asciidoc
│ ├── python
│ │ ├── EC104.asciidoc
│ └── EC104.json
├── ...
特定の言語のメタデータを指定するには(たとえば、単一言語のみルールを非難する)、言語フォルダーにJSONファイルを作成することができ、これはビルド中に共通ファイルとマージされます。特定のファイルのキーには優先順位があり、新しいファイルを追加することはできますが、グローバルのファイルから削除することはできません。
ルールの説明では、他のページを含めることを可能にするために、Asciidoc形式(Markdown互換性を備えています)を使用しています(この機能はMarkdownで標準で使用できません)。
見る:
Dockerを使用したCreedengoプラグインをすばやく見ることができます。 Plase各プラグインの「開始」セクションをご覧ください。
Creedengoプラグインを取得する主な方法は、Sonarqube Marketplace(管理セクションで入手可能)からそれらをダウンロードすることです。ただし、必要に応じて、GitHubリリースからダウンロードすることもできます。
プラグインリポジトリcreedengo 2023年12月に各プラグインの1つのリポジトリに分割しました。したがって、プラグインバージョンは、必要なバージョンに応じて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 |
あなたは技術的な専門家、デザイナー、プロジェクトマネージャー、CSRの専門家、エコデザインの専門家です...
あなたはあなたの会社の助けを提供し、私たちが組織化するのを手伝い、プロジェクトのコミュニケーションをしたいですか?
あなたは私たちに提出するアイデアを持っていますか?
私たちはあなたの話を聞いて、プロジェクトをまとめて、そしておそらくあなたと一緒に進歩させます!
私たちはあなたが必要です!
ここにスターターパック
質問はありますか?私たちはあなたのためにここにいます!まず、問題を作成してください。次に、答えがなければ、連絡してください...
ここでは、過去に貴重な貢献をしてきた、無関心なコアチームメンバーを称えます。
彼らはCreedengoの成功に貢献しました:
彼らはプロジェクトをサポートしました: