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

radio-t / stream-recorder
77%
master: 76%

Build:
Build:
LAST BUILD BRANCH: fix/partial-recording-path
DEFAULT BRANCH: master
Repo Added 01 Apr 2024 07:51PM UTC
Files 12
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

LAST BUILD ON BRANCH fix/bounded-postprocessing
branch: fix/bounded-postprocessing
CHANGE BRANCH
x
Reset
  • fix/bounded-postprocessing
  • TestContainers
  • architecture-refactor
  • auth-for-record-endpoint
  • chore/go-1.26-and-deps
  • chore/golangci-lint-2.12
  • chore/update-ci-actions
  • dependabot/github_actions/github-actions-updates-0097b53e9f
  • dependabot/go_modules/go-modules-updates-3c0b262fbe
  • dependabot/go_modules/go-modules-updates-d00e9b196a
  • fix/ci-and-docs-cleanup
  • fix/docker-revision
  • fix/intro-chapter-when-no-topic
  • fix/partial-recording-path
  • fix/purge-exact-filename-match
  • fix/readme-live-test-episode-number
  • fix/record-request-lifecycle
  • fix/recover-superseded-chapter
  • fix/retry-failed-chapter-fetch
  • fix/show-start-nearest-not-same-day
  • fix/stale-topic-utc-date
  • fix/vbr-before-metadata
  • fix/zip-store-and-limit
  • improve-schedule-badge
  • improve-schedule-logging
  • master
  • news-chapters
  • paskal/dependabot-disable-updates
  • paskal/vbr-header-fix
  • schedule-and-purge
  • stream-recorder-v1
  • ui-improvements-and-review-fixes

10 Sep 2026 06:07AM UTC coverage: 77.048% (+1.3%) from 75.71%
34444133985

Pull #33

github

paskal
Bound post-recording processing with a context

Both post-recording passes rewrite the whole file, and neither could be
interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and
FixVBRHeader ran ffmpeg through exec.Command with no context, while
wg.Wait blocks process exit until they finish. A stalled disk or a hung
ffmpeg therefore held up SIGINT and SIGTERM indefinitely.

InjectFramesContext and FixVBRHeaderContext take a context: the copy
aborts between reads, and a cancelled remux kills ffmpeg and removes its
temporary output. The exported InjectFrames and FixVBRHeader stay as
wrappers over context.Background.

tryInjectMetadata runs both under a fresh context with a five minute
deadline. It stays independent of the recording context, so finalising
still happens after shutdown was requested, which is when a recording
usually ends, but it can no longer run without limit.
Pull Request #33: Bound post-recording processing with a context

24 of 30 new or added lines in 3 files covered. (80.0%)

2 existing lines in 1 file now uncovered.

1044 of 1355 relevant lines covered (77.05%)

8.45 hits per line

Relevant lines Covered
Build:
Build:
1355 RELEVANT LINES 1044 COVERED LINES
8.45 HITS PER LINE
Source Files on fix/bounded-postprocessing
  • Tree
  • List 12
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
34444133985 fix/bounded-postprocessing Bound post-recording processing with a context Both post-recording passes rewrite the whole file, and neither could be interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and FixVBRHeader ran ffmpeg through exec.Command with no contex... Pull #33 10 Sep 2026 06:14AM UTC paskal github
77.05
33693251518 fix/bounded-postprocessing Bound post-recording processing with a context Both post-recording passes rewrite the whole file, and neither could be interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and FixVBRHeader ran ffmpeg through exec.Command with no contex... Pull #33 02 Sep 2026 11:05PM UTC paskal github
76.72
33286369689 fix/bounded-postprocessing Bound post-recording processing with a context Both post-recording passes rewrite the whole file, and neither could be interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and FixVBRHeader ran ffmpeg through exec.Command with no contex... Pull #33 30 Aug 2026 01:46AM UTC paskal github
76.72
32344908759 fix/bounded-postprocessing Bound post-recording processing with a context Both post-recording passes rewrite the whole file, and neither could be interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and FixVBRHeader ran ffmpeg through exec.Command with no contex... Pull #33 20 Aug 2026 07:40AM UTC paskal github
76.72
32277281462 fix/bounded-postprocessing Bound post-recording processing with a context Both post-recording passes rewrite the whole file, and neither could be interrupted. id3.InjectFrames copies with io.CopyN and io.Copy, and FixVBRHeader ran ffmpeg through exec.Command with no contex... Pull #33 19 Aug 2026 04:43PM UTC paskal github
76.29
See All Builds (143)
  • Repo on GitHub
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