Skip to content

Latest commit

 

History

History
139 lines (98 loc) · 3.99 KB

README-MAINTAINER.md

File metadata and controls

139 lines (98 loc) · 3.99 KB

license CI on Push GitHub issues GitHub pulls

Maintainer info

This file documents the procedure used to make releases.

Prepare the release

Before making the release, perform some checks and tweaks.

Update npm packages

  • npm outdated & npm update
  • or edit package.json and npm install
  • repeat until everything is up to date

Dependencies

Check Git

In this Git repo:

  • in the develop branch
  • push everything
  • if needed, merge the master branch

Determine the next version

Use the semantic versioning semantics.

Edit package.json to this version suffixed by -pre.

Fix possible open issues

Check GitHub issues and pull requests:

Update versions in the README files

  • update version in README-MAINTAINER.md
  • check the rest of the file and update if needed, to reflect the new features
  • update version in README.md

Update CHANGELOG.md

  • check the latest commits npm run git-log
  • open the CHANGELOG.md file
  • check if all previous fixed issues are in
  • commit with a message like prepare v1.4.2

Publish on the npmjs.com server

  • select the xpack-develop branch
  • commit everything
  • npm run fix
  • commit all changes
  • npm run test-all
  • check the latest commits npm run git-log
  • npm run pack; check the content of the archive, which should list only the following; possibly adjust .npmignore
CHANGELOG.md
LICENSE
README.md
assets/...
index.js
lib/template.js
package.json
=== Bundled Dependencies ===

The version is visible at:

Testing

The first test is via xpm init:

mkdir -p ~/tmp/test-hello
cd ~/tmp/test-hello
xpm init --template @micro-os-plus/hello-world-qemu-template@next --property target=cortex-m7f
xpm install
xpm run test-all

The project also includes unit tests, which create multiple projects, with combinations of properties.

To run them, use:

cd hello-world-qemu-template-xpack.git
npm install
xpm run test-all

Continuous Integration

All available tests are also performed on GitHub Actions, as the CI on Push workflow.

Update the repo

When the package is considered stable:

  • with a Git client (VS Code is fine)
  • merge xpack-develop into xpack
  • push to GitHub
  • select xpack-develop

Tag the npm package as latest

When the release is considered stable, promote it as latest:

  • npm dist-tag ls @micro-os-plus/hello-world-qemu-template
  • npm dist-tag add @micro-os-plus/hello-world-qemu-template@1.4.2 latest
  • npm dist-tag ls @micro-os-plus/hello-world-qemu-template