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 @@ -