The project is hosted on GitHub:
To clone the stable branch (xpack
), run the following commands in a
terminal (on Windows use the Git Bash console):
rm -rf ~/Work/libs-cpp-xpack.git && \
mkdir -p ~/Work && \
git clone \
https://github.com/micro-os-plus/libs-cpp-xpack.git \
~/Work/libs-cpp-xpack.git
For development purposes, clone the xpack-develop
branch:
rm -rf ~/Work/libs-cpp-xpack.git && \
mkdir -p ~/Work && \
git clone \
--branch xpack-develop \
https://github.com/micro-os-plus/libs-cpp-xpack.git \
~/Work/libs-cpp-xpack.git
A recent xpm, which is a portable Node.js command line application.
Code formatting is done using clang-format --style=file
, either manually
from a script, or automatically from Visual Studio Code, or the Eclipse
CppStyle plug-in.
In the micro-os-plus/web-jekyll
GitHub repo:
- select the
develop
branch - add a new file to
_posts/libs-cpp/releases
- name the file like
2020-12-19-libs-cpp-v1-1-0-released.md
- name the post like: µOS++ libs-cpp v3.0.1 released
- update the
date:
field with the current date - update the GitHub Actions URLs using the actual test pages
If any, refer to closed issues as:
- [Issue:[#1](...)].
- select the
xpack-develop
branch - commit all changes
- update versions in
README.md
andREADME-MAINTAINER.md
- update
CHANGELOG.md
- commit with a message like prepare v3.0.1
npm pack
and check the content of the archive, which should list onlypackage.json
,README.md
,LICENSE
,CHANGELOG.md
, the sources and CMake/meson files; possibly adjust.npmignore
npm version patch
,npm version minor
,npm version major
- push the
xpack-develop
branch to GitHub - the
postversion
npm script should also update tags viagit push origin --tags
- wait for the CI job to complete (https://github.com/micro-os-plus/libs-cpp-xpack/actions/workflows/CI.yml)
npm publish --tag next
(usenpm publish --access public
when publishing for the first time)
The version is visible at:
The project includes unit tests.
To run them, run:
cd libs-cpp-xpack.git
xpm run install-all
xpm run test
The CI tests are performed on GitHub Actions, as the CI on Push workflow.
When the package is considered stable:
- with a Git client (VS Code is fine)
- merge
xpack-develop
intoxpack
- push to GitHub
- select
xpack-develop
When the release is considered stable, promote it as latest
:
npm dist-tag ls @micro-os-plus/libs-cpp
npm dist-tag add @micro-os-plus/[email protected] latest
npm dist-tag ls @micro-os-plus/libs-cpp
- in a separate browser windows, open TweetDeck
- using the
@micro_os_plus
account - paste the release name like µOS++ libs-cpp v3.0.1 released
- paste the link to the Web page release
- click the Tweet button