Spec URL: http://ryanlerch.fedorapeople.org/perl-Makefile-DOM/perl-Makefile-DOM.spec SRPM URL: http://ryanlerch.fedorapeople.org/perl-Makefile-DOM/perl-Makefile-DOM-0.004-1.fc11.src.rpm Description: This libary can serve as an advanced lexer for (GNU) makefiles. It parses makefiles as "documents" and the parsing is lossless. The results are data structures similar to DOM trees. The DOM trees hold every single bit of the information in the original input files, including white spaces, blank lines and makefile comments. That means it's possible to reproduce the original makefiles from the DOM trees. In addition, each node of the DOM trees is modifiable and so is the whole tree, just like the PPI module used for Perl source parsing and the HTML::TreeBuilder module used for parsing HTML source. This is my first package - will somebody sponsor me please?
I am doing an informal review, as I am not a sponsor for the packager group. OK: rpmlint must be run on every package. The output should be posted in the review. [nb@epsilon SPECS]$ rpmlint perl-Makefile-DOM.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. [nb@epsilon SRPMS]$ rpmlint perl-Makefile-DOM-0.004-1.fc12.src.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. [nb@epsilon noarch]$ rpmlint perl-Makefile-DOM-0.004-1.fc12.noarch.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. OK: The package must be named according to the Package Naming Guidelines . OK: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption. OK: The package must meet the Packaging Guidelines . OK: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines . both CC-BY-SA and BSD licenses are ok - there are also some PHP-licensed libraries and LGPL libraries. OK: The License field in the package spec file must match the actual license. License tag is incorrect, see below OK: 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 must be included in %doc. OK: The spec file must be written in American English. OK: The spec file for the package MUST be legible. OK: The sources used to build the package must match the upstream source, as provided in the spec URL. Reviewers should use md5sum for this task. Make your conf file another source rather than combining it to the existing tarball. OK: The package MUST successfully compile and build into binary rpms on at least one primary architecture. OK: If the package does not successfully compile, build or work on any arch bug must be filed and/or exclude arch used. OK: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines ; inclusion of those as BuildRequires is optional. Apply common sense. OK: The spec file MUST handle locales properly. This is done by using the %find_lang macro. Using %{_datadir}/locale/ is strictly forbidden. N/A: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun. OK: Packages must NOT bundle copies of system libraries. OK: If the package is designed to be relocatable, the packager must state this fact in the request for review, along with the rationalization for relocation of that specific package. Without this, use of Prefix: /usr is considered a blocker. OK: A package must own all directories that it creates. If it does not create a directory that it uses, then it should require a package which does create that directory. OK: A Fedora package must not list a file more than once in the spec file's %files listings. OK: Permissions on files must be set properly. Executables should be set with executable permissions, for example. Every %files section must include a %defattr(...) line. OK: Each package must have a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK: Each package must consistently use macros. OK: The package must contain code, or permissable content. NA: Large documentation files must go in a -doc subpackage. (The definition of large is left up to the packager's best judgement, but is not restricted to size. Large can refer to either size or quantity). OK: If a package includes something as %doc, it must not affect the runtime of the application. To summarize: If it is in %doc, the program must run properly if it is not present. NA: Header files must be in a -devel package. NA: Static libraries must be in a -static package. NA: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' (for directory ownership and usability). NA: If a package contains library files with a suffix (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package. NA: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} NA: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built. NA: Packages containing GUI applications must include a %{name}.desktop file OK: Packages must not own files or directories already owned by other packages OK: At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT). OK: All filenames in rpm packages must be valid UTF-8. If I were a sponsor for the packager group, this package would be APPROVED.
I'll go ahead and take a sponsorship role of Ryan. A full review of my own will come in a little bit. Ryan, you'll either need to create another package (preferably non-Perl) or do some informal reviews of other packages to have me approve you as a packager. (:
This is a requirement for a working version of Publican to land in Fedora, could we *please* cut this some slack, I'll enlist as a co-maintainer right-away.
(In reply to comment #3) > This is a requirement for a working version of Publican to land in Fedora, > could we *please* cut this some slack, I'll enlist as a co-maintainer > right-away. FWIW, i have also filed this request (nothing to do with publican, but another package like ianweller requested...) https://bugzilla.redhat.com/show_bug.cgi?id=530910 cheers, ryanlerch
Ryan, Please make sure your BuildRequires include all the ones listed here: https://fedoraproject.org/wiki/Packaging:Perl#Core_modules_as_buildrequires Also please add Provides: perl(Makefile::DOM)
(In reply to comment #5) > Ryan, > > Please make sure your BuildRequires include all the ones listed here: > https://fedoraproject.org/wiki/Packaging:Perl#Core_modules_as_buildrequires Done. > > Also please add Provides: perl(Makefile::DOM) Also done. I have uploaded the updated files on my fedorapeople: http://ryanlerch.fedorapeople.org/perl-Makefile-DOM-0.004-2.fc11.src.rpm http://ryanlerch.fedorapeople.org/perl-Makefile-DOM.spec also completed a scratch build in koji: http://ryanlerch.fedorapeople.org/perl-Makefile-DOM.spec rpmlint output: """ % rpmlint perl-Makefile-DOM.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. % rpmlint perl-Makefile-DOM-0.004-2.fc11.src.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. """ anything more i need to do or check on this one?
whoops, the koji link is obviously wrong. here is the correct one: http://koji.fedoraproject.org/koji/taskinfo?taskID=1771550
You forgot to add a %changelog entry. Please fix...
done. updated: http://koji.fedoraproject.org/koji/taskinfo?taskID=1771552 http://ryanlerch.fedorapeople.org/perl-Makefile-DOM-0.004-2.fc11.src.rpm http://ryanlerch.fedorapeople.org/perl-Makefile-DOM.spec
[ OK ] source files match upstream: 2860a83edc7396077716c63f30c12446 Makefile-DOM-0.004.tar.gz 2860a83edc7396077716c63f30c12446 Makefile-DOM-0.004.tar.gz.1 [ OK ] package meets naming and versioning guidelines. [ OK ] spec is properly named, cleanly written, and uses macros consistently. [ OK ] dist tag is present. [ OK ] build root is correct. [ OK ] license field matches the actual license. [ OK ] license is open source-compatible. [ N/A ] license text included in package. (not necessary since it's the Perl terms, which are in the perl package) [ OK ] latest version is being packaged. [ OK ] BuildRequires are proper. [ OK ] compiler flags are appropriate. [ OK ] %clean is present. [ OK ] package builds in mock. [ OK ] package installs properly. [ N/A ] debuginfo package looks complete. [ OK ] rpmlint is silent. [ OK ] final provides and requires are sane [ N/A ] %check is present and all tests pass: [ OK ] no shared libraries are added to the regular linker search paths. [ OK ] owns the directories it creates. [ OK ] doesn't own any directories it shouldn't. [ OK ] no duplicates in %files. [ OK ] file permissions are appropriate. [ N/A ] scriptlets match those on ScriptletSnippets page. [ OK ] documentation is small, so no -docs subpackage is necessary. [ OK ] %docs are not necessary for the proper functioning of the package. [ OK ] no headers. [ OK ] no pkgconfig files. [ OK ] no libtool .la droppings. [ N/A ] desktop files valid and installed properly. this package is APPROVED by me since kanarip has offered to be a comaintainer and this package is fairly important I'm going to go ahead and sponsor you. we'll work on the other package (hyena) this week. be sure to include kanarip in your owners list when you do the CVS admin procedure.
Thanks for the speedy review and sponsoring Ian! Ryan, thanks for taking on the package; my FAS account name is kanarip.
New Package CVS Request ======================= Package Name: perl-Makefile-DOM Short Description:Simple DOM parser for Makefiles Owners: rlerch kanarip Branches: F-10 F-11 F-12 InitialCC: perl-sig
Sorry, i entered the wrong username for myself here is the corrected version: New Package CVS Request ======================= Package Name: perl-Makefile-DOM Short Description:Simple DOM parser for Makefiles Owners: ryanlerch kanarip Branches: F-10 F-11 F-12 InitialCC: perl-sig
cvs done.
Package Change Request ======================= Package Name: perl-Makefile-DOM New Branches: EL-5 Owners: ryanlerch kanarip nb rlandmann InitialCC: perl-sig
CVS done (by process-cvs-requests.py).