← Back to issue list

refactor: use humanize_list from craft-application

View original Github issue

Metadata

Project
snapcraft
Number
#6432
Type
pull request
State
closed
Author
mr-cal
Labels
—
Created
Updated
Closed

Current evaluation

Merged #6432 via commit 87c89a9b9, replacing Snapcraft’s local humanize_list with craft-application’s implementation after ty 0.0.83 complaints.

Resolution: closed resolved

Reason: PR #6432 was approved and merged. Commit 87c89a9b9 removed the local helper and updated Snapcraft to import humanize_list from craft-application.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Ty 0.0.83 started complaining about snapcraft's `humanize_list()` function. Rather than fix it, I switched to craft-app's [`humanize_list()`](https://github.com/canonical/craft-application/blob/cbd303093570acff7b62c7bd09952b8760237edf/craft_application/util/string.py#L39). --- - [x] I've followed the [contribution guidelines](https://github.com/canonical/snapcraft/blob/main/CONTRIBUTING.md). - [x] 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. - [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing. - [ ] I've updated the relevant release notes.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged #6432 via commit 87c89a9b9, replacing Snapcraft’s local humanize_list with craft-application’s implementation after ty 0.0.83 complaints.
stealth/space-bunny-alpha — closed resolved Replaced Snapcraft’s local humanize_list with craft-application’s implementation in #6432 to address ty 0.0.83 complaints; approved by two reviewers.
gemini-3.8-flash
Impact: 15
Quick Win: 6
Complexity: 15
Confidence: 90
Actionability: 45
keep open Refactors snapcraft to import humanize_list from craft-application instead of maintaining an internal implementation, with pending CI checks and failures.

Update history

Date Change
closed
updated
updated
updated
updated
created

Related issues

Issue Project State Summary Similarity
#183 Include humanize_list function as a utility craft-cli open humanize_list and unit tests now exist in craft-cli, but downstream craft-app migration remains unresolved; the humanize-based craft-parts experiment was closed unmerged.
74%
#4682 refactor(app): use more code from craft-app snapcraft merged Merged as c9b6941d4, replacing Snapcraft-specific application logic with craft-app functionality (36 additions and 49 deletions across three files).
74%
#3701 utils: port humanize_list from Snapcraft legacy snapcraft merged Merged PR #3701 into snapcraft/7.0 (d905e128c), porting humanize_list from legacy, making no functional change, and updating tests to pytest.
74%
#997 experimental: use humanize for lists craft-parts closed PR #997 was closed unmerged after prolonged inactivity; the proposed switch from craft-parts' humanize_list to humanize.natural_list was abandoned.
71%