You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[1.0.0-alpha1] Upgrade to psake 5.0.0 with task caching and LLM output
Breaking changes:
- Minimum PowerShell raised from 3.0 to 5.1
- psake dependency raised from 4.9.0 to 5.0.0
- Invoke-psake now returns PsakeBuildResult (replaces $psake.build_success)
New features:
- Content-addressed task caching via Inputs/Outputs on cacheable tasks
(StageFiles, Analyze, Pester, GenerateMarkdown, GenerateMAML, GenerateUpdatableHelp)
- LLM-optimized test output mode ($PSBPreference.Test.OutputMode = 'LLM')
emits structured JSON with only failure details
- External PesterConfiguration file support via $PSBPreference.Test.PesterConfigurationPath
- Direct PesterConfiguration object passthrough via -Configuration parameter
- Format-PSBuildResult function for Human/JSON/GitHubActions build result formatting
- All psakeFile.ps1 tasks rewritten to declarative hashtable syntax
- Invoke-Build IB.tasks.ps1 updated with matching Inputs/Outputs caching
- Windows PowerShell 5.1 CI matrix entry added
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CLAUDE.md
+13-10Lines changed: 13 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,10 +4,10 @@
4
4
5
5
**PowerShellBuild** is a PowerShell module that provides a standardized set of build, test, and publish tasks for PowerShell module projects. It supports two popular PowerShell task-runner frameworks:
6
6
7
-
-**psake** (4.9.0+) — task-based build system
8
-
-**Invoke-Build** (5.8.1+) — alternative task runner
7
+
-**psake** (5.0.0+) — task-based build system with declarative syntax and content-addressed caching
8
+
-**Invoke-Build** (5.8.1+) — alternative task runner with native Inputs/Outputs caching
9
9
10
-
The module version is **0.7.3** and targets PowerShell 3.0+. It is cross-platform and tested on Windows, Linux, and macOS.
10
+
The module version is **1.0.0-alpha1** and targets PowerShell 5.1+. It is cross-platform and tested on Windows (including Windows PowerShell 5.1), Linux, and macOS.
11
11
12
12
---
13
13
@@ -26,8 +26,8 @@ PowerShellBuild/
26
26
├── Build/
27
27
│ └── Convert-PSAke.ps1 # Utility: converts psake tasks to Invoke-Build
28
28
├── PowerShellBuild/ # THE MODULE SOURCE (System Under Test)
ScriptAnalyzerErrors=One or more ScriptAnalyzer errors were found!
37
37
ScriptAnalyzerWarnings=One or more ScriptAnalyzer warnings were found!
38
38
ScriptAnalyzerIssues=One or more ScriptAnalyzer issues were found!
39
+
NoCertificateFound=No valid code signing certificate was found. Verify the configured CertificateSource and that a certificate with a private key is available.
40
+
CertificateResolvedFromStore=Resolved code signing certificate from store [{0}]: Subject=[{1}]
41
+
CertificateResolvedFromThumbprint=Resolved code signing certificate by thumbprint [{0}]: Subject=[{1}]
42
+
CertificateResolvedFromEnvVar=Resolved code signing certificate from environment variable [{0}]
43
+
CertificateResolvedFromPfxFile=Resolved code signing certificate from PFX file [{0}]
44
+
SigningModuleFiles=Signing [{0}] file(s) matching [{1}] in [{2}]...
CertificateSourceAutoResolved=CertificateSource is 'Auto'. Resolved to '{0}'.
48
+
CertificateMissingPrivateKey=The resolved certificate does not have an accessible private key. Code signing requires a certificate with a private key. Subject=[{0}]
49
+
CertificateExpired=The resolved certificate has expired (NotAfter: {0}). Code signing requires a valid, unexpired certificate. Subject=[{1}]
50
+
CertificateMissingCodeSigningEku=The resolved certificate does not have the Code Signing Enhanced Key Usage (EKU: 1.3.6.1.5.5.7.3.3). Subject=[{0}]
51
+
CertificateSourceStoreNotSupported=CertificateSource 'Store' is only supported on Windows platforms.
52
+
LLMOutputHeader=Test results (structured output):
53
+
MinimalFailureLine=[FAIL] {0} ({1}:{2}) - {3}
54
+
PesterConfigLoaded=Loaded PesterConfiguration from [{0}]
55
+
InvalidPesterConfigPath=PesterConfiguration file [{0}] not found
0 commit comments