Skip to content

v26.3.10#1668

Merged
ROBERT-MCDOWELL merged 5 commits intoDrewThomasson:v26from
ROBERT-MCDOWELL:v26
Mar 10, 2026
Merged

v26.3.10#1668
ROBERT-MCDOWELL merged 5 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 March 10, 2026 04:37
@ROBERT-MCDOWELL ROBERT-MCDOWELL merged commit e77c0e1 into DrewThomasson:v26 Mar 10, 2026
1 check passed
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

Release bump to v26.3.10, with small UI and packaging fixes to improve Gradio styling/controls and Docker build reliability.

Changes:

  • Fix CSS variable typo for accordion row background styling in the Gradio UI.
  • Make “Chapters Preview” checkbox visible in the ebook import row.
  • Update Docker build inputs: bump APP_VERSION, make Python site-packages copy path version-aware, and correct Docker dependency list formatting in the launcher script.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
lib/gradio.py CSS var fix and UI change for the “Chapters Preview” checkbox.
ebook2audiobook.command Fix Docker programs array (but introduces a podman-compose build-arg expansion regression).
Dockerfile Bump app version and make site-packages copy path depend on PYTHON_VERSION.

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

Comment thread lib/gradio.py
Comment on lines 551 to +553
with gr.Row(elem_id='gr_row_ebook_mode') as gr_row_ebook_mode:
gr_ebook_mode = gr.Dropdown(label='', elem_id='gr_ebook_mode', choices=[('File','single'), ('Directory','directory')], interactive=True, scale=2)
gr_blocks_preview = gr.Checkbox(label='Chapters Preview', elem_id='gr_blocks_preview', value=False, visible=False, interactive=True, scale=1)
gr_blocks_preview = gr.Checkbox(label='Chapters Preview', elem_id='gr_blocks_preview', value=False, interactive=True, scale=1)
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

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

gr_blocks_preview is now visible by default, but the restore flow (restore_interface) only restores its value (not visibility) and also restores gr_ebook_mode without reapplying change_gr_ebook_mode. If a saved session is restored with ebook_mode == 'directory', the checkbox will remain visible (and the gr.File component may still be configured for file_count='single') until the user manually toggles the dropdown. Consider updating restore_interface to set gr_blocks_preview.visible (and gr_ebook_file.label/file_count) based on the restored ebook_mode, or invoke the same logic used in change_gr_ebook_mode during restore.

Copilot uses AI. Check for mistakes.
Comment thread ebook2audiobook.command
OS_LANG=$(echo "${LANG:-en}" | cut -d_ -f1 | tr '[:upper:]' '[:lower:]')
HOST_PROGRAMS=("cmake" "curl" "pkg-config" "xcb-util-cursor" "calibre" "ffmpeg" "mediainfo" "nodejs" "espeak-ng" "cargo" "rust" "sox" "tesseract")
DOCKER_PROGRAMS=("curl ffmpeg" "mediainfo" "nodejs" "espeak-ng" "sox" "tesseract-ocr") # tesseract-ocr-[lang] and calibre are hardcoded in Dockerfile
DOCKER_PROGRAMS=("curl" "ffmpeg" "mediainfo" "nodejs" "espeak-ng" "sox" "tesseract-ocr") # tesseract-ocr-[lang] and calibre are hardcoded in Dockerfile
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

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

DOCKER_PROGRAMS was changed to be a proper list of program names, but build_docker_image() (podman-compose path) passes --build-arg DOCKER_PROGRAMS_STR="$DOCKER_PROGRAMS", which in bash expands to only the first array element. With this change it will now pass just curl, causing missing packages during Docker builds. Update that build-arg to expand the whole array (e.g., ${DOCKER_PROGRAMS[*]}) so podman-compose builds receive the full program list.

Suggested change
DOCKER_PROGRAMS=("curl" "ffmpeg" "mediainfo" "nodejs" "espeak-ng" "sox" "tesseract-ocr") # tesseract-ocr-[lang] and calibre are hardcoded in Dockerfile
DOCKER_PROGRAMS="curl ffmpeg mediainfo nodejs espeak-ng sox tesseract-ocr" # tesseract-ocr-[lang] and calibre are hardcoded in Dockerfile

Copilot uses AI. Check for mistakes.
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