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

TheKevJames / coveralls-python / 29813910377
95%
master: 96%

Build:
Build:
LAST BUILD BRANCH: kjames/retries
DEFAULT BRANCH: master
Ran 21 Jul 2026 08:21AM UTC
Jobs 5
Files 8
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

21 Jul 2026 08:20AM UTC coverage: 94.665% (+0.2%) from 94.51%
29813910377

Pull #759

github

TheKevJames
feat(cli): promote finish/save/upload verbs to subcommands

The CLI mixed two kinds of thing in one flat namespace: verbs (mutually
exclusive modes selected by --finish/--output/--submit) and modifiers that
tune a verb. Modelling verbs as independent flags left no guardrails -- e.g.
the debug subcommand inherited the full flag set and would silently ignore
--output/--submit/--finish, and conflicting verbs resolved by an undocumented
precedence ladder rather than erroring.

Promote the verbs to first-class subcommands alongside the existing debug:

  coveralls              collect + submit (unchanged bare invocation)
  coveralls finish       parallel-finish webhook       (was --finish)
  coveralls save FILE    write report to a file        (was --output FILE)
  coveralls upload FILE  upload a pre-generated report (was --submit FILE)
  coveralls debug        build report, dump to stdout, don't send

Each command declares only the options it uses, so options are still given
after the command name (e.g. `coveralls debug --rcfile=x`) and inapplicable
flag/verb combinations become clean usage errors instead of silent no-ops:
finish/upload no longer advertise the report-building modifiers they ignore,
and the debug subcommand no longer accepts the verb flags it used to swallow.

Backwards compatibility is preserved: --finish, --output and --submit remain
as hidden, deprecated aliases on the default command that dispatch to the new
subcommands and emit a deprecation warning in the same style as the existing
rcfile/config_file and --service/--service-name deprecations. Passing a
deprecated verb flag together with a subcommand, or more than one verb flag at
once, is now rejected rather than silently resolved by precedence. Usage
errors are rendered as a message plus exit code rather than a traceback.

Docs are updated to teach the subcommands, and CLI tests cover the new
surface, the deprecated aliases (warning plus identical dispatch), and the
guardrails.
Pull Request #759: feat(cli): promote finish/save/upload verbs to subcommands

153 of 164 branches covered (93.29%)

Branch coverage included in aggregate %.

92 of 94 new or added lines in 1 file covered. (97.87%)

2 existing lines in 1 file now uncovered.

539 of 567 relevant lines covered (95.06%)

4.75 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
95.38
0.55% coveralls/cli.py

Coverage Regressions

Lines Coverage ∆ File
2
95.38
0.55% coveralls/cli.py
Jobs
ID Job ID Ran Files Coverage
1 29813910377.1 21 Jul 2026 08:21AM UTC 8
94.66
GitHub Action Run
2 29813910377.2 21 Jul 2026 08:21AM UTC 8
94.66
GitHub Action Run
3 29813910377.3 21 Jul 2026 08:22AM UTC 8
94.66
GitHub Action Run
4 29813910377.4 21 Jul 2026 08:22AM UTC 8
94.66
GitHub Action Run
5 29813910377.5 21 Jul 2026 08:22AM UTC 8
94.66
GitHub Action Run
Source Files on build 29813910377
  • Tree
  • List 8
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Pull Request #759
  • PR Base - master (#29767320903)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc