Bug 1324020
Summary: | Review Request: cassandra - OpenSource database Apache Cassandra | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Tomas Repik <trepik> | ||||
Component: | Package Review | Assignee: | gil cattaneo <puntogil> | ||||
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 25 | CC: | greg.loscombe, jvanek, ngompa13, package-review, puntogil, torsava, trepik | ||||
Target Milestone: | --- | Flags: | puntogil:
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: | 2016-12-08 10:00:54 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: | |||||||
Attachments: |
|
Description
Tomas Repik
2016-04-05 11:03:22 UTC
Add packaging progress and referencies in https://fedoraproject.org/wiki/SIGs/bigdata/packaging#Packages_we.27re_working_on regards Spec URL: https://trepik.fedorapeople.org/cassandra/v1/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v1/cassandra-3.5-0.fc23.src.rpm Getting closer but still not final... Review state NEEDINFO As does the Whiteboard say, the package is still not ready for review. It should be though, approximately at the end of June. Spec URL: https://trepik.fedorapeople.org/cassandra/v2/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v2/cassandra-3.5-1.fc23.src.rpm All right, finaly I have the package ready for review. Here is a scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=15543966 Please, remove "Requires: jpackage-utils" is useless Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - Packages have proper BuildRequires/Requires on jpackage-utils Note: Maven packages do not need to (Build)Require jpackage-utils. It is pulled in by maven-local See: https://fedoraproject.org/wiki/Packaging:Java - Bundled jar/class files should be removed before build Note: Jar files in source (see attachment) See: http://fedoraproject.org/wiki/Packaging:Java#Pre- built_JAR_files_.2F_Other_bundled_software' - If the package provides multiple JAR file, files SHOULD be installed in a %{name} subdirectory %{_javadir}/%{name}-stress.jar https://fedoraproject.org/wiki/Packaging:Java#Installation_directory - JAR files MUST NOT include class-path entry inside META-INF/MANIFEST.MF cassandra.i686: W: class-path-in-manifest /usr/lib/java/cassandra/cassandra-all.jar https://fedoraproject.org/wiki/Packaging:Java#No_class-path_in_MANIFEST.MF [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "Apache (v2.0) BSD (3 clause)", "Unknown or generated", "*No copyright* Apache (v2.0)". 135 files have unknown license. Detailed output of licensecheck in /home/gil/1324020-cassandra/licensecheck.txt [!]: License file installed when any subpackage combination is installed. Missing NOTICE.txt file in javadoc subpackage [!]: Package contains no bundled libraries without FPC exception. cassandra-3.5/src/java/org/apache/cassandra/utils/vint/VIntCoding.java This file is part of protocol-buffer project Please, add Provides: bundled(protobuf) = "protobuf version" [!]: Package contains BR: python2-devel or python3-devel [!]: Latest version is packaged. Available cassandra-3.7 [!]: %check is present and all tests pass. [!]: Packages are noarch unless they use JNI Note: cassandra subpackage is not noarch. Please verify manually cassandra-javadoc-3.5-1.fc26.i686.rpm cassandra-parent-3.5-1.fc26.i686.rpm cassandra-stress-3.5-1.fc26.i686.rpm ===== MUST items ===== C/C++: [-]: Development (unversioned) .so files in -devel subpackage, if present. Note: Unversioned so-files in private %_libdir subdirectory (see attachment). Verify they are not in ld path. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "Apache (v2.0) BSD (3 clause)", "Unknown or generated", "*No copyright* Apache (v2.0)". 135 files have unknown license. Detailed output of licensecheck in /home/gil/1324020-cassandra/licensecheck.txt [!]: License file installed when any subpackage combination is installed. [x]: Package must own all directories that it creates. Note: Directories without known owners: /usr/share/java, /usr/lib/systemd/system, /etc/logrotate.d, /usr/lib/systemd [x]: %build honors applicable compiler flags or justifies otherwise. [!]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [!]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [x]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 419840 bytes in 4 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. [x]: Package requires other packages for directories it uses. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: %config files are marked noreplace or the reason is justified. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: No %config files under /usr. [x]: Package does not use a name that already exists. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local Java: [x]: Javadoc documentation files are generated and included in -javadoc subpackage [x]: Javadoc subpackages should not have Requires: jpackage-utils [x]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink) Maven: [x]: If package contains pom.xml files install it (including metadata) even when building with ant [x]: POM files have correct Maven mapping [x]: Maven packages should use new style packaging [x]: Old add_to_maven_depmap macro is not being used [x]: Packages DO NOT have Requires(post) and Requires(postun) on jpackage- utils for %update_maven_depmap macro [x]: Package DOES NOT use %update_maven_depmap in %post/%postun [x]: Packages use .mfiles file list instead of %{_datadir}/maven2/poms Python: [x]: Python eggs must not download any dependencies during the build process. [x]: A package which is used by another package via an egg interface should provide egg info. [?]: Package meets the Packaging Guidelines::Python [!]: Package contains BR: python2-devel or python3-devel [x]: Binary eggs must be removed in %prep ===== SHOULD items ===== Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [?]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in cassandra-parent , cassandra-thrift , cassandra-clientutil , cassandra-stress , cassandra-javadoc , cassandra-debuginfo [x]: Package functions as described. [!]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Patches link to upstream bugs/comments/lists or are otherwise justified. [x]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [!]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. Java: [!]: Packages are noarch unless they use JNI Note: cassandra subpackage is not noarch. Please verify manually [x]: Package uses upstream build method (ant/maven/etc.) ===== EXTRA items ===== Generic: [!]: Large data in /usr/share should live in a noarch subpackage if package is arched. Note: Arch-ed rpms have a total of 103700480 bytes in /usr/share cassandra-javadoc-3.5-1.fc26.i686.rpm:100454400 See: http://fedoraproject.org/wiki/Packaging:ReviewGuidelines#Package_Review_Guidelines [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: cassandra-3.5-1.fc26.i686.rpm cassandra-parent-3.5-1.fc26.i686.rpm cassandra-thrift-3.5-1.fc26.i686.rpm cassandra-clientutil-3.5-1.fc26.i686.rpm cassandra-stress-3.5-1.fc26.i686.rpm cassandra-javadoc-3.5-1.fc26.i686.rpm cassandra-debuginfo-3.5-1.fc26.i686.rpm cassandra-3.5-1.fc26.src.rpm cassandra.i686: W: name-repeated-in-summary C Cassandra cassandra.i686: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.i686: E: no-binary cassandra.i686: W: non-standard-uid /var/log/cassandra cassandra cassandra.i686: E: non-standard-dir-perm /var/log/cassandra 750 cassandra.i686: E: executable-marked-as-config-file /etc/cassandra-env.sh cassandra.i686: E: script-without-shebang /etc/cassandra-env.sh cassandra.i686: W: non-standard-uid /var/lib/cassandra cassandra cassandra.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra.i686: W: no-manual-page-for-binary cassandra cassandra.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra.i686: W: class-path-in-manifest /usr/lib/java/cassandra/cassandra-all.jar cassandra-parent.i686: W: no-documentation cassandra-thrift.i686: W: no-documentation cassandra-clientutil.i686: W: no-manual-page-for-binary sstablemetadata cassandra-clientutil.i686: W: no-manual-page-for-binary sstableofflinerelevel cassandra-clientutil.i686: W: no-manual-page-for-binary nodetool cassandra-clientutil.i686: W: no-manual-page-for-binary sstablescrub cassandra-clientutil.i686: W: no-manual-page-for-binary sstableupgrade cassandra-clientutil.i686: W: no-manual-page-for-binary sstablerepairedset cassandra-clientutil.i686: W: no-manual-page-for-binary sstableexpiredblockers cassandra-clientutil.i686: W: no-manual-page-for-binary sstableloader cassandra-clientutil.i686: W: no-manual-page-for-binary sstableverify cassandra-clientutil.i686: W: no-manual-page-for-binary sstablelevelreset cassandra-clientutil.i686: W: no-manual-page-for-binary sstabledump cassandra-clientutil.i686: W: no-manual-page-for-binary sstablesplit cassandra-clientutil.i686: W: no-manual-page-for-binary sstableutil cassandra-clientutil.i686: W: no-manual-page-for-binary cqlsh cassandra-stress.i686: W: spelling-error %description -l en_US benchmarking -> bench marking, bench-marking, benchmark cassandra-stress.i686: W: no-documentation cassandra-stress.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stressd cassandra-stress.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stress cassandra.src: W: name-repeated-in-summary C Cassandra cassandra.src: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.src:322: W: macro-in-comment %jpackage_script cassandra.src:372: W: macro-in-comment %dir cassandra.src:373: W: macro-in-comment %dir cassandra.src:380: W: macro-in-comment %config cassandra.src:381: W: macro-in-comment %config cassandra.src:382: W: macro-in-comment %config cassandra.src:386: W: macro-in-comment %config cassandra.src:13: W: mixed-use-of-spaces-and-tabs (spaces: line 5, tab: line 13) 8 packages and 0 specfiles checked; 6 errors, 38 warnings. Rpmlint (debuginfo) ------------------- Checking: cassandra-debuginfo-3.5-1.fc26.i686.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. Rpmlint (installed packages) ---------------------------- cassandra-thrift.i686: W: no-documentation cassandra-clientutil.i686: W: no-manual-page-for-binary sstabledump cassandra-clientutil.i686: W: no-manual-page-for-binary sstablemetadata cassandra-clientutil.i686: W: no-manual-page-for-binary sstableupgrade cassandra-clientutil.i686: W: no-manual-page-for-binary sstableexpiredblockers cassandra-clientutil.i686: W: no-manual-page-for-binary cqlsh cassandra-clientutil.i686: W: no-manual-page-for-binary sstableofflinerelevel cassandra-clientutil.i686: W: no-manual-page-for-binary sstableverify cassandra-clientutil.i686: W: no-manual-page-for-binary sstablerepairedset cassandra-clientutil.i686: W: no-manual-page-for-binary sstableutil cassandra-clientutil.i686: W: no-manual-page-for-binary sstableloader cassandra-clientutil.i686: W: no-manual-page-for-binary sstablesplit cassandra-clientutil.i686: W: no-manual-page-for-binary sstablescrub cassandra-clientutil.i686: W: no-manual-page-for-binary sstablelevelreset cassandra-clientutil.i686: W: no-manual-page-for-binary nodetool cassandra-parent.i686: W: no-documentation cassandra.i686: W: name-repeated-in-summary C Cassandra cassandra.i686: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.i686: E: no-binary cassandra.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra.i686: W: non-standard-uid /var/log/cassandra cassandra cassandra.i686: E: non-standard-dir-perm /var/log/cassandra 750 cassandra.i686: W: non-standard-uid /var/lib/cassandra cassandra cassandra.i686: E: executable-marked-as-config-file /etc/cassandra-env.sh cassandra.i686: E: script-without-shebang /etc/cassandra-env.sh cassandra.i686: W: no-manual-page-for-binary cassandra cassandra.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra.i686: W: class-path-in-manifest /usr/lib/java/cassandra/cassandra-all.jar cassandra-stress.i686: W: spelling-error %description -l en_US benchmarking -> bench marking, bench-marking, benchmark cassandra-stress.i686: W: no-documentation cassandra-stress.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stressd cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stress 7 packages and 0 specfiles checked; 6 errors, 28 warnings. Requires -------- cassandra-debuginfo (rpmlib, GLIBC filtered): cassandra-thrift (rpmlib, GLIBC filtered): cassandra java-headless javapackages-tools mvn(com.carrotsearch:hppc) mvn(com.googlecode.concurrent-trees:concurrent-trees) mvn(de.jflex:jflex) mvn(net.mintern:primitive) mvn(org.apache.commons:commons-lang3) mvn(org.apache.thrift:libthrift) mvn(org.slf4j:jcl-over-slf4j) mvn(org.slf4j:log4j-over-slf4j) mvn(org.slf4j:slf4j-api) mvn(org.tartarus:snowball) cassandra-clientutil (rpmlib, GLIBC filtered): /bin/sh /usr/bin/python cassandra java-headless javapackages-tools libc.so.6 libpthread.so.0 libpython2.7.so.1.0 mvn(com.google.guava:guava) python(abi) python-cassandra-driver rtld(GNU_HASH) cassandra-parent (rpmlib, GLIBC filtered): java-headless javapackages-tools cassandra (rpmlib, GLIBC filtered): /bin/sh config(cassandra) java-headless javapackages-tools jpackage-utils mvn(ch.qos.logback:logback-classic) mvn(ch.qos.logback:logback-core) mvn(com.addthis.metrics:reporter-config3) mvn(com.clearspring.analytics:stream) mvn(com.github.jbellis:jamm) mvn(com.github.stephenc.high-scale-lib:high-scale-lib) mvn(com.google.guava:guava) mvn(com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru) mvn(com.googlecode.json-simple:json-simple) mvn(com.ning:compress-lzf) mvn(com.thinkaurelius.thrift:thrift-server) mvn(commons-cli:commons-cli) mvn(commons-codec:commons-codec) mvn(io.dropwizard.metrics:metrics-core) mvn(io.netty:netty-all) mvn(joda-time:joda-time) mvn(net.java.dev.jna:jna) mvn(net.jpountz.lz4:lz4) mvn(org.antlr:antlr) mvn(org.antlr:antlr-runtime) mvn(org.apache.cassandra:cassandra-thrift) mvn(org.apache.commons:commons-lang3) mvn(org.apache.commons:commons-math3) mvn(org.apache.thrift:libthrift) mvn(org.caffinitas.ohc:ohc-core) mvn(org.codehaus.jackson:jackson-core-asl) mvn(org.codehaus.jackson:jackson-mapper-asl) mvn(org.eclipse.jdt.core.compiler:ecj) mvn(org.fusesource:sigar) mvn(org.mindrot:jbcrypt) mvn(org.slf4j:jcl-over-slf4j) mvn(org.slf4j:log4j-over-slf4j) mvn(org.slf4j:slf4j-api) mvn(org.xerial.snappy:snappy-java) mvn(org.yaml:snakeyaml) shadow-utils cassandra-javadoc (rpmlib, GLIBC filtered): javapackages-tools cassandra-stress (rpmlib, GLIBC filtered): /bin/sh cassandra Provides -------- cassandra-debuginfo: cassandra-debuginfo cassandra-debuginfo(x86-32) cassandra-thrift: cassandra-thrift cassandra-thrift(x86-32) mvn(org.apache.cassandra:cassandra-thrift) mvn(org.apache.cassandra:cassandra-thrift:pom:) cassandra-clientutil: cassandra-clientutil cassandra-clientutil(x86-32) mvn(org.apache.cassandra:cassandra-clientutil) mvn(org.apache.cassandra:cassandra-clientutil:pom:) python2.7dist(cassandra-pylib) python2dist(cassandra-pylib) cassandra-parent: cassandra-parent cassandra-parent(x86-32) mvn(org.apache.cassandra:cassandra-parent:pom:) cassandra: cassandra cassandra(x86-32) config(cassandra) mvn(org.apache.cassandra:cassandra-all) mvn(org.apache.cassandra:cassandra-all:pom:) cassandra-javadoc: cassandra-javadoc cassandra-javadoc(x86-32) cassandra-stress: cassandra-stress cassandra-stress(x86-32) Unversioned so-files -------------------- cassandra-clientutil: /usr/lib/python2.7/site-packages/cqlshlib/copyutil.so Source checksums ---------------- https://github.com/apache/cassandra/archive/cassandra-3.5.tar.gz : CHECKSUM(SHA256) this package : efab1bb8b8e91973730617d460386e0a449e6d74dd38d6beab6e60f8ab4d26cc CHECKSUM(SHA256) upstream package : efab1bb8b8e91973730617d460386e0a449e6d74dd38d6beab6e60f8ab4d26cc http://central.maven.org/maven2/org/apache/cassandra/cassandra-clientutil/3.5/cassandra-clientutil-3.5.pom : CHECKSUM(SHA256) this package : 39e3a6dd3f18b63302117167a7b29bad21a5af7a7f89b8e83c5080d5091787b3 CHECKSUM(SHA256) upstream package : 39e3a6dd3f18b63302117167a7b29bad21a5af7a7f89b8e83c5080d5091787b3 http://central.maven.org/maven2/org/apache/cassandra/cassandra-parent/3.5/cassandra-parent-3.5.pom : CHECKSUM(SHA256) this package : 78324eae096f2cabed0f1f7865531593fdab51f9e6eda02b902bad664404b61d CHECKSUM(SHA256) upstream package : 78324eae096f2cabed0f1f7865531593fdab51f9e6eda02b902bad664404b61d http://central.maven.org/maven2/org/apache/cassandra/cassandra-all/3.5/cassandra-all-3.5.pom : CHECKSUM(SHA256) this package : afeecdcc8f6e6da51cb474ee58d62f1ad14d38d9878900ba0e67502f8e204bd0 CHECKSUM(SHA256) upstream package : afeecdcc8f6e6da51cb474ee58d62f1ad14d38d9878900ba0e67502f8e204bd0 http://central.maven.org/maven2/org/apache/cassandra/cassandra-thrift/3.5/cassandra-thrift-3.5.pom : CHECKSUM(SHA256) this package : 9beff09fb9ecba107cf26c63eeb16c6c335778828a2f5bddaee62b7ad40a8217 CHECKSUM(SHA256) upstream package : 9beff09fb9ecba107cf26c63eeb16c6c335778828a2f5bddaee62b7ad40a8217 Jar and class files in source ----------------------------- ./cassandra-3.5/airline-0.6.jar ./cassandra-3.5/byteman-bmunit-3.0.3.jar ./cassandra-3.5/jsr305-2.0.2.jar ./cassandra-3.5/compile-command-annotations-1.2.0.jar ./cassandra-3.5/jmh-core-1.1.1.jar ./cassandra-3.5/cassandra-driver-core-3.0.0.jar ./cassandra-3.5/lib/logback-classic-1.1.3.jar ./cassandra-3.5/lib/hppc-0.5.4.jar ./cassandra-3.5/lib/commons-lang3-3.1.jar ./cassandra-3.5/lib/slf4j-api-1.7.7.jar ./cassandra-3.5/lib/junit-4.6.jar ./cassandra-3.5/lib/jbcrypt-0.3m.jar ./cassandra-3.5/lib/commons-codec-1.2.jar ./cassandra-3.5/lib/stream-2.5.2.jar ./cassandra-3.5/lib/jna-4.0.0.jar ./cassandra-3.5/lib/snowball-0.jar ./cassandra-3.5/lib/asm-5.0.4.jar ./cassandra-3.5/lib/libthrift-0.9.2.jar ./cassandra-3.5/lib/snakeyaml-1.11.jar ./cassandra-3.5/lib/ant-1.9.4.jar ./cassandra-3.5/lib/reporter-config3-3.0.0.jar ./cassandra-3.5/lib/antlr-runtime-3.5.2.jar ./cassandra-3.5/lib/reporter-config-base-3.0.0.jar ./cassandra-3.5/lib/metrics-core-3.0.1.jar ./cassandra-3.5/lib/primitive-1.0.jar ./cassandra-3.5/lib/jamm-0.3.0.jar ./cassandra-3.5/lib/ST4-4.0.8.jar ./cassandra-3.5/lib/concurrent-trees-2.5.0.jar ./cassandra-3.5/lib/jackson-core-asl-1.9.2.jar ./cassandra-3.5/lib/commons-math3-3.2.jar ./cassandra-3.5/lib/lz4-1.3.0.jar ./cassandra-3.5/lib/ohc-core-0.4.2.jar ./cassandra-3.5/lib/high-scale-lib-1.0.6.jar ./cassandra-3.5/lib/concurrentlinkedhashmap-lru-1.4.jar ./cassandra-3.5/lib/jflex-1.6.0.jar ./cassandra-3.5/lib/thrift-server-0.3.8.jar ./cassandra-3.5/lib/commons-cli-1.1.jar ./cassandra-3.5/lib/apache-commons-io-2.4.jar ./cassandra-3.5/lib/guava-18.0.jar ./cassandra-3.5/lib/logback-core-1.1.3.jar ./cassandra-3.5/lib/snappy-java-1.1.1.7.jar ./cassandra-3.5/lib/ant-junit-1.9.4.jar ./cassandra-3.5/lib/javax.inject.jar ./cassandra-3.5/lib/java_cup-0.11b.jar ./cassandra-3.5/lib/joda-time-2.4.jar ./cassandra-3.5/lib/json-simple-1.1.jar ./cassandra-3.5/lib/antlr-3.5.2.jar ./cassandra-3.5/lib/netty-all-4.0.23.Final.jar ./cassandra-3.5/lib/sigar-1.6.4.jar ./cassandra-3.5/lib/jackson-mapper-asl-1.9.2.jar ./cassandra-3.5/lib/metrics-logback-3.0.1.jar ./cassandra-3.5/lib/hamcrest-1.3.jar ./cassandra-3.5/lib/ecj-4.4.2.jar ./cassandra-3.5/lib/compress-lzf-0.8.4.jar ./cassandra-3.5/commons-collections-3.2.1.jar Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -b 1324020 --plugins Java -m fedora-rawhide-i386 Buildroot used: fedora-rawhide-i386 Active plugins: Python, Shell-api, Generic, Java Disabled plugins: C/C++, SugarActivity, fonts, Haskell, Ocaml, Perl, R, PHP, Ruby Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6 Created attachment 1199298 [details] source files are without license headers Please, report the problem to upstream https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Clarification Other issues: in file cassandra-env.sh is set "JVM_OPTS="$JVM_OPTS -Djava.library.path=/usr/lib64/sigar"" (In reply to gil cattaneo from comment #8) > Issues: > ======= > - Packages have proper BuildRequires/Requires on jpackage-utils DONE > - Bundled jar/class files should be removed before build Jar files are firstly removed and then replaced only with simlinks to respective jar files allready installed in the system > - If the package provides multiple JAR file, files SHOULD be installed in a > %{name} subdirectory DONE > - JAR files MUST NOT include class-path entry inside META-INF/MANIFEST.MF Any advice how to remove the entry? > [!]: License field in the package spec file matches the actual license. ignore for now > [!]: License file installed when any subpackage combination is installed. DONE > [!]: Package contains no bundled libraries without FPC exception. > cassandra-3.5/src/java/org/apache/cassandra/utils/vint/VIntCoding.java This > file is part of protocol-buffer project > Please, add Provides: bundled(protobuf) = "protobuf version" I don't think it is necessary, yes there is a protobuf header, but also there is a comment saying VIntCoding.java: "Borrows idea from [1]" There is no scource file called VIntCoding.java in protobuf sources [2] > [!]: Package contains BR: python2-devel or python3-devel Moved to clientutil subpackage > [!]: Latest version is packaged. obviously I know there is a newer version, if that is really necessary I'm gonna do the 3.7 version but new versions are released pretty often > [!]: %check is present and all tests pass. I don't think there is anything to check > [!]: Packages are noarch unless they use JNI DONE > Rpmlint ignored for now [1] https://developers.google.com/protocol-buffers/docs/encoding#varints [2] https://github.com/google/protobuf (In reply to gil cattaneo from comment #10) > Other issues: > in file cassandra-env.sh is set "JVM_OPTS="$JVM_OPTS > -Djava.library.path=/usr/lib64/sigar"" What is wrong with this? (In reply to Tomas Repik from comment #11) > (In reply to gil cattaneo from comment #8) > > Issues: > > ======= > > - Packages have proper BuildRequires/Requires on jpackage-utils > DONE > > - Bundled jar/class files should be removed before build > Jar files are firstly removed and then replaced only with simlinks to > respective jar files allready installed in the system > > - If the package provides multiple JAR file, files SHOULD be installed in a > > %{name} subdirectory > DONE > > - JAR files MUST NOT include class-path entry inside META-INF/MANIFEST.MF > Any advice how to remove the entry? sed -i '/Class-Path/d' build.xml remove this line:"<attribute name="Class-Path" value="${ant.project.name}-clientutil-${version}.jar ${ant.project.name}-thrift-${version}.jar" />" > > [!]: License field in the package spec file matches the actual license. > ignore for now > > [!]: License file installed when any subpackage combination is installed. > DONE > > [!]: Package contains no bundled libraries without FPC exception. > > cassandra-3.5/src/java/org/apache/cassandra/utils/vint/VIntCoding.java This > > file is part of protocol-buffer project > > Please, add Provides: bundled(protobuf) = "protobuf version" > I don't think it is necessary, yes there is a protobuf header, but also > there is a comment saying VIntCoding.java: "Borrows idea from [1]" There is > no scource file called VIntCoding.java in protobuf sources [2] > > [!]: Package contains BR: python2-devel or python3-devel > Moved to clientutil subpackage > > [!]: Latest version is packaged. > obviously I know there is a newer version, if that is really necessary I'm > gonna do the 3.7 version but new versions are released pretty often > > [!]: %check is present and all tests pass. > I don't think there is anything to check > > [!]: Packages are noarch unless they use JNI > DONE > > Rpmlint > ignored for now > > [1] https://developers.google.com/protocol-buffers/docs/encoding#varints > [2] https://github.com/google/protobuf (In reply to Tomas Repik from comment #12) > (In reply to gil cattaneo from comment #10) > > Other issues: > > in file cassandra-env.sh is set "JVM_OPTS="$JVM_OPTS > > -Djava.library.path=/usr/lib64/sigar"" > > What is wrong with this? on 32 bit arches /usr/lib64/sigar is not available waiting the new spec and src rpm, thanks for your work waiting the new spec and src rpm, thanks for your work Spec URL: https://trepik.fedorapeople.org/cassandra/v3/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v3/cassandra-3.5-1.fc23.src.rpm Fixed the issues discussed above. (In reply to Tomas Repik from comment #14) > Fixed the issues discussed above. > > [!]: Package contains BR: python2-devel or python3-devel > Moved to clientutil subpackage Still not available. can you revert? see this template https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file > > [!]: License field in the package spec file matches the actual license. > ignore for now Why? > > [!]: Latest version is packaged. > obviously I know there is a newer version, if that is really necessary I'm > gonna do the 3.7 version but new versions are released pretty often As you want > > [!]: %check is present and all tests pass. > I don't think there is anything to check sorry, there are no test suite to run? > > [!]: Packages are noarch unless they use JNI > DONE also %package parent is noarch > > Rpmlint > ignored for now Why? and please, remove all unnecessary comments. especially those who have "%". to reduce problems with rpmlint (In reply to gil cattaneo from comment #15) > [!]: Package contains BR: python2-devel or python3-devel > Still not available. can you revert? > see this template > https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file Can you be more specific about what you don't like about it? Even from the link you gave I don't see anything wrong. > [!]: License field in the package spec file matches the actual license. I checked the attachement about licenses but I think the license headers are present and sane as well. > [!]: Latest version is packaged. I'm gonna update to the version 3.7 in very near future. > [!]: %check is present and all tests pass. Now I remembered ahy i skipped the tests, I got these errors and, so far was unable to solve those. * Error1 Caused by: org.apache.cassandra.exceptions.ConfigurationException: Unable to check disk space available to build/test/cassandra/commitlog:21. Perhaps the Cassandra user does not have the necessary permissions * Error2 Caused by: java.io.IOException: Mount point not found I can provide full log if you'd like. > [!]: Packages are noarch unless they use JNI > also %package parent is noarch DONE (In reply to gil cattaneo from comment #15) > remove all unnecessary comments Yes I'm gonna do that, but as the last step before building for rawhide. (In reply to Tomas Repik from comment #17) > (In reply to gil cattaneo from comment #15) > > [!]: Package contains BR: python2-devel or python3-devel > > https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file > Can you be more specific about what you don't like about it? Even from the > link you gave I don't see anything wrong. Missing "python_provide" and: %check %{__pythonX} setup.py test or add a comment, in the spec file, why do not run test suite > > [!]: License field in the package spec file matches the actual license. > I checked the attachement about licenses but I think the license headers are > present and sane as well. > > [!]: Latest version is packaged. > I'm gonna update to the version 3.7 in very near future. OK > > [!]: %check is present and all tests pass. > Now I remembered ahy i skipped the tests, I got these errors and, so far was > unable to solve those. > * Error1 Caused by: org.apache.cassandra.exceptions.ConfigurationException: > Unable to check disk space available to build/test/cassandra/commitlog:21. > Perhaps the Cassandra user does not have the necessary permissions > * Error2 Caused by: java.io.IOException: Mount point not found > I can provide full log if you'd like. have you contacted upstream for report the problem? (In reply to gil cattaneo from comment #18) > [!]: Package contains BR: python2-devel or python3-devel > Missing "python_provide" and: > %check > %{__pythonX} setup.py test > or add a comment, in the spec file, why do not run test suite added "python_provide" and the %check section as well > [!]: %check is present and all tests pass. > have you contacted upstream for report the problem? I'm gonna update the package to 3.7 and see if the tests fail again. If yes I'm gonna ask upstream. So far not much progress: * submitted an issue about failing tests on cassandra's jira [1] * new version 3.7 has a new dependency (caffeine [2]) which is not in rawhide, and won't be for a while, so for now I would use the 3.5, which is fine Is there anything else I should resolve for the review? [1] https://issues.apache.org/jira/browse/CASSANDRA-12708 [2] https://github.com/ben-manes/caffeine (In reply to Tomas Repik from comment #20) > So far not much progress: > * submitted an issue about failing tests on cassandra's jira [1] > > * new version 3.7 has a new dependency (caffeine [2]) which is not in > rawhide, and won't be for a while, so for now I would use the 3.5, which is > fine i know caffeine is "not friendly" (read crap) with packager. but this will not be the possibility of keeping the package, at length, in Fedora > Is there anything else I should resolve for the review? > [!]: Package contains BR: python2-devel or python3-devel Default Python interpreter for Fedora (in rawhide) should be python3 For me should better split clientutil package in: - clientutil only the binaries/scripts files - python2-cqlshlib and/or python3-cqlshlib as in https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file http://python-rpm-porting.readthedocs.io/en/latest/modules.html#ported-rpm-spec-file > [!]: Packages are noarch unless they use JNI %package parent Spec URL: https://trepik.fedorapeople.org/cassandra/v4/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v4/cassandra-3.5-1.fc23.src.rpm (In reply to gil cattaneo from comment #21) > i know caffeine is "not friendly" (read crap) with packager. but this will > not be the possibility of keeping the package, at length, in Fedora So you think it's ineviteble to package caffeine? What if we removed caffeine from cassandra so it's not dependent? Is that not possible? I can help with doing either. > Default Python interpreter for Fedora (in rawhide) should be python3 > For me should better split clientutil package in: > - clientutil only the binaries/scripts files > - python2-cqlshlib and/or python3-cqlshlib DONE (only python2 because of usage in SCLs) > [!]: Packages are noarch unless they use JNI > %package parent DONE Tests still don't work... (In reply to Tomas Repik from comment #22) > > (In reply to gil cattaneo from comment #21) > > i know caffeine is "not friendly" (read crap) with packager. but this will > > not be the possibility of keeping the package, at length, in Fedora > So you think it's ineviteble to package caffeine? What if we removed > caffeine > from cassandra so it's not dependent? Is that not possible? I can help with > doing either. caffeine replace com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru (see https://github.com/ben-manes/concurrentlinkedhashmap/issues/48), you could try to remove it but could produce other issues. > > Default Python interpreter for Fedora (in rawhide) should be python3 > > For me should better split clientutil package in: > > - clientutil only the binaries/scripts files > > - python2-cqlshlib and/or python3-cqlshlib > DONE (only python2 because of usage in SCLs) I do not understand ... > > [!]: Packages are noarch unless they use JNI > > %package parent > DONE > > Tests still don't work... All test suite? or few tests? Please, cleanup spec file (In reply to gil cattaneo from comment #23) > caffeine replace > com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru > (see https://github.com/ben-manes/concurrentlinkedhashmap/issues/48), > you could try to remove it but could produce other issues. All right I'll with with somebody to package caffeine and it's dependencies into fedora. > Default Python interpreter for Fedora (in rawhide) should be python3 > I do not understand ... I didn't remember why we choose python2, but after some research I know now. Cassandra itself uses python 2.7 and its code (cqlshlib) is not python3 compatible [1]. > All test suite? or few tests? Almost all of the tests. > Please, cleanup spec file DONE (will post new spec file with some other changes that might come) Also there has been a new release od cassandra 3.9 recently, I'll focus on that one. [1] https://paste.fedoraproject.org/444041/69193147/raw/ (In reply to Tomas Repik from comment #24) > (In reply to gil cattaneo from comment #23) > > caffeine replace > > com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru > > (see https://github.com/ben-manes/concurrentlinkedhashmap/issues/48), > > you could try to remove it but could produce other issues. > > All right I'll with with somebody to package caffeine and it's dependencies > into fedora. i have begun this @ https://gil.fedorapeople.org/caffeine/ but there are some unavailable deps: com.typesafe:config:1.3.0 https://bugzilla.redhat.com/show_bug.cgi?id=1249965 com.squareup:javapoet:? net.openhft:koloboke-api-jdk8,koloboke-impl-jdk8:0.6.7 Dependencies with issues: com.github.brianfrankcooper.ycsb:core:0.10.0 (use apache htrace-core4.1.0-incubating ; this package was retired) com.typesafe.akka:akka-actor_2.10:2.3.15 (this package was retired) Dependencies changes: javax.cache:cache-api:1.0.0 (NON free, use org.apache.geronimo.specs:geronimo-jcache_1.0_spec) > > Default Python interpreter for Fedora (in rawhide) should be python3 > > I do not understand ... > > I didn't remember why we choose python2, but after some research I know now. > Cassandra itself uses python 2.7 and its code (cqlshlib) is not python3 > compatible [1]. OK. Please, add a comment in the spec file > > All test suite? or few tests? > > Almost all of the tests. > Also there has been a new release od cassandra 3.9 recently, I'll focus on > that one. > > [1] https://paste.fedoraproject.org/444041/69193147/raw/ We managed to package caffeine, the last missing dependency. Tramtadamtamtamtamtaaaa! Spec URL: https://trepik.fedorapeople.org/cassandra/v5/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v5/cassandra-3.9-1.fc24.src.rpm Koji Scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=16692989 - all of the dependencies finally in fedora - changed the method of linking the dependencies to the lib folder (build-jar-repository) - SCLized - added some SCL macros to be able to build it as a SCL - net.mintern:primitive - removed as it's gonna be removed in later cassandra release I feel that it's gonna be in fedora very soon! A question: ... install -p -D -m 755 build/tools/lib/%{pkg_name}-stress.jar %{buildroot}%{_javadir}/%{pkg_name}-stress.jar ... %attr(755, root, root) %{_javadir}/%{pkg_name}-stress.jar why? should be install -p -D -m 644 build/tools/lib/%{pkg_name}-stress.jar %{buildroot}%{_javadir}/%{pkg_name}-stress.jar %{_javadir}/%{pkg_name}-stress.jar can you use this instruction to install the artifact: %mvn_package org.apache.cassandra:%{pkg_name}-stress stress %mvn_artifact org.apache.cassandra:%{pkg_name}-stress:%{version} build/tools/lib/%{pkg_name}-stress.jar %files stress -f .mfiles-stress %license LICENSE.txt NOTICE.txt %attr(755, root, root) %{_bindir}/%{pkg_name}-stress %attr(755, root, root) %{_bindir}/%{pkg_name}-stressd %attr(755, root, root) %{_bindir}/%{pkg_name}.in.sh (In reply to gil cattaneo from comment #28) > A question: > ... > install -p -D -m 755 build/tools/lib/%{pkg_name}-stress.jar > %{buildroot}%{_javadir}/%{pkg_name}-stress.jar > ... > %attr(755, root, root) %{_javadir}/%{pkg_name}-stress.jar > > why? should be install -p -D -m 644 build/tools/lib/%{pkg_name}-stress.jar %{buildroot}%{_javadir}/%{pkg_name}/%{pkg_name}-stress.jar %{_javadir}/%{pkg_name}/%{pkg_name}-stress.jar Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - Bundled jar/class files should be removed before build Note: Jar files in source (see attachment) See: http://fedoraproject.org/wiki/Packaging:Java#Pre- built_JAR_files_.2F_Other_bundled_software' ===== MUST items ===== C/C++: [x]: Development (unversioned) .so files in -devel subpackage, if present. Note: Unversioned so-files in private %_libdir subdirectory (see attachment). Verify they are not in ld path. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "Apache (v2.0) BSD (3 clause)", "Unknown or generated", "*No copyright* Apache (v2.0)". 74 files have unknown license. Detailed output of licensecheck in /home/gil/1324020-cassandra/licensecheck.txt Apache (v2.0) BSD (3 clause) cassandra-3.9/src/java/org/apache/cassandra/utils/vint/VIntCoding.java [!]: License file installed when any subpackage combination is installed. Missing NOTICE.txt in javadoc sub package The following source files are without license headers: cassandra-3.9/doc/source/_static/extra.css cassandra-3.9/src/java/org/apache/cassandra/db/commitlog/IntervalSet.java cassandra-3.9/src/java/org/apache/cassandra/utils/IntegerInterval.java cassandra-3.9/test/unit/org/apache/cassandra/db/commitlog/CommitLogCQLTest.java cassandra-3.9/test/unit/org/apache/cassandra/utils/IntegerIntervalsTest.java cassandra-3.9/tools/stress/src/org/apache/cassandra/stress/WorkManager.java cassandra-3.9/tools/stress/src/org/apache/cassandra/stress/util/TimingIntervals.java Please, contact upstream and ask to confirm the licensing of code and/or content/s, and add license headers https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Clarification [x]: Package must own all directories that it creates. Note: Directories without known owners: /usr/share/java, /usr/lib/systemd/system, /etc/logrotate.d, /usr/lib/systemd [x]: %build honors applicable compiler flags or justifies otherwise. [?]: Package contains no bundled libraries without FPC exception. cassandra-3.9/src/java/org/apache/cassandra/utils/vint/VIntCoding.java [x]: Changelog in prescribed format. [?]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [!]: Requires correct, justified where necessary. Please, remove: %{?scl:Requires: %scl_require rh-maven33} [x]: Spec file is legible and written in American English. [x]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [x]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 440320 bytes in 4 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. [x]: Package requires other packages for directories it uses. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: %config files are marked noreplace or the reason is justified. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: No %config files under /usr. [x]: Package does not use a name that already exists. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local Java: [x]: Packages have proper BuildRequires/Requires on jpackage-utils Note: Maven packages do not need to (Build)Require jpackage-utils. It is pulled in by maven-local [x]: Javadoc documentation files are generated and included in -javadoc subpackage [x]: Javadoc subpackages should not have Requires: jpackage-utils [x]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink) Maven: [x]: If package contains pom.xml files install it (including metadata) even when building with ant [x]: POM files have correct Maven mapping [x]: Maven packages should use new style packaging [x]: Old add_to_maven_depmap macro is not being used [x]: Packages DO NOT have Requires(post) and Requires(postun) on jpackage- utils for %update_maven_depmap macro [x]: Package DOES NOT use %update_maven_depmap in %post/%postun [x]: Packages use .mfiles file list instead of %{_datadir}/maven2/poms Python: [x]: Python eggs must not download any dependencies during the build process. [x]: A package which is used by another package via an egg interface should provide egg info. [x]: Package meets the Packaging Guidelines::Python [x]: Package contains BR: python2-devel or python3-devel [x]: Binary eggs must be removed in %prep ===== SHOULD items ===== Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [- ]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in cassandra-parent , cassandra-thrift , cassandra-clientutil , cassandra-python2-cqlshlib , cassandra-stress , cassandra-javadoc , cassandra-debuginfo [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [?]: Patches link to upstream bugs/comments/lists or are otherwise justified. [x]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [!]: %check is present and all tests pass. [?]: Packages should try to preserve timestamps of original installed files. [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. Java: [!]: Packages are noarch unless they use JNI Note: cassandra subpackage is not noarch. Please verify manually [x]: Package uses upstream build method (ant/maven/etc.) ===== EXTRA items ===== Generic: [!]: Large data in /usr/share should live in a noarch subpackage if package is arched. Note: Arch-ed rpms have a total of 107315200 bytes in /usr/share cassandra-javadoc-3.9-1.fc26.i686.rpm:103987200 See: http://fedoraproject.org/wiki/Packaging:ReviewGuidelines#Package_Review_Guidelines [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: cassandra-3.9-1.fc26.i686.rpm cassandra-parent-3.9-1.fc26.i686.rpm cassandra-thrift-3.9-1.fc26.i686.rpm cassandra-clientutil-3.9-1.fc26.i686.rpm cassandra-python2-cqlshlib-3.9-1.fc26.i686.rpm cassandra-stress-3.9-1.fc26.i686.rpm cassandra-javadoc-3.9-1.fc26.i686.rpm cassandra-debuginfo-3.9-1.fc26.i686.rpm cassandra-3.9-1.fc26.src.rpm cassandra.i686: W: name-repeated-in-summary C Cassandra cassandra.i686: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.i686: E: no-binary cassandra.i686: E: executable-marked-as-config-file /etc/cassandra-env.sh cassandra.i686: E: script-without-shebang /etc/cassandra-env.sh cassandra.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra.i686: W: non-standard-uid /var/log/cassandra cassandra cassandra.i686: E: non-standard-dir-perm /var/log/cassandra 750 cassandra.i686: W: non-standard-uid /var/lib/cassandra cassandra cassandra.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra.i686: W: no-manual-page-for-binary cassandra cassandra-parent.i686: W: no-documentation cassandra-thrift.i686: W: no-documentation cassandra-clientutil.i686: W: no-documentation cassandra-clientutil.i686: W: no-manual-page-for-binary sstableutil cassandra-clientutil.i686: W: no-manual-page-for-binary nodetool cassandra-clientutil.i686: W: no-manual-page-for-binary sstableupgrade cassandra-clientutil.i686: W: no-manual-page-for-binary sstablelevelreset cassandra-clientutil.i686: W: no-manual-page-for-binary sstableexpiredblockers cassandra-clientutil.i686: W: no-manual-page-for-binary sstablesplit cassandra-clientutil.i686: W: no-manual-page-for-binary sstablerepairedset cassandra-clientutil.i686: W: no-manual-page-for-binary sstablemetadata cassandra-clientutil.i686: W: no-manual-page-for-binary sstableloader cassandra-clientutil.i686: W: no-manual-page-for-binary sstabledump cassandra-clientutil.i686: W: no-manual-page-for-binary sstableverify cassandra-clientutil.i686: W: no-manual-page-for-binary sstablescrub cassandra-clientutil.i686: W: no-manual-page-for-binary sstableofflinerelevel cassandra-python2-cqlshlib.i686: W: spelling-error Summary(en_US) Commandline -> Command line, Command-line, Commandment cassandra-python2-cqlshlib.i686: W: spelling-error %description -l en_US Commandline -> Command line, Command-line, Commandment cassandra-python2-cqlshlib.i686: W: no-manual-page-for-binary cqlsh cassandra-stress.i686: W: spelling-error %description -l en_US benchmarking -> bench marking, bench-marking, benchmark cassandra-stress.i686: W: no-documentation cassandra-stress.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stressd cassandra-stress.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stress cassandra.src: W: name-repeated-in-summary C Cassandra cassandra.src: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.src:145: W: unversioned-explicit-provides cqlsh cassandra.src:308: W: mixed-use-of-spaces-and-tabs (spaces: line 308, tab: line 8) 9 packages and 0 specfiles checked; 6 errors, 34 warnings. Rpmlint (debuginfo) ------------------- Checking: cassandra-debuginfo-3.9-1.fc26.i686.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. Rpmlint (installed packages) ---------------------------- cassandra-python2-cqlshlib.i686: W: spelling-error Summary(en_US) Commandline -> Command line, Command-line, Commandment cassandra-python2-cqlshlib.i686: W: spelling-error %description -l en_US Commandline -> Command line, Command-line, Commandment cassandra-python2-cqlshlib.i686: W: no-manual-page-for-binary cqlsh cassandra-thrift.i686: W: no-documentation cassandra-clientutil.i686: W: no-documentation cassandra-clientutil.i686: W: no-manual-page-for-binary sstableofflinerelevel cassandra-clientutil.i686: W: no-manual-page-for-binary sstableloader cassandra-clientutil.i686: W: no-manual-page-for-binary sstableupgrade cassandra-clientutil.i686: W: no-manual-page-for-binary sstableexpiredblockers cassandra-clientutil.i686: W: no-manual-page-for-binary sstablescrub cassandra-clientutil.i686: W: no-manual-page-for-binary sstableverify cassandra-clientutil.i686: W: no-manual-page-for-binary sstableutil cassandra-clientutil.i686: W: no-manual-page-for-binary sstablerepairedset cassandra-clientutil.i686: W: no-manual-page-for-binary sstablelevelreset cassandra-clientutil.i686: W: no-manual-page-for-binary sstablesplit cassandra-clientutil.i686: W: no-manual-page-for-binary nodetool cassandra-clientutil.i686: W: no-manual-page-for-binary sstablemetadata cassandra-clientutil.i686: W: no-manual-page-for-binary sstabledump cassandra-parent.i686: W: no-documentation cassandra.i686: W: name-repeated-in-summary C Cassandra cassandra.i686: W: spelling-error %description -l en_US repartition -> re partition, re-partition, reparation cassandra.i686: E: no-binary cassandra.i686: E: executable-marked-as-config-file /etc/cassandra-env.sh cassandra.i686: E: script-without-shebang /etc/cassandra-env.sh cassandra.i686: W: non-standard-uid /var/lib/cassandra cassandra cassandra.i686: W: non-standard-uid /var/log/cassandra cassandra cassandra.i686: E: non-standard-dir-perm /var/log/cassandra 750 cassandra.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra.i686: W: no-manual-page-for-binary cassandra cassandra-stress.i686: W: spelling-error %description -l en_US benchmarking -> bench marking, bench-marking, benchmark cassandra-stress.i686: W: no-documentation cassandra-stress.i686: E: script-without-shebang /usr/bin/cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra.in.sh cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stress cassandra-stress.i686: W: no-manual-page-for-binary cassandra-stressd 8 packages and 0 specfiles checked; 6 errors, 30 warnings. Requires -------- cassandra-debuginfo (rpmlib, GLIBC filtered): cassandra-python2-cqlshlib (rpmlib, GLIBC filtered): /usr/bin/python cassandra libc.so.6 libpthread.so.0 libpython2.7.so.1.0 python(abi) python-cassandra-driver rtld(GNU_HASH) cassandra-thrift (rpmlib, GLIBC filtered): cassandra java-headless javapackages-tools mvn(com.carrotsearch:hppc) mvn(com.googlecode.concurrent-trees:concurrent-trees) mvn(de.jflex:jflex) mvn(org.apache.commons:commons-lang3) mvn(org.apache.thrift:libthrift) mvn(org.slf4j:jcl-over-slf4j) mvn(org.slf4j:log4j-over-slf4j) mvn(org.slf4j:slf4j-api) mvn(org.tartarus:snowball) cassandra-clientutil (rpmlib, GLIBC filtered): /bin/sh cassandra java-headless javapackages-tools mvn(com.google.guava:guava) python-cassandra-driver cassandra-parent (rpmlib, GLIBC filtered): java-headless javapackages-tools cassandra (rpmlib, GLIBC filtered): /bin/sh config(cassandra) java-headless javapackages-tools mvn(ch.qos.logback:logback-classic) mvn(ch.qos.logback:logback-core) mvn(com.addthis.metrics:reporter-config3) mvn(com.clearspring.analytics:stream) mvn(com.github.ben-manes.caffeine:caffeine) mvn(com.github.jbellis:jamm) mvn(com.github.stephenc.high-scale-lib:high-scale-lib) mvn(com.google.guava:guava) mvn(com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru) mvn(com.googlecode.json-simple:json-simple) mvn(com.ning:compress-lzf) mvn(com.thinkaurelius.thrift:thrift-server) mvn(commons-cli:commons-cli) mvn(commons-codec:commons-codec) mvn(io.dropwizard.metrics:metrics-core) mvn(io.dropwizard.metrics:metrics-jvm) mvn(io.netty:netty-all) mvn(joda-time:joda-time) mvn(net.java.dev.jna:jna) mvn(net.jpountz.lz4:lz4) mvn(org.antlr:antlr) mvn(org.antlr:antlr-runtime) mvn(org.apache.cassandra:cassandra-thrift) mvn(org.apache.commons:commons-lang3) mvn(org.apache.commons:commons-math3) mvn(org.apache.thrift:libthrift) mvn(org.caffinitas.ohc:ohc-core) mvn(org.codehaus.jackson:jackson-core-asl) mvn(org.codehaus.jackson:jackson-mapper-asl) mvn(org.eclipse.jdt.core.compiler:ecj) mvn(org.fusesource:sigar) mvn(org.mindrot:jbcrypt) mvn(org.slf4j:jcl-over-slf4j) mvn(org.slf4j:log4j-over-slf4j) mvn(org.slf4j:slf4j-api) mvn(org.xerial.snappy:snappy-java) mvn(org.yaml:snakeyaml) shadow-utils cassandra-javadoc (rpmlib, GLIBC filtered): javapackages-tools cassandra-stress (rpmlib, GLIBC filtered): /bin/sh cassandra Provides -------- cassandra-debuginfo: cassandra-debuginfo cassandra-debuginfo(x86-32) cassandra-python2-cqlshlib: cassandra-python2-cqlshlib cassandra-python2-cqlshlib(x86-32) cqlsh python-cqlshlib python-cqlshlib(x86-32) python2.7dist(cassandra-pylib) python2dist(cassandra-pylib) cassandra-thrift: cassandra-thrift cassandra-thrift(x86-32) mvn(org.apache.cassandra:cassandra-thrift) mvn(org.apache.cassandra:cassandra-thrift:pom:) cassandra-clientutil: cassandra-clientutil cassandra-clientutil(x86-32) mvn(org.apache.cassandra:cassandra-clientutil) mvn(org.apache.cassandra:cassandra-clientutil:pom:) cassandra-parent: cassandra-parent cassandra-parent(x86-32) mvn(org.apache.cassandra:cassandra-parent:pom:) cassandra: cassandra cassandra(x86-32) config(cassandra) mvn(org.apache.cassandra:cassandra-all) mvn(org.apache.cassandra:cassandra-all:pom:) cassandra-javadoc: cassandra-javadoc cassandra-javadoc(x86-32) cassandra-stress: cassandra-stress cassandra-stress(x86-32) Unversioned so-files -------------------- cassandra-python2-cqlshlib: /usr/lib/python2.7/site-packages/cqlshlib/copyutil.so Source checksums ---------------- https://github.com/apache/cassandra/archive/cassandra-3.9.tar.gz : CHECKSUM(SHA256) this package : d9845c1e0f94973d91004c39410c464a24ffc3a3f25a35e6babb5755664cfd49 CHECKSUM(SHA256) upstream package : d9845c1e0f94973d91004c39410c464a24ffc3a3f25a35e6babb5755664cfd49 http://central.maven.org/maven2/org/apache/cassandra/cassandra-clientutil/3.9/cassandra-clientutil-3.9.pom : CHECKSUM(SHA256) this package : 2dfd2c4be0940d40c9d0ec1bc1ee2bcfd79646229bd204923ed063379714960c CHECKSUM(SHA256) upstream package : 2dfd2c4be0940d40c9d0ec1bc1ee2bcfd79646229bd204923ed063379714960c http://central.maven.org/maven2/org/apache/cassandra/cassandra-parent/3.9/cassandra-parent-3.9.pom : CHECKSUM(SHA256) this package : 65d00a4d73844878ee7ab322b19c561c18200c11d890f71e5b68889592b0becc CHECKSUM(SHA256) upstream package : 65d00a4d73844878ee7ab322b19c561c18200c11d890f71e5b68889592b0becc http://central.maven.org/maven2/org/apache/cassandra/cassandra-all/3.9/cassandra-all-3.9.pom : CHECKSUM(SHA256) this package : 7b77ee414f2fe19bf0b285a7a81f025780170ce9b5b7d1d259fb39319a532f9a CHECKSUM(SHA256) upstream package : 7b77ee414f2fe19bf0b285a7a81f025780170ce9b5b7d1d259fb39319a532f9a http://central.maven.org/maven2/org/apache/cassandra/cassandra-thrift/3.9/cassandra-thrift-3.9.pom : CHECKSUM(SHA256) this package : 53fd0a6c44a978b8829a2a058aa36544cf0f99fecdb926c710191e6218b7ff60 CHECKSUM(SHA256) upstream package : 53fd0a6c44a978b8829a2a058aa36544cf0f99fecdb926c710191e6218b7ff60 Jar and class files in source ----------------------------- ./cassandra-3.9/lib/[stringtemplate4]ST4.jar ./cassandra-3.9/lib/[jsr-305].jar ./cassandra-3.9/lib/[antlr3].jar Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -b 1324020 --plugins Java -m fedora-rawhide-i386 Buildroot used: fedora-rawhide-i386 Active plugins: Python, Shell-api, Generic, Java Disabled plugins: C/C++, SugarActivity, fonts, Haskell, Ocaml, Perl, R, PHP, Ruby Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6 Issues: [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "Apache (v2.0) BSD (3 clause)", "Unknown or generated", "*No copyright* Apache (v2.0)". 74 files have unknown license. Detailed output of licensecheck in /home/gil/1324020-cassandra/licensecheck.txt Apache (v2.0) BSD (3 clause) cassandra-3.9/src/java/org/apache/cassandra/utils/vint/VIntCoding.java [!]: License file installed when any subpackage combination is installed. Missing NOTICE.txt in javadoc sub package The following source files are without license headers: cassandra-3.9/doc/source/_static/extra.css cassandra-3.9/src/java/org/apache/cassandra/db/commitlog/IntervalSet.java cassandra-3.9/src/java/org/apache/cassandra/utils/IntegerInterval.java cassandra-3.9/test/unit/org/apache/cassandra/db/commitlog/CommitLogCQLTest.java cassandra-3.9/test/unit/org/apache/cassandra/utils/IntegerIntervalsTest.java cassandra-3.9/tools/stress/src/org/apache/cassandra/stress/WorkManager.java cassandra-3.9/tools/stress/src/org/apache/cassandra/stress/util/TimingIntervals.java Please, contact upstream and ask to confirm the licensing of code and/or content/s, and add license headers https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Clarification > (In reply to gil cattaneo from comment #28) > > A question: > > ... > > install -p -D -m 755 build/tools/lib/%{pkg_name}-stress.jar > > %{buildroot}%{_javadir}/%{pkg_name}-stress.jar > > ... > > %attr(755, root, root) %{_javadir}/%{pkg_name}-stress.jar > > > > why? > > should be > > install -p -D -m 644 build/tools/lib/%{pkg_name}-stress.jar > %{buildroot}%{_javadir}/%{pkg_name}/%{pkg_name}-stress.jar > > %{_javadir}/%{pkg_name}/%{pkg_name}-stress.jar https://fedoraproject.org/wiki/Packaging:Java#JAR_file_installation Not available "macros to handle systemd scriptlet operations" https://fedoraproject.org/wiki/Packaging:Scriptlets?rd=Packaging:ScriptletSnippets#Systemd [!]: Requires correct, justified where necessary. Please, remove useless: %{?scl:Requires: %scl_require rh-maven33} [!]: Packages are noarch unless they use JNI Note: cassandra subpackage is not noarch. Please verify manually Spec URL: https://trepik.fedorapeople.org/cassandra/v6/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v6/cassandra-3.9-1.fc24.src.rpm Koji Scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=16756287 - changed the installation of stress sub-package as suggested - added NOTICE.txt to the javadoc sub-package - asked upstream to include license headers [1] - asked upstream to update some cassandra dependencies to fedora versions, providing them patches updating their sources, all of these are mentioned in the spec file - added systemd macros [1] https://issues.apache.org/jira/browse/CASSANDRA-12993 (In reply to gil cattaneo from comment #31) > Issues: > > [!]: License field in the package spec file matches the actual license. > Note: Checking patched sources after %prep for licenses. Licenses > found: "Apache (v2.0)", "Apache (v2.0) BSD (3 clause)", "Unknown or > generated", "*No copyright* Apache (v2.0)". 74 files have unknown > license. Detailed output of licensecheck in > /home/gil/1324020-cassandra/licensecheck.txt > > Apache (v2.0) BSD (3 clause) > cassandra-3.9/src/java/org/apache/cassandra/utils/vint/VIntCoding.java License fiels should be: ASL 2.0 and BSD Please, add also a comment, e.g.: # Apache (v2.0) BSD (3 clause): # ./src/java/org/apache/cassandra/utils/vint/VIntCoding.java License: ASL 2.0 and BSD > [!]: Requires correct, justified where necessary. > Please, remove useless: %{?scl:Requires: %scl_require rh-maven33} The "Requires" list is automatically generated. This entry, for me is useless. What is rh-maven33? why maven? why is necessary? Please, to explain in a comment in the spec file. (In reply to gil cattaneo from comment #33) > License fiels should be: ASL 2.0 and BSD > Please, add also a comment, e.g.: DONE Thanks for helping with this I'm always confused with the licenses > The "Requires" list is automatically generated. This entry, for me is > useless. > What is rh-maven33? why maven? why is necessary? Please, to explain in a > comment in the spec file. Removed for now, will be added later if needed Is there any other issue? (In reply to Tomas Repik from comment #34) > (In reply to gil cattaneo from comment #33) > > License fiels should be: ASL 2.0 and BSD > > Please, add also a comment, e.g.: > DONE > Thanks for helping with this I'm always confused with the licenses > > The "Requires" list is automatically generated. This entry, for me is > > useless. > > What is rh-maven33? why maven? why is necessary? Please, to explain in a > > comment in the spec file. > Removed for now, will be added later if needed > > Is there any other issue? For me right now should be fine These instrunctions are also useless : "%attr(755, root, root) %{_bindir}/..." Please, consider removing them Spec URL: https://trepik.fedorapeople.org/cassandra/v7/cassandra.spec SRPM URL: https://trepik.fedorapeople.org/cassandra/v7/cassandra-3.9-1.fc24.src.rpm Thank YOU! Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/cassandra |