Bug 735160 - Review Request: django-socialregistration - Django application enabling registration through a variety of APIs
Summary: Review Request: django-socialregistration - Django application enabling regis...
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Matthias Runge
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-01 16:09 UTC by Stephen Gallagher
Modified: 2012-07-05 15:02 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-07-05 15:02:48 UTC
mrunge: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Stephen Gallagher 2011-09-01 16:09:25 UTC
Spec URL: http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/django-socialregistration.spec
SRPM URL: http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/django-socialregistration-0.4.5-1.fc15.src.rpm
Description: 
Django Social Registration enables developers to add alternative registration
methods based on third party sites.

Supported methods currently are:

    OpenID
    OAuth
    Facebook Connect

Comment 1 Stephen Gallagher 2011-09-01 16:16:31 UTC
Scratch-built successfully:
Fedora 15:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3318718

Fedora Rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3318728

Comment 2 Matthias Runge 2012-03-24 19:03:08 UTC
Rahul, are you going to review this package? It is assigned to you.

Comment 3 Rahul Sundaram 2012-03-25 05:07:31 UTC
Feel free to take over.

Comment 4 Matthias Runge 2012-03-25 07:36:46 UTC
OK, I'll take this one

Comment 5 Matthias Runge 2012-03-25 08:34:50 UTC
Package Review
==============

Key:
- = N/A
x = Pass
! = Fail
? = Not evaluated



==== 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.
[!]: MUST Buildroot is not present
     Note: Buildroot is not needed unless packager plans to package for EPEL5
[x]: MUST Package contains no bundled libraries.
[x]: MUST Changelog in prescribed format.
[!]: MUST Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
     Note: Clean is needed only if supporting EPEL
[x]: MUST Sources contain only permissible code or content.
[!]: MUST Each %files section contains %defattr if rpm < 4.4
     Note: defattr(....) present in %files section. This is OK if packaging
     for EPEL5. Otherwise not needed
[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 Spec file lacks Packager, Vendor, PreReq tags.
[!]: 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
[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.
[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.
[x]: MUST Requires correct, justified where necessary.
[x]: MUST Rpmlint output is silent.

rpmlint django-socialregistration-0.4.5-1.fc18.noarch.rpm

1 packages and 0 specfiles checked; 0 errors, 0 warnings.


rpmlint django-socialregistration-0.4.5-1.fc18.src.rpm

1 packages and 0 specfiles checked; 0 errors, 0 warnings.


[x]: MUST Sources used to build the package match the upstream source, as
     provided in the spec URL.
/home/mrunge/review/735160/django-socialregistration-0.4.5.tar.gz :
  MD5SUM this package     : 4d5d04490794e2eb96748d673c611f97
  MD5SUM upstream package : 4d5d04490794e2eb96748d673c611f97

[x]: MUST Spec file is legible and written in American English.
[!]: 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.
[-]: 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).
[?]: SHOULD Package functions as described.
[x]: SHOULD Latest version is packaged.
[x]: SHOULD Package does not include license text files separate from
     upstream.
[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 Buildroot is not present
     Note: Buildroot is not needed unless packager plans to package for EPEL5
See: http://fedoraproject.org/wiki/Packaging/Guidelines#BuildRoot_tag
[!]: 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 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

some annotations:

- according to https://fedorahosted.org/fpc/ticket/146 all django-packages are being renamed to python-django-... You should rename this one, too.
- Requires: Django should be python-django (for devel-branch)
- you should remove bundled egg-info
  cf. https://fedoraproject.org/wiki/Packaging:Python_Eggs#Upstream_Eggs
- if you're not targeting EPEL5, you should clean up the issues above, too.

Comment 6 Stephen Gallagher 2012-04-25 18:59:12 UTC
Sorry for the long delay. Updated spec here:
http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/python-django-socialregistration.spec

And SRPM:
http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/python-django-socialregistration-0.5.4-1.fc17.noarch.rpm

And scratch-built in Koji here: http://koji.fedoraproject.org/koji/taskinfo?taskID=4022928


I updated to the latest upstream release (0.5.4) and made several of the changes above. I have no plans to support this on EPEL 5, so those comments should be irrelevant. I removed the eggs and changed the name.

Comment 7 Matthias Runge 2012-04-25 20:19:44 UTC
Some few notes/questions:

- I'd remove bundled egg-info in prep-section. You should move that form install to prep-section.
- You have left rm -rf $RPM_BUILD_ROOT in install section, clean section is not needed anymore.
- you even don't need the %defattr(-,root,root,-)-line in files-section.

You should clean that out, those comments are irrelevant when building a package for EL5. I see no other issues.

Comment 8 Stephen Gallagher 2012-04-25 23:55:00 UTC
(In reply to comment #7)
> Some few notes/questions:
> 
> - I'd remove bundled egg-info in prep-section. You should move that form
> install to prep-section.

It took me a while to realize what you meant. I've now removed the version of the .egg-info that shipped with the tarball so that it is regenerated by setup.py. It is now shipping in %files again, but rebuilt properly.

> - You have left rm -rf $RPM_BUILD_ROOT in install section, clean section is not
> needed anymore.

That section was created automatically by rpmdev-newspec. I've removed it.
I'm unclear about what you meant about the install section though. Should I remove the rm -rf there as well?

> - you even don't need the %defattr(-,root,root,-)-line in files-section.
> 

Removed.



New spec: http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/python-django-socialregistration.spec

New SRPM: http://sgallagh.fedorapeople.org/packagereview/django-socialregistration/python-django-socialregistration-0.5.4-2.fc17.noarch.rpm

Koji scratch-build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4023330

Comment 9 Jason Tibbitts 2012-04-26 00:15:03 UTC
Unless you're packaging for EL5, you don't need to clean out the buildroot at the beginning of %install.  You also don't need a BuildRoot: line, or a %clean section if you're not targeting EL5.  http://fedoraproject.org/wiki/Packaging:Guidelines#BuildRoot_tag and http://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#Distribution_specific_guidelines have the details.

No (supported) release of EPEL or Fedora needs the %defattr line.  Maybe EL4 needed it but that's EOL now.

Comment 10 Matthias Runge 2012-07-02 07:40:25 UTC
Oh, sorry, for delaying this.

Looking again at your spec, I stumbled upon this:
%files
%doc AUTHORS LICENSE README.rst
%{python_sitelib}/socialregistration/*

(last line). This includes IMHO only the files in the directory, but not the dir itself. (You should remove the asterisk).

I'd approve this, when fixed.

rpmdev-newspec creates some more instructions than really necessary, that is a known issue. Obviously, nobody really cared that much, that he fixed this upstream.

Comment 12 Matthias Runge 2012-07-03 19:28:24 UTC
I'm very sorry that this took so long! It wasn't my intention to make this review longer than really necessary.

All issues cleared, package approved.

Comment 13 Stephen Gallagher 2012-07-05 14:10:03 UTC
New Package SCM Request
=======================
Package Name: python-django-socialregistration
Short Description: Django application enabling registration through a variety of APIs
Owners: sgallagh
Branches: f17 f16 el6 el5
InitialCC: sgallagh

Comment 14 Gwyn Ciesla 2012-07-05 14:18:03 UTC
Git done (by process-git-requests).


Note You need to log in before you can comment on or make changes to this bug.