- Fix refresh token cookie Secure flag bug (was hardcoded to false)
- Wire up AllowedOrigins config in CORS middleware (router, handlers, chat, SSE)
- Add APP_ENV=production to Dockerfile and Dockerfile.cuda
- Update all docker-compose files with APP_ENV and ALLOWED_ORIGINS examples
- CORS now validates origins in production, allows all in development
- Increase gocyclo threshold from 20 to 25 for complex handlers
YouTube downloads were failing with "exit status 1" error. Root cause:
YouTube now requires yt-dlp to use a JavaScript runtime for video cipher
decryption.
Changes:
- Install Deno runtime in both Dockerfiles (standard and CUDA)
- Upgrade from yt-dlp to yt-dlp[default] to include all optional dependencies
- Add stderr capture to YouTube download handler for better error diagnostics
- Add performance logging for YouTube downloads (timing and file size)
Fixes#224
See: https://github.com/yt-dlp/yt-dlp/issues/14404
- Add healthcheck to web service to monitor application status
- Update database healthcheck to use environment variables
- Fix line endings in Dockerfile and Dockerfile-cuda128
- Update copyright year in LICENSE
- Remove transcript.json (sample file no longer needed)
This commit adds comprehensive support for displaying AI's thinking process in the transcript UI:
1. Update ThinkingDisplay component:
- Improve rendering of thinking sections with expandable/collapsible UI
- Add proper toggle functionality for showing/hiding thinking sections
- Enhance styling and readability of thinking sections
2. Update AudioPlayer component for Svelte 5 compatibility:
- Convert to use $state for reactive variables
- Refactor to use modern event handling
- Improve waveform rendering and progress tracking
3. Update summary display with markdown rendering support:
- Add proper formatting for AI-generated summaries
- Improve UI for viewing thinking sections in summaries
- Connect thinking display toggle to parent component state
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated `.dockerignore`:
- Renamed Dockerfile from `Dockerfile-gpu` to `Dockerfile-cuda128` in ignore list.
- Removed the extra newline for cleaner format.
- Updated GitHub Actions workflows:
- Modified `main-cuda-docker.yml`, `nightly-cuda-docker.yml` to change Dockerfile reference from `Dockerfile-gpu` to `Dockerfile-cuda128`.
- Updated image tags from `-gpu` to `-cuda128`.
- Removed build and verification steps for non-CUDA Docker images from `main-docker.yml` and `nightly-docker.yml`.
- Updated main `Dockerfile`:
- Adjusted installation steps for Node.js dependencies.
- Added removal of `.env` file post-build to keep images clean.
- Updated `README.md` for GPU image build command:
- Changed reference from `Dockerfile-gpu` to `Dockerfile-cuda128`.
- Modified `docker-compose.gpu.yml` and `docker-compose.yml`:
- Updated Dockerfile reference in `docker-compose.gpu.yml` from `Dockerfile-gpu` to `Dockerfile-cuda128`.
- Set default paths for `MODELS_DIR`, `WORK_DIR`, and `AUDIO_DIR` using environment variables and adjusted volume configurations.
- Refactored `docker-entrypoint.sh`:
- Changed virtual environment directory from `/app/deps/` to `/scriberr/`.
- Removed the dependency check marker file logic for a more direct installation approach.
- Updated `.gitignore` and `env.example`:
- Removed `*.env` entry from `.gitignore`.
- Added descriptions for paths in `env.example` for clarity.
These changes streamline the Docker setup, improve environment variable handling, and update documentation for clearer instructions.
- Updated `Dockerfile` to use Ubuntu 24.04 as the base image.
- Created `Dockerfile-gpu` for GPU support using `nvidia/cuda:12.8.0-cudnn-runtime-ubuntu24.04`.
- Moved dependency installations to `docker-entrypoint.sh` for both Python and Node.js.
- Ensured virtual environment and Node.js dependencies are checked and installed during deployment.
- Added logic to handle hardware acceleration (CPU/GPU) in `docker-entrypoint.sh`.
- Update Dockerfile to use Ubuntu 24.04 and improve installation with `apt-get upgrade`.
- Modify Dockerfile to create and use a virtual environment for Python dependencies.
- Introduce ARGs for naming in Dockerfile-gpu and update base image to Ubuntu 22.04.
- Comment out PostgreSQL port mapping in docker-compose.yml for improved security (not exposed by default).
- Update docker-entrypoint.sh to activate the Python virtual environment before app startup.
- Simplify Python package installs in +server.ts by removing version-specific constraints.
Dockerfile Enhancements:
Refactored Dockerfile to combine apt-get commands for reduced layers and image size.
Leveraged Docker layer caching by separating COPY commands for dependencies and application code.
Added requirements.txt and updated Python dependency installation.
Adjusted environment variables and set NODE_ENV appropriately after building.
Ensured executable permissions for docker-entrypoint.sh.
Environment Configuration:
Updated .env file with new variables:
IMAGE_TAG for specifying Docker image tags.
PORT to configure the web interface port.
HARDWARE_ACCEL to specify hardware acceleration (cpu or gpu).
Modified .dockerignore to exclude venv directory.
Docker Compose Updates:
Updated docker-compose.yml to use the pre-built Docker image with IMAGE_TAG.
Replaced explicit environment variable declarations with env_file to load from .env.
Added Python Requirements File:
Created requirements.txt containing all Python dependencies for easier management and caching.
Transcription Script Improvements:
transcribe.py:
Modified to handle cases where HF_TOKEN is not provided, preventing errors when diarization is optional.
Adjusted diarization logic to set speaker labels appropriately.
Simplified JSON output by ensuring consistent segment structures.
transcription.ts:
Enhanced error handling and logging for better debugging.
Adjusted handling of environment variables HF_API_KEY and DIARIZATION_MODEL.
Improved progress reporting and job queue updates during transcription processing.
General Cleanup:
Ensured all scripts and configurations are aligned with the new environment variables.
Improved code comments and removed obsolete code sections.
Fixed minor syntax and formatting issues across scripts.
Overall, these changes enhance the Docker build process, streamline environment configurations, and improve the robustness of the transcription handling, especially around optional diarization features.
- Updated Dockerfile to install WhisperX and Diarization models and added npm build step.
- Modified docker-compose.yml to utilize environment variables and provide options for local data storage.
- Enhanced database connection in docker-entrypoint.sh to use environment variables for credentials.
- Added support for HuggingFace API key and diarization model in transcription.ts and transcribe.py.