Bug 439990 - Updating filters make them not working anymore
Summary: Updating filters make them not working anymore
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: G'Mic for Krita (show other bugs)
Version: 4.4.5
Platform: Appimage Linux
: NOR grave
Target Milestone: ---
Assignee: amyspark
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-07-18 03:18 UTC by Patrice
Modified: 2021-08-12 13:31 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Screenshot to reproduce the bug (458.85 KB, image/png)
2021-07-18 03:18 UTC, Patrice
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Patrice 2021-07-18 03:18:41 UTC
Created attachment 140151 [details]
Screenshot to reproduce the bug

SUMMARY
All Krita 4.4.2, 4.4.5 even Krita 5 prealpha all version

If we don't refresh the filters (look at the screenshot) G'MIC is working fine, once you refresh the filter by clicking on step 1 in the screen shot, many filters will throw an error and will not work anymore.

For example Go to > Rendering > Tree (or input "tree" in the search box) before updating the filters, it will work, then click on the button to refresh/update the filters, the tree rendering is not working anymore

This bug makes G'MIC pretty unusable for a lot of filters, once you've updated the filters, try the one just above "Tree"

More about this bug 
https://krita-artists.org/t/gmic-filters-errors/26320
(on Windows they can download from gmic.eu to upgrade their G'MIC, but Linux users using appimage from krita.org cannot)

STEPS TO REPRODUCE
1. In G'MIC Click on the "update filters" button (or Ctrl+R or F5)
2. Wait the filter are updated (dialogue will tell success)
3. Try > Rendering > Tree

OBSERVED RESULT
Error (see screenshot)

EXPECTED RESULT
To see a tree rendering by G'MIC

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION

Need to upgrade the appimage to 2.9.7 or even better to 2.9.8
Comment 1 Ahab Greybeard 2021-07-18 19:35:49 UTC
I can confirm that this is a problem with the July 18 5.0.0-prealpha (git c24193f) appimage.
Comment 2 Patrice 2021-07-19 05:04:23 UTC
A way for the end user to be able to fix this and not always having the need to report as a bug, would be that in Krita 5 to give back the choice of changing the G'MIC integration the end user would like to use, exactly the same way like it is done in Krita 4.x where we can chose our G'MIC integration.

I did made a post on Krita.org >
https://krita-artists.org/t/bug-ask-for-regression-krita-5-embedded-gmic-path/26367
Comment 3 Alvin Wong 2021-07-20 14:38:57 UTC
It would seem that inevitably we have to completely disable the filter update function, because newer G'MIC filter definitions often depend on updated version of G'MIC, as long as gmic-qt is included in the form of a plugin...
Comment 4 Patrice 2021-08-05 06:49:31 UTC
(In reply to Alvin Wong from comment #3)
> It would seem that inevitably we have to completely disable the filter
> update function, because newer G'MIC filter definitions often depend on
> updated version of G'MIC, as long as gmic-qt is included in the form of a
> plugin...

On Krita 5
Limiting/restraining the end user is NOT a solution.

Giving back the end user the ability to update/upgrade or chose its G'MIC integration like in any Krita 4.x.x appimage or whatever type, is the certainly the way to go > https://krita-artists.org/uploads/default/original/3X/8/f/8f4c2d0a82d7d7f90f94413e6f84f6f13fe8aa0f.png

In Krita 5 they just removed this possibility in the preferences > https://krita-artists.org/uploads/default/original/3X/c/3/c320b2d2c6bee8e9ba6d1a2f70e7c6391426de25.png
thus we are stuck with a deprecated G'MIC
Comment 5 Halla Rempt 2021-08-12 13:31:03 UTC
Git commit 39de844d68165affccb92e8d053143c3feccbf38 by Halla Rempt, on behalf of L. E. Segovia.
Committed on 12/08/2021 at 13:30.
Pushed by rempt into branch 'master'.

GMic: update to 2.9.8

This update rolls all existing updates into a single patch and
integrates the following new changes:

- Update the plugin to the new GMic-Qt API (while also ignoring it,
  because to implement the plugin architecture it needs to run within
  our QCoreApplication)
- Add support for compiling under MSVC (this includes support for FFTW3,
  LTO, Control Flow Guard, the MinGW stack size increase, and a fix to
  the CreateThread callback signature in GMic)
- Add support for Android (future proof)
- Make FFTW3 a truly optional library (the GMic-Qt toggle is a dud at
  present, this patch fixes it)
- Increase the minimum on-launch update timeout to 60s (as soon as you
  have some ping, the update will spuriously fail)
- Restore compatibility with stock GMic-Qt settings (previously, due to
  an oversight on my part, it wrote them willy-nilly in the Krita
  namespace)

It also adds new defines that allow to disable the following:
- Dark Theme mode
- Internet access by default
- GMic-Qt's own i18n management, thus respecting the host app's
  language
- All updates altogether

M  +1    -1    3rdparty_plugins/CMakeLists.txt
A  +503  -0    3rdparty_plugins/ext_gmic/0001-Add-Krita-native-plugin.patch
D  +0    -516  3rdparty_plugins/ext_gmic/0001-First-working-version-of-the-GMic-Qt-Krita-native-pl.patch
A  +289  -0    3rdparty_plugins/ext_gmic/0002-Add-support-for-MSVC.patch
D  +0    -290  3rdparty_plugins/ext_gmic/0002-Remove-shared-segment-infrastructure.patch
A  +179  -0    3rdparty_plugins/ext_gmic/0003-Add-Android-support.patch
D  +0    -170  3rdparty_plugins/ext_gmic/0003-Refactor-into-a-completely-Krita-native-plugin.patch
D  +0    -33   3rdparty_plugins/ext_gmic/0004-Enable-all-input-modes-for-Krita-plugin.patch
A  +41   -0    3rdparty_plugins/ext_gmic/0004-Make-FFTW3-truly-optional.patch
R  +25   -25   3rdparty_plugins/ext_gmic/0005-Disable-GMic-Qt-s-own-theming-for-Krita.patch [from: 3rdparty_plugins/ext_gmic/0007-Disable-GMic-Qt-s-own-theming-for-Krita.patch - 065% similarity]
D  +0    -82   3rdparty_plugins/ext_gmic/0005-Update-function-signatures-to-2.9.6.patch
R  +32   -32   3rdparty_plugins/ext_gmic/0006-Add-flag-to-disable-internet-access-by-default.patch [from: 3rdparty_plugins/ext_gmic/0008-Add-flag-to-disable-internet-access-by-default.patch - 051% similarity]
D  +0    -186  3rdparty_plugins/ext_gmic/0006-Add-support-for-MSVC.patch
R  +8    -8    3rdparty_plugins/ext_gmic/0007-Increase-on-launch-update-timeout-to-60s.patch [from: 3rdparty_plugins/ext_gmic/0009-Increase-on-launch-update-timeout-to-60s.patch - 055% similarity]
A  +66   -0    3rdparty_plugins/ext_gmic/0008-Enable-respecting-host-application-language.patch
A  +186  -0    3rdparty_plugins/ext_gmic/0009-Respect-settings-location-for-hosted-builds.patch
A  +132  -0    3rdparty_plugins/ext_gmic/0010-Disable-Internet-updates-in-Krita.patch
M  +15   -34   3rdparty_plugins/ext_gmic/CMakeLists.txt
M  +14   -19   plugins/extensions/qmic/gmic.h
M  +40   -48   plugins/extensions/qmic/kis_input_output_mapper.cpp
M  +5    -5    plugins/extensions/qmic/kis_qmic_interface.cpp

https://invent.kde.org/graphics/krita/commit/39de844d68165affccb92e8d053143c3feccbf38