I would strongly recommend against filtering out missing backends at cantor startup (talking about the prompt that appears when no default backend has been set). This is a matter of usability, mostly important for new users trying cantor: - A new user may want to configure Cantor to use e.g. Octave (This applies to anyone, but will use Octave as an example, because it's what happened to me) - System's Octave version may be old, so the user install it easily e.g. via flatpak - Now the user opens Cantor, but Octave is not one of the options. - This sets the impression that Octave is not supported. - However, the truth is that Octave just needs proper configuration. - The way to configure it currently is by choosing any of the available backends and go to Cantor settings to adjust those for Octave. - I propose to improve usability here by presenting all backends without filtering. - If the selected backend is not properly configured (e.g. Octave), its settings should be opened, so the user can set them right. [ moved to become a specific bug from https://bugs.kde.org/show_bug.cgi?id=406684 ]
Thanks. This makes sense.
Git commit 731fa7186d80f330bf7d7fed8a86b9c2cff4172f by Nikita Sirgienko. Committed on 24/04/2019 at 21:48. Pushed by sirgienko into branch 'master'. Improve logic of backend showing: - Now, all installed backends showed, even disabled - For backends with missing requirements, Cantor shows information from backends, about what user needs to do to enable backend. Also increase soversion of Cantor library, because we break ABI. FIX-IN: 19.08 M +25 -6 src/backendchoosedialog.cpp M +2 -1 src/backendchoosedialog.h M +11 -2 src/backends/R/rbackend.cpp M +1 -1 src/backends/R/rbackend.h M +11 -4 src/backends/julia/juliabackend.cpp M +1 -1 src/backends/julia/juliabackend.h M +18 -2 src/backends/lua/luabackend.cpp M +1 -1 src/backends/lua/luabackend.h M +18 -3 src/backends/maxima/maximabackend.cpp M +1 -1 src/backends/maxima/maximabackend.h M +18 -2 src/backends/octave/octavebackend.cpp M +1 -1 src/backends/octave/octavebackend.h M +19 -4 src/backends/sage/sagebackend.cpp M +1 -1 src/backends/sage/sagebackend.h M +18 -3 src/backends/scilab/scilabbackend.cpp M +2 -2 src/backends/scilab/scilabbackend.h M +1 -1 src/lib/CMakeLists.txt M +2 -1 src/lib/backend.cpp M +2 -1 src/lib/backend.h https://commits.kde.org/cantor/731fa7186d80f330bf7d7fed8a86b9c2cff4172f
(In reply to Nikita Sirgienko from comment #2) > Git commit 731fa7186d80f330bf7d7fed8a86b9c2cff4172f by Nikita Sirgienko. > Committed on 24/04/2019 at 21:48. > Pushed by sirgienko into branch 'master'. > > Improve logic of backend showing: > - Now, all installed backends showed, even disabled > - For backends with missing requirements, Cantor shows information from > backends, about what user needs to do to enable backend. > Also increase soversion of Cantor library, because we break ABI. > FIX-IN: 19.08 > > M +25 -6 src/backendchoosedialog.cpp > M +2 -1 src/backendchoosedialog.h > M +11 -2 src/backends/R/rbackend.cpp > M +1 -1 src/backends/R/rbackend.h > M +11 -4 src/backends/julia/juliabackend.cpp > M +1 -1 src/backends/julia/juliabackend.h > M +18 -2 src/backends/lua/luabackend.cpp > M +1 -1 src/backends/lua/luabackend.h > M +18 -3 src/backends/maxima/maximabackend.cpp > M +1 -1 src/backends/maxima/maximabackend.h > M +18 -2 src/backends/octave/octavebackend.cpp > M +1 -1 src/backends/octave/octavebackend.h > M +19 -4 src/backends/sage/sagebackend.cpp > M +1 -1 src/backends/sage/sagebackend.h > M +18 -3 src/backends/scilab/scilabbackend.cpp > M +2 -2 src/backends/scilab/scilabbackend.h > M +1 -1 src/lib/CMakeLists.txt > M +2 -1 src/lib/backend.cpp > M +2 -1 src/lib/backend.h > > https://commits.kde.org/cantor/731fa7186d80f330bf7d7fed8a86b9c2cff4172f Excellent, thank you!