Releasing
Version bump process
Section titled “Version bump process”Versions are managed manually in packages/semtest-runner/package.json:
{ "version": "0.1.0"}To release a new version:
- Update the
versionfield inpackages/semtest-runner/package.json - Commit and push to
main - The
publish.ymlworkflow builds, tests, and publishes automatically
Stable vs RC
Section titled “Stable vs RC”| Type | Trigger | Version | dist-tag | Install command |
|---|---|---|---|---|
| Stable | Push to main | As in package.json (e.g. 0.1.0) | latest | pnpm add @thulanek/semtest-runner |
| RC | Push to release | Auto-suffixed (e.g. 0.1.0-rc.5) | rc | pnpm add @thulanek/semtest-runner@rc |
GitHub Packages setup
Section titled “GitHub Packages setup”The package is published to GitHub Packages (not npm). The publishConfig in package.json controls this:
{ "publishConfig": { "registry": "https://npm.pkg.github.com" }}Consuming the package
Section titled “Consuming the package”To install @thulanek/semtest-runner in another project, configure the @thulanek scope to resolve from GitHub Packages.
1. Create a .npmrc file
Section titled “1. Create a .npmrc file”@thulanek:registry=https://npm.pkg.github.com//npm.pkg.github.com/:_authToken=YOUR_PAT_HEREReplace YOUR_PAT_HERE with a GitHub PAT that has read:packages scope.
2. Install
Section titled “2. Install”pnpm add @thulanek/semtest-runner3. Use programmatically
Section titled “3. Use programmatically”import { defineConfig, loadConfig, executeTests } from "@thulanek/semtest-runner";Or use the CLI directly:
npx semtest runRepository metadata
Section titled “Repository metadata”{ "repository": { "type": "git", "url": "https://github.com/thulanek/semtest-runner.git", "directory": "packages/semtest-runner" }}The directory field tells GitHub Packages that this package lives in a monorepo subdirectory.