- Choose the new version according to the project's versioning scheme.
- Update the project's status in the
README.mdfile, if required. - Update the copyright statement in the
LICENSE.mdfile, if required. - Update the
<Copyright>statement and<PackageLicenseExpression>field in theDirectory.Build.props, if required. - Update the Cesium's statement in
GetCompilerBundleCopyrightStatementsmethod ofBuild.Sdk.cs, if required. - Update the
PackageLicenseExpressionand the<Copyright>statement in theCesium.Compiler.csprojfile (for the compiler dotnet tool), if required. Make sure all the packed libraries are properly accounted for. - Run the
scripts/Update-Version.ps1script with the argument-NewVersion <the new version>. It will update the various places where the new version should be used. - Prepare a corresponding entry in the
CHANGELOG.mdfile (usually by renaming the "Unreleased" section). - Merge the aforementioned changes via a pull request.
- Check if the NuGet key is still valid (see the Rotate NuGet Publishing Key section if it isn't).
- Push a tag in form of
v<VERSION>, e.g.v0.0.0. GitHub Actions will do the rest (push a NuGet package).
CI relies on a NuGet API key being added to the secrets. From time to time, this key requires maintenance: it will become obsolete and will have to be updated.
To update the key:
-
Sign in onto nuget.org.
-
Go to the API keys section.
-
Update the existing or create a new key named
cesium.githubwith a permission to Push only new package versions and allowed to publish the packages according to the regexCesium.*.(If this is the first publication of a new package, upload a temporary short-living key with permission to add new packages and rotate it afterward.)
-
Paste the generated key to the
NUGET_TOKENvariable on the action secrets section of GitHub settings.