https://github.com/micro-os-plus/libs-c-xpack
A source xPack with complementary C library functions
https://github.com/micro-os-plus/libs-c-xpack
Last synced: over 1 year ago
JSON representation
A source xPack with complementary C library functions
- Host: GitHub
- URL: https://github.com/micro-os-plus/libs-c-xpack
- Owner: micro-os-plus
- License: mit
- Created: 2017-09-04T19:29:56.000Z (almost 9 years ago)
- Default Branch: xpack
- Last Pushed: 2023-11-28T21:10:13.000Z (over 2 years ago)
- Last Synced: 2025-03-16T03:34:00.969Z (over 1 year ago)
- Language: C
- Homepage:
- Size: 136 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README-MAINTAINER.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/micro-os-plus/libs-c-xpack/blob/xpack/LICENSE)
[](https://github.com/micro-os-plus/libs-c-xpack/actions?query=workflow%3A%22CI+on+Push%22)
[](https://github.com/micro-os-plus/libs-c-xpack/issues/)
[](https://github.com/micro-os-plus/libs-c-xpack/pulls)
# Maintainer info
## Project repository
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):
```sh
rm -rf ~/Work/libs-c-xpack.git && \
mkdir -p ~/Work && \
git clone \
https://github.com/micro-os-plus/libs-c-xpack.git \
~/Work/libs-c-xpack.git
```
For development purposes, clone the `xpack-develop` branch:
```sh
rm -rf ~/Work/libs-c-xpack.git && \
mkdir -p ~/Work && \
git clone \
--branch xpack-develop \
https://github.com/micro-os-plus/libs-c-xpack.git \
~/Work/libs-c-xpack.git
```
## Prerequisites
A recent [xpm](https://xpack.github.io/xpm/), which is a portable
[Node.js](https://nodejs.org/) command line application.
## Code formatting
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.
## Prepare a new blog post
In the `micro-os-plus/web-jekyll` GitHub repo:
- select the `develop` branch
- add a new file to `_posts/libs-c/releases`
- name the file like `2020-12-19-libs-c-v1-1-0-released.md`
- name the post like: **µOS++ libs-c 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](https://github.com/micro-os-plus/libs-c-xpack/issues/)
as:
- **[Issue:\[#1\]\(...\)]**.
## Publish on the npmjs.com server
- select the `xpack-develop` branch
- commit all changes
- update versions in `README.md` and `README-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
only `package.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 via `git push origin --tags`
- wait for the CI job to complete
()
- `npm publish --tag next` (use `npm publish --access public` when
publishing for the first time)
The version is visible at:
-
## Testing
The project includes unit tests.
To run them, run:
```sh
cd libs-c-xpack.git
xpm run install-all
xpm run test
```
## Continuous Integration
The CI tests are performed on GitHub Actions, as the
[CI on Push](https://github.com/micro-os-plus/libs-c-xpack/actions?query=workflow%3A%22CI+on+Push%22)
workflow.
## Update the repo
When the package is considered stable:
- with Sourcetree
- 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/libs-c`
- `npm dist-tag add @micro-os-plus/libs-c@3.0.1 latest`
- `npm dist-tag ls @micro-os-plus/libs-c`
## Share on Twitter
- in a separate browser windows, open [TweetDeck](https://tweetdeck.twitter.com/)
- using the `@micro_os_plus` account
- paste the release name like **µOS++ libs-c v3.0.1 released**
- paste the link to the Web page release
- click the **Tweet** button