* Consolidated all youtube-dl calls into one function
* Downloads can now be cancelled and better "paused"
* Removed node-youtube-dl dependency
* Added ability to manually check a subscription, and to cancel a subscription check
---------
Co-authored-by: Dedy Martadinata S <dedyms@proton.me>
Skipped tests just meant for manual testing
mocha now used prod mode
Added automated tests for PRs
Fixed backupdb and youtube-dl tests in gh actions
Fixed downloader tests
Removed erroneous logs in tests
Updated mocha.yml
Removed last console.log in tests
Increased timeout for download video test
Automated tests now force stop after tests complete
Replaced download test url with shorter video
Skip download test... for now
increased download test threshold
added more timing information to tests
unskip download test
Bump docker/setup-buildx-action from 1 to 2 in /.github/workflows
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)
---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Bump actions/setup-node from 2 to 3 in /.github/workflows
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2 to 3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2...v3)
---
updated-dependencies:
- dependency-name: actions/setup-node
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Bump actions/upload-artifact from 1 to 3 in /.github/workflows
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 1 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v1...v3)
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Bump docker/login-action from 1 to 2 in /.github/workflows
Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 2.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1...v2)
---
updated-dependencies:
- dependency-name: docker/login-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Removed additional download button for paused download
Combined output json processing from youtube-dl between subscriptions and one-off downloads
Added workaround for missing video in playlist to one-off downloads
Fixed issue of case where output is empty
Download video code cleanup
Fixed download video test by overriding youtube-dl download method with custom method
Adds ffmpeg to automated tests
Removed test mp3/mp4 file from repo
* Fixed issue where metadata was attempting to be written to a dir that didn't exist yet
* Fixed issue where sub was assumed as duplicate always if using local db
Added ability to schedule tasks based on timestamp
Fixed mismatched types between frontend and openapi yaml
Simplified imports for several backend components
Downloads that fail due to existing in the archive now appears as an error in the manager
Fixed issue where redownloading sub videos wouldn't occur if it was not cleared from the download manager
Subscription downloads already queued are now not requeued on the next check
Headers in download queue table are now sortable
Added button to clear all finished downloads in the downloads manager
Removed tomp3 and tomp4 routes, replaced with /downloadFile
Simplified category->playlist conversion
Simplified playlist creation
Simplified file deletion
Playlist duration calculation is now done on the backend (categories uses this now too)
removeIDFromArchive moved from subscriptions->utils
Added plumbing to support type agnostic playlists
escape qualityPath and fullOutput for use with commandline
In order to successfully download files from subscriptions these strings should be escaped to work properly in the commandline.
I have seen you use almost the same function (generateArgs()) in app.js. Even though I have never had a problem with this outside subscriptions I would suggest to do the same for that function starting on line 1405
- Fixed bug in migration process for single-user mode
- Changed name of migration
Removed unused code for getmp3/mp4 and fixed bug when retrieving playlist if it didn't exist
Fixed bug in streaming code where playlist audio files would not play if the file path was not present
Fixed bug in getallsubscriptions for single user mode