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

umputun / feed-master
75%

Build:
DEFAULT BRANCH: master
Repo Added 20 Oct 2019 06:46PM UTC
Files 16
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 master
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • actions
  • chore/ci-and-deps
  • chore/golangci-lint-v2.12
  • config
  • dependabot/github_actions/github-actions-updates-1ee787ebfb
  • dependabot/go_modules/github.com/microcosm-cc/bluemonday-1.0.16
  • dependabot/go_modules/go-modules-updates-2bc65d338a
  • dependabot/go_modules/go-modules-updates-35dcfad33e
  • dependabot/go_modules/go-modules-updates-68cdcc2012
  • dependabot/go_modules/go-modules-updates-71a6db2b89
  • dependabot/go_modules/go-modules-updates-950b4a9639
  • dependabot/go_modules/go-modules-updates-a8835f245c
  • dependabot/go_modules/golang.org/x/crypto-0.45.0
  • dependabot/go_modules/golang.org/x/net-0.17.0
  • dependabot/go_modules/golang.org/x/net-0.23.0
  • docs-youtube-item-limits
  • docs/backlog-processor-error-log
  • duration
  • dverhoturov/telegram_save_to_file
  • fix-atom-entry-dates
  • fix-ci-caching
  • fix-live-stream-pubdate
  • fix-youtube-test-deadlines
  • fix/ci-security-hardening
  • fix/cleantext-panic
  • fix/content-type-header-rest-issue-38
  • fix/dead-code-and-api-docs
  • fix/issue-134-delete-endpoint
  • fix/test-isolation
  • fix/ytdlp-updater-status-log
  • invert_filter
  • item-duration
  • master
  • migrate-to-routegroup
  • paskal/bump_modules
  • paskal/duration-err
  • paskal/fix-ci-rebase
  • paskal/fix_filter
  • paskal/fix_golangcilint
  • paskal/fix_large_file_fallback
  • paskal/golangcilnt_improvements
  • paskal/telegram_documentation
  • paskal/telegram_improvements
  • paskal/telegram_proper_chan
  • paskal/trim_captions
  • paskal/trim_improvments
  • persistent-processed
  • refs/pull/12/merge
  • refs/tags/v2.10.0
  • refs/tags/v2.11.0
  • refs/tags/v2.11.1
  • refs/tags/v2.11.2
  • refs/tags/v2.11.3
  • refs/tags/v2.11.4
  • refs/tags/v2.12.0
  • refs/tags/v2.13.1
  • refs/tags/v2.4.0
  • refs/tags/v2.5.0
  • refs/tags/v2.6.0
  • refs/tags/v2.7.0
  • refs/tags/v2.8.0
  • refs/tags/v2.8.1
  • refs/tags/v2.8.2
  • refs/tags/v2.8.3
  • refs/tags/v2.8.4
  • refs/tags/v2.9.0
  • refs/tags/v2.9.1
  • refs/tags/v2.9.2
  • retry
  • twitter
  • update-modules
  • v2.3.0
  • youtube
  • yt-dlp-update
  • yt-mp3-tags
  • yt-playlist

31 Oct 2026 09:09PM UTC coverage: 75.338% (+0.2%) from 75.174%
41242272240

push

github

web-flow
Date finished YouTube live streams by download time (#184)

A YouTube live stream gets its `published` time when it is scheduled, not when it airs. `update()` moves an entry's date to the download time only when `published` is under 24h old, so a stream scheduled more than a day ahead kept the scheduling time and showed up in feeds back-dated, below newer episodes. Real case: Echo's "Один с Дмитрием Быковым" was scheduled 27 Oct 19:11 UTC, failed with "This live event will begin in 23 hours" until it ended, downloaded 28 Oct 21:21 UTC, and entered the feed dated 27 Oct.

The worker now records when it first reaches the download step for an entry (`first_seen` bucket in the youtube store, written before every download attempt, never overwritten, dropped by `SetProcessed`). `update()` resets the date when that first sighting was within 24h of `published`. A stream is first seen right after it is scheduled, so it gets the download time once it finally downloads. A new channel's backlog is first seen days after publishing and keeps its dates, as before.

`updated` from the YouTube feed is not used: it moves on any metadata edit, so recently edited old videos would jump to the top when a channel is added.

Behavior change: a regular video held back by a download outage longer than 24h also gets the recovery time as its date, the same way outages under 24h already did. Entries with no `first_seen` record, including everything pending at deploy, behave exactly as before.

48 of 66 new or added lines in 2 files covered. (72.73%)

1558 of 2068 relevant lines covered (75.34%)

20.94 hits per line

Relevant lines Covered
Build:
Build:
2068 RELEVANT LINES 1558 COVERED LINES
20.94 HITS PER LINE
Source Files on master
  • Tree
  • List 16
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
41242272240 master Date finished YouTube live streams by download time (#184) A YouTube live stream gets its `published` time when it is scheduled, not when it airs. `update()` moves an entry's date to the download time only when `published` is under 24h old, so a ... push 31 Oct 2026 09:11PM UTC web-flow github
75.34
41242082103 fix-live-stream-pubdate Merge remote-tracking branch 'origin/master' into fix-live-stream-pubdate lint conflicts in app/api, app/proc/twitter.go and execYtdlpUpdate resolved to master's versions, which carry the same fixes. Pull #184 31 Oct 2026 09:08PM UTC umputun github
75.34
41241927365 fix-live-stream-pubdate Merge remote-tracking branch 'origin/master' into fix-live-stream-pubdate lint conflicts in app/api, app/proc/twitter.go and execYtdlpUpdate resolved to master's versions, which carry the same fixes. push 31 Oct 2026 09:07PM UTC umputun github
75.34
40638120975 refs/tags/v2.13.1 fix: skip re-dated items whose guid is already stored An Atom entry with only <updated> gets a new store key every time it is edited, so it was saved and posted to Telegram and Twitter again. Save now treats a non-empty GUID already present in th... push 28 Oct 2026 05:28AM UTC umputun github
75.17
40636505964 master fix: skip re-dated items whose guid is already stored An Atom entry with only <updated> gets a new store key every time it is edited, so it was saved and posted to Telegram and Twitter again. Save now treats a non-empty GUID already present in th... push 28 Oct 2026 05:11AM UTC umputun github
75.17
40636038833 master fix: preserve Atom entry dates and IDs Atom entries reach the processor with a zero timestamp and get skipped. Keep their IDs and publication dates, with updated as the fallback, and accept RFC3339 dates during normalization. push 28 Oct 2026 05:08AM UTC umputun github
75.05
37587336035 fix-atom-entry-dates fix: preserve Atom entry dates and IDs Atom entries reach the processor with a zero timestamp and get skipped. Keep their IDs and publication dates, with updated as the fallback, and accept RFC3339 dates during normalization. Pull #183 28 Oct 2026 05:05AM UTC bensynapse github
75.05
35485058058 master docs: record how own PRs get merged past the review gate master requires one approving review that the owner cannot give on his own PRs, and Copilot posts COMMENTED rather than APPROVED, so every PR arrives blocked. The merge has been done with -... push 20 Sep 2026 02:51AM UTC umputun github
74.95
35484824921 master docs: correct what the youtube item limits actually control max_per_channel was documented as the per-channel download limit, which it is not. setDefaults gives every channel Keep from system.max_per_feed when the channel sets none, and for a con... push 20 Sep 2026 02:46AM UTC umputun github
74.95
35484671912 docs-youtube-item-limits docs: correct what the youtube item limits actually control max_per_channel was documented as the per-channel download limit, which it is not. setDefaults gives every channel Keep from system.max_per_feed when the channel sets none, and for a con... Pull #181 20 Sep 2026 02:42AM UTC umputun github
74.95
See All Builds (524)
  • 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