EventFlow 1.0.4748-alpha

Prefix Reserved
This is a prerelease version of EventFlow.
There is a newer version of this package available.
See the version list below for details.
dotnet add package EventFlow --version 1.0.4748-alpha                
NuGet\Install-Package EventFlow -Version 1.0.4748-alpha                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EventFlow" Version="1.0.4748-alpha" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EventFlow --version 1.0.4748-alpha                
#r "nuget: EventFlow, 1.0.4748-alpha"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EventFlow as a Cake Addin
#addin nuget:?package=EventFlow&version=1.0.4748-alpha&prerelease

// Install EventFlow as a Cake Tool
#tool nuget:?package=EventFlow&version=1.0.4748-alpha&prerelease                

Async/await first CQRS+ES and DDD framework for .NET - https://docs.geteventflow.net/

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 is compatible.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (19)

Showing the top 5 NuGet packages that depend on EventFlow:

Package Downloads
EventFlow.AspNetCore

# EventFlow <table border=0 cellpadding=0 cellspacing=0> <tr> <td width=25%> <img src=./icon-128.png /> </td> <td width=25%> <p> <a href=https://www.nuget.org/packages/EventFlow/><img src=https://img.shields.io/nuget/v/EventFlow.svg?style=flat /></a> </p> <p> <a href=https://docs.geteventflow.net/?badge=latest><img src=https://readthedocs.org/projects/eventflow/badge/?version=latest /></a> </p> </td> <td width=25%> <p> <a href=https://ci.appveyor.com/project/eventflow/eventflow><img src=https://ci.appveyor.com/api/projects/status/51yvhvbd909e4o82/branch/develop?svg=true /></a> </p> <p> <a href=https://gitter.im/rasmus/EventFlow?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge><img src=https://badges.gitter.im/Join Chat.svg /></a> </p> <!-- <p> <a href=https://codecov.io/github/eventflow/EventFlow?branch=develop><img src=https://codecov.io/github/eventflow/EventFlow/coverage.svg?branch=develop /></a> </p> --> </td> <td width=25%> Think EventFlow is great,<br/> <a href=https://www.paypal.me/rasmusnu>buy me a cup of coffee</a> </td> </tr> </table> NuGet feeds - Official releases: https://www.nuget.org/packages/EventFlow/ - Builds: https://ci.appveyor.com/nuget/eventflow EventFlow is a basic CQRS+ES framework designed to be easy to use. Have a look at our [getting started guide](https://docs.geteventflow.net/GettingStarted.html), the [do’s and don’ts](https://docs.geteventflow.net/DosAndDonts.html) and the [FAQ](https://docs.geteventflow.net/FAQ.html). ### Features * **CQRS+ES framework** * **Async/await first:** Every part of EventFlow is written using async/await. * **Highly configurable and extendable** * **Easy to use** * **No use of threads or background workers** * **Cancellation:** All methods that does IO work or might delay execution (due to retries), takes a `CancellationToken` argument to allow you to cancel the operation ### Examples * **[Complete](#complete-example):** Shows a complete example on how to use EventFlow with in-memory event store and read models in a relatively few lines of code * **Shipping:** To get a more complete example of how EventFlow _could_ be used, have a look at the shipping example found here in the code base. The example is based on the shipping example from the book Domain-Driven Design - Tackling Complexity in the Heart of Software by Eric Evans. Its _in-progress_, but should provide inspiration on how to use EventFlow on a larger scale. If you have ideas and/or comments, create a pull request or an issue

EventFlow.Sql

# EventFlow ![EventFlow logo](https://raw.githubusercontent.com/eventflow/EventFlow/develop-v1/icon-128.png) ``` $ dotnet add package EventFlow ``` EventFlow is a basic CQRS+ES framework designed to be easy to use. Have a look at our [getting started guide](https://geteventflow.net/getting-started/), the [do’s and don’ts](https://geteventflow.net/additional/dos-and-donts/) and the [FAQ](https://geteventflow.net/additional/faq/). Alternatively, join our [Discord](https://discord.gg/QfgNPs5WxR) server to engage with the community. Its hopefully getting a reboot to kickstart the upcoming release of v1. ## Features * **Easy to use**: Designed with sensible defaults and implementations that make it easy to create an example application * **Highly configurable and extendable**: EventFlow uses interfaces for every part of its core, making it easy to replace or extend existing features with custom implementation * **No use of threads or background workers** * **MIT licensed** Easy to understand and use license for enterprise ## Versions Development of version 1.0 has started and is mainly braking changes regarding changes related to replacing EventFlow types with that of Microsoft extension abstractions, mainly `IServiceProvider` and `ILogger<>`. The following list key characteristics of each version as well as its related branches (not properly configured yet). * `1.x` Represents the next iteration of EventFlow that aligns EventFlow with the standard packages for .NET. Releases here will only support .NET Standard, .NET Core and .NET versions 6+ going forward. - Released - Still development - Not all projects migrated yet Read the [migration guide](https://geteventflow.net/migrations/v0-to-v1/) to view the full list of breaking changes as well as recommendations on how to migrate. ### Documentation Version 1.x documentation has been pulled into this repository in order to have the code and documentation closer together and have the documentation updated in the same pull-requests as any code changes. The compiled version of the documentation is available at https://geteventflow.net/. ### NuGet package status - 🟢 ported - 💚 newly added to 1.0 - 🟠 not yet ported to 1.0 - 💀 for packages that are removed as part of 1.0 (see the [migration guide](https://geteventflow.net/migrations/v0-to-v1/) for details) Projects - 🟢 `EventFlow` - 🟠 `EventFlow.AspNetCore` - 💀 `EventFlow.Autofac` - 💀 `EventFlow.DependencyInjection` - 🟠 `EventFlow.Elasticsearch` - 🟠 `EventFlow.EntityFramework` - 🟠 `EventFlow.EventStores.EventStore` - 🟢 `EventFlow.Hangfire` - 🟢 `EventFlow.MongoDB` - 🟢 `EventFlow.MsSql` - 💀 `EventFlow.Owin` - 🟢 `EventFlow.PostgreSql` - 💚 `EventFlow.Redis` - 🟠 `EventFlow.RabbitMQ` - 🟢 `EventFlow.Sql` - 🟠 `EventFlow.SQLite` - 🟢 `EventFlow.TestHelpers` ### Branches - `develop-v1`: Development branch, pull requests should be done here - `release-v1`: Release branch, merge commits are done to this branch from `develop-v1` to create releases. Typically each commit represents a release * `0.x` (legacy) The current stable version of EventFlow and has been the version of EventFlow for almost six years. 0.x versions have .NET Framework support and limited support to the Microsoft extension packages through extra NuGet packages. Feature and bug fix releases will still be done while there's interest in the community. ### Branches - `develop-v0`: Development branch, pull requests should be done here - `release-v0`: Release branch, merge commits are done to this branch from `develop-v0` to create releases. Typically each commit represents a release ### Documentation Version 0.x documentation is (although a bit outdated) is live at https://docs.geteventflow.net/.

EventFlow.DependencyInjection

# EventFlow <table border=0 cellpadding=0 cellspacing=0> <tr> <td width=25%> <img src=./icon-128.png /> </td> <td width=25%> <p> <a href=https://www.nuget.org/packages/EventFlow/><img src=https://img.shields.io/nuget/v/EventFlow.svg?style=flat /></a> </p> <p> <a href=https://docs.geteventflow.net/?badge=latest><img src=https://readthedocs.org/projects/eventflow/badge/?version=latest /></a> </p> </td> <td width=25%> <p> <a href=https://ci.appveyor.com/project/eventflow/eventflow><img src=https://ci.appveyor.com/api/projects/status/51yvhvbd909e4o82/branch/develop?svg=true /></a> </p> <p> <a href=https://gitter.im/rasmus/EventFlow?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge><img src=https://badges.gitter.im/Join Chat.svg /></a> </p> <!-- <p> <a href=https://codecov.io/github/eventflow/EventFlow?branch=develop><img src=https://codecov.io/github/eventflow/EventFlow/coverage.svg?branch=develop /></a> </p> --> </td> <td width=25%> Think EventFlow is great,<br/> <a href=https://www.paypal.me/rasmusnu>buy me a cup of coffee</a> </td> </tr> </table> NuGet feeds - Official releases: https://www.nuget.org/packages/EventFlow/ - Builds: https://ci.appveyor.com/nuget/eventflow EventFlow is a basic CQRS+ES framework designed to be easy to use. Have a look at our [getting started guide](https://docs.geteventflow.net/GettingStarted.html), the [do’s and don’ts](https://docs.geteventflow.net/DosAndDonts.html) and the [FAQ](https://docs.geteventflow.net/FAQ.html). ### Features * **CQRS+ES framework** * **Async/await first:** Every part of EventFlow is written using async/await. * **Highly configurable and extendable** * **Easy to use** * **No use of threads or background workers** * **Cancellation:** All methods that does IO work or might delay execution (due to retries), takes a `CancellationToken` argument to allow you to cancel the operation ### Examples * **[Complete](#complete-example):** Shows a complete example on how to use EventFlow with in-memory event store and read models in a relatively few lines of code * **Shipping:** To get a more complete example of how EventFlow _could_ be used, have a look at the shipping example found here in the code base. The example is based on the shipping example from the book Domain-Driven Design - Tackling Complexity in the Heart of Software by Eric Evans. Its _in-progress_, but should provide inspiration on how to use EventFlow on a larger scale. If you have ideas and/or comments, create a pull request or an issue

EventFlow.Elasticsearch

# EventFlow <table border=0 cellpadding=0 cellspacing=0> <tr> <td width=25%> <img src=./icon-128.png /> </td> <td width=25%> <p> <a href=https://www.nuget.org/packages/EventFlow/><img src=https://img.shields.io/nuget/v/EventFlow.svg?style=flat /></a> </p> <p> <a href=https://docs.geteventflow.net/?badge=latest><img src=https://readthedocs.org/projects/eventflow/badge/?version=latest /></a> </p> </td> <td width=25%> <p> <a href=https://ci.appveyor.com/project/eventflow/eventflow><img src=https://ci.appveyor.com/api/projects/status/51yvhvbd909e4o82/branch/develop?svg=true /></a> </p> <p> <a href=https://gitter.im/rasmus/EventFlow?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge><img src=https://badges.gitter.im/Join Chat.svg /></a> </p> <!-- <p> <a href=https://codecov.io/github/eventflow/EventFlow?branch=develop><img src=https://codecov.io/github/eventflow/EventFlow/coverage.svg?branch=develop /></a> </p> --> </td> <td width=25%> Think EventFlow is great,<br/> <a href=https://www.paypal.me/rasmusnu>buy me a cup of coffee</a> </td> </tr> </table> NuGet feeds - Official releases: https://www.nuget.org/packages/EventFlow/ - Builds: https://ci.appveyor.com/nuget/eventflow EventFlow is a basic CQRS+ES framework designed to be easy to use. Have a look at our [getting started guide](https://docs.geteventflow.net/GettingStarted.html), the [do’s and don’ts](https://docs.geteventflow.net/DosAndDonts.html) and the [FAQ](https://docs.geteventflow.net/FAQ.html). ### Features * **CQRS+ES framework** * **Async/await first:** Every part of EventFlow is written using async/await. * **Highly configurable and extendable** * **Easy to use** * **No use of threads or background workers** * **Cancellation:** All methods that does IO work or might delay execution (due to retries), takes a `CancellationToken` argument to allow you to cancel the operation ### Examples * **[Complete](#complete-example):** Shows a complete example on how to use EventFlow with in-memory event store and read models in a relatively few lines of code * **Shipping:** To get a more complete example of how EventFlow _could_ be used, have a look at the shipping example found here in the code base. The example is based on the shipping example from the book Domain-Driven Design - Tackling Complexity in the Heart of Software by Eric Evans. Its _in-progress_, but should provide inspiration on how to use EventFlow on a larger scale. If you have ideas and/or comments, create a pull request or an issue

EventFlow.MongoDB

# EventFlow ![EventFlow logo](https://raw.githubusercontent.com/eventflow/EventFlow/develop-v1/icon-128.png) ``` $ dotnet add package EventFlow ``` EventFlow is a basic CQRS+ES framework designed to be easy to use. Have a look at our [getting started guide](https://geteventflow.net/getting-started/), the [do’s and don’ts](https://geteventflow.net/additional/dos-and-donts/) and the [FAQ](https://geteventflow.net/additional/faq/). Alternatively, join our [Discord](https://discord.gg/QfgNPs5WxR) server to engage with the community. Its hopefully getting a reboot to kickstart the upcoming release of v1. ## Features * **Easy to use**: Designed with sensible defaults and implementations that make it easy to create an example application * **Highly configurable and extendable**: EventFlow uses interfaces for every part of its core, making it easy to replace or extend existing features with custom implementation * **No use of threads or background workers** * **MIT licensed** Easy to understand and use license for enterprise ## Versions Development of version 1.0 has started and is mainly braking changes regarding changes related to replacing EventFlow types with that of Microsoft extension abstractions, mainly `IServiceProvider` and `ILogger<>`. The following list key characteristics of each version as well as its related branches (not properly configured yet). * `1.x` Represents the next iteration of EventFlow that aligns EventFlow with the standard packages for .NET. Releases here will only support .NET Standard, .NET Core and .NET versions 6+ going forward. - Released - Still development - Not all projects migrated yet Read the [migration guide](https://geteventflow.net/migrations/v0-to-v1/) to view the full list of breaking changes as well as recommendations on how to migrate. ### Documentation Version 1.x documentation has been pulled into this repository in order to have the code and documentation closer together and have the documentation updated in the same pull-requests as any code changes. The compiled version of the documentation is available at https://geteventflow.net/. ### NuGet package status - 🟢 ported - 💚 newly added to 1.0 - 🟠 not yet ported to 1.0 - 💀 for packages that are removed as part of 1.0 (see the [migration guide](https://geteventflow.net/migrations/v0-to-v1/) for details) Projects - 🟢 `EventFlow` - 🟠 `EventFlow.AspNetCore` - 💀 `EventFlow.Autofac` - 💀 `EventFlow.DependencyInjection` - 🟠 `EventFlow.Elasticsearch` - 🟠 `EventFlow.EntityFramework` - 🟠 `EventFlow.EventStores.EventStore` - 🟢 `EventFlow.Hangfire` - 🟢 `EventFlow.MongoDB` - 🟢 `EventFlow.MsSql` - 💀 `EventFlow.Owin` - 🟢 `EventFlow.PostgreSql` - 💚 `EventFlow.Redis` - 🟠 `EventFlow.RabbitMQ` - 🟢 `EventFlow.Sql` - 🟠 `EventFlow.SQLite` - 🟢 `EventFlow.TestHelpers` ### Branches - `develop-v1`: Development branch, pull requests should be done here - `release-v1`: Release branch, merge commits are done to this branch from `develop-v1` to create releases. Typically each commit represents a release * `0.x` (legacy) The current stable version of EventFlow and has been the version of EventFlow for almost six years. 0.x versions have .NET Framework support and limited support to the Microsoft extension packages through extra NuGet packages. Feature and bug fix releases will still be done while there's interest in the community. ### Branches - `develop-v0`: Development branch, pull requests should be done here - `release-v0`: Release branch, merge commits are done to this branch from `develop-v0` to create releases. Typically each commit represents a release ### Documentation Version 0.x documentation is (although a bit outdated) is live at https://docs.geteventflow.net/.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on EventFlow:

Repository Stars
twzhangyang/RestAirline
DDD+CQRS+EventSourcing+Hypermedia API+ASP.NET Core 3.1+Masstransit+terraform+docker+k8s
OKTAYKIR/EventFlow.Example
DDD+CQRS+Event-sourcing examples using EventFlow following CQRS-ES architecture. It is configured with RabbitMQ, MongoDB(Snapshot store), PostgreSQL(Read store), EventStore(GES). It's targeted to .Net Core 2.2 and include docker compose file.
Version Downloads Last updated
1.0.5007 493 11/16/2024
1.0.5004-alpha 1,718 5/23/2024
1.0.5003-alpha 13,504 6/21/2023
1.0.5002-alpha 4,622 11/11/2022
1.0.5001-alpha 2,307 3/15/2022
1.0.4748-alpha 16,165 9/9/2021
1.0.4617-alpha 1,720 6/11/2021
0.84.4 632 11/16/2024
0.83.4713 1,091,079 9/7/2021
0.82.4684 8,046 8/30/2021
0.82.4659 37,123 6/17/2021
0.81.4483 172,405 12/14/2020
0.80.4377 51,889 10/1/2020
0.79.4216 122,768 5/13/2020
0.78.4205 5,874 5/11/2020
0.77.4077 93,793 12/10/2019
0.76.4014 33,972 10/19/2019
0.75.3970 12,435 9/12/2019
0.74.3948 24,061 7/1/2019
0.73.3933 9,534 6/11/2019
0.72.3914 11,699 5/28/2019
0.71.3834 14,946 4/17/2019
0.70.3824 6,940 4/11/2019
0.69.3772 17,218 2/12/2019
0.68.3728 46,063 12/3/2018
0.67.3697 12,939 10/14/2018
0.66.3673 8,679 9/28/2018
0.65.3664 10,676 9/22/2018
0.64.3598 10,310 8/27/2018
0.63.3581 9,181 8/7/2018
0.62.3569 35,229 7/5/2018
0.61.3524 6,537 6/26/2018
0.60.3490 5,419 6/18/2018
0.59.3396 6,124 5/23/2018
0.58.3377 5,152 5/13/2018
0.57.3359 5,871 4/30/2018
0.56.3328 4,614 4/24/2018
0.55.3323 4,774 4/24/2018
0.54.3261 6,131 2/25/2018
0.53.3204 4,653 1/25/2018
0.52.3178 5,380 11/2/2017
0.51.3155 4,241 10/25/2017
0.50.3124 4,309 10/21/2017
0.49.3031 6,882 9/7/2017
0.48.2937 5,449 7/11/2017
0.47.2894 4,954 6/28/2017
0.46.2886 7,850 5/29/2017
0.45.2877 4,378 5/28/2017
0.44.2832 4,210 5/12/2017
0.43.2806 2,359 5/5/2017
0.42.2755 5,069 5/2/2017
0.41.2727 4,933 4/27/2017
0.40.2590 8,139 3/30/2017
0.39.2553 5,185 1/16/2017
0.38.2454 5,045 12/2/2016
0.37.2424 5,265 11/8/2016
0.36.2315 6,217 10/18/2016
0.35.2247 5,138 9/6/2016
0.34.2221 4,896 8/23/2016
0.33.2190 4,669 8/16/2016
0.32.2163 4,814 7/4/2016
0.31.2106 4,637 6/30/2016
0.30.2019 4,981 6/16/2016
0.29.1973 6,397 4/19/2016
0.28.1852 4,704 4/5/2016
0.27.1765 8,034 2/25/2016
0.26.1714 4,682 2/20/2016
0.25.1695 3,989 2/15/2016
0.24.1563 4,364 1/25/2016
0.23.1470 5,012 12/5/2015
0.22.1393 4,890 11/19/2015
0.21.1312 4,144 10/26/2015
0.20.1274 3,947 10/22/2015
0.19.1225 3,857 10/19/2015
0.18.1181 4,216 10/7/2015
0.17.1134 4,094 9/28/2015
0.16.1120 3,993 9/27/2015
0.15.1057 4,089 9/24/2015
0.14.1051 4,035 9/23/2015
0.13.962 4,013 9/13/2015
0.12.891 3,796 9/4/2015
0.11.751 3,765 8/24/2015
0.10.642 3,541 8/17/2015
0.9.580 3,613 7/20/2015
0.8.560 3,427 5/29/2015
0.7.481 3,416 5/22/2015
0.6.456 3,251 5/18/2015
0.5.390 3,429 5/8/2015
0.4.353 3,299 5/5/2015
0.3.292 3,874 4/30/2015

IMPORTANT:** Major API breaking changes *might* occur between 1.0 pre-releases. As breaking
API changes will need to be tested and verified before the final 1.0 release.
Read the complete migration guide to get the full list of changes as well
as recommendations on how to do the migration.
https://github.com/eventflow/EventFlow/blob/develop-v1/MIGRATION_GUIDE.md
New/breaking: Replace internal IoC implementation with `Microsoft.Extensions.DependencyInjection`
New/breaking: Replace internal logging implementation with `Microsoft.Extensions.Logging`
New/breaking: SQL read models now support different connection strings using the
`[SqlReadModelConnectionStringName]` attribute. To allow executing queries using different
connection strings, all methods on `IMsSqlConnection` and `ISqlConnection` now have an
additional argument, `string connectionStringName` to signify which connection string
should be used for the query
New/breaking: SQL connection strings are now fetched from the
`SqlConfiguration<T>.GetConnectionStringAsync(...)` instead of a property, allowing more
control of the connection string used at runtime
New: Its now possible to change the execution timeout for database migrations using the
`SetUpgradeExecutionTimeout(...)` on the SQL configuration
Breaking: Removed the following dead and/or confusion MSSQL attributes. The real ones
are named the same, with with `Sql...` instead of `MsSql...`
- `MsSqlReadModelIdentityColumn`
- `MsSqlReadModelIgnoreColumn`
- `MsSqlReadModelVersionColumn`
Breaking: Methods on `IMsSqlDatabaseMigrator` and `ISqlDatabaseMigrator` have been
made async and have an extra `CancellationToken` argument
Breaking: Remove support for .NET Framework and consolidate on .NET Core LTS versions
Breaking: Replace internal in-memory caching with `Microsoft.Extensions.Caching.Memory`
Breaking: Removed `IAmAsyncReadModelFor` and made `IAmReadModelFor` async
Breaking: Removed `EventFlow.Core.AsyncHelper` as well as all async wrapper methods
that used it
- `IAggregateStore.Load`
- `IAggregateStore.Store`
- `IAggregateStore.Update`
- `ICommandBus.Publish`
- `IEventStore.LoadAggregate`
- `IEventStore.LoadEvents`
- `IEventStore.LoadAllEvents`
- `IQueryProcessor.Process`
- `IReadModelPopulator.Populate`
- `IReadModelPopulator.Purge`
Version of 0.x included: `0.83.4713`. 0.x changes are merged to 1.x at regular
intervals, but might be one or two releases behind