Releases: factcast/factcast
0.7.8
Noteworthy
ClientId on Connection (#2881) helps with debugging when you ask yourself where a particular long-running query in the database comes from.
What's Changed
Feature
Fix
- #2612 onBeforeSnapshot duplication removed by @uweschaefer in #2876
- #2911 give proxy repair more time by @uweschaefer in #2914
- #2883 remove getLogger from ProgressAware by @uweschaefer in #2913
- #2868 re-initialization causes duplication of gRPC headers by @bresciamattia in #2872
- #2931 fail fast on missing credential parts by @leflamm in #2939
- #2941 rollback maven-plugin-plugin to 3.12.0 by @bedaka in #2942
- #2941 remove duplicate version mavenpluginplugin by @bedaka in #2946
Chore
- Update dependency com.fasterxml.jackson:jackson-bom to v2.17.1 by @renovate in #2887
- Update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.17.1 by @renovate in #2886
- Update dependency com.github.vladimir-bukhtoyarov:bucket4j-core to v8 by @renovate in #2909
- Update dependency com.google.guava:guava to v33.2.0-jre by @renovate in #2898
- Update dependency com.google.guava:guava to v33.2.1-jre by @renovate in #2934
- Update dependency com.microsoft.playwright:playwright to v1.44.0 by @renovate in #2899
- Update dependency commons-codec:commons-codec to v1.17.0 by @renovate in #2900
- Update dependency info.picocli:picocli-codegen to v4.7.6 by @renovate in #2889
- Update dependency info.picocli:picocli to v4.7.6 by @renovate in #2888
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.15.0 by @renovate in #2901
- Update dependency io.github.typesafegithub:github-workflows-kt to v2 by @renovate in #2910
- Update dependency io.javalin:javalin to v6.1.4 by @renovate in #2890
- Update dependency io.javalin:javalin to v6.1.6 by @renovate in #2927
- Update dependency io.micrometer:micrometer-core to v1.13.0 by @renovate in #2902
- Update dependency maven to v3.9.7 by @renovate in #2922
- Update dependency maven-wrapper to v3.3.1 by @renovate in #2903
- Update dependency org.apache.commons:commons-compress to v1.26.2 by @renovate in #2920
- Update dependency org.apache.maven.plugins:maven-deploy-plugin to v3.1.2 by @renovate in #2891
- Update dependency org.apache.maven.plugins:maven-enforcer-plugin to v3.5.0 by @renovate in #2929
- Update dependency org.apache.maven.plugins:maven-install-plugin to v3.1.2 by @renovate in #2892
- Update dependency org.apache.maven.plugins:maven-invoker-plugin to v3.7.0 by @renovate in #2925
- Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.7.0 by @renovate in #2937
- Update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.13.0 by @renovate in #2905
- Update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.13.1 by @renovate in #2936
- Update dependency org.apache.maven.plugins:maven-shade-plugin to v3.6.0 by @renovate in #2930
- Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.13.0 by @renovate in #2904
- Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.13.1 by @renovate in #2935
- Update dependency org.assertj:assertj-core to v3.26.0 by @renovate in #2924
- Update dependency org.codehaus.mojo:build-helper-maven-plugin to v3.6.0 by @renovate in #2906
- Update dependency org.codehaus.mojo:exec-maven-plugin to v3.3.0 by @renovate in #2917
- Update dependency org.sonatype.plugins:nexus-staging-maven-plugin to v1.7.0 by @renovate in #2926
- Update graaljs.version to v24.0.1 by @renovate in #2863
- Update jetty-javalin.version to v11.0.21 by @renovate in #2893
- Update kotlin monorepo to v1.9.24 by @renovate in #2894
- Update kotlin monorepo to v2 (major) by @renovate in #2912
- Update maven.version to v3.9.7 by @renovate in #2923
- Update mockito monorepo to v5.12.0 by @renovate in #2907
- Update mockk.version to v1.13.11 by @renovate in #2895
- Update spring boot to v3.2.5 by @renovate in #2864
- Update spring-grpc.version to v3.1.0.RELEASE by @renovate in #2849
- Update testcontainers-java monorepo to v1.19.8 by @renovate in #2896
- Update vaadin.version to v24.3.10 by @renovate in #2865
- Update vaadin.version to v24.3.12 by @renovate in #2897
- Update byte-buddy.version to v1.14.15 by @renovate in #2885
- Update byte-buddy.version to v1.14.16 by @renovate in #2918
- Update byte-buddy.version to v1.14.17 by @renovate in #2928
Full Changelog: 0.7.7...0.7.8
0.7.7
Hotfix release for a bug introduced in 0.7.6
Full Changelog: 0.7.6...0.7.7
0.7.6
⚠️ WARNING ⚠️
if you use Factus in version 0.7.6 and your application utilises aggregates/snapshots please be aware theres a tiny bug in terms of aggregates/snapshots that should not exist (no events present for the the scope). See #2874
Please use 0.7.7 instead.
Noteworthy
This version fixes an important issue with tail index creation that could lead to a deadlock in the database preventing publish operations. The probability is not too high, but we've been bitten once, so update is recommended.
On the performance side, this version should help if you're using factus "Snapshot projections" or "Aggregates". These now also profit from the Fast-Forward feature, so that it is much more likely to use a tail index on updating them. This will likely reduce the pressure on the database significantly.
Also there are some nice additions on the UI that help with usability.
What's Changed
Feature
- #2790: Allow to wait for a particular event in subscribed projections by @bresciamattia in #2837
- #2830: [factcast-server-ui] Multiple Payload annotations/Hover contents can lead to some being ignored during rendering by @otbe in #2831
- [factcast-server-ui] One click meta & ID filters in the JSON event view by @olewehrmeyer in #2747 & #2783
Fix
- #2857: Tail Index Management Issues by @otbe in #2860
- #2854: integrate KeepAliveLockProvider by @otbe in #2855
- #2603: fix "duplicate and different classes" issue for org.json.JSONObject and more by @leflamm in #2781
- #2832: relax errorLatch assertion timeout by @leflamm in #2835
- #2852: respect FFWD for aggregates and snapshots by @uweschaefer in #2853
Chore
- Update shedlock monorepo to v5.12.0 by @renovate in #2779
- Update spring-grpc.version to v3 (major) by @renovate in #2780
- Update dependency com.vaadin.componentfactory:popup to v24.0.5 by @renovate in #2738
- Update dependency com.vaadin.componentfactory:lookup-field-flow to v24.0.3 by @renovate in #2672
- Update dependency io.micrometer:micrometer-core to v1.12.4 by @renovate in #2784
- Update dependency com.microsoft.playwright:playwright to v1.42.0 by @renovate in #2785
- Update dependency io.micronaut.validation:micronaut-validation-processor to v4.4.4 by @renovate in #2787
- Update vaadin.version to v24.3.7 by @renovate in #2791
- Update graaljs.version by @renovate in #2510
- Update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.3 by @renovate in #2844
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.14.0 by @renovate in #2845
- Update redisson.version to v3.28.0 by @renovate in #2840
- Update slf4j monorepo to v2.0.13 by @renovate in #2846
- Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.4.0 by @renovate in #2848
- Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.4.1 by @renovate in #2847
- Update byte-buddy.version to v1.14.14 by @renovate in #2856
- Update dependency com.github.vladimir-bukhtoyarov:bucket4j-core to v7.6.1 by @renovate in #2850
- Update dependency io.github.oshai:kotlin-logging-jvm to v6.0.9 by @renovate in #2858
- Update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.4 by @renovate in #2859
- Update dependency com.microsoft.playwright:playwright to v1.43.0 by @renovate in #2843
- Update dependency org.apache.maven.plugins:maven-shade-plugin to v3.5.3 by @renovate in #2862
- Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.4.1 by @renovate in #2861
- fix(deps): update redisson.version to v3.27.2 by @renovate in #2786
- fix(deps): update dependency com.google.guava:guava to v33.1.0-jre by @renovate in #2797
- fix(deps): update dependency com.fasterxml.jackson:jackson-bom to v2.17.0 by @renovate in #2794
- fix(deps): update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.17.0 by @renovate in #2795
- fix(deps): update dependency org.postgresql:postgresql to v42.7.3 by @renovate in #2798
- fix(deps): update dependency io.micronaut.platform:micronaut-platform to v4.3.6 by @renovate in #2801
- fix(deps): update dependency org.projectlombok:lombok to v1.18.32 by @renovate in #2805
- fix(deps): update dependency org.springframework.boot:spring-boot-dependencies to v3.2.4 by @renovate in #2807
- fix(deps): update dependency io.micronaut.platform:micronaut-platform to v4.3.7 by @renovate in #2809
- fix(deps): update dependency io.arrow-kt:arrow-core-jvm to v1.2.4 by @renovate in #2819
- fix(deps): update dependency io.micronaut.picocli:micronaut-picocli to v5.3.0 by @renovate in #2817
- fix(deps): update dependency commons-io:commons-io to v2.16.0 by @renovate in #2822
- fix(deps): update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.12.0 by @renovate in #2823
- fix(deps): update shedlock monorepo to v5.13.0 by @renovate in #2826
- fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v6.0.4 by @renovate in #2827
- fix(deps): update dependency commons-io:commons-io to v2.16.1 by @renovate in #2836
- fix(deps): update dependency io.micrometer:micrometer-core to v1.12.5 by @renovate in #2834
- chore(deps): update dependency org.awaitility:awaitility to v4.2.1 by @renovate in #2800
- chore(deps): update dependency io.micronaut:micronaut-inject-java to v4.3.11 by @renovate in #2799
- chore(deps): update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.1 by @renovate in #2802
- chore(deps): update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.13.0 by @renovate in #2803
- chore(deps): update spring boot to v3.2.4 by @renovate in #2806
- chore(deps): update dependency io.micronaut:micronaut-inject-java to v4.3.12 - autoclosed by @renovate in #2808
- chore(deps): update vaadin.version to v24.3.9 by @renovate in #2810
- chore(deps): update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.2 by @renovate in #2811
- chore(deps): update dependency org.apache.maven.plugins:maven-invoker-plugin to v3.6.1 by @renovate in #2815
- chore(deps): update dependency io.micronaut.validation:micronaut-validation-processor to v4.5.0 by @renovate in #2816
- chore(deps): update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.12.0 by @renovate in #2821
- chore(deps): update dependency org.jacoco:jacoco-maven-plugin to v0.8.12 by @renovate in #2818
- chore(deps): update byte-buddy.version to v1.14.13 by @renovate in #2813
- chore(deps): update dependency io.github.typesafegithub:github-workflows-kt to v1.13.0 by @renovate in #2820
- chore(deps): update actions/cache action to v4 by @renovate in #2824
- chore(deps): update dependency org.apache.maven.plugins:maven-source-plugin to v3.3.1 by @renovate in #2825
Full Changelog: 0.7.5...0.7.6
0.7.5
Noteworthy
This version has a significant change for tracking state in projections. Rather than using the fact-id of the last fact processed, a new abstraction FactStreamPosition is used from now on to provide the last processed fact serial to projections. The changes are compatible right now (using redisson, the bucket can be upgraded/downgraded), JDBC Projections that you built are subject to change (for instance just using the UUID from the FactStreamPosition, or upgrade to use both informations).
Also, you now have the option to provide credentials in a well-known way (see #2691).
As always, do no hesitate to provide feedback in any way possible.
What's Changed
- 2325: Adding custom waiting time by @mamup11 in #2625
- 2179: Add context to MissingTransformationInformationException by @bedaka in #2624
- 2646: include serial in factstreamposition by @uweschaefer in #2665
- 2674: skip ffwd if serial info is missing by @uweschaefer in #2675
- 2685: add INSERT trigger for schemastore by @leflamm in #2686
- 2691: add support for separate credentials by @otbe in #2692
- 2578: simplyfication suggestion by @uweschaefer in #2737
- 2757: added enumerationDirectModeEnabled by @uweschaefer in #2758
- 2684: mitigate bug #2684 by @uweschaefer in #2776
Cleanup
- 2710: fix badges by @uweschaefer in #2711
- codecov move to v4 by @uweschaefer in #2726
- cleanup test groups and ex/inclusions by @uweschaefer in #2728
- Update plugins.md by @uweschaefer in #2649
Chore
- Update actions/cache action to v4 by @renovate in #2682
- Update actions/cache action to v4 by @renovate in #2703
- Update actions/cache action to v4 by @renovate in #2717
- Update actions/setup-java action to v4 by @renovate in #2635
- Update byte-buddy.version to v1.14.11 by @renovate in #2644
- Update byte-buddy.version to v1.14.12 by @renovate in #2742
- Update codecov/codecov-action action to v4 by @renovate in #2706
- Update codecov/codecov-action action to v4 by @renovate in #2718
- Update dependency ch.qos.logback:logback-classic to v1.4.14 by @renovate in #2599
- Update dependency com.amashchenko.maven.plugin:gitflow-maven-plugin to v1.21.0 by @renovate in #2651
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.42.0 by @renovate in #2677
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.43.0 by @renovate in #2699
- Update dependency com.fasterxml.jackson:jackson-bom to v2.16.1 by @renovate in #2582
- Update dependency com.fasterxml.jackson:jackson-bom to v2.16.2 by @renovate in #2769
- Update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.16.1 by @renovate in #2650
- Update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.16.2 by @renovate in #2768
- Update dependency com.github.erosb:everit-json-schema to v1.14.4 by @renovate in #2630
- Update dependency com.google.guava:guava to v33 by @renovate in #2642
- Update dependency com.jayway.jsonpath:json-path to v2.9.0 by @renovate in #2688
- Update dependency com.microsoft.playwright:playwright to v1.41.0 by @renovate in #2683
- Update dependency com.microsoft.playwright:playwright to v1.41.1 by @renovate in #2694
- Update dependency com.microsoft.playwright:playwright to v1.41.2 by @renovate in #2707
- Update dependency commons-codec:commons-codec to v1.16.1 by @renovate in #2727
- Update dependency io.arrow-kt:arrow-core-jvm to v1.2.3 by @renovate in #2759
- Update dependency io.fabric8:docker-maven-plugin to v0.44.0 by @renovate in #2744
- Update dependency io.github.oshai:kotlin-logging-jvm to v6.0.1 by @renovate in #2640
- Update dependency io.github.oshai:kotlin-logging-jvm to v6.0.2 by @renovate in #2673
- Update dependency io.github.oshai:kotlin-logging-jvm to v6.0.3 by @renovate in #2678
- Update dependency io.github.oshai:kotlin-logging-jvm to v6 by @renovate in #2639
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.10.0 by @renovate in #2689
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.11.0 by @renovate in #2713
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.12.0 by @renovate in #2764
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.7.0 by @renovate in #2633
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.8.0 by @renovate in #2648
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.9.0 by @renovate in #2656
- Update dependency io.javalin:javalin to v6.0.1 by @renovate in #2708
- Update dependency io.javalin:javalin to v6.1.0 by @renovate in #2745
- Update dependency io.javalin:javalin to v6.1.2 by @renovate in #2752
- Update dependency io.javalin:javalin to v6.1.3 by @renovate in #2762
- Update dependency io.javalin:javalin to v6 by @renovate in #2704
- Update dependency io.micrometer:micrometer-core to v1.12.1 by @renovate in #2626
- Update dependency io.micrometer:micrometer-core to v1.12.2 by @renovate in #2663
- Update dependency io.micrometer:micrometer-core to v1.12.3 by @renovate in #2734
- Update dependency io.micronaut:micronaut-inject-java to v4.2.2 by @renovate in #2574
- Update dependency io.micronaut:micronaut-inject-java to v4.2.3 by @renovate in #2655
- Update dependency io.micronaut:micronaut-inject-java to v4.3.10 by @renovate in #2777
- Update dependency io.micronaut:micronaut-inject-java to v4.3.3 by @renovate in #2701
- Update dependency io.micronaut:micronaut-inject-java to v4.3.4 by @renovate in #2714
- Update dependency io.micronaut:micronaut-inject-java to v4.3.5 by @renovate in #2731
- Update dependency io.micronaut:micronaut-inject-java to v4.3.9 by @renovate in #2740
- Update dependency io.micronaut.picocli:micronaut-picocli to v5.2.0 by @renovate in #2664
- Update dependency io.micronaut.platform:micronaut-platform to v4.2.2 by @renovate in #2631
- Update dependency io.micronaut.platform:micronaut-platform to v4.2.3 by @renovate in #2657
- Update dependency io.micronaut.platform:micronaut-platform to v4.2.4 by @renovate in #2695
- Update dependency io.micronaut.platform:micronaut-platform to v4.3.0 by @renovate in #2720
- Update dependency io.micronaut.platform:micronaut-platform to v4.3.1 by @renovate in #2730
- Update dependency io.micronaut.platform:micronaut-platform to v4.3.4 by @renovate in #2741
- Update dependency io.micronaut.platform:micronaut-platform to v4.3.5 by @renovate in #2770
- Update dependency io.micronaut.validation:micronaut-validation-processor to v4.4.0 by @renovate in #2700
- Update dependency io.micronaut.validation:micronaut-validation-processor to v4.4.3 by @renovate in #2760
- Update dependency net.javacrumbs.json-unit:json-unit-assertj to v3.2.4 by @renovate in #2715
- Update dependency net.javacrumbs.json-unit:json-unit-assertj to v3.2.7 by @renovate in #2748
- Update dependency org.apache.comm...
0.7.4
Word of Warning
This version introduces a new protocol version between gRPC Client and Server. That means that while you can connect with an older client to a newer Server, you cannot connect with a newer Client to an older Server (as this would offer more functionality to the client than the server implements).
Newer Clients trying to connect to older Servers will fail on connect claiming the protocol Versions wont match.
The protocol version introduced with this release is 1.4.
Noteworthy
This version introduces a module factcast-server-ui, an optional UI for quering fact from the FactCast Server (directly, or via gRPC).
There is a respective section added to the docs to get you started.
For Factus users:
We renamed the attribute serial to revision in @ProjectionMetaData to avoid confusion caused by overusing the term serial for different things. The serial attribute still works, but is deprecated and will be removed soon, so we encourage you to update your code accordingly.
As always, do no hesitate to provide feedback in any way possible.
What's Changed
- #2322: serial renamed to revision while keeping compatible by @uweschaefer in #2541
- #2589: added missing pk by @uweschaefer in #2591
- #2604: Factus shutdown should be blocked by FactusDependencies by @otbe in #2605
Sub-PRs for the UI
- UI tests via playwright by @otbe in #2602
- UI playground retry by @uweschaefer in #2609
- UI playground filedownload by @bedaka in #2618
- UI induced factstore extension by @uweschaefer in #2621
Chore
- Update dependency org.apache.commons:commons-compress to v1.25.0 by @renovate in #2584
- Update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.16.0 by @renovate in #2583
- Update dependency org.codehaus.mojo:exec-maven-plugin to v3.1.1 by @renovate in #2586
- Update byte-buddy.version to v1.14.10 by @renovate in #2587
- Update dependency org.postgresql:postgresql to v42.7.0 by @renovate in #2588
- Update testcontainers-java monorepo to v1.19.3 by @renovate in #2590
- Update dependency org.codehaus.mojo:build-helper-maven-plugin to v3.5.0 by @renovate in #2595
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.6.0 by @renovate in #2592
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.41.0 by @renovate in #2596
- Update dependency io.github.oshai:kotlin-logging-jvm to v5.1.1 by @renovate in #2597
- Update dependency io.github.hakky54:logcaptor to v2.9.1 by @renovate in #2598
- Update kotlin monorepo to v1.9.21 by @renovate in #2593
- Update actions/setup-java action to v4 by @renovate in #2606
- Update dependency commons-io:commons-io to v2.15.1 by @renovate in #2607
- Update dependency maven to v3.9.6 by @renovate in #2610
- Update maven.version to v3.9.6 by @renovate in #2611
- Update mockito monorepo to v5.8.0 by @renovate in #2613
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.41.1 by @renovate in #2614
- Update dependency io.github.hakky54:logcaptor to v2.9.2 by @renovate in #2615
- Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.6.3 by @renovate in #2616
- Update dependency org.redisson:redisson to v3.25.0 by @renovate in #2617
- Update shedlock monorepo to v5.10.1 by @renovate in #2619
- Update dependency org.postgresql:postgresql to v42.7.1 by @renovate in #2620
- Update dependency io.micronaut.platform:micronaut-platform to v4.2.1 by @renovate in #2585
Full Changelog: 0.7.2...0.7.4
0.7.2
What's Changed
- #2381: Add dependency declaring interface in order to ensure init/destroy order in Spring by @uweschaefer in #2540
- #2560: Fix initialize() not called during spring bootstrap by @otbe in #2561
- #2571: fix creation of tail indexes based on oldest index by @bedaka in #2572
- #2579: remove docker release script and reenable docker pushing by @uweschaefer in #2580
- #2556: default to automatically select fcVersion to use in integration Tests @uweschaefer in #2557
Chore
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.2.1 by @renovate in #2538
- Update kotlin monorepo to v1.9.20 by @renovate in #2551
- Update dependency io.micronaut:micronaut-inject-java to v4.1.11 by @renovate in #2553
- minor wording in projection-selection.md by @uweschaefer in #2552
- Update dependency io.micronaut.platform:micronaut-platform to v4.1.6 by @renovate in #2554
- Update mockito monorepo to v5.7.0 by @renovate in #2555
- Update kotest.version to v5.8.0 by @renovate in #2558
- Update dependency io.micrometer:micrometer-core to v1.12.0 by @renovate in #2575
- Update testcontainers-java monorepo to v1.19.2 by @renovate in #2577
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.2.2 by @renovate in #2569
- Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.6.2 by @renovate in #2566
- Update dependency org.apache.maven.plugins:maven-failsafe-plugin to v3.2.2 by @renovate in #2565
- Update junit5 monorepo to v5.10.1 by @renovate in #2559
- Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.10.2 by @renovate in #2564
- Update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.10.2 - autoclosed by @renovate in #2567
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.2.2 by @renovate in #2568
- Update shedlock monorepo to v5.10.0 by @renovate in #2570
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.5.0 by @renovate in #2573
- Update dependency io.micronaut.validation:micronaut-validation-processor to v4.1.0 by @renovate in #2562
Full Changelog: 0.7.1...0.7.2
0.7.1.1
Noteworthy:
This version includes an important fix for the GRPC client. Previously used javax
annotations have been replaced by their jakarta
counterparts to allow compatibility with Spring Boot 3. Specifically this ensures that org.factcast.client.grpc.GrpcFactStore#initialize
is called.
What's Changed
- Add dependency declaring interface in order to ensure init/destroy order in Spring by @uweschaefer in #2540
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.2.1 by @renovate in #2538
- Update kotlin monorepo to v1.9.20 by @renovate in #2551
- Update dependency io.micronaut:micronaut-inject-java to v4.1.11 by @renovate in #2553
- minor wording in projection-selection.md by @uweschaefer in #2552
- Update dependency io.micronaut.platform:micronaut-platform to v4.1.6 by @renovate in #2554
- Update mockito monorepo to v5.7.0 by @renovate in #2555
- Update kotest.version to v5.8.0 by @renovate in #2558
0.7.1
Noteworthy
Added table date2serial, manual action needed for existing installations
We added a new table to the schema that can be used to map days to serials (the first event published on that day).
This makes it necessary to migrate the existing data.
The challenge with this migration is that we are torn between automating it via liquibase and making it a manual process, so that you the user has the control.
In this case we decided for automatic migration if you have less than 10mio facts in your database, because it is convenient and will probably (depending on your installation details) finish in good time.
In case you have more than 10mio fact already, we create the tables, but we wont migrate the data automatically.
In this case we ask you to manually run this script at your convenience after upgrading to 0.7.1
Read-only configuration
Now FactCast Servers can be configured to run in readonly mode. This might come in handy in horizontal scaling scenarios or when using dedicated Servers for special purposes.
Hitchhikers Guide to Projection selection
Long awaited guide that explains which projection to use in which scenario.
What changed
- #2333: Read-only configuration by @otbe in #2334
- #2479: setup and migrate fact data to date2serial lookup table by @uweschaefer in #2480
- #2483: Adding enumeration capabilities to schema registry interface and impl… by @mamup11 in #2483
- #1151: Hitchhikers Guide to Projection selection by @bresciamattia in #2481
Chore
- Update dependency com.google.guava:guava to v32.1.3-jre (master) by @renovate in #2491
- Update byte-buddy.version to v1.14.9 (master) by @renovate in #2490
- Update dependency org.msgpack:jackson-dataformat-msgpack to v0.9.6 (master) by @renovate in #2476
- Update dependency io.micrometer:micrometer-core to v1.11.5 (master) by @renovate in #2488
- Update dependency maven to v3.9.5 (master) by @renovate in #2493
- Update maven.version to v3.9.5 (master) by @renovate in #2494
- Update dependency commons-io:commons-io to v2.14.0 (master) by @renovate in #2497
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.40.0 (master) by @renovate in #2496
- Update testcontainers-java monorepo to v1.19.1 (master) by @renovate in #2495
- Update dependency org.xerial.snappy:snappy-java to v1.1.10.5 by @renovate in #2505
- Update dependency org.apache.maven.plugins:maven-shade-plugin to v3.5.1 - autoclosed by @renovate in #2504
- Update dependency org.xerial.snappy:snappy-java to v1.1.10.5 (master) - abandoned by @renovate in #2474
- Update dependency com.fasterxml.jackson:jackson-bom to v2.15.2 by @renovate in #2507
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.2.0 by @renovate in #2508
- Update dependency io.kotest.extensions:kotest-assertions-arrow-jvm to v1.4.0 by @renovate in #2509
- Update stefanzweifel/git-auto-commit-action action to v5 by @renovate in #2516
- Update mockito monorepo to v5.6.0 by @renovate in #2512
- Update dependency com.fasterxml.jackson.module:jackson-module-kotlin to v2.15.3 by @renovate in #2519
- Update dependency com.fasterxml.jackson:jackson-bom to v2.15.3 by @renovate in #2518
- Update openjdk Docker tag to v21 by @renovate in #2523
- Update dependency io.javalin:javalin to v5.6.3 by @renovate in #2522
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.3.1 by @renovate in #2520
- Update shedlock monorepo to v5.9.0 by @renovate in #2524
- Update spring-grpc.version to v2.15.0.RELEASE by @renovate in #2515
- Update dependency org.jacoco:jacoco-maven-plugin to v0.8.11 by @renovate in #2525
- Update dependency com.github.erosb:everit-json-schema to v1.14.3 by @renovate in #2526
- Update dependency com.squareup.okhttp3:okhttp to v4.12.0 by @renovate in #2527
- Update dependency io.micronaut:micronaut-inject-java to v4.1.10 by @renovate in #2503
- Update dependency io.micronaut.platform:micronaut-platform to v4.1.5 by @renovate in #2502
- Update shedlock monorepo to v5.9.1 by @renovate in #2532
- Update spring boot to v3.1.5 by @renovate in #2530
- Update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.10.1 by @renovate in #2535
- Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.10.1 by @renovate in #2534
- Update grpc.version to v1.59.0 by @renovate in #2533
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.2.1 by @renovate in #2537
- Update dependency org.apache.maven.plugins:maven-failsafe-plugin to v3.2.1 by @renovate in #2536
- Update dependency io.micronaut.picocli:micronaut-picocli to v5.1.0 by @renovate in #2539
- Update dependency org.redisson:redisson to v3.24.3 by @renovate in #2528
- Update dependency org.apache.maven.plugins:maven-clean-plugin to v3.3.2 by @renovate in #2546
- Update dependency commons-io:commons-io to v2.15.0 by @renovate in #2545
- Update dependency io.github.typesafegithub:github-workflows-kt to v1.4.0 by @renovate in #2548
- Update dependency org.apache.maven.plugins:maven-clean-plugin to v3.3.2 by @renovate in #2547
Full Changelog: 0.7.0...0.7.1
0.7.0
Noteworthy
This release includes a transition to Spring Boot 3.
As a consequence, we lifted the requirements for building and running the server to JDK17. The client libs however, are still usable on JDK8.
The server is fully compatible to older clients, so that they can update on their own schedule. This is why there are almost no features in this release, and it has been cooking for quite a while.
Even though we're using this for quite some time and have tested it thoroughly, things might break in your setup as with any significant release. In this case, please do not hesitate to report issues here.
What's Changed
- #2299: Switch to AutoConfiguration.imports by @otbe in #2299
- #2279: Micronaut+Kotest+mockk update by @otbe in #2279
- #2344: add 0.7-sink as renovate target by @otbe in #2345
- #2321: GRPC on SB3 by @otbe in #2321
- #2484: fix flaky test, batchsize=1, relax time constraints by @leflamm in #2485
- #2484: remove unnecessary duration assertion by @leflamm in #2487
- #2264: 0.7 Spring Boot 3 & Friends by @otbe in #2264
Chore
- Update micronaut.version to v3 (major) by @renovate in #2191
- Update dependency io.github.hakky54:logcaptor to v2.9.0 by @renovate in #2251
- Update byte-buddy.version to v1.14.7 (master) by @renovate in #2346
- Update testcontainers-java monorepo to v1.19.0 (master) by @renovate in #2350
- Update dependency info.picocli:picocli to v4.7.5 (master) by @renovate in #2348
- Update dependency info.picocli:picocli-codegen to v4.7.5 (master) by @renovate in #2349
- Update dependency maven to v3.9.4 (master) by @renovate in #2353
- Update dependency io.javalin:javalin to v4.6.8 (master) by @renovate in #2351
- Update dependency maven-wrapper to v3.2.0 (master) by @renovate in #2354
- Update dependency io.kotest.extensions:kotest-assertions-arrow-jvm to v1.3.3 (master) by @renovate in #2352
- Update dependency org.apache.maven.plugins:maven-resources-plugin to v3.3.1 (master) by @renovate in #2357
- Update dependency org.apache.maven.plugins:maven-resources-plugin to v3.3.1 (master) by @renovate in #2358
- Update maven.version to v3.9.4 (master) by @renovate in #2365
- Update dependency com.diffplug.spotless:spotless-maven-plugin to v2.39.0 (master) by @renovate in #2368
- Update dependency com.amashchenko.maven.plugin:gitflow-maven-plugin to v1.20.0 (master) by @renovate in #2367
- Update dependency com.squareup.okhttp3:okhttp to v4.11.0 (master) by @renovate in #2372
- Update dependency org.apache.maven.plugins:maven-install-plugin to v3.1.1 (master) by @renovate in #2356
- Update dependency org.apache.maven.plugins:maven-deploy-plugin to v3.1.1 (master) by @renovate in #2355
- Update dependency org.jacoco:jacoco-maven-plugin to v0.8.10 (master) by @renovate in #2359
- Update dependency io.arrow-kt:arrow-core-jvm to v1.2.1 (master) by @renovate in #2375
- Update dependency io.fabric8:docker-maven-plugin to v0.43.4 (master) by @renovate in #2376
- Update spring boot to v3.1.3 (0.7-sink) by @renovate in #2380
- Update shedlock monorepo to v5 (0.7-sink) (major) by @renovate in #2382
- Update junit5 monorepo to v5.10.0 (0.7-sink) by @renovate in #2384
- Update junit5 monorepo to v5.10.0 (master) by @renovate in #2388
- Update kotlin monorepo to v1.9.10 (0.7-sink) by @renovate in #2386
- Update kotest.version to v5.7.2 (0.7-sink) by @renovate in #2385
- Update dependency io.github.oshai:kotlin-logging-jvm to v5 (0.7-sink) by @renovate in #2389
- Update slf4j-api.version to v2.0.9 (0.7-sink) by @renovate in #2391
- Update dependency ch.qos.logback:logback-classic to v1.4.11 (0.7-sink) by @renovate in #2392
- Update dependency io.micronaut.validation:micronaut-validation-processor to v4.0.3 (0.7-sink) by @renovate in #2393
- Update dependency org.slf4j:slf4j-api to v2.0.9 (0.7-sink) by @renovate in #2395
- Update mockito monorepo (master) by @renovate in #2390
- Update dependency org.springframework.cloud:spring-cloud-dependencies to v2022 (0.7-sink) by @renovate in #2396
- Update dependency io.micronaut:micronaut-inject-java to v4.1.5 (0.7-sink) by @renovate in #2394
- Update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.1.0 (master) by @renovate in #2398
- Update dependency org.apache.maven.plugins:maven-invoker-plugin to v3.6.0 (master) by @renovate in #2399
- Update dependency org.apache.maven.plugins:maven-plugin-plugin to v3.9.0 (master) by @renovate in #2400
- Update graaljs.version to v23 (0.7-sink) (major) by @renovate in #2397
- Update dependency org.apache.maven.plugins:maven-shade-plugin to v3.5.0 (master) by @renovate in #2401
- Update dependency org.liquibase:liquibase-core to v4.23.2 (0.7-sink) by @renovate in #2406
- Update dependency org.postgresql:postgresql to v42.6.0 (0.7-sink) by @renovate in #2407
- Update dependency org.apache.maven.plugins:maven-source-plugin to v3.3.0 (master) by @renovate in #2402
- Update dependency org.apache.maven.plugins:maven-clean-plugin to v3.3.1 (master) by @renovate in #2409
- Update dependency org.apache.maven.plugins:maven-clean-plugin to v3.3.1 (master) by @renovate in #2408
- Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.11.0 (master) by @renovate in #2410
- Update dependency org.apache.maven.plugins:maven-enforcer-plugin to v3.4.1 (master) by @renovate in #2411
- Update dependency commons-io:commons-io to v2.13.0 (master) by @renovate in #2374
- Update dependency org.redisson:redisson to v3.23.4 (0.7-sink) by @renovate in #2404
- Update dependency org.redisson:redisson-spring-boot-starter to v3.23.4 (0.7-sink) by @renovate in #2405
- Update dependency io.github.typesafegithub:github-workflows-kt to v0.50.0 (master) by @renovate in #2378
- Update dependency com.google.guava:guava to v32.1.2-jre (master) by @renovate in #2371
- Update dependency io.javalin:javalin to v5.6.2 (0.7-sink) by @renovate in #2414
- Update dependency io.github.typesafegithub:github-workflows-kt to v1 (master) by @renovate in #2413
- Update dependency io.micronaut.platform:micronaut-platform to v4.1.1 (0.7-sink) by @renovate in #2416
- Update dependency io.micrometer:micrometer-core to v1.11.4 (0.7-sink) by @renovate in #2417
- Update dependency net.javacrumbs.json-unit:json-unit-assertj to v2.38.0 (master) by @renovate in #2418
- Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.9.0 (master) by @renovate in #2420
- Update dependency org.apache.maven.plugins:maven-failsafe-plugin to v3.1.2 (master) by @renovate in #2412
- Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.1.2 (master) by @renovate in #2403
- Update dependency org.apache.commons:commons-compress to v1.24.0 (master) by @renovate in #2419
- Update dependency org.codehaus.mojo:build-helper-maven-plugin to v3.4.0 (master) by @renovate in #2421
- Update dependency org.openjdk.jmh:jmh-core to v1.37 (master) by @renovate in #2422
- Update dependency org.openjdk.jmh:jmh-generator-annprocess to v1.37 (master) by @renovate in #2423
- Update dependency c...
0.6.9
Noteworthy
Fixes bugs in buffering transformations that (under certain circumstances) will lead to OOM due to unlimited memory consumption for a subscription.
If you are using transformations, you should upgrade to this version asap.
What's Changed
Feature
- #2328: Make it easy to derive facts out of event pojos for testing purposes by @uweschaefer in #2329
Bug
- #2338: Avoid OOM/overflow by @otbe in #2339
- #2340: Possbile OOM/buffer overflow in BufferingFactInterceptor by @otbe in #2341
- #2326: prevent NPEs on formatting errors by @uweschaefer in #2327
- #2336: Make PGConnectionSupplier respect custom connection properties by @otbe in #2337
Chore
Full Changelog: 0.6.8...0.6.9