diff --git a/.gitignore b/.gitignore
index db6c6a0..908e75f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -87,6 +87,7 @@ $tf/
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
+.idea/
# JustCode is a .NET coding addin-in
.JustCode
diff --git a/.travis.yml b/.travis.yml
index 4011c53..e3099e5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,9 @@
language: csharp
-mono: 5.2.0
-dotnet: 2.0.0
+dotnet: 2.1.402
+
+mono:
+ - 5.2.0
install:
- mozroots --import --sync
@@ -13,10 +15,10 @@ matrix:
- os: linux # Ubuntu 14.04
dist: trusty
sudo: required
- dotnet: 2.0.0
+ dotnet: 2.1.402
- os: osx # OSX 10.12
osx_image: xcode9.1
- dotnet: 2.0.0
+ dotnet: 2.1.402
dist: trusty
sudo: required
@@ -24,8 +26,8 @@ script:
- dotnet --info
- dotnet restore
- dotnet build -c Release
- - dotnet pack -c Release --include-symbols
+ - dotnet pack --no-build -c Release --include-symbols
branches:
except:
- - gh-pages
\ No newline at end of file
+ - gh-pages
diff --git a/appveyor.yml b/appveyor.yml
index a7db49e..4d915e4 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,12 +1,8 @@
-version: 5.0.1-aci-{build}
-
+image: Visual Studio 2017
build_script:
- - ps: dotnet --info
- - ps: dotnet restore
- - ps: dotnet build -c Release --version-suffix "aci-${env:APPVEYOR_BUILD_NUMBER}"
- - ps: dotnet pack -c Release --include-symbols --version-suffix "aci-${env:APPVEYOR_BUILD_NUMBER}"
-
-test: off
-
+- ps: |
+ .\build.ps1
+ if ($lastexitcode -ne 0){ exit $lastexitcode }
artifacts:
- - path: '**\*.nupkg'
+- path: bin\*.nupkg
+
diff --git a/build.ps1 b/build.ps1
new file mode 100644
index 0000000..4727667
--- /dev/null
+++ b/build.ps1
@@ -0,0 +1,20 @@
+[xml]$doc = Get-Content .\src\Directory.Build.props
+$version = $doc.Project.PropertyGroup.VersionPrefix # the version under development, update after a release
+$versionSuffix = '-build.0' # manually incremented for local builds
+
+function isVersionTag($tag){
+ $v = New-Object Version
+ [Version]::TryParse($tag, [ref]$v)
+}
+
+if ($env:appveyor){
+ $versionSuffix = '-build.' + $env:appveyor_build_number
+ if ($env:appveyor_repo_tag -eq 'true' -and (isVersionTag($env:appveyor_repo_tag_name))){
+ $version = $env:appveyor_repo_tag_name
+ $versionSuffix = ''
+ }
+ Update-AppveyorBuild -Version "$version$versionSuffix"
+}
+
+dotnet build -c Release Hephaestus.sln /p:Version=$version$versionSuffix
+dotnet pack --no-build -c Release src/Hephaestus /p:Version=$version$versionSuffix -o $psscriptroot/bin
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 626ab51..2bf60b5 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -1,7 +1,11 @@
- 5.0.1
+ netstandard2.0;net45
+ true
+ $(DefineConstants);HOPAC
+
+ 5.1.0
Andrew Cherry
Graph-base protocol machines for F#
$(Description) powered by the Hopac concurrency library
@@ -12,5 +16,30 @@
https://github.com/xyncro/hephaestus
$(PackageTags);protocol;machine;functional;graphs;f#;fsharp
$(PackageTags);hopac
+
+
+ true
+ true
+ $(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Hephaestus.Common.targets b/src/Hephaestus.Common.targets
deleted file mode 100644
index 0ecea7f..0000000
--- a/src/Hephaestus.Common.targets
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
- netstandard2.0;net45
- true
- $(DefineConstants);HOPAC
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Hephaestus.Hopac/Hephaestus.Hopac.fsproj b/src/Hephaestus.Hopac/Hephaestus.Hopac.fsproj
index 9a81210..814d0d3 100644
--- a/src/Hephaestus.Hopac/Hephaestus.Hopac.fsproj
+++ b/src/Hephaestus.Hopac/Hephaestus.Hopac.fsproj
@@ -2,5 +2,4 @@
true
-
diff --git a/src/Hephaestus/Hephaestus.fsproj b/src/Hephaestus/Hephaestus.fsproj
index abe8874..35e3d84 100644
--- a/src/Hephaestus/Hephaestus.fsproj
+++ b/src/Hephaestus/Hephaestus.fsproj
@@ -1,3 +1,2 @@
-