Skip to content

v1.5.0

Choose a tag to compare

@swernerx swernerx released this 22 Jul 20:09
3436594

1.5.0 (2026-07-22)

Features

  • add Piccalilli course support (4657304)
  • support Josh Comeau courses via unified sync (#39) (97056bd)
  • unify course sync state across platforms (#69) (1530dee), closes #21

Bug Fixes

  • accept duplicate HLS rendition names (#75) (c007c8a)
  • avoid self-merging Loom video as audio (0377ca5), closes #95
  • clean up shared state follow-ups (#98) (4163a98)
  • deps: update actions/setup-node action to v7 (c06aca0)
  • deps: update codecov/codecov-action action to v7 (8bb0401)
  • deps: update commitlint monorepo to v21.2.1 (d6bb7a3)
  • deps: update dependency ast-v8-to-istanbul to v1.0.5 (0ef0c9c)
  • deps: update dependency execa to v10 (84eed00)
  • deps: update dependency lint-staged to v17.1.0 (#76) (181a7a9)
  • deps: update dependency node to v24 (e83c18a)
  • deps: update pnpm to v11.13.1 (6b3707e)
  • deps: update pnpm to v11.15.0 (#77) (818502d)
  • download complete LearningSuite videos (bf650cc)
  • ensure segment paths are relative in concatSegments function (#1) (6dbc09a)
  • fail incomplete HLS segment downloads (#44) (5855339)
  • fall back to GET when HLS HEAD is rejected (9a14de1), closes #96
  • format Renovate configuration (#46) (d8abb5d)
  • handle incomplete Vimeo configs (1d37011)
  • handle progressive output stream failures (#48) (8cdcd6a)
  • handle unsupported Skool sync options (2d25477), closes #90
  • harden course database migrations (#63) (05234c4)
  • harden download failures and timeouts (a4fc545), closes #93
  • harden downloader HTTP boundaries (#61) (a737fdf)
  • harden LearningSuite module scanning (9945eef), closes #85
  • ignore local worktrees in checks (580ed71)
  • improve scraper diagnostics and title cleanup (#54) (b0da40b)
  • isolate LearningSuite HLS renditions (#49) (8216379)
  • keep interactive Josh login on current page (8bff05b), closes #89
  • loom: clean up downloads and capture sessions (#52) (0857a08)
  • make CLI shutdown interruptible (5990f77)
  • normalize Skool URLs before validation (#50) (b1b6c6c)
  • polish Josh Comeau extraction and downloads (79e38bf), closes #97
  • preserve LearningSuite modules and lessons (#51) (56c0ff0)
  • preserve retry errors during shutdown (300625c), closes #86
  • preserve signed HLS variant queries (87bb033)
  • preserve Vimeo HLS audio and signed URLs (#53) (43238db)
  • propagate progressive stream failures (#43) (c1b53ba)
  • protect stored session credentials (#41) (57ed415)
  • publish attachments atomically (6238a37)
  • publish ffmpeg output atomically (#47) (484acc2)
  • redact signed download URLs (#42) (5cd3248)
  • reject unsupported sync options and URLs (#55) (b6e2ad9)
  • report complete source coverage (#56) (077a916)
  • report coverage without provider workaround (#57) (92cc64b)
  • resume validated native lessons (73fb4dd)
  • sanitize attachment download paths (#40) (b92983b)
  • stabilize Josh Comeau Vimeo extraction (4c3c580)
  • stabilize Piccalilli OTP login (d3e3ac2)
  • support LearningSuite login URLs (65110c9)
  • update Skool login and course extraction (87982e1)
  • validate pending Skool lessons (3c2d384)
  • wait for Josh Comeau hydration assets (517d671), closes #87