Skip to content

Bug Report: PyInstaller Build Missing Rich Unicode Data ModuleΒ #104

@Gerkinfeltser

Description

@Gerkinfeltser

Branch

dev

Branch (if other)

No response

Version / Tag / Commit

Build (dev): 20260124-7-a0a71e8

Provider(s) Affected

No response

Deployment Method

Binary (exe/executable)

Operating System

Windows 11

Python Version (if running from source)

No response

Bug Description

Summary

Windows executable crashes on startup with ModuleNotFoundError: No module named 'rich._unicode_data.unicode17-0-0'

Environment

  • OS: Windows
  • Installation Method: Executable (proxy_app.exe)
  • Version: Latest release from GitHub

Root Cause

PyInstaller is not bundling the Rich library's Unicode data submodule (rich._unicode_data.unicode17-0-0). This is a known PyInstaller issue with Rich >= 14.0.0.

Suggested Fix

Add to PyInstaller .spec file:

hiddenimports=['rich._unicode_data']

Alternative: Pin Rich version to < 14.0.0 in requirements.txt:

rich<14.0.0

Workaround for Users

Run from source instead of using the executable:

git clone https://github.com/Mirrowel/LLM-API-Key-Proxy.git
cd LLM-API-Key-Proxy
pip install -r requirements.txt
python src/proxy_app/main.py

Steps to Reproduce

  1. Download latest Windows release from Releases
  2. Extract zip file
  3. Run proxy_app.exe
  4. TUI launcher attempts to display main menu

Expected Behavior

TUI launcher opens successfully and displays configuration options

Actual Behavior

Application crashes immediately with the attached traceback.

Error Logs / Messages

Traceback (most recent call last):
  File "main.py", line 46, in <module>
  File "proxy_app\launcher_tui.py", line 1096, in run_launcher_tui
  File "proxy_app\launcher_tui.py", line 349, in run
  File "proxy_app\launcher_tui.py", line 364, in show_main_menu
  File "rich\console.py", line 1724, in print
  File "rich\console.py", line 1345, in render
  File "rich\panel.py", line 213, in __rich_console__
  File "rich\console.py", line 1297, in measure
  File "rich\measure.py", line 109, in get
  File "rich\padding.py", line 132, in __rich_measure__
  File "rich\measure.py", line 109, in get
  File "rich\text.py", line 712, in __rich_measure__
  File "rich\text.py", line 712, in <genexpr>
  File "rich\cells.py", line 106, in cell_len
  File "rich\cells.py", line 92, in cached_cell_len
  File "rich\cells.py", line 128, in _cell_len
  File "rich\cells.py", line 129, in <genexpr>
  File "rich\cells.py", line 58, in get_character_cell_size
  File "rich\_unicode_data\__init__.py", line 90, in load
  File "importlib\__init__.py", line 90, in import_module
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'rich._unicode_data.unicode17-0-0'
[PYI-36684:ERROR] Failed to execute script 'main' due to unhandled exception!

Pre-submission Checklist

  • I have searched existing issues to ensure this is not a duplicate

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions