Commit Graph

  • 300bf79b52 build: pin the frontend builder image to the last QEMU-safe digest master 2026.09.20 Alex Shnitman 2026-09-20 10:28:10 +03:00
  • ec01524527 fix: align the row action icons across both download tables Alex Shnitman 2026-09-20 10:01:37 +03:00
  • a6d81d4513 fix: stop offering a dead Start button on queued downloads (closes #1081) Alex Shnitman 2026-09-20 09:29:49 +03:00
  • 6708a88229 build: upgrade Python and npm dependencies 2026.09.15 Alex Shnitman 2026-09-15 22:37:28 +03:00
  • 3767d6073b Merge PR #1077: list MeTube Mobile under Sending links to MeTube Alex Shnitman 2026-09-15 22:33:43 +03:00
  • 5cac98a6d1 fix: stop resolving submitted URLs locally when a proxy will (closes #1079) Alex Shnitman 2026-09-15 21:46:17 +03:00
  • 3516872513 docs: add MeTube Mobile (Android) to Sending links to MeTube Yasir Sagheer 2026-09-13 10:43:38 +03:00
  • 79388370e9 feat: collapse the Downloading, Completed and Subscriptions sections (closes #1070) 2026.08.28 Alex Shnitman 2026-08-28 09:19:07 +03:00
  • 1251613f45 fix: show the post-download processing phase in the UI (closes #424) Alex Shnitman 2026-08-21 16:01:40 +02:00
  • 70d19759e8 fix: accept HOST=* so IPv6 users get a dual-stack bind (closes #795) Alex Shnitman 2026-08-21 16:01:30 +02:00
  • f11b376ce7 docs: fix where the download folder selector lives in the UI Alex Shnitman 2026-08-21 14:29:31 +02:00
  • c9c507f939 fix: move persistent queue state writes off the event loop (#980) 2026.08.21 Alex Shnitman 2026-08-21 09:23:31 +02:00
  • 327e1eb4b8 fix: stop stating the output file on every progress tick (#980) Alex Shnitman 2026-08-21 09:23:09 +02:00
  • 82e966caaf fix: point audio download links at the directory the server used (closes #533) Alex Shnitman 2026-08-20 10:23:40 +02:00
  • 346da19108 fix: strip trailing slashes from the download directories Alex Shnitman 2026-08-20 10:23:40 +02:00
  • b74185b2af fix: warn when uploaded cookies shadow a configured cookiefile Alex Shnitman 2026-08-20 10:12:13 +02:00
  • c393e0195b fix: let named CORS origins send credentials (closes #155) Alex Shnitman 2026-08-20 09:39:26 +02:00
  • 86954784fd upgrade yt-dlp from 2026.7.4 to 2026.8.19 2026.08.20 AutoUpdater 2026-08-20 00:42:52 +00:00
  • 72e8f5031f Merge PR #1028: first-class SponsorBlock toggle 2026.08.18 Alex Shnitman 2026-08-18 15:47:02 +02:00
  • f3c464fad5 fix: let the download reach the PO token provider (closes #1064) Alex Shnitman 2026-08-18 15:43:14 +02:00
  • b10bb6103a feat: carry the SponsorBlock toggle into subscriptions tjelite1986 2026-08-16 12:15:01 +02:00
  • 8c2990e68a feat: first-class SponsorBlock toggle tjelite1986 2026-07-16 22:19:41 +02:00
  • ac46fff6d9 Merge PR #1058: DEFAULT_FOLDER pre-selects a download folder 2026.08.17 Alex Shnitman 2026-08-17 09:36:30 +02:00
  • 05c21326b3 Merge PR #1059: show the queued format in the Downloading table Alex Shnitman 2026-08-17 09:36:24 +02:00
  • 99da62dcbb Merge PR #1057: shift-click to select a range of rows Alex Shnitman 2026-08-17 09:36:19 +02:00
  • d0ad36baad Merge PR #1060: keep generated filenames within the filesystem limit Alex Shnitman 2026-08-17 09:36:01 +02:00
  • d2095caea2 Merge PR #1056: surface yt-dlp warning context on failed downloads Alex Shnitman 2026-08-17 09:35:56 +02:00
  • e15aff3339 fix: detect channels addressed without a tab (closes #1024) Alex Shnitman 2026-08-17 09:31:56 +02:00
  • fccd207799 fix: carry yt-dlp warning context on the DownloadError path (closes #1047) Cursor Agent 2026-08-16 22:13:02 +00:00
  • 6461924bf8 fix: keep generated filenames within the filesystem limit (closes #1034) tjelite1986 2026-08-16 14:19:36 +02:00
  • c68fcaddd1 feat: show the queued format in the Downloading table (closes #551) tjelite1986 2026-08-16 12:56:29 +02:00
  • a4454ac460 feat: DEFAULT_FOLDER pre-selects a download folder (closes #875) tjelite1986 2026-08-16 12:53:07 +02:00
  • 75fe1f0c11 feat: shift-click to select a range of rows (closes #525) tjelite1986 2026-08-16 12:49:39 +02:00
  • aac9c63a36 feat: let a subscription carry clip bounds (closes #1049) 2026.08.16 Alex Shnitman 2026-08-16 09:25:03 +02:00
  • 3444b1605b feat: allow a subscription's download folder to be changed (closes #1052) Alex Shnitman 2026-08-16 08:51:42 +02:00
  • 59cf84ae1a build(deps): upgrade frontend dependencies to Angular 22.1 Alex Shnitman 2026-08-16 08:44:09 +02:00
  • 99b6452c8e build(deps): upgrade Python dependencies Alex Shnitman 2026-08-16 08:43:46 +02:00
  • 5826d0dc2b fix: surface yt-dlp warning context on failed downloads Matt Van Horn 2026-08-15 18:31:45 -07:00
  • c8fb5bbc27 docs: note that a configured proxy needs no ALLOW_PRIVATE_ADDRESSES 2026.08.15 Alex Shnitman 2026-08-15 16:44:34 +02:00
  • 56194f0bf3 Merge PR #1048: bump aiohttp from 3.14.1 to 3.14.3 Alex Shnitman 2026-08-15 16:40:46 +02:00
  • de57484fc9 fix: let a configured proxy live on any internal address (closes #1055) Alex Shnitman 2026-08-15 16:38:35 +02:00
  • 7082858237 fix: judge the IPv4 tunnelled inside IPv6 transition addresses Alex Shnitman 2026-08-15 16:37:57 +02:00
  • 97d1cc865c build(deps): bump aiohttp in the uv group across 1 directory dependabot[bot] 2026-08-04 19:49:25 +00:00
  • 482381d6b9 fix: scope the connect-time loopback allowance to the configured proxy 2026.08.04 Alex Shnitman 2026-08-04 22:38:17 +03:00
  • 0445f5858b docs: put the closing keyword in the commit subject Alex Shnitman 2026-07-27 23:13:07 +03:00
  • 6551f7ad58 docs: require Closes #N in commits that resolve an issue Alex Shnitman 2026-07-27 23:09:58 +03:00
  • 06c63ec6e5 feat: write playlist/channel metadata files where their items go (#660) 2026.07.27 Alex Shnitman 2026-07-27 22:32:10 +03:00
  • d66b04ccf5 feat: let subscriptions be renamed from the list (#1044) Alex Shnitman 2026-07-27 21:34:09 +03:00
  • 2744f36b44 Merge PR #1043: bump actions/setup-python from 6 to 7 Alex Shnitman 2026-07-27 21:22:03 +03:00
  • ff1b73a576 refactor: make POST /retry take a singular id Alex Shnitman 2026-07-27 21:19:01 +03:00
  • 1a09dbd686 Merge PR #1041: preserve playlist folder when retrying failed downloads Alex Shnitman 2026-07-27 21:14:21 +03:00
  • 08dccd98fb fix: carry retry context through url indirection and re-gate retry options Alex Shnitman 2026-07-27 21:13:59 +03:00
  • 1f20aaee94 build(deps): bump actions/setup-python in the github-actions group dependabot[bot] 2026-07-26 16:12:34 +00:00
  • 8a29f3a084 fix: add track_number to compact entry extra keys jahruz67 2026-07-24 19:49:48 -07:00
  • 1839e5484d feat: add retry functionality for failed downloads jahruz67 2026-07-24 10:21:06 -07:00
  • fceac97033 docs: cache-bust screenshot embed so the refreshed GIF shows Alex Shnitman 2026-07-24 14:02:12 +03:00
  • a13762aa61 docs: refresh screenshot.gif for the current UI [skip ci] Alex Shnitman 2026-07-24 13:49:29 +03:00
  • 50250f8374 Merge PR #1037: bump actions/setup-node from 6 to 7 2026.07.24 Alex Shnitman 2026-07-24 12:09:53 +03:00
  • 926d392926 Merge PR #1038: surface add-time failures as failed done entries Alex Shnitman 2026-07-24 12:04:08 +03:00
  • 7f13784445 Merge PR #1031: conservative music metadata enrichment for audio downloads Alex Shnitman 2026-07-24 12:00:38 +03:00
  • 4aa20890d4 Merge PR #1035: release per-download status_queue proxy on close to fix fd leak (#485) Alex Shnitman 2026-07-24 11:44:47 +03:00
  • e061a8a5ba feat: ALLOW_PRIVATE_ADDRESSES to opt out of the SSRF checks (closes #1036) 2026.07.21 Alex Shnitman 2026-07-21 07:44:38 +03:00
  • 13cb65d931 docs: document the SSRF guard's connect-time coverage limitations Alex Shnitman 2026-07-21 07:41:01 +03:00
  • 1b02a99510 fix: re-validate outbound connections at fetch time against internal hosts Alex Shnitman 2026-07-21 06:55:29 +03:00
  • 4e27600329 Added handling for unsupported URL James Tew 2026-07-20 22:20:18 +01:00
  • ebcfe577bc fix: fail closed when an SSRF-guarded host cannot be resolved Alex Shnitman 2026-07-20 23:45:08 +03:00
  • 3bd2c3e366 fix: enforce download-dir containment at the resolved-path chokepoint Alex Shnitman 2026-07-20 23:44:43 +03:00
  • 1c7261ab59 build(deps): bump actions/setup-node in the github-actions group dependabot[bot] 2026-07-19 16:12:37 +00:00
  • 4cf2b1b0d0 fix: release per-download status_queue proxy on close to stop FD leak Matt Van Horn 2026-07-19 01:13:16 -07:00
  • 707f700609 ci: update releases in place instead of delete-and-recreate Alex Shnitman 2026-07-18 16:44:52 +03:00
  • c519f45908 chore: rework issue and discussion templates around scope policy Alex Shnitman 2026-07-18 13:50:34 +03:00
  • a23d1689e3 docs: add SECURITY.md (private vulnerability reporting) 2026.07.18 Alex Shnitman 2026-07-18 09:24:04 +03:00
  • 4b05022b91 feat: graceful cancel — SIGINT with SIGKILL escalation so partial files are finalized (closes #438) Alex Shnitman 2026-07-18 09:23:48 +03:00
  • f3d670e288 refactor: simplify music metadata processing by removing unused code and improving album signal detection Your GitHub Name 2026-07-17 10:43:39 -07:00
  • 0dc9b0b3d6 ci: enforce the 25k Docker Hub limit on README.md Alex Shnitman 2026-07-17 15:39:31 +03:00
  • 96f5ffe34a docs: restructure README around the wiki as companion documentation Alex Shnitman 2026-07-17 15:39:20 +03:00
  • 1eafecd1cc docs: add test gotchas, option checklist, and security invariants to AGENTS.md Alex Shnitman 2026-07-17 15:14:33 +03:00
  • 8fe81dea18 docs: encode project scope boundary in AGENTS.md Alex Shnitman 2026-07-17 15:08:33 +03:00
  • f054d84108 Merge pull request #1029 from tjelite1986/readme-library-pairing Alex 2026-07-17 15:00:51 +03:00
  • edf101faa0 feat: add music metadata processing and writing functionality Your GitHub Name 2026-07-16 19:31:57 -07:00
  • fa02717e12 docs: document pairing MeTube with a music tagger tjelite1986 2026-07-16 22:38:52 +02:00
  • 9ca78be199 Merge PR #1025: fill missing album-artist metadata for audio downloads 2026.07.16 Alex Shnitman 2026-07-16 23:03:17 +03:00
  • 8071611a84 upgrade dependencies Alex Shnitman 2026-07-16 23:01:23 +03:00
  • 220f991fae fix: prefer topic channel for album artist Your GitHub Name 2026-07-16 12:34:03 -07:00
  • 6d0528783c fix: block SSRF via user-submitted URLs Alex Shnitman 2026-07-16 21:31:51 +03:00
  • c104e30451 feat: add AlbumArtistPostProcessor to fill missing album-artist metadata Your GitHub Name 2026-07-15 15:40:36 -07:00
  • fdfbfed5e2 fix: prevent playlist/channel title path traversal (closes GHSA-vh67-38x4-w8pc) 2026.07.13 Alex Shnitman 2026-07-13 23:07:39 +03:00
  • 3ea4732c5d fix: harden download lifecycle, subscriptions, and UI robustness 2026.07.12 Alex Shnitman 2026-07-12 08:08:14 +03:00
  • e2c777842e fix: honor OUTPUT_TEMPLATE for channel downloads (closes #1024) 2026.07.10 Alex Shnitman 2026-07-10 09:49:59 +03:00
  • c34a18de7a upgrade dependencies Alex Shnitman 2026-07-10 09:48:48 +03:00
  • d6bcf182c5 Merge pull request #1023 from lanthaler/no-entries-archive 2026.07.09 Alex 2026-07-09 08:17:00 +03:00
  • ad90609c9b Don't mark a subscription as broken just because all entries are filtered out as they have already been downloaded Markus Lanthaler 2026-07-08 22:54:33 +00:00
  • 5315630ab0 Merge pull request #1021 from mvanhorn/fix/960-atomic-store-nfs-eperm 2026.07.05 Alex 2026-07-05 21:26:49 +03:00
  • 54463baf0e fix: fsync parent dir after direct-write fallback for durability parity Matt Van Horn 2026-07-05 04:11:12 -07:00
  • b00d4785ee fix: serialize state before truncating in the direct-write fallback Matt Van Horn 2026-07-05 04:04:54 -07:00
  • 96e88a3555 fix: force 0600 on fallback state rewrites, not just creation Matt Van Horn 2026-07-05 04:00:59 -07:00
  • 49a46a7d1c fix: create fallback state file with owner-only 0600 permissions Matt Van Horn 2026-07-05 03:57:19 -07:00
  • 961b54aa83 fix: make fsync best-effort so only mkstemp/replace failures fall back Matt Van Horn 2026-07-05 03:53:22 -07:00
  • e0549d6c24 fix: surface real storage errors from direct-write fsync fallback Matt Van Horn 2026-07-05 03:49:15 -07:00
  • f315b75bb2 fix: limit atomic-write fallback to atomic-unsupported errnos Matt Van Horn 2026-07-05 03:44:57 -07:00