Change Log Report

Total number of changed sets: 1

Changes from an unknown range

Total commits: 74
Total number of files changed: 30

Timestamp Author Details
2026-07-19 15:10:53 Bruno Mahé <bruno@bmahe.net> Apply spotless format
2026-07-19 03:21:35 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2026-07-19 03:21:32 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r6.0
2026-07-18 14:25:36 Bruno Mahé <bruno@bmahe.net> Apply spotless formatting
2026-07-17 21:45:03 Bruno Mahé <bruno@bmahe.net> Apply Spotless to ensure code is formatted appropriately
2026-07-17 21:43:53 Bruno Mahé <bruno@bmahe.net> Use openrewrite to s/Validate.notNull/Objects.requireNonNull/g

Command:

```bash
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-static-analysis:RELEASE --define rewrite.activeRecipes=org.openrewrite.staticanalysis.ReplaceApacheCommonsLang3ValidateNotNullWithObjectsRequireNonNull --define rewrite.exportDatatables=true
```
2026-07-17 21:41:32 Bruno Mahé <bruno@bmahe.net> Apply openrewrite common sast rules

Command:

```bash
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-static-analysis:RELEASE --define rewrite.activeRecipes=org.openrewrite.staticanalysis.CommonStaticAnalysis
```
2026-07-17 19:15:13 Bruno Mahé <bruno@bmahe.net> Apply junit openrewrite recipe

Command:

```bash
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-testing-frameworks:RELEASE --define rewrite.activeRecipes=org.openrewrite.java.testing.junit5.JUnit5BestPractices
```
2026-07-17 19:12:52 Bruno Mahé <bruno@bmahe.net> Run openrewrite recipe for Java 25

Command:

```bash
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-migrate-java:RELEASE --define rewrite.activeRecipes=org.openrewrite.java.migrate.UpgradeToJava25 --define rewrite.exportDatatables=true
```
2026-07-17 19:05:35 Bruno Mahé <bruno@bmahe.net> Ran openrewrite to remove unused imports

Command:
```bash
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.activeRecipes=org.openrewrite.java.RemoveUnusedImports
```
2026-07-16 22:08:33 Bruno Mahé <bruno@bmahe.net> Start 6.0 development line

Bump the Maven reactor to 6.0-SNAPSHOT after adopting Java 25 as the minimum supported runtime.

Tests: mvn --batch-mode validate
2026-04-30 05:24:06 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2026-04-30 05:24:02 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r5.3
2026-04-29 02:50:34 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2026-04-29 02:50:30 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r5.2
2025-11-15 14:12:12 Bruno Mahé <bruno@bmahe.net> Update formatting rules
2025-11-15 12:09:23 Bruno Mahé <bruno@bmahe.net> Add a new maven plugin to ensure consistent formatting
2025-10-01 07:29:27 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2025-10-01 07:29:23 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r5.1
2025-09-29 08:53:46 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2025-09-29 08:53:39 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r5.0
2025-09-27 18:54:59 Bruno Mahé <bruno@bmahe.net> Move DoubleTournament to GP module.

It is dedicated to genetic programming and there is a more generic
alternative with the Selective Refinement Tournament operator
2025-09-27 00:26:50 Bruno Mahé <bruno@bmahe.net> Mass format the code
2025-09-24 00:12:32 Bruno Mahé <bruno@bmahe.net> Clean up codebase and add SelectiveRefinementTournament selection strategy

- Replace Apache Commons Lang3 Validate with Objects.requireNonNull() for null checks
- Remove unnecessary @Value.Style annotations and clean up Tournament class
- Add SelectiveRefinementTournament selection policy with handler and selector implementation
- Add package-info.java files across all modules for improved documentation
- Update test classes to use concrete types instead of Immutable variants
- Add convenient factory methods to InputSpec for easier instantiation

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 06:19:19 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2025-09-17 06:19:13 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r4.2
2025-09-16 23:09:48 Bruno Mahé <bruno@bmahe.net> Bumped major version as the previous commit break interfaces and compatibility

Command run:
```bash
mvn --batch-mode release:update-versions -DdevelopmentVersion=5.0-SNAPSHOT
```
2025-09-16 23:07:05 Bruno Mahé <bruno@bmahe.net> Selector gets passed `generation` to enable implementations to adjust their behavior over time
2025-09-13 23:29:20 Bruno Mahé <bruno@bmahe.net> Address build issues after upgrade.

The root cause is the update of Apache Maven Site on two fronts:
* It get stuck with the first module. This means that ${basedir} is
stuck to the value of the first module it is executed in and provides
the wrong values. This is the same for every other module specific
variables such as ${maven.multiModuleProjectDirectory}
* There are bugs in the locales handling. And while this is optional, it
won't work without it
2025-06-14 20:37:04 Bruno Mahé <bruno@bmahe.net> Add comprehensive javadoc documentation for core API classes

- Document core classes: Individual, Genotype, Population, Chromosome, BitChromosome, Fitness
- Add javadocs for GP module: Operation, OperationFactory
- Document MOO module: FitnessVector with Pareto dominance explanation
- Include detailed parameter descriptions, return values, and usage examples
- Add cross-references between related classes
- Explain design patterns, thread safety, and performance considerations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2024-02-12 11:01:32 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2024-02-12 11:01:30 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r4.1
2023-10-16 01:30:16 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-10-16 01:30:13 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r4.0
2023-10-11 21:12:21 Bruno Mahé <bruno@bmahe.net> Update version to 4.0-SNAPSHOT in preparation for the java 21 updates
2023-07-25 03:58:30 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-07-25 03:58:28 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r3.4
2023-07-16 23:00:21 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-07-16 23:00:18 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r3.3
2023-07-16 20:03:15 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-07-16 20:03:13 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r3.2
2023-07-15 23:42:36 Bruno Mahé <bruno@bmahe.net> Fix typo in the TournamentNSGA2SelectionPolicyHandlerFactory
2023-07-15 21:50:04 Bruno Mahé <bruno@bmahe.net> Extend auto-loading capabilities to all handlers and migrate MOO handlers auto-loading
2023-06-15 10:19:18 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-06-15 10:19:16 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r3.1
2023-04-30 19:06:00 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2023-04-30 19:05:56 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r3.0
2023-04-28 00:40:29 Bruno Mahé <bruno@bmahe.net> Upgrade major version to 3.0-SNAPSHOT
2022-12-04 02:10:56 Bruno Mahé <bruno@bmahe.net> Refactor the way the fitness comparator is computed.
2022-11-29 01:23:25 Bruno Mahé <bruno@bmahe.net> Fix typo in Optimization s/MAXIMZE/MAXIMIZE/g
2022-05-23 21:12:41 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2022-05-23 21:12:38 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r2.0
2022-03-21 01:34:27 Bruno Mahé <bruno@bmahe.net> Add a GPU module for OpenCL based evolution and a sample demonstrating its use for mixture models
2021-12-28 13:24:55 Bruno Mahé <bruno@bmahe.net> Abstract out EAExecutionContext

This will make it easier to extend for GPU specific context
2021-12-25 20:28:32 Bruno Mahé <bruno@bmahe.net> Rename EAConfigurationSync to EAConfiguration

This sets the synchronous configuration as the default one as it's the
easiest one to get started with.
2021-09-21 03:47:43 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2021-09-21 03:47:41 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r1.8
2021-09-21 01:24:45 Bruno Mahé <bruno@bmahe.net> Upgrade mvn pmd plugin to 3.15.0 and do not run pitest reports if pitest is disabled
2021-09-21 00:37:51 Bruno Mahé <bruno@bmahe.net> Set major version to 2.0-SNAPSHOT in preparation to the java 17 migration
2021-09-21 00:26:46 Bruno Mahé <bruno@bmahe.net> Update to java 17 and junit 5

Also disable pitest temporarily until it supports java 17
2021-08-14 05:32:19 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2021-08-14 05:32:16 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r1.7
2020-11-12 06:31:13 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2020-11-12 06:31:10 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r1.6
2020-06-21 02:40:12 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2020-06-21 02:40:10 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r1.5
2020-06-10 22:24:56 Bruno Mahé <bruno@bmahe.net> Add support for Double and proportional tournaments
2020-05-31 18:07:44 Bruno Mahé <bruno@bmahe.net> Add support for SPEA2
2020-05-13 08:22:27 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare for next development iteration
2020-05-13 08:22:25 Gitlab CI <ci@bmahe.net> [maven-release-plugin][ci skip] prepare release r1.4
2020-05-05 00:10:24 Bruno Mahé <bruno@bmahe.net> Introduce the concept of Evolution Strategy

An Evolution Strategy defines how the next generation is created based on the offsprings and the current generation.

Fix #19
2020-05-01 07:11:18 Bruno Mahé <bruno@bmahe.net> Docs and usability tweaks
2020-05-01 02:08:07 Bruno Mahé <bruno@bmahe.net> Rename classes as their names weren't appropriate.

Renamed:
- GenotypeSpec -> EAConfiguration
- GeneticSystem -> EASystem
- GeneticSystemDescriptor -> EAExecutionContext

Evolutionary Algorithm is a more appropriate and generic term given the scope of this project.

Fix #16
2020-04-23 22:23:11 Bruno Mahé <bruno@bmahe.net> Add a new module for Multi-Objective Optimization.

This new module implements NSGA2