Review for Source Package: libpanel

[Summary]
libpanel is a library of UI components, building upon libadwaita/GTK4, that is 
being used by sysprof (MIR LP: #2066269) and gnome-builder. It seems to be 
clean and well maintained upstream (except for the testing story).

MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.

This does not need a security review

List of specific binary packages to be promoted to main: libpanel-1-1, 
libpanel-common, gir1.2-panel-1
Specific binary packages built, but NOT to be promoted to main: <None>

Notes:
#0 - No security review needed.

Required TODOs:
#1 - testsuite/ does not seem to run at build time
     "meson test" reports "No tests defined.". Please fix this.
     See [Common blockers] below.

Recommended TODOs:
#2 - The package should get a team bug subscriber before being promoted
#3 - Consider adding some sort of automated integration tests (autopkgtests), 
e.g. launching the example/ or demo/ application provided by upstream on a 
virtual display and comparing the output to a reference screenshot.

[Rationale, Duplication and Ownership]
- There is no other package in main providing the same functionality.
- A team is committed to own long term maintenance of this package. 
(~desktop-packages)
- The rationale given in the report seems valid and useful for Ubuntu

[Dependencies]
OK:
- no other Dependencies to MIR due to this
  - SRCPKG checked with `check-mir`
  - all dependencies can be found in `seeded-in-ubuntu` (already in main)
  - none of the (potentially auto-generated) dependencies (Depends
    and Recommends) that are present after build are not in main
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
  more tests now.

Problems: None

[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking (except in testsuite/, which seems fine)
- does not have unexpected Built-Using entries
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard

Problems: None

[Security]
OK:
- history of CVEs does not look concerning
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not parse data formats (except through GLib's g_variant_* / gdk_* 
functions)
- does not expose any external endpoint (port/socket/... or similar)
- does not process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)
- does not deal with cryptography (en-/decryption, certificates, signing, ...)
- this makes appropriate (for its exposure) use of established risk
  mitigation features (dropping permissions, using temporary environments,
  restricted users/groups, seccomp, systemd isolation features,
  apparmor, ...)

Problems: None

[Common blockers]
OK:
- does not FTBFS currently
- This does not need special HW for build or test
- if a non-trivial test on this level does not make sense (the lib alone
  is only doing rather simple things), is the overall solution (app+libs)
  extensively covered i.e. via end to end autopkgtest
  => Yes, via sysprof (MIR LP: #2066269), gnome-builder has no autopkgtests
  => And: https://wiki.ubuntu.com/DesktopTeam/TestPlans/Sysprof
  => And: https://wiki.ubuntu.com/DesktopTeam/TestPlans/GnomeBuilder
- no new python2 dependency
- Not a Python package
- Not a Go package

Problems:
- does have a test suite that DOES NOT runs at build time
  - test suite fails will NOT fail the build upon error.
  => dh_auto_test executes "meson test", which tells us "No tests defined."
  => Please make sure testsuite/, demo/ and/or example/ binaries are actually 
executed.
- does have a non-trivial test suite that runs as autopkgtest (but manual 
testplan)
  => And: https://wiki.ubuntu.com/DesktopTeam/TestPlans/Sysprof
  => And: https://wiki.ubuntu.com/DesktopTeam/TestPlans/GnomeBuilder

[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking is in place.
- debian/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- Debian/Ubuntu update history is good
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far
  maintained the package
- no massive Lintian warnings
- debian/rules is rather clean
- It is not on the lto-disabled list

Problems: None

[Upstream red flags]
OK:
- no Errors/warnings during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside
  tests)
- no use of user nobody
- no use of setuid / setgid
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit or libseed
- part of the UI, no .desktop file needed (it's an UI library)
- translation present

Problems: None

** Changed in: libpanel (Ubuntu)
     Assignee: Lukas Märdian (slyon) => Jeremy Bícha (jbicha)

** Changed in: libpanel (Ubuntu)
       Status: New => Incomplete

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2066272

Title:
  [MIR] libpanel

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libpanel/+bug/2066272/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to