Change Log Report

Total number of changed sets: 1

Changes from an unknown range

Total commits: 54
Total number of files changed: 46

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-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-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 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-18 00:44:10 Bruno Mahé <bruno@bmahe.net> Replace deprecated Validate::notNull with Objects::requireNonNull
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-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-15 02:39:32 Bruno Mahé <bruno@bmahe.net> Add comprehensive javadoc documentation for GPU module

Enhance GPU module with extensive javadoc documentation covering:

Core GPU acceleration framework:
- GPUEASystemFactory: Factory for GPU-accelerated EA systems
- GPUFitnessEvaluator: OpenCL lifecycle management and execution
- GPUEAConfiguration/GPUEAExecutionContext: GPU-specific configuration

OpenCL integration layer:
- Platform/Device/KernelInfo: OpenCL resource model classes
- PlatformUtils/DeviceUtils/KernelInfoUtils: OpenCL API utilities
- OpenCLExecutionContext: Execution environment management

Fitness evaluation framework:
- OpenCLFitness: Abstract base for OpenCL fitness evaluation
- SingleKernelFitness: Single kernel execution framework
- MultiStageFitness: Multi-stage kernel pipeline support

Data management and filtering:
- CLData/DataLoader: GPU memory management abstractions
- ResultExtractor: Type-safe result extraction from GPU memory
- DeviceFilters/PlatformFilters: Predicate-based device selection
- Program: OpenCL kernel compilation specification

All classes include comprehensive documentation with:
- Architectural overviews and usage patterns
- Method-level documentation with parameter details
- Performance considerations and optimization strategies
- Error handling guidance and memory management
- Extensive code examples and workflow descriptions

🤖 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-24 02:39:38 Bruno Mahé <bruno@bmahe.net> Add information about deviceBuilder.maxWorkItemSizes
2023-07-24 01:26:41 Bruno Mahé <bruno@bmahe.net> Improve readability of logs for MultiStageFitness
2023-07-24 01:25:41 Bruno Mahé <bruno@bmahe.net> Add a new method getDeviceInfoLongArray
2023-07-24 00:56:48 Bruno Mahé <bruno@bmahe.net> Improve logging
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-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-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-05-22 16:29:17 Bruno Mahé <bruno@bmahe.net> Add some javadoc
2022-05-22 16:28:57 Bruno Mahé <bruno@bmahe.net> Comment out blocking operation used for measuring operation duration
2022-05-21 14:06:26 Bruno Mahé <bruno@bmahe.net> Add support for multi stage fitness computations over GPU
2022-04-17 14:59:34 Bruno Mahé <bruno@bmahe.net> Make the Kernel execution context more accessible.

This means extracting more information about supported workgroup sizes by the devices and
pass the KernelExecutionContext to the FitnessExtractor.
It also allows the LocalMemoryAllocators to tailor buffer sizes to the
chosen workgroup sizes.
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