push
github
Add a new API to handle issues (#2775) Add a new service to handle issues in the new API. The new service allows any other one to register its issues. ## Registering issues A service that needs to register issues, receives an `agama_utils::actor::Handler<agama_utils::issue::Service>`. It can update the list of issues through the [Update](https://github.com/agama-project/agama/pull/2775/files#diff-47378187505deff38a2d6e135cdc88082R33) action. ## Dealing with D-Bus services The new service reads the issues from the D-Bus services too. When booting, it reads the existing issues and starts listening for changes on the `org.opensuse.Agama1.Issues` interfaces. ## Localization issues As part of this PR, the localization service reports issues now in case of a locale, keymap or timezone is unknown. ## Adapted UI The code to deal with the issues in the web UI has been adapted to the new API. ## Other smaller changes - Make `*_db` functions in `ModelAdapter` to return references instead of mutable references. - In a `TimezoneEntry`, rename `code` to `id` for consistency. Additionally, use `TimezoneId` instead of a string.
2695 of 4701 branches covered (57.33%)
Branch coverage included in aggregate %.
35 of 81 new or added lines in 19 files covered. (43.21%)
706 existing lines in 43 files now uncovered.25137 of 38994 relevant lines covered (64.46%)
196.11 hits per line