Release Process

  • Create a branch named release/0.10.2 for example. This branch should be level with the master commit that the release will be based on.
  • Update the version number in the file SharedVersion.props i.e. <Version>0.10.2</Version>.
  • Push the release branch.
If this is the first release of a major version change, i.e. 0.9.0 or 0.10.0 or the point at which breaking changes will start to be merged to master then before continuing we need to create a stable/0.10.x branch. This should be level with master at the same point that the release/0.10.2branched off from master
The git tree should now look like this:
  • Now login at to access the azure pipelines. Wait for the CI to finish the build.
  • The package for 0.10.2 should now be on the avalonia-all nuget feed. You should run a due diligence test on this build to ensure you are happy with the release and the packages work.
Don't assume the Nuget packages will work just because master was working. In the past some technical changes i.e. Strong Naming broke nuget packages.
  • Now click on "Releases" and select "Avalonia (master / release)" pipeline as shown below.
  • On the release for your release branch release/0.10.2 click on the badge for "Nuget Release"
  • Then click on Deploy.
At this point the packages will deploy to Nuget, it can take between 10 and 20 minutes for them to be indexed and publicly available.
  • Make a release on Github releases, this will set a tag named: 0.10.2 for you. You can add release notes here.
  • Update the dotnet templates and visual studio plugin templates
  • Announce on gitter, twitter, etc
Now that the release is done, it is important to understand the process for maintaining the stable branch. Please see Maintaining stable branch guide