Bug 693664 - Review Request: supybot-gribble - Cross-platform support bot based on supybot
Review Request: supybot-gribble - Cross-platform support bot based on supybot
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Kevin Fenzi
Fedora Extras Quality Assurance
:
Depends On:
Blocks: 911897
  Show dependency treegraph
 
Reported: 2011-04-05 05:26 EDT by David Riches
Modified: 2014-11-12 18:05 EST (History)
9 users (show)

See Also:
Fixed In Version: supybot-gribble-0.83.4.1-10.fc15
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-08-08 21:24:32 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
kevin: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description David Riches 2011-04-05 05:26:22 EDT
Spec URL: http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec
SRPM URL: http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1+gribble-1.fc14.src.rpm
Description: gribble is an enhanced supybot, with many fixes and updates 
to the original supybot code base. Gribble brings many 
plug-ins to fedora by adding sqlite2 support to many of the
supybot plug-ins
Comment 1 David Riches 2011-04-05 05:36:58 EDT
rpmlint outputs:


[david@drlaptop SPECS]$ rpmlint supybot-gribble.spec 
supybot-gribble.spec: W: invalid-url Source0: supybot-gribble-20110404.tar
0 packages and 1 specfiles checked; 0 errors, 1 warnings.
[david@drlaptop SPECS]$ rpmlint ../RPMS/noarch/supybot-gribble-0.83.4.1+gribble-1.fc14.noarch.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
[david@drlaptop SPECS]$ rpmlint ../SRPMS/supybot-gribble-0.83.4.1+gribble-1.fc14.src.rpm 
supybot-gribble.src: W: invalid-url Source0: supybot-gribble-20110404.tar
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
[david@drlaptop SPECS]$ 

I'm not really concerned with the url false-positive.


Koji Builds:

http://koji.fedoraproject.org/koji/taskinfo?taskID=2973439  <-F14
http://koji.fedoraproject.org/koji/taskinfo?taskID=2973441  <-F15
http://koji.fedoraproject.org/koji/taskinfo?taskID=2974464  <-F13
http://koji.fedoraproject.org/koji/taskinfo?taskID=2974467  <-Rawhide
Comment 2 Kevin Fenzi 2011-04-06 11:06:11 EDT
I can work on reviewing this in a while unless someone beats me to it. ;)
Comment 3 Kevin Fenzi 2011-04-10 17:03:59 EDT
Starting in on review. Look for a full review in a bit here.
Comment 4 Kevin Fenzi 2011-04-10 18:21:48 EDT
A few questions actually before I start the full review: 

Why the +gribble in Version? Why not just 0.83.4.1 ?

This is a snapshot, so might be best to use: 
http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Snapshot_packages
For release... 

I think 'supybot-gribble-0.83.4.1-0.1.20110410git' would make sense?

Also, IMHO, no need to use: 
%{__install}
just use
install

Also, the Conflicts is something to avoid. ;( Could we rename the bin 'supybot-gribble' ? Is that the only place it really conflicts here?
Comment 5 David Riches 2011-04-11 06:10:01 EDT
Thanks for this..


Sure, I think the package name suggested makes loads of sense.

Also, "install" works for me

As far as the conflict is concerned, because gribble is an enhanced supybot, many of the plugins located in /usr/lib/python*/site-packages/supybot/plugins/* are different/patched. So it does indeed conflict.

There's also no reason you would want both on the same system, apart from possibly testing the differences I suppose.

Sadly, renaming supybot just wouldn't cut it ;-(
Comment 6 Kevin Fenzi 2011-04-13 22:27:11 EDT
Yeah, looks like you would have to change the 'supybot' to 'supybot-gribble' in several other places... including the man pages and the python files, but it should be possible... 

I wonder if upstream would be interested in making that change to allow parallel installs with supybot? 
ie, change the base name of everything to 'supybot-gribble'.
Comment 7 David Riches 2011-04-14 05:13:48 EDT
I can ask, but I honestly don't see the point.

Gribble does indeed conflict with supybot, because gribble _is_ supybot $(latest) + fixes + extras.

I actually think (because of the fixed sqlite issues) its actually better suited to fedora that standard supybot.

I'll ask upstream but I doubt it, and I think its a shame to loose this package as a result.
Comment 8 Kevin Fenzi 2011-04-16 23:20:35 EDT
ok. So after discussing this on IRC with David and the fedora supybot maintainer (Ricky), it seems like Conflicts are probibly the best solution here. ;( 

This is a development/fast paced version of supybot, where changes are eventually merged back into the main supybot. 

David: Can you spin up a new src.rpm and spec with the new version discussed in comment #4 ? 

Also, I was pondering if it would make sense to add a 'Provides: supybot' here so the supybot-* plugin packages would work with it. However, that might make it get installed instead of the stable/normal supybot package, and we would need to confirm that those plugins work as well. Something to consider. 

I'll try and get a review done tomorrow.
Comment 9 David Riches 2011-04-17 06:09:02 EDT
Done, and done.

I've also added the "provides" because afacs, supybot-fedora works just fine with it. I've ran into a bug with python-fedora which I'm just about to file - but that is independent of supybot-gribble.

SRPM: http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1-1.fc15.src.rpm
SPEC: http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec

Koji:

http://koji.fedoraproject.org/koji/taskinfo?taskID=3006433   <-f14
http://koji.fedoraproject.org/koji/taskinfo?taskID=3006419   <-f15
http://koji.fedoraproject.org/koji/taskinfo?taskID=3006437   <- epel6
http://koji.fedoraproject.org/koji/taskinfo?taskID=3006439   <- rawhide

I've dropped f13 and epel5 from the buildlist. F13 will go eol soon, so likely not worth building for - and epel is < py26 which means sadly gribble won't work..
Comment 10 Kevin Fenzi 2011-04-17 19:30:42 EDT
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
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:

See below - 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 has rm -rf RPM_BUILD_ROOT at top of %install

OK - Package compiles and builds on at least one arch. 
OK - Package has no duplicate files in %files. 
See below - Package doesn't own any directories other packages own. 
OK - Package owns all the directories it creates. 
OK - Package obey's FHS standard (except for 2 exceptions)
See below - 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 function as described. 
OK - Should have dist tag
OK - Should package latest version
OK - Should not use file requires outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin

Issues: 

1. rpmlint says: 

supybot-gribble.src: W: invalid-url Source0: supybot-gribble-20110404.tar

which can be ignored here I guess. 
It might be good to xz or bz the tar file to make it a bit smaller. 

2. The Provides: supybot I am not sure is going to work out... 

The problem here is that if both are in the repos and both providing the same version 
of supybot, it could be chancy which one gets pulled in. ;( 

How about this: 

Remove the Provides: supybot

In the supybot package add: "Conflicts: supybot-gribble"
In the various supybot plugin packages: 
(supybot-fedora, supybot-koji, supybot-meetbot)
remove the "Requires: supybot" and replace with: "Requires: /usr/bin/supybot" instead. 
(would need to get supybot maintainer and plugins maintainers on board). 

3. Does this really require all python-twisted packages? 
Normal supybot only needs python-twisted-core and python-twisted-names
Did they add deps for news/words/lore/conch/runner?
Comment 11 Jon Stanley 2011-04-19 08:27:40 EDT
I'll try and get to this today in my supybot plugins (supybot-fedora and supybot-koji).
Comment 12 David Riches 2011-05-04 04:34:28 EDT
Sorry for the delay folks...

Jon:

Thanks for the commit acl's on supybot-fedora and supybot-koji , I've done the updates, bumped, built and updated.

Kevin:

Thanks for the advice and acl's on meetbot, I'd prefer to keep the tar'd format if thats ok; its the default for git-archive, and I just feel that using the git-archive command to create the tarball is so much nicer than pulling, checking out a hash then bz'ing it...although if you think its worth the extra effort, I can certainly work on it..

I've added "Conflicts: supybot-gribble" to supybot (thanks Ricky), and done the replacements for supybot-meetbot, fedora and koji..

Turns out, twisted isn't a requirement of supybot, its a recommendation - so I have removed the dependency, the documentation for the bot does indeed recommend twisted, but I have also added it to the package description.

so (I think) it might possibly be ready :-)..

SPEC: http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec
SRPM: http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1-2.fc13.src.rpm

Koji Stuff:

http://koji.fedoraproject.org/koji/taskinfo?taskID=3049458  <- f13
http://koji.fedoraproject.org/koji/taskinfo?taskID=3049450  <- f14
http://koji.fedoraproject.org/koji/taskinfo?taskID=3049452  <- f15
http://koji.fedoraproject.org/koji/taskinfo?taskID=3049454  <- rawhide
http://koji.fedoraproject.org/koji/taskinfo?taskID=3049456  <- el6

All built correctly, sadly there will be no gribble for el5 due to el5 running a version of python that just wont work..
Comment 13 Kevin Fenzi 2011-05-07 12:03:58 EDT
ok. I don't see any further blockers, except re-reading the Conflicts page, it's stronger in asking us to avoid them than I recall in the past. ;) 

http://fedoraproject.org/wiki/Packaging:Conflicts

I think this is a case thats much like a compat package. except it's a 'newer functionality/ng' package. 
Since this case isn't covered on the page, I'd like to ask the FPC about this. (Or you can if you prefer). 

Once thats solved I think this package should be ready to go.
Comment 14 David Riches 2011-06-27 14:07:15 EDT
Here we go, I think its ready to roll..

http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec
http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1-3.fc15.src.rpm

Koji Stuff:

dist-f14 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164164
dist-f15 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164171
dist-rawhide -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164175
el6 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164179

rpmlint:

[david@drlaptop SPECS]$ rpmlint supybot-gribble.spec 
supybot-gribble.spec:19: W: unversioned-explicit-obsoletes supybot
supybot-gribble.spec:20: W: unversioned-explicit-provides /usr/bin/supybot
supybot-gribble.spec: W: invalid-url Source0: supybot-gribble-20110404.tar
0 packages and 1 specfiles checked; 0 errors, 3 warnings.

I'm not sure I can add a specific version to the obsoletes, it obsoletes all supybots, also with the provides.

[david@drlaptop SPECS]$ rpmlint ../SRPMS/supybot-gribble-0.83.4.1-3.fc15.src.rpm 
supybot-gribble.src:19: W: unversioned-explicit-obsoletes supybot
supybot-gribble.src:20: W: unversioned-explicit-provides /usr/bin/supybot
supybot-gribble.src: W: invalid-url Source0: supybot-gribble-20110404.tar
1 packages and 0 specfiles checked; 0 errors, 3 warnings.

As above

[david@drlaptop SPECS]$ rpmlint ../RPMS/noarch/supybot-gribble-0.83.4.1-3.fc15.noarch.rpm 
supybot-gribble.noarch: W: obsolete-not-provided supybot
supybot-gribble.noarch: E: incorrect-fsf-address /usr/lib/python2.7/site-packages/supybot/plugins/Dict/local/dictclient.py
1 packages and 0 specfiles checked; 1 errors, 1 warnings.

What I propose to do here is, notify the upstream (they work quickly) get it fixed and re-pull a new tarball...I'm hoping this isn't a blocker
Comment 15 David Riches 2011-06-27 15:20:35 EDT
Ok, I went ahead an got the upstream to fix the address issue...

SPEC: http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec
SRPM: http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1-4.fc15.src.rpm

f15 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164573
f14 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164571
rawhide -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164579
el6 -> http://koji.fedoraproject.org/koji/taskinfo?taskID=3164585

[david@drlaptop SPECS]$ rpmlint supybot-gribble.spec 
supybot-gribble.spec:19: W: unversioned-explicit-obsoletes supybot
supybot-gribble.spec:20: W: unversioned-explicit-provides /usr/bin/supybot
supybot-gribble.spec: W: invalid-url Source0: supybot-gribble-20110627.tar
0 packages and 1 specfiles checked; 0 errors, 3 warnings.
[david@drlaptop SPECS]$ #as before
[david@drlaptop SPECS]$ rpmlint ../SRPMS/supybot-gribble-0.83.4.1-4.fc15.src.rpm 
supybot-gribble.src:19: W: unversioned-explicit-obsoletes supybot
supybot-gribble.src:20: W: unversioned-explicit-provides /usr/bin/supybot
supybot-gribble.src: W: invalid-url Source0: supybot-gribble-20110627.tar
1 packages and 0 specfiles checked; 0 errors, 3 warnings.
[david@drlaptop SPECS]$ #as before
[david@drlaptop SPECS]$ rpmlint ../RPMS/noarch/supybot-gribble-0.83.4.1-4.fc15.noarch.rpm 
supybot-gribble.noarch: W: obsolete-not-provided supybot
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
[david@drlaptop SPECS]$ #fixed address problem
Comment 16 Kevin Fenzi 2011-06-27 17:52:24 EDT
Take a look at: 
https://fedoraproject.org/wiki/Packaging:Guidelines#Renaming.2FReplacing_Existing_Packages

I think we want the obsoletes/provides to use the versions. 

Fix that and I think we are ready to go... ;)
Comment 17 David Riches 2011-06-30 05:09:52 EDT
Fixed..

http://dcr226.fedorapeople.org/SPECS/supybot-gribble.spec
http://dcr226.fedorapeople.org/SRPMS/supybot-gribble-0.83.4.1-5.fc13.src.rpm

RPMLINT:

[david@vmserver SPECS]$ rpmlint supybot-gribble.spec 
supybot-gribble.spec: W: invalid-url Source0: supybot-gribble-20110627.tar
0 packages and 1 specfiles checked; 0 errors, 1 warnings.
[david@vmserver SPECS]$ rpmlint ../RPMS/noarch/supybot-gribble-0.83.4.1-5.fc13.noarch.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
[david@vmserver SPECS]$ rpmlint ../SRPMS/supybot-gribble-0.83.4.1-5.fc13.src.rpm 
supybot-gribble.src: W: invalid-url Source0: supybot-gribble-20110627.tar
1 packages and 0 specfiles checked; 0 errors, 1 warnings.

KOJIS:

http://koji.fedoraproject.org/koji/taskinfo?taskID=3171502    <- F14
http://koji.fedoraproject.org/koji/taskinfo?taskID=3171505    <- F15
http://koji.fedoraproject.org/koji/taskinfo?taskID=3171507    <- Rawhide
http://koji.fedoraproject.org/koji/taskinfo?taskID=3171510    <- EL6


Thanks
Comment 18 Kevin Fenzi 2011-06-30 09:43:06 EDT
That looks good to me. ;) 

This package is APPROVED.
Comment 19 David Riches 2011-06-30 10:05:38 EDT
New Package SCM Request
=======================
Package Name: supybot-gribble
Short Description: Cross-platform support bot based on supybot
Owners: dcr226 kevin ricky
Branches: f14 f15 el6
InitialCC:
Comment 20 Gwyn Ciesla 2011-06-30 10:15:25 EDT
Git done (by process-git-requests).
Comment 21 Fedora Update System 2011-06-30 10:57:04 EDT
supybot-gribble-0.83.4.1-5.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-5.fc15
Comment 22 Fedora Update System 2011-06-30 13:40:53 EDT
supybot-gribble-0.83.4.1-5.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-5.fc14
Comment 23 Fedora Update System 2011-06-30 13:43:24 EDT
supybot-gribble-0.83.4.1-5.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-5.el6
Comment 24 Fedora Update System 2011-06-30 14:56:38 EDT
supybot-gribble-0.83.4.1-5.fc15 has been pushed to the Fedora 15 testing repository.
Comment 25 Fedora Update System 2011-07-01 19:03:46 EDT
supybot-gribble-0.83.4.1-6.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-6.fc15
Comment 26 Fedora Update System 2011-07-01 19:17:41 EDT
supybot-gribble-0.83.4.1-6.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-6.fc14
Comment 27 Fedora Update System 2011-07-02 04:23:04 EDT
supybot-gribble-0.83.4.1-6.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-6.el6
Comment 28 Fedora Update System 2011-07-22 05:30:58 EDT
supybot-gribble-0.83.4.1-8.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-8.fc14
Comment 29 Fedora Update System 2011-07-25 14:15:21 EDT
supybot-gribble-0.83.4.1-8.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-8.fc15
Comment 30 Fedora Update System 2011-07-26 05:41:49 EDT
supybot-gribble-0.83.4.1-8.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-8.el6
Comment 31 Fedora Update System 2011-08-08 21:24:25 EDT
supybot-gribble-0.83.4.1-8.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 32 Fedora Update System 2011-09-08 19:58:00 EDT
supybot-gribble-0.83.4.1-8.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 33 Fedora Update System 2011-10-16 08:34:42 EDT
supybot-gribble-0.83.4.1-10.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/supybot-gribble-0.83.4.1-10.fc15
Comment 34 Fedora Update System 2011-10-24 18:58:35 EDT
supybot-gribble-0.83.4.1-10.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 35 Kevin Fenzi 2014-11-12 17:18:05 EST
Package Change Request
======================
Package Name: supybot-gribble
New Branches: epel7
Owners: kevin
InitialCC:
Comment 36 Gwyn Ciesla 2014-11-12 18:05:50 EST
Git done (by process-git-requests).

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