diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..dcd8da8
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,10 @@
+# Changelog
+
+## v2.3 - 2018.09.13
+- Use [Nerdbank.GitVersioning](https://github.com/AArnott/Nerdbank.GitVersioning) to automate generation of assembly
+ and nuget package versions.
+
+## v2.2 - 2018.01.01
+- Support .NET Standard 2.0 ([PR#9](https://github.com/skbkontur/gremit/pull/9)
+ by [@Amartel1986](https://github.com/Amartel1986)).
+- Switch to SDK-style project format and dotnet core build tooling.
diff --git a/Directory.Build.props b/Directory.Build.props
index 74e410f..ce9c32a 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -12,4 +12,8 @@
$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb
+
+
+
+
\ No newline at end of file
diff --git a/Directory.Build.targets b/Directory.Build.targets
index cb19e7e..df9d82a 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -7,4 +7,17 @@
+
+
+ $(AssemblyName)
+ Igor Chevdar
+ .NET Reflection Emit ILGenerator
+ GrEmit is a library containing different helpers for generating code using Reflection.Emit with the main one being GroboIL - a smart wrapper over ILGenerator.
+ git
+ https://github.com/skbkontur/gremit
+ $(RepositoryUrl)
+ $(RepositoryUrl)/releases/tag/v$(MajorMinorVersion)-release
+
+
+
\ No newline at end of file
diff --git a/GrEmit/GrEmit.csproj b/GrEmit/GrEmit.csproj
index 050d81e..e4dffd1 100644
--- a/GrEmit/GrEmit.csproj
+++ b/GrEmit/GrEmit.csproj
@@ -5,16 +5,6 @@
true
true
1701;1702;1705;1591
- GrEmit
- 2.2.3
- $(VersionPrefix)
- $(VersionPrefix).0
- Igor Chevdar
- .NET Reflection Emit ILGenerator
- GrEmit is a library containing different helpers for generating code using Reflection.Emit with the main one being GroboIL - a smart wrapper over ILGenerator.
- git
- https://github.com/skbkontur/gremit
- $(RepositoryUrl)
diff --git a/README.md b/README.md
index 851ed52..a2bf0b9 100644
--- a/README.md
+++ b/README.md
@@ -58,3 +58,7 @@ notNull_0: // [{Object: IList, IList, IReadOnlyList}]
// [Int32]
ret // []
```
+
+## Release Notes
+
+See [CHANGELOG](CHANGELOG.md).
diff --git a/appveyor.yml b/appveyor.yml
index 787fb9b..fdfcd55 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,7 +1,29 @@
+version: '{build}'
+
+skip_commits:
+ files:
+ - '**/*.md'
+
image: Visual Studio 2017
init:
- cmd: git config --global core.autocrlf false
+ - ps: |
+ $ErrorActionPreference = "Stop"
+ $tagName = $env:APPVEYOR_REPO_TAG_NAME
+ if ($tagName -match '^v\d+\.\d+') # tag name starts with 'vX.Y'
+ {
+ $env:SHOULD_PUBLISH_NUGET_PACKAGE = "true"
+ Write-Host "Will publish nuget package for $tagName tag" -ForegroundColor "Green"
+ if ($tagName -match '^v\d+\.\d+-release$') # tag name matches 'vX.Y-release'
+ {
+ $env:SHOULD_CREATE_RELEASE = "true"
+ Write-Host "Will create release for $tagName tag" -ForegroundColor "Green"
+ }
+ }
+
+nuget:
+ disable_publish_on_pr: true
before_build:
- cmd: dotnet --info
@@ -9,6 +31,28 @@ before_build:
build_script:
- cmd: dotnet build --configuration Release ./GrEmit.sln
+ - cmd: dotnet pack --no-build --configuration Release ./GrEmit.sln
test_script:
- cmd: dotnet test --no-build --configuration Release ./GrEmit.Tests/GrEmit.Tests.csproj
+
+artifacts:
+ - path: './GrEmit/bin/Release/*.nupkg'
+
+deploy:
+ - provider: NuGet
+ server: https://nuget.org
+ api_key:
+ secure: dzTnT0xSlPrHnrG06cj354nTN4lXWhfh4ZCJ1910I3VnNdvbx0rQFLTyJ5l1+bgB
+ skip_symbols: true
+ on:
+ SHOULD_PUBLISH_NUGET_PACKAGE: true
+
+ - provider: GitHub
+ tag: $(APPVEYOR_REPO_TAG_NAME)
+ auth_token:
+ secure: y8dDOcAtq4U1MTDJFX8f23xsvyFU1u4bhwr9Lzbkf2revNWPPTifBkWghris9v8i
+ draft: false
+ prerelease: false
+ on:
+ SHOULD_CREATE_RELEASE: true
diff --git a/version.json b/version.json
new file mode 100644
index 0000000..1711007
--- /dev/null
+++ b/version.json
@@ -0,0 +1,17 @@
+{
+ "$schema": "https://raw.githubusercontent.com/AArnott/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
+ "version": "2.3",
+ "publicReleaseRefSpec": [
+ "^refs/heads/master$",
+ "^refs/tags/v\\d+\\.\\d+"
+ ],
+ "nugetPackageVersion": {
+ "semVer": 2
+ },
+ "cloudBuild": {
+ "setVersionVariables": true,
+ "buildNumber": {
+ "enabled": false
+ }
+ }
+}
\ No newline at end of file