Bug 432965 - Discovery application - no information about add-ons for installation.
Summary: Discovery application - no information about add-ons for installation.
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: KNewStuff Backend (show other bugs)
Version: 5.20.5
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Dan Leinir Turthra Jensen
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-15 10:16 UTC by Dariusz Tereszkiewicz
Modified: 2021-09-30 14:06 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.24


Attachments
Screenshot of an open Discovery application (720.38 KB, image/png)
2021-02-15 10:16 UTC, Dariusz Tereszkiewicz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dariusz Tereszkiewicz 2021-02-15 10:16:57 UTC
Created attachment 135694 [details]
Screenshot of an open Discovery application

SUMMARY

After opening Discovery and switching to add-ons, there is no information about add-ons that can be installed or removed.
This behavior applies to any add-on group.
I have the KDE NEON distribution installed on another laptop as well and there is the same problem too.
Sometimes after one update the problem disappears, but after the next update this situation persists.


SOFTWARE/OS VERSIONS

Operating System: KDE neon 5.20
KDE Plasma Version: 5.20.5
KDE Frameworks Version: 5.78.0
Qt Version: 5.15.2
Kernel Version: 5.4.0-65-generic
OS Type: 64-bit
Processors: 4 × Intel® Core™ i5-2400 CPU @ 3.10GHz
Memory: 15.6 GiB of RAM
Graphics Processor: GeForce GTX 1050 Ti/PCIe/SSE2

ADDITIONAL INFORMATION
Comment 1 Bug Janitor Service 2021-09-27 22:02:07 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/discover/-/merge_requests/169
Comment 2 Aleix Pol 2021-09-30 11:03:00 UTC
Git commit c0e9cb9376ca5348a214458532a0611832f12f71 by Aleix Pol Gonzalez, on behalf of Aleix Pol.
Committed on 30/09/2021 at 11:02.
Pushed by apol into branch 'master'.

kns: Centralise the backend query state handling

We put it all into ::setResponsePending which is the function that we
call to tell we are embarking on a new query.
This allows us to make sure the signals to wrap up the previous state
can be emitted as well as notifying about the new state accordingly.
This also allows us to assert when the state isn't as expected, which
allowed to address some issues already as it's done in this change.

Hence, this fixes:
- issuing 2 searches before the backend has initialised will result in
an infinite job as both queries would be waiting forever for the backend
to initialise.
- issuing 2 searches where the first is pageable would leave the second
idling forever even though it's the one we care about.
- checking for updates didn't check whether we are already querying, we
could get 2 tasks weirdly overlapping
- fetchMore wouldn't notify about starting to fetch
- fetchEntryById isn't paged
- findResourceByPackageName wouldn't reset the m_responsePending value
Related: bug 436373

M  +69   -37   libdiscover/backends/KNSBackend/KNSBackend.cpp
M  +2    -0    libdiscover/backends/KNSBackend/KNSBackend.h

https://invent.kde.org/plasma/discover/commit/c0e9cb9376ca5348a214458532a0611832f12f71