Bug 2359607 - Review Request: perl-Redis-Fast - Perl binding for Redis database
Summary: Review Request: perl-Redis-Fast - Perl binding for Redis database
Keywords:
Status: CLOSED RAWHIDE
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: https://metacpan.org/dist/Redis-Fast
Whiteboard:
Depends On: 2359601
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-04-14 21:20 UTC by Xavier Bachelot
Modified: 2025-10-22 16:13 UTC (History)
2 users (show)

Fixed In Version: perl-Redis-Fast-0.37-4.fc44
Clone Of:
Environment:
Last Closed: 2025-10-22 16:13:21 UTC
Type: ---
Embargoed:
ppisar: fedora-review+


Attachments (Terms of Use)

Description Xavier Bachelot 2025-04-14 21:20:11 UTC
Spec URL: https://www.bachelot.org/fedora/SPECS/perl-Redis-Fast.spec
SRPM URL: https://www.bachelot.org/fedora/SRPMS/perl-Redis-Fast-0.37-1.fc43.src.rpm
Description:
Redis::Fast is a wrapper around Salvatore Sanfilippo's hiredis C client. It
is compatible with Redis.pm.
Fedora Account System Username: xavierb

Comment 1 Fedora Review Service 2025-04-14 21:22:04 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8903625
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2359607-perl-redis-fast/fedora-rawhide-x86_64/08903625-perl-Redis-Fast/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 2 Petr Pisar 2025-10-15 11:21:48 UTC
URL and Source addresses are usable. Ok.
Source0 archive (SHA-512: b5a86e940b620838545ab336a6d8888ffd6d483203d715e7903d8d14a75bc126aba030dead3b16fb0ee35b37941dfc5f9569af0786114906d9062ea030255b9c) is original. Ok.
Summary verified from README.md. Ok.
Description verified from README.md. Ok.

Found licenses:
BSD-3-Clause: deps/hiredis/ssl.c
GPL-1.0-or-later OR Artistic-1.0-Perl: lib/Redis/Fast.pm

FIX: Declare the BSD-3-Clause license in the License tag and package deps/hiredis/COPYING with %license macro.
FIX: Provide 'bundled(hiredis) = 1.2.0'
Or unbundle ./deps/hiredis.

FIX: Build-require 'perl-devel' for building XS files.
FIX: Build-require 'perl(ExtUtils::CBuilder)' for Building XS files with Module::Build.
FIX: Build-require 'make' (builder/MyBuilder.pm:49).
FIX: Build-require 'grep' (deps/hiredis/Makefile:12).
FIX: Build-require 'gawk' (deps/hiredis/Makefile:12).
FIX: Build-require 'gcc' (deps/hiredis/Makefile:39).

TODO: Constrain 'perl(Module::Build::XSUtil)' with '>= 0.02' (META.json:34).
TODO: Move 'perl(File::Temp)' to Tests section (t/tlib/Test/SpawnRedisServer.pm:7).
TODO: Move 'perl(Parallel::ForkManager)' to Tests section (t/02-responses.t:11).

FIX: Remove 'perl(Module::Build)' build-dependency. It's not used directly.
FIX: Build-require 'perl(POSIX)' (t/11-timeout.t:11).
FIX: Build-require 'findutils' (perl-Redis-Fast.spec:71).

All tests pass. Ok.

TODO: Unset USE_SSL, REDIS_SERVER, REDIS_SERVER_PATH, REDIS_DEBUG, TEST_REDIS_SERVER_SOCK_PATH environment variables ib %check section to make the tests more deterministic.

$ rpmlint perl-Redis-Fast.spec ../SRPMS/perl-Redis-Fast-0.37-1.fc44.src.rpm ../RPMS/x86_64/perl-Redis-Fast-*
======================================== rpmlint session starts =======================================
rpmlint: 2.7.0
configuration:
    /usr/lib/python3.14/site-packages/rpmlint/configdefaults.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: 5

perl-Redis-Fast.x86_64: E: spelling-error ('hiredis', '%description -l en_US hiredis -> hire dis, hire-dis, hired is')
perl-Redis-Fast.src: E: spelling-error ('hiredis', '%description -l en_US hiredis -> hire dis, hire-dis, hired is')
perl-Redis-Fast.x86_64: E: incorrect-fsf-address /usr/share/licenses/perl-Redis-Fast/LICENSE
== 4 packages and 1 specfiles checked; 3 errors, 0 warnings, 13 filtered, 3 badness; has taken 0.7 s ==
rpmlint is Ok.

FIX: The package does not build in Fedora Rawhide (https://koji.fedoraproject.org/koji/taskinfo?taskID=138166916). It fails on i686:
nothing provides valkey = 8.1.4-2.fc44 needed by valkey-compat-redis-8.1.4-2.fc44.noarch

$ rpm -q -lv -p ../RPMS/x86_64/perl-Redis-Fast-0.37-1.fc44.x86_64.rpm
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib/.build-id
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib/.build-id/7c
lrwxrwxrwx    1 root     root                       63 Apr 14  2025 /usr/lib/.build-id/7c/8ad16d10acafe81cd35e2fca92ea1cc34a1637 -> ../../../../usr/lib64/perl5/vendor_perl/auto/Redis/Fast/Fast.so
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis/Fast
-rw-r--r--    1 root     root                    23097 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis/Fast.pm
-rw-r--r--    1 root     root                     2129 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis/Fast/Hash.pm
-rw-r--r--    1 root     root                     1900 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis/Fast/List.pm
-rw-r--r--    1 root     root                     1809 Apr 14  2025 /usr/lib64/perl5/vendor_perl/Redis/Fast/Sentinel.pm
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib64/perl5/vendor_perl/auto/Redis
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/lib64/perl5/vendor_perl/auto/Redis/Fast
-rwxr-xr-x    1 root     root                   144936 Apr 14  2025 /usr/lib64/perl5/vendor_perl/auto/Redis/Fast/Fast.so
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/share/doc/perl-Redis-Fast
-rw-r--r--    1 root     root                     4594 Mar  8  2024 /usr/share/doc/perl-Redis-Fast/Changes
-rw-r--r--    1 root     root                     8589 Mar  8  2024 /usr/share/doc/perl-Redis-Fast/README.md
drwxr-xr-x    2 root     root                        0 Apr 14  2025 /usr/share/licenses/perl-Redis-Fast
-rw-r--r--    1 root     root                    18421 Mar  8  2024 /usr/share/licenses/perl-Redis-Fast/LICENSE
-rw-r--r--    1 root     root                     4062 Apr 14  2025 /usr/share/man/man3/Redis::Fast.3pm.gz
-rw-r--r--    1 root     root                     1242 Apr 14  2025 /usr/share/man/man3/Redis::Fast::Hash.3pm.gz
-rw-r--r--    1 root     root                     1095 Apr 14  2025 /usr/share/man/man3/Redis::Fast::List.3pm.gz
-rw-r--r--    1 root     root                     1430 Apr 14  2025 /usr/share/man/man3/Redis::Fast::Sentinel.3pm.gz
FIX: Package deps/hiredis/COPYING with %license macro.

$ rpm -q --requires -p ../RPMS/x86_64/perl-Redis-Fast-0.37-1.fc44.x86_64.rpm | sort -g | uniq -c
      1 libcrypto.so.3()(64bit)
      1 libcrypto.so.3(OPENSSL_3.0.0)(64bit)
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.14)(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.3.4)(64bit)
      1 libc.so.6(GLIBC_2.3)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libc.so.6(GLIBC_ABI_DT_RELR)(64bit)
      1 libc.so.6(GLIBC_ABI_GNU2_TLS)(64bit)
      1 libssl.so.3()(64bit)
      1 libssl.so.3(OPENSSL_3.0.0)(64bit)
      1 perl(base)
      1 perl(Carp)
      1 perl(constant)
      1 perl(Encode)
      1 perl-libs
      1 perl(:MODULE_COMPAT_5.42.0)
      1 perl(Redis::Fast)
      1 perl(Redis::Fast::Sentinel)
      1 perl(Scalar::Util)
      1 perl(strict)
      1 perl(Tie::Array)
      1 perl(Tie::Hash)
      1 perl(Try::Tiny)
      1 perl(warnings)
      1 perl(XSLoader)
      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
      1 rtld(GNU_HASH)
Run-time 'perl(IO::Socket::SSL)' dependency is optional. Ok.
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/x86_64/perl-Redis-Fast-0.37-1.fc44.x86_64.rpm | sort -g | uniq -c
      1 perl(Redis::Fast) = 0.37
      1 perl-Redis-Fast = 0.37-1.fc44
      1 perl(Redis::Fast::Hash)
      1 perl(Redis::Fast::List)
      1 perl(Redis::Fast::Sentinel)
      1 perl-Redis-Fast(x86-64) = 0.37-1.fc44
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/x86_64/perl-Redis-Fast-0.37-1.fc44.x86_64.rpm 
Binary dependencies are resolvable. Ok.

Otherwise, the package is in line with Fedora and Perl packaging guidelines.
Please correct the FIX items, consider fixing TODO items, and provide an updated spec file.

Comment 3 Xavier Bachelot 2025-10-15 13:29:41 UTC
Thanks for the review Petr !

hiredis is now unbundled and all the suggested fixes but the envar unsetting in %check has been applied.
I will look at that last one next.

Spec URL: https://www.bachelot.org/fedora/SPECS/perl-Redis-Fast.spec
SRPM URL: https://www.bachelot.org/fedora/SRPMS/perl-Redis-Fast-0.37-1.fc43.src.rpm

Comment 4 Fedora Review Service 2025-10-15 13:39:26 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9691170
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2359607-perl-redis-fast/fedora-rawhide-x86_64/09691170-perl-Redis-Fast/fedora-review/review.txt

Found issues:

- No gcc, gcc-c++ or clang found in BuildRequires
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 5 Xavier Bachelot 2025-10-15 13:53:38 UTC
Added BR: gcc

[fedora-review-service-build]

Comment 6 Fedora Review Service 2025-10-15 14:02:16 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9691208
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2359607-perl-redis-fast/fedora-rawhide-x86_64/09691208-perl-Redis-Fast/fedora-review/review.txt

Found issues:

- No gcc, gcc-c++ or clang found in BuildRequires
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 8 Fedora Review Service 2025-10-15 20:02:26 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9692345
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2359607-perl-redis-fast/srpm-builds/09692345/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 9 Xavier Bachelot 2025-10-15 20:06:39 UTC
[fedora-review-service-build]

Comment 10 Fedora Review Service 2025-10-15 20:07:00 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9692374
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2359607-perl-redis-fast/srpm-builds/09692374/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 11 Petr Pisar 2025-10-16 07:48:27 UTC
The <https://www.bachelot.org/fedora/SRPMS/perl-Redis-Fast-0.37-3.fc43.src.rpm> URL returns an HTML page. Did you forget to upload that file?

Comment 12 Xavier Bachelot 2025-10-16 07:56:45 UTC
Typo in the srpm url, sorry about that...

Spec URL: https://www.bachelot.org/fedora/SPECS/perl-Redis-Fast.spec
SRPM URL: https://www.bachelot.org/fedora/SRPMS/perl-Redis-Fast-0.37-3.fc44.src.rpm

Comment 13 Petr Pisar 2025-10-16 08:32:01 UTC
FIX: Remove the dependency on make. After unbundling hiredis, it is not used.
FIX: Remove the dependency on gcc. After unbundling hiredis, it is not directly used.
FIX: Remove the dependency on stunnel. It is not used if USE_SSL environment variable is not set, which is the default.

All tests pass. Ok.

$ rpmlint perl-Redis-Fast.spec ../SRPMS/perl-Redis-Fast-0.37-3.fc44.src.rpm ../RPMS/x86_64/perl-Redis-Fast-0.37-3.fc44.x86_64.rpm 
======================================== rpmlint session starts =======================================
rpmlint: 2.7.0
configuration:
    /usr/lib/python3.14/site-packages/rpmlint/configdefaults.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-Redis-Fast.x86_64: E: spelling-error ('hiredis', '%description -l en_US hiredis -> hire dis, hire-dis, hired is')
perl-Redis-Fast.src: E: spelling-error ('hiredis', '%description -l en_US hiredis -> hire dis, hire-dis, hired is')
perl-Redis-Fast.spec:109: W: macro-in-%changelog %{ix86}
perl-Redis-Fast.spec:109: W: macro-in-%changelog %{ix86}
perl-Redis-Fast.x86_64: E: incorrect-fsf-address /usr/share/licenses/perl-Redis-Fast/LICENSE
=== 2 packages and 1 specfiles checked; 3 errors, 2 warnings, 6 filtered, 3 badness; has taken 0.5 s ==

TODO: Escape the per-cent character in the changelog (perl-Redis-Fast.spec:109).

$ rpm -q --requires -p ../RPMS/x86_64/perl-Redis-Fast-0.37-3.fc44.x86_64.rpm | sort -f | uniq -c
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.3)(64bit)
      1 libc.so.6(GLIBC_2.3.4)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libc.so.6(GLIBC_ABI_DT_RELR)(64bit)
      1 libc.so.6(GLIBC_ABI_GNU2_TLS)(64bit)
      1 libhiredis.so.1.1.0()(64bit)
      1 libhiredis_ssl.so.1.1.0()(64bit)
      1 perl(:MODULE_COMPAT_5.42.0)
      1 perl(base)
      1 perl(Carp)
      1 perl(constant)
      1 perl(Encode)
      1 perl(Redis::Fast)
      1 perl(Redis::Fast::Sentinel)
      1 perl(Scalar::Util)
      1 perl(strict)
      1 perl(Tie::Array)
      1 perl(Tie::Hash)
      1 perl(Try::Tiny)
      1 perl(warnings)
      1 perl(XSLoader)
      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
      1 rtld(GNU_HASH)
Binary requires are Ok.

$ resolvedeps rawhide ../RPMS/x86_64/perl-Redis-Fast-0.37-3.fc44.x86_64.rpm | sort -f | uniq -c
      1 Binary dependencies are resolvable. Ok.

The package builds in Fedora 44 <https://koji.fedoraproject.org/koji/taskinfo?taskID=138192672>. Ok.

Please correct the FIX items before building this package.
Package is APPROVED.

Comment 14 Fedora Admin user for bugzilla script actions 2025-10-17 08:15:43 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-Redis-Fast

Comment 15 Xavier Bachelot 2025-10-17 08:41:31 UTC
Thanks for the review Petr !


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