Skip to content

Releases: PSModule/Process-PSModule

v5.0.1

03 Oct 19:37
e211007

Choose a tag to compare

🩹[Patch]: Pin super-linter actions and refine Dependabot configuration (#207)

Description

This pull request makes several updates to the GitHub Actions workflows and Dependabot configuration to improve reliability, clarity, and control over code linting and dependency management. The main changes involve pinning the super-linter action to a specific commit for reproducibility, updating linting environment variables, and enhancing dependency labeling.

GitHub Actions workflow improvements

  • Pin the super-linter/super-linter and super-linter/super-linter/slim actions to the specific commit 7bba2eeb89d01dc9bfd93c497477a57e72c83240 (v8.2.0) in all workflows, instead of using the latest tag, to ensure consistent and reproducible builds. [1] [2] [3]
  • Update linting environment variables in all workflows to explicitly disable VALIDATE_BIOME_LINT and VALIDATE_GITHUB_ACTIONS_ZIZMOR, providing finer control over which linters are run. [1] [2] [3]

Dependabot configuration enhancement

  • Add dependencies and github-actions labels to Dependabot PRs for GitHub Actions, making it easier to categorize and filter dependency updates. (.github/dependabot.yml)

PSModule process diagram

  • Updated the diagram with the repo linter.

v5.0.0

03 Oct 12:14
ee6798e

Choose a tag to compare

🌟 [Major]: Process-PSModule v5 (#205)

This pull request cleans up and consolidates the process into focussing on a single workflow, the workflow.yml file. It also updates some more logic and addresses some security issues for the checkout action.

Details

  • Removed the workflow CI.yml which has previously been used for nightly runs, checking that the logic works.

    • Mitigation: Adjusted workflow.yml to work for the same scenarios replacing CI.yml for this usecase.
    • Fixes #204
  • Cleaned up some of the job flow depending on the different scenarios.

    Job Open/Updated PR Merged PR Abandoned PR Manual Run
    Get-Settings ✅ Always ✅ Always ✅ Always ✅ Always
    Lint-Repository ✅ Yes ❌ No ❌ No ❌ No
    Build-Module ✅ Yes ✅ Yes ❌ No ✅ Yes
    Build-Docs ✅ Yes ✅ Yes ❌ No ✅ Yes
    Build-Site ✅ Yes ✅ Yes ❌ No ✅ Yes
    Test-SourceCode ✅ Yes ✅ Yes ❌ No ✅ Yes
    Lint-SourceCode ✅ Yes ✅ Yes ❌ No ✅ Yes
    Test-Module ✅ Yes ✅ Yes ❌ No ✅ Yes
    BeforeAll-ModuleLocal ✅ Yes ✅ Yes ❌ No ✅ Yes
    Test-ModuleLocal ✅ Yes ✅ Yes ❌ No ✅ Yes
    AfterAll-ModuleLocal ✅ Yes ✅ Yes ❌ No ✅ Yes
    Get-TestResults ✅ Yes ✅ Yes ❌ No ✅ Yes
    Get-CodeCoverage ✅ Yes ✅ Yes ❌ No ✅ Yes
    Publish-Site ❌ No ✅ Yes (only) ❌ No ❌ No
    Publish-Module ✅ Yes* ✅ Yes* ✅ Yes ✅ Yes*
    • Only run linter on CI runs.
    • Fast forward to "Publish-Module", which also handles removal of prereleases (GitHub only).
    • Only run "Publish-Site" on a merged PR.

v4.1.5

02 Oct 21:32
5726f53

Choose a tag to compare

Update implement prompt to update PR (#203)

Description

This pull request updates the implementation instructions in .github/prompts/implement.prompt.md to improve task tracking and clarify how pull request descriptions should be managed. The main focus is on making task progress more visible in real-time and ensuring the PR description is always ready to be used as release notes.

Task tracking and status updates:

  • Added a critical requirement to update task status immediately after each task is completed:
    • Mark the task as [X] in tasks.md and update the PR description checkbox for each completed task.
    • Updates must be made task-by-task, not at the end.
    • Provided guidance for using GitHub tools or gh pr edit to update the PR description, ensuring real-time visibility of task progress.

Pull request description management:

  • Changed instructions to require replacing the entire PR description with release notes:
    • The existing PR description, including the task list, must be cleared and replaced with release notes.
    • This ensures the PR description is immediately ready to be used as GitHub Release notes upon merging.
  • Updated the example command to clarify that the PR description should be replaced with release notes.

Type of change

  • 📖 [Docs]
  • 🪲 [Fix]
  • 🩹 [Patch]
  • ⚠️ [Security fix]
  • 🚀 [Feature]
  • 🌟 [Breaking change]

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas

v4.1.4

02 Oct 13:07
b0c44ad

Choose a tag to compare

Updating some div stuff with specify (#200)

Description

This pull request updates and clarifies the workflow instructions for planning and implementing features, with a strong focus on correct GitHub label management, improved documentation standards, and enhanced PR/release note formatting. The changes ensure that contributors follow standardized processes for labeling, documentation, and communication, making the workflow more consistent and user-friendly.

Workflow and Label Management Improvements:

  • Both .github/prompts/plan.prompt.md and .github/prompts/implement.prompt.md now require setting and updating GitHub labels (like Planning, Implementing, Specification) at the start of each workflow, with clear instructions for both forked and local repositories. Fallback gh CLI commands are provided for manual updates. [1] [2] [3] [4]
  • The implementation workflow now includes immediate label transitions (e.g., removing Planning and adding Implementing), and the planning workflow adds/removes Planning and Specification as appropriate. [1] [2]

Documentation and Formatting Standards:

  • Added a new section in .github/instructions/md.instructions.md specifying that all requirement numbers (e.g., NFR-001, FR-042) must be formatted in bold and use non-breaking hyphens to prevent line breaks and ensure consistency in all documentation.
  • .github/copilot-instructions.md now mandates that all terminal commands in documentation be prefixed with pwsh (except for GitHub MCP calls), with examples provided for clarity.

PR and Release Note Guidance:

  • The instructions for PR descriptions have been rewritten to require a user-focused, release-note style summary, with explicit sections for "What's Changed," "Usage," "Breaking Changes," and "Technical Notes." Example command-line instructions for updating PR descriptions are included.
  • The planning workflow now requires PRs to include both a version/change-level label (e.g., Major, Minor, Patch) and a phase label (Planning), with fallback CLI commands for label management. [1] [2]

Workflow Step Clarifications and Reordering:

  • Both planning and implementation prompts have been restructured and renumbered for clarity, with explicit instructions for each step, including constitution and changelog updates, commit message standards, and final PR/issue updates. [1] [2] [3]

Changelog and Constitution Updates:

  • The implementation workflow now explicitly requires updating both the constitution and the changelog with each feature or change, following best practices for documentation and release management.

These changes collectively enforce best practices for workflow automation, documentation, and communication in the repository, improving clarity and consistency for all contributors.

Type of change

  • 📖 [Docs]
  • 🪲 [Fix]
  • 🩹 [Patch]
  • ⚠️ [Security fix]
  • 🚀 [Feature]
  • 🌟 [Breaking change]

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas

v4.1.3

02 Oct 09:33
533afe8

Choose a tag to compare

📝[Enhancement]: Add structured reporting during the process (#197)

Description

This pull request updates the workflow prompts for the GitHub automation scripts to improve user communication and reporting. The main change is that each major phase (specification, clarification, planning, task generation, and analysis) now posts a clear status comment to the GitHub issue, summarizing progress and next steps for users. Additionally, the analysis and clarification steps now produce more structured, readable markdown reports.

Key improvements include:

User Communication Enhancements:

  • Each major workflow step (specify, clarify, plan, tasks, analyze) now posts a standardized status comment to the issue, clearly indicating completion and next recommended actions. [1] [2] [3] [4] [5]

Analysis and Clarification Reporting:

  • The analysis step now posts a detailed markdown comment with tables grouped by severity, a summary, and explicit next actions, making findings easier to review and act upon.
  • The clarification step now posts a markdown summary table of questions and answers if any were asked, improving traceability of clarifications.

Process and Flow Improvements:

  • The planning step now checks for clarifications before proceeding, pausing if ambiguous areas remain and instructing the user on how to resolve them.
  • Each phase's reporting is reorganized to ensure the status comment is posted before the detailed completion report, improving user guidance and flow. [1] [2] [3]

These changes collectively make the workflow more transparent, actionable, and user-friendly.

Type of change

  • 📖 [Docs]
  • 🪲 [Fix]
  • 🩹 [Patch]
  • ⚠️ [Security fix]
  • 🚀 [Feature]
  • 🌟 [Breaking change]

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas

v4.1.2

02 Oct 07:49
0b6bdd2

Choose a tag to compare

Add specify! (#195)

Description

This pull request makes significant improvements to the documentation and prompt instructions for project workflows, especially around constitution management and implementation processes. The changes clarify modes of operation, add detailed step-by-step instructions, and ensure consistency and traceability across related files and workflows.

Key changes:

Constitution Management Enhancements

  • Expanded and clarified the instructions in .github/prompts/constitution.prompt.md to support both initial creation and iterative updating of the constitution, with detailed operating modes, placeholder handling, and replacement analysis for overlapping principles or rules. Added a Replacement Analysis Table, heuristics for overlap detection, and clear handling for ambiguous or destructive changes. [1] [2]
  • Improved the propagation and validation checklist for syncing changes across related templates and prompt files, using relative links and clarifying which files to update. Added explicit instructions for updating deprecated or pending sections and handling deferred actions.
  • Updated the description in .github/prompts/constitution.prompt.md to clarify the iterative nature of constitution updates.

Implementation Workflow Improvements

  • Enhanced .github/prompts/implement.prompt.md with explicit support for both local and forked repository workflows, including detection of .fork-info.json, validation of fork configuration, and branch/PR management logic. [1] [2]
  • Added detailed instructions for iterative implementation: tracking task completion state in tasks.md, skipping completed tasks, resuming from the last incomplete task, and supporting multiple runs for refinement.
  • Added comprehensive steps for automated Pull Request creation/updating, including PR title/description formatting, label management, linking to issues, and fallback GitHub CLI commands for both local and fork workflows.
  • Included steps for updating issue labels and ensuring the constitution is updated to reflect implemented changes, with clear guidance on how to keep documentation in sync with codebase state.

Documentation Consistency

  • Added a new .github/instructions/md.instructions.md file defining markdown style guidelines for consistent documentation across the repository, covering headings, lists, code blocks, links, tables, emphasis, whitespace, and more.

These changes together provide clearer, more robust, and more maintainable workflows for both constitution management and implementation, ensuring consistency and traceability across documentation and project artifacts.

  • Constitution Management Enhancements: [1] [2] [3]
  • Implementation Workflow Improvements: [1] [2] [3]
  • Documentation Consistency:

Type of change

  • 📖 [Docs]
  • 🪲 [Fix]
  • 🩹 [Patch]
  • ⚠️ [Security fix]
  • 🚀 [Feature]
  • 🌟 [Breaking change]

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas

v4.1.1

01 Oct 23:29
de4f7a9

Choose a tag to compare

📖[Docs]: Improve README clarity and formatting (#192)

This release comprehensively improves documentation quality across the entire repository by fixing 21 instances of typos, grammatical errors, and formatting inconsistencies in 9 files. All changes enhance readability, professionalism, and clarity without any breaking changes or functionality modifications.

Why These Changes Matter

Documentation is the first point of contact for users and contributors. Unclear language, typos, and inconsistent formatting create friction and reduce confidence in the project. Poor documentation quality can lead to misunderstandings, incorrect implementations, and increased support burden. These improvements make the documentation more professional, scannable, and easier to understand for both new users and experienced contributors.

How the Documentation Was Improved

The improvements span three main categories:

Grammar & Language Clarity: Fixed verb tense inconsistencies ("trigger" → "triggered"), corrected countable vs uncountable noun usage ("less" → "fewer"), added Oxford commas for better readability, improved sentence structure, and added missing articles throughout.

Formatting Standardization: Standardized file references using inline code formatting (`BeforeAll.ps1`), converted mathematical notation to proper Unicode symbols (≤ instead of <=), improved list structures with consistent nested bullets, and enhanced visual hierarchy in workflow documentation.

Content Restructuring: Reorganized test setup/teardown documentation for better flow, moved key information to prominent positions, eliminated redundant sections, integrated scattered information into main descriptions, and created clearer section divisions.

v4.1.0

01 Oct 22:19
7e38e21

Choose a tag to compare

🚀[Feature]: Test Setup & Teardown Support for GitHub Actions Workflows (#191)

Overview

This release introduces automated test environment management through BeforeAll.ps1 and AfterAll.ps1 scripts, enabling comprehensive setup and teardown capabilities for module tests running in GitHub Actions. This enhancement solves the challenge of managing complex test environments (databases, infrastructure, external services) across parallel test matrices while ensuring proper cleanup regardless of test outcomes.

🎯 Main Feature: Test Lifecycle Management

The Problem

Previously, setting up test infrastructure required:

  • Rate-limiting issue when creating GitHub Repositories for the GitHub PowerShell module, where the setup and teardown happens in the individual test files via BeforeAll and AfterAll blocks.

The Solution

Dedicated setup and teardown jobs with automatic script execution:

  • BeforeAll: Runs once before all test matrix jobs begin.
  • AfterAll: Runs once after all test matrix jobs complete.

Configuration

No configuration needed! Simply add scripts to your test directory.
The workflow automatically detects and executes these scripts when present.

your-module/
├── tests/
│   ├── BeforeAll.ps1      ← Setup script (optional)
│   ├── AfterAll.ps1       ← Teardown script (optional)
│   └── Module.Tests.ps1   ← The tests that require external setup
│

Additional: Specification-Driven Development Framework

This release also includes an implementation of spec-kit principles, adding a structured workflow for feature development from specification through implementation.

What's Included

  • Prompt templates (.github/prompts/) for /specify, /clarify, /plan, /tasks, /analyze, /implement commands
  • Project constitution (.specify/memory/constitution.md) defining architectural principles:

Additional Workflow Improvements

Linter Configuration Updates

  • Added VALIDATE_BIOME_FORMAT: false for Biome formatter
  • Added VALIDATE_GITHUB_ACTIONS_ZIZMOR: false for workflow security scanning
  • Added VALIDATE_JSCPD: false for copy-paste detection
  • Consistent linting configuration across Build-Docs and Linter workflows

Test Workflow Enhancements

  • Environment variables properly scoped at workflow level
  • Clearer parameter naming (OSName vs OS)
  • Improved test execution coordination

Documentation

  • Comprehensive setup/teardown guide in README.md
  • Inline documentation in all prompt templates and scripts
  • Usage examples for common test scenarios

v4.0.9

27 Aug 06:13
c67d665

Choose a tag to compare

Bump actions/checkout from 4 to 5 (#182)

Bumps actions/checkout from 4 to 5.

Release notes

Sourced from actions/checkout's releases.

v5.0.0

What's Changed

⚠️ Minimum Compatible Runner Version

v2.327.1
Release Notes

Make sure your runner is updated to this version or newer to use this release.

Full Changelog: actions/checkout@v4...v5.0.0

v4.3.0

What's Changed

New Contributors

Full Changelog: actions/checkout@v4...v4.3.0

v4.2.2

What's Changed

Full Changelog: actions/checkout@v4.2.1...v4.2.2

v4.2.1

What's Changed

New Contributors

Full Changelog: actions/checkout@v4.2.0...v4.2.1

... (truncated)

Changelog

Sourced from actions/checkout's changelog.

Changelog

V5.0.0

V4.3.0

v4.2.2

v4.2.1

v4.2.0

v4.1.7

v4.1.6

v4.1.5

  • Update NPM dependenci...
Read more

v4.0.8

27 Aug 05:49
400df14

Choose a tag to compare

Bump actions/upload-pages-artifact from 3 to 4 (#183)

Bumps actions/upload-pages-artifact from 3 to 4.

Release notes

Sourced from actions/upload-pages-artifact's releases.

v4.0.0

What's Changed

Full Changelog: actions/upload-pages-artifact@v3.0.1...v4.0.0

v3.0.1

Changelog

See details of all code changes since previous release.

Commits
  • 7b1f4a7 Merge pull request #127 from heavymachinery/pin-sha
  • 4cc19c7 Pin actions/upload-artifact to SHA
  • 2d163be Merge pull request #107 from KittyChiu/main
  • c704843 fix: linted README
  • 9605915 Merge pull request #106 from KittyChiu/kittychiu/update-readme-1
  • e59cdfe Update README.md
  • a2d6704 doc: updated usage section in readme
  • 984864e Merge pull request #105 from actions/Jcambass-patch-1
  • 45dc788 Add workflow file for publishing releases to immutable action package
  • efaad07 Merge pull request #102 from actions/hidden-files
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)