Skip to content

YoutubeDL-Material v4.0

Compare
Choose a tag to compare
@Tzahi12345 Tzahi12345 released this 06 May 07:27
· 1342 commits to master since this release

I hope I didn't keep you guys waiting for too long :) Here's the 4.0 release, so much has been added thanks to everyone's great suggestions and even a couple contributions which I always love to see. The docker image now has 160k pulls! Crazy stuff, thank you all for your support.

Without further adieu, here's everything that's been added for v4.0:

New features

  • Multi-user mode! Enable in the Main tab in the settings
    • You can now create users with passwords to protect your instance and keep your downloaded files nice and separate
    • Users of course have their own videos, subscriptions, playlists, etc.
    • Permissions system with 'user' and 'admin' roles which have their own permissions. In addition, per-user permissions can override the role's permission
    • Users and permissions are managed through the user management tab in settings
    • Passwords are protected using bcrypt, so no need to worry about your passwords getting leaked
  • Downloads manager!
    • Use the hamburger menu to access the new downloads manager. Here you will see all your downloads, their progress, and additional info/errors if available
    • Downloads are categorized per-device - Props to @nebula-it for this idea!
    • Download progress for each video is now visible, even on the home page - Thanks @mjpmme for the suggestion!
  • Arg modifier improvements
    • Args in the arg modifier now appear as chips which are removable
    • Args are under the hood delimited by a double comma ,, to avoid parsing errors, but the arg modifier takes care of this under the hood
    • Descriptions for args also appear as a tooltip for the chips
    • You can now skip using the adder and type your args in directly. You still get the useful autocomplete with arg descriptions to help you along the way

Minor additions

  • Frontend has been refactored to improve performance. Namely, the config is now centralized in one place so pages will load quicker without needing to retrieve the config again
  • You can now set a timestamp for shared videos so you can show your friends the best part of the videos you download
  • Logging level for the server can now be set through the settings
  • Docker file improvements including smaller image sizes and faster pulling due to caching - Thanks @SuperSandro2000 for these improvements!
  • Added new environment variable YTDL_UMASK for setting the process umask value using a decimal value (only applicable to Linux/Docker) - Thanks @chimlm for the suggestion!
  • Periscope and tiktok are now supported

Bug fixes

  • Fixed bug that caused the database to reset when subscribing to a channel or playlist - @Mattyfaz was instrumental in helping debug this!
  • JSON files for videos now carry the same permissions as the video itself (it used to be more restrictive) - Props to @GlassedSilver for finding this one!
  • Added AtomicParsley to dependencies on Docker container to fix errors related to --embed-thumbnail - Thanks @GlassedSilver for the help figuring this one out!
  • Fixed bug that prevented locally saving files from occurring
  • Fixed bug that prevented the video player from appearing when multi-download mode was enabled. Thanks @chimlm for pointing this out!

Beyond 4.0

On a more personal note, I am starting an internship next week for this upcoming summer. If I'm slow to respond to issues during the day or updates take longer to come out, that's why. I also want to shift the focus of these next few updates to be less about features, and more usability and stability improvements. I think we've added quite a bit over the last few months, so it's time to clear up any kinks before moving forward.

Since I'll be a bit busier, if anyone wants to get more involved coding-wise on the project, I'll be glad to get you started. Any help is always appreciated, even just suggestions and bug fixes make a huge difference (as the wall of text demonstrates above).

Short-term, I'll be keeping a close-eye on any bug reports, and when they do come up, I'll make smaller bug fix releases (4.0.1, 4.0.2, etc.) to keep things running smooth. That's all I got for you, hope you guys enjoy this update.