• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

jediknight112 / lets-debug-helper / 25694836785
85%

Build:
DEFAULT BRANCH: main
Ran 11 May 2026 08:17PM UTC
Jobs 2
Files 6
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 May 2026 08:17PM UTC coverage: 84.699% (+7.5%) from 77.174%
25694836785

push

github

web-flow
chore: code cleanup, docs revamp, PyPI metadata polish (#64)

Code:
- Add 10s HTTP timeouts to GET/POST so a slow API doesn't hang the CLI
- Cap polling at 60 attempts (~60s) so a stuck test surfaces as an
  error instead of looping forever
- sys.exit() -> sys.exit(1) on all error paths so shells can detect
  failures
- Drop textwrap and use rich's native console.print wrapping
- Switch remaining %-formatting and .format() to f-strings
- Use console.print consistently (no more bare print)
- Fix List[str] -> List[Dict[str, Any]] type lie in
  format_problem_output (drops the # type: ignore noise)
- Safer chained .get() that handles result=None
- Tighten domain regex: reject leading dot and leading hyphen labels
  (the previous regex accepted .example.com which isn't a valid host)
- Add module + function docstrings

Tests:
- Move .testdomain.com from valid -> invalid cases (was asserting the
  bug)
- Add invalid cases: trailing dot, leading hyphen, no TLD, short TLD,
  whitespace
- Add test that HTTP calls carry a timeout kwarg
- Add test that polling caps at MAX_POLL_ATTEMPTS instead of looping
- Tighten exit-code assertions to .code == 1
- Clean up swapped @patch parameter names that were masking what was
  actually being patched
- 15 -> 22 tests, all passing on Python 3.13

PyPI metadata (pyproject.toml):
- Add readme = "README.md" so the long description actually renders
  on the PyPI page (was missing - this is why the page is empty today)
- Replace personal name/email with GitHub username +
  17991353+jediknight112@users.noreply.github.com noreply address
- Update LICENSE copyright to match
- license = "MIT" (was the classifier-string form)
- Better description, plus homepage / repository / documentation /
  keywords / classifiers to populate the PyPI sidebar
- Drop unused argparse (stdlib since Python 2.7) and six (Py2/3
  compat shim, irrelevant on 3.13+) deps

Docs:
- Rewrite README with: what it does, install, usage, example output
  (success ... (continued)

70 of 80 new or added lines in 4 files covered. (87.5%)

155 of 183 relevant lines covered (84.7%)

1.69 hits per line

Uncovered Changes

Lines Coverage ∆ File
10
62.16
19.11% letsdebughelper/letsdebug.py
Jobs
ID Job ID Ran Files Coverage
1 25694836785.1 11 May 2026 08:17PM UTC 6
84.7
GitHub Action Run
2 25694836785.2 11 May 2026 08:17PM UTC 6
84.7
GitHub Action Run
Source Files on build 25694836785
  • Tree
  • List 6
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25694836785
  • 9e21c346 on github
  • Prev Build on main (#25693895213)
  • Next Build on main (#25713962255)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc