- Administrator account on NuGet
- Log into your nuget.org account and link it to your Entra ID account by signing in with your Microsoft work account.
- Ask someone from the team to add you as an administrator on NuGet. You will need to accept this request once it is sent to you via email.
- NuGet Package Explorer
- Download NuGet Package Explorer from the Windows store.
- NuGet Command Line Interface
- Install according to these instructions.
- Increment the version number and update the Public API files; both of these steps can be accomplished by running the
tools\IncrementVersion.cmd
script. Then create a pull request with these changes using thetools\Release\CreateAndPushBranch.cmd
script and merge the pull request.- Increment the version number referenced during build in
Versioning.props
by using semantic versioning. - Update the Public API files by copying the contents of any
PublicAPI.Unshipped.txt
file that has changed since the last release into its correspondingPublicAPI.Shipped.txt
file.
- Increment the version number referenced during build in
- Kick off a new nightly build by running the pipeline to generate the NuGet packages that will be published for this release.
- Generate release notes in the change log to be published on release of the new version. Then create a pull request with these changes in the Docs repo and merge it.
- Generate new release notes by referencing the PRs that have been merged into
master
since the last version increment. In GitHub, each commit should have a link to the PR that was merged to generate that commit, so you can use GitHub history to generate the changelog.
- Generate new release notes by referencing the PRs that have been merged into
- Download the build artifacts from the nightly build to your local machine.
- Access the artifacts by navigating to the "published" items in the "Scheduled" section of the summary page for the new build.
- Mark the nightly build to be retained indefinitely.
- Find this setting by clicking the button with three dots next to the title of the build.
- Use NuGet Package Explorer to verify the URLs of each package in the Nuget-Release folder for license terms, package information, and release notes.
- Expected URLs:
- License Terms: http://go.microsoft.com/fwlink/?linkid=833178 (forwards to https://raw.githubusercontent.com/OData/odata.net/master/LICENSE.txt)
- Package Information: http://odata.github.io/ (forwards to https://learn.microsoft.com/en-us/odata/)
- Release Notes: http://docs.microsoft.com/en-us/odata/changelog
- Note: Symbols packages will not have license terms and Nightly packages will not have release notes.
- Expected URLs:
- Verify the signatures of the packages downloaded from the build artifacts by running the following command:
nuget verify -Signature Microsoft.Spatial.7.9.4.nupkg
, replacing "7.9.4" with the new version number. Do the same for Microsoft.OData.Edm, Microsoft.OData.Core, and Microsoft.OData.Client.
- Create a new API key on nuget.org for this release and limit the lifetime so that it won't be re-used.
- Limit the lifetime by setting the key to expire in one day (for example).
- You can use the default setting for scopes when creating the API key.
- Upload all 4 nupkg files using the nuget.org UI in the following order:
- Microsoft.Spatial
- Microsoft.OData.Edm
- Microsoft.OData.Core
- Microsoft.OData.Client
- Upload all 4 snupkg files in the same order.
- Create a new tag on the
master
branch in the ODL repo corresponding to the new version number by running:and repacinggit tag -a 7.9.4 -m "7.9.4 RTM" git push origin 7.9.4
7.9.4
with the new version number - Create a new release in GitHub with the name "ODL 7.9.4", replacing "7.9.4" with the new version number. Also choose the newly created tag. Add links to the new NuGet packages in the description. (Note that the assets files will be generated automatically by GitHub when the release is created.)
- Cherry-pick the change log commit in the Docs repo from the
main
branch to thelive
branch.