Skip to content

Latest commit

 

History

History
117 lines (82 loc) · 2.59 KB

File metadata and controls

117 lines (82 loc) · 2.59 KB

Contributing to Export-ModuleInfoForLLM

Thank you for your interest in contributing to Export-ModuleInfoForLLM! This document provides guidelines and instructions for contributing.

Code of Conduct

By participating in this project, you agree to maintain a respectful and inclusive environment.

Getting Started

Prerequisites

  • PowerShell 5.1 or PowerShell Core 7.x
  • Git
  • Pester 5.x for running tests
  • PSScriptAnalyzer for code analysis

Development Setup

  1. Fork the repository

  2. Clone your fork:

    git clone https://github.com/Warezloder/Export-ModuleInfoForLLM.git
    cd Export-ModuleInfoForLLM
  3. Install development dependencies:

    Install-Module -Name Pester -MinimumVersion 5.0 -Scope CurrentUser
    Install-Module -Name PSScriptAnalyzer -Scope CurrentUser
  4. Import the module for development:

    Import-Module .\Export-ModuleInfoForLLM.psd1 -Force

Development Guidelines

Code Standards

  • Follow the PowerShell Practice and Style Guide
  • Use approved verbs (Get-Verb)
  • Include comment-based help for all public functions
  • Add parameter validation
  • Implement proper error handling

Testing

All contributions must include appropriate tests:

# Run all tests
Invoke-Pester -Path .\Tests

# Run with code coverage
Invoke-Pester -Path .\Tests -CodeCoverage .\Public\*.ps1, .\Private\*.ps1

# Run specific test file
Invoke-Pester -Path .\Tests\Unit\Export-ModuleCommandsForLLM.Tests.ps1

Code Analysis

Run PSScriptAnalyzer before submitting:

Invoke-ScriptAnalyzer -Path . -Recurse -Settings PSGallery

Submission Process

Pull Request Process

  1. Create a feature branch:

    git checkout -b feature/your-feature-name
  2. Make your changes following the code standards

  3. Add/update tests for your changes

  4. Update documentation if needed

  5. Run tests and ensure they pass:

    .\build.ps1 -Task Test
  6. Commit your changes:

    git commit -m "Add: Description of your changes"
  7. Push to your fork:

    git push origin feature/your-feature-name
  8. Create a Pull Request with:

    • Clear description of changes
    • Reference to any related issues
    • Test results summary

Commit Message Format

Use conventional commits format:

  • Add: New feature
  • Fix: Bug fix
  • Update: Non-breaking change
  • Breaking: Breaking change
  • Docs: Documentation only
  • Test: Test additions/changes

Project Structure