Skip to content

Require a more recent version of the wcwidth dependency#1683

Open
rolandwalker wants to merge 1 commit intomainfrom
RW/require-wcwidth-v0-6-0
Open

Require a more recent version of the wcwidth dependency#1683
rolandwalker wants to merge 1 commit intomainfrom
RW/require-wcwidth-v0-6-0

Conversation

@rolandwalker
Copy link
Contributor

Description

The transitive version of wcwidth through cli_helpers->tabulate is not always up to date.

I'm not sure I can explain why this is, only that when installing the mycli wheel from PyPi, it pulls in wcwidth 0.2.14, which is inferior. Maybe this is because cli_helpers uses a setup.py instead of a pyproject.toml? Maybe because cli_helpers declares that it can run on Python 3.6? In any case, we can fix it here for mycli.

The motivation is to get better rendering of tables when there are Unicode characters therein, especially emoji and CJK characters.

Checklist

  • I added this contribution to the changelog.md file.
  • I added my name to the AUTHORS file (or it's already there).
  • To lint and format the code, I ran
    uv run ruff check && uv run ruff format && uv run mypy --install-types .

The transitive version through cli_helpers is not always up to date.

The motivation is to get better rendering of tables when there are
Unicode characters therein, especially emoji and CJK characters.
@rolandwalker rolandwalker force-pushed the RW/require-wcwidth-v0-6-0 branch from d413a20 to d1c91ae Compare March 7, 2026 12:26
@github-actions
Copy link

github-actions bot commented Mar 7, 2026

  1. High: wcwidth ~= 0.6.0 is very likely unsatisfiable and can break fresh installs/resolution.
    File: pyproject.toml:20
    Why: ~=0.6.0 means >=0.6.0,<0.7.0, but the PR description itself says environments are currently resolving wcwidth 0.2.14 (i.e., the ecosystem is on 0.2.x). If 0.6.x does not exist on PyPI, pip install mycli will fail.
    Action: pin to an actually available range (for example wcwidth >=0.2.14,<0.3) and run a packaging install check in CI.

No direct security issues found in this diff.

Missing test/coverage gap:

  1. Add a packaging smoke test that builds/install from wheel/sdist and verifies dependency resolution, so invalid version specifiers are caught before merge/release.

@rolandwalker rolandwalker self-assigned this Mar 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant