Skip to content

[devops] Vendor Maestro changelog tool - #26461

Open
rolfbjarne wants to merge 5 commits into
mainfrom
dev/rolf/vendoring-maestro-tool
Open

[devops] Vendor Maestro changelog tool#26461
rolfbjarne wants to merge 5 commits into
mainfrom
dev/rolf/vendoring-maestro-tool

Conversation

@rolfbjarne

Copy link
Copy Markdown
Member

Replace the external dotnet-tools clone in the Maestro changelog workflow with a vendored scripts/changelog project.

The workflow now checks out the repository and runs the local tool instead of cloning spouliot/dotnet-tools.

🤖 Pull request created by Copilot

rolfbjarne and others added 2 commits August 24, 2026 17:29
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot AI lite review requested due to automatic review settings August 24, 2026 16:01
@rolfbjarne
rolfbjarne requested a review from dalexsoto as a code owner August 24, 2026 16:01
Comment thread .github/workflows/maestro-changelog.yml Fixed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR vendors the Maestro changelog generator into the repo under scripts/changelog and updates the maestro-changelog GitHub Actions workflow to run the local tool instead of cloning spouliot/dotnet-tools.

Changes:

  • Add a new scripts/changelog .NET console tool (README, csproj, and Makefile fragment).
  • Update .github/workflows/maestro-changelog.yml to checkout the repo and run the vendored tool via dotnet run.
  • Integrate the tool with the repo’s script templating mechanism via fragment.mk.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
scripts/changelog/README.md Documents the new vendored changelog tool and its invocation.
scripts/changelog/Program.cs Implements the changelog generator logic (diff parsing + nested dependency traversal).
scripts/changelog/fragment.mk Adds Makefile template integration for the script.
scripts/changelog/changelog.csproj Defines the tool project targeting net$(BundledNETCoreAppTargetFrameworkVersion).
.github/workflows/maestro-changelog.yml Switches workflow to use the vendored tool instead of cloning an external repo.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment thread scripts/changelog/Program.cs Outdated
Comment thread scripts/changelog/Program.cs
Comment thread scripts/changelog/Program.cs Outdated
Comment thread .github/workflows/maestro-changelog.yml Outdated
@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Suppressed comments (1)

.github/workflows/maestro-changelog.yml:26

  • ⚠️ This workflow installs .NET 9 explicitly, but the vendored tool targets net$(BundledNETCoreAppTargetFrameworkVersion). In this repo global.json pins a .NET 10 preview SDK, so this job is likely to fail to build/run the tool. Use global-json-file: ./global.json (as other workflows do) so the action uses the repo-pinned SDK.
    - uses: actions/setup-dotnet@a98b56852c35b8e3190ac28c8c2271da59106c68 # v6.0.0
      with:
        dotnet-version: '9'

Comment thread scripts/changelog/Program.cs
Comment thread scripts/changelog/Program.cs Outdated
Comment thread scripts/changelog/README.md Outdated
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Suppressed comments (1)

Previously missed (1) — in code that hasn't changed since the last review.

scripts/changelog/Program.cs:14

  • 🤖 💡 suggestion Code organization — These lists are initialized once and never reassigned; marking them readonly prevents accidental reassignment and makes the intent clearer.

Rule: Prefer immutable fields when possible

		static List<string> list = new ();
		static List<string> filters = new ();

cd dotnet-tools/changelog
dotnet build
./bin/Debug/net9.0/changelog https://github.com/$GITHUB_REPOSITORY/pull/${GITHUB_REF_NAME/\/*/} > /tmp/changelog.txt 2>&1
dotnet run --project scripts/changelog/changelog.csproj --verbosity quiet -- https://github.com/$GITHUB_REPOSITORY/pull/${GITHUB_REF_NAME/\/*/} /tmp/changelog.txt
@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

Copy link
Copy Markdown
Collaborator

✅ API diff for current PR / commit

NET (empty diffs)

✅ API diff vs stable

NET (empty diffs)

ℹ️ Generator diff

Generator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes)

Pipeline on Agent
Hash: 80c6b5c6f235c2b30222acdfee8aa097779fde09 [PR build]

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

Copy link
Copy Markdown
Collaborator

🚀 [CI Build #80c6b5c] Test results 🚀

Test results

✅ All tests passed on VSTS: test results.

🎉 All 205 tests passed 🎉

Tests counts

✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download
✅ cecil: All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (iOS): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (MacCatalyst): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (macOS): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (Multiple platforms): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (tvOS): All 1 tests passed. Html Report (VSDrops) Download
✅ framework: All 2 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 4 tests passed. Html Report (VSDrops) Download
✅ generator: All 5 tests passed. Html Report (VSDrops) Download
✅ interdependent-binding-projects: All 4 tests passed. Html Report (VSDrops) Download
✅ introspection: All 4 tests passed. Html Report (VSDrops) Download
✅ linker (iOS): All 15 tests passed. Html Report (VSDrops) Download
✅ linker (MacCatalyst): All 15 tests passed. Html Report (VSDrops) Download
✅ linker (macOS): All 21 tests passed. Html Report (VSDrops) Download
✅ linker (tvOS): All 15 tests passed. Html Report (VSDrops) Download
✅ monotouch (iOS): All 19 tests passed. Html Report (VSDrops) Download
✅ monotouch (MacCatalyst): All 18 tests passed. Html Report (VSDrops) Download
✅ monotouch (macOS): All 21 tests passed. Html Report (VSDrops) Download
✅ monotouch (tvOS): All 19 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ sharpie: All 1 tests passed. Html Report (VSDrops) Download
✅ windows: All 3 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 4 tests passed. Html Report (VSDrops) Download
✅ xtro: All 1 tests passed. Html Report (VSDrops) Download

macOS tests

✅ Tests on macOS Monterey (12): All 5 tests passed. Html Report (VSDrops) Download
✅ Tests on macOS Ventura (13): All 5 tests passed. Html Report (VSDrops) Download
✅ Tests on macOS Sonoma (14): All 5 tests passed. Html Report (VSDrops) Download
✅ Tests on macOS Sequoia (15): All 5 tests passed. Html Report (VSDrops) Download
✅ Tests on macOS Tahoe (26): All 5 tests passed. Html Report (VSDrops) Download

Linux Build Verification

Linux build succeeded

Pipeline on Agent
Hash: 80c6b5c6f235c2b30222acdfee8aa097779fde09 [PR build]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants