Spec URL: http://salimma.fedorapeople.org/specs/gnome/vala0.14.spec SRPM URL: http://salimma.fedorapeople.org/specs/gnome/vala0.14-0.14.1-1.fc16.src.rpm Description: As of 0.15.1-2.fc17, our Vala package is now parallel-installable. This package is meant for F17 and above and can be used to compile applications that are only compatible with API level <= 0.14 To test on Fedora 16: vala0.14 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3759190 vala-0.15.1-2 scratch build (rebuild of Rawhide version): http://koji.fedoraproject.org/koji/taskinfo?taskID=3759197
Any idea if we are allowed to simply name the compatibility package 'compat-vala' and so we can just use that single package to target different "older" version for different Fedora release? That would save having to create a review request every release since we normally bump Vala's API version once per release (and Vala normally supports exactly one older API version concurrent with the current one).
I don't think compat packages are required to have a version marker in the name, so just "vala-compat" should work, but I haven't been able to find an authoritative section in the package guidelines. For instance, alongside python-sqlalchemy you can install python-sqlalchemy0.5 and alongside expat you can install compat-expat1. On the other hand, libwbxml has the sister package libwbxml-compat (with no explicit version in the package name). Before I start a full-on review, the following things will need to be taken care of. Are you planning on supporting a branch of this package for EPEL5? Issues: [!]: MUST Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean is needed only if supporting EPEL See: http://fedoraproject.org/wiki/Packaging/Guidelines#.25clean [!]: MUST Each %files section contains %defattr if rpm < 4.4 Note: defattr(....) present in %files devel section. This is OK if packaging for EPEL5. Otherwise not needed See: http://fedoraproject.org/wiki/Packaging/Guidelines#FilePermissions [!]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf is only needed if supporting EPEL5 See: None [!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5) Note: Only applicable for EL-5 See: http://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#EL5 The following rpmlint errors need to be taken care of as well: rpmlint vala0.14-tools-0.14.1-1.fc18.i686.rpm vala0.14-tools.i686: E: explicit-lib-dependency libtool vala0.14-tools.i686: W: spelling-error %description -l en_US Vala -> Val, Vela, Vila vala0.14-tools.i686: W: spelling-error %description -l en_US runtime -> run time, run-time, rudiment vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vapicheck 0644L vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vala-gen-introspect 0644L vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vapigen 0644L vala0.14-tools.i686: W: no-manual-page-for-binary vapicheck-0.14 1 packages and 0 specfiles checked; 1 errors, 6 warnings. rpmlint vala0.14-0.14.1-1.fc18.i686.rpm vala0.14.i686: W: non-executable-in-bin /usr/bin/valac 0644L vala0.14.i686: W: non-executable-in-bin /usr/bin/vala 0644L vala0.14.i686: W: install-file-in-docs /usr/share/doc/vala0.14-0.14.1/INSTALL 1 packages and 0 specfiles checked; 0 errors, 7 warnings. See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint
Yes, the package posted is currently a bit outdated, I'll post a version based on the latest Vala package soon (the alternatives scriptlets are not correct as well). Won't support EL-5 (or EL-6) as vala there is really, really outdated anyway.
(In reply to comment #2) > I don't think compat packages are required to have a version marker in the > name, so just "vala-compat" should work, but I haven't been able to find an > authoritative section in the package guidelines. > > For instance, alongside python-sqlalchemy you can install python-sqlalchemy0.5 > and alongside expat you can install compat-expat1. On the other hand, libwbxml > has the sister package libwbxml-compat (with no explicit version in the package > name). Thanks; I'm using vala-compat now > > Before I start a full-on review, the following things will need to be taken > care of. Are you planning on supporting a branch of this package for EPEL5? > > Issues: > [!]: MUST Package has no %clean section with rm -rf %{buildroot} (or > $RPM_BUILD_ROOT) > Note: Clean is needed only if supporting EPEL > See: http://fedoraproject.org/wiki/Packaging/Guidelines#.25clean > [!]: MUST Each %files section contains %defattr if rpm < 4.4 > Note: defattr(....) present in %files devel section. This is OK if > packaging for EPEL5. Otherwise not needed > See: http://fedoraproject.org/wiki/Packaging/Guidelines#FilePermissions > [!]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the > beginning of %install. > Note: rm -rf is only needed if supporting EPEL5 > See: None > [!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5) > Note: Only applicable for EL-5 > See: http://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#EL5 > All those removed. I was entertaining the possibility of people rebuilding vala for use with RHEL, but to think about it, the GNOME bindings are probably not going to work with the older GNOME versions there. > > > The following rpmlint errors need to be taken care of as well: > > rpmlint vala0.14-tools-0.14.1-1.fc18.i686.rpm > > vala0.14-tools.i686: E: explicit-lib-dependency libtool libtool is not actually a library, so this is a false positive -- the dependency does not get picked up automatically [rpmlint spelling warnings ignored] > vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vapicheck 0644L > vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vala-gen-introspect > 0644L > vala0.14-tools.i686: W: non-executable-in-bin /usr/bin/vapigen 0644L > vala0.14.i686: W: non-executable-in-bin /usr/bin/valac 0644L > vala0.14.i686: W: non-executable-in-bin /usr/bin/vala 0644L These are actually symlinks managed by alternatives: http://fedoraproject.org/wiki/Packaging:Alternatives > vala0.14.i686: W: install-file-in-docs /usr/share/doc/vala0.14-0.14.1/INSTALL > 1 packages and 0 specfiles checked; 0 errors, 7 warnings. > Removed, thanks Latest Koji build here (I'm now targeting 0.16 for Rawhide; will rebase it to 0.14 for F-17 which ships with Vala 0.16) http://koji.fedoraproject.org/koji/taskinfo?taskID=4055397 (I've not removed the INSTALL file from there, but it's fixed in the spec and SRPM below) http://salimma.fedorapeople.org/specs/gnome/vala-compat-0.16.0-1.fc17.src.rpm http://salimma.fedorapeople.org/specs/gnome/vala-compat.spec
#1) Can you change the ticket name to vala-compat so it's consistent with the package? #2) I noticed that the "find -L /etc/alternatives/...." lines in %posttrans are noisy when they are run in the absence of other installations of vala; if /etc/alternatives/vala does not exist, it prints out noisily to stderr when you install vala-compat. You should replace those find -L lines with "if [ -L /etc/alternatives/some_file ]; then" or another solution of your choice. Barring those two items, I can complete the full review.
Oh, and I almost missed it. There's an easy-to-fix rpmlint error in vala-compat-devel that needs fixing as well: vala-compat-devel.i686: E: description-line-too-long C This package contains development files for vala-compat. This is not necessary for
All requested changes made. Thanks for the tip re: the scriptlets -- didn't realize [ ] takes -L as well. http://salimma.fedorapeople.org/specs/gnome/vala-compat-0.16.0-2.fc17.src.rpm http://salimma.fedorapeople.org/specs/gnome/vala-compat.spec
Package is APPROVED Package Review ============== Key: - = N/A x = Pass ! = Fail ? = Not evaluated ==== C/C++ ==== [x]: MUST Header files in -devel subpackage, if present. [x]: MUST Package does not contain any libtool archives (.la) [x]: MUST Package does not contain kernel modules. [x]: MUST Package contains no static executables. [x]: MUST Rpath absent or only used for internal libs. [x]: MUST Package is not relocatable. [x]: MUST Development (unversioned) .so files in -devel subpackage, if present. ==== Generic ==== [x]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: MUST %build honors applicable compiler flags or justifies otherwise. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: MUST Buildroot is not present Note: Unless packager wants to package for EPEL5 this is fine [x]: MUST Package contains no bundled libraries. [x]: MUST Changelog in prescribed format. [x]: MUST Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean would be needed if support for EPEL is required [x]: MUST Sources contain only permissible code or content. [x]: MUST Each %files section contains %defattr if rpm < 4.4 Note: Note: defattr macros not found. They would be needed for EPEL5 [x]: MUST Macros in Summary, %description expandable at SRPM build time. [x]: MUST Package requires other packages for directories it uses. [x]: MUST Package uses nothing in %doc for runtime. [x]: MUST Package is not known to require ExcludeArch. [x]: MUST Permissions on files are set properly. [x]: MUST Package does not contain duplicates in %files. [x]: MUST Fully versioned dependency in subpackages, if present. [x]: MUST Spec file lacks Packager, Vendor, PreReq tags. [x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf would be needed if support for EPEL5 is required [x]: MUST Large documentation files are in a -doc subpackage, if required. [x]: MUST 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 %doc. [x]: MUST License field in the package spec file matches the actual license. Note: Licenses found: "*No copyright* UNKNOWN", "LGPL (v2.1 or later) (with incorrect FSF address) ", "GPL (v2 or later) ", "GPL (v3 or later) ", "LGPL (v2 or later) (with incorrect FSF address) ", "LGPL (v2.1 or later) GENERATED FILE", "*No copyright* GENERATED FILE", "LGPL (v2.1 or later) " For detailed output of licensecheck see file: /home/threebean/reviews/787193/licensecheck.txt [x]: MUST License file installed when any subpackage combination is installed. [x]: MUST Package consistently uses macros (instead of hard-coded directory names). [x]: MUST Package is named according to the Package Naming Guidelines. [x]: MUST Package does not generate any conflict. [x]: MUST Package obeys FHS, except libexecdir and /usr/target. [x]: MUST Package must own all directories that it creates. [x]: MUST Package does not own files or directories owned by other packages. [x]: MUST Package installs properly. [!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5) Note: Only applicable for EL-5 [x]: MUST Requires correct, justified where necessary. [!]: MUST Rpmlint output is silent. [x]: MUST Sources used to build the package match the upstream source, as provided in the spec URL. /home/threebean/reviews/787193/vala-0.16.0.tar.xz : MD5SUM this package : 84b742e9cca4c90fde3026c3793c03c1 MD5SUM upstream package : 84b742e9cca4c90fde3026c3793c03c1 [x]: MUST Spec file is legible and written in American English. [x]: MUST Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: MUST Package contains a SysV-style init script if in need of one. [x]: MUST File names are valid UTF-8. [x]: MUST Useful -debuginfo package or justification otherwise. [x]: SHOULD Reviewer should test that the package builds in mock. [x]: SHOULD 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]: SHOULD Dist tag is present. [x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [x]: SHOULD Package functions as described. [-]: SHOULD Latest version is packaged. [x]: SHOULD Package does not include license text files separate from upstream. [!]: SHOULD The placement of pkgconfig(.pc) files are correct. Note: vala-compat-tools-0.16.0-2.fc18.i686.rpm : /usr/share/pkgconfig/vapigen-0.16.pc vala-compat- tools-0.16.0-2.fc18.i686.rpm : /usr/share/pkgconfig/vapigen.pc [x]: SHOULD Scriptlets must be sane, if used. [x]: SHOULD SourceX is a working URL. [x]: SHOULD Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: SHOULD Package should compile and build into binary rpms on all supported architectures. [-]: SHOULD %check is present and all tests pass. [x]: SHOULD Packages should try to preserve timestamps of original installed files. [x]: SHOULD Spec use %global instead of %define. Issues: [!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5) Note: Only applicable for EL-5 See: http://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#EL5 PASS -- not building for EL5 [!]: MUST Rpmlint output is silent. PASS -- all acceptable aberrants due to use of alternatives. Generated by fedora-review 0.2.0git External plugins:
Thanks! New Package SCM Request ======================= Package Name: vala-compat Short Description: Compatibility version of the Vala compiler Owners: salimma Branches: f16 f17 InitialCC:
Git done (by process-git-requests).
vala-compat-0.14.2-3.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/vala-compat-0.14.2-3.fc17
vala-compat-0.12.1-3.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/vala-compat-0.12.1-3.fc16
vala-compat-0.14.2-3.fc17 has been pushed to the Fedora 17 testing repository.
vala-compat-0.14.2-4.fc17 has been pushed to the Fedora 17 stable repository.
vala-compat-0.12.1-4.fc16 has been pushed to the Fedora 16 stable repository.