Skip to content

Commit 6e7c6b0

Browse files
committed
Update documentation home page according to blog post review
This documentation is based on the release announcement blog post, so the improvements made to that document should be mirrrored here.
1 parent b7278c3 commit 6e7c6b0

File tree

1 file changed

+28
-25
lines changed

1 file changed

+28
-25
lines changed

docs/index.md

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22
projects.
33

44
Its focus is on the structure, metadata, and configuration of Arduino projects, rather than the code. Rules cover
5-
[specification](https://arduino.github.io/arduino-cli/latest/library-specification) compliance, Library Manager
6-
submission [requirements](https://github.com/arduino/Arduino/wiki/Library-Manager-FAQ), and best practices.
5+
specification compliance, Library Manager submission requirements, and best practices.
76

87
## Installation
98

@@ -17,44 +16,47 @@ Once installed, you only need to open a terminal at your project folder and run
1716
arduino-lint
1817
```
1918

20-
This will automatically search for projects, detect their type, and run the appropriate checks on them.
19+
This will automatically detect the project type and check it against the relevant rules.
2120

2221
The default configuration of **arduino-lint** provides for the most common use case, but you have the option of changing
2322
settings via [command line flags](commands/arduino-lint.md):
2423

2524
### Compliance setting
2625

27-
The `--compliance` flag allows you to configure the strictness of the checks.
26+
The `--compliance` flag allows you to configure the strictness of the applied rules. The three compliance level values
27+
accepted by this flag are:
2828

29-
`--compliance permissive` will cause the checks to fail only when severe problems are found. Although a project that
30-
passes at the permissive setting will work with the current Arduino development software versions, it may not be fully
31-
specification-compliant, risking incompatibility or a poor experience for the users.
32-
33-
`--compliance specification`, the default setting, enforces compliance with the official Arduino project specifications.
34-
35-
`--compliance strict` enforces best practices, above and beyond the minimum requirements for specification compliance.
36-
Use this setting to ensure the best experience for the users of the project.
29+
- `permissive` - failure will occur only when severe rule violations are found. Although a project that passes at the
30+
permissive setting will work with the current Arduino development software versions, it may not be fully
31+
specification-compliant, risking incompatibility or a poor experience for the users.
32+
- `specification` - the default setting, enforces compliance with the official Arduino project specifications
33+
([sketch](https://arduino.github.io/arduino-cli/latest/sketch-specification/),
34+
[library](https://arduino.github.io/arduino-cli/latest/library-specification/),
35+
[platform](https://arduino.github.io/arduino-cli/latest/platform-specification/)).
36+
- `strict` - enforces best practices, above and beyond the minimum requirements for specification compliance. Use this
37+
setting to ensure the best experience for the users of the project.
3738

3839
### Library Manager setting
3940

40-
Arduino Library Manager is the best way to provide installation and updates of Arduino libraries. In order to be
41-
accepted for inclusion in Library Manager, a library is required to meet some requirements.
41+
[Arduino Library Manager](https://www.arduino.cc/en/guide/libraries#toc3) is the best way to provide installation and
42+
updates of Arduino libraries. In order to be accepted for inclusion in Library Manager, a library is required to meet
43+
[some requirements](https://github.com/arduino/Arduino/wiki/Library-Manager-FAQ).
4244

4345
**arduino-lint** provides checks for these requirements as well, controlled by the `--library-manager` flag.
4446

45-
The checks for the Library Manager submission requirements are enabled via `--library-manager submit`. Even if your
46-
library isn't yet ready to be added to Library Manager, it's a good idea to use this setting to ensure no
47-
incompatibilities are introduced.
47+
The Library Manager submission-specific rules are enabled via `--library-manager submit`. Even if your library isn't yet
48+
ready to be added to Library Manager, it's a good idea to use this setting to ensure no incompatibilities are
49+
introduced.
4850

4951
Once your library is in the Library Manager index, each release is automatically picked up and made available to the
50-
Arduino community. Releases are also subjected to special checks, which must pass for it to be added to the index. The
51-
command `arduino-lint --library-manager update` will tell you whether your library will pass these checks.
52+
Arduino community. Releases are also subject to special rules. The command `arduino-lint --library-manager update` will
53+
tell you whether your library is compliant with these rules.
5254

5355
### Integration
5456

5557
The `--format` flag configures the format of **arduino-lint**'s output. The default `--format text` setting provides
5658
human readable output. For automation or integration with other tools, the machine readable output provided by
57-
`--format json` may be more convenient. This setting exposes all the details of the checks that are run.
59+
`--format json` may be more convenient. This setting exposes every detail of the rules that were applied.
5860

5961
The `--report-file` flag causes **arduino-lint** to write the JSON output to the specified file.
6062

@@ -71,14 +73,15 @@ Additional configuration options intended for internal use or development can be
7173
## Continuous integration
7274

7375
**arduino-lint** would be a great addition to your
74-
[continuous integration](https://en.wikipedia.org/wiki/Continuous_integration) system. Running the checks after each
75-
change to the project will allow you to identify any problems that were introduced.
76+
[continuous integration](https://en.wikipedia.org/wiki/Continuous_integration) system. Running the tool after each
77+
change to the project can allow you to identify any problems that were introduced.
7678

77-
This is easily done by using the `arduino/arduino-lint-action` GitHub Actions action:
79+
This is easily done by using the `arduino/arduino-lint-action`
80+
[GitHub Actions](https://docs.github.com/en/free-pro-team@latest/actions) action:
7881
https://github.com/arduino/arduino-lint-action
7982

80-
Add a simple workflow file to the repository of your Arduino project and the checks will automatically be run on every
81-
pull request and push.
83+
Add [a simple workflow file](https://github.com/arduino/arduino-lint-action#usage) to the repository of your Arduino
84+
project and GitHub will automatically run arduino-lint on every pull request and push.
8285

8386
## Support and feedback
8487

0 commit comments

Comments
 (0)