Bug 1207208 (flatbuffers)

Summary: Review Request: flatbuffers - Memory Efficient Serialization Library from Google
Product: [Fedora] Fedora Reporter: Daniel Vrátil <dvratil>
Component: Package ReviewAssignee: Petr Pisar <ppisar>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: kevin, package-review, ppisar, sergey.avseyev
Target Milestone: ---Flags: ppisar: fedora-review?
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-11-03 12:27:05 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:

Description Daniel Vrátil 2015-03-30 12:32:37 UTC
Spec URL: https://dvratil.fedorapeople.org/spec/flatbuffers.spec
SRPM URL: https://dvratil.fedorapeople.org/spec/flatbuffers-1.0.3-1.src.rpm
Description: FlatBuffers is a serialization library for games and other memory constrained apps. FlatBuffers allows you to directly access serialized data without unpacking/parsing it first, while still having great forwards/backwards compatibility.
Fedora Account System Username: dvratil

Comment 1 Daniel Vrátil 2015-03-30 13:52:39 UTC
Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=9365710

Comment 2 Petr Pisar 2015-04-01 16:49:05 UTC
URL and Source0 are usable. Ok.
Source archive is original (SHA-256: 39e749051c961f787a3a040f68bc384541235064ae907ce771685654762d9a2e). Ok.

The patch is simple but I worry that it just mask mistake about signed chars wrapping values above 127.

TODO: Package ./docs as a documentation. (FIX: and remove bundled jquery library (docs/html/jquery.js))

TODO: Put a comment into the spec file about other licenses of the source:
docs/html/jquery.js: (MIT or GPLv2) and (MIT or GPL+ or BSD)
android/res/values/strings.xml: zlib
android/build_apk.sh: zlib
android/.project: zlib

License tag is Ok.

TODO: Rephrase the summary not to use registered marks. Just removing the `from Google' is enough.

TODO: Reflow the description not to exceed 80 columns.

FIX: The devel sub-package's dependency on main package must require architecture too (%{?_isa}).

TODO: The way how you use cmake does conform to the latest practise <http://fedoraproject.org/wiki/Packaging:Cmake>. Please change it.

TODO: Execute tests.

$ rpmlint flatbuffers.spec ../SRPMS/flatbuffers-1.0.3-1.src.rpm ../RPMS/x86_64/flatbuffers-*
flatbuffers.spec:29: W: setup-not-quiet
flatbuffers.src: E: description-line-too-long C FlatBuffers is a serialization library for games and other memory constrained apps.
flatbuffers.src: E: description-line-too-long C FlatBuffers allows you to directly access serialized data without unpacking/parsing
flatbuffers.src:29: W: setup-not-quiet
flatbuffers.x86_64: E: description-line-too-long C FlatBuffers is a serialization library for games and other memory constrained apps.
flatbuffers.x86_64: E: description-line-too-long C FlatBuffers allows you to directly access serialized data without unpacking/parsing
flatbuffers.x86_64: E: no-binary
flatbuffers.x86_64: E: script-without-shebang /usr/share/licenses/flatbuffers/LICENSE.txt
flatbuffers.x86_64: W: spurious-executable-perm /usr/share/doc/flatbuffers/readme.md
flatbuffers-debuginfo.x86_64: W: spurious-executable-perm /usr/src/debug/flatbuffers-1.0.3/src/flatc.cpp
flatbuffers-devel.x86_64: W: no-documentation
flatbuffers-devel.x86_64: W: no-manual-page-for-binary flatc
4 packages and 1 specfiles checked; 6 errors, 6 warnings.

TODO: Wrap description text, remove executable bits.

$ rpm -q -lv -p ../RPMS/x86_64/flatbuffers-1.0.3-1.x86_64.rpm 
drwxr-xr-x    2 root    root                        0 Apr  1 18:27 /usr/share/doc/flatbuffers
-rwxr-xr-x    1 root    root                     1489 Oct 22 20:58 /usr/share/doc/flatbuffers/readme.md
drwxr-xr-x    2 root    root                        0 Apr  1 18:27 /usr/share/licenses/flatbuffers
-rwxr-xr-x    1 root    root                    11358 Oct 22 20:58 /usr/share/licenses/flatbuffers/LICENSE.txt
$ rpm -q -lv -p ../RPMS/x86_64/flatbuffers-devel-1.0.3-1.x86_64.rpm 
-rwxr-xr-x    1 root    root                   320552 Apr  1 18:27 /usr/bin/flatc
drwxr-xr-x    2 root    root                        0 Apr  1 18:27 /usr/include/flatbuffers
-rw-r--r--    1 root    root                    33900 Oct 22 20:58 /usr/include/flatbuffers/flatbuffers.h
-rw-r--r--    1 root    root                    14893 Oct 22 20:58 /usr/include/flatbuffers/idl.h
-rw-r--r--    1 root    root                     8096 Oct 22 20:58 /usr/include/flatbuffers/util.h
FIX: Remove the executable bits from LICENSE.txt and readme.md.

$ rpm -q --requires -p ../RPMS/x86_64/flatbuffers-1.0.3-1.x86_64.rpm 
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
[test@fedora-23 SPECS]$ rpm -q --requires -p ../RPMS/x86_64/flatbuffers-devel-1.0.3-1.x86_64.rpm 
flatbuffers = 1.0.3-1
libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libm.so.6()(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
rtld(GNU_HASH)
FIX: The devel sub-package's dependency on main package must require architecture too (%{?_isa}).

$ rpm -q --provides -p ../RPMS/x86_64/flatbuffers-1.0.3-1.x86_64.rpm 
flatbuffers = 1.0.3-1
flatbuffers(x86-64) = 1.0.3-1
$ rpm -q --provides -p ../RPMS/x86_64/flatbuffers-devel-1.0.3-1.x86_64.rpm 
flatbuffers-devel = 1.0.3-1
flatbuffers-devel(x86-64) = 1.0.3-1
flatbuffers-static = 1.0.3-1
FIX: Append %{?dist} to release string.

$ resolvedeps rawhide ../RPMS/x86_64/flatbuffers-*
Binary dependencies resolvable. Ok.

Package builds in F23 (http://koji.fedoraproject.org/koji/taskinfo?taskID=9393767). Ok.

Otherwise you 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.

Comment 4 Sergey Avseyev 2017-11-03 12:17:41 UTC
Spec URL: https://avsej.fedorapeople.org/flatbuffers/0/flatbuffers.spec
SRPM URL: https://avsej.fedorapeople.org/flatbuffers/0/flatbuffers-1.7.1-1.fc28.src.rpm
Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=22885867

I have updated the upstream version, fixed all the review notes, and some extra (like adding SO version). If it is possible to restart review process using this ticket, I'm ready to maintain this package.

Comment 5 Igor Gnatenko 2017-11-03 12:27:05 UTC
(In reply to Sergey Avseyev from comment #4)
> Spec URL: https://avsej.fedorapeople.org/flatbuffers/0/flatbuffers.spec
> SRPM URL:
> https://avsej.fedorapeople.org/flatbuffers/0/flatbuffers-1.7.1-1.fc28.src.rpm
> Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=22885867
> 
> I have updated the upstream version, fixed all the review notes, and some
> extra (like adding SO version). If it is possible to restart review process
> using this ticket, I'm ready to maintain this package.

Can you open new ticket? I will happily review it.

Comment 6 Sergey Avseyev 2017-11-03 12:32:32 UTC
Sure, this is the new ticket: https://bugzilla.redhat.com/show_bug.cgi?id=1509262