[Bug 498390] Review Request: rakudo - Rakudo - A Perl 6 compiler for the MoarVM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=498390



--- Comment #33 from Petr Pisar <ppisar@xxxxxxxxxx> ---
URL is usable. Ok.
Source0 (SHA-256:
2651f60f3123aeb015e9fa11d55c5b506abb88a1725f1fdd801dd3ea34f2a783) is original.
Ok.
Source1 (SHA-256:
0b6957ec19eb5b219ad671ae389bb41a4dae365af04fb6d49153675fe592e7ca) is original.
Ok.
TODO: Remove the leading `A' from the summary.
TODO: Correct typos in description. The first sentence does not have any verb.
The second sentence starts with "Is is". Summary text should end a full stop
symbol. I recommends rewrite it like this:

Rakudo Perl 6, or just Rakudo, is an implementation of the Perl 6 language
specification. More information about Perl 6 is available from
<http://perl6.org/>. This package provides a Perl 6 compiler built for
MoarVM virtual machine.

License verified from t/spec/LICENSE, README.md, LICENSE. Ok.

TODO: The `Obsoletes: rakudo-star <= 0.0.2017.01-2' should use `<' operator as
0.0.2017.01 is the last one in Fedora.

FIX: Build-require `perl' (rakudo.spec:54).
FIX: Use %{__prefix} in `Configure.pl --prefix=/usr' instead of `/usr'.
FIX: Build-require `make' (rakudo.spec:55).
FIX: Build-require `perl-podlators' (rakudo.spec:63).
FIX: Build-require `coreutils' (rakudo.spec:82).

FIX: Build-require `perl(base)' (tools/lib/NQP/Configure.pm:8).
FIX: Build-require `perl(Cwd)' (Configure.pl:10).
FIX: Build-require `perl(Exporter)' (tools/lib/NQP/Configure.pm:8).
FIX: Build-require `perl(File::Copy)' (tools/lib/NQP/Configure.pm:5).
FIX: Build-require `perl(File::Spec)' (Configure.pl:9).
FIX: Build-require `perl(Getopt::Long)' (Configure.pl:8).
FIX: Build-require `perl(lib)' (Configure.pl:11).
FIX: Build-require `perl(strict)' (Configure.pl:5).
FIX: Build-require `perl(Text::ParseWords)' (Configure.pl:7).
FIX: Build-require `perl(warnings)' (Configure.pl:6).

FIX: Build-require `gcc'.

FIX: Build-require `perl(FindBin)' for tests (t/harness5:9).
FIX: Build-require `perl(List::Util)' for tests (t/harness5:11).
FIX: Build-require `perl(Test::Harness)' for tests (t/harness5:15).

FIX: Remove %defattr from %files section.
TODO: Package docs/ChangeLog as a documentation.

All tests pass. Ok.

TODO: The `-ltommath -latomic_ops -luv -lm -lpthread -lrt -ldl' linker options
come from `/usr/bin/nqp-m --show-config' tool, therefore I think it would make
more sense to move the dependency on libtommath-devel and other libraries from
rakudo.spec to nqp or moarvm-devel. I grepped for header files included by
rakudo and I could not find any usage of them. (Maybe the are not needed at
all).
TODO: Is the build-time dependency on readline-devel needed? It's nowhere used
and docs/ChangeLog reads it was removed.

$ rpmlint rakudo.spec ../SRPMS/rakudo-0.2017.01-1.fc26.src.rpm
../RPMS/x86_64/rakudo-*
rakudo.x86_64: W: self-obsoletion rakudo-star <= 0.0.2017.01-2 obsoletes
rakudo-star = 0.0.0.2017.01-1.fc26
rakudo.x86_64: E: arch-dependent-file-in-usr-share
/usr/share/perl6/runtime/dynext/libperl6_ops_moar.so
rakudo.x86_64: W: hidden-file-or-dir /usr/share/perl6/precomp/.lock
rakudo.x86_64: E: zero-length /usr/share/perl6/precomp/.lock
rakudo.x86_64: E: zero-length /usr/share/perl6/repo.lock
rakudo.x86_64: W: no-manual-page-for-binary perl6-debug-m
rakudo.x86_64: W: no-manual-page-for-binary perl6-gdb-m
rakudo.x86_64: W: no-manual-page-for-binary perl6-valgrind-m
3 packages and 1 specfiles checked; 3 errors, 5 warnings.

FIX: Move the libperl6_ops_moar.so out of /usr/share (to /usr/lib64/perl6 or
somewhere else).
FIX: Are the *.moarvm files stored under /usr/share differ on each
architecture. They must be moved somewhere else. Quick fix would be to install
everything under %{__libbdir}. But if the 'share' component comes from nqp or
moarvm, then they need to be moved first.

$ rpm -q --requires -p ../RPMS/x86_64/rakudo-0.2017.01-1.fc26.x86_64.rpm | sort
-f | uniq -c
      1 /bin/sh
      1 libatomic_ops.so.1()(64bit)
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libdl.so.2()(64bit)
      1 libm.so.6()(64bit)
      1 libmoar.so()(64bit)
      1 libpthread.so.0()(64bit)
      1 librt.so.1()(64bit)
      1 libtommath.so.1()(64bit)
      1 libuv.so.1()(64bit)
      1 nqp >= 0.0.2017.01
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
      1 rtld(GNU_HASH)
Binary requires are Ok.

TODO: I grep binary package of some libuv.so.1 symbols and I could not find
any. I suspect that many of libraries are not needed.

$ rpm -q --provides -p ../RPMS/x86_64/rakudo-0.2017.01-1.fc26.x86_64.rpm | sort
-f | uniq -c
      1 libperl6_ops_moar.so()(64bit)
      1 perl6 = 0.2017.01-1.fc26
      1 rakudo = 0.2017.01-1.fc26
      1 rakudo(x86-64) = 0.2017.01-1.fc26
      1 rakudo-star = 0.0.0.2017.01-1.fc26
Binary provides are Ok.

Notice: I have no idea what the `perl6' Provide means. If it's about
implemented language version, then it should be something like `2016.c'. See
<https://github.com/perl6/roast#introduction>.

$ resolvedeps rawhide ../RPMS/x86_64/rakudo-0.2017.01-1.fc26.x86_64.rpm
Binary dependencies resolvable. Ok.

Package builds in F26
(https://koji.fedoraproject.org/koji/taskinfo?taskID=17993233). Ok.

Please correct all `FIX' items, consider fixing `TODO' items and provide a new
spec file.
Resolution: Package NOT approved.

-- 
You are receiving this mail because:
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]