Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update fmodel_version to v3.5.0 #16

Merged
merged 1 commit into from
Jul 15, 2023
Merged

Update fmodel_version to v3.5.0 #16

merged 1 commit into from
Jul 15, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jul 14, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.fraktalio.fmodel:application-vanilla 3.4.0 -> 3.5.0 age adoption passing confidence
com.fraktalio.fmodel:domain 3.4.0 -> 3.5.0 age adoption passing confidence

⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information.


Release Notes

fraktalio/fmodel (com.fraktalio.fmodel:application-vanilla)

v3.5.0

Version 3.5.0 is a reactive and a multiplatform version of fmodel libraries optimized for Event sourcing, CQRS, and Domain Modeling.

Maven coordinates
 <dependency>
    <groupId>com.fraktalio.fmodel</groupId>
    <artifactId>domain</artifactId>
    <version>3.5.0</version>
 </dependency>

 <dependency>
    <groupId>com.fraktalio.fmodel</groupId>
    <artifactId>application-vanilla</artifactId>
    <version>3.5.0</version>
 </dependency>
 
 <dependency>
    <groupId>com.fraktalio.fmodel</groupId>
    <artifactId>application-arrow</artifactId>
    <version>3.5.0</version>
 </dependency>

In this release, we have upgraded the Kotlin Arrow library to 1.2.0. It is a breaking change for the application-arrow module/extension.

We have introduced and configured a binary compatibility validator into our build process.

The tool allows dumping binary API of a JVM part of a Kotlin library that is public in the sense of Kotlin visibilities and ensures that the public binary API wasn't changed in a way that makes this change binary incompatible.

We extended the case of using actor functions to parallelize the message handling processes. (available on JVM target only)

/**
 * Extension function - Handles the flow of command messages of type [C] by concurrently distributing the load across finite number of actors/handlers
 *
 * @&#8203;param commands [Flow] of Command messages of type [C]
 * @&#8203;param numberOfActors total number of actors/workers available for distributing the load. Minimum one.
 * @&#8203;param actorsCapacity capacity of the actors channel's buffer
 * @&#8203;param actorsStart actors coroutine start option
 * @&#8203;param actorsContext additional to [CoroutineScope.coroutineContext] context of the actor coroutines.
 * @&#8203;param partitionKey a function that calculates the partition key/routing key of command - commands with the same partition key will be handled with the same 'actor' to keep the ordering
 * @&#8203;return [Flow] of stored Events of type [E]
 *
 */
fun <C, S, E> EventSourcingAggregate<C, S, E>.handleConcurrently(
    commands: Flow<C>,
    numberOfActors: Int = 100,
    actorsCapacity: Int = Channel.BUFFERED,
    actorsStart: CoroutineStart = CoroutineStart.LAZY,
    actorsContext: CoroutineContext = EmptyCoroutineContext,
    partitionKey: (C) -> Int
): Flow<E>

Deprecating factory functions in favor of constructor-like functions.

What's Changed

Full Changelog: fraktalio/fmodel@v3.4.0...v3.5.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@idugalic idugalic merged commit d4c7078 into main Jul 15, 2023
1 check passed
@renovate renovate bot deleted the renovate/fmodel_version branch July 15, 2023 13:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant