-
Notifications
You must be signed in to change notification settings - Fork 0
development
src/
gly.psd1
gly.psm1
formats/
private/
public/
tests/
docs/
assets/branding/
The Start release workflow packages the module directly from src with Compress-PSResource. The resulting gly.<version>.nupkg is attached to the draft GitHub Release and later published unchanged to both registries.
npm run module:publish:whatifStable releases are published from a Git tag to PowerShell Gallery, GitHub Packages, and GitHub Releases.
Configure the PSGALLERY_API_KEY Actions repository secret before the first release. GitHub Packages uses the workflow's short-lived GITHUB_TOKEN; the release workflow grants it packages: write only for that publishing job.
To prepare a release:
- Update
ModuleVersionandReleaseNotesinsrc/gly.psd1. - Merge the release commit and wait for CI to pass.
- Create and push a stable tag matching
ModuleVersion, for examplev0.2.0. - Wait for the Start release workflow to run the tests, build
gly.<version>.nupkg, and create a draft GitHub Release containing that package. - Review the generated notes and attached package, then publish the draft release.
- Verify that both jobs in Finish release succeed.
Publishing the draft triggers independent PowerShell Gallery and GitHub Packages jobs. Both jobs download and publish the same package attached to the GitHub Release. If one registry is temporarily unavailable, rerun only its failed job; do not recreate the tag or package.
Only stable vX.Y.Z tags are accepted. Prerelease publishing is not part of the current release process.
The GitHub Packages feed is scoped to the repository owner:
https://nuget.pkg.github.com/2CHEVSKII/index.json
GitHub Packages requires authentication even when a package is public. After the first publication, confirm the package is linked to this repository and set its intended visibility in the package settings.
pwsh -NoProfile -Command "Invoke-Pester ./tests"Measure Import-Module in isolated PowerShell processes:
npm run bench:startupMeasure display-name, standard table, and renderer performance against generated file-system data:
npm run bench:renderingInstall Node dependencies:
npm ciRun VitePress locally:
npm run docs:devBuild the site:
npm run docs:buildPreview the production build:
npm run docs:preview