[csolution-rpc] Extend PackReference with optional locked and missing nodes#2490
[csolution-rpc] Extend PackReference with optional locked and missing nodes#2490brondani wants to merge 3 commits into
PackReference with optional locked and missing nodes#2490Conversation
Test Results 3 files - 55 21 suites - 155 17m 31s ⏱️ - 7m 52s Results for commit a4f778a. ± Comparison against base commit 0b16215. This pull request removes 451 and adds 2 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Pull request overview
This PR extends pack reference handling in the project manager RPC flow so GetUsedItems can report locked-but-unresolved packs and missing pack references.
Changes:
- Adds
missingtracking toPackageItemandlockedPackstracking toContextItem. - Updates RPC pack reference generation to emit optional
lockedandmissingfields. - Bumps the fetched RPC interface and adds tests/test data for locked and missing pack references.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
tools/projmgr/CMakeLists.txt |
Updates the fetched csolution-rpc package version/source. |
tools/projmgr/include/ProjMgrWorker.h |
Adds storage for missing pack state and locked pack IDs. |
tools/projmgr/src/ProjMgrWorker.cpp |
Populates missing state and tracks locked packs during pack resolution. |
tools/projmgr/src/ProjMgrRpcServer.cpp |
Emits locked and missing fields in PackReference responses. |
tools/projmgr/test/src/ProjMgrRpcTests.cpp |
Adds RPC tests for locked and missing pack reference fields. |
tools/projmgr/test/data/TestSolution/PackLocking/pack_reference_locked.csolution.yml |
Adds test solution data for a locked pack reference case. |
tools/projmgr/test/data/TestSolution/PackLocking/pack_reference_locked.cbuild-pack.yml |
Adds cbuild-pack lock data for an unavailable locked pack version. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
PackReference with optional locked and missing nodes
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2490 +/- ##
=======================================
Coverage 65.24% 65.24%
=======================================
Files 147 147
Lines 26666 26674 +8
Branches 16159 16166 +7
=======================================
+ Hits 17397 17404 +7
Misses 7074 7074
- Partials 2195 2196 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
Fixes
Changes
PackReferencewithlockedandmissingnodes csolution-rpc#80PackReference:locked: the pack identifier that is locked in cbuild-pack when the pack is not installedmissing: set totruewhen the pack is not installedExample response for a
GetUsedItemsRPC request with a locked but not installed pack:{ "id": 20, "jsonrpc": "2.0", "result": { "components": [ ... ], "packs": [ { "locked": "ARM::CMSIS-Compiler@2.2.0-dev", "missing": true, "origin": "D:/examples/csolution-examples-wip/DualCore/HelloWorld.csolution.yml", "pack": "ARM::CMSIS-Compiler@^2.2.0-0", "selected": true, "upgrade": "2.2.0" }, ... ] }, "success":true }Checklist