[MIR] libparams-validate-perl (as libgetopt-long-descriptive-perl, libmail-dkim-perl dependency)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libparams-validate-perl (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[MIR] libparams-
Package: libparams-
[Availability]
The package libparams-
The package libparams-
It currently builds and works for architectures: amd64 (all)
Link to package https:/
[Rationale]
The package libparams-
The package libparams-
our user base, but is important/helpful still because is required as runtime dependency by libgetopt-
libmail-dkim-perl it's a perl module to cryptographically identify the sender of email (implementing the new Domain Keys Identified Mail (DKIM)), used by spamassassin
and amavisd-new. The following change added to libmail-dkim-perl makes it necessary to use libparams-
1.20220520 2022-05-20 UTC
+ Change default algorithm in dkimsign.pl to sha-256
+ Use Getopt:
That change have been there since Lunar, apparently.
The package libparams-
[Security]
No CVEs/security issues in this software in the past:
- (0) https:/
- (0) https:/
- (0) https:/
No `suid` or `sgid` binaries.
No executables in `/sbin` and `/usr/sbin`.
Package does not install services, timers or recurring jobs.
Package does not open privileged ports (ports < 1024).
Package does not expose any external endpoints.
Package does not contain extensions to security-sensitive software (filters, scanners, plugins, UI skins, ...);
It's a Perl module to validate parameters to Perl method/function calls.
Params::Validate is a Perl module providing a flexible way to validate method
and function call parameters. The validation can be as simple as checking for
the presence of required parameters, or more complex, like validating object
classes (via isa) or capabilities (via can) and checking parameter types. It
also provides extensibility through customized validation callbacks.
The module has been designed to work equally well with positional or named
parameters (via a hash or hash reference) and includes experimental support
for attributes (see Attribute:
[Quality assurance - function/usage]
The package works well right after install
[Quality assurance - maintenance]
The package is maintained well in Debian/Ubuntu and does
not have too many, long-term & critical, open bugs:
- Ubuntu (1) https:/
- Debian (1) https:/
- Upstream's bug tracker (7) https:/
+ Upstream's repo last activity: https:/
- last commit: in master, Oct 22, 2022
- Issues without answer: 0
- Updated issue/PR: Aug 15, 2022
- last fixed/closed/merged issue: Aug 17, 2023
- last merged PR: Oct 22, 2022
The package hasn't important/old open bugs on upstream.
The package does not deal with exotic hardware we cannot support.
[Quality assurance - testing]
The package runs a test suite on build time, if it fails
it makes the build fail: https:/
dh_auto_test
/usr/bin/perl Build test --verbose 1
The package runs an autopkgtest (via autodep8 using 'Testsuite: autopkgtest-
that runs essentialy the above build-time test suite. It is currently passing on
this list of architectures (amd64, arm64, armhf, ppc64el, s390x) except i386: https:/
The package does have failing autopkgtests tests right now, but since
they always failed they are handled as "ignored failure", this is
because the test depends on pkg-perl-
build for i386 since focal.
[Quality assurance - packaging]
debian/watch is present and works.
debian/control defines a correct Maintainer field : Debian Perl Group <email address hidden> ( https:/
This package does not yield massive lintian Warnings, Errors
- recent build log of the package https:/
- full output from `lintian --pedantic` :
#source
❯ lintian -EvIL +pedantic --show-overrides
W: libparams-
W: libparams-
#binary
❯ lintian -EvIL +pedantic --show-overrides ../libgetopt-
X: libparams-
This package does not rely on obsolete or about to be demoted packages.
This package has no python2 or GTK2 dependencies.
The package will not be installed by default.
Packaging and build is easy, link to debian/rules: https:/
[UI standards]
Application is not end-user facing (does not need translation).
[Dependencies]
There are further dependencies not yet in main. Listing then:
libparams-
- libscalar-
However, the modules provided by libscalar-
although there is no Break/Replace/
[Standards compliance]
This package correctly follows FHS and Debian Policy (4.6.2)
[Maintenance/Owner]
Owning Team will be Ubuntu Server Team.
Team is not yet, but will subscribe to the package before promotion.
This does not use static builds.
This use vendored code:
-c/ppport.h : from https:/
This package is not rust based.
A previous version of the package was successfully built during the most recent test rebuild : https:/
[Background information]
The Package description explains the package well.
Upstream Name is Params-Validate .
Link to upstream project https:/
This has been in the archive since at least 2014 (Utopic,1.09-1).
It was on main before (https:/
Changed in libparams-validate-perl (Ubuntu): | |
assignee: | nobody → James Page (james-page) |
[Summary]
Note: This package has previous been in Ubuntu main (at 1.30 - current is 1.31).
MIR team ACK
This does not need a security review (see aboive)
List of specific binary packages to be promoted to main: validate- perl
- libparams-
Notes:
The package should get a team bug subscriber before being promoted
[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 (Ubuntu Server) and its also team maintained in Debian.
The rationale given in the report seems valid and useful for Ubuntu
[Dependencies] validate- perl checked with `check-mir`
OK:
- no other Dependencies to MIR due to this
- libparams-
- 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
- does not have unexpected Built-Using entries
OK:
- 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 (files [images, video, audio,
xml, json, asn.1], network packets, structures, ...) from
an untrusted source.
- 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, ...)
Problems: None
[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
- test suite fails will fail the build upon error.
- does have a non-trivial test suite that runs as autopkgtest
- This does not need special HW for build or test
Problems: None
[Packaging red flags] sporadic) sporadic)
OK:
- Ubuntu does not carry a delta
- debian/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is (good/slow/
- Debian/Ubuntu update history is (good/slow/
- 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 (just lack of checking of openpgp signature)
- 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 bu...