Commit Graph
66 Commits
Author SHA1 Message Date
Your Name d5b6b46b6c Update README.md 2025-08-27 15:40:50 +03:00
Your Name 29e995eee0 Simplify MSI build options and update version to 4.7.4
Removed problematic summary_data and install_icon from MSI build options in setup.py and setup-ffmpeg.py to address cx_Freeze build issues. Updated target_name and version fields to 4.7.4. Enhanced build-windows.yml with improved artifact cleanup and error handling for MSI creation.
2025-08-27 15:39:00 +03:00
Your Name c24d76a1bc Remove ZIP build and release for Windows workflow
The workflow no longer creates or releases ZIP distributions for both standard and FFmpeg bundle versions. Only MSI installers are built and published, simplifying the release process and documentation.
2025-08-27 15:17:57 +03:00
Your Name 81fb3dd00d Improve MSI artifact handling in Windows build workflow
Adds logging to list MSI files after build steps for better visibility. Updates artifact selection logic to handle both 'ffmpeg' and 'FFmpeg' naming variations, and adds debugging output when standard MSI is not found.
2025-08-27 14:57:32 +03:00
Your Name 360e67d38e Remove redundant ZIP creation log in build script
Deleted unnecessary log messages about ZIP creation in the Windows build workflow to clean up output.
2025-08-27 14:32:27 +03:00
Your Name 498e6ae655 Improve MSI build error handling and fix FFmpeg setup
Replaces PowerShell try/catch with exit code checks for MSI build steps in Windows workflow for clearer error reporting. Removes the install_icon option from FFmpeg MSI setup to address potential build failures.
2025-08-27 14:22:54 +03:00
Your Name c91768aec4 Update README.md 2025-08-27 14:11:57 +03:00
Your Name 17ec207852 Improve Windows build workflow error handling
Adds error handling to MSI installer creation steps in the Windows build workflow to prevent failures from stopping subsequent ZIP creation. Updates ZIP creation logic to use the dist output directory. Removes the install_icon option from setup.py to address potential MSI build issues.
2025-08-27 13:55:04 +03:00
Your Name 94601a0b8b Improve Windows build workflow and artifact handling
Updated FFmpeg download source to GyanD/codexffmpeg and improved artifact preparation with additional logging and error handling. The release step now uploads all files in the artifacts directory instead of specifying each file individually.
2025-08-27 13:37:40 +03:00
Your Name 4b7e701613 Improve FFmpeg binary check output in Windows build
Changed status messages for FFmpeg, ffprobe, and ffplay binary checks to use '[OK]' and '[ERROR]' prefixes for clearer log output in the Windows build workflow.
2025-08-27 03:01:00 +03:00
Your Name 8c27c73570 Dynamically include FFmpeg binaries in setup script
Refactored setup-ffmpeg.py to dynamically check for the existence of FFmpeg binaries before including them in the build. This improves robustness by warning if any binaries are missing and avoids hardcoding file paths in the include_files list.
2025-08-27 02:56:14 +03:00
Your Name 700ec8e27e Simplify cx_Freeze package discovery and include src directory
Removed explicit package listing in build_exe_options for cx_Freeze setup scripts, allowing auto-discovery from main.py. Added the entire src directory to include_files to ensure all source code is bundled with the build.
2025-08-27 02:45:31 +03:00
Your Name fbe95d8754 Merge branch 'beta' of https://github.com/oop7/YTSage into beta 2025-08-27 02:42:12 +03:00
Your Name d3b62bcee3 Refactor Windows build workflow for clarity and artifact handling
Replaces universal build script calls with explicit build, MSI, and ZIP steps for both standard and FFmpeg versions. Cleans previous build artifacts before building, and updates artifact preparation to source files from the 'dist' directory instead of 'releases'. Improves reliability and transparency of build and release artifact management.
2025-08-27 02:41:40 +03:00
Your Name e2454965dd Remove universal Windows build script
Deleted build/windows/windows_build_universal.py as part of cleanup or migration. This script previously handled MSI and ZIP packaging for YTSage using cx_Freeze.
2025-08-27 02:37:37 +03:00
Your Name 42dfb5d8a4 Use absolute paths for build and setup files
Refactored build script to use absolute paths for setup files and build artifacts, improving reliability and path resolution. Enhanced cleaning logic to preserve build/windows scripts, added verbose debug output, and added checks for setup file existence before build steps.
2025-08-27 02:28:28 +03:00
Your Name 3f125bba98 Replace emoji log prefixes with text labels
Changed log message prefixes in YTSageBuildScript from emojis to text labels for improved clarity and consistency in output.
2025-08-27 02:11:09 +03:00
Your Name 86e3c15fa4 Add spacing before Notes section in CI/CD README
Inserted a blank line before the Notes section for improved readability in the CI/CD README documentation.
2025-08-27 02:02:31 +03:00
Your Name b337667ce8 Switch Windows build to Python script, remove PowerShell
Replaces PowerShell build script with Python in CI workflow and deletes the old build/README.md and windows-build-universal.ps1. This streamlines the build process and consolidates build logic into Python for better maintainability.
2025-08-27 01:57:58 +03:00
Your Name c54893fd1b Update versioning message in Windows build workflow
Replaces manual build script version update with a message indicating the build script now auto-detects the version. Simplifies the workflow and reduces maintenance.
2025-08-27 01:46:41 +03:00
Your Name f44116baa3 Refactor release notes generation and version parsing
Changed the version extraction regex in Get-VersionFromSetup for improved accuracy. Refactored New-ReleaseNotes to build the release notes string incrementally instead of using a here-string, simplifying formatting and maintenance.
2025-08-27 01:42:42 +03:00
Your Name 365fb7304b Update antivirus warning in README
Clarified that false positives may occur with packaged applications in general, not just those created with PyInstaller.
2025-08-27 01:32:03 +03:00
Your Name dbd0c040a6 Update version replacement regex in Windows build workflow
Refines the PowerShell regex patterns for updating version strings in setup.py, setup-ffmpeg.py, and windows-build-universal.ps1 to ensure consistent use of double quotes around version values.
2025-08-27 01:26:07 +03:00
Your Name acb7c297a2 Update screenshot references and rename image files
Updated README.md to reference local screenshot files instead of external URLs. Renamed 'audio-only.png' to 'audio_format.png' and 'subtitles.png' to 'subtitle_options.png' for consistency with README references.
2025-08-27 01:19:24 +03:00
Your Name fb14263ce2 Update screenshot path in README
Replaced the external image link with a local screenshot path for the YTSage interface in the README.
2025-08-27 01:16:13 +03:00
Your Name 89f1fd4773 Refactor Windows build workflow for releases
Simplifies and improves the Windows release workflow by cleaning up version extraction, artifact handling, and release note generation. Artifact naming is now version-specific, redundant steps are removed, and the release draft creation is streamlined with direct body content. Also updates dependency caching and installation commands for better reliability.
2025-08-27 01:12:16 +03:00
Your Name 13b481bd40 Add cx_Freeze setup script for Windows build
Introduces a setup.py script for building YTSage on Windows using cx_Freeze. Supports building executables, MSI installers, and ZIP distributions, with detailed configuration for included/excluded packages, assets, and installer options.
2025-08-27 01:04:49 +03:00
Your Name afb7e3c060 Add comprehensive build system documentation
Expanded build/README.md with detailed instructions for CI/CD and local builds, directory structure, build script options, output artifacts, requirements, troubleshooting, version management, and future enhancements for the YTSage build system.
2025-08-27 01:02:41 +03:00
Your Name 6cc3db2ce5 Add branding screenshots for UI features
Added new screenshots for audio-only, main interface, playlist, and subtitles to the branding assets. These images can be used for documentation or promotional purposes.
2025-08-27 00:57:10 +03:00
Your Name e1b9991be3 Add Windows CI/CD workflow and documentation
Introduces a GitHub Actions workflow for building and releasing YTSage Windows installers and portable ZIPs on version tag pushes. Includes a detailed CI/CD README explaining triggers, build steps, artifact handling, release notes, and troubleshooting.
2025-08-27 00:57:00 +03:00
Your Name 82fb4e7240 Add branding icon assets
Added YTSage.ico, icon.icns, and icon.png to the assets/branding/icons directory for application branding across platforms.
2025-08-27 00:56:45 +03:00
Your Name 09b538c0bd Move yt_dlp import inside method in VideoInfoMixin
The import of yt_dlp is now performed locally within the method to prevent import errors when yt-dlp is not installed. This change improves robustness for environments where yt-dlp may be missing.
2025-08-27 00:09:07 +03:00
Your Name fa983d75a5 Replace pygame with playsound3 for audio notifications
Switched from pygame to playsound3 for playing notification sounds in the GUI. Updated requirements.txt and refactored related code to use playsound3, improving compatibility and simplifying sound playback.
2025-08-26 23:57:56 +03:00
Your Name 6ff72f296a Add yt-dlp error parser for user-friendly messages
Introduces the parse_yt_dlp_error function to convert raw yt-dlp error messages into actionable, user-friendly feedback. This improves error handling and provides clearer guidance to users encountering common download issues.
2025-08-26 19:27:59 +03:00
Your Name 47609c7017 Update default version in AboutDialog
Changed the default version displayed in the AboutDialog from '4.7.0' to '4.8.0b' to reflect the latest release.
2025-08-26 19:27:51 +03:00
Your Name eaf1786d21 Refactor and enhance custom dialogs UI and logic
Refactored custom command execution to use a worker class with signals for better threading and output handling. Improved the CustomOptionsDialog with cookie source selection (file or browser), browser selection UI, and more robust cookie path handling. Enhanced UI styling, help texts, and input validation. Removed command preview from TimeRangeDialog and streamlined dialog layouts for clarity and usability.
2025-08-26 19:27:39 +03:00
Your Name 0db890dd81 Remove unused dialog imports and exports
Deleted CookieLoginDialog and CustomCommandDialog from imports and __all__ exports in ytsage_gui_dialogs/__init__.py, likely because these dialogs are no longer needed or have been removed from the codebase.
2025-08-26 19:27:28 +03:00
Your Name ca7287ee60 Enhance QComboBox and QGroupBox styling
Improved QComboBox appearance with updated padding, border, drop-down, and arrow styles, including hover and focus effects. Added custom styling for QComboBox item views and introduced new styles for QGroupBox and its title for better UI consistency.
2025-08-26 19:27:21 +03:00
Your Name cb342eb499 Add browser cookies support to DownloadThread
Introduces a browser_cookies parameter to DownloadThread, allowing cookies to be loaded from a browser for downloads. Updates command and options construction to handle both cookie files and browser cookies, improving flexibility for authentication.
2025-08-26 19:27:14 +03:00
Your Name 99a55f66e2 Bump version to 4.8.0b
Updated the __version__ string in src/__init__.py to 4.8.0b to reflect the new release.
2025-08-26 19:27:00 +03:00
Your Name 44621a59f0 Add browser cookies support and improve error handling
Introduces support for extracting cookies from browsers in addition to cookie files, updating relevant logic and UI handling. Error handling for yt-dlp extraction is improved with user-friendly messages using a new error parser. Also updates version to 4.8.0b and refines cookie management throughout the app.
2025-08-26 19:26:49 +03:00
Your Name 7093753636 Add YT-DLP documentation URL constant
Introduces YTDLP_DOCS_URL for Windows, macOS, and Linux platforms, providing a direct link to yt-dlp usage and options documentation. Also updates the __main__ info output to include this new constant.
2025-08-26 19:26:21 +03:00
Your Name 248fe30346 Remove unused HTML style block from README
Deleted a <style> block from the README.md that was not rendered on GitHub and is unnecessary for markdown documentation.
2025-08-16 15:32:48 +03:00
Your Name 609583821c Remove inline styles from README links
Cleaned up README.md by removing unnecessary inline CSS styles from navigation and download links for improved readability and markdown compatibility.
2025-08-16 15:22:04 +03:00
Your Name 9c0897e787 Add centralized logging configuration with loguru
Introduces src/core/ytsage_logging.py to provide structured logging for the YTSage application using loguru. Includes multiple output handlers for console and file logging, robust fallbacks for environments without loguru, and safe initialization to replace print statements with consistent logging.
2025-08-16 15:07:31 +03:00
Your Name 73e662148c Add SponsorBlock category selection to video info UI
Introduces a SponsorBlock section to the video info UI, allowing users to select categories via a dialog. Refactors print statements to use the logger for consistency. Updates imports and improves UI feedback for subtitle and SponsorBlock selections.
2025-08-16 15:07:26 +03:00
Your Name a352371c45 Move ytsage_gui_format_table.py to src/gui
Renamed and relocated ytsage_gui_format_table.py to src/gui/ytsage_gui_format_table.py for improved project structure and organization.
2025-08-16 15:07:16 +03:00
Your Name 1e95e643c2 Move ytsage_style.py to src/core directory
Renamed and relocated ytsage_style.py to src/core/ytsage_style.py for improved project structure and organization.
2025-08-16 15:07:09 +03:00
Your Name 1484259692 Add __init__.py for GUI dialogs package
Introduces src/gui/dialogs/__init__.py to organize and re-export dialog classes for the YTSage GUI. This file provides a structured overview of available dialogs and maintains backward compatibility by re-exporting all relevant classes.
2025-08-16 15:07:02 +03:00
Your Name b1a452ab8e Add initial docstring for gui package
Created src/gui/__init__.py with a package-level docstring describing the purpose of the GUI modules for YTSage.
2025-08-16 15:06:57 +03:00
Your Name ba03a02aa1 Refactor GUI main file and add embed chapters option
Moved ytsage_gui_main.py to src/gui/ and updated imports for new module structure. Replaced print statements with structured logging using the logger. Added 'Embed Chapters' checkbox and related state handling. SponsorBlock selection is now managed via a dialog and category list instead of a simple checkbox. Updated version to 4.7.0 and improved resource path handling for icons and sounds.
2025-08-16 15:06:51 +03:00
Your Name b5d7406a34 Move and modularize GUI dialog files
Refactored dialog-related code by splitting ytsage_gui_dialogs.py into multiple modular files under src/gui/dialogs/. Added new files for base, custom, ffmpeg, selection, and settings dialogs, improving code organization and maintainability. Removed the old monolithic ytsage_gui_dialogs.py.
2025-08-16 15:06:36 +03:00
Your Name b339a322e8 Refactor print statements to use logger in ytsage_utils
Replaced all print statements with logger calls for improved logging consistency and error handling. Updated imports to use relative paths and added logger import. This change enhances maintainability and integrates better with the application's logging system.
2025-08-16 15:06:02 +03:00
Your Name 1fcde5d6b9 Refactor and enhance yt-dlp setup dialog UI
Moved ytsage_yt_dlp.py to src/core/ and improved the YtdlpSetupDialog UI with better layout, styling, and accessibility. Replaced print statements with logger calls, added a check_ytdlp_installed() utility, and refined icon path resolution. These changes improve user experience and maintainability.
2025-08-16 15:05:51 +03:00
Your Name 0cb40f4338 Refactor and enhance FFmpeg installer module
Moved ytsage_ffmpeg.py to src/core and refactored for improved logging and error handling. Added SHA-256 verification for downloads, updated FFmpeg URLs to 7.1.1, and implemented fallback extraction methods. Introduced get_ffmpeg_path utility and replaced print statements with logger calls for better integration.
2025-08-16 15:05:27 +03:00
Your Name 8ee436aa14 Refactor downloader logging and add new options
Replaced print statements with logger calls for improved logging. Added support for sponsorblock categories and chapter embedding. Updated imports to use relative paths and improved command building logic for yt-dlp.
2025-08-16 15:05:15 +03:00
Your Name 4fdc815f70 Add package docstring to core __init__.py
Introduces a new __init__.py file for the core package with a descriptive docstring outlining its purpose and contents.
2025-08-16 15:04:24 +03:00
Your Name 97a046cbae Add package metadata to __init__.py
Created src/__init__.py with project docstring, version, and author information for YTSage, a PySide6-based YouTube video downloader.
2025-08-16 15:04:13 +03:00
Your Name 42edf075c6 Delete notification.mp3 2025-08-16 15:04:00 +03:00
Your Name 5d417e980e Add loguru to requirements.txt
Added the loguru logging library to the project dependencies in requirements.txt.
2025-08-16 15:03:54 +03:00
Your Name 989a070782 Revamp README with improved structure and details
Enhanced the README with a new 'Why YTSage?' section, improved installation instructions, added troubleshooting steps, and expanded feature descriptions. Updated project structure, acknowledgments, and star history sections for better clarity and navigation. Improved formatting and added advanced usage notes for cross-platform support.
2025-08-16 15:03:42 +03:00
Your Name d72685ca28 Refactor imports and add logging to main.py
Updated import paths to use src.gui and src.core modules. Integrated logger for improved error and status reporting throughout application startup and error handling.
2025-08-16 15:03:31 +03:00
Your Name 0299affaad Delete icon.png 2025-08-16 15:03:21 +03:00
Your Name 0cb7437d5f Add notification sound asset
Introduced notification.mp3 to the assets/sound directory for use in application alerts or notifications.
2025-08-16 15:03:18 +03:00
Your Name 227c6e7474 Add new icon image to assets
Added icon.png to the assets/Icon directory for use in the application interface.
2025-08-16 15:03:13 +03:00
Your Name 227e543ad9 Update .gitignore for venv and test artifacts
Added rules to ignore virtual environment directories (venv, .venv) and test artifact files (*.test, *.tmp) to prevent them from being tracked in the repository.
2025-08-16 15:03:00 +03:00