Skip to content

Lama2 New Release Process

Shrijith Venkatramana edited this page Jan 23, 2023 · 6 revisions

Pre-release checklist

  • Run make lint and clear all issues
  • Document important methods
  • Add documentation pages in MkDocs
  • Add test cases and/or fix broken ones
  • Redraw/Fix diagrams which may be irrelevant
  • Verify: Do I need to update the Iro syntax? If yes, then I need to update VSCode extension as well
  • Prepare release notes
  • Update readme?
  • Verify functionality in different OSes
  • Re-read all relevant comments in code & update if necessary

Release steps

Finalise release changes in the main branch. Create all release commits. Push changes to remote.

Type git tag to see previous versions; you'll find something like:

v1.0.0
v1.0.1
v1.0.2
v1.0.3
v1.0.4
v1.0.5
v1.0.6
v1.0.7
v1.0.8
v1.0.9
v1.1.0
v1.1.1
v1.2.1

We use Semantic Versioning. Which means, the version format is in vX.Y.Z.

Bump Z for bug fixes.

Bump Y for new features or serious updates.

Bump X for some major/fundamental change; or a bunch of changes together

To create a new release, tag your latest commit as follows:

git tag v1.2.1

Then push the new tag:

git push --tags

When you push a tag, the release.yml workflow triggers automatically.

And the build process embeds the version information into the binary (see L30)

Once the build completes, head over to Releases in github.

Click Draft a New Release

Choose latest Tag.

Look at previous releases to fill in title and description.

Tick "Set as latest release"

Click "Publish release"

Open release list to verify that the latest tag is indeed the latest release. If not, tick "Set as latest release" again (IMPORTANT)

Finally, to test whether the release is successful, update Lama2 with either:

  1. Installation Script OR
  2. l2 -u (in Linux/Mac)

Type l2 --version. You should see the latest tag/release name.

Clone this wiki locally