On Thu, Jan 20, 2022 at 9:55 AM Kamil Paral <kpa...@redhat.com> wrote: > > This is another attempt at creating a new release criterion specific for > graphical package managers. We already discussed it in November, but we > couldn't agree easily on some particular details, and then I was gone for a > long time: > https://lists.fedoraproject.org/archives/list/test@lists.fedoraproject.org/thread/LR2FDFMOY4E55ZYBHWOOINZS27FQ6LSB/#LR2FDFMOY4E55ZYBHWOOINZS27FQ6LSB > > Here is my new attempt. The new criterion text is longer, but I believe it is > overall somewhat weaker (to accommodate some of the previous concerns), just > more explicit. As before, please note that we already have package management > partly covered in the Basic criteria [1] and Beta criteria [2]. Please read > those first, including footnotes. The following new criterion is proposed > against the Final milestone: > > ~~~~~~~~~~~~~~~~~~~~ > The default graphical package manager for a given software type must > appropriately: > * Install, remove and update software > * List locally-installed software coming from the official Fedora repositories > * List available software (possibly in categories, a curated list, etc) > * Display metadata relevant to the selected software (e.g. the description, > screenshots, the size) > * Start the selected installed software > * Configure software sources by enabling/disabling pre-defined official > repositories and then adjust the available software pool accordingly > * Notify the user when system updates are available (taking into account the > intended frequency of such notifications) > > The following must hold true: > * When multiple operations (covered by this criterion) are requested, all of > them must finish correctly. (It's also valid to inform the user that a > certain operation is not available at that moment, see the "Supported > functionality and design decisions" note). > * The displayed state of software or software sources must not differ from > their actual state. (E.g. an RPM package must not be shown as installed when > it is not, a repository must not be shown as disabled or missing when it is > enabled, etc). > * Usual GUI interactivity must not break operations covered by this > criterion. (E.g. when the GUI allows the user to click some buttons while an > operation is running, it must not break that operation). > * The package manager must never make the system enter an inconsistent or > unbootable state. (E.g. damage the local software database, remove wrong > system files, break the bootloader, etc). > > Note: Supported functionality and design decisions > All requirements apply only if such a functionality is supported by the > package manager; it does not imply that the package manager must support all > this functionality. The requirements don't apply if some functionality is > intentionally modified as a design decision (e.g. if some software sources > can't be disabled as an intentional precaution to users breaking their > system). If there is a bug violating the design decisions in one of the > covered areas (e.g. a software source which is supposed to be always enabled > can be disabled), it's up to the blocker review team to consider whether this > bug makes the user experience or system safety considerably worse. > > Note: Refer to Basic footnotes > The footnotes for the [similar Basic criterion covering console tools][1] > regarding software types, 'appropriate' behavior, scope and so on are all > generally applicable to this criterion also. > ~~~~~~~~~~~~~~~~~~~~ > > If you compare it to the previous proposal, the new one avoids talking about > "sequential or concurrent" operations. That leaves some more wiggle room when > arguing that specific approaches are too niche (Frantisek's concern), i.e. it > no longer clearly covers these approaches completely. However, it still makes > sure that multiple operations are covered at least at a basic level (which > should cover our famous "install and then remove the same package"). The tool > can also say "no can do", and when that happens to be some internal error > message, we can discuss how clear it is to the user. > > I updated the "list installed software" and "configure sources" requirements > with suggestions from Ben. > > It also explicitly mentions that just basic clicking through GUI must not > abort running operations (which was something that got good consensus). And > adds an obvious statement about not breaking the system, which was implied in > the past but I assumed it's better to have it clearly visible (this one could > be moved to Beta, possibly). > > Finally it adds a requirement that the package manager must not mislead the > user by showing e.g. something as installed when it is not. You can say this > was also implied in the past (otherwise the 'install' or 'list' operation is > not working correctly). but again, this is just to avoid "it works well, just > displays it wrongly" arguments in the future. > > What do you think?
Looks good to me. -- Chris Murphy _______________________________________________ test mailing list -- test@lists.fedoraproject.org To unsubscribe send an email to test-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/test@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure