← Back to issue list

fix: fetch-lib error message showing "Library None not found"

View original Github issue

Metadata

Project
charmcraft
Number
#2505
Type
pull request
State
open
Author
Copilot
Labels
Created
2025-12-03 19:20:39+00:00
Updated
2025-12-08 21:52:59+00:00
Closed

Current evaluation

No evaluation has been recorded for this issue yet.

Issue body

Fixes #2204 where running `charmcraft fetch-lib` without arguments displays "Library None not found in Charmhub" instead of showing the actual library name when a library cannot be found. ## Changes Made - **Error message fix**: Updated `charmcraft/application/commands/store.py` line 1566 to use `lib_data.full_name` instead of `parsed_args.library` so the actual library name is displayed - **Exception handling**: Improved error handling (lines 1537-1545) to only override the error message when a specific library is requested; otherwise re-raises the original error with proper context - **Integration test**: Added `test_fetchlib_all_library_not_found` in `tests/integration/commands/test_store_commands.py` to verify the error message shows the library name when fetching all libraries - **Spread test**: Added `store/libraries-not-found` in `tests/spread/store/libraries-not-found/task.yaml` to test the command-line behavior end-to-end ## Root Cause When running `charmcraft fetch-lib` without arguments (to update all local libraries), `parsed_args.library` is `None`. The original code used this value directly in error messages, resulting in "Library None not found in Charmhub" instead of showing which specific library couldn't be found. ## Testing - ✅ Code compiles successfully - ✅ All 202 unit tests pass - ✅ Code passes linting checks - ✅ Integration test verifies error message contains library name - ✅ Spread test validates command-line behavior - ✅ Minimal changes preserve existing functionality --- - [ ] I've followed the [contribution guidelines](https://github.com/canonical/charmcraft/blob/main/CONTRIBUTING.md). - [ ] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/). - [x] I've successfully run `make lint && make test`. - [ ] I've added or updated any relevant documentation. - [ ] I've updated the relevant release notes. <!-- START COPILOT CODING AGENT TIPS --> --- ✨ Let Copilot coding agent [set things up for you](https://github.com/canonical/charmcraft/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot) — coding agent works faster and does higher quality work when set up for your repo.

Evaluation history

No evaluation history available.