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

ArduPilot / MethodicConfigurator / 24541849970
96%

Build:
DEFAULT BRANCH: master
Ran 17 Apr 2026 02:31AM UTC
Jobs 4
Files 80
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

17 Apr 2026 12:48AM UTC coverage: 94.149% (+0.06%) from 94.089%
24541849970

push

github

amilcarlucas
fix(backend_filesystem): skip 00_default.param when restarting after final step

The vehicle configuration flow writes the current step to
last_uploaded_filename.txt on every step, so when the user completes the
final step (53_everyday_use.param) and relaunches the program, get_start_file
now detects that start_file_index is past the end of the list.

Previously it returned start_file, which resolves to files[0]
(00_default.param) when tcal_available=True. 00_default.param is a read-only
snapshot of the flight controller's factory defaults, not an editable step.
Users reported (#1507) that the UI would then present 00_default.param and
spend a long time loading it.

Keep the tcal_available branching untouched (tcal_available=False already
picks files[2] and must keep doing so), and only walk forward past
00_default.param when start_file itself is that read-only snapshot. Covered
by two new assertions in test_get_start_file_after_final_file_skips_default
-- one for each tcal_available path.

Fixes #1507

Address @amilcarlucas review feedback on #1521:

- Collapse the forward-walk loop into a single-expression next() with
  a typed default so the function drops one return statement (fits the
  project's PLR0911 limit) and makes the 'no non-default file found'
  outcome explicit.
- Raise ValueError instead of silently returning 00_default.param when
  the file list is degenerate (only the read-only factory snapshot).
  The caller is expected to surface this rather than hand the user a
  non-editable file to edit.
- Update test_get_start_file_after_final_file_skips_default to assert
  the new raise behaviour for the degenerate case.

The existing tcal_available=False wraparound path is preserved: keeping
the 'start_file == 00_default.param' gate avoids regressing the
files[2] entry point (first non-tcal editable step).

Signed-off-by: Trevin Chow <trevin@trevinchow.com>

1745 of 1806 branches covered (96.62%)

11441 of 12152 relevant lines covered (94.15%)

3.75 hits per line

Coverage Regressions

Lines Coverage ∆ File
6
92.79
1.41% backend_filesystem.py
Jobs
ID Job ID Ran Files Coverage
1 run-macos-latest-py3.14 - 24541849970.1 17 Apr 2026 02:31AM UTC 80
93.84
GitHub Action Run
2 run-ubuntu-latest-py3.14 - 24541849970.2 17 Apr 2026 03:10AM UTC 80
94.07
GitHub Action Run
3 run-ubuntu-latest-py3.9 - 24541849970.3 17 Apr 2026 03:07AM UTC 80
94.08
GitHub Action Run
4 run-windows-latest-py3.14 - 24541849970.4 17 Apr 2026 02:36AM UTC 80
93.87
GitHub Action Run
Source Files on build 24541849970
  • Tree
  • List 80
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #24541849970
  • 237e4680 on github
  • Prev Build on master (#24509715044)
  • Next Build on master (#24565866376)
  • Delete
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