diff --git a/.github/workflows/dotnet-build.yml b/.github/workflows/dotnet-build.yml
index ce04491f..59d3fb5f 100644
--- a/.github/workflows/dotnet-build.yml
+++ b/.github/workflows/dotnet-build.yml
@@ -145,27 +145,9 @@ jobs:
- name: Clean
run: dotnet clean -c Release
- - name: Replace Rules.Framework package references w/ project references
- run: |
- dotnet remove src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj package Rules.Framework
- dotnet remove src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj package Rules.Framework
- dotnet remove src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj package Rules.Framework
- dotnet add src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj reference src/Rules.Framework/Rules.Framework.csproj
- dotnet add src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj reference src/Rules.Framework/Rules.Framework.csproj
- dotnet add src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj reference src/Rules.Framework/Rules.Framework.csproj
-
- name: Clear Nuget locals
run: dotnet nuget locals all --clear
- - name: Restore dependencies w/ Rules.Framework project reference
- run: dotnet restore
-
- - name: Build w/ Rules.Framework project reference
- run: dotnet build --no-restore -c Release
-
- - name: Test w/ Rules.Framework project reference (no coverage)
- run: dotnet test --no-build --verbosity normal -m:1 -c Release
-
- name: Delete build tag if exists
uses: dev-drprasad/delete-tag-and-release@v0.2.0
continue-on-error: true
diff --git a/.github/workflows/dotnet-publish.yml b/.github/workflows/dotnet-publish.yml
index 8a550089..fe9e6c04 100644
--- a/.github/workflows/dotnet-publish.yml
+++ b/.github/workflows/dotnet-publish.yml
@@ -42,9 +42,6 @@ jobs:
- name: Pack Rules.Framework.Providers.MongoDb
run: dotnet pack src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj --include-symbols -c Release /p:Version=$BUILD_VERSION
- - name: Pack Rules.Framework.Providers.InMemory
- run: dotnet pack src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj --include-symbols -c Release /p:Version=$BUILD_VERSION
-
- name: Pack Rules.Framework.WebUI
run: dotnet pack src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj --include-symbols -c Release /p:Version=$BUILD_VERSION
diff --git a/rules-framework.sln b/rules-framework.sln
index 448f4305..5aeb121e 100644
--- a/rules-framework.sln
+++ b/rules-framework.sln
@@ -24,8 +24,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Rules.Framework.Providers.M
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Rules.Framework.Providers.MongoDb.Tests", "tests\Rules.Framework.Providers.MongoDb.Tests\Rules.Framework.Providers.MongoDb.Tests.csproj", "{C2957B7C-D601-4850-BCCE-D9AEF07225AB}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Rules.Framework.Providers.InMemory", "src\Rules.Framework.Providers.InMemory\Rules.Framework.Providers.InMemory.csproj", "{D3A17A64-CC74-4EA0-95EA-9E141913BF70}"
-EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Rules.Framework.IntegrationTests.Common", "tests\Rules.Framework.IntegrationTests.Common\Rules.Framework.IntegrationTests.Common.csproj", "{7C04ECEF-6504-453D-ABD8-FD3D5A2CF7F6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Rules.Framework.Providers.InMemory.IntegrationTests", "tests\Rules.Framework.Providers.InMemory.IntegrationTests\Rules.Framework.Providers.InMemory.IntegrationTests.csproj", "{69BBA04D-116C-48EA-A8FD-ECC8CA0D57BE}"
@@ -72,10 +70,6 @@ Global
{C2957B7C-D601-4850-BCCE-D9AEF07225AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C2957B7C-D601-4850-BCCE-D9AEF07225AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C2957B7C-D601-4850-BCCE-D9AEF07225AB}.Release|Any CPU.Build.0 = Release|Any CPU
- {D3A17A64-CC74-4EA0-95EA-9E141913BF70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D3A17A64-CC74-4EA0-95EA-9E141913BF70}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D3A17A64-CC74-4EA0-95EA-9E141913BF70}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D3A17A64-CC74-4EA0-95EA-9E141913BF70}.Release|Any CPU.Build.0 = Release|Any CPU
{7C04ECEF-6504-453D-ABD8-FD3D5A2CF7F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7C04ECEF-6504-453D-ABD8-FD3D5A2CF7F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7C04ECEF-6504-453D-ABD8-FD3D5A2CF7F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -115,7 +109,6 @@ Global
{460130DF-2360-494C-BB6F-BD87B033DF9D} = {AEE746EC-CEAA-4892-8C29-0CAAB97A23A8}
{8E14BC18-583F-43EF-99CF-08932D6303A0} = {74E24C97-8EE4-4B69-AECD-4765FD2C751F}
{C2957B7C-D601-4850-BCCE-D9AEF07225AB} = {74E24C97-8EE4-4B69-AECD-4765FD2C751F}
- {D3A17A64-CC74-4EA0-95EA-9E141913BF70} = {AEE746EC-CEAA-4892-8C29-0CAAB97A23A8}
{7C04ECEF-6504-453D-ABD8-FD3D5A2CF7F6} = {74E24C97-8EE4-4B69-AECD-4765FD2C751F}
{69BBA04D-116C-48EA-A8FD-ECC8CA0D57BE} = {74E24C97-8EE4-4B69-AECD-4765FD2C751F}
{BB319C5B-9BF5-4DDB-B522-CFC64D7272C4} = {74E24C97-8EE4-4B69-AECD-4765FD2C751F}
diff --git a/samples/Rules.Framework.InMemory.Sample/Rules.Framework.InMemory.Sample.csproj b/samples/Rules.Framework.InMemory.Sample/Rules.Framework.InMemory.Sample.csproj
index 06a2272c..48f467ee 100644
--- a/samples/Rules.Framework.InMemory.Sample/Rules.Framework.InMemory.Sample.csproj
+++ b/samples/Rules.Framework.InMemory.Sample/Rules.Framework.InMemory.Sample.csproj
@@ -6,7 +6,7 @@
-
+
diff --git a/samples/Rules.Framework.WebUI.Sample/Rules.Framework.WebUI.Sample.csproj b/samples/Rules.Framework.WebUI.Sample/Rules.Framework.WebUI.Sample.csproj
index 2648646a..805f8ed4 100644
--- a/samples/Rules.Framework.WebUI.Sample/Rules.Framework.WebUI.Sample.csproj
+++ b/samples/Rules.Framework.WebUI.Sample/Rules.Framework.WebUI.Sample.csproj
@@ -15,7 +15,6 @@
-
diff --git a/src/Rules.Framework.Providers.InMemory/AssemblyMetadata.cs b/src/Rules.Framework.Providers.InMemory/AssemblyMetadata.cs
deleted file mode 100644
index 836f599e..00000000
--- a/src/Rules.Framework.Providers.InMemory/AssemblyMetadata.cs
+++ /dev/null
@@ -1,5 +0,0 @@
-using System.Runtime.CompilerServices;
-
-[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
-[assembly: InternalsVisibleTo("Rules.Framework.Providers.InMemory.Tests")]
-[assembly: InternalsVisibleTo("Rules.Framework.Providers.InMemory.IntegrationTests")]
\ No newline at end of file
diff --git a/src/Rules.Framework.Providers.InMemory/GlobalSuppressions.cs b/src/Rules.Framework.Providers.InMemory/GlobalSuppressions.cs
deleted file mode 100644
index b974ecaa..00000000
--- a/src/Rules.Framework.Providers.InMemory/GlobalSuppressions.cs
+++ /dev/null
@@ -1,8 +0,0 @@
-// This file is used by Code Analysis to maintain SuppressMessage
-// attributes that are applied to this project.
-// Project-level suppressions either have no target or are given
-// a specific target and scoped to a namespace, type, member, etc.
-
-using System.Diagnostics.CodeAnalysis;
-
-[assembly: SuppressMessage("Major Code Smell", "S2326:Unused type parameters should be removed", Justification = "", Scope = "type", Target = "~T:Rules.Framework.Providers.InMemory.DataModel.ConditionNodeDataModel`1")]
diff --git a/src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj b/src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj
deleted file mode 100644
index af19ebdc..00000000
--- a/src/Rules.Framework.Providers.InMemory/Rules.Framework.Providers.InMemory.csproj
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
- netstandard2.0
- 9.0
- true
-
-
-
-
-
-
- LICENSE.md
-
-
- Git
- rules rulesframework memory inmemory
- A data source provider implementation using InMemory for rules framework.
-
-
-
-
-
-
- True
-
-
-
-
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj b/src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj
index f49e6932..2f736313 100644
--- a/src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj
+++ b/src/Rules.Framework.Providers.MongoDb/Rules.Framework.Providers.MongoDb.csproj
@@ -37,6 +37,9 @@
-
+
+
+
+
\ No newline at end of file
diff --git a/src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj b/src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj
index 455024bc..151ced4e 100644
--- a/src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj
+++ b/src/Rules.Framework.WebUI/Rules.Framework.WebUI.csproj
@@ -47,7 +47,7 @@
-
+
diff --git a/src/Rules.Framework/AssemblyMetadata.cs b/src/Rules.Framework/AssemblyMetadata.cs
index fc62b7b0..a88ba7ef 100644
--- a/src/Rules.Framework/AssemblyMetadata.cs
+++ b/src/Rules.Framework/AssemblyMetadata.cs
@@ -2,4 +2,6 @@
[assembly: InternalsVisibleTo("Rules.Framework.Tests")]
[assembly: InternalsVisibleTo("Rules.Framework.IntegrationTests")]
+[assembly: InternalsVisibleTo("Rules.Framework.Providers.InMemory.Tests")]
+[assembly: InternalsVisibleTo("Rules.Framework.Providers.InMemory.IntegrationTests")]
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
\ No newline at end of file
diff --git a/src/Rules.Framework/GlobalSuppressions.cs b/src/Rules.Framework/GlobalSuppressions.cs
index 88bf164e..40cfbe36 100644
--- a/src/Rules.Framework/GlobalSuppressions.cs
+++ b/src/Rules.Framework/GlobalSuppressions.cs
@@ -16,4 +16,5 @@
[assembly: SuppressMessage("Design", "CA1062:Validate arguments of public methods", Justification = "", Scope = "member", Target = "~M:Rules.Framework.RulesEngine`2.AddRuleAsync(Rules.Framework.Core.Rule{`0,`1})~System.Threading.Tasks.Task")]
[assembly: SuppressMessage("Naming", "CA1717:Only FlagsAttribute enums should have plural names", Justification = "", Scope = "type", Target = "~T:Rules.Framework.PriorityOptions")]
[assembly: SuppressMessage("Major Bug", "S2259:Null pointers should not be dereferenced", Justification = "That is validated somes lines above, and if it is null, a RuleOperationResult with error is returned right away.", Scope = "member", Target = "~M:Rules.Framework.RulesEngine`2.UpdateRuleInternalAsync(Rules.Framework.Core.Rule{`0,`1})~System.Threading.Tasks.Task{Rules.Framework.RuleOperationResult}")]
-[assembly: SuppressMessage("Minor Code Smell", "S3963:\"static\" fields should be initialized inline", Justification = "To ensure initialization logic ordered as specified in class constructor.", Scope = "member", Target = "~M:Rules.Framework.Evaluation.OperatorsMetadata.#cctor")]
\ No newline at end of file
+[assembly: SuppressMessage("Minor Code Smell", "S3963:\"static\" fields should be initialized inline", Justification = "To ensure initialization logic ordered as specified in class constructor.", Scope = "member", Target = "~M:Rules.Framework.Evaluation.OperatorsMetadata.#cctor")]
+[assembly: SuppressMessage("Major Code Smell", "S2326:Unused type parameters should be removed", Justification = "", Scope = "type", Target = "~T:Rules.Framework.Providers.InMemory.DataModel.ConditionNodeDataModel`1")]
\ No newline at end of file
diff --git a/src/Rules.Framework.Providers.InMemory/DataModel/ComposedConditionNodeDataModel.cs b/src/Rules.Framework/Providers/InMemory/DataModel/ComposedConditionNodeDataModel.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/DataModel/ComposedConditionNodeDataModel.cs
rename to src/Rules.Framework/Providers/InMemory/DataModel/ComposedConditionNodeDataModel.cs
diff --git a/src/Rules.Framework.Providers.InMemory/DataModel/ConditionNodeDataModel.cs b/src/Rules.Framework/Providers/InMemory/DataModel/ConditionNodeDataModel.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/DataModel/ConditionNodeDataModel.cs
rename to src/Rules.Framework/Providers/InMemory/DataModel/ConditionNodeDataModel.cs
diff --git a/src/Rules.Framework.Providers.InMemory/DataModel/RuleDataModel.cs b/src/Rules.Framework/Providers/InMemory/DataModel/RuleDataModel.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/DataModel/RuleDataModel.cs
rename to src/Rules.Framework/Providers/InMemory/DataModel/RuleDataModel.cs
diff --git a/src/Rules.Framework.Providers.InMemory/DataModel/ValueConditionNodeDataModel.cs b/src/Rules.Framework/Providers/InMemory/DataModel/ValueConditionNodeDataModel.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/DataModel/ValueConditionNodeDataModel.cs
rename to src/Rules.Framework/Providers/InMemory/DataModel/ValueConditionNodeDataModel.cs
diff --git a/src/Rules.Framework.Providers.InMemory/IInMemoryRulesStorage.cs b/src/Rules.Framework/Providers/InMemory/IInMemoryRulesStorage.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/IInMemoryRulesStorage.cs
rename to src/Rules.Framework/Providers/InMemory/IInMemoryRulesStorage.cs
diff --git a/src/Rules.Framework.Providers.InMemory/IRuleFactory.cs b/src/Rules.Framework/Providers/InMemory/IRuleFactory.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/IRuleFactory.cs
rename to src/Rules.Framework/Providers/InMemory/IRuleFactory.cs
diff --git a/src/Rules.Framework.Providers.InMemory/InMemoryProviderRulesDataSource.cs b/src/Rules.Framework/Providers/InMemory/InMemoryProviderRulesDataSource.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/InMemoryProviderRulesDataSource.cs
rename to src/Rules.Framework/Providers/InMemory/InMemoryProviderRulesDataSource.cs
diff --git a/src/Rules.Framework.Providers.InMemory/InMemoryProviderRulesDataSourceSelectorExtensions.cs b/src/Rules.Framework/Providers/InMemory/InMemoryProviderRulesDataSourceSelectorExtensions.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/InMemoryProviderRulesDataSourceSelectorExtensions.cs
rename to src/Rules.Framework/Providers/InMemory/InMemoryProviderRulesDataSourceSelectorExtensions.cs
diff --git a/src/Rules.Framework.Providers.InMemory/InMemoryRulesStorage.cs b/src/Rules.Framework/Providers/InMemory/InMemoryRulesStorage.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/InMemoryRulesStorage.cs
rename to src/Rules.Framework/Providers/InMemory/InMemoryRulesStorage.cs
diff --git a/src/Rules.Framework.Providers.InMemory/RuleFactory.cs b/src/Rules.Framework/Providers/InMemory/RuleFactory.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/RuleFactory.cs
rename to src/Rules.Framework/Providers/InMemory/RuleFactory.cs
diff --git a/src/Rules.Framework.Providers.InMemory/ServiceCollectionExtensions.cs b/src/Rules.Framework/Providers/InMemory/ServiceCollectionExtensions.cs
similarity index 100%
rename from src/Rules.Framework.Providers.InMemory/ServiceCollectionExtensions.cs
rename to src/Rules.Framework/Providers/InMemory/ServiceCollectionExtensions.cs
diff --git a/src/Rules.Framework/Rules.Framework.csproj b/src/Rules.Framework/Rules.Framework.csproj
index f78bc4f7..7dd00b6a 100644
--- a/src/Rules.Framework/Rules.Framework.csproj
+++ b/src/Rules.Framework/Rules.Framework.csproj
@@ -1,4 +1,4 @@
-
+
netstandard2.0
@@ -30,6 +30,7 @@
+
@@ -41,5 +42,6 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
\ No newline at end of file
diff --git a/tests/Rules.Framework.Providers.InMemory.IntegrationTests/Rules.Framework.Providers.InMemory.IntegrationTests.csproj b/tests/Rules.Framework.Providers.InMemory.IntegrationTests/Rules.Framework.Providers.InMemory.IntegrationTests.csproj
index 01003fe4..891d4db9 100644
--- a/tests/Rules.Framework.Providers.InMemory.IntegrationTests/Rules.Framework.Providers.InMemory.IntegrationTests.csproj
+++ b/tests/Rules.Framework.Providers.InMemory.IntegrationTests/Rules.Framework.Providers.InMemory.IntegrationTests.csproj
@@ -22,7 +22,7 @@
-
+
diff --git a/tests/Rules.Framework.Providers.InMemory.Tests/Rules.Framework.Providers.InMemory.Tests.csproj b/tests/Rules.Framework.Providers.InMemory.Tests/Rules.Framework.Providers.InMemory.Tests.csproj
index 9d03d986..8824d451 100644
--- a/tests/Rules.Framework.Providers.InMemory.Tests/Rules.Framework.Providers.InMemory.Tests.csproj
+++ b/tests/Rules.Framework.Providers.InMemory.Tests/Rules.Framework.Providers.InMemory.Tests.csproj
@@ -26,6 +26,6 @@
-
+
\ No newline at end of file
diff --git a/tests/Rules.Framework.WebUI.Tests/Rules.Framework.WebUI.Tests.csproj b/tests/Rules.Framework.WebUI.Tests/Rules.Framework.WebUI.Tests.csproj
index b2b3b9dc..a2b51717 100644
--- a/tests/Rules.Framework.WebUI.Tests/Rules.Framework.WebUI.Tests.csproj
+++ b/tests/Rules.Framework.WebUI.Tests/Rules.Framework.WebUI.Tests.csproj
@@ -12,7 +12,6 @@
-
all