diff --git a/CalculatorTests/CalculatorTests.csproj b/CalculatorTests/CalculatorTests.csproj
index 0683edc..47bed02 100644
--- a/CalculatorTests/CalculatorTests.csproj
+++ b/CalculatorTests/CalculatorTests.csproj
@@ -71,10 +71,10 @@
- 6.12.9
+ 6.13.9
- 4.1.5
+ 4.1.6
1.4.0
@@ -83,10 +83,10 @@
1.4.0
- 9.19.5
+ 10.3.6
- 4.1.5
+ 4.1.6
diff --git a/ExampleCalculatorApp/App.config b/ExampleCalculatorApp/App.config
index ff5054a..ee7742f 100644
--- a/ExampleCalculatorApp/App.config
+++ b/ExampleCalculatorApp/App.config
@@ -27,12 +27,20 @@
-
+
+
+
+
+
+
+
+
+
diff --git a/ExampleCalculatorApp/ExampleCalculatorApp.csproj b/ExampleCalculatorApp/ExampleCalculatorApp.csproj
index 15a3456..66b8914 100644
--- a/ExampleCalculatorApp/ExampleCalculatorApp.csproj
+++ b/ExampleCalculatorApp/ExampleCalculatorApp.csproj
@@ -37,21 +37,27 @@
4
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\ReactiveUI.WPF.9.19.5\lib\net461\ReactiveUI.WPF.dll
+
+ ..\packages\ReactiveUI.WPF.10.3.6\lib\net461\ReactiveUI.WPF.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
@@ -60,11 +66,18 @@
True
True
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll
@@ -86,20 +99,20 @@
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.Toolkit.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.Toolkit.dll
diff --git a/ExampleCalculatorApp/packages.config b/ExampleCalculatorApp/packages.config
index a623131..ed68c79 100644
--- a/ExampleCalculatorApp/packages.config
+++ b/ExampleCalculatorApp/packages.config
@@ -1,14 +1,18 @@
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
+
+
\ No newline at end of file
diff --git a/ExampleCodeGenApp/App.config b/ExampleCodeGenApp/App.config
index 290b814..6f4b64f 100644
--- a/ExampleCodeGenApp/App.config
+++ b/ExampleCodeGenApp/App.config
@@ -27,12 +27,20 @@
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ExampleCodeGenApp/ExampleCodeGenApp.csproj b/ExampleCodeGenApp/ExampleCodeGenApp.csproj
index ebd8c53..e46fff8 100644
--- a/ExampleCodeGenApp/ExampleCodeGenApp.csproj
+++ b/ExampleCodeGenApp/ExampleCodeGenApp.csproj
@@ -34,59 +34,72 @@
4
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
..\packages\MoonSharp.2.0.0.0\lib\net40-client\MoonSharp.Interpreter.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
..\packages\System.Drawing.Primitives.4.3.0\lib\net45\System.Drawing.Primitives.dll
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
- ..\packages\System.Reactive.Core.4.1.5\lib\net46\System.Reactive.Core.dll
+ ..\packages\System.Reactive.Core.4.1.6\lib\net46\System.Reactive.Core.dll
- ..\packages\System.Reactive.Experimental.4.1.5\lib\net46\System.Reactive.Experimental.dll
+ ..\packages\System.Reactive.Experimental.4.1.6\lib\net46\System.Reactive.Experimental.dll
- ..\packages\System.Reactive.Interfaces.4.1.5\lib\net46\System.Reactive.Interfaces.dll
+ ..\packages\System.Reactive.Interfaces.4.1.6\lib\net46\System.Reactive.Interfaces.dll
- ..\packages\System.Reactive.Linq.4.1.5\lib\net46\System.Reactive.Linq.dll
+ ..\packages\System.Reactive.Linq.4.1.6\lib\net46\System.Reactive.Linq.dll
- ..\packages\System.Reactive.PlatformServices.4.1.5\lib\net46\System.Reactive.PlatformServices.dll
+ ..\packages\System.Reactive.PlatformServices.4.1.6\lib\net46\System.Reactive.PlatformServices.dll
- ..\packages\System.Reactive.Providers.4.1.5\lib\net46\System.Reactive.Providers.dll
+ ..\packages\System.Reactive.Providers.4.1.6\lib\net46\System.Reactive.Providers.dll
- ..\packages\System.Reactive.Runtime.Remoting.4.1.5\lib\net46\System.Reactive.Runtime.Remoting.dll
+ ..\packages\System.Reactive.Runtime.Remoting.4.1.6\lib\net46\System.Reactive.Runtime.Remoting.dll
- ..\packages\System.Reactive.Windows.Forms.4.1.5\lib\net46\System.Reactive.Windows.Forms.dll
+ ..\packages\System.Reactive.Windows.Forms.4.1.6\lib\net46\System.Reactive.Windows.Forms.dll
- ..\packages\System.Reactive.Windows.Threading.4.1.5\lib\net46\System.Reactive.Windows.Threading.dll
+ ..\packages\System.Reactive.Windows.Threading.4.1.6\lib\net46\System.Reactive.Windows.Threading.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll
@@ -108,20 +121,20 @@
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.Toolkit.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.Toolkit.dll
diff --git a/ExampleCodeGenApp/packages.config b/ExampleCodeGenApp/packages.config
index 9b13f5d..385d848 100644
--- a/ExampleCodeGenApp/packages.config
+++ b/ExampleCodeGenApp/packages.config
@@ -1,24 +1,28 @@
-
-
+
+
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ExampleShaderEditorApp/App.config b/ExampleShaderEditorApp/App.config
index d2b7027..04b78b8 100644
--- a/ExampleShaderEditorApp/App.config
+++ b/ExampleShaderEditorApp/App.config
@@ -11,7 +11,7 @@
-
+
@@ -37,6 +37,10 @@
+
+
+
+
diff --git a/ExampleShaderEditorApp/ExampleShaderEditorApp.csproj b/ExampleShaderEditorApp/ExampleShaderEditorApp.csproj
index ad307b1..4c5ba8b 100644
--- a/ExampleShaderEditorApp/ExampleShaderEditorApp.csproj
+++ b/ExampleShaderEditorApp/ExampleShaderEditorApp.csproj
@@ -35,8 +35,8 @@
4
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
..\packages\MathNet.Numerics.4.8.1\lib\net461\MathNet.Numerics.dll
@@ -57,57 +57,66 @@
..\packages\OpenGL.Net.WinForms.0.8.4\lib\net461\OpenGL.Net.WinForms.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
..\packages\System.Drawing.Primitives.4.3.0\lib\net45\System.Drawing.Primitives.dll
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
- ..\packages\System.Reactive.Core.4.1.5\lib\net46\System.Reactive.Core.dll
+ ..\packages\System.Reactive.Core.4.1.6\lib\net46\System.Reactive.Core.dll
- ..\packages\System.Reactive.Experimental.4.1.5\lib\net46\System.Reactive.Experimental.dll
+ ..\packages\System.Reactive.Experimental.4.1.6\lib\net46\System.Reactive.Experimental.dll
- ..\packages\System.Reactive.Interfaces.4.1.5\lib\net46\System.Reactive.Interfaces.dll
+ ..\packages\System.Reactive.Interfaces.4.1.6\lib\net46\System.Reactive.Interfaces.dll
- ..\packages\System.Reactive.Linq.4.1.5\lib\net46\System.Reactive.Linq.dll
+ ..\packages\System.Reactive.Linq.4.1.6\lib\net46\System.Reactive.Linq.dll
- ..\packages\System.Reactive.PlatformServices.4.1.5\lib\net46\System.Reactive.PlatformServices.dll
+ ..\packages\System.Reactive.PlatformServices.4.1.6\lib\net46\System.Reactive.PlatformServices.dll
- ..\packages\System.Reactive.Providers.4.1.5\lib\net46\System.Reactive.Providers.dll
+ ..\packages\System.Reactive.Providers.4.1.6\lib\net46\System.Reactive.Providers.dll
- ..\packages\System.Reactive.Runtime.Remoting.4.1.5\lib\net46\System.Reactive.Runtime.Remoting.dll
+ ..\packages\System.Reactive.Runtime.Remoting.4.1.6\lib\net46\System.Reactive.Runtime.Remoting.dll
- ..\packages\System.Reactive.Windows.Forms.4.1.5\lib\net46\System.Reactive.Windows.Forms.dll
+ ..\packages\System.Reactive.Windows.Forms.4.1.6\lib\net46\System.Reactive.Windows.Forms.dll
- ..\packages\System.Reactive.Windows.Threading.4.1.5\lib\net46\System.Reactive.Windows.Threading.dll
+ ..\packages\System.Reactive.Windows.Threading.4.1.6\lib\net46\System.Reactive.Windows.Threading.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
@@ -132,20 +141,20 @@
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Aero.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.Metro.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.AvalonDock.Themes.VS2010.dll
-
- ..\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\Xceed.Wpf.Toolkit.dll
+
+ ..\packages\Extended.Wpf.Toolkit.3.6.0\lib\net40\Xceed.Wpf.Toolkit.dll
diff --git a/ExampleShaderEditorApp/packages.config b/ExampleShaderEditorApp/packages.config
index 4a7633c..56e3b1a 100644
--- a/ExampleShaderEditorApp/packages.config
+++ b/ExampleShaderEditorApp/packages.config
@@ -1,30 +1,33 @@
-
-
+
+
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/NodeNetwork/NodeNetwork.csproj b/NodeNetwork/NodeNetwork.csproj
index af58b32..36579cb 100644
--- a/NodeNetwork/NodeNetwork.csproj
+++ b/NodeNetwork/NodeNetwork.csproj
@@ -38,31 +38,37 @@
true
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
..\packages\log4net.2.0.8\lib\net45-full\log4net.dll
-
- ..\packages\Pharmacist.Common.1.0.118\lib\netstandard2.0\Pharmacist.Common.dll
+
+ ..\packages\Pharmacist.Common.1.2.2\lib\netstandard2.0\Pharmacist.Common.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\ReactiveUI.Events.WPF.9.19.5\lib\net461\ReactiveUI.Events.WPF.dll
+
+ ..\packages\ReactiveUI.Events.WPF.10.3.6\lib\net461\ReactiveUI.Events.WPF.dll
-
- ..\packages\ReactiveUI.WPF.9.19.5\lib\net461\ReactiveUI.WPF.dll
+
+ ..\packages\ReactiveUI.WPF.10.3.6\lib\net461\ReactiveUI.WPF.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
@@ -71,38 +77,45 @@
True
True
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
- ..\packages\System.Reactive.Core.4.1.5\lib\net46\System.Reactive.Core.dll
+ ..\packages\System.Reactive.Core.4.1.6\lib\net46\System.Reactive.Core.dll
- ..\packages\System.Reactive.Experimental.4.1.5\lib\net46\System.Reactive.Experimental.dll
+ ..\packages\System.Reactive.Experimental.4.1.6\lib\net46\System.Reactive.Experimental.dll
- ..\packages\System.Reactive.Interfaces.4.1.5\lib\net46\System.Reactive.Interfaces.dll
+ ..\packages\System.Reactive.Interfaces.4.1.6\lib\net46\System.Reactive.Interfaces.dll
- ..\packages\System.Reactive.Linq.4.1.5\lib\net46\System.Reactive.Linq.dll
+ ..\packages\System.Reactive.Linq.4.1.6\lib\net46\System.Reactive.Linq.dll
- ..\packages\System.Reactive.PlatformServices.4.1.5\lib\net46\System.Reactive.PlatformServices.dll
+ ..\packages\System.Reactive.PlatformServices.4.1.6\lib\net46\System.Reactive.PlatformServices.dll
- ..\packages\System.Reactive.Providers.4.1.5\lib\net46\System.Reactive.Providers.dll
+ ..\packages\System.Reactive.Providers.4.1.6\lib\net46\System.Reactive.Providers.dll
- ..\packages\System.Reactive.Runtime.Remoting.4.1.5\lib\net46\System.Reactive.Runtime.Remoting.dll
+ ..\packages\System.Reactive.Runtime.Remoting.4.1.6\lib\net46\System.Reactive.Runtime.Remoting.dll
- ..\packages\System.Reactive.Windows.Forms.4.1.5\lib\net46\System.Reactive.Windows.Forms.dll
+ ..\packages\System.Reactive.Windows.Forms.4.1.6\lib\net46\System.Reactive.Windows.Forms.dll
- ..\packages\System.Reactive.Windows.Threading.4.1.5\lib\net46\System.Reactive.Windows.Threading.dll
+ ..\packages\System.Reactive.Windows.Threading.4.1.6\lib\net46\System.Reactive.Windows.Threading.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll
diff --git a/NodeNetwork/Utilities/ReactiveExtensions.cs b/NodeNetwork/Utilities/ReactiveExtensions.cs
index 89dfbe7..005e866 100644
--- a/NodeNetwork/Utilities/ReactiveExtensions.cs
+++ b/NodeNetwork/Utilities/ReactiveExtensions.cs
@@ -1,18 +1,8 @@
using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.Specialized;
-using System.ComponentModel;
-using System.Linq;
using System.Linq.Expressions;
-using System.Reactive;
-using System.Reactive.Disposables;
using System.Reactive.Linq;
using DynamicData;
using ReactiveUI;
-using ReactiveUI.Legacy;
-using PropertyChangingEventArgs = ReactiveUI.PropertyChangingEventArgs;
-using PropertyChangingEventHandler = ReactiveUI.PropertyChangingEventHandler;
namespace NodeNetwork.Utilities
{
@@ -95,144 +85,6 @@ Expression> viewProperty
.BindTo(self, viewProperty);
}
- ///
- /// Takes each list produced by this observable and mirrors its contents in the target list.
- /// The target list is modified, not replaced.
- /// The type of the target list property is IReadOnlyReactiveList because it doesn't make sense to have a mutible list
- /// if this binding keeps changing the contents of the list, but the type of the actual object should be ReactiveList
- /// so the list can be modified by this binding.
- ///
- /// The type of viewmodel
- /// The type of object contained in the list
- /// The observable to take lists from.
- /// The viewmodel that is used as a base for finding the target list property
- /// The IReactiveList property that will be modified.
- /// A disposable to break the binding
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static IDisposable BindListContents(this IObservable> data,
- TObj target, Expression>> property) where TObj : class
- {
- IObservable> targetListObservable = target.WhenAnyValue(property);
-
- return Observable.CombineLatest(targetListObservable, data, (a, b) => (TargetList: a, SourceList: b))
- .Subscribe(t =>
- {
- IReactiveList latestTargetList = t.TargetList as IReactiveList;
- IList latestData = t.SourceList;
-
- if (latestTargetList == null)
- {
- return;
- }
-
- if (latestData == null)
- {
- latestTargetList.Clear();
- return;
- }
-
- var changes = LongestCommonSubsequence.GetChanges(latestTargetList, latestData).ToArray();
- if (changes.Length == 0)
- {
- return;
- }
-
- using (changes.Length > 1 ? latestTargetList.SuppressChangeNotifications() : Disposable.Empty)
- {
- foreach (var (index, item, changeType) in changes)
- {
- if (changeType == LongestCommonSubsequence.ChangeType.Removed)
- {
- latestTargetList.RemoveAt(index);
- }
- else if (changeType == LongestCommonSubsequence.ChangeType.Added)
- {
- latestTargetList.Insert(index, item);
- }
- }
- }
- });
- }
-
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static (IReadOnlyReactiveList List, IDisposable Binding) CreateDerivedList(
- this IObservable> obs, Func filter, Func selector)
- {
- ReactiveList result = new ReactiveList();
- IDisposable latestBinding = null;
-
- // Dispose the binding when we receive a null list.
- var cleanupSubscription = obs.Where(l => l == null).Subscribe(_ => latestBinding?.Dispose());
-
- var bindingSubscription = obs
- // Create a new derived list when the source list changes. (and is not null)
- .Where(l => l != null)
- .Select(l => l.CreateDerivedCollection(selector, filter))
- // Mirror the contents of the derived list to result
- .Select(list =>
- {
- var binding = list.Changed.Subscribe(change =>
- {
- switch (change.Action)
- {
- case NotifyCollectionChangedAction.Add:
- int index = change.NewStartingIndex != -1 ? change.NewStartingIndex : result.Count;
- result.InsertRange(index, change.NewItems.Cast());
- break;
-
- case NotifyCollectionChangedAction.Remove:
- if (change.OldStartingIndex != -1)
- {
- result.RemoveRange(change.OldStartingIndex, change.OldItems.Count);
- }
- else
- {
- result.RemoveAll(change.OldItems.Cast());
- }
- break;
-
- case NotifyCollectionChangedAction.Replace:
- if (change.OldStartingIndex == change.NewStartingIndex &&
- change.OldStartingIndex != -1)
- {
- result.RemoveRange(change.OldStartingIndex, change.OldItems.Count);
- result.InsertRange(change.OldStartingIndex, change.NewItems.Cast());
- }
- break;
-
- case NotifyCollectionChangedAction.Move:
- result.RemoveRange(change.OldStartingIndex, change.OldItems.Count);
- result.InsertRange(change.NewStartingIndex, change.NewItems.Cast());
- break;
-
- case NotifyCollectionChangedAction.Reset:
- result.Clear();
- result.AddRange(list);
- break;
-
- default:
- throw new ArgumentOutOfRangeException();
- }
- });
- return (binding, list);
- })
- // When the parent network changes, we will create a new derived list and so we dispose the old one.
- .Select(t => new CompositeDisposable(t.Item1, t.Item2))
- .Subscribe(newBinding =>
- {
- latestBinding?.Dispose();
- latestBinding = newBinding;
- });
-
- var disposable = Disposable.Create(() =>
- {
- cleanupSubscription.Dispose();
- bindingSubscription.Dispose();
- latestBinding?.Dispose();
- });
- return (result, disposable);
- }
-
///
/// Takes an observable of T values and returns an observable of tuples of T values containing the latest value and the previous value.
/// The first item in the source observable produces a tuple with the previous value set to default(T).
@@ -244,251 +96,5 @@ public static (IReadOnlyReactiveList List, IDisposable Binding) CreateDerived
{
return obs.Scan((oldValue: default(T), newValue: default(T)), (pair, newVal) => (pair.newValue, newVal));
}
-
- ///
- /// Apply the specified observableSelector to every item that is added to the list,
- /// and automatically unsubscribes the resulting observable when the item is removed from the list.
- ///
- /// The value produced by the observable returned by observableSelector.
- /// A function that maps each element on an observable.
- /// An observable of the elements that are emitted along with the item that produced it.
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static IObservable<(T Element, V Value)> ObserveEach(this IReadOnlyReactiveList list, Func> observableSelector)
- {
- return list.ObserveWhere(observableSelector, t => true);
- }
-
- ///
- /// Apply the specified observableSelector to every item that is added to the list and matches filter,
- /// and automatically unsubscribes the resulting observable when the item is removed from the list.
- ///
- /// The value produced by the observable returned by observableSelector.
- /// A function that maps each matching element on an observable.
- /// A predicate that specifies whether or not this specific element should be observed
- /// Action that is run each time an item is added to the list.
- /// Action that is run each time an item is removed from the list.
- /// An observable of the elements that are emitted along with the item that produced it.
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static IObservable<(T Element, V Value)> ObserveWhere(
- this IReadOnlyReactiveList list,
- Func> observableSelector,
- Func filter,
- Action onAdd = null,
- Action onRemove = null
- )
- {
- if (observableSelector == null)
- {
- throw new ArgumentNullException(nameof(observableSelector));
- }
- if (filter == null)
- {
- throw new ArgumentNullException(nameof(filter));
- }
- onAdd = onAdd ?? (_ => { });
- onRemove = onRemove ?? (_ => { });
-
- // Take all items that are currently in the list (values and corresponding index),
- // including all that will be added in the future.
- // On reset, pretend all items in the list are new and re-add them.
- // Defer should be used because we want to start with a snapshot of the list contents
- // when the observable is subscribed, instead of when the observable is created.
- IObservable items = Observable.Defer(() =>
- Observable.Merge(
- list.ItemsAdded,
- list.ShouldReset.SelectMany(_ => list.ToArray())
- ).StartWith(list.ToArray())
- );
-
- // Select the target observable using observableSelector and return
- // values from it until the item is removed from this list.
- // On reset, dispose all previous subscriptions.
- return items.Where(filter).Do(onAdd)
- .SelectMany(newElem =>
- observableSelector(newElem)
- .TakeUntil(
- Observable.Merge(
- list.ItemsRemoved.Where(deletedElem => Object.Equals(deletedElem, newElem)).Select(_ => Unit.Default),
- list.ShouldReset
- ).Do(_ => onRemove(newElem))
- )
- .Select(val => (newElem, val))
- );
- }
-
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static (IReadOnlyReactiveList List, IDisposable Binding) ObserveLatestToList(
- this IReadOnlyReactiveList list, Func> observableSelector, Func filter)
- {
- if (observableSelector == null)
- {
- throw new ArgumentNullException(nameof(observableSelector));
- }
- if (filter == null)
- {
- throw new ArgumentNullException(nameof(filter));
- }
-
- IReactiveList<(T Key, V Value)> valueStore = new ReactiveList<(T, V)>();
-
- int FindIndex(T key)
- {
- int index = valueStore.TakeWhile(v => !Object.Equals(v.Key, key)).Count();
- return index == valueStore.Count ? -1 : index;
- }
-
- var binding = list.ObserveWhere(observableSelector, filter, e => { }, e =>
- {
- int index = FindIndex(e);
- if (index != -1)
- {
- valueStore.RemoveAt(index);
- }
- })
- .Subscribe(t =>
- {
- int index = FindIndex(t.Element);
- if (index == -1)
- {
- valueStore.Add(t);
- }
- else
- {
- valueStore[index] = t;
- }
- });
-
- var resultList = valueStore.CreateDerivedCollection(t => t.Value);
- return (resultList, binding);
- }
-
- ///
- /// Creates a readonly wrapper around the specified reactive list.
- /// Note that this does not create a immutable copy: changes to the original list
- /// will be reflected in changes to this list.
- ///
- /// The type of content in the list.
- /// The list to wrap.
- /// A readonly version of the list.
- [Obsolete("ReactiveList is deprecated, use DynamicData instead", false)]
- public static IReadOnlyReactiveList AsReadOnly(this IReactiveList list)
- {
- if (list is ReactiveList impl)
- {
- return impl;
- }
- else
- {
- return new ReadOnlyReactiveListWrapper(list);
- }
- }
-
- ///
- /// Wrapper class to create IReadOnlyReactiveList from IReactiveList
- ///
- ///
- private class ReadOnlyReactiveListWrapper : IReadOnlyReactiveList
- {
- private readonly IReactiveList _list;
-
- public ReadOnlyReactiveListWrapper(IReactiveList list)
- {
- _list = list;
- }
-
- public void Reset()
- {
- _list.Reset();
- }
-
- public IEnumerator GetEnumerator()
- {
- return _list.GetEnumerator();
- }
-
- IEnumerator IEnumerable.GetEnumerator()
- {
- return ((IEnumerable) _list).GetEnumerator();
- }
-
- public int Count => _list.Count;
-
- public IDisposable SuppressChangeNotifications()
- {
- return _list.SuppressChangeNotifications();
- }
-
- public IObservable ItemsAdded => _list.ItemsAdded;
-
- public IObservable BeforeItemsAdded => _list.BeforeItemsAdded;
-
- public IObservable ItemsRemoved => _list.ItemsRemoved;
-
- public IObservable BeforeItemsRemoved => _list.BeforeItemsRemoved;
-
- public IObservable> BeforeItemsMoved => _list.BeforeItemsMoved;
-
- public IObservable> ItemsMoved => _list.ItemsMoved;
-
- public IObservable Changing => _list.Changing;
-
- public IObservable Changed => _list.Changed;
-
- public IObservable CountChanging => _list.CountChanging;
-
- public IObservable CountChanged => _list.CountChanged;
-
- public IObservable IsEmptyChanged => _list.IsEmptyChanged;
-
- public IObservable ShouldReset => _list.ShouldReset;
-
- public IObservable> ItemChanging => _list.ItemChanging;
-
- public IObservable> ItemChanged => _list.ItemChanged;
-
- public bool ChangeTrackingEnabled
- {
- get => _list.ChangeTrackingEnabled;
- set => _list.ChangeTrackingEnabled = value;
- }
-
- public event NotifyCollectionChangedEventHandler CollectionChanged
- {
- add => _list.CollectionChanged += value;
- remove => _list.CollectionChanged -= value;
- }
-
- public event NotifyCollectionChangedEventHandler CollectionChanging
- {
- add => _list.CollectionChanging += value;
- remove => _list.CollectionChanging -= value;
- }
-
- public event PropertyChangedEventHandler PropertyChanged
- {
- add => _list.PropertyChanged += value;
- remove => _list.PropertyChanged -= value;
- }
-
- public event PropertyChangingEventHandler PropertyChanging
- {
- add => _list.PropertyChanging += value;
- remove => _list.PropertyChanging -= value;
- }
-
- public void RaisePropertyChanging(PropertyChangingEventArgs args)
- {
- _list.RaisePropertyChanging(args);
- }
-
- public void RaisePropertyChanged(PropertyChangedEventArgs args)
- {
- _list.RaisePropertyChanged(args);
- }
-
- public T this[int index] => _list[index];
-
- public bool IsEmpty => _list.IsEmpty;
- }
}
}
diff --git a/NodeNetwork/app.config b/NodeNetwork/app.config
index b0980b3..4cbde06 100644
--- a/NodeNetwork/app.config
+++ b/NodeNetwork/app.config
@@ -24,12 +24,20 @@
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/NodeNetwork/packages.config b/NodeNetwork/packages.config
index a3a5112..2dfd258 100644
--- a/NodeNetwork/packages.config
+++ b/NodeNetwork/packages.config
@@ -1,26 +1,30 @@
-
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/NodeNetworkTests/NodeNetworkTests.csproj b/NodeNetworkTests/NodeNetworkTests.csproj
index 9fbaedd..3f3eaf5 100644
--- a/NodeNetworkTests/NodeNetworkTests.csproj
+++ b/NodeNetworkTests/NodeNetworkTests.csproj
@@ -73,10 +73,10 @@
- 6.12.9
+ 6.13.9
- 4.1.5
+ 4.1.6
1.4.0
@@ -85,10 +85,10 @@
1.4.0
- 9.19.5
+ 10.3.6
- 4.1.5
+ 4.1.6
diff --git a/NodeNetworkTests/ReactiveExtensionsTests.cs b/NodeNetworkTests/ReactiveExtensionsTests.cs
index 9a6d6e6..d18b16b 100644
--- a/NodeNetworkTests/ReactiveExtensionsTests.cs
+++ b/NodeNetworkTests/ReactiveExtensionsTests.cs
@@ -53,123 +53,6 @@ public void TestThrottleWhen()
ReactiveAssert.AreElementsEqual(expected, actual.Messages);
}
- [TestMethod]
- public void TestObserveEach()
- {
- //Setup
- var scheduler = new TestScheduler();
- var dummy1 = new DummyTestingClass { Identifier = "A" };
- var dummy2 = new DummyTestingClass { Identifier = "B" };
- ReactiveList list = new ReactiveList
- {
- dummy1
- };
-
- //Define actions
- scheduler.Schedule(TimeSpan.FromTicks(10), () => dummy1.TestObservable.OnNext("First test event"));
- scheduler.Schedule(TimeSpan.FromTicks(20), () => list.Add(dummy2));
- scheduler.Schedule(TimeSpan.FromTicks(30), () => dummy2.TestObservable.OnNext("Second test event"));
- scheduler.Schedule(TimeSpan.FromTicks(40), () => list.Remove(list[0]));
- scheduler.Schedule(TimeSpan.FromTicks(50), () => dummy1.TestObservable.OnNext("Third test event"));
- scheduler.Schedule(TimeSpan.FromTicks(60), () => list.Remove(list[0]));
- var actual = scheduler.Start(() => list.ObserveEach(d => d.TestObservable), created: 0, subscribed: 0, disposed: 100);
-
- //Assert
- var expected = new[]
- {
- ReactiveTest.OnNext(10, (dummy1, "First test event")),
- ReactiveTest.OnNext(30, (dummy2, "Second test event"))
- };
- ReactiveAssert.AreElementsEqual(expected, actual.Messages);
- }
-
- [TestMethod]
- public void TestObserveEachDelayedAdd()
- {
- //Setup
- var scheduler = new TestScheduler();
- var dummy1 = new DummyTestingClass { Identifier = "A" };
- var dummy2 = new DummyTestingClass { Identifier = "B" };
- ReactiveList list = new ReactiveList();
- var observable = list.ObserveEach(d => d.TestObservable);
- list.Add(dummy1);
-
- //Define actions
- scheduler.Schedule(TimeSpan.FromTicks(10), () => dummy1.TestObservable.OnNext("First test event"));
- var actual = scheduler.Start(() => observable, created: 0, subscribed: 0, disposed: 100);
-
- //Assert
- var expected = new[]
- {
- ReactiveTest.OnNext(10, (dummy1, "First test event"))
- };
- ReactiveAssert.AreElementsEqual(expected, actual.Messages);
- }
-
- [TestMethod]
- public void TestObserveEachDelayedRemove()
- {
- //Setup
- var scheduler = new TestScheduler();
- var dummy1 = new DummyTestingClass { Identifier = "A" };
- var dummy2 = new DummyTestingClass { Identifier = "B" };
- ReactiveList list = new ReactiveList { dummy1 };
- var observable = list.ObserveEach(d => d.TestObservable);
- list.Remove(dummy1);
-
- //Define actions
- scheduler.Schedule(TimeSpan.FromTicks(10), () => dummy1.TestObservable.OnNext("First test event"));
- var actual = scheduler.Start(() => observable, created: 0, subscribed: 0, disposed: 100);
-
- //Assert
- Assert.IsTrue(actual.Messages.Count == 0);
- }
-
- [TestMethod]
- public void TestObserveEachSuppressedClear()
- {
- //Setup
- var scheduler = new TestScheduler();
- var dummy1 = new DummyTestingClass { Identifier = "A" };
- var dummy2 = new DummyTestingClass { Identifier = "B" };
- ReactiveList list = new ReactiveList
- {
- dummy1
- };
-
- //Define actions
- scheduler.Schedule(TimeSpan.FromTicks(10), () =>
- {
- using (list.SuppressChangeNotifications())
- {
- list.Clear();
- }
- });
- scheduler.Schedule(TimeSpan.FromTicks(20), () => dummy1.TestObservable.OnNext("First test event"));
- var actual = scheduler.Start(() => list.ObserveEach(d => d.TestObservable), created: 0, subscribed: 0, disposed: 100);
-
- //Assert
- Assert.IsTrue(actual.Messages.Count == 0);
- }
-
- [TestMethod]
- public void TestObserveLatestToList()
- {
- var a = new ReactiveList();
- var list = a.ObserveLatestToList(d => d.TestObservable, _ => true).List;
-
- var dummy = new DummyTestingClass();
-
- CollectionAssert.AreEqual(new string[0], list.ToArray());
- a.Add(dummy);
- dummy.TestObservable.OnNext("A");
- CollectionAssert.AreEqual(new[] { "A" }, list.ToArray());
- dummy.TestObservable.OnNext("B");
- CollectionAssert.AreEqual(new[] { "B" }, list.ToArray());
- a.Remove(dummy);
- CollectionAssert.AreEqual(new string[0], list.ToArray());
- }
-
class DummyTestingClass : ReactiveObject
{
public string Identifier { get; set; }
diff --git a/NodeNetworkToolkit/NodeNetworkToolkit.csproj b/NodeNetworkToolkit/NodeNetworkToolkit.csproj
index 93e623f..701c9ae 100644
--- a/NodeNetworkToolkit/NodeNetworkToolkit.csproj
+++ b/NodeNetworkToolkit/NodeNetworkToolkit.csproj
@@ -35,23 +35,29 @@
true
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\ReactiveUI.WPF.9.19.5\lib\net461\ReactiveUI.WPF.dll
+
+ ..\packages\ReactiveUI.WPF.10.3.6\lib\net461\ReactiveUI.WPF.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
@@ -60,38 +66,45 @@
True
True
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
- ..\packages\System.Reactive.Core.4.1.5\lib\net46\System.Reactive.Core.dll
+ ..\packages\System.Reactive.Core.4.1.6\lib\net46\System.Reactive.Core.dll
- ..\packages\System.Reactive.Experimental.4.1.5\lib\net46\System.Reactive.Experimental.dll
+ ..\packages\System.Reactive.Experimental.4.1.6\lib\net46\System.Reactive.Experimental.dll
- ..\packages\System.Reactive.Interfaces.4.1.5\lib\net46\System.Reactive.Interfaces.dll
+ ..\packages\System.Reactive.Interfaces.4.1.6\lib\net46\System.Reactive.Interfaces.dll
- ..\packages\System.Reactive.Linq.4.1.5\lib\net46\System.Reactive.Linq.dll
+ ..\packages\System.Reactive.Linq.4.1.6\lib\net46\System.Reactive.Linq.dll
- ..\packages\System.Reactive.PlatformServices.4.1.5\lib\net46\System.Reactive.PlatformServices.dll
+ ..\packages\System.Reactive.PlatformServices.4.1.6\lib\net46\System.Reactive.PlatformServices.dll
- ..\packages\System.Reactive.Providers.4.1.5\lib\net46\System.Reactive.Providers.dll
+ ..\packages\System.Reactive.Providers.4.1.6\lib\net46\System.Reactive.Providers.dll
- ..\packages\System.Reactive.Runtime.Remoting.4.1.5\lib\net46\System.Reactive.Runtime.Remoting.dll
+ ..\packages\System.Reactive.Runtime.Remoting.4.1.6\lib\net46\System.Reactive.Runtime.Remoting.dll
- ..\packages\System.Reactive.Windows.Forms.4.1.5\lib\net46\System.Reactive.Windows.Forms.dll
+ ..\packages\System.Reactive.Windows.Forms.4.1.6\lib\net46\System.Reactive.Windows.Forms.dll
- ..\packages\System.Reactive.Windows.Threading.4.1.5\lib\net46\System.Reactive.Windows.Threading.dll
+ ..\packages\System.Reactive.Windows.Threading.4.1.6\lib\net46\System.Reactive.Windows.Threading.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll
diff --git a/NodeNetworkToolkit/app.config b/NodeNetworkToolkit/app.config
index b0980b3..4cbde06 100644
--- a/NodeNetworkToolkit/app.config
+++ b/NodeNetworkToolkit/app.config
@@ -24,12 +24,20 @@
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/NodeNetworkToolkit/packages.config b/NodeNetworkToolkit/packages.config
index 73401de..d9115dd 100644
--- a/NodeNetworkToolkit/packages.config
+++ b/NodeNetworkToolkit/packages.config
@@ -1,23 +1,27 @@
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/StressTest/App.config b/StressTest/App.config
index 2d4ef9d..b333bb3 100644
--- a/StressTest/App.config
+++ b/StressTest/App.config
@@ -23,12 +23,20 @@
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/StressTest/StressTest.csproj b/StressTest/StressTest.csproj
index 2d96195..d170d9a 100644
--- a/StressTest/StressTest.csproj
+++ b/StressTest/StressTest.csproj
@@ -34,59 +34,72 @@
4
-
- ..\packages\DynamicData.6.12.9\lib\net461\DynamicData.dll
+
+ ..\packages\DynamicData.6.13.9\lib\net461\DynamicData.dll
-
- ..\packages\ReactiveUI.9.19.5\lib\net461\ReactiveUI.dll
+
+ ..\packages\ReactiveUI.10.3.6\lib\net461\ReactiveUI.dll
-
- ..\packages\ReactiveUI.WPF.9.19.5\lib\net461\ReactiveUI.WPF.dll
+
+ ..\packages\ReactiveUI.WPF.10.3.6\lib\net461\ReactiveUI.WPF.dll
-
- ..\packages\Splat.8.0.5\lib\net461\Splat.dll
+
+ ..\packages\Splat.9.0.5\lib\net461\Splat.dll
+
+
+ ..\packages\Splat.Drawing.9.0.5\lib\net461\Splat.Drawing.dll
-
- ..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+ ..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.6.0\lib\netstandard2.0\System.Collections.Immutable.dll
..\packages\System.Drawing.Primitives.4.3.0\lib\net45\System.Drawing.Primitives.dll
+
+ ..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
- ..\packages\System.Reactive.4.1.5\lib\net46\System.Reactive.dll
+ ..\packages\System.Reactive.4.1.6\lib\net46\System.Reactive.dll
- ..\packages\System.Reactive.Core.4.1.5\lib\net46\System.Reactive.Core.dll
+ ..\packages\System.Reactive.Core.4.1.6\lib\net46\System.Reactive.Core.dll
- ..\packages\System.Reactive.Experimental.4.1.5\lib\net46\System.Reactive.Experimental.dll
+ ..\packages\System.Reactive.Experimental.4.1.6\lib\net46\System.Reactive.Experimental.dll
- ..\packages\System.Reactive.Interfaces.4.1.5\lib\net46\System.Reactive.Interfaces.dll
+ ..\packages\System.Reactive.Interfaces.4.1.6\lib\net46\System.Reactive.Interfaces.dll
- ..\packages\System.Reactive.Linq.4.1.5\lib\net46\System.Reactive.Linq.dll
+ ..\packages\System.Reactive.Linq.4.1.6\lib\net46\System.Reactive.Linq.dll
- ..\packages\System.Reactive.PlatformServices.4.1.5\lib\net46\System.Reactive.PlatformServices.dll
+ ..\packages\System.Reactive.PlatformServices.4.1.6\lib\net46\System.Reactive.PlatformServices.dll
- ..\packages\System.Reactive.Providers.4.1.5\lib\net46\System.Reactive.Providers.dll
+ ..\packages\System.Reactive.Providers.4.1.6\lib\net46\System.Reactive.Providers.dll
- ..\packages\System.Reactive.Runtime.Remoting.4.1.5\lib\net46\System.Reactive.Runtime.Remoting.dll
+ ..\packages\System.Reactive.Runtime.Remoting.4.1.6\lib\net46\System.Reactive.Runtime.Remoting.dll
- ..\packages\System.Reactive.Windows.Forms.4.1.5\lib\net46\System.Reactive.Windows.Forms.dll
+ ..\packages\System.Reactive.Windows.Forms.4.1.6\lib\net46\System.Reactive.Windows.Forms.dll
- ..\packages\System.Reactive.Windows.Threading.4.1.5\lib\net46\System.Reactive.Windows.Threading.dll
+ ..\packages\System.Reactive.Windows.Threading.4.1.6\lib\net46\System.Reactive.Windows.Threading.dll
-
- ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll
diff --git a/StressTest/packages.config b/StressTest/packages.config
index 73401de..d9115dd 100644
--- a/StressTest/packages.config
+++ b/StressTest/packages.config
@@ -1,23 +1,27 @@
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file