Bug 2254924 - Review Request: perl-Net-DNS-Paranoid - Paranoid DNS resolver
Summary: Review Request: perl-Net-DNS-Paranoid - Paranoid DNS resolver
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2254929
TreeView+ depends on / blocked
 
Reported: 2023-12-17 22:47 UTC by Chris Adams
Modified: 2024-03-23 00:57 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-03-23 00:36:49 UTC
Type: ---
Embargoed:
ppisar: fedora-review+


Attachments (Terms of Use)

Description Chris Adams 2023-12-17 22:47:38 UTC
Spec URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid.spec
SRPM URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid-0.08-1.fc39.src.rpm
Description:
This is a wrapper module for Net::DNS.

Fedora Account System Username: cmadams

Comment 3 Chris Adams 2024-03-08 20:02:09 UTC
Bumped release for additional spec file cleanups and new version:
Spec URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid.spec
SRPM URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid-0.09-1.fc39.src.rpm

Comment 4 Petr Pisar 2024-03-13 08:01:17 UTC
URL and Source0 addresses are Ok.
Source0 archive (SHA-512: 8feeb038bb9ad628fee77a8a6f6a62d4a1d25f1eff22cbca3e333a9643eee2046d31dc330e62901a21bb61093ec299ab1ab8b96ed5d72d5a1667ab15c33fa4f1) is original. Ok.

Summary verified from lib/Net/DNS/Paranoid.pm. Ok.

TODO: Capitalize "dns" in the summary.
TODO: The one-line description "wrapper module for Net::DNS" is not much helpful. Please the other line from Net::DNS::Paranoid POD, which explains the added value.

License verified from LICENSE, README.md, META.json, and lib/Net/DNS/Paranoid.pm. Ok.
No XS code is present, noarch BuildArch is Ok.

TODO: Build-require "perl(:VERSION) >= 5.8.8" (lib/Net/DNS/Paranoid.pm:4).
TODO: Unset "VERBOSE" variable in %check section. It is used in the tests (t/MockResolver.pm:27).

FIX: The %{_with_network_tests} condition affects t/00_compile.t. That test does not use the Internet and should be performed regardless the condition. I instead recommend deleting t/01_simple.t in %prep section based on negation of the condition.

FIX: With the %{_with_network_tests} condition as it is now, no tests are run, thus many of the BuildRequires (e.g. perl(lib), or perl(Net::DNS::Resolver)) are not needed. Guard them with the condition either.

TODO: Properly declare the %{_with_network_tests} build condition with "%bcond_with network_tests". It makes the build condition discoverable.

$ rpmlint perl-Net-DNS-Paranoid.spec ../SRPMS/perl-Net-DNS-Paranoid-0.09-1.fc41.src.rpm ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-1.fc41.noarch.rpm 
======================================== rpmlint session starts =======================================
rpmlint: 2.5.0
configuration:
    /usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 3

=== 2 packages and 1 specfiles checked; 0 errors, 0 warnings, 6 filtered, 0 badness; has taken 0.3 s ==
rpmlint is OK.

$ rpm -q -lv -p ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-1.fc41.noarch.rpm
drwxr-xr-x    2 root     root                        0 Mar  8 01:00 /usr/share/doc/perl-Net-DNS-Paranoid
-rw-r--r--    1 root     root                     1113 Feb  6 06:59 /usr/share/doc/perl-Net-DNS-Paranoid/Changes
-rw-r--r--    1 root     root                     2323 Feb  6 06:59 /usr/share/doc/perl-Net-DNS-Paranoid/README.md
drwxr-xr-x    2 root     root                        0 Mar  8 01:00 /usr/share/licenses/perl-Net-DNS-Paranoid
-rw-r--r--    1 root     root                    18452 Feb  6 06:59 /usr/share/licenses/perl-Net-DNS-Paranoid/LICENSE
-rw-r--r--    1 root     root                     1923 Mar  8 01:00 /usr/share/man/man3/Net::DNS::Paranoid.3pm.gz
-rw-r--r--    1 root     root                     8377 Feb  6 06:59 /usr/share/perl5/vendor_perl/Net/DNS/Paranoid.pm
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-1.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(:VERSION) >= 5.8.8
      1 perl(Class::Accessor::Lite)
      1 perl(Net::DNS)
      1 perl(strict)
      1 perl(warnings)
      1 perl-libs
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsZstd) <= 5.4.18-1
TODO: Constrain "perl(Net::DNS)" with ">= 0.68" (META.json:51).

$ rpm -q --provides -p ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-1.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(Net::DNS::Paranoid) = 0.09
      1 perl-Net-DNS-Paranoid = 0.09-1.fc41
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-1.fc41.noarch.rpm 
Binary dependencies are resolvable. Ok.

The package builds in Fedora 41 (https://koji.fedoraproject.org/koji/taskinfo?taskID=114852235). Ok.

Otherwise, the package in line with Fedora and Perl packaging guidelines.
Please correct all FIX items, consider fixing TODO items, and provide a new spec file.

Comment 5 Chris Adams 2024-03-13 15:38:21 UTC
Bumped release for additional spec file cleanups and new version:
Spec URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid.spec
SRPM URL: https://cmadams.fedorapeople.org/perl-Net-DNS-Paranoid/perl-Net-DNS-Paranoid-0.09-2.fc39.src.rpm

Comment 6 Petr Pisar 2024-03-14 08:18:52 UTC
Changes in the spec file:

--- perl-Net-DNS-Paranoid.spec.old      2024-03-08 01:00:00.000000000 +0100
+++ perl-Net-DNS-Paranoid.spec  2024-03-13 01:00:00.000000000 +0100
@@ -1,26 +1,36 @@
+# some tests require Internet access, don't enable by default
+%bcond network_tests 0
+
 Name:           perl-Net-DNS-Paranoid
 Version:        0.09
-Release:        1%{?dist}
-Summary:        Paranoid dns resolver
+Release:        2%{?dist}
+Summary:        Paranoid DNS resolver
 License:        GPL-1.0-or-later OR Artistic-1.0-Perl
 URL:            https://metacpan.org/dist/Net-DNS-Paranoid/
 Source0:        https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Net-DNS-Paranoid-%{version}.tar.gz
 BuildArch:      noarch
 BuildRequires:  perl-interpreter perl-generators coreutils
+BuildRequires:  perl(:VERSION) >= 5.8.8
 BuildRequires:  perl(Class::Accessor::Lite) >= 0.05
 BuildRequires:  perl(Module::Build::Tiny) >= 0.035
 BuildRequires:  perl(Net::DNS) >= 0.68
-BuildRequires:  perl(Net::DNS::Resolver)
+# version req isn't added by RPM auto-dep
+Requires:       perl(Net::DNS) >= 0.68
 BuildRequires:  perl(Test::More) >= 0.98
+BuildRequires:  perl(strict)
+BuildRequires:  perl(warnings)
+%if %{with network_tests}
+BuildRequires:  perl(Net::DNS::Resolver)
 BuildRequires:  perl(lib)
 BuildRequires:  perl(parent)
-BuildRequires:  perl(strict)
 BuildRequires:  perl(utf8)
-BuildRequires:  perl(warnings)
+%endif

 %description
 This is a wrapper module for Net::DNS.

+This module detects IP address / host names for internal servers.
+
 %prep
 %setup -q -n Net-DNS-Paranoid-%{version}

@@ -33,8 +43,11 @@
 %{_fixperms} %{buildroot}/*

 %check
-# tests require Internet access
-%{?_with_network_tests: ./Build test}
+unset VERBOSE
+%if %{without network_tests}
+rm t/01_simple.t
+%endif
+./Build test

 %files
 %doc Changes README.md
@@ -43,6 +56,9 @@
 %{_mandir}/man3/Net::DNS::Paranoid*

 %changelog
+* Wed Mar 13 2024 Chris Adams <linux> 0.09-2
+- additional spec file cleanups
+
 * Fri Mar 08 2024 Chris Adams <linux> 0.09-1
 - update to new version
 - additional spec file cleanups

All tests pass. Ok.

$ rpmlint perl-Net-DNS-Paranoid.spec ../SRPMS/perl-Net-DNS-Paranoid-0.09-2.fc41.src.rpm ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-2.fc41.noarch.rpm 
======================================== rpmlint session starts =======================================
rpmlint: 2.5.0
configuration:
    /usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 3

=== 2 packages and 1 specfiles checked; 0 errors, 0 warnings, 6 filtered, 0 badness; has taken 0.3 s ==
rpmlint is Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-2.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(:VERSION) >= 5.8.8
      1 perl(Class::Accessor::Lite)
      1 perl(Net::DNS)
      1 perl(Net::DNS) >= 0.68
      1 perl(strict)
      1 perl(warnings)
      1 perl-libs
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsZstd) <= 5.4.18-1
TODO: Filter the under-specified "perl(Net::DNS)" run-dependency with __requires_exclude macro.

$ resolvedeps rawhide ../RPMS/noarch/perl-Net-DNS-Paranoid-0.09-2.fc41.noarch.rpm 
Binary dependencies are resolvable. Ok.

The package builds in Fedora 41 (https://koji.fedoraproject.org/koji/taskinfo?taskID=114930964). Ok.

Please consider fixing the TODO item before building this package.
Package is APPROVED.

Comment 7 Fedora Admin user for bugzilla script actions 2024-03-14 12:13:46 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-Net-DNS-Paranoid

Comment 8 Fedora Update System 2024-03-14 12:40:12 UTC
FEDORA-2024-2f98df9773 (perl-Net-DNS-Paranoid-0.09-2.fc39) has been submitted as an update to Fedora 39.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-2f98df9773

Comment 9 Fedora Update System 2024-03-14 12:47:37 UTC
FEDORA-2024-09933b0a54 (perl-Net-DNS-Paranoid-0.09-2.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-09933b0a54

Comment 10 Fedora Update System 2024-03-15 02:01:46 UTC
FEDORA-2024-09933b0a54 has been pushed to the Fedora 40 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-09933b0a54 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-09933b0a54

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2024-03-15 02:05:12 UTC
FEDORA-2024-2f98df9773 has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-2f98df9773 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-2f98df9773

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 12 Fedora Update System 2024-03-23 00:36:49 UTC
FEDORA-2024-09933b0a54 (perl-Net-DNS-Paranoid-0.09-2.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 13 Fedora Update System 2024-03-23 00:57:42 UTC
FEDORA-2024-2f98df9773 (perl-Net-DNS-Paranoid-0.09-2.fc39) has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.