Bug 221188

Summary: Review Request: pdns-recursor - Modern, advanced and high performance recursing/non authoritative nameserver
Product: [Fedora] Fedora Reporter: Ruben Kerkhof <ruben>
Component: Package ReviewAssignee: Kevin Fenzi <kevin>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-01-27 23:03:59 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:
Bug Depends On:    
Bug Blocks: 163779    

Description Ruben Kerkhof 2007-01-02 20:31:48 UTC
Spec URL: http://rubenkerkhof.com/packages/pdns-recursor.spec
SRPM URL: http://rubenkerkhof.com/packages/pdns-recursor-3.1.4-1.src.rpm
Description:
PowerDNS Recursor is a non authoritative/recursing DNS server. Use this
package if you need a dns cache for your network.

Comment 1 Josef Bacik 2007-01-02 21:56:24 UTC
Here is my review, everything looks good, it built and such.  I haven't yet 
been sponsored and stuff, I'm doing reviews in order to get sponsored.

Must:

-rpmlint ran without errors
[josef@dhcp59-136 ~]$ rpmlint pdns-recursor-3.1.4-1.src.rpm 
[josef@dhcp59-136 ~]$ 
-package conforms to package naming guidlines
-spec file name matches basename
-the package is licensed with an open source compatible license
-package includes license in %doc
-spec file is written in american english
-spec file is legible
-sources match upstream (sha1sum)
d1fa344ec5f2feb12397361f92b011a0cb726d48  pdns-recursor-3.1.4.tar.bz2
-package successfully built on my test box (x86_64)
-no need for exclude arch
-BR are present and make sense
-no libraries, no need to run ldconfig
-not relocatable
-package owns everything it creates
-package does not duplicate files it owns
-file attributes are set appropriatly
-%clean section present and removes buildroot
-consistently uses macros
-contains code
-no large documentation
-files in %doc does not affect runtime of application
-does not contain a pkgconfig file
-does not contain any libraries
-does not have a devel package
-does not contain any .la files
-package does not have a gui
-package does not own files/directories owned by other packages.


Comment 2 Kevin Fenzi 2007-01-24 03:35:57 UTC
I'd be happy to review this package. 

Look for a full review here in a bit...

Comment 3 Kevin Fenzi 2007-01-24 03:54:04 UTC
OK - Package meets naming and packaging guidelines
OK - Spec file matches base package name.
OK - Spec has consistant macro usage.
OK - Meets Packaging Guidelines.
OK - License (GPL)
OK - License field in spec matches
OK - License file included in package
OK - Spec in American English
OK - Spec is legible.
OK - Sources match upstream md5sum:
439a10639f53def0ba47c0851e4a2671  pdns-recursor-3.1.4.tar.bz2
439a10639f53def0ba47c0851e4a2671  pdns-recursor-3.1.4.tar.bz2.1
d1fa344ec5f2feb12397361f92b011a0cb726d48  pdns-recursor-3.1.4.tar.bz2
d1fa344ec5f2feb12397361f92b011a0cb726d48  pdns-recursor-3.1.4.tar.bz2.1
OK - BuildRequires correct
OK - Package has %defattr and permissions on files is good.
OK - Package has a correct %clean section.
OK - Package has correct buildroot
OK - Package is code or permissible content.
OK - Packages %doc files don't affect runtime.

OK - Package compiles and builds on at least one arch.
OK - Package has no duplicate files in %files.
OK - Package doesn't own any directories other packages own.
OK - Package owns all the directories it creates.
OK - No rpmlint output.
See below - final provides and requires are sane:

SHOULD Items:

OK - Should build in mock.
OK - Should build on all supported archs
OK - Should have dist tag
OK - Should package latest version

Issues:

1. The Source URL doesn't seem to work for me.

Should be:
http://downloads.powerdns.com/releases/pdns-recursor-3.1.4.tar.bz2

(note: releases, not release)

2. Your debuginfo files are all empty. Not sure why that is, but
I think it deserves some investigation.

3. I assume the
Provides:               powerdns-recursor = %{version}-%{release}
is for upstream or other project released rpms?

4. Is it ok for this package to run as user 'pdns', which is
the same as the 'pdns' package. If they are both on the same
machine could there be security implications? Perhaps this
package should use a 'pdns-recursor' user instead?


Comment 4 Ruben Kerkhof 2007-01-24 12:22:46 UTC
Hi Kevin, thanks for reviewing this.

>> 1. The Source URL doesn't seem to work for me.

Ah, typo

>> 2. Your debuginfo files are all empty. Not sure why that is, but
>> I think it deserves some investigation.

Huh, I'm pretty sure I checked that. I'll have another look.

>> 3. I assume the Provides: powerdns-recursor = %{version}-%{release}
>> is for upstream or other project released rpms?

That's right. The product is commonly known as powerdns, but upstream names 
it's tarballs pdns.{something}.tgz.
Users will probably try to `yum install powerdns-recursor`.

>> 4. Is it ok for this package to run as user 'pdns', which is the same as
>> the 'pdns' package. If they are both on the same machine could there be
>> security implications? Perhaps this package should use a 'pdns-recursor'
>> user instead?

The packages don't depend on each other, and they don't share any data, so a 
user 'pdns-recursor' makes sense.

I'm at work now, but will create a new version tonight.

Cheers,

Ruben

Comment 5 Ruben Kerkhof 2007-01-24 20:14:40 UTC
Ok, fixed all the things above, and more.
I added a nicer initscript as well.

New files:
http://rubenkerkhof.com/packages/pdns-recursor.spec
http://rubenkerkhof.com/packages/pdns-recursor-3.1.4-2.src.rpm


Comment 6 Kevin Fenzi 2007-01-27 19:34:03 UTC
Sorry it took me so long to get back to looking at this. 

1-4 all look solved. 

One new issue... the init file's Description doesn't look right: 

# description:  This is a daemon which periodically checks for updates \
#               and can send notifications via mail, dbus or syslog.

Thats a pretty minor issue, and you should be able to change it before you import.

I don't see any further issues, so this package is APPROVED. 
Don't forget to close this review request NEXTRELEASE once it's been imported
and built. 

Also, consider reviewing some other waiting packages to help spread out the
reviewing load. :) 

Comment 7 Ruben Kerkhof 2007-01-27 23:03:59 UTC
Hi Kevin,

Fixed, and build successfully on -devel.

>>Also, consider reviewing some other waiting packages to help spread out the reviewing load. :)

Working on that :-)

Thanks for your review.