github qx6ghqkz/gallery-dl-server v0.8.0

22 hours ago

Changes

Web UI

  • Add minimal dark mode
  • Add button to clear logs
  • Add button to refresh logs
  • Add No logs were found placeholder when the log file is empty
  • No longer redirect to a new page on form submission
  • Refactor templates, scripts and styles to improve perceived loading performance
  • Only display the document body after the content has fully loaded in order to avoid a flash of unstyled content

Security

  • Remove insecure inline scripts and styles and further restrict Content-Security-Policy to prevent them from being loaded
  • Only allow cross-origin POST requests, not GET requests

Options

  • Allow the full range of port numbers from 1 to 65535
  • Remove PROXY_HEADERS and FORWARDED_ALLOW_IPS options for security
  • Change default UMASK value for Docker container from 002 to 022
  • Add command-line argument --log-dir and corresponding environment variable LOG_DIR for setting the log file directory
  • Set gallery-dl and yt-dlp log level independently of the server log level using the --log-level argument or LOG_LEVEL
  • Set the server log level with --server-log-level or SERVER_LOG_LEVEL
  • Display WebSocket connection logs based on the --access-log setting instead of the server log level

Logging

  • Improve logging responsiveness and ensure messages are not missed
  • Implement asynchronous log handling to allow the server to handle requests while logging
  • Pad progress messages to a fixed length to prevent subsequent lines from being truncated when the length changes
  • Remove all possible ANSI escape codes during formatting to prevent unprintable characters showing up in the web UI logs
  • Strip trailing whitespace after removing ANSI escape sequences to ensure no empty lines appear in the logs
  • Fix progress updates containing download completion percentage causing progress to be split across multiple lines in the web UI
  • Improve speed and efficiency of progress updates
  • Read previous line from the same position on successive iterations to enable progress to be updated on the same line even when other log messages are being received and ensure the position is preserved between page refreshes
  • Remember progress update position in the web UI using localStorage so that a page refresh does not cause the position to be lost, causing the next progress update to be logged on a new line
  • Only show the final download progress message in the console to avoid issues with dynamic updates
  • Remove the logic that prints a blank line to the console on the first form submission

Package

  • Add Python version check and raise an ImportError if Python version is not 3.10 or above
  • Add ability to run the package programmatically via run() method which can be imported directly from the package

Docker Image: GitHub Container Registry / Docker Hub

Full Changelog: v0.7.3...v0.8.0

Don't miss a new gallery-dl-server release

NewReleases is sending notifications on new releases.