Skip to content

Release v0.5.0

Choose a tag to compare

@github-actions github-actions released this 17 Nov 01:57

Ygégé v0.5.0 - 2025-11-17

This is a major release focused on improving build infrastructure, cross-platform compatibility, and Docker deployment options.

🚀 Features

Comprehensive CI/CD Pipeline

  • Multi-Platform Builds: Implemented complete CI/CD pipeline with support for multiple platforms and architectures
  • Docker Improvements:
    • Added GCR (Google Container Registry) mirror support to avoid Docker Hub rate limits
    • Implemented Quay.io mirrors as fallback
    • Added GHCR (GitHub Container Registry) support
    • Pre-pull images in CI and preview workflows for faster builds

No-UPX Docker Images

  • Official noupx Images: Added official Docker images without UPX compression for better compatibility
  • Synology Support: Special builds for Synology NAS and older systems that have issues with UPX-compressed binaries
  • Multi-Arch Manifest: Full manifest support for both standard and no-UPX variants

Search Improvements

  • TMDB ID Search: Added ability to search torrents directly using TMDB IDs
  • Title Extraction: Improved torrent title extraction and parsing

🐛 Bug Fixes

Cross-Compilation Improvements

  • Resolved aarch64 cross-compilation issues
  • Improved bindgen clang arguments for ARM cross-compilation
  • Added target-specific CC/CXX/AR environment variables for boring-sys CMake
  • Used crossbuild-essential packages for Linux cross-compilation

Docker Build Fixes

  • Corrected multi-arch binary copy in runtime stage
  • Simplified binary copy with wildcard patterns
  • Migrated to native platform compilation for better reliability

CI/CD Stability

  • Updated macOS runner from macos-26 to macos-15
  • Fixed Rust const compilation errors
  • Added retry logic for SBOM upload step
  • Fixed SBOM draft release issues by publishing before signing
  • Added proper permissions (contents: write, packages: write) to workflows

Workflow Improvements

  • Aligned release.yml dependencies with ci.yml structure
  • Removed empty custom_env configurations
  • Fixed variable expansion in GitHub workflows
  • Normalized repository names to lowercase in GHCR URLs
  • Improved digest extraction using jq
  • Removed --recursive flag from cosign sign commands

🚜 Refactor

Build Process

  • Migrated artifact comment workflow from mobile builds to Rust cross-platform builds
  • Separated linting from build jobs for better parallelization
  • Standardized job names across workflows
  • Simplified build target naming conventions
  • Simplified Docker manifest digest extraction
  • Enabled Rust toolchain caching for faster builds

Docker Workflow

  • Refactored to use digest-based multi-arch builds
  • Migrated to native platform runners for reliability
  • Simplified native compilation process

📚 Documentation

French Translations

  • Added complete French translations for all documentation:
    • API documentation (docs/api-documentation-fr.md)
    • Docker guide (docs/docker-guide-fr.md)
    • Building from source (docs/building-from-source-fr.md)
    • Contribution guide (docs/contribution-fr.md)
    • And more...

Docker Documentation

  • Updated all Docker images references from 'master' to 'latest' tag
  • Added comprehensive Docker Hub description with installation guide
  • Improved deployment instructions

🎨 Code Quality

  • Formatted entire codebase according to rustfmt standards
  • Added emojis to workflow names for better visibility and quick identification
  • Improved code consistency across the project

⚙️ Infrastructure

  • Removed clippy from CI (focusing on rustfmt for now)
  • Updated macOS runner and improved Homebrew reliability
  • Removed musl Linux builds from CI/CD for stability
  • Added Rust toolchain setup to all CI jobs
  • Removed JavaScript from CodeQL analysis matrix

Installation

Docker (Recommended)

Standard Build (with UPX compression)

docker pull uwucode/ygege:0.5.0
# or
docker pull uwucode/ygege:latest

No-UPX Build (for Synology/older systems)

docker pull uwucode/ygege:0.5.0-noupx
# or
docker pull uwucode/ygege:latest-noupx

Docker Compose Example

services:
  ygege:
    image: uwucode/ygege:0.5.0
    container_name: ygege
    restart: unless-stopped
    volumes:
      - ./ygege/sessions:/app/sessions
      - ./ygege/config.json:/app/config.json
    ports:
      - 8715:8715

For complete deployment instructions, see the Docker Guide.

📖 Documentation

Breaking Changes

None - this release is fully backward compatible with v0.4.x

Full Changelog

Full Changelog: v0.4.0...v0.5.0