Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
28e1bd8
Enhance module manifest with additional metadata including tags, lice…
rebelinux Feb 20, 2026
c22a8a3
Add validation for category names in StackedBarChart and implement te…
rebelinux Feb 20, 2026
c64ab81
Merge branch 'AsBuiltReport:dev' into dev
rebelinux Feb 20, 2026
2e25904
Update Pester workflow to use actions/checkout@v6 and setup .NET 8.0,…
rebelinux Feb 20, 2026
2b15a7c
Enhance Pester workflow to include conditional checks for OS-specific…
rebelinux Feb 20, 2026
eafc462
Add Windows PowerShell build and copy steps to Pester workflow
rebelinux Feb 20, 2026
d875d9f
Enhance Pester and Release workflows for MacOS ARM64 support and upda…
rebelinux Feb 20, 2026
6f6635c
Remove unnecessary module dependencies from Invoke-Tests script and c…
rebelinux Feb 21, 2026
936fdba
Remove conditional code coverage for Windows PowerShell in Pester wor…
rebelinux Feb 21, 2026
70af964
Enhance module import statements for macOS ARM and x86 architectures …
rebelinux Feb 21, 2026
c98b6e0
Refactor workflows and issue templates for consistency and clarity; e…
rebelinux Feb 21, 2026
179fc80
Update Pester workflow to list DLL files from macOS ARM directory
rebelinux Feb 21, 2026
605a1eb
Fix path for listing DLL files in macOS ARM directory in Pester workflow
rebelinux Feb 21, 2026
e9a3a18
Fix path for listing DLL files in macOS ARM directory in Pester workflow
rebelinux Feb 21, 2026
21b9428
Update paths for copying libraries and listing DLL files in Pester wo…
rebelinux Feb 21, 2026
7498556
Update Pester workflow to use PowerShell commands for copying librari…
rebelinux Feb 21, 2026
d5e1e75
Update Pester workflow to improve library copy commands and list DLL …
rebelinux Feb 21, 2026
b06a9a6
Update Pester workflow to use Unix-style copy command for macOS library
rebelinux Feb 21, 2026
9745b5b
Update Pester and Release workflows to use PowerShell copy commands a…
rebelinux Feb 21, 2026
f3c45ee
Fix module import paths for macOS ARM and x64 architectures in AsBuil…
rebelinux Feb 21, 2026
fe37d46
Update module version to 0.2.0 and add changelog entry for new features
rebelinux Feb 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/Dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ updates:
- "rebelinux"
labels:
- "dependencies"
- "automated"
- "automated"
1 change: 0 additions & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,4 +95,3 @@ body:
- label: >-
I have checked for previously opened & closed [issues](https://github.com/AsBuiltReport/AsBuiltReport.Chart/issues) before submitting this bug report.
required: true

1 change: 0 additions & 1 deletion .github/ISSUE_TEMPLATE/change_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,3 @@ body:
- label: >-
I have checked for previously opened & closed [issues](https://github.com/AsBuiltReport/AsBuiltReport.Chart/issues) before submitting this change request.
required: true

2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
blank_issues_enabled: false
blank_issues_enabled: false
76 changes: 38 additions & 38 deletions .github/workflows/Codeql.yml
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
name: "CodeQL Analysis"

on:
push:
branches: [ dev ]
pull_request:
branches: [ dev ]
schedule:
- cron: '0 2 * * *'
push:
branches: [dev]
pull_request:
branches: [dev]
schedule:
- cron: "0 2 * * *"

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'csharp' ]
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: ["csharp"]

steps:
- name: Checkout repository
uses: actions/checkout@v6
steps:
- name: Checkout repository
uses: actions/checkout@v6

# Initializes the CodeQL tools and creates a CodeQL database
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
build-mode: none
languages: ${{ matrix.language }}
# If you have custom queries, you can add them here using a queries property
# Initializes the CodeQL tools and creates a CodeQL database
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
build-mode: none
languages: ${{ matrix.language }}
# If you have custom queries, you can add them here using a queries property

# Autobuild attempts to build the C# project automatically.
# For complex C# projects, you may need to replace this with custom build commands (e.g., using `dotnet build`)
- name: Autobuild
uses: github/codeql-action/autobuild@v4
with:
working-directory: ./Sources
# Autobuild attempts to build the C# project automatically.
# For complex C# projects, you may need to replace this with custom build commands (e.g., using `dotnet build`)
- name: Autobuild
uses: github/codeql-action/autobuild@v4
with:
working-directory: ./Sources

# Performs the CodeQL analysis and uploads the results to GitHub
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: "/language:${{ matrix.language }}"
# Performs the CodeQL analysis and uploads the results to GitHub
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: "/language:${{ matrix.language }}"
28 changes: 14 additions & 14 deletions .github/workflows/PSScriptAnalyzer.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
name: PSScriptAnalyzer
on: [push, pull_request]
jobs:
lint:
name: Run PSScriptAnalyzer
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: lint
uses: devblackops/github-action-psscriptanalyzer@master
with:
sendComment: true
failOnErrors: true
failOnWarnings: false
failOnInfos: false
repoToken: ${{ secrets.GITHUB_TOKEN }}
settingsPath: .github/workflows/PSScriptAnalyzerSettings.psd1
lint:
name: Run PSScriptAnalyzer
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: lint
uses: devblackops/github-action-psscriptanalyzer@master
with:
sendComment: true
failOnErrors: true
failOnWarnings: false
failOnInfos: false
repoToken: ${{ secrets.GITHUB_TOKEN }}
settingsPath: .github/workflows/PSScriptAnalyzerSettings.psd1
161 changes: 83 additions & 78 deletions .github/workflows/Pester.yml
Original file line number Diff line number Diff line change
@@ -1,90 +1,95 @@
name: Pester Tests

on:
push:
branches:
- main
- dev
- master
pull_request:
branches:
- main
- dev
- master
workflow_dispatch:
push:
branches:
- main
- dev
- master
pull_request:
branches:
- main
- dev
- master
workflow_dispatch:

jobs:
test:
name: Pester Tests - ${{ matrix.os }} - ${{ matrix.shell }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
shell: [pwsh]
include:
- os: windows-latest
shell: powershell
exclude:
- os: ubuntu-latest
shell: powershell
- os: macos-latest
shell: powershell
test:
name: Pester Tests - ${{ matrix.os }} - ${{ matrix.shell }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
shell: [pwsh]
include:
- os: windows-latest
shell: powershell
exclude:
- os: ubuntu-latest
shell: powershell
- os: macos-latest
shell: powershell

defaults:
run:
shell: ${{ matrix.shell }}
defaults:
run:
shell: ${{ matrix.shell }}

steps:
- name: Checkout repository
uses: actions/checkout@v4
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: "8.0.x"
- name: Restore dependencies
run: dotnet restore ./Sources
- name: Build the library for MacOS
run: dotnet publish ./Sources -c Release -r osx-arm64
if: matrix.os == 'macos-latest'
- name: Copy the library for MacOS
run: Copy-Item -Path ./Sources/bin/Release/netstandard2.0/osx-arm64/publish/* -Destination ./AsBuiltReport.Chart/Src/Assemblies/Core/mac-osx/osx-arm64 -Recurse
if: matrix.os == 'macos-latest'
- name: Build the library for Linux
run: dotnet publish ./Sources -c Release -r linux-x64
if: matrix.os == 'ubuntu-latest'
- name: Copy the library for Linux
run: Copy-Item -Path ./Sources/bin/Release/netstandard2.0/linux-x64/publish/* -Destination ./AsBuiltReport.Chart/Src/Assemblies/Core/linux-x64 -Recurse
if: matrix.os == 'ubuntu-latest'
- name: Build the library for Windows
run: dotnet publish ./Sources -c Release -r win-x64
if: matrix.os == 'windows-latest' && matrix.shell == 'pwsh'
- name: Copy the library for Windows
run: Copy-Item -Path ./Sources/bin/Release/netstandard2.0/win-x64/publish/* -Destination ./AsBuiltReport.Chart/Src/Assemblies/Core/windows-x64 -Recurse
if: matrix.os == 'windows-latest' && matrix.shell == 'pwsh'
- name: Build the library for Windows PowerShell
run: dotnet publish ./Sources -c Release -r win-x64
if: matrix.os == 'windows-latest' && matrix.shell == 'powershell'
- name: Copy the library for Windows PowerShell
run: Copy-Item -Path ./Sources/bin/Release/netstandard2.0/win-x64/publish/* -Destination ./AsBuiltReport.Chart/Src/Assemblies/Desktop/windows-x64 -Recurse
if: matrix.os == 'windows-latest' && matrix.shell == 'powershell'
- name: Run tests
run: dotnet test --no-build --verbosity normal ./Sources

- name: Set up PowerShell Gallery
run: |
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
- name: Set up PowerShell Gallery
run: |
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted

- name: Install Pester
run: |
Install-Module -Name Pester -MinimumVersion 5.0.0 -Repository PSGallery -Force -AllowClobber -Scope CurrentUser
- name: Install Pester
run: |
Install-Module -Name Pester -MinimumVersion 5.0.0 -Repository PSGallery -Force -AllowClobber -Scope CurrentUser

- name: Install PScribo
run: |
Install-Module -Name PScribo -MinimumVersion 0.11.1 -Repository PSGallery -Force -AllowClobber -Scope CurrentUser
- name: Run Pester Tests
run: |
$CodeCoverageParam = @{}
$OutputFormatParam = @{ OutputFormat = 'NUnitXml' }

- name: Install PSScriptAnalyzer
run: |
Install-Module -Name PSScriptAnalyzer -MinimumVersion 1.0.0 -Repository PSGallery -Force -AllowClobber -Scope CurrentUser
.\Tests\Invoke-Tests.ps1 @CodeCoverageParam @OutputFormatParam

- name: Install AsBuiltReport.Core
run: |
Install-Module -Name AsBuiltReport.Core -MinimumVersion 1.6.0 -Repository PSGallery -Force -AllowClobber -Scope CurrentUser

- name: Run Pester Tests
run: |
$CodeCoverageParam = @{}
$OutputFormatParam = @{ OutputFormat = 'NUnitXml' }

# Only enable code coverage for Windows + pwsh
if ('${{ matrix.os }}' -eq 'windows-latest' -and '${{ matrix.shell }}' -eq 'pwsh') {
$CodeCoverageParam = @{ CodeCoverage = $true }
}

.\Tests\Invoke-Tests.ps1 @CodeCoverageParam @OutputFormatParam

- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.os }}-${{ matrix.shell }}
path: Tests/testResults.xml
retention-days: 30

- name: Upload code coverage to Codecov
if: matrix.os == 'windows-latest' && matrix.shell == 'pwsh'
uses: codecov/codecov-action@v5
with:
files: ./Tests/coverage.xml
flags: unit
name: codecov-${{ matrix.os }}-${{ matrix.shell }}
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.os }}-${{ matrix.shell }}
path: Tests/testResults.xml
retention-days: 30
Loading