Bug 464464 - broken 5.2.0 macos dmg, Python initialization error
Summary: broken 5.2.0 macos dmg, Python initialization error
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: git master (please specify the git hash!)
Platform: macOS (DMG) macOS
: NOR crash
Target Milestone: ---
Assignee: vanyossi
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2023-01-18 15:34 UTC by vanyossi
Modified: 2023-01-25 20:13 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description vanyossi 2023-01-18 15:34:23 UTC
krita on dmg fails to initizalize due to a python fail start

here is the log

Populating font family aliases took 116 ms. Replace uses of missing font family ".AppleSystemUIFont" with one that exists to avoid this cost. 
krita.lib.pigment: Duplicated profile "Chemical proof" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/cmyk.icm" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/cmyk.icm"
krita.lib.pigment: Duplicated profile "scRGB (linear)" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/scRGB.icm" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/scRGB.icm"
krita.lib.pigment: Duplicated profile "High Dynamic Range UHDTV Wide Color Gamut Display (Rec. 2020) - SMPTE ST 2084 PQ EOTF" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/ITUR_2100_PQ_FULL.ICC" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/ITUR_2100_PQ_FULL.ICC"
krita.lib.pigment: Duplicated profile "ACEScg-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/ACEScg-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/ACEScg-elle-V4-g10.icc"
krita.lib.pigment: Duplicated profile "ClayRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/ClayRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/ClayRGB-elle-V2-g22.icc"
krita.lib.pigment: Duplicated profile "ClayRGB-elle-V4-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/ClayRGB-elle-V4-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/ClayRGB-elle-V4-srgbtrc.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-g10.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-g18.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-g18.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-g18.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-g22.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-labl.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-labl.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-labl.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-rec709.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-rec709.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-rec709.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V2-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V2-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V2-srgbtrc.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-g10.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-g18.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-g18.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-g18.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-g22.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-labl.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-labl.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-labl.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-rec709.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-rec709.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-rec709.icc"
krita.lib.pigment: Duplicated profile "Gray-D50-elle-V4-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Gray-D50-elle-V4-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Gray-D50-elle-V4-srgbtrc.icc"
krita.lib.pigment: Duplicated profile "Lab identity built-in" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Lab-D50-Identity-elle-V2.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Lab-D50-Identity-elle-V2.icc"
krita.lib.pigment: Duplicated profile "Lab identity built-in" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Lab-D50-Identity-elle-V4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Lab-D50-Identity-elle-V4.icc"
krita.lib.pigment: Duplicated profile "LargeRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/LargeRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/LargeRGB-elle-V2-g22.icc"
krita.lib.pigment: Duplicated profile "Rec2020-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/Rec2020-elle-V4-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/Rec2020-elle-V4-g10.icc"
krita.lib.pigment: Duplicated profile "WideRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/WideRGB-elle-V2-g22.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/WideRGB-elle-V2-g22.icc"
krita.lib.pigment: Duplicated profile "XYZ identity built-in" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/XYZ-D50-Identity-elle-V4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/XYZ-D50-Identity-elle-V4.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.601-7 + BT.1886 YCbCr ICC V2 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt601-7_bt1886_ycbcr_v2.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt601-7_bt1886_ycbcr_v2.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.601-7 + BT.1886 YCbCr ICC V4 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt601-7_bt1886_ycbcr_v4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt601-7_bt1886_ycbcr_v4.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.601-7 YCbCr ICC V2 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt601-7_ycbcr_v2.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt601-7_ycbcr_v2.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.601-7 YCbCr ICC V4 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt601-7_ycbcr_v4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt601-7_ycbcr_v4.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.709-6 + BT.1886 YCbCr ICC V2 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt709-6_bt1886_ycbcr_v2.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt709-6_bt1886_ycbcr_v2.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.709-6 + BT.1886 YCbCr ICC V4 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt709-6_bt1886_ycbcr_v4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt709-6_bt1886_ycbcr_v4.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.709-6 YCbCr ICC V2 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt709-6_ycbcr_v2.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt709-6_ycbcr_v2.icc"
krita.lib.pigment: Duplicated profile "ITU-R BT.709-6 YCbCr ICC V4 profile" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/bt709-6_ycbcr_v4.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/bt709-6_ycbcr_v4.icc"
krita.lib.pigment: Duplicated profile "krita-2.5, lcms sRGB built-in with linear gamma TRC" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/krita25_lcms-builtin-sRGB_g100-truegamma.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/krita25_lcms-builtin-sRGB_g100-truegamma.icc"
krita.lib.pigment: Duplicated profile "sRGB-elle-V2-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/sRGB-elle-V2-g10.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/sRGB-elle-V2-g10.icc"
krita.lib.pigment: Duplicated profile "sRGB-elle-V2-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/color/icc/krita/sRGB-elle-V2-srgbtrc.icc" "/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/color/icc/krita/sRGB-elle-V2-srgbtrc.icc"
Invalid profile :  "/Library/ColorSync/Profiles//WebSafeColors.icc"
krita.lib.pigment: Replacing color space factory "LABA" "L*a*b*/Alfa (Entero de 16 bits/canal)" with "LABA" "L*a*b* (entero de 16 bits/canal, sin gestionar)"
krita.lib.pigment: Replacing color space factory "RGBA" "RGB/Alfa (Entero de 8 bits/canal)" with "RGBA" "RGB (entero de 8 bits/canal, sin gestionar)"
krita.lib.pigment: Replacing color space factory "RGBA16" "RGB/Alfa (Entero de 16 bits/canal)" with "RGBA16" "RGB (entero de 16 bits/canal, sin gestionar)"
QObject::startTimer: Timers cannot have negative intervals
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Frameworks/Python.framework/Versions/Current/lib/python3.10/site-packages'
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/MacOS/krita'
  sys.base_prefix = ''
  sys.base_exec_prefix = ''
  sys.platlibdir = 'lib'
  sys.executable = '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/MacOS/krita'
  sys.prefix = ''
  sys.exec_prefix = ''
  sys.path = [
    '/Users/daedalus/Library/Application Support/krita/',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Resources/',
    '/Users/daedalus/Library/Application Support/krita/pykrita/',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/krita/pykrita/',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/share/krita/pykrita/',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/share/pykrita/',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/kritadmg/krita.app/Contents/Frameworks/krita-python-libs',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/i/lib/python3.10/site-packages',
    '/Users/daedalus/developer/krita/repos/uni_depbranch/i/lib/python3.10/site-packages/PyQt5',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x0000000102968580 (most recent call first):
  <no Python frame>
krita.general: Warning: some tiles have leaked:
krita.general: 	Tiles in memory: 4 
 	Total tiles: 4
Comment 1 vanyossi 2023-01-23 15:45:55 UTC
Do note, this happens without PYTHONPATH set, I did not noticed I pasted the log with that test.
Comment 2 amyspark 2023-01-24 21:01:54 UTC
This is the full script log:

krita.scripting: Loading Python plugin
krita.scripting: Initializing Python plugin for Python 3 , 10
krita.scripting: Plugin Directories:  ("/Users/amalia/Library/Application Support/krita/", "/Volumes/krita/krita.app/Contents/Resources/", "/Users/amalia/Library/Application Support/krita/pykrita/", "/Volumes/krita/krita.app/Contents/share/krita/pykrita/", "/Volumes/krita/krita.app/share/krita/pykrita/", "/Volumes/krita/krita.app/Contents/share/pykrita/")
krita.scripting: Python::setPath. Script paths: ("/Users/amalia/Library/Application Support/krita/", "/Volumes/krita/krita.app/Contents/Resources/", "/Users/amalia/Library/Application Support/krita/pykrita/", "/Volumes/krita/krita.app/Contents/share/krita/pykrita/", "/Volumes/krita/krita.app/share/krita/pykrita/", "/Volumes/krita/krita.app/Contents/share/pykrita/") true
krita.scripting: pythonLibsPath (krita-python-libs) "/Volumes/krita/krita.app/Contents/Frameworks/krita-python-libs"
krita.scripting: Found krita-python-libs at "/Volumes/krita/krita.app/Contents/Frameworks/krita-python-libs"
krita.scripting: pythonLibsPath (sip) ""
krita.scripting: 	 "python3.10" "python3.10"
krita.scripting: Setting python paths: "/Users/amalia/Library/Application Support/krita/:/Volumes/krita/krita.app/Contents/Resources/:/Users/amalia/Library/Application Support/krita/pykrita/:/Volumes/krita/krita.app/Contents/share/krita/pykrita/:/Volumes/krita/krita.app/share/krita/pykrita/:/Volumes/krita/krita.app/Contents/share/pykrita/:/Volumes/krita/krita.app/Contents/Frameworks/krita-python-libs:/Users/Packaging/KritaBuild/i/lib/python3.10/site-packages:/Users/Packaging/KritaBuild/i/lib/python3.10/site-packages/PyQt5"
krita.scripting: Initializing Python interpreter
Python path configuration:
  PYTHONHOME = '/Volumes/krita/krita.app/Contents/Frameworks/Python.framework/Versions/3.10/lib/python3.10'
  PYTHONPATH = (not set)
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/Volumes/krita/krita.app/./Contents/MacOS/krita'
  sys.base_prefix = ''
  sys.base_exec_prefix = ''
  sys.platlibdir = 'lib'
  sys.executable = '/Volumes/krita/krita.app/./Contents/MacOS/krita'
  sys.prefix = ''
  sys.exec_prefix = ''
  sys.path = [
    '/Users/amalia/Library/Application Support/krita/',
    '/Volumes/krita/krita.app/Contents/Resources/',
    '/Users/amalia/Library/Application Support/krita/pykrita/',
    '/Volumes/krita/krita.app/Contents/share/krita/pykrita/',
    '/Volumes/krita/krita.app/share/krita/pykrita/',
    '/Volumes/krita/krita.app/Contents/share/pykrita/',
    '/Volumes/krita/krita.app/Contents/Frameworks/krita-python-libs',
    '/Users/Packaging/KritaBuild/i/lib/python3.10/site-packages',
    '/Users/Packaging/KritaBuild/i/lib/python3.10/site-packages/PyQt5',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x0000000113f8ce00 (most recent call first):
  <no Python frame>
krita.general: Warning: some tiles have leaked:
krita.general: 	Tiles in memory: 4 
 	Total tiles: 4
fish: Job 1, 'env QT_LOGGING_RULES="krita.scr…' terminated by signal SIGSEGV (Address boundary error)

See the lines hardcoded to the binary factory? It means that Krita's thinking that we're running from a system installation of Python (utilities.cpp line 382,  involving KRITA_PYKRITA_LIBRARY). findKritaPythonLibsPath needs to be fixed so that it detects Python 3.10.
Comment 3 vanyossi 2023-01-25 20:12:01 UTC
Git commit 0317674f64a539337dafa2ed9daaafcf3f825b22 by Ivan Yossi.
Committed on 25/01/2023 at 20:10.
Pushed by ivany into branch 'master'.

macos: add python.framework lib to search paths

M  +5    -1    plugins/extensions/pykrita/plugin/utilities.cpp

https://invent.kde.org/graphics/krita/commit/0317674f64a539337dafa2ed9daaafcf3f825b22
Comment 4 vanyossi 2023-01-25 20:13:59 UTC
Git commit b199fc4328bcb86ce33872e2cbb03868c955f755 by Ivan Yossi.
Committed on 25/01/2023 at 20:13.
Pushed by ivany into branch 'krita/5.1'.

macos: add python.framework lib to search paths
(cherry picked from commit 0317674f64a539337dafa2ed9daaafcf3f825b22)

M  +5    -1    plugins/extensions/pykrita/plugin/utilities.cpp

https://invent.kde.org/graphics/krita/commit/b199fc4328bcb86ce33872e2cbb03868c955f755