Bug 974756 - Review Request: flatpack - Flat File Parser via XML Mappings (fixed length,CSV)
Review Request: flatpack - Flat File Parser via XML Mappings (fixed length,CSV)
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Michael Simacek
Fedora Extras Quality Assurance
Depends On:
Blocks: 968136
  Show dependency treegraph
Reported: 2013-06-15 09:15 EDT by gil cattaneo
Modified: 2015-02-06 22:54 EST (History)
2 users (show)

See Also:
Fixed In Version: flatpack-4.0.0-2.fc21
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2015-02-06 22:54:10 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
msimacek: fedora‑review+
limburgher: fedora‑cvs+

Attachments (Terms of Use)

  None (edit)
Description gil cattaneo 2013-06-15 09:15:08 EDT
Spec URL: http://gil.fedorapeople.org/flatpack.spec
SRPM URL: http://gil.fedorapeople.org/flatpack-3.2.0-1.fc18.src.rpm
Simple Java delimited and fixed width file parser.
Handles CSV, Excel CSV, Tab, Pipe delimiters,
just to name a few. Maps column positions in the
file to user friendly names via XML.

Apache Camel Build/Requires

Fedora Account System Username: gil

Task info: http://koji.fedoraproject.org/koji/taskinfo?taskID=5506184
Comment 2 Michael Simacek 2015-01-29 07:43:17 EST
Package Review

[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed

- there are some logos in site directories (there are three site dirs), they
  should be removed (probably the whole site dirs)
- unowned directory (see below)
- dont use **, it expands differently depending on bash version and settings,
  use find (or %pom_xpath_replace -r (recursive mode))

===== MUST items =====

[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "Apache (v2.0)", "Unknown or generated". 62 files have unknown license.
     Detailed output of licensecheck in
[x]: License file installed when any subpackage combination is installed.
[!]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/share/maven-poms/flatpack,
[!]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/share/java/flatpack,
[x]: Package contains no bundled libraries without FPC exception.
[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.
[x]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: 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]: 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 10240 bytes in 1 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]: 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]: Macros in Summary, %description expandable at SRPM build time.
[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
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[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
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

[x]: Bundled jar/class files should be removed before build
[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
[x]: Javadoc subpackages should not have Requires: jpackage-utils
[x]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink)

[x]: If package contains pom.xml files install it (including depmaps) 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 %{_mavenpomdir} instead of %{_datadir}/maven2/poms

===== SHOULD items =====

[x]: 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).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in flatpack-
     examples , flatpack-javadoc
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[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
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

[x]: Package uses upstream build method (ant/maven/etc.)
[x]: Packages are noarch unless they use JNI

===== EXTRA items =====

[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.

Checking: flatpack-4.0.0-1.fc22.noarch.rpm
flatpack-examples.noarch: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 1 warnings.

Rpmlint (installed packages)
Cannot parse rpmlint output:

flatpack-examples (rpmlib, GLIBC filtered):

flatpack (rpmlib, GLIBC filtered):

flatpack-javadoc (rpmlib, GLIBC filtered):




Source checksums
https://github.com/Appendium/flatpack/archive/4.0.0.tar.gz :
  CHECKSUM(SHA256) this package     : f8daa1f3b0dd4d55982ae0f13742c79f3938495861045549d80836e1bb4afc40
  CHECKSUM(SHA256) upstream package : f8daa1f3b0dd4d55982ae0f13742c79f3938495861045549d80836e1bb4afc40

Generated by fedora-review 0.5.2 (63c24cb) last change: 2014-07-14
Command line :/usr/bin/fedora-review -b 974756
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api, Java
Disabled plugins: C/C++, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Comment 3 gil cattaneo 2015-01-29 08:09:39 EST
Spec URL: http://gil.fedorapeople.org/flatpack.spec
SRPM URL: http://gil.fedorapeople.org/flatpack-4.0.0-2.fc20.src.rpm

- remove logos in site directories
- fix installation of main package
- use pom macros
Comment 4 Michael Simacek 2015-01-29 08:35:33 EST
It would be better to remove the site directories from the SRPM.

> %pom_xpath_replace -r jexcelapi:jxl net.sourceforge.jexcelapi:jxl::provided
I think you wanted to use %pom_change_depenency. And you should add a comment about why you set the scope to provided.
Comment 5 gil cattaneo 2015-01-29 08:53:28 EST
(In reply to Michael Simacek from comment #4)
> It would be better to remove the site directories from the SRPM.
> > %pom_xpath_replace -r jexcelapi:jxl net.sourceforge.jexcelapi:jxl::provided
> I think you wanted to use %pom_change_depenency. And you should add a
> comment about why you set the scope to provided.

yes  ...
use now
%pom_change_dep jexcelapi:jxl net.sourceforge.jexcelapi:jxl::provided %{name}
%pom_change_dep jexcelapi:jxl net.sourceforge.jexcelapi:jxl::provided %{name}-samples

sed -i 's|${pom.artifactId}|${project.artifactId}|' pom.xml %{name}/pom.xml %{name}-samples/pom.xml
sed -i '${pom.version} ${project.version}' pom.xml  %{name}/pom.xml %{name}-samples/pom.xml

- unowned directory
done was a my mistake
%mvn_file net.sf.%{name}:%{oname} %{name}
now is fixed
%mvn_file net.sf.%{name}:%{name} %{name}

Spec URL: http://gil.fedorapeople.org/flatpack.spec
SRPM URL: http://gil.fedorapeople.org/flatpack-4.0.0-2.fc20.src.rpm
Comment 6 Michael Simacek 2015-01-29 09:06:52 EST
sed: -e expression #1, char 4: extra characters after command
error: Bad exit status from /var/tmp/rpm-tmp.M360At (%prep)

Please build it before you post it here.

FYI, %pom_chage_dep also has -r option. Also most %pom macros accept multiple files as arguments.
Comment 8 Michael Simacek 2015-01-29 09:50:20 EST
Looks ok now, APPROVED
Comment 9 gil cattaneo 2015-01-29 10:01:37 EST
Thanks for the review!

New Package SCM Request
Package Name: flatpack
Short Description: Flat File Parser via XML Mappings (fixed length,CSV)
Upstream URL: http://flatpack.sourceforge.net/
Owners: gil
Branches: f21
InitialCC: java-sig
Comment 10 Gwyn Ciesla 2015-01-29 10:23:29 EST
Git done (by process-git-requests).
Comment 11 Fedora Update System 2015-01-29 11:36:20 EST
flatpack-4.0.0-2.fc21 has been submitted as an update for Fedora 21.
Comment 12 Fedora Update System 2015-01-29 23:41:05 EST
flatpack-4.0.0-2.fc21 has been pushed to the Fedora 21 testing repository.
Comment 13 Fedora Update System 2015-02-06 22:54:10 EST
flatpack-4.0.0-2.fc21 has been pushed to the Fedora 21 stable repository.

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