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
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
I can work on reviewing this in a while unless someone beats me to it. ;)
Starting in on review. Look for a full review in a bit here.
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?
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 ;-(
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'.
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.
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.
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..
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?
I'll try and get to this today in my supybot plugins (supybot-fedora and supybot-koji).
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..
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.
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
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
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... ;)
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
That looks good to me. ;) This package is APPROVED.
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:
Git done (by process-git-requests).
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
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
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
supybot-gribble-0.83.4.1-5.fc15 has been pushed to the Fedora 15 testing repository.
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
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
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
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
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
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
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.
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.
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
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.
Package Change Request ====================== Package Name: supybot-gribble New Branches: epel7 Owners: kevin InitialCC: