Skip to content

Commit

Permalink
Updates documentation for modules and Maven stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
jqno committed Jan 20, 2025
1 parent c7d8540 commit 2a1faf4
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 15 deletions.
28 changes: 15 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,17 +75,18 @@ To build EqualsVerifier, you need [Maven](https://maven.apache.org/). Just call

There are several Maven profiles that can be enabled or disabled:

| profile | activation | purpose |
| ---------------------- | ---------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `modules-jdk8` | JDK 8 up to but not including 11 | Build only the modules that are compatible with Java 8 and up. |
| `modules-jdk11` | JDK 11 up to but not including 16 | Build only the modules that are compatible with Java 11 and up. |
| `modules-jdk16` | JDK 16 | Build only the modules that are compatible with Java 16 and up. |
| `modules-jdk17` | JDK 17 and up | Build all modules and build releaseable artifacts. |
| `static-analysis` | JDK 17 and up, _and_ `disableStaticAnalysis` property must be off | Run static analysis checks. This only happens on a recent JDK. Can be disabled by running `mvn verify -DdisableStaticAnalysis` |
| `release-verification` | JDK 17 and up, _and_ `disableReleaseVerification` property must be off | Run release verification checks. This only happens on a recent JDK. Can be disabled by running `mvn verify -DdisableReleaseVerification` |
| `argline-preview` | `preview` property must be on | Enable Java preview features. Can be activated by running `mvn verify -Dpreview` |
| `argline-experimental` | `experimental` property must be on | Enables ByteBuddy experimental features; useful for testing EqualsVerifier on Early Access JDK builds. Can be activated by running `mvn verify -Dexperimental` |
| `pitest` | `pitest` property must be on | Used by PITest integration on GitHub. Can be activated by running `mvn verify -Dpitest` |
| profile | activation | purpose |
| ------------------------------ | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `modules-jdk11` | JDK 11 up to but not including 16 | Build only the modules that are compatible with Java 11 and up. |
| `modules-jdk16` | JDK 16 | Build only the modules that are compatible with Java 16 and up. |
| `modules-jdk17` | JDK 17 up to but not including 21 | Build only the modules that are compatible with Java 17 and up. |
| `modules-jdk21` | JDK 21 and up | Build all modules and build releaseable artifacts. |
| `modules-jdk21-without-pitest` | JDK 21 and up, but `pitest` property must be off | Run release verification checks (which are incompatible with PITest) |
| `static-analysis` | `disableStaticAnalysis` property must be off | Run static analysis checks. Can be disabled by running `mvn verify -DdisableStaticAnalysis` |
| `static-analysis-checkstyle` | `disableStaticAnalysis` property must be off | Used by the Checkstyle project for their regression tests - see ([Issue 586](https://github.com/jqno/equalsverifier/issues/586)) |
| `argline-preview` | `preview` property must be on | Enable Java preview features. Can be activated by running `mvn verify -Dpreview` |
| `argline-experimental` | `experimental` property must be on | Enables ByteBuddy experimental features; useful for testing EqualsVerifier on Early Access JDK builds. Can be activated by running `mvn verify -Dexperimental` |
| `pitest` | `pitest` property must be on | Used by PITest integration on GitHub. Can be activated by running `mvn verify -Dpitest` |

## Formatting

Expand All @@ -109,6 +110,7 @@ Here's a description of the modules:
| equalsverifier-release-main | release assembly for jar with dependencies |
| equalsverifier-release-nodep | release assembly for fat jar (with dependencies shaded in) |
| equalsverifier-release-verify | validation tests for the releases |
| equalsverifier-test-jpms | tests for the Java Platform Module System |
| equalsverifier-test-kotlin | tests for Kotlin classes |

## Signed JAR
Expand All @@ -129,8 +131,8 @@ The signed JAR itself can be found in [this repo](https://github.com/jqno/equals

To generate the website

- Using Docker: start the server by running `docker-compose up` or `docker compose run jekyll serve`.
- Using Jekyll: install the Ruby 3.x toolchain and run `bundle exec jekyll serve --watch`
- Using Docker: start the server by running `docker-compose up` or `docker compose run jekyll serve`.
- Using Jekyll: install the Ruby 3.x toolchain and run `bundle exec jekyll serve --watch`

Note that thepage uses the [TilburgsAns](https://www.tilburgsans.nl/) font but references it from the main site at [jqno.nl](https://jqno.nl). In development, it will fall back to a `sans-serif` font. See the font license [here](assets/tilburgsans/Ans%20Font%20License-AFL.pdf).

Expand Down
4 changes: 2 additions & 2 deletions docs/_manual/14-jpms.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ module my.module {
}
{% endhighlight %}

Note that the line `requires net.bytebuddy` is not necessary if you use the uberjar dependency `equalsverifier-nodep`.
Note that the line `requires net.bytebuddy` is not necessary (and in fact will give a compilation error) if you use the uberjar dependency `equalsverifier-nodep`.

Note that if you do this, and you have model classes or dependencies for model classes in other packages, you will have to open these packages as well, or provide prefab values for these dependencies:
Also note that if you do this, and you have model classes or dependencies for model classes in other packages, you will have to open these packages as well, or provide prefab values for these dependencies:

{% highlight java %}
import my.module.package.somewhere.inaccessible.Bar;
Expand Down
1 change: 1 addition & 0 deletions docs/_pages/resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
title: Additional resources
permalink: /resources/
---
* [Javadoc](https://javadoc.io/doc/nl.jqno.equalsverifier/equalsverifier/latest/index.html)
* [FAQ](/equalsverifier/faq)
* [Changelog](https://github.com/jqno/equalsverifier/blob/main/CHANGELOG.md)
* Migration guides: [[2.x to 3.x](/equalsverifier/migration2to3)] [[1.x to 2.x](/equalsverifier/migration1to2)]
Expand Down

0 comments on commit 2a1faf4

Please sign in to comment.