EventFlow MSSQL NuGet packages merge
Currently it takes EventFlow no less than five EventFlow NuGet packages to get support for Microsoft SQL Server if you want to use it for both event store and read store.
EventFlow
: Core packageEventFlow.Sql
: Contains general SQL support for EvenFlow which is shared with the SQLite event and read model storesEventFlow.MsSql
: General MSSQL supportEventFlow.ReadStores.MsSql
: MSSQL read store supportEventFlow.EventStores.MsSql
: MSSQL read store support
In an upcoming release of EventFlow, the EventFlow.ReadStores.MsSql
and
EventFlow.EventStores.MsSql
will be deprecated and the containing
functionality will be moved to the EventFlow.MsSql
package.
Changing the package layout is something that will be somewhat annoying for any developer that use EventFlow. But I hope by making this change now, it will ease managing EventFlow packages in the future.
To ease the transition, the deprecated packages will be provided for a few
releases, but they will not contain any DLL files. In the general case, the only
breaking change will be a new namespace for the UseMssqlReadModel
and
UseMssqlEventStore
extension methods.
The changes to EventFlow itself would have been trivial if it wasn’t for the inclusion of SQL migration scripts for setting up the event store table and table type used to pass events effectively to the MSSQL server. The scripts will be moved, but they will also have to be updated to be idempotent, i.e., make sure they don’t try to execute if e.g. the event store table is already present.
If you want to follow the progress or leave comment, have a look at the GitHub pull request #204 or leave a comment here.