Skip to content

v26.2.26#1640

Merged
ROBERT-MCDOWELL merged 154 commits intoDrewThomasson:v26from
ROBERT-MCDOWELL:v26
Feb 26, 2026
Merged

v26.2.26#1640
ROBERT-MCDOWELL merged 154 commits intoDrewThomasson:v26from
ROBERT-MCDOWELL:v26

Conversation

@ROBERT-MCDOWELL
Copy link
Copy Markdown
Collaborator

No description provided.

Copilot AI review requested due to automatic review settings February 26, 2026 02:39
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request updates the application to version 26.2.26, introducing several new features and improvements:

Purpose: Version update with new GlowTTS TTS engine support, infrastructure improvements, and bug fixes.

Changes:

  • Adds GlowTTS TTS engine with support for 6 languages (English, Ukrainian, Turkish, Italian, Persian, Belarusian)
  • Adds Belarusian language support and expands Jetson platform support (5.1-6.1)
  • Improves Docker volume mount configuration for better separation of concerns
  • Refactors Windows uninstall script for more reliable cleanup
  • Updates subprocess handling to use threading instead of select for better Windows compatibility

Reviewed changes

Copilot reviewed 25 out of 26 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
VERSION.txt Version bump to 26.2.26
lib/classes/tts_engines/glowtts.py New GlowTTS TTS engine implementation with phonemizer support
lib/classes/tts_engines/presets/glowtts_presets.py GlowTTS model presets configuration
lib/conf_models.py Added GlowTTS engine configuration and updated TACOTRON2 files
lib/conf_lang.py Added Belarusian language support
lib/conf.py Extended Jetson support to version 5.1
requirements.txt, pyproject.toml Added phonemizer dependency
lib/gradio.py Updated voice list filtering and session restoration
lib/classes/subprocess_pipe.py Refactored to use threading/queue instead of select for stderr reading
uninstall.cmd Separated file and directory deletion for cleaner uninstall
docker-compose.yml, podman-compose.yml Changed from full directory mount to selective subdirectory mounts
ebook2audiobook.cmd Extensive refactoring of installation flow and Docker handling
ebook2audiobook.command Updated Docker examples and improved WSL integration
app.py Simplified multiprocessing to always use 'spawn' method
Dockerfile Reorganized package list formatting
README.md Updated Docker command examples with new volume mounts
Notebooks/*.ipynb Complete rewrite of Colab/Kaggle notebooks to match bash script structure

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread lib/gradio.py
Comment thread lib/conf_models.py Outdated
Comment thread ebook2audiobook.cmd Outdated
Comment thread ebook2audiobook.cmd
Comment thread ebook2audiobook.command
echo " GUI mode:"
echo " docker run -v \"./ebooks:/app/ebooks\" -v \"./audiobooks:/app/audiobooks\" -v \"./models:/app/models\" -v \"./voices:/app/voices\" ${cmd_extra}--rm -it -p 7860:7860 $DOCKER_IMG_NAME"
echo " Headless mode:"
echo " docker run -v \"./ebooks:/app/ebooks\" -v \"./audiobooks:/app/audiobooks\" -v \"./models:/app/models\" -v \"./voices:/app/voices\" -v \"/my/real/ebooks/folder/absolute/path:/app/custom_ebooks\" -v \"/my/real/output/folder/absolute/path:/app/audiobooks\" ${cmd_extra}--rm -it -p 7860:7860 $DOCKER_IMG_NAME --headless --ebook /app/custom_ebooks/myfile.pdf [--voice /app/my/voicepath/voice.mp3 etc..]"
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On line 814, the headless mode example mounts './audiobooks:/app/audiobooks' at the beginning, then later mounts '/my/real/output/folder/absolute/path:/app/audiobooks' which will override the first mount. This creates confusion as both volume mounts target the same container path '/app/audiobooks'. The initial mount should probably be removed from this headless example, or the paths should be clarified to use different container paths.

Suggested change
echo " docker run -v \"./ebooks:/app/ebooks\" -v \"./audiobooks:/app/audiobooks\" -v \"./models:/app/models\" -v \"./voices:/app/voices\" -v \"/my/real/ebooks/folder/absolute/path:/app/custom_ebooks\" -v \"/my/real/output/folder/absolute/path:/app/audiobooks\" ${cmd_extra}--rm -it -p 7860:7860 $DOCKER_IMG_NAME --headless --ebook /app/custom_ebooks/myfile.pdf [--voice /app/my/voicepath/voice.mp3 etc..]"
echo " docker run -v \"./ebooks:/app/ebooks\" -v \"./models:/app/models\" -v \"./voices:/app/voices\" -v \"/my/real/ebooks/folder/absolute/path:/app/custom_ebooks\" -v \"/my/real/output/folder/absolute/path:/app/audiobooks\" ${cmd_extra}--rm -it -p 7860:7860 $DOCKER_IMG_NAME --headless --ebook /app/custom_ebooks/myfile.pdf [--voice /app/my/voicepath/voice.mp3 etc..]"

Copilot uses AI. Check for mistakes.
Comment thread app.py Outdated
Comment thread lib/classes/tts_engines/glowtts.py
Comment thread README.md
@ROBERT-MCDOWELL ROBERT-MCDOWELL merged commit b1ef78b into DrewThomasson:v26 Feb 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants