diff --git a/src/GWallet.Backend/GWallet.Backend-legacy.fsproj b/src/GWallet.Backend/GWallet.Backend-legacy.fsproj index 7f6b17334..113eb8d30 100644 --- a/src/GWallet.Backend/GWallet.Backend-legacy.fsproj +++ b/src/GWallet.Backend/GWallet.Backend-legacy.fsproj @@ -149,8 +149,20 @@ ..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll - - ..\..\packages\SharpRaven.2.4.0\lib\net45\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll @@ -176,10 +188,10 @@ ..\..\packages\NBitcoin.6.0.17\lib\net461\NBitcoin.dll - ..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + ..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll - ..\..\packages\System.IO.Pipelines.8.0.0\lib\net462\System.IO.Pipelines.dll + ..\..\packages\System.IO.Pipelines.8.0.0\lib\netstandard2.0\System.IO.Pipelines.dll diff --git a/src/GWallet.Backend/GWallet.Backend.fsproj b/src/GWallet.Backend/GWallet.Backend.fsproj index 75e953bc2..78aa5ac53 100644 --- a/src/GWallet.Backend/GWallet.Backend.fsproj +++ b/src/GWallet.Backend/GWallet.Backend.fsproj @@ -71,9 +71,6 @@ - - - @@ -83,8 +80,6 @@ - - - + diff --git a/src/GWallet.Backend/Infrastructure.fs b/src/GWallet.Backend/Infrastructure.fs index 852d4e338..e8f0642e6 100644 --- a/src/GWallet.Backend/Infrastructure.fs +++ b/src/GWallet.Backend/Infrastructure.fs @@ -6,8 +6,7 @@ open System.Text open System.Diagnostics open System.Runtime.Serialization -open SharpRaven -open SharpRaven.Data +open Sentry open GWallet.Backend.FSharpUtil.UwpHacks @@ -23,7 +22,7 @@ module Infrastructure = let md5 = System.Security.Cryptography.MD5.Create() let private sentryUrl = "https://4d1c6170ee37412fab20f8c63a2ade24:fc5e2c50990e48929d190fc283513f87@sentry.io/187797" - let private ravenClient = RavenClient(sentryUrl, Release = VersionHelper.CURRENT_VERSION) + let private sentryClient = new SentryClient(SentryOptions(Dsn = sentryUrl, Release = VersionHelper.CURRENT_VERSION)) let private captureLock = obj() let private GetTelemetryDir (meta: bool) = @@ -60,16 +59,9 @@ module Infrastructure = let private ReportInner (sentryEvent: SentryEvent) = try lock captureLock (fun _ -> - let mutable exceptionWhenReporting: Option = None - ravenClient.ErrorOnCapture <- - fun ex -> exceptionWhenReporting <- Some ex - ravenClient.Capture sentryEvent - |> ignore - match exceptionWhenReporting with - | Some ex -> - // strangely enough this cannot be raised (doesn't have any effect) in the delegate assigned to ErrorOnCapture - raise ex - | _ -> true + sentryClient.CaptureEvent sentryEvent + |> ignore + true ) with | ex -> @@ -99,15 +91,15 @@ module Infrastructure = let internal ReportMessage (message: string) #if DEBUG - (_ : ErrorLevel) + (_ : SentryLevel) #else - (errorLevel: ErrorLevel) + (errorLevel: SentryLevel) #endif : bool = #if DEBUG failwith message #else - let sentryEvent = SentryEvent(SentryMessage message, Level = errorLevel) + let sentryEvent = SentryEvent(Message = SentryMessage(Message = message), Level = Nullable errorLevel) ReportInner sentryEvent #endif @@ -116,13 +108,13 @@ module Infrastructure = SPrintF2 "Recovered exception details from off-line crash at %s UTC: %s" (marshalledEx.DateTimeUtc.ToString()) marshalledEx.FullDescription - ReportMessage exReport ErrorLevel.Fatal + ReportMessage exReport SentryLevel.Fatal let internal ReportError (errorMessage: string): bool = - ReportMessage errorMessage ErrorLevel.Error + ReportMessage errorMessage SentryLevel.Error let private Report (ex: Exception) - (errorLevel: ErrorLevel) + (errorLevel: SentryLevel) : bool = // TODO: log this in a file (log4net?), as well as printing to the console, before sending to sentry @@ -131,16 +123,16 @@ module Infrastructure = Flush () #if DEBUG - if errorLevel = ErrorLevel.Error then + if errorLevel = SentryLevel.Error then raise ex false #else try - let ev = SentryEvent(ex, Level = errorLevel) + let ev = SentryEvent(ex, Level = Nullable errorLevel) ReportInner ev with | ex -> - if errorLevel = ErrorLevel.Error then + if errorLevel = SentryLevel.Error then reraise() //unreachable @@ -152,10 +144,10 @@ module Infrastructure = #endif let ReportWarning (ex: Exception): bool = - Report ex ErrorLevel.Warning + Report ex SentryLevel.Warning let ReportWarningMessage (warning: string): bool = - ReportMessage warning ErrorLevel.Warning + ReportMessage warning SentryLevel.Warning let LogOrReportCrash (ex: Exception) = #if !DEBUG @@ -164,7 +156,7 @@ module Infrastructure = #else let _reported = #endif - Report ex ErrorLevel.Fatal + Report ex SentryLevel.Fatal #if DEBUG |> ignore diff --git a/src/GWallet.Backend/packages.config b/src/GWallet.Backend/packages.config index 57f204703..55571ca51 100644 --- a/src/GWallet.Backend/packages.config +++ b/src/GWallet.Backend/packages.config @@ -8,6 +8,7 @@ + @@ -18,11 +19,13 @@ - + + + @@ -47,6 +50,7 @@ + @@ -62,6 +66,8 @@ + + diff --git a/src/GWallet.Frontend.Console/GWallet.Frontend.Console-legacy.fsproj b/src/GWallet.Frontend.Console/GWallet.Frontend.Console-legacy.fsproj index 0b2ce3521..061e98dd2 100644 --- a/src/GWallet.Frontend.Console/GWallet.Frontend.Console-legacy.fsproj +++ b/src/GWallet.Frontend.Console/GWallet.Frontend.Console-legacy.fsproj @@ -83,8 +83,23 @@ ..\..\packages\FSharp.Core.4.7.0\lib\net45\FSharp.Core.dll - - ..\..\packages\SharpRaven.2.4.0\lib\net471\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Text.Json.5.0.2\lib\net461\System.Text.Json.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll + + + ..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll diff --git a/src/GWallet.Frontend.Console/packages.config b/src/GWallet.Frontend.Console/packages.config index 5c6be0787..6dc025d4d 100644 --- a/src/GWallet.Frontend.Console/packages.config +++ b/src/GWallet.Frontend.Console/packages.config @@ -3,5 +3,6 @@ - + + diff --git a/src/GWallet.Frontend.ConsoleApp/App.config b/src/GWallet.Frontend.ConsoleApp/App.config index 1778ee567..4c222df37 100644 --- a/src/GWallet.Frontend.ConsoleApp/App.config +++ b/src/GWallet.Frontend.ConsoleApp/App.config @@ -14,6 +14,10 @@ + + + + diff --git a/src/GWallet.Frontend.XF.Android/GWallet.Frontend.XF.Android.fsproj b/src/GWallet.Frontend.XF.Android/GWallet.Frontend.XF.Android.fsproj index 7be4ac652..fda9dfacc 100644 --- a/src/GWallet.Frontend.XF.Android/GWallet.Frontend.XF.Android.fsproj +++ b/src/GWallet.Frontend.XF.Android/GWallet.Frontend.XF.Android.fsproj @@ -337,8 +337,23 @@ ..\..\packages\Newtonsoft.Json.13.0.2\lib\netstandard2.0\Newtonsoft.Json.dll - - ..\..\packages\SharpRaven.2.4.0\lib\netstandard2.0\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Text.Json.5.0.2\lib\net461\System.Text.Json.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll True diff --git a/src/GWallet.Frontend.XF.Android/packages.config b/src/GWallet.Frontend.XF.Android/packages.config index ed414b2f5..8cbb98229 100644 --- a/src/GWallet.Frontend.XF.Android/packages.config +++ b/src/GWallet.Frontend.XF.Android/packages.config @@ -19,7 +19,7 @@ - + diff --git a/src/GWallet.Frontend.XF.Gtk/GWallet.Frontend.XF.Gtk.fsproj b/src/GWallet.Frontend.XF.Gtk/GWallet.Frontend.XF.Gtk.fsproj index 52f892ff8..53f3d0840 100644 --- a/src/GWallet.Frontend.XF.Gtk/GWallet.Frontend.XF.Gtk.fsproj +++ b/src/GWallet.Frontend.XF.Gtk/GWallet.Frontend.XF.Gtk.fsproj @@ -76,8 +76,23 @@ ..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll - - ..\..\packages\SharpRaven.2.4.0\lib\net45\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Text.Json.5.0.2\lib\net461\System.Text.Json.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll diff --git a/src/GWallet.Frontend.XF.Gtk/packages.config b/src/GWallet.Frontend.XF.Gtk/packages.config index 1c71f0d3d..f4d3fdd97 100644 --- a/src/GWallet.Frontend.XF.Gtk/packages.config +++ b/src/GWallet.Frontend.XF.Gtk/packages.config @@ -17,7 +17,7 @@ - + diff --git a/src/GWallet.Frontend.XF.Mac/GWallet.Frontend.XF.Mac.fsproj b/src/GWallet.Frontend.XF.Mac/GWallet.Frontend.XF.Mac.fsproj index 5ac3645ff..dfc2c2003 100644 --- a/src/GWallet.Frontend.XF.Mac/GWallet.Frontend.XF.Mac.fsproj +++ b/src/GWallet.Frontend.XF.Mac/GWallet.Frontend.XF.Mac.fsproj @@ -71,14 +71,29 @@ ..\..\packages\System.Configuration.ConfigurationManager.4.4.0\lib\netstandard2.0\System.Configuration.ConfigurationManager.dll - - ..\..\packages\SharpRaven.2.4.0\lib\netstandard2.0\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Text.Json.5.0.2\lib\net461\System.Text.Json.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll ..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll - ..\..\packages\System.Memory.4.5.4\lib\netstandard2.0\System.Memory.dll + ..\..\packages\System.Memory.4.5.5\lib\netstandard2.0\System.Memory.dll ..\..\packages\System.Buffers.4.5.1\lib\netstandard2.0\System.Buffers.dll @@ -106,7 +121,7 @@ ..\..\packages\FSharp.Data.3.0.0\lib\netstandard2.0\FSharp.Data.dll - ..\..\packages\System.IO.Pipelines.4.5.3\lib\netstandard2.0\System.IO.Pipelines.dll + ..\..\packages\System.IO.Pipelines.8.0.0\lib\netstandard2.0\System.IO.Pipelines.dll ..\..\packages\ZXing.Net.Xamarin.3.0.0--date20220902-0549.git-462686e\lib\xamarinmac20\ZXingNetMobile.dll diff --git a/src/GWallet.Frontend.XF.Mac/packages.config b/src/GWallet.Frontend.XF.Mac/packages.config index 01e1ff1c8..e36ca10e3 100644 --- a/src/GWallet.Frontend.XF.Mac/packages.config +++ b/src/GWallet.Frontend.XF.Mac/packages.config @@ -17,7 +17,7 @@ - + diff --git a/src/GWallet.Frontend.XF.iOS/GWallet.Frontend.XF.iOS.fsproj b/src/GWallet.Frontend.XF.iOS/GWallet.Frontend.XF.iOS.fsproj index e56b07ff6..5bb871b3b 100644 --- a/src/GWallet.Frontend.XF.iOS/GWallet.Frontend.XF.iOS.fsproj +++ b/src/GWallet.Frontend.XF.iOS/GWallet.Frontend.XF.iOS.fsproj @@ -185,8 +185,23 @@ ..\..\packages\System.Configuration.ConfigurationManager.4.4.0\lib\netstandard2.0\System.Configuration.ConfigurationManager.dll - - ..\..\packages\SharpRaven.2.4.0\lib\netstandard2.0\SharpRaven.dll + + ..\..\packages\Sentry.4.0.3\lib\netstandard2.0\Sentry.dll + + + ..\..\packages\System.Text.Json.5.0.2\lib\net461\System.Text.Json.dll + + + ..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll + + + ..\..\packages\System.Text.Encodings.Web.5.0.1\lib\net461\System.Text.Encodings.Web.dll + + + ..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll ..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll diff --git a/src/GWallet.Frontend.XF.iOS/packages.config b/src/GWallet.Frontend.XF.iOS/packages.config index d5e66a030..eb0c63cfd 100644 --- a/src/GWallet.Frontend.XF.iOS/packages.config +++ b/src/GWallet.Frontend.XF.iOS/packages.config @@ -18,7 +18,7 @@ - +