[Bug 1289634] Review Request: libchardet - Mozilla Universal Chardet library

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

 



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



--- Comment #3 from Petr Pisar <ppisar@xxxxxxxxxx> ---
FIX: The URL is not about libchardet. Please provide better one. Maybe a link
to directory with the releases would be enough. If there is no better one, add
the trailing slash. Each URL must have a path.
FIX: The Source0 does not work for me. I'm getting TCP connection refused from
14.0.82.80:80. If it does not work, add a comment about it, or better change
the URL to some another location where you obtained the file from.

Source archive looks original (MD5: 93edadd9353325405d6e092127339f33). Verified
from AUR <https://aur.archlinux.org/cgit/aur.git/snapshot/libchardet.tar.gz>.

TODO: The libchardet-man.patch is insufficient. The dot is still not rendered.
You have to change the .B into .BR and keep the dot at the same line as the
bold word like this:

.BR inbuf .
The structure of

TODO: Rename the libchardet-man.patch to libchardet-1.0.4-man.patch, so it's
visible against what version the patch was developed.

FIX: The summary does not explain what is it about. For example the first line
from README is better. I recommend you this wording: "Mozilla's universal
character set detector".

Description verified from README. Ok.

FIX: I think correct license tag is "MPLv1.1 or LGPLv2+ or GPLv2+".
The autotools files are usual mix of FSFUL, FSFULR, BSD, GPLv+.
tools/install-sh is MIT. But these files are not part of the binary RPMs what
License tag is used for. Other files declare the choice of the three licenses:
MPLv1.1 or LGPLv2+ or GPLv2+.

TODO: Instead of declaring %path_man_en macro, I recommend to "pushd man/en"
before documentation recoding loop and "popd" after that.

TODO: Package README using %doc macro.

FIX: Do not package LICENSE file twice. Remove it from %{_datadir}/doc/%{name}/
and use "%license LICENSE" only. If you install the current package with
stripping documentation (rpm -ivh --excludedocs), the LICENSE will be not be
installed. That's the reason for %license macro. The problem is files under
%_docdir are automatically marked as documentation.

FIX: Build-require `glibc-common' (libchardet.spec:33).
FIX: Build-require `coreutils' (libchardet.spec:34).
FIX: Build-require `make' (libchardet.spec:40).
FIX: Build-require `findutils' (libchardet.spec:48).
FIX: Build-require `gcc' for including various standard library headers and
having toolchain for compilation.
FIX: Build-require `gcc-c++' for having compiler for the C++ code.
FIX: Build-require `sed' (configure.ac:24).
FIX: Build-require `perl' (configure.ac:46).

Package builds. Ok.
Not tests. Ok.

$ rpmlint libchardet.spec ../SRPMS/libchardet-1.0.4-1.fc24.src.rpm
../RPMS/x86_64/libchardet-*
libchardet.spec: W: invalid-url Source0:
http://mirror.oops.org/pub/oops/libchardet/libchardet-1.0.4.tar.bz2 <urlopen
error [Errno 111] Connection refused>
libchardet.src: W: invalid-url Source0:
http://mirror.oops.org/pub/oops/libchardet/libchardet-1.0.4.tar.bz2 <urlopen
error [Errno 111] Connection refused>
libchardet-devel.x86_64: W: only-non-binary-in-usr-lib
libchardet-devel.x86_64: W: no-manual-page-for-binary chardet-config
4 packages and 1 specfiles checked; 0 errors, 4 warnings.
rpmlint is Ok.

$ rpm -qlvp ../RPMS/x86_64/libchardet-1.0.4-1.fc24.x86_64.rpm 
lrwxrwxrwx    1 root    root                       19 Dec 10 13:34
/usr/lib64/libchardet.so.1 -> libchardet.so.1.0.0
-rwxr-xr-x    1 root    root                   125440 Dec 10 13:34
/usr/lib64/libchardet.so.1.0.0
drwxr-xr-x    2 root    root                        0 Dec 10 13:34
/usr/share/doc/libchardet
-rw-r--r--    1 root    root                      884 Feb 14  2014
/usr/share/doc/libchardet/Changelog
-rw-r--r--    1 root    root                    25755 Dec 10 13:34
/usr/share/doc/libchardet/LICENSE
-rw-r--r--    1 root    root                     1118 Dec 10 13:34
/usr/share/man/ko/man3/detect.3.gz
-rw-r--r--    1 root    root                      819 Dec 10 13:34
/usr/share/man/ko/man3/detect_destroy.3.gz
-rw-r--r--    1 root    root                     1326 Dec 10 13:34
/usr/share/man/ko/man3/detect_handledata.3.gz
-rw-r--r--    1 root    root                     1021 Dec 10 13:34
/usr/share/man/ko/man3/detect_init.3.gz
-rw-r--r--    1 root    root                      931 Dec 10 13:34
/usr/share/man/ko/man3/detect_obj_free.3.gz
-rw-r--r--    1 root    root                     1017 Dec 10 13:34
/usr/share/man/ko/man3/detect_obj_init.3.gz
-rw-r--r--    1 root    root                     1072 Dec 10 13:34
/usr/share/man/ko/man3/detect_reset.3.gz

$ rpm -qlvp ../RPMS/x86_64/libchardet-devel-1.0.4-1.fc24.x86_64.rpm 
-rwxr-xr-x    1 root    root                     1314 Dec 10 13:34
/usr/bin/chardet-config
-rw-r--r--    1 root    root                     2944 Dec 10 13:34
/usr/include/chardet/chardet-config.h
-rw-r--r--    1 root    root                     3458 Dec 10 13:34
/usr/include/chardet/chardet.h
-rw-r--r--    1 root    root                     2767 Dec 10 13:34
/usr/include/chardet/nsUniversalDetector.h
-rw-r--r--    1 root    root                      367 Dec 10 13:34
/usr/include/chardet/nscore.h
-rw-r--r--    1 root    root                      163 Dec 10 13:34
/usr/include/chardet/version.h
lrwxrwxrwx    1 root    root                       19 Dec 10 13:34
/usr/lib64/libchardet.so -> libchardet.so.1.0.0
-rw-r--r--    1 root    root                      502 Dec 10 13:34
/usr/lib64/pkgconfig/chardet.pc
-rw-r--r--    1 root    root                      998 Dec 10 13:34
/usr/share/man/man3/detect.3.gz
-rw-r--r--    1 root    root                      782 Dec 10 13:34
/usr/share/man/man3/detect_destroy.3.gz
-rw-r--r--    1 root    root                     1221 Dec 10 13:34
/usr/share/man/man3/detect_handledata.3.gz
-rw-r--r--    1 root    root                      821 Dec 10 13:34
/usr/share/man/man3/detect_init.3.gz
-rw-r--r--    1 root    root                      725 Dec 10 13:34
/usr/share/man/man3/detect_obj_free.3.gz
-rw-r--r--    1 root    root                      802 Dec 10 13:34
/usr/share/man/man3/detect_obj_init.3.gz
-rw-r--r--    1 root    root                      873 Dec 10 13:34
/usr/share/man/man3/detect_reset.3.gz

FIX: Move the Korean manual pages to devel sub-package.

$ rpm -q --requires -p ../RPMS/x86_64/libchardet-1.0.4-1.fc24.x86_64.rpm | sort
-f | uniq -c
      2 /sbin/ldconfig
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libgcc_s.so.1()(64bit)
      1 libgcc_s.so.1(GCC_3.0)(64bit)
      1 libm.so.6()(64bit)
      1 libstdc++.so.6()(64bit)
      1 libstdc++.so.6(CXXABI_1.3)(64bit)
      1 libstdc++.so.6(GLIBCXX_3.4)(64bit)
      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)
$ rpm -q --requires -p ../RPMS/x86_64/libchardet-devel-1.0.4-1.fc24.x86_64.rpm
| sort -f | uniq -c
      1 /bin/sh
      1 /usr/bin/pkg-config
      1 libchardet(x86-64) = 1.0.4-1.fc24
      1 libchardet.so.1()(64bit)
      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
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/x86_64/libchardet-1.0.4-1.fc24.x86_64.rpm | sort
-f | uniq -c
      1 libchardet = 1.0.4-1.fc24
      1 libchardet(x86-64) = 1.0.4-1.fc24
      1 libchardet.so.1()(64bit)
$ rpm -q --provides -p ../RPMS/x86_64/libchardet-devel-1.0.4-1.fc24.x86_64.rpm
| sort -f | uniq -c
      1 libchardet-devel = 1.0.4-1.fc24
      1 libchardet-devel(x86-64) = 1.0.4-1.fc24
      1 pkgconfig(chardet) = 1.0.4
Binary provides are Ok.

$ resolvedeps rawhide
../RPMS/x86_64/libchardet-{,devel-}1.0.4-1.fc24.x86_64.rpm 
Binary dependencies resolvable. Ok.

Package builds in F24
(http://koji.fedoraproject.org/koji/taskinfo?taskID=12137601) OK.

FIX: The pkg-config module hardcodes CFLAGS used when building the package:
$ pkg-config --cflags chardet
-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic
-fvisibility=hidden -I/usr/include/chardet 
There should only be -I/usr/include/chardet.

Otherwise the package is in line with Fedora packaging guidelines.

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

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review




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