Bug 890769 (embryo)

Summary: Review Request: embryo - Small Pawn based virtual machine and compiler.
Product: [Fedora] Fedora Reporter: Rahul Sundaram <metherid>
Component: Package ReviewAssignee: Rahul Sundaram <metherid>
Status: CLOSED ERRATA QA Contact: Rahul Sundaram <metherid>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: dan.mashal, i, misc, notting, package-review, terjeros
Target Milestone: ---Flags: metherid: fedora‑review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: embryo-1.7.8-2.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-06-16 02:12:34 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On: 954132    
Bug Blocks: 890771, 891282, 891295    

Description Rahul Sundaram 2012-12-29 16:19:55 EST
Spec URL: http://sundaram.fedorapeople.org/packages/embryo.spec
SRPM URL: http://sundaram.fedorapeople.org/packages/embryo-1.7.4-1.fc18.src.rpm
Description:
Small Pawn based virtual machine and compiler.  

Fedora Account System Username:sundaram
Comment 1 Terje Røsten 2012-12-30 09:04:35 EST
Seems like libeina-devel is missing from buildreq?

find %{buildroot}%{_libdir} -name '*.la' -delete

can be used over:

find %{buildroot}%{_libdir} -name '*.la' -exec rm -v {} \;

Just one buildreq on each line would be nice.
Comment 2 Rahul Sundaram 2012-12-30 14:51:04 EST
http://sundaram.fedorapeople.org/packages/embryo.spec
http://sundaram.fedorapeople.org/packages/embryo-1.7.4-2.fc18.src.rpm

Added libeina-devel as BR and fixed the find command.   I have split out BR per line.  Just a difference in style I suppose.  Thanks.
Comment 3 Rahul Sundaram 2012-12-30 18:50:28 EST
note:  I meant I haven't split out*
Comment 4 Michael Scherer 2012-12-30 19:39:26 EST
Keep in mind that's a package that was orphaned.

https://admin.fedoraproject.org/pkgdb/acls/name/embryo
Comment 5 Rahul Sundaram 2012-12-30 20:10:18 EST
It was orphaned a long time ago IIRC and the current policy requires a re-review in that case.
Comment 6 Terje Røsten 2013-01-01 08:55:24 EST
Summary:
--------

[!]: Package do not use a name that already exist
     Note: A package already exist with this name, please check
     https://admin.fedoraproject.org/pkgdb/acls/name/embryo
     See: https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Conflicting_Package_Names
[!]: %build honors applicable compiler flags or justifies otherwise. Build is silent,
     not possible to verify build options, please fix.
[!]: Fully versioned dependency in subpackages, if present.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in %package
     devel
[!]: Url: better url seem to be: http://docs.enlightenment.org/auto/embryo/
[!]: Summary: is a bit short, please use something from http://docs.enlightenment.org/auto/embryo/
     to fill in.
[!]: BuildRequires: libeina-devel: any specific version of libeina needed?
[!]: license status: mostly BSD it seems, however some files have zlib License, please have a look.
[?]: Debian has a man page for embryo_cc you might want to include.
[?]: License file installed when any subpackage combination is installed. 
     Is COPYING needed in -devel?

Full report:

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

C/C++:
[x]: Header files in -devel subpackage, if present.
[x]: ldconfig called in %post and %postun if required.
[x]: Package does not contain any libtool archives (.la)
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Rpath absent or only used for internal libs.
[x]: Development (unversioned) .so files in -devel subpackage, if present.

Generic:
[!]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[!]: %build honors applicable compiler flags or justifies otherwise.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package contains no bundled libraries.
[x]: Changelog in prescribed format.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Sources contain only permissible code or content.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[-]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[!]: Fully versioned dependency in subpackages, if present.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in %package
     devel
[x]: Package complies to the Packaging Guidelines
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[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 %doc.
[!]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL (v2 or later)", "Unknown or generated", "zlib/libpng". 3 files have
     unknown license. Detailed output of licensecheck in
     890769-embryo/licensecheck.txt
[!]: License file installed when any subpackage combination is installed.
[x] : Package consistently uses macro is (instead of hard-coded directory
     names).
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[!]: Package do not use a name that already exist
     Note: A package already exist with this name, please check
     https://admin.fedoraproject.org/pkgdb/acls/name/embryo
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package installs properly.
[x]: Package is not relocatable.
[x]: Requires correct, justified where necessary.
[x]: CheckResultdir
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file is legible and written in American English.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[-]: Package contains systemd file(s) if in need.
[x]: File names are valid UTF-8.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Large documentation must go in a -doc subpackage.
     Note: Documentation size is 409600 bytes in 52 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

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

Generic:
[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]: 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]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: Scriptlets must be sane, if used.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX / PatchY prefixed with %{name}.
[x]: SourceX is a working URL.
[-]: 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]: Spec use %global instead of %define.

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

Generic:
[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.
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.


Rpmlint
-------

Rpmlint (installed packages)
----------------------------
# rpmlint embryo embryo-devel embryo-debuginfo
embryo.x86_64: I: enchant-dictionary-not-found en_US
embryo.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libembryo.so.1.7.4 linux-vdso.so.1
embryo.x86_64: W: no-manual-page-for-binary embryo_cc

MD5-sum check
-------------
http://download.enlightenment.org/releases/embryo-1.7.4.tar.bz2 :
  CHECKSUM(SHA256) this package     : c8886dd5df2948cdb1463f627c2ce92faf642f29e38f0692f80f51ad3495ee67
  CHECKSUM(SHA256) upstream package : c8886dd5df2948cdb1463f627c2ce92faf642f29e38f0692f80f51ad3495ee67
Comment 7 Terje Røsten 2013-02-23 03:41:54 EST
Hi!

Any progress?
Comment 8 Dan Mashal 2013-04-21 09:15:41 EDT
The correct license is "BSD and GPLv2+"

Regarding the existing embryo package in pkgdb this one will replace that one.


Updated for 1.7.6:

SPEC URL: http://vicodan.fedorapeople.org/embryo.spec
SRPM URL: http://vicodan.fedorapeople.org/embryo-1.7.6-1.fc20.src.rpm

Description:
Small Pawn based virtual machine and compiler.

Successful koji rawhide build:

https://koji.fedoraproject.org/koji/taskinfo?taskID=5284732
Comment 9 Terje Røsten 2013-04-21 09:29:51 EDT
Hi guys, are you working together? 

With changelogs like this
 
 - Initial build

it is impossible to track changes and new bugs are coming back.

Where is the -devel package now?
Comment 10 Dan Mashal 2013-04-21 09:34:03 EDT
Yes we are now. There is no devel package necessary. This IS a devel package.

I've updated the spec file to include Rahul's changelog.

I've also removed "dbus-glib-devel" as it's not required.

$ rpmlint embryo.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

$ rpmlint ../SRPMS/embryo-1.7.6-1.fc20.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint ../RPMS/x86_64/embryo-1.7.6-1.fc20.x86_64.rpm 
embryo.x86_64: W: spelling-error %description -l en_US bytecode -> byte code, byte-code, decorate
embryo.x86_64: W: devel-file-in-non-devel-package /usr/include/embryo-1/Embryo.h
embryo.x86_64: W: devel-file-in-non-devel-package /usr/lib64/pkgconfig/embryo.pc
embryo.x86_64: W: devel-file-in-non-devel-package /usr/lib64/libembryo.so
embryo.x86_64: W: no-manual-page-for-binary embryo_cc
1 packages and 0 specfiles checked; 0 errors, 5 warnings.


These aren't review blockers.
Comment 11 Terje Røsten 2013-04-21 12:54:25 EDT
Great, could you please comment on all [!] and [?] in the in the review so we can get this moving?
Comment 12 Dan Mashal 2013-04-21 12:56:07 EDT
Rerun fedora review.
Comment 13 Dan Mashal 2013-04-24 22:49:31 EDT
Any update?
Comment 14 Rahul Sundaram 2013-05-14 23:40:56 EDT
Terje Røsten,  I am taking over the review since we need to move forward quickly.  Hope you don't mind and thanks for the review so far.
Comment 15 Rahul Sundaram 2013-05-15 00:04:31 EDT
Please fix the license to zlib and GPLv2 and use make_install macro as suggested in IRC.  Other than that, I don't see any blockers. 

As a side note, I proposed this originally but Dan is going to be the primary maintainer and I am doing a review after his changes just in case anyone is confused by that.

@Dan, please keep me as co-maintainer.  thanks!

== APPROVED ==
Comment 16 Terje Røsten 2013-05-16 02:01:06 EDT
Hi guys, thanks for working on this.
Comment 17 Dan Mashal 2013-06-05 05:09:47 EDT
Package Change Request
======================
Package Name: embryo
New Branches: f18 f19
Owners: vicodan mether
Comment 18 Jon Ciesla 2013-06-05 06:30:29 EDT
mether lacks a FAS account.
Comment 19 Dan Mashal 2013-06-05 09:21:14 EDT
Package Change Request
======================
Package Name: embryo
New Branches: f18 f19
Owners: vicodan sundaram



My sincerest apologies.
Comment 20 Jon Ciesla 2013-06-05 09:32:40 EDT
Branches already exists, handle co-maintainers in pkgdb.
Comment 21 Dan Mashal 2013-06-05 10:07:21 EDT
Package Change Request
======================
Package Name: embryo
New Branches: f20
Owners: vicodan sundaram

f20 is still marked as an orphan if you could please. Thanks.
Comment 22 Jon Ciesla 2013-06-05 10:47:41 EDT
Invalid branch, f20==devel and exists.  Take ownership in pkgdb.
Comment 23 Dan Mashal 2013-06-05 10:50:14 EDT
I can't.

Collection 	Owner 	QA Contact 	Crit Path 	Status
Fedora devel 	orphan Deprecated
Comment 24 Dan Mashal 2013-06-05 12:42:15 EDT
Fixed, with Kevin's help I was able to take owner ship. Thanks!
Comment 25 Fedora Update System 2013-06-06 18:35:37 EDT
embryo-1.7.6-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/embryo-1.7.6-1.fc19
Comment 26 Fedora Update System 2013-06-07 11:37:27 EDT
embryo-1.7.6-1.fc19 has been pushed to the Fedora 19 testing repository.
Comment 27 Fedora Update System 2013-06-16 02:12:34 EDT
embryo-1.7.6-1.fc19 has been pushed to the Fedora 19 stable repository.
Comment 28 Fedora Update System 2013-08-19 22:16:41 EDT
embryo-1.7.8-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/FEDORA-2013-15015/embryo-1.7.8-2.fc19
Comment 29 Fedora Update System 2013-08-27 19:25:44 EDT
embryo-1.7.8-2.fc19 has been pushed to the Fedora 19 stable repository.