Bug 589075

Summary: Review Request: dpkt - Packet creation / parsing library
Product: [Fedora] Fedora Reporter: Yanko Kaneti <yaneti>
Component: Package ReviewAssignee: manuel wolfshant <manuel.wolfshant>
Status: CLOSED RAWHIDE QA Contact: manuel wolfshant <manuel.wolfshant>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, imranceh, notting, supercyper1
Target Milestone: ---Flags: manuel.wolfshant: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-07-21 14:03:47 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:

Description Yanko Kaneti 2010-05-05 10:36:25 UTC
Spec URL: http://declera.com/~yaneti/dpkt/dpkt.spec
SRPM URL: http://declera.com/~yaneti/dpkt/dpkt-1.7-1.fc14.src.rpm
Description: 
Fast, simple packet creation and parsing python library
with definitions for the basic TCP/IP protocols.

Comment 1 Mohammed Imran 2010-05-05 12:13:18 UTC
Let me do a informal review.

Package Review
==============

Key:
- = N/A
x = Check
! = Problem
? = Not evaluated

=== REQUIRED ITEMS ===
[x]  Package is named according to the Package Naming Guidelines.
[x]  Spec file name must match the base package %{name}, in the format
%{name}.spec.
[x]  Package meets the Packaging Guidelines.
[x]  Rpmlint output:
2 packages and 1 specfiles checked; 0 errors, 0 warnings.

Summary can be made more descriptive like
A simple TCP/IP packet creation python library

[x]  Package is not relocatable.
[x]  Buildroot is correct
(%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n))
[x]  Package is licensed with an open-source compatible license and meets other
legal requirements as defined in the legal section of Packaging Guidelines.
[x]  License field in the package spec file matches the actual license.
License type:BSD 3 clause no advertising 
[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.
[x]  Spec file is legible and written in American English.
[x]  Sources used to build the package matches the upstream source, as provided
in the spec URL.
MD5SUM this package    :0baa25fd5d87066cf6189a66cf452ac0
MD5SUM upstream package:0baa25fd5d87066cf6189a66cf452ac0
[x]  Package is not known to require ExcludeArch, OR:
Arches excluded:
Why:
[x]  All build dependencies are listed in BuildRequires, except for any that
are listed in the exceptions section of Packaging Guidelines.

[-]  The spec file handles locales properly.
[-]  ldconfig called in %post and %postun if required.
[-]  Package must own all directories that it creates.
[-]  Package requires other packages for directories it uses.
[x]  Package does not contain duplicates in %files.
[x]  Permissions on files are set properly. 
[x]  Package has a %clean section, which contains rm -rf %{buildroot} (or
$RPM_BUILD_ROOT).
[x]  Package consistently uses macros.
[x]  Package contains code, or permissable content.
[-]  Large documentation files are in a -doc subpackage, if required.
[x]  Package uses nothing in %doc for runtime.
[-]  Header files in -devel subpackage, if present.
[-]  Static libraries in -devel subpackage, if present.
[-]  Package requires pkgconfig, if .pc files are present.
[-]  Development .so files in -devel subpackage, if present.
[-]  Fully versioned dependency in subpackages, if present.
[x]  Package does not contain any libtool archives (.la).
[-]  Package contains a properly installed %{name}.desktop file if it is a GUI
application.
[x]  Package does not own files or directories owned by other packages.

Comment 2 Yanko Kaneti 2010-05-05 13:05:18 UTC
(In reply to comment #1)
> 
> Summary can be made more descriptive like
> A simple TCP/IP packet creation python library

It does a little more that just TCP/IP related protocols. Like ethernet frames. Thats why I dind't want it in the name. Parsing is an important part of its function.

"Simple packet creation/parsing python library"  or something like it, perhaps..

Thanks

Comment 3 Yanko Kaneti 2010-05-11 05:10:42 UTC
dpkt-1.7-2
- Small adjustment to the name as discussed above.
- Pulled an upstream fix.

Spec URL: http://declera.com/~yaneti/dpkt/dpkt.spec
SRPM URL: http://declera.com/~yaneti/dpkt/dpkt-1.7-2.fc14.src.rpm

Comment 4 manuel wolfshant 2010-07-19 21:28:25 UTC
Package Review
==============

Key:
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format %{name}.spec.
 [x] Package meets the Packaging Guidelines.
 [x] Package successfully compiles and builds into binary rpms on at least one supported architecture.
     Tested on: EL6/x86_64
 [x] Rpmlint output:
source RPM:
dpkt.src: W: invalid-url URL: http://dpkt.googlecode.com/ IncompleteRead(0 bytes read)
dpkt.src: W: invalid-url Source0: http://dpkt.googlecode.com/files/dpkt-1.7.tar.gz HTTP Error 404: Not Found
1 packages and 0 specfiles checked; 0 errors, 2 warnings.
binary RPM:
dpkt.noarch: W: invalid-url URL: http://dpkt.googlecode.com/ IncompleteRead(0 bytes read)
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
=>All warnings are false alerts, spectool downloads the tar.gz just fine
 [x] Package is not relocatable.
 [x] Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines.
 [x] License field in the package spec file matches the actual license.
     License type:BSD
 [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.
 [x] Spec file is legible and written in American English.
 [x] Sources used to build the package match the upstream source, as provided in the spec URL.
     SHA1SUM of source file: df19d6eb9fb296cc6835c081a490eec4787ac824  dpkt-1.7.tar.gz
 [x] Package is not known to require ExcludeArch
 [x] All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines.
 [-] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package must own all directories that it creates.
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package consistently uses macros.
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [x] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [-] Package requires pkgconfig, if .pc files are present.
 [-] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [x] Package does not contain any libtool archives (.la).
 [-] Package contains a properly installed %{name}.desktop file if it is a GUI application.
 [x] Package does not own files or directories owned by other packages.
 [x] Final provides and requires are sane.

=== SUGGESTED ITEMS ===
 [x] Latest version is packaged.
 [x] Package does not include license text files separate from upstream.
 [-] Description and summary sections in the package spec file contains translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on: EL6/x86_64
 [?] Package should compile and build into binary rpms on all supported architectures.
     Tested on:
 [x] Package functions as described.
 [-] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files is correct.
 [-] File based requires are sane.
 [-] %check is present and the test passes.
=== OPTIONAL ITEMS ===
 [x] Buildroot is correct (%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n))
 [x] Package has a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT).

=== Issues ===
1. Only the ping.py example worked for me.
[wolfy@wolfy tmp]$ sudo python /usr/share/doc/dpkt-1.7/examples/dnsping.py router
Traceback (most recent call last):
  File "/usr/share/doc/dpkt-1.7/examples/dnsping.py", line 51, in <module>
    DNSPing().main()
  File "/usr/share/doc/dpkt-1.7/examples/dnsping.py", line 11, in __init__
    default=socket.gethostname().split('.', 1)[1],
IndexError: list index out of range

[wolfy@wolfy tmp]$ sudo /usr/share/doc/dpkt-1.7/examples/dhcprequest.py
sudo: /usr/share/doc/dpkt-1.7/examples/dhcprequest.py: command not found
[wolfy@wolfy tmp]$ sudo python /usr/share/doc/dpkt-1.7/examples/dhcprequest.py
Traceback (most recent call last):
  File "/usr/share/doc/dpkt-1.7/examples/dhcprequest.py", line 3, in <module>
    import dnet
ImportError: No module named dnet

[wolfy@wolfy tmp]$ sudo python /usr/share/doc/dpkt-1.7/examples/nbtping.py winbox
NBTPING 192.168.50.36:
^C
--- 192.168.50.36 ping statistics ---

However those files are just examples, meant so far to replace the docs.
To be honest so far I fail to see the usefulness of those modules, given that hping3 is way more powerful, but any project must start from somewhere.

================
*** APPROVED ***
================

Comment 5 Yanko Kaneti 2010-07-20 06:47:24 UTC
New Package CVS Request
=======================
Package Name: dpkt
Short Description: Simple packet creation/parsing python library
Owners: yaneti
Branches: F-13
InitialCC:

Comment 6 Kevin Fenzi 2010-07-21 05:11:16 UTC
CVS done (by process-cvs-requests.py).

Remember to assign the review to the reviewer. ;)

Comment 7 Yanko Kaneti 2010-07-21 14:03:47 UTC
Builds done. Update for F-13 submitted.

Thanks for the review.

Comment 8 Chen Lei 2010-07-28 09:44:18 UTC
This package should be renamed to python-dpkg.

See http://fedoraproject.org/wiki/PackageNamingGuidelines#Addon_Packages_.28python_modules.29

Comment 9 Yanko Kaneti 2010-07-28 12:00:36 UTC
Oh well. I guess I should have checked what debian and opensuse were doing with this.
Here is the (rename) review request. bug 619025.

Comment 10 Chen Lei 2010-07-28 12:10:16 UTC
(In reply to comment #9)
> Oh well. I guess I should have checked what debian and opensuse were doing with
> this.
> Here is the (rename) review request. bug 619025.    

OK, here is the retire process for dpkt, we should be careful when naming an addons package. I can help to approve python-dpkt, if no one take it after two days(F14 split).

http://fedoraproject.org/wiki/PackageMaintainers/RetiredPackages