Bug 2254933
| Summary: | Review Request: perl-Future-HTTP - Future::HTTP Perl module | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Chris Adams <linux> |
| Component: | Package Review | Assignee: | Petr Pisar <ppisar> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | package-review, ppisar |
| Target Milestone: | --- | Flags: | ppisar:
fedora-review+
|
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2024-04-15 01:12:12 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | 2254914, 2254915, 2254923, 2254927, 2254929, 2254931 | ||
| Bug Blocks: | 2254934 | ||
|
Description
Chris Adams
2023-12-17 23:05:42 UTC
Note: depends on perl-AnyEvent-Future (review BZ 2254914) perl-Filter-signatures (review BZ 2254915) perl-Future-Mojo (review BZ 2254927) perl-HTTP-Tiny-Paranoid (review BZ 2254929) perl-Net-Async-HTTP (review BZ 2254931) perl-Test-HTTP-LocalServer (review BZ 2254923) Bumped release for spec file cleanups: Spec URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP.spec SRPM URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP-0.16-2.fc39.src.rpm Bumped release for additional spec file cleanups: Spec URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP.spec SRPM URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP-0.16-3.fc39.src.rpm Bumped release for additional spec file cleanups: Spec URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP.spec SRPM URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP-0.16-4.fc39.src.rpm URL and Source0 addresses are usable. Ok.
TODO: Remove a trailing slash from the URL value.
Source0 archive (SHA512: f9cb5d039d1b56f1939f4562b3e3a544412458a9b39d4c596f63f085399d03cd10e82fef1dc3ab3d77b71a33836e10d4babcc9f6ab94980e58a36c48c476a6dc) is original. Ok.
FIX: The current summary is not well descriptive. Use e.g. "HTTP client with a Future API" (see lib/Future/HTTP.pm POD).
FIX: Description text is not a sentence, it's missing a full stop.
TODO: Description text is too brief. I recommend copying a paragraph from Synopsis in lib/Future/HTTP.pm POD.
License verified from: Makefile.PL, README.mkdn, lib/Future/HTTP.pm, lib/Future/HTTP/Mojo.pm, lib/Future/HTTP/Tiny/Paranoid.pm, lib/Future/HTTP/NetAsync.pm, lib/Future/HTTP/Tiny.pm, lib/Future/HTTP/AnyEvent.pm, README. Ok.
Note: LICENSE file is an Artistic-2.0 copy.
No XS code, noarch BuildArch is Ok.
TODO: Declare _with_network_tests build condition using %bcond or %bcond_without macro.
perl(AnyEvent) is in optional dependency for the tests. Ok.
FIX: Do not depend on 'perl(CGI)'. It's not used anywhere.
FIX: Do not depend on 'perl(HTTP::Headers) >= 6.07'. It's not used. Instead apply the version constraint to 'perl(HTTP::Request)'. Upstream mistaken the two modules.
FIX: Do not depend on 'perl(HTTP::Request::AsCGI)' It.s not used.
TODO: Constrain 'perl(HTTP::Tiny::Paranoid)' dependency with '>= 0.07' (lib/Future/HTTP/Tiny/Paranoid.pm:4).
FIX: Do not depend on 'perl(IO::Async)'. It's not used.
FIX: Do not depend on 'perl(Mojo::IOLoop)'. It's not used.
All tests pass. Ok.
$ rpmlint perl-Future-HTTP.spec ../SRPMS/perl-Future-HTTP-0.16-4.fc41.src.rpm ../RPMS/noarch/perl-Future-HTTP-0.16-4.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
perl-Future-HTTP.spec:82: W: macro-in-comment %license
perl-Future-HTTP.spec:82: W: macro-in-comment %license
=== 2 packages and 1 specfiles checked; 0 errors, 2 warnings, 6 filtered, 0 badness; has taken 0.3 s ==
FIX: Escape a per-cent character in the comment.
$ rpm -q -lv -p ../RPMS/noarch/perl-Future-HTTP-0.16-4.fc41.noarch.rpm
drwxr-xr-x 2 root root 0 Mar 8 01:00 /usr/share/doc/perl-Future-HTTP
-rw-r--r-- 1 root root 2697 Mar 8 01:00 /usr/share/doc/perl-Future-HTTP/Changes
-rw-r--r-- 1 root root 1079 Jul 21 2023 /usr/share/doc/perl-Future-HTTP/README
-rw-r--r-- 1 root root 2047 Mar 8 01:00 /usr/share/man/man3/Future::HTTP.3pm.gz
-rw-r--r-- 1 root root 857 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::API::HTTPTiny.3pm.gz
-rw-r--r-- 1 root root 1820 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::AnyEvent.3pm.gz
-rw-r--r-- 1 root root 856 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::Handler.3pm.gz
-rw-r--r-- 1 root root 1876 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::Mojo.3pm.gz
-rw-r--r-- 1 root root 1873 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::NetAsync.3pm.gz
-rw-r--r-- 1 root root 2063 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::Tiny.3pm.gz
-rw-r--r-- 1 root root 2206 Mar 8 01:00 /usr/share/man/man3/Future::HTTP::Tiny::Paranoid.3pm.gz
drwxr-xr-x 2 root root 0 Mar 8 01:00 /usr/share/perl5/vendor_perl/Future/HTTP
-rw-r--r-- 1 root root 5301 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP.pm
drwxr-xr-x 2 root root 0 Mar 8 01:00 /usr/share/perl5/vendor_perl/Future/HTTP/API
-rw-r--r-- 1 root root 3716 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/API/HTTPTiny.pm
-rw-r--r-- 1 root root 3898 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/AnyEvent.pm
-rw-r--r-- 1 root root 5278 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/Handler.pm
-rw-r--r-- 1 root root 5191 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/Mojo.pm
-rw-r--r-- 1 root root 5298 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/NetAsync.pm
drwxr-xr-x 2 root root 0 Mar 8 01:00 /usr/share/perl5/vendor_perl/Future/HTTP/Tiny
-rw-r--r-- 1 root root 5568 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/Tiny.pm
-rw-r--r-- 1 root root 3880 Jul 21 2023 /usr/share/perl5/vendor_perl/Future/HTTP/Tiny/Paranoid.pm
File layout and permissions are Ok.
$ rpm -q --requires -p ../RPMS/noarch/perl-Future-HTTP-0.16-4.fc41.noarch.rpm | sort -f | uniq -c
1 perl(AnyEvent::Future)
1 perl(AnyEvent::HTTP)
1 perl(Data::Dumper)
1 perl(Fcntl)
1 perl(feature)
1 perl(Filter::signatures)
1 perl(Future)
1 perl(Future::Mojo)
1 perl(HTTP::Request)
1 perl(HTTP::Tiny)
1 perl(HTTP::Tiny::Paranoid) >= 0.07
1 perl(IO::Async::Future)
1 perl(IO::Async::Loop)
1 perl(IO::Uncompress::Bunzip2)
1 perl(IO::Uncompress::Gunzip)
1 perl(IO::Uncompress::Inflate)
1 perl(IO::Uncompress::RawInflate)
1 perl(MIME::Base64)
1 perl(MIME::QuotedPrint)
1 perl(Mojo::UserAgent)
1 perl(Moo) >= 2
1 perl(Moo::Role)
1 perl(Net::Async::HTTP)
1 perl(strict)
1 perl(URI)
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(HTTP::Request)' with '>= 6.07' (Makefile.PL:76).
$ rpm -q --provides -p ../RPMS/noarch/perl-Future-HTTP-0.16-4.fc41.noarch.rpm | sort -f | uniq -c
1 perl(Future::HTTP) = 0.16
1 perl(Future::HTTP::AnyEvent) = 0.16
1 perl(Future::HTTP::Handler) = 0.16
1 perl(Future::HTTP::Mojo) = 0.16
1 perl(Future::HTTP::NetAsync) = 0.16
1 perl(Future::HTTP::Tiny) = 0.16
1 perl(Future::HTTP::Tiny::Paranoid) = 0.16
1 perl-Future-HTTP = 0.16-4.fc41
Binary provides are Ok.
$ resolvedeps rawhide ../RPMS/noarch/perl-Future-HTTP-0.16-4.fc41.noarch.rpm
Binary dependencies are resolvable. Ok.
The package builds in Fedora 41 <https://koji.fedoraproject.org/koji/taskinfo?taskID=115787008>. Ok.
Otherwise, the package is in line with Fedora and Perl packaging guidelines.
Please correct FIX items, consider fixing TODO items and provide an updated spec file.
Bumped release for spec file cleanups: Spec URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP.spec SRPM URL: https://cmadams.fedorapeople.org/perl-Future-HTTP/perl-Future-HTTP-0.16-5.fc39.src.rpm Changes in the spec file:
--- perl-Future-HTTP.spec.old 2024-03-08 01:00:00.000000000 +0100
+++ perl-Future-HTTP.spec 2024-04-03 02:00:00.000000000 +0200
@@ -1,28 +1,27 @@
+# some tests require Internet access, don't enable by default
+%bcond network_tests 0
+
Name: perl-Future-HTTP
Version: 0.16
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: Future::HTTP Perl module
License: GPL-1.0-or-later OR Artistic-1.0-Perl
-URL: https://metacpan.org/dist/Future-HTTP/
+URL: https://metacpan.org/dist/Future-HTTP
Source0: https://cpan.metacpan.org/authors/id/C/CO/CORION/Future-HTTP-%{version}.tar.gz
BuildArch: noarch
BuildRequires: make perl-interpreter perl-generators coreutils
BuildRequires: perl(AnyEvent)
BuildRequires: perl(AnyEvent::Future)
BuildRequires: perl(AnyEvent::HTTP)
-BuildRequires: perl(CGI)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires: perl(Fcntl)
BuildRequires: perl(Filter::signatures) >= 0.13
BuildRequires: perl(Future) >= 0.31
BuildRequires: perl(Future::Mojo)
-BuildRequires: perl(HTTP::Headers) >= 6.07
-BuildRequires: perl(HTTP::Request)
-BuildRequires: perl(HTTP::Request::AsCGI)
+BuildRequires: perl(HTTP::Request) >= 6.07
BuildRequires: perl(HTTP::Tiny)
-BuildRequires: perl(HTTP::Tiny::Paranoid)
-BuildRequires: perl(IO::Async)
+BuildRequires: perl(HTTP::Tiny::Paranoid) >= 0.07
BuildRequires: perl(IO::Async::Future)
BuildRequires: perl(IO::Async::Loop)
BuildRequires: perl(IO::Uncompress::Bunzip2)
@@ -31,7 +30,6 @@
BuildRequires: perl(IO::Uncompress::RawInflate)
BuildRequires: perl(MIME::Base64)
BuildRequires: perl(MIME::QuotedPrint)
-BuildRequires: perl(Mojo::IOLoop)
BuildRequires: perl(Mojo::UserAgent)
BuildRequires: perl(Mojolicious)
BuildRequires: perl(Moo) >= 2
@@ -57,11 +55,15 @@
Requires: perl(warnings)
%description
-Provide the most appropriate HTTP client with a Future API
+This module is a wrapper combining Future with the API provided by
+AnyEvent::HTTP. The backend used for the HTTP protocols depends on
+whether one of the event loops is loaded.
%prep
%setup -q -n Future-HTTP-%{version}
-%{!?_with_network_tests: rm t/01-http-tiny-paranoid.t }
+%if %{without network_tests}
+rm t/01-http-tiny-paranoid.t
+%endif
perl -pi -e 's/\r//' Changes
%build
@@ -79,11 +81,14 @@
%doc Changes README
# note: files all say perl_5 which is GPLv1/Artistic but file is Artistic-2
# https://rt.cpan.org/Ticket/Display.html?id=152217
-#%license LICENSE
+#license LICENSE
%{perl_vendorlib}/Future/HTTP*
%{_mandir}/man3/Future::HTTP*
%changelog
+* Wed Apr 03 2024 Chris Adams <linux> 0.16-5
+- additional spec file cleanups
+
* Fri Mar 08 2024 Chris Adams <linux> 0.16-4
- additional spec file cleanups
FIX: The current summary is not well descriptive. Use e.g. "HTTP client with a Future API" (see lib/Future/HTTP.pm POD).
$ rpmlint perl-Future-HTTP.spec ../SRPMS/perl-Future-HTTP-0.16-5.fc41.src.rpm ../RPMS/noarch/perl-Future-HTTP-0.16-5.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, 8 filtered, 0 badness; has taken 0.4 s ==
rpmlint is Ok.
$ rpm -q --requires -p ../RPMS/noarch/perl-Future-HTTP-0.16-5.fc41.noarch.rpm | sort -f | uniq -c
1 perl(AnyEvent::Future)
1 perl(AnyEvent::HTTP)
1 perl(Data::Dumper)
1 perl(Fcntl)
1 perl(feature)
1 perl(Filter::signatures)
1 perl(Future)
1 perl(Future::Mojo)
1 perl(HTTP::Request)
1 perl(HTTP::Tiny)
1 perl(HTTP::Tiny::Paranoid) >= 0.07
1 perl(IO::Async::Future)
1 perl(IO::Async::Loop)
1 perl(IO::Uncompress::Bunzip2)
1 perl(IO::Uncompress::Gunzip)
1 perl(IO::Uncompress::Inflate)
1 perl(IO::Uncompress::RawInflate)
1 perl(MIME::Base64)
1 perl(MIME::QuotedPrint)
1 perl(Mojo::UserAgent)
1 perl(Moo) >= 2
1 perl(Moo::Role)
1 perl(Net::Async::HTTP)
1 perl(strict)
1 perl(URI)
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(HTTP::Request)' with '>= 6.07' (Makefile.PL:76).
The package builds in Fedora 41 (https://koji.fedoraproject.org/koji/taskinfo?taskID=115865838). Ok..
Please correct the FIX item and consider fixing the TODO item before building this package.
This package is APPROVED.
The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-Future-HTTP FEDORA-2024-f021b361eb (perl-Future-HTTP-0.16-5.fc39) has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2024-f021b361eb FEDORA-2024-f021b361eb 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-f021b361eb \*` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-f021b361eb See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2024-f021b361eb (perl-Future-HTTP-0.16-5.fc39) has been pushed to the Fedora 39 stable repository. If problem still persists, please make note of it in this bug report. |