Commit Graph

155 Commits

Author SHA1 Message Date
Oliver Drotbohm
8a8dbc6116 GH-1107 - Release version 1.2.10. 2025-03-21 11:05:39 +01:00
Oliver Drotbohm
854603e424 GH-1096 - Prepare next development iteration. 2025-02-25 10:25:53 +01:00
Oliver Drotbohm
ba8b566f1b GH-1096 - Release version 1.2.9. 2025-02-25 10:25:52 +01:00
Oliver Drotbohm
c4a9d7e85d GH-1025 - Fix version number to 1.2.9 snapshots. 2025-02-23 15:17:47 +01:00
Oliver Drotbohm
0f272d7b85 GH-1025 - Prepare next development iteration. 2025-01-23 13:32:42 +01:00
Oliver Drotbohm
f85a9dc70f GH-1025 - Release version 1.2.8. 2025-01-23 13:32:41 +01:00
Oliver Drotbohm
eaaefcd2cd GH-1015 - Polishing. 2025-01-16 09:46:19 +01:00
Oliver Drotbohm
7e08447139 GH-1014 - Pick up reference types for event listeners declared in annotations.
We now detect event types a listener is interested in declared in annotations for inclusion the reference documentation. This allows for the rare case that the event listener method not actually declaring the event type as parameter as it might not be needed in the payload but only the fact that an event was published at all.
2025-01-06 19:40:52 +01:00
Oliver Drotbohm
8192f1bb2d GH-1012 - Update copyright declarations to include 2025. 2025-01-06 17:01:21 +01:00
Oliver Drotbohm
dad6bf775c GH-1003 - Prepare next development iteration. 2024-12-20 14:18:59 +01:00
Oliver Drotbohm
64c351b0b7 GH-1003 - Release version 1.2.7. 2024-12-20 14:18:59 +01:00
Oliver Drotbohm
32c66c2b2c GH-956 - Prepare next development iteration. 2024-11-21 16:47:07 +01:00
Oliver Drotbohm
255596b619 GH-956 - Release version 1.2.6. 2024-11-21 16:47:06 +01:00
Oliver Drotbohm
326006435e GH-946 - Detect methods (meta-)annotated with @MessageMapping as module entry points.
We now consider all methods that are (meta-)annotated with Spring Messaging's @MessageMapping which is consistently used in a lot of broker annotations such as @(Rabbit|Kafka)Listener etc.
2024-11-19 23:55:53 +01:00
Oliver Drotbohm
777587eeb5 GH-899 - Prepare next development iteration. 2024-10-26 15:38:55 +02:00
Oliver Drotbohm
aed05301c7 GH-899 - Release version 1.2.5. 2024-10-26 15:38:55 +02:00
Oliver Drotbohm
ad5f432ed1 GH-879 - Add LICENSE and NOTICE files to binaries. 2024-10-14 22:18:51 +02:00
Oliver Drotbohm
ff131170e0 GH-811 - Prepare next development iteration. 2024-09-20 23:00:45 +02:00
Oliver Drotbohm
3d28ea69a1 GH-811 - Release version 1.2.4. 2024-09-20 23:00:45 +02:00
Oliver Drotbohm
6e123272dc GH-816 - Properly guard for presence of jMolecules' @Module type.
As @Module is absent from the Kotlin flavor of jMolecules, code that refers to that is now guarded with a more specific check for that type in particular.
2024-09-12 16:58:38 +02:00
Oliver Drotbohm
b95b0c0d7d GH-798 - Guard against multiple non-unique module base packages. 2024-09-04 10:37:45 +02:00
Oliver Drotbohm
5a8a95adcb GH-784 - Prepare next development iteration. 2024-08-23 12:23:37 +02:00
Oliver Drotbohm
da4d38c1c8 GH-784 - Release version 1.2.3. 2024-08-23 12:23:37 +02:00
Oliver Drotbohm
2cd51c8d9e GH-765 - Prevent ApplicationModuleInformation from picking up info from nested packages. 2024-08-13 22:08:17 +02:00
Oliver Drotbohm
41bd816f47 GH-762 - Open up ApplicationModules.of(…) to take a DescribedPredicate<? super JavaClass>. 2024-08-13 16:45:38 +02:00
Oliver Drotbohm
7ebee3c838 GH-741 - Prepare next development iteration. 2024-07-19 01:11:15 +02:00
Oliver Drotbohm
b58f4ecb92 GH-741 - Release version 1.2.2. 2024-07-19 01:11:14 +02:00
Oliver Drotbohm
62b9e7a092 GH-677 - Prepare next development iteration. 2024-06-21 13:57:05 +02:00
Oliver Drotbohm
c569a481fd GH-677 - Release version 1.2.1. 2024-06-21 13:57:05 +02:00
Oliver Drotbohm
d66259ed49 GH-662 - Fix named interface detection in case of nested packages.
If named interfaces are declared in nested packages, the name detection might accidentally pick up the names declared in child packages. We now deliberately only inspect the base package.
2024-06-18 13:59:19 +02:00
Oliver Drotbohm
8d86615e91 GH-661 - Dependency checks now explicitly skip module-internal dependencies.
As we process a type's entire type hierarchy for dependencies we might discover a foreign module's internal dependencies for modules that declare allowed dependencies explicitly. Explicitly declared dependencies so far solely verified the target being explicitly listed, which, for internal dependencies does not make sense. We now immediately start checking the source and target modules to be equivalent, in which case we can skip any further processing.
2024-06-18 12:30:25 +02:00
Oliver Drotbohm
4823bbad16 GH-656 - Polishing. 2024-06-17 21:44:27 +02:00
Oliver Drotbohm
702fac54f9 GH-656 - Allow to configure the ApplicationModuleDetectionStrategy via a configuration property.
We now expose a configuration property spring.modulith.detection-strategy that can take either of the two prepared values "direct-sub-packages" (default) or "explicitly-annotated", or a fully qualified class name of the strategy to use.

Removed ApplicationModuleStrategies enum to avoid exposing the enum values as additional implementations. Those are now held as inline lambda expression in the factory methods on ApplicationModuleStrategy. Extracted the lookup of the strategy to use into ApplicationModuleDetectionStrategyLookup for easier testability.
2024-06-17 21:09:47 +02:00
Oliver Drotbohm
b37e39d89e GH-605 - Prepare next development iteration. 2024-06-17 21:09:44 +02:00
Oliver Drotbohm
0d74b1b1d0 GH-605 - Release version 1.2.0. 2024-05-24 12:56:39 +02:00
Oliver Drotbohm
cffb0a242d GH-587 - Re-establish proper ApplicationModules instance caching.
The previous change unfortunately altered the CacheKey type in a way that it does not result in equal instances for the same set of parameters, primarily because SingletonSupplier does not implement equals(…)/hashCode(). We now resort to include the ModulithMetadata source in the equals(…) / hashCode() calculation rather than the ModulithMetadata instance itself. This also avoids annotation processing during CacheKey instance creation.
2024-05-23 00:23:02 +02:00
Oliver Drotbohm
21bd2cef75 GH-587 - ModulithMetadata now exposes all base packages.
Previously, we had a variety of places calculating the overall packages to inspect for types. This is now all consolidated into the ModulithMetadata abstraction exposing them directly.
2024-05-20 19:58:30 +02:00
Oliver Drotbohm
04c1203f65 GH-587 - Additional modulith packages are now considered for application classes. 2024-05-20 19:57:23 +02:00
Oliver Drotbohm
51c5f0bf42 GH-601 - Support for wildcard references to named interfaces in explicitly defined allowed application module dependencies.
When defining allowed application module dependencies to named interfaces, the asterisk can now be used to allow referencing all named interfaces declared by the target module.
2024-05-16 16:03:14 +02:00
Oliver Drotbohm
e9203ca159 GH-594 - Polishing. 2024-05-16 13:27:45 +02:00
Oliver Drotbohm
3855479c7c GH-595 - Invalid dependency into named interface now gets reported properly. 2024-05-16 12:34:28 +02:00
Oliver Drotbohm
2bf9f797ec GH-594 - Deduplicate violations with the same message.
Moving away from exceptions as carriers for violations.
2024-05-16 12:20:44 +02:00
Oliver Drotbohm
742ca82f8b GH-561 - Prepare next development iteration. 2024-04-19 18:56:33 +02:00
Oliver Drotbohm
c8ec877bc7 GH-561 - Release version 1.2.0-RC1. 2024-04-19 18:56:33 +02:00
Oliver Drotbohm
2667ec626a GH-552 - Upgrade to jGraphT 1.5.2. 2024-04-12 10:36:24 +02:00
Oliver Drotbohm
6b839cf6dc GH-525 - Prepare next development iteration. 2024-03-22 11:41:33 +01:00
Oliver Drotbohm
c441fdf535 GH-525 - Release version 1.2.0-M3. 2024-03-22 11:41:33 +01:00
Oliver Drotbohm
ce2f608e60 GH-536 - Add missing package-info.java files. 2024-03-22 08:48:51 +01:00
Oliver Drotbohm
e41d7ec083 GH-520 - Early reject invalid ApplicationModules bootstraps.
We now immediately reject the ApplicationModules bootstrap in case the initial scanning of the root packages yield no classes at all.
2024-03-05 19:34:47 +01:00
Oliver Drotbohm
c45a0fc9b7 GH-522 - Polishing. 2024-03-05 11:52:04 +01:00