Skip to content

Commit 039e7d2

Browse files
committed
Merge branch 'master' into upstream-development
* master: Bump peter-evans/create-pull-request from 7 to 8 Bump actions/upload-artifact from 5 to 6 Update Dependabot configuration for GitHub Actions Add success conditionals to build and package summary steps Add missing success conditionals to CodeQL and branches workflows Add success conditionals to upload summary and separate test completion step Improve pluralization clarity, fix test table headers, and add hash comment Refactor artifact summary to use loop and improve pluralization Add success conditionals to test summary steps Add GITHUB_STEP_SUMMARY to all CI/CD workflows Initial plan ⬆️ Update dependencies (clink v1.9.5) Clean luacheck warning. Fix branch name in a newly inited repo. Update the git prompt to support repos with git reftables. Bump actions/checkout from 5 to 6 ⬆️ Update dependencies (git-for-windows v2.52.0.windows.1, clink v1.9.2, clink-completions v0.6.7)
2 parents f461904 + ee96727 commit 039e7d2

8 files changed

Lines changed: 364 additions & 31 deletions

File tree

.github/dependabot.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
# To get started with Dependabot version updates, you'll need to specify which
2-
# package ecosystems to update and where the package manifests are located.
3-
# Please see the documentation for all configuration options:
4-
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5-
61
version: 2
72
updates:
8-
- package-ecosystem: "github-actions" # See documentation for possible values
3+
# Enable version updates for GitHub Actions
4+
- package-ecosystem: "github-actions"
95
directory: "/" # Location of package manifests
106
schedule:
117
interval: "weekly"
8+
labels:
9+
- "👆 Dependencies"
10+
- "🔄️ GitHub Actions"

.github/workflows/branches.yml

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,25 @@ jobs:
1919
# Steps represent a sequence of tasks that will be executed as part of the job
2020
steps:
2121
# Checks-out the repository under $GITHUB_WORKSPACE, so the job can access it
22-
- uses: actions/checkout@v5
22+
- uses: actions/checkout@v6
2323
with:
2424
fetch-depth: 0 # fetch all history for all branches and tags
2525

26+
- name: Summary - Merge operation started
27+
shell: bash
28+
run: |
29+
echo "## 🔀 Update Branches - Workflow Summary" >> $GITHUB_STEP_SUMMARY
30+
echo "" >> $GITHUB_STEP_SUMMARY
31+
echo "### Merge Operation" >> $GITHUB_STEP_SUMMARY
32+
echo "" >> $GITHUB_STEP_SUMMARY
33+
echo "| Property | Value |" >> $GITHUB_STEP_SUMMARY
34+
echo "| --- | --- |" >> $GITHUB_STEP_SUMMARY
35+
echo "| Source Branch | \`master\` |" >> $GITHUB_STEP_SUMMARY
36+
echo "| Target Branch | \`development\` |" >> $GITHUB_STEP_SUMMARY
37+
echo "| Triggered by | @${{ github.actor }} |" >> $GITHUB_STEP_SUMMARY
38+
echo "| Commit | \`${{ github.sha }}\` |" >> $GITHUB_STEP_SUMMARY
39+
echo "" >> $GITHUB_STEP_SUMMARY
40+
2641
# Runs a single command using the runners shell
2742
- name: Merge master into development
2843
run: |
@@ -31,3 +46,15 @@ jobs:
3146
git checkout development
3247
git merge --no-ff master
3348
git push origin development
49+
50+
- name: Summary - Merge completed
51+
if: success()
52+
shell: bash
53+
run: |
54+
echo "### ✅ Merge Successful" >> $GITHUB_STEP_SUMMARY
55+
echo "" >> $GITHUB_STEP_SUMMARY
56+
echo "The \`master\` branch has been successfully merged into \`development\`." >> $GITHUB_STEP_SUMMARY
57+
echo "" >> $GITHUB_STEP_SUMMARY
58+
echo "**Merge type:** No fast-forward merge" >> $GITHUB_STEP_SUMMARY
59+
echo "" >> $GITHUB_STEP_SUMMARY
60+
echo "> The development branch is now synchronized with the latest changes from master." >> $GITHUB_STEP_SUMMARY

.github/workflows/build.yml

Lines changed: 77 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,25 @@ jobs:
3535
discussions: write
3636
steps:
3737
- name: Check out repository code (Action from GitHub)
38-
uses: actions/checkout@v5
38+
uses: actions/checkout@v6
3939
with:
4040
fetch-depth: 0
4141

42+
- name: Summary - Repository checkout
43+
shell: pwsh
44+
run: |
45+
echo "## 📦 Build Cmder - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY
46+
echo "" >> $env:GITHUB_STEP_SUMMARY
47+
echo "### Repository Information" >> $env:GITHUB_STEP_SUMMARY
48+
echo "| Property | Value |" >> $env:GITHUB_STEP_SUMMARY
49+
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY
50+
echo "| Repository | \`${{ github.repository }}\` |" >> $env:GITHUB_STEP_SUMMARY
51+
echo "| Branch | \`${{ github.ref_name }}\` |" >> $env:GITHUB_STEP_SUMMARY
52+
echo "| Commit | \`${{ github.sha }}\` |" >> $env:GITHUB_STEP_SUMMARY
53+
echo "| Actor | @${{ github.actor }} |" >> $env:GITHUB_STEP_SUMMARY
54+
echo "| Workflow | \`${{ github.workflow }}\` |" >> $env:GITHUB_STEP_SUMMARY
55+
echo "" >> $env:GITHUB_STEP_SUMMARY
56+
4257
- name: Add MSBuild to PATH
4358
uses: microsoft/setup-msbuild@v2
4459

@@ -47,6 +62,15 @@ jobs:
4762
working-directory: scripts
4863
run: .\build.ps1 -Compile -verbose -terminal all
4964

65+
- name: Summary - Build completed
66+
if: success()
67+
shell: pwsh
68+
run: |
69+
echo "### ✅ Build Status" >> $env:GITHUB_STEP_SUMMARY
70+
echo "" >> $env:GITHUB_STEP_SUMMARY
71+
echo "Cmder launcher successfully compiled." >> $env:GITHUB_STEP_SUMMARY
72+
echo "" >> $env:GITHUB_STEP_SUMMARY
73+
5074
- name: Pack the built files
5175
shell: pwsh
5276
working-directory: scripts
@@ -92,31 +116,64 @@ jobs:
92116
path: build/cmder_wt_mini.zip
93117
name: cmder_wt_mini.zip
94118

119+
- name: Summary - Package artifacts
120+
if: success()
121+
shell: pwsh
122+
run: |
123+
echo "### 📦 Artifacts Created" >> $env:GITHUB_STEP_SUMMARY
124+
echo "" >> $env:GITHUB_STEP_SUMMARY
125+
echo "| Artifact | Size | Hash (SHA256) |" >> $env:GITHUB_STEP_SUMMARY
126+
echo "| --- | --- | --- |" >> $env:GITHUB_STEP_SUMMARY
127+
$artifacts = @("cmder.zip", "cmder.7z", "cmder_mini.zip")
128+
foreach ($artifact in $artifacts) {
129+
$path = "build/$artifact"
130+
if (Test-Path $path) {
131+
$size = (Get-Item $path).Length / 1MB
132+
# Truncate hash to first 16 chars for summary readability (full hash in hashes.txt)
133+
$hash = (Get-FileHash $path -Algorithm SHA256).Hash.Substring(0, 16)
134+
echo "| \`$artifact\` | $([math]::Round($size, 2)) MB | \`$hash...\` |" >> $env:GITHUB_STEP_SUMMARY
135+
}
136+
}
137+
echo "" >> $env:GITHUB_STEP_SUMMARY
138+
95139
- name: Upload artifact (cmder.zip)
96-
uses: actions/upload-artifact@v5
140+
uses: actions/upload-artifact@v6
97141
with:
98142
path: build/cmder.zip
99143
name: cmder.zip
100144
if-no-files-found: error
101145

102146
- name: Upload artifact (cmder.7z)
103-
uses: actions/upload-artifact@v5
147+
uses: actions/upload-artifact@v6
104148
with:
105149
path: build/cmder.7z
106150
name: cmder.7z
107151

108152
- name: Upload artifact (cmder_mini.zip)
109-
uses: actions/upload-artifact@v5
153+
uses: actions/upload-artifact@v6
110154
with:
111155
path: build/cmder_mini.zip
112156
name: cmder_mini.zip
113157

114158
- name: Upload artifact (hashes.txt)
115-
uses: actions/upload-artifact@v5
159+
uses: actions/upload-artifact@v6
116160
with:
117161
path: build/hashes.txt
118162
name: hashes.txt
119163

164+
- name: Summary - Artifacts uploaded
165+
if: success()
166+
shell: pwsh
167+
run: |
168+
echo "### ☁️ Upload Status" >> $env:GITHUB_STEP_SUMMARY
169+
echo "" >> $env:GITHUB_STEP_SUMMARY
170+
echo "All artifacts successfully uploaded to GitHub Actions:" >> $env:GITHUB_STEP_SUMMARY
171+
echo "- ✅ \`cmder.zip\`" >> $env:GITHUB_STEP_SUMMARY
172+
echo "- ✅ \`cmder.7z\`" >> $env:GITHUB_STEP_SUMMARY
173+
echo "- ✅ \`cmder_mini.zip\`" >> $env:GITHUB_STEP_SUMMARY
174+
echo "- ✅ \`hashes.txt\`" >> $env:GITHUB_STEP_SUMMARY
175+
echo "" >> $env:GITHUB_STEP_SUMMARY
176+
120177
- name: Create Release
121178
uses: softprops/action-gh-release@v2
122179
with:
@@ -131,3 +188,18 @@ jobs:
131188
draft: true
132189
generate_release_notes: true
133190
if: startsWith(github.ref, 'refs/tags/')
191+
192+
- name: Summary - Release created
193+
if: startsWith(github.ref, 'refs/tags/')
194+
shell: pwsh
195+
run: |
196+
echo "### 🚀 Release Information" >> $env:GITHUB_STEP_SUMMARY
197+
echo "" >> $env:GITHUB_STEP_SUMMARY
198+
echo "Draft release created for tag: **\`${{ github.ref_name }}\`**" >> $env:GITHUB_STEP_SUMMARY
199+
echo "" >> $env:GITHUB_STEP_SUMMARY
200+
echo "Release includes:" >> $env:GITHUB_STEP_SUMMARY
201+
echo "- Full version (\`cmder.zip\`, \`cmder.7z\`)" >> $env:GITHUB_STEP_SUMMARY
202+
echo "- Mini version (\`cmder_mini.zip\`)" >> $env:GITHUB_STEP_SUMMARY
203+
echo "- File hashes (\`hashes.txt\`)" >> $env:GITHUB_STEP_SUMMARY
204+
echo "" >> $env:GITHUB_STEP_SUMMARY
205+
echo "> ⚠️ Release is in **draft** mode. Please review and publish manually." >> $env:GITHUB_STEP_SUMMARY

.github/workflows/codeql.yml

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,22 @@ jobs:
4545

4646
steps:
4747
- name: Checkout repository
48-
uses: actions/checkout@v5
48+
uses: actions/checkout@v6
49+
50+
- name: Summary - CodeQL analysis started
51+
shell: pwsh
52+
run: |
53+
echo "## 🔒 CodeQL Security Analysis - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY
54+
echo "" >> $env:GITHUB_STEP_SUMMARY
55+
echo "### Analysis Configuration" >> $env:GITHUB_STEP_SUMMARY
56+
echo "" >> $env:GITHUB_STEP_SUMMARY
57+
echo "| Property | Value |" >> $env:GITHUB_STEP_SUMMARY
58+
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY
59+
echo "| Repository | \`${{ github.repository }}\` |" >> $env:GITHUB_STEP_SUMMARY
60+
echo "| Branch | \`${{ github.ref_name }}\` |" >> $env:GITHUB_STEP_SUMMARY
61+
echo "| Language | \`${{ matrix.language }}\` |" >> $env:GITHUB_STEP_SUMMARY
62+
echo "| Commit | \`${{ github.sha }}\` |" >> $env:GITHUB_STEP_SUMMARY
63+
echo "" >> $env:GITHUB_STEP_SUMMARY
4964
5065
# Initializes the CodeQL tools for scanning.
5166
- name: Initialize CodeQL
@@ -67,7 +82,28 @@ jobs:
6782
working-directory: scripts
6883
run: .\build.ps1 -Compile -verbose
6984

85+
- name: Summary - Build status
86+
if: success()
87+
shell: pwsh
88+
run: |
89+
echo "### ✅ Build Completed" >> $env:GITHUB_STEP_SUMMARY
90+
echo "" >> $env:GITHUB_STEP_SUMMARY
91+
echo "Cmder launcher built successfully for CodeQL analysis." >> $env:GITHUB_STEP_SUMMARY
92+
echo "" >> $env:GITHUB_STEP_SUMMARY
93+
7094
- name: Perform CodeQL Analysis
7195
uses: github/codeql-action/analyze@v4
7296
with:
7397
category: "/language:${{matrix.language}}"
98+
99+
- name: Summary - Analysis completed
100+
if: success()
101+
shell: pwsh
102+
run: |
103+
echo "### 🔍 CodeQL Analysis Results" >> $env:GITHUB_STEP_SUMMARY
104+
echo "" >> $env:GITHUB_STEP_SUMMARY
105+
echo "✅ CodeQL security analysis completed successfully." >> $env:GITHUB_STEP_SUMMARY
106+
echo "" >> $env:GITHUB_STEP_SUMMARY
107+
echo "**Language analyzed:** \`${{ matrix.language }}\`" >> $env:GITHUB_STEP_SUMMARY
108+
echo "" >> $env:GITHUB_STEP_SUMMARY
109+
echo "> Check the Security tab for detailed findings and recommendations." >> $env:GITHUB_STEP_SUMMARY

.github/workflows/tests.yml

Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,17 +38,78 @@ jobs:
3838
continue-on-error: false
3939

4040
steps:
41-
- uses: actions/checkout@v5
41+
- uses: actions/checkout@v6
42+
43+
- name: Summary - Test execution started
44+
shell: pwsh
45+
run: |
46+
echo "## 🧪 Run Tests - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY
47+
echo "" >> $env:GITHUB_STEP_SUMMARY
48+
echo "### Test Environment" >> $env:GITHUB_STEP_SUMMARY
49+
echo "| Property | Value |" >> $env:GITHUB_STEP_SUMMARY
50+
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY
51+
echo "| Repository | \`${{ github.repository }}\` |" >> $env:GITHUB_STEP_SUMMARY
52+
echo "| Branch | \`${{ github.ref_name }}\` |" >> $env:GITHUB_STEP_SUMMARY
53+
echo "| Commit | \`${{ github.sha }}\` |" >> $env:GITHUB_STEP_SUMMARY
54+
echo "| Runner OS | \`${{ runner.os }}\` |" >> $env:GITHUB_STEP_SUMMARY
55+
echo "" >> $env:GITHUB_STEP_SUMMARY
56+
4257
- name: Initialize vendors
4358
shell: pwsh
4459
working-directory: scripts
4560
run: .\build.ps1 -verbose
61+
62+
- name: Summary - Vendor initialization
63+
if: success()
64+
shell: pwsh
65+
run: |
66+
echo "### ⚙️ Vendor Initialization" >> $env:GITHUB_STEP_SUMMARY
67+
echo "" >> $env:GITHUB_STEP_SUMMARY
68+
echo "✅ Vendor dependencies initialized successfully." >> $env:GITHUB_STEP_SUMMARY
69+
echo "" >> $env:GITHUB_STEP_SUMMARY
70+
71+
- name: Summary - Test results table header
72+
if: success()
73+
shell: pwsh
74+
run: |
75+
echo "### 📋 Test Results" >> $env:GITHUB_STEP_SUMMARY
76+
echo "" >> $env:GITHUB_STEP_SUMMARY
77+
echo "| Test | Status |" >> $env:GITHUB_STEP_SUMMARY
78+
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY
79+
4680
- name: Testing Clink Shell
4781
run: |
4882
cmd /c vendor\init.bat /v /d /t
83+
84+
- name: Summary - Clink Shell test
85+
if: success()
86+
shell: pwsh
87+
run: |
88+
echo "| Clink Shell | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY
4989
- name: Testing PowerShell
5090
run: |
5191
PowerShell.exe -ExecutionPolicy Bypass -NoLogo -NoProfile -Command "$env:CMDER_DEBUG='1'; . 'vendor\profile.ps1'"
92+
93+
- name: Summary - PowerShell test
94+
if: success()
95+
shell: pwsh
96+
run: |
97+
echo "| PowerShell | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY
5298
- name: Testing Bash
5399
run: |
54100
bash vendor/cmder.sh
101+
102+
- name: Summary - Bash test
103+
if: success()
104+
shell: pwsh
105+
run: |
106+
echo "| Bash | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY
107+
108+
- name: Summary - All tests completed
109+
if: success()
110+
shell: pwsh
111+
run: |
112+
echo "" >> $env:GITHUB_STEP_SUMMARY
113+
echo "### ✅ All Tests Completed" >> $env:GITHUB_STEP_SUMMARY
114+
echo "" >> $env:GITHUB_STEP_SUMMARY
115+
echo "All shell environments tested successfully!" >> $env:GITHUB_STEP_SUMMARY

.github/workflows/vendor.yml

Lines changed: 42 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,18 @@ jobs:
2424
pull-requests: write
2525

2626
steps:
27-
- uses: actions/checkout@v5
27+
- uses: actions/checkout@v6
2828
with:
2929
fetch-depth: 0
3030

31+
- name: Summary - Workflow started
32+
shell: pwsh
33+
run: |
34+
echo "## 📦 Update Vendor - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY
35+
echo "" >> $env:GITHUB_STEP_SUMMARY
36+
echo "Checking for vendor dependency updates..." >> $env:GITHUB_STEP_SUMMARY
37+
echo "" >> $env:GITHUB_STEP_SUMMARY
38+
3139
- id: make-changes
3240
name: Checking for updates
3341
env:
@@ -51,7 +59,25 @@ jobs:
5159
Set-GHVariable -Name LIST_UPDATED -Value $listUpdated.Trim(', ')
5260
echo "UPDATE_MESSAGE<<<EOF`n$updateMessage`n<EOF" | Out-File -FilePath $env:GITHUB_ENV -Append -Encoding utf8
5361
54-
- uses: peter-evans/create-pull-request@v7
62+
- name: Summary - Update check results
63+
shell: pwsh
64+
run: |
65+
$count = $env:COUNT_UPDATED
66+
if ($count -eq 0) {
67+
echo "### ✅ No Updates Available" >> $env:GITHUB_STEP_SUMMARY
68+
echo "" >> $env:GITHUB_STEP_SUMMARY
69+
echo "All vendor dependencies are up to date." >> $env:GITHUB_STEP_SUMMARY
70+
} else {
71+
$word = if ($count -eq 1) { 'dependency' } else { 'dependencies' }
72+
echo "### 🔄 Updates Found" >> $env:GITHUB_STEP_SUMMARY
73+
echo "" >> $env:GITHUB_STEP_SUMMARY
74+
echo "**$count** vendor $word updated:" >> $env:GITHUB_STEP_SUMMARY
75+
echo "" >> $env:GITHUB_STEP_SUMMARY
76+
echo "$env:UPDATE_MESSAGE" >> $env:GITHUB_STEP_SUMMARY
77+
echo "" >> $env:GITHUB_STEP_SUMMARY
78+
}
79+
80+
- uses: peter-evans/create-pull-request@v8
5581
if: env.COUNT_UPDATED > 0
5682
with:
5783
title: 'Updates to `${{ env.COUNT_UPDATED }}` vendored dependencies'
@@ -63,3 +89,17 @@ jobs:
6389
commit-message: '⬆️ Update dependencies (${{ env.LIST_UPDATED }})'
6490
branch: update-vendor
6591
base: master
92+
93+
- name: Summary - Pull request created
94+
if: env.COUNT_UPDATED > 0
95+
shell: pwsh
96+
run: |
97+
echo "### 🎉 Pull Request Created" >> $env:GITHUB_STEP_SUMMARY
98+
echo "" >> $env:GITHUB_STEP_SUMMARY
99+
echo "A pull request has been created to update the vendor dependencies." >> $env:GITHUB_STEP_SUMMARY
100+
echo "" >> $env:GITHUB_STEP_SUMMARY
101+
echo "**Branch:** \`update-vendor\`" >> $env:GITHUB_STEP_SUMMARY
102+
echo "" >> $env:GITHUB_STEP_SUMMARY
103+
echo "**Updated dependencies:** $env:LIST_UPDATED" >> $env:GITHUB_STEP_SUMMARY
104+
echo "" >> $env:GITHUB_STEP_SUMMARY
105+
echo "> Please review and merge the pull request to apply the updates." >> $env:GITHUB_STEP_SUMMARY

0 commit comments

Comments
 (0)