`--host ::1` (IPv6) builds a broken URL and crashes the port check
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 90/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- python
- Domain
- cli, networking
Research direction
Start in taskuary/cli.py at public_url and _busy, then read test_public_url_rewrites_wildcard_bind in tests/test_config.py. Run python -m pytest -q after adding coverage for the bracketed IPv6 URL and _busy('::1', ) returning False without raising. Done means both IPv6 cases work while the existing behavior remains passing.
Written by the indexing model from the issue text.
Description
public_url('::1', 7787) -> 'http://::1:7787' # should be http://[::1]:7787
urlsplit(that).port -> ValueError
_busy('::1', 7787) -> socket.gaierror # always opens an IPv4 socket
Where: taskuary/cli.py - public_url and _busy.
Done when an IPv6 host is bracketed in the URL, and _busy works for it (for example socket.create_connection, or the address family from getaddrinfo).
Test - extend test_public_url_rewrites_wildcard_bind in tests/test_config.py with public_url('::1', 7787) == 'http://[::1]:7787', and check _busy('::1', <a free port>) returns False instead of raising.
Getting started: pip install -e ".[dev]", then python -m pytest -q (offline, a few seconds). UI work: cd website && npm ci && npm test. See CONTRIBUTING.md. One small PR with the change and its test is perfect.
- Dominant language
- Python
- Stars
- 116
- Forks
- 22
- Avg merge
- 1d 9m
- Merged PRs (30d)
- 11
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ldbumble/taskuary
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
All issues in ldbumble/taskuary
Similar issues
-
needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
openvinotoolkit/openvino_notebooks#3665 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day
-
docs
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
benchmark-gap
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day