This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-analyser.git


The following commit(s) were added to refs/heads/master by this push:
     new 07f60db  Document all analysers
07f60db is described below

commit 07f60db46ea446121f63b27c22b8c00150c0f163
Author: Carsten Ziegeler <[email protected]>
AuthorDate: Sun Aug 1 09:58:18 2021 +0200

    Document all analysers
---
 readme.md | 78 +++++++++++++++++++++++++++++++++++++++++++++------------------
 1 file changed, 56 insertions(+), 22 deletions(-)

diff --git a/readme.md b/readme.md
index 36f0001..1c89641 100644
--- a/readme.md
+++ b/readme.md
@@ -4,43 +4,57 @@
 
 # Feature Model Analyser
 
-The Analyser can analyse features for completeness and correctness. The 
analyser is pluggable and can also perform other checks.
+The Analyser can analyse features for completeness and correctness. The 
analyser is pluggable and can perform custom checks.
+
+## Running the Analyser as a Maven Plugin
+
+The Analyser can also be run as part of a Maven build via the 
[slingfeature-maven-plugin](https://github.com/apache/sling-slingfeature-maven-plugin)
+
+## Running the Analyser from the Commandlien
 
 The analyser can be run from the commandline by running the following main 
class:
 
-```
+```bash
 java org.apache.sling.feature.analyser.main.Main
 ```
 
-# Feature Model Analyser as a Maven Plugin
+# Analyser Tasks
 
-The Analyser can also be run as part of a maven build via the 
[slingfeature-maven-plugin](https://github.com/apache/sling-slingfeature-maven-plugin)
+Below is a list of built-in analysers. Additional analysers in relation to 
Feature Model API Regions can be found here: 
[org-apache-sling-feature-extension-apiregions](https://github.com/apache/sling-org-apache-sling-feature-extension-apiregions)
 
-The following analysers are defined:
+For further documentation see: [Feature 
Model](https://github.com/apache/sling-org-apache-sling-feature/blob/master/readme.md)
 
-* `bundle-packages`: Checks bundle import/export package statements for 
consistency and completeness. Does _not_ take API Regions into account. An 
expanded variant of this analyser is available in 
[org-apache-sling-feature-extension-apiregions](https://github.com/apache/sling-org-apache-sling-feature-extension-apiregions)
 under the name `api-regions-exportsimports`.
+## `apis-jar`
 
-* `bundle-content`: Gives a warning if a bundle container initial content 
specified with `Sling-Initial-Content`.
+This analyser task validates the metadata in the feature model for the 
`apis-jar` goal of the 
[slingfeature-maven-plugin](https://github.com/apache/sling-slingfeature-maven-plugin).
 
-* `bundle-resources`: Gives a warning if a bundle contains resources specified 
with `Sling-Bundle-Resources`.
+## `bundle-connect`
 
-* `compare-features`: Compares the artifacts in the bundles sections or in an 
extension between two feature models. For more information see 
[below](#compare-features).
+Checks whether the feature is ready for [OSGi 
connect](http://docs.osgi.org/specification/osgi.core/8.0.0/framework.connect.html).
 Bundle with embedded jars are not allowed and packages between bundles must 
not overlap.
 
-* `requirements-capabilities`: Checks bundle requirements/capabilities for 
consistency and completeness.
+## `bundle-content`
 
-* `apis-jar`: Validates that the entries related to Apis Jar are valid.
+Gives a warning if a bundle contains initial content specified with 
`Sling-Initial-Content`.
 
-* `repoinit`: Checks the syntax of all repoinit sections.
+## `bundle-nativecode`
 
-* `feature-id`: Checks if the used feature id matches one of the given Maven 
coordinates.
+Checks for native code instructions in bundles and errors if found.
 
-Additional analysers in relation to Feature Model API Regions can be found 
here: 
[org-apache-sling-feature-extension-apiregions](https://github.com/apache/sling-org-apache-sling-feature-extension-apiregions)
+## `bundle-packages`
 
-For further documentation see: [Feature 
Model](https://github.com/apache/sling-org-apache-sling-feature/blob/master/readme.md)
+Checks bundle import/export package statements for consistency and 
completeness. Does _not_ take API Regions into account. An expanded variant of 
this analyser is available in 
[org-apache-sling-feature-extension-apiregions](https://github.com/apache/sling-org-apache-sling-feature-extension-apiregions)
 under the name `api-regions-exportsimports`.
+
+## `bundle-resources`
+
+Gives a warning if a bundle contains resources specified with 
`Sling-Bundle-Resources`.
+
+## `check-unused-bundles`
+
+Checks for unused bundles, bundles with exports which are not imported.
 
 ## `compare-features`
 
-This analyser compares certain sections of two feature models.
+Compares the artifacts in the bundles sections or in an extension between two 
feature models.
 
 This analyser requires additional configuration:
 
@@ -52,15 +66,13 @@ This analyser requires additional configuration:
 `compare-mode` | `SAME` or `DIFFERENT` | Whether the sections must be the same 
or must be different. Defaults to `SAME`.
 `compare-metadata` | `true` or `false` | Whether to include the artifact 
metadata in the comparison. Defaults to `false`.
 
-## `feature-id`
+## `content-packages-dependencies`
 
-This analyser checks that the feature id matches one of the given accepted 
feature ids. If it doesn't it will emit an error.
+Checks the dependencies between content packages.
 
-This analyser requires additional configuration:
+## `content-packages-installables`
 
- Configuration key | Allowed values | Description
- ----- | ----- | -----
-`accepted-feature-ids` | comma-separated list of Maven IDs | The Maven 
ID/coordinates have the format 
`groupId:artifactId[:packaging[:classifier]]:version`. Each item is either a 
string which must be equal to the according item of the feature id, or a `*` 
which acts as wildcard (i.e. everything matches).
+Checks that content packages do not contain installables for the OSGi 
installer like bundles or configurations.
 
 ## `content-packages-paths`
 
@@ -70,3 +82,25 @@ This analyser checks for allowed and denied paths inside 
content packages. This
  ----- | ----- | -----
 `includes` | Content paths | A comma separated list of content paths. If this 
is specified all content in the content package must match at least one of 
these.
 `excludes` | Content paths | A comma separated list of content paths. If this 
is specified all content in the contant package must not match any of these.
+
+## `duplicate-symbolic-names`
+
+Checks if there are duplicates of symbolic names for bundles.
+
+## `feature-id`
+
+This analyser checks that the feature id matches one of the given accepted 
feature ids. If it doesn't it will emit an error.
+
+This analyser requires additional configuration:
+
+ Configuration key | Allowed values | Description
+ ----- | ----- | -----
+`accepted-feature-ids` | comma-separated list of Maven IDs | The Maven 
ID/coordinates have the format 
`groupId:artifactId[:packaging[:classifier]]:version`. Each item is either a 
string which must be equal to the according item of the feature id, or a `*` 
which acts as wildcard (i.e. everything matches).
+
+## `repoinit`
+
+Checks the syntax of all repoinit sections.
+
+## `requirements-capabilities`
+
+Checks bundle requirements/capabilities for consistency and completeness.

Reply via email to