From e75d4bf9ff00260cab50eedccbaf9ceba5ead389 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 11:12:42 -0400 Subject: [PATCH 01/18] add mac exe shim --- run | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/run b/run index fce5fb9..47808e9 100755 --- a/run +++ b/run @@ -1,7 +1,13 @@ #!/bin/bash +# Thanks, mac OS -.- +function exe_shim() { + if [ "$(uname)" == "Darwin" ]; then + echo "mono " + fi +} -PAKET="./.paket/paket.exe" +PAKET="${exe_shim} ./.paket/paket.exe" FAKE="packages/build/FAKE/tools/FAKE.exe" EXAMPLES_PROJ="examples/Examples.fsproj" @@ -57,7 +63,7 @@ function __run { wget https://github.com/fsprojects/Paket/releases/download/5.156.0/paket.bootstrapper.exe \ && chmod +x paket.bootstrapper.exe \ - && ./paket.bootstrapper.exe \ + && ${exe_shim} ./paket.bootstrapper.exe \ && chmod +x paket.exe ;; From 6a40dd0ed20a5d28a4d5237532e72351eec6e717 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 11:28:59 -0400 Subject: [PATCH 02/18] require mac to pass for build to pass --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 9085b60..63f03ce 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,7 +3,7 @@ language: csharp matrix: allow_failures: - - os: osx + # - os: osx include: - os: linux From 0c9728e82fe7d0c30dd6219bb8e9463312eaebea Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 11:55:24 -0400 Subject: [PATCH 03/18] bash better --- run | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/run b/run index 47808e9..af4ac1a 100755 --- a/run +++ b/run @@ -1,13 +1,14 @@ #!/bin/bash - # Thanks, mac OS -.- -function exe_shim() { +function __exe_shim { if [ "$(uname)" == "Darwin" ]; then echo "mono " fi + + echo "" } -PAKET="${exe_shim} ./.paket/paket.exe" +PAKET="$(__exe_shim) ./.paket/paket.exe" FAKE="packages/build/FAKE/tools/FAKE.exe" EXAMPLES_PROJ="examples/Examples.fsproj" @@ -31,7 +32,7 @@ function __run { # echo "args: $arguments" case $given_command in - p) ${PAKET} $arguments;; + p) echo ": $PAKET :" && ${PAKET} $arguments;; dn) dotnet $arguments;; paket) ${PAKET} $arguments;; fake) ${FAKE} $arguments Fake.fsx;; From bdd9122636591cca15fe88ba620a70d908328485 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 13:16:45 -0400 Subject: [PATCH 04/18] update deps --- paket.dependencies | 2 +- paket.lock | 55 +++++++++++++++++++++++++--------------------- 2 files changed, 31 insertions(+), 26 deletions(-) diff --git a/paket.dependencies b/paket.dependencies index 72027ad..fbd3486 100644 --- a/paket.dependencies +++ b/paket.dependencies @@ -1,7 +1,7 @@ source https://www.nuget.org/api/v2 nuget Chessie 0.6.0 nuget Colorful.Console 1.2.6 -nuget CryptoExchangeClient 0.4.0 +nuget CryptoExchangeClient 0.3.0 nuget Expecto nuget FSharp.Core 4.3.4 nuget FSharp.Data 3.0.0-beta3 beta diff --git a/paket.lock b/paket.lock index 5f6b9f5..fbb3212 100644 --- a/paket.lock +++ b/paket.lock @@ -152,20 +152,20 @@ NUGET System.Threading.Timer (>= 4.0.1) System.Xml.ReaderWriter (>= 4.0.11) System.Xml.XDocument (>= 4.0.11) - Microsoft.NETCore.App (2.0.6) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.DotNetHostPolicy (>= 2.0.6) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.Platforms (>= 2.0.1) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.App (2.0.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.DotNetHostPolicy (>= 2.0.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.Platforms (>= 2.0.2) - restriction: >= netcoreapp2.0 NETStandard.Library (>= 2.0.1) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.DotNetAppHost (2.0.6) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.DotNetHostPolicy (2.0.6) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.DotNetHostResolver (>= 2.0.6) - Microsoft.NETCore.DotNetHostResolver (2.0.6) - restriction: >= netcoreapp2.0 - Microsoft.NETCore.DotNetAppHost (>= 2.0.6) - Microsoft.NETCore.Jit (2.0.6) - restriction: && (>= uap10.0) (< uap10.1) - Microsoft.NETCore.Platforms (2.0.1) - restriction: || (>= monoandroid) (>= xamarinios) + Microsoft.NETCore.DotNetAppHost (2.0.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.DotNetHostPolicy (2.0.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.DotNetHostResolver (>= 2.0.7) + Microsoft.NETCore.DotNetHostResolver (2.0.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.DotNetAppHost (>= 2.0.7) + Microsoft.NETCore.Jit (2.0.7) - restriction: && (>= uap10.0) (< uap10.1) + Microsoft.NETCore.Platforms (2.0.2) - restriction: || (>= monoandroid) (>= xamarinios) Microsoft.NETCore.Portable.Compatibility (1.0.2) - restriction: && (>= uap10.0) (< uap10.1) - Microsoft.NETCore.Runtime.CoreCLR (2.0.6) - restriction: && (>= uap10.0) (< uap10.1) - Microsoft.NETCore.Jit (>= 2.0.6) + Microsoft.NETCore.Runtime.CoreCLR (2.0.7) - restriction: && (>= uap10.0) (< uap10.1) + Microsoft.NETCore.Jit (>= 2.0.7) Microsoft.NETCore.Targets (2.0) - restriction: && (< net40) (>= netstandard2.0) Microsoft.NETCore.UniversalWindowsPlatform (6.0.8) - restriction: >= uap10.0 Microsoft.Net.Native.Compiler (>= 1.7.3) - restriction: < uap10.1 @@ -421,9 +421,9 @@ NUGET System.Threading (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.5) (< win8) (< wp8) (< wpa81)) System.Configuration.ConfigurationManager (4.4.1) - restriction: && (< net45) (>= netstandard2.0) System.Security.Cryptography.ProtectedData (>= 4.4) - restriction: || (&& (< net461) (>= netstandard2.0)) (>= netcoreapp2.0) - System.Console (4.3) - restriction: && (< net40) (>= netstandard2.0) + System.Console (4.3.1) - restriction: && (< net40) (>= netstandard2.0) Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) - Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1.2) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) @@ -766,7 +766,7 @@ NUGET System.Resources.ResourceManager (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8+wpa81) System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (< portable-net45+win8+wp8+wpa81) System.Threading (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8+wpa81) - System.Private.ServiceModel (4.4.1) - restriction: || (&& (>= netcoreapp2.0) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) (&& (< netstandard2.0) (>= uap10.0) (< uap10.1)) (&& (< portable-net45+win8+wp8) (>= uap10.0)) + System.Private.ServiceModel (4.4.2) - restriction: || (&& (>= netcoreapp2.0) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) (&& (< netstandard2.0) (>= uap10.0) (< uap10.1)) (&& (< portable-net45+win8+wp8) (>= uap10.0)) Microsoft.NETCore.Platforms (>= 2.0) NETStandard.Library (>= 1.6.1) - restriction: || (&& (>= netstandard1.3) (< netstandard2.0)) (< netstandard1.3) System.Collections.NonGeneric (>= 4.3) - restriction: || (&& (>= netstandard1.3) (< netstandard2.0)) (< netstandard1.3) @@ -1029,31 +1029,36 @@ NUGET System.Security.Principal (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) - System.ServiceModel.Duplex (4.4.1) - restriction: && (>= uap10.0) (< uap10.1) + System.ServiceModel.Duplex (4.4.2) - restriction: && (>= uap10.0) (< uap10.1) NETStandard.Library (>= 1.6.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8) - System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (< portable-net45+win8) + System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8) + System.Private.ServiceModel (>= 4.4.2) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) System.ServiceModel.Primitives (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (< net45) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (< portable-net45+win8) - System.ServiceModel.Http (4.4.1) - restriction: && (>= uap10.0) (< uap10.1) + System.ServiceModel.Http (4.4.2) - restriction: && (>= uap10.0) (< uap10.1) NETStandard.Library (>= 1.6.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) System.Net.WebHeaderCollection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8) - System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.2) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) System.Runtime.Serialization.Xml (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8+wp8) System.ServiceModel.Primitives (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (< net45) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) - System.ServiceModel.NetTcp (4.4.1) - restriction: && (>= uap10.0) (< uap10.1) + System.ServiceModel.NetTcp (4.4.2) - restriction: && (>= uap10.0) (< uap10.1) NETStandard.Library (>= 1.6.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8) - System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (< portable-net45+win8) + System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8) + System.Private.ServiceModel (>= 4.4.2) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) System.Runtime.Serialization.Xml (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8) System.ServiceModel.Primitives (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (< net45) (>= netstandard2.0)) (&& (>= net46) (< netstandard2.0)) (>= net461) (>= netcoreapp2.0) (< portable-net45+win8) - System.ServiceModel.Primitives (4.4.1) - restriction: || (&& (>= net461) (>= uap10.0)) (&& (>= netcoreapp2.0) (>= uap10.0)) (&& (< netstandard1.3) (>= uap10.0) (< win8)) (&& (>= netstandard2.0) (>= uap10.0)) (&& (< netstandard2.0) (>= uap10.0) (< uap10.1)) (&& (< portable-net45+win8) (>= uap10.0)) (&& (< portable-net45+win8+wp8) (>= uap10.0)) + System.ServiceModel.Primitives (4.4.2) - restriction: || (&& (>= net461) (>= uap10.0)) (&& (>= netcoreapp2.0) (>= uap10.0)) (&& (< netstandard1.3) (>= uap10.0) (< win8)) (&& (>= netstandard2.0) (>= uap10.0)) (&& (< netstandard2.0) (>= uap10.0) (< uap10.1)) (&& (< portable-net45+win8) (>= uap10.0)) (&& (< portable-net45+win8+wp8) (>= uap10.0)) NETStandard.Library (>= 1.6.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= net46) (< net461) (< netstandard2.0)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) System.ComponentModel.EventBasedAsync (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) - System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.2) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) System.Runtime.Serialization.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) System.Runtime.Serialization.Xml (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) System.Security.Principal (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8+wp8) - System.ServiceModel.Security (4.4.1) - restriction: && (>= uap10.0) (< uap10.1) + System.ServiceModel.Security (4.4.2) - restriction: && (>= uap10.0) (< uap10.1) NETStandard.Library (>= 1.6.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) - System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (< portable-net45+win8+wp8) + System.Private.ServiceModel (>= 4.4.2) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) System.Runtime.Serialization.Xml (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (< portable-net45+win8+wp8) System.ServiceModel.Primitives (>= 4.4.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8)) (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) (&& (>= netstandard1.0) (< portable-net45+win8) (< wp8)) (< portable-net45+win8+wp8) System.Text.Encoding (4.3) - restriction: || (&& (< net45) (< netstandard1.2) (>= netstandard1.4) (< win8)) (&& (< net45) (< netstandard1.3) (>= netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.4) (< portable-net45+win8+wpa81)) (&& (< netstandard1.5) (>= uap10.0) (< uap10.1)) From 5052b88d3630a1df54cb303212697a9d321c9a08 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 13:22:35 -0400 Subject: [PATCH 05/18] oops --- run | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/run b/run index af4ac1a..aa26b84 100755 --- a/run +++ b/run @@ -64,7 +64,7 @@ function __run { wget https://github.com/fsprojects/Paket/releases/download/5.156.0/paket.bootstrapper.exe \ && chmod +x paket.bootstrapper.exe \ - && ${exe_shim} ./paket.bootstrapper.exe \ + && ${__exe_shim} ./paket.bootstrapper.exe \ && chmod +x paket.exe ;; From fd007e7eb8b3ae3ae15ef5352eaadc353246412b Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 13:30:04 -0400 Subject: [PATCH 06/18] eh --- run | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/run b/run index aa26b84..259d463 100755 --- a/run +++ b/run @@ -62,9 +62,13 @@ function __run { cd .paket \ rm paket.exe paket.bootstrapper* \ + local exeshim=__exe_shim + + echo "shim: $exeshim" + wget https://github.com/fsprojects/Paket/releases/download/5.156.0/paket.bootstrapper.exe \ && chmod +x paket.bootstrapper.exe \ - && ${__exe_shim} ./paket.bootstrapper.exe \ + && ${exeshim} ./paket.bootstrapper.exe \ && chmod +x paket.exe ;; From 3fa40c9e49bdbe742469af89507fad1cf075b6b1 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 14:10:03 -0400 Subject: [PATCH 07/18] blegh --- run | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/run b/run index 259d463..a9259f8 100755 --- a/run +++ b/run @@ -51,6 +51,11 @@ function __run { dotnet build $arguments ;; + rebuild) + ( ./run clean:all ) && \ + ( ./run build ) + ;; + clean:all) echo "Cleaning..." # Don't name any folders bin or obj From b79983cf4ba2e44a383661fc70308c8974431066 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 16:51:08 -0400 Subject: [PATCH 08/18] loosen deps --- paket.dependencies | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/paket.dependencies b/paket.dependencies index fbd3486..0fe299b 100644 --- a/paket.dependencies +++ b/paket.dependencies @@ -1,18 +1,18 @@ source https://www.nuget.org/api/v2 -nuget Chessie 0.6.0 -nuget Colorful.Console 1.2.6 -nuget CryptoExchangeClient 0.3.0 +nuget Chessie ~> 0.6 +nuget Colorful.Console ~> 1.2 +nuget CryptoExchangeClient ~> 0.3 nuget Expecto -nuget FSharp.Core 4.3.4 -nuget FSharp.Data 3.0.0-beta3 beta -nuget FSharp.Json 0.3.3 +nuget FSharp.Core ~> 4.3 +nuget FSharp.Data ~> 3.0.0-beta3 beta +nuget FSharp.Json ~> 0.3 clitool Microsoft.DotNet.Watcher.Tools -nuget Microsoft.NET.Test.Sdk 15.3.0-preview-20170628-02 preview -nuget Paket 5.156.0 -nuget Rationals 1.3.1 -nuget RestSharp 106.3.0-alpha0018 alpha -nuget SocketLite.PCL 4.2.1 -nuget WebsocketClientLite.PCL 4.2.5 -nuget xunit 2.2.0 -nuget xunit.runner.visualstudio 2.2.0 +nuget Microsoft.NET.Test.Sdk ~> 15.3.0-preview-20170628-02 preview +nuget Paket ~> 5.156 +nuget Rationals ~> 1.3 +nuget RestSharp ~> 106.3.0-alpha0018 alpha +nuget SocketLite.PCL ~> 4.2 +nuget WebsocketClientLite.PCL ~> 4.2 +nuget xunit ~> 2.2 +nuget xunit.runner.visualstudio ~> 2.2 nuget YoloDev.Expecto.TestSdk From f16f05c6a2f08f68798646ec5bb36d38cf699f1f Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 17:00:43 -0400 Subject: [PATCH 09/18] back to 16.04 --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 63f03ce..911a593 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,8 +7,8 @@ matrix: include: - os: linux - # dist: xenial # 16.04 - dist: trusty # 14.04 + dist: xenial # 16.04 + # dist: trusty # 14.04 sudo: required dotnet: 2.1.104 From 41e302a634c9cd2987c0a38f42b4fc0478fdd4ca Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 17:29:01 -0400 Subject: [PATCH 10/18] restore everything? --- .travis.yml | 2 +- src/CryptoExchangeClient.fsproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 911a593..b47c64e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,5 +22,5 @@ before_script: - bash -c "./run init" script: - - bash -c "./run test:restore" + - bash -c "./run restore" - bash -c "./run test" diff --git a/src/CryptoExchangeClient.fsproj b/src/CryptoExchangeClient.fsproj index 8aa5d88..e453e04 100644 --- a/src/CryptoExchangeClient.fsproj +++ b/src/CryptoExchangeClient.fsproj @@ -8,7 +8,7 @@ https://github.com/NullVoxPopuli/CryptoExchangeClient/blob/master/LICENSE Clients for multiple cryptocurrency exchanges. All clients have a shared interface for common actions. - cryptocurrency, blockchain, rest, websocket, api, client, crypto, bitcoin, exchange + cryptocurrency, blockchain, rest, websocket, api, client, crypto, bitcoin, exchange, ethereum true From a66d9bbf1be0a05b86405cde73275e2fda65adfc Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 17:59:04 -0400 Subject: [PATCH 11/18] add apt packages --- .travis.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.travis.yml b/.travis.yml index b47c64e..521b595 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,14 @@ language: csharp # mono: none +addons: + apt: + sources: + - sourceline: 'deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main' + key_url: 'https://packages.microsoft.com/keys/microsoft.asc' + packages: + - aspnetcore-store-2.0.6 + - aspnetcore-store-2.0.7 + - aspnetcore-runtime-2.1.0-preview2-final matrix: allow_failures: From f79e31e1b6d8b0084da324fd2c4c88d03d2ce514 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Wed, 18 Apr 2018 18:15:29 -0400 Subject: [PATCH 12/18] Remove globals.json.. .cause ci is failing --- global.json => global.json.bak | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename global.json => global.json.bak (100%) diff --git a/global.json b/global.json.bak similarity index 100% rename from global.json rename to global.json.bak From 164a9286f136f93cf2d972d3279e6c56853b082e Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Sun, 22 Apr 2018 18:38:08 -0400 Subject: [PATCH 13/18] eh --- .travis.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.travis.yml b/.travis.yml index 521b595..6335555 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,15 +1,15 @@ language: csharp -# mono: none -addons: - apt: - sources: - - sourceline: 'deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main' - key_url: 'https://packages.microsoft.com/keys/microsoft.asc' - packages: - - aspnetcore-store-2.0.6 - - aspnetcore-store-2.0.7 - - aspnetcore-runtime-2.1.0-preview2-final - +mono: none +# addons: +# apt: +# sources: +# - sourceline: 'deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main' +# key_url: 'https://packages.microsoft.com/keys/microsoft.asc' +# packages: +# - aspnetcore-store-2.0.6 +# - aspnetcore-store-2.0.7 +# - aspnetcore-runtime-2.1.0-preview2-final +# matrix: allow_failures: # - os: osx From e8c6c539a4075318e87b5503059658c895375c59 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Sun, 22 Apr 2018 18:57:07 -0400 Subject: [PATCH 14/18] eh --- .travis.yml | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6335555..12f30f9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,15 +1,5 @@ language: csharp -mono: none -# addons: -# apt: -# sources: -# - sourceline: 'deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main' -# key_url: 'https://packages.microsoft.com/keys/microsoft.asc' -# packages: -# - aspnetcore-store-2.0.6 -# - aspnetcore-store-2.0.7 -# - aspnetcore-runtime-2.1.0-preview2-final -# + matrix: allow_failures: # - os: osx @@ -22,9 +12,9 @@ matrix: dotnet: 2.1.104 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version - - os: osx # OSX 10.13 - osx_image: xcode9.3 - dotnet: 2.1.104 + # - os: osx # OSX 10.13 + # osx_image: xcode9.3 + # dotnet: 2.1.104 before_script: - uname -a From 3008fc1a590010b1c59f5a5d8233c20257fb8d90 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Mon, 23 Apr 2018 06:57:34 -0400 Subject: [PATCH 15/18] support docker --- .dockerignore | 6 ++++++ Dockerfile | 42 ++++++++++++++++++++++++++++++++++++++++++ docker-compose.yml | 9 +++++++++ docko | 40 ++++++++++++++++++++++++++++++++++++++++ run | 11 +++++++---- 5 files changed, 104 insertions(+), 4 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100755 docko diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..603ad01 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +**/obj/ +**/bin/ +packages/ +paket-files +.git +.paket/*.exe diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6bdb5c0 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,42 @@ +# TODO: publish this dev image +FROM microsoft/dotnet:2.0.7-sdk-2.1.105 AS dev-env +WORKDIR /app + +RUN echo \ + && apt update \ + && apt install -y apt-transport-https + +# MONO + +# https://unix.stackexchange.com/a/253476/45041 +RUN echo \ + && export CODENAME="$(dpkg --status tzdata|grep Provides|cut -f2 -d'-')" \ + && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF \ + && echo "deb https://download.mono-project.com/repo/ubuntu stable-$CODENAME main" | tee /etc/apt/sources.list.d/mono-official-stable.list \ + && apt update \ + && apt install -y mono-complete + +# PAKET + +ENV PAKET_VERSION 5.156.0 +ENV PAKET "mono /app/.paket/paket.exe" + +COPY . ./ +RUN echo \ + && cd /app/.paket \ + && wget https://github.com/fsprojects/Paket/releases/download/$PAKET_VERSION/paket.bootstrapper.exe \ + && chmod +x ./paket.bootstrapper.exe \ + && mono ./paket.bootstrapper.exe \ + && chmod +x ./paket.exe \ + && ${PAKET} restore + + +FROM microsoft/dotnet:2.0.7-sdk-2.1.105 AS build-env +# TODO.. + + +# Build runtime image +FROM microsoft/aspnetcore:2.0 AS release +WORKDIR /app +COPY --from=build-env /app/out . +ENTRYPOINT ["dotnet", "aspnetapp.dll"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..42bf79b --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,9 @@ +version: '3.4' +services: + cec: + build: + context: . + dockerfile: Dockerfile + target: dev-env + volumes: + - .:/app diff --git a/docko b/docko new file mode 100755 index 0000000..feb92b0 --- /dev/null +++ b/docko @@ -0,0 +1,40 @@ +#!/bin/bash +# Thanks, mac OS -.- +PAKET="./.paket/paket.exe" +FAKE="packages/build/FAKE/tools/FAKE.exe" + +EXAMPLES_PROJ="examples/Examples.fsproj" +TEST_PROJ="tests/Test.CryptoExchangeClient/Test.CryptoExchangeClient.fsproj" +SRC_PROJ="src/CryptoExchangeClient.fsproj" + +COMPOSE="docker-compose -f docker-compose.yml --project-directory . -p crypto-exchange-client" + +function __run { + + # First arg + given_command=$1 + # The rest of the args + arguments=${@:2} + + # For Sub-command redirection + sub_command=$2 + sub_arguments=${@:3} + + + # For debugging + # echo "cmd: $given_command" + # echo "args: $arguments" + + case $given_command in + bash) ${COMPOSE} run --rm cec bash;; + + *) + echo "forwarding to docker-compose" + ${COMPOSE} $@ + esac +} + +# Also allow non-sourced running +if [ $1 ]; then + __run $* +fi diff --git a/run b/run index a9259f8..fc39ad1 100755 --- a/run +++ b/run @@ -1,10 +1,13 @@ #!/bin/bash -# Thanks, mac OS -.- function __exe_shim { - if [ "$(uname)" == "Darwin" ]; then - echo "mono " - fi + . /etc/os-release + os_name="$ID" + # MacOS, non-ubuntu debian-based OSes + if [ "$(uname)" == "Darwin" ]; then echo "mono "; fi + if [ "$os_name" == "debian" ]; then echo "mono "; fi + + # Ubuntu / Windows echo "" } From cd591f4d3e48701475c6cd089b4245bdb32f2728 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Mon, 23 Apr 2018 07:00:12 -0400 Subject: [PATCH 16/18] travis docker? --- .travis.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.travis.yml b/.travis.yml index 12f30f9..86f82ac 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,15 @@ matrix: sudo: required dotnet: 2.1.104 + - os: linux + services: + - docker + before_script: + - ./docko build + + script: + - ./docko run --rm cec bash -c "./run test" + # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version # - os: osx # OSX 10.13 # osx_image: xcode9.3 From ac05e276fba1cab873c5980ac68708b235cf3a2a Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Mon, 23 Apr 2018 07:35:50 -0400 Subject: [PATCH 17/18] re-enable osx... but maybe give up on trying to fix it --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 86f82ac..310772f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ language: csharp matrix: allow_failures: - # - os: osx + - os: osx include: - os: linux @@ -21,9 +21,9 @@ matrix: - ./docko run --rm cec bash -c "./run test" # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version - # - os: osx # OSX 10.13 - # osx_image: xcode9.3 - # dotnet: 2.1.104 + - os: osx # OSX 10.13 + osx_image: xcode9.3 + dotnet: 2.1.104 before_script: - uname -a From 2badf8c452b331c26eb1945aeab9333fc1767422 Mon Sep 17 00:00:00 2001 From: Preston Sego Date: Mon, 23 Apr 2018 08:25:28 -0400 Subject: [PATCH 18/18] change dotnet target OS --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 310772f..be8eb26 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,8 +6,8 @@ matrix: include: - os: linux - dist: xenial # 16.04 - # dist: trusty # 14.04 + # dist: xenial # 16.04 + dist: trusty # 14.04 sudo: required dotnet: 2.1.104