Skip to content

Correction to FontError exception in mainwindow.py - #26144

Open
Boohoolean wants to merge 2 commits into
spyder-ide:masterfrom
Boohoolean:patch-1
Open

Correction to FontError exception in mainwindow.py#26144
Boohoolean wants to merge 2 commits into
spyder-ide:masterfrom
Boohoolean:patch-1

Conversation

@Boohoolean

Copy link
Copy Markdown

Description of Changes

Changed the FontError exception to also inform the user spyder.ttf font must be installed.

If a system is configured to disallow untrusted fonts, and the Fonts spyder uses have not been installed for all users, FontError in mainwindow.py provides a list of missing QT fonts that must be installed for all users to start Spyder. This list is incomplete, as detailed in issue #26143.
If all the fonts on the list are installed for all users, the same error is still thrown and spyder fails to start. The cause lies in utils\icon_manager.py which includes a qta.load_font call for spyder.ttf, which will silently fail when font installation rights are missing for the user and the loading of untrusted fonts is disabled in group policy.

This change addresses this problem by changing the error message as created in mainwindow.py.
The message still provides the original font list and location, but additionally informs the user that the spyder.ttf font must also be installed, and where it can be found.
Screenshot of the new error message:
Spyder_FontError_New

Issue(s) Resolved

Fixes #26143

Affirmation

By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

the above statement is true and correct:
Boohoolean

FontError provides a list of missing fonts that must be installed for all users to start Spyder, however this list is incomplete. 
If all the fonts on the list are installed for all users, the same error is still thrown and spyder fails to start. The cause lies in utils\icon_manager.py   which includes a qta.load_font for spyder.ttf, which will silently fail when font installation rights are missing for the user. 

This change addresses this by changing the error message. It still provides the original list and location of fonts, but additionally informs the user that the spyder.ttf font must also be installed, and where it can be found.
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.

FontError list of missing fonts in mainwindow.py is incomplete

1 participant