Bug 497682 - Review Request: libmemcached - Client library and command line tools for memcached server
Summary: Review Request: libmemcached - Client library and command line tools for memc...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Terje Røsten
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: FE-Legal 497688
TreeView+ depends on / blocked
 
Reported: 2009-04-26 06:39 UTC by Remi Collet
Modified: 2011-01-29 00:32 UTC (History)
4 users (show)

Fixed In Version: 0.30-1.fc11
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-06-27 02:53:23 UTC
terjeros: fedora-review+
tibbs: fedora-cvs+


Attachments (Terms of Use)

Description Remi Collet 2009-04-26 06:39:23 UTC
Spec URL: http://remi.fedorapeople.org/libmemcached.spec
SRPM URL: http://remi.fedorapeople.org/libmemcached-0.28-1.fc8.src.rpm
Mock log: http://remi.fedorapeople.org/libmemcached-mock.log
Koji Scratch build : http://koji.fedoraproject.org/koji/taskinfo?taskID=1321061

Description: 

libmemcached is a C client library to the memcached server
(http://danga.com/memcached). It has been designed to be light on memory
usage, and provide full access to server side methods.

It also implements several command line tools:

memcat - Copy the value of a key to standard output.
memflush - Flush the contents of your servers.
memrm - Remove a key(s) from the server.
memstat - Dump the stats of your servers to standard output.
memslap - Generate testing loads on a memcached cluster.
memcp - Copy files to memcached servers.
memerror - Creates human readable messages from libmemcached error codes.

---------
libmemcached is required by some memcached client.
I will submit php-pecl-memcached for review.

Comment 1 Terje Røsten 2009-04-27 16:10:52 UTC
Could not find any issues except license stuff.

Could you please check with Brian that all files have BSD license.

Seems like the hash files crc.c, hsieh_hash.c jenkins_hash.c md5.c and murmur_hash.c need special attention in this regard.

Comment 2 Remi Collet 2009-04-27 17:30:08 UTC
----------- Mail to Brian :
I haven't do a full license review of your code... (shame on me)

It's seems that some files are provided by external sources.

Have you some information about how do this license apply to your project :

crc.c => ??
hsieh_hash.c => http://www.azillionmonkeys.com/qed/weblicense.html
jenkins_hash.c => http://burtleburtle.net/bob/hash/index.html
md5.c => RSA ??
murmur_hash.c => http://murmurhash.googlepages.com/ is "public domain"

At least some of them (RSA notice) should be distributed in the
library/RPM documentation (perhaps a COPYING.xxx and in AUTHORS file).

------------ Response from Brian
We leave the external copyright in the top. All other code is BSD. If someone needed to chop something out they could with ease.

Comment 3 Terje Røsten 2009-04-28 20:40:28 UTC
I have sent a mail to spot to assist.

Comment 4 Tom "spot" Callaway 2009-04-28 20:51:25 UTC
Looking at those files:

crc.c: BSD [OK]
hsieh_hash.c: New license [Checking with RH Legal]
jenkins_hash.c: Copyright Only (I will interpret "Do NOT use for cryptographic purposes." as advice after the license, rather than license terms, since it conflicts with "You may use this code any way you wish". The upstream for this file should really change that line to say "We do not recommend that you use this code for cryptographic purposes.") [OK]
md5.c: BSD [OK]
murmur_hash.c: Public Domain [OK] (They really should have a proper declaration for PD on their website, but I'll let it slide)

As soon as I hear back on the hsieh licensing, I'll comment.

Comment 5 Tom "spot" Callaway 2009-04-29 00:07:03 UTC
Red Hat Legal says the hsieh licenses are non-free. Hopefully, you should be able to delete that hsieh_hash.c file in %pre without any difficulty.

Comment 6 Remi Collet 2009-04-29 06:39:44 UTC
@tom : thanks for this.

I will work on a build whithout hsieh_hash.c (I don't understand what you mean about %pre, should be deleted in %prep and Makefile patched to not try to use it)

Rehards

Comment 7 Remi Collet 2009-04-29 08:09:33 UTC
------------ Response from Brian
Thanks for the heads up. I'll look into adding a configure switch to disable it!

Comment 8 Tom "spot" Callaway 2009-04-29 12:18:20 UTC
I meant %prep, not %pre. :) Sorry!

Comment 9 Remi Collet 2009-05-01 06:35:06 UTC
Upstream have push a new configure with hsieh hash method disabled by default.

Here a updated RPM using this patch

Spec URL: http://remi.fedorapeople.org/libmemcached.spec
SRPM URL: http://remi.fedorapeople.org/libmemcached-0.28-2.fc8.src.rpm

Comment 10 Terje Røsten 2009-05-01 17:16:12 UTC
Thanks Remi, patch seems to work. 

Starting full review.

[ x=ok  -=dont't apply  !=please fix ?=may fix ]

MUST
 [x] rpmlint must be run on every package
 [x] package must be named according to the Package Naming Guidelines
 [x] spec file name must match the base package %{name}
 [-] package must meet the Packaging Guidelines
 [x] [BSD] package must be licensed with a Fedora approved license 
 [x] license field in the package spec file must match the actual license
 [x] includes the text of the license(s) in its own file: include in %doc
 [x] be written in American English
 [x] spec file for the package be legible
 [x] sources used to build the package must match the upstream source
 md5sum: 3e022f51301a73ddfc3df32de5b748b19fd97c65 : ok 
 [x] compile and build into binary rpms on at least one architecture
http://koji.fedoraproject.org/koji/taskinfo?taskID=1331611
 [-] not successfully compile an architecture: use ExcludeArch
 [x] all build dependencies must be listed in BuildRequires
 [-] spec file MUST handle locales properly
 [x] shared library files not in any default linker paths: ldconfig
 [-] relocatable package: the packager must state this fact
 [x] package must own all directories that it creates
 [x] not any duplicate files in the %files listing
 [x] permissions on files must be set properly
 [x] package must have a %clean section, which contains rm -rf %{buildroot}
 [x] consistently use macros
 [x] must contain code, or permissable content
 [-] large docs should go in a -doc subpackage
 [x] %doc must not affect the runtime of the application
 [x] header files must be in a -devel package
 [-] static libraries must be in a -static package
 [!] containing pkgconfig(.pc) files must 'Requires: pkgconfig'
  -devel package should have this added.
 [x] library files that end in .so: go in a -devel package
 [x] devel pkg: require base package using a fully versioned dependency
 [x] no .la libtool archives
 [-] gui app include a %{name}.desktop file
 [x] must not own files or directories already owned by other packages
 [x] %install includes rm -rf %{buildroot}
 [x]  filenames in rpm packages must be valid UTF-8
SHOULD
 [x] test that the package builds in mock
http://koji.fedoraproject.org/koji/taskinfo?taskID=1331611
 [x] compile and build into binary rpms on all archs
http://koji.fedoraproject.org/koji/taskinfo?taskID=1331611
 [+] package functions as described
 [x] those scriptlets are sane
 [x] subpackages require the base packag  fully versioned dep
 [x] pkgconfig(.pc) in devel
 [x] no explicit file dep outside /etc, /bin/, /sbin, /usr/{sbin,bin}


Add req on pkgconfig in -devel on importing and you are done.

  libmemcached is APPROVED

Comment 11 Remi Collet 2009-05-01 17:56:11 UTC
Thanks for the review and the head up on license.

New Package CVS Request
=======================
Package Name: libmemcached
Short Description: Client library and command line tools for memcached server
Owners: remi
Branches: F-10 F-11
InitialCC:

Comment 12 Dennis Gilmore 2009-05-01 20:58:04 UTC
CVS Done

Comment 13 Fedora Update System 2009-05-02 06:40:18 UTC
libmemcached-0.28-2.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/libmemcached-0.28-2.fc11

Comment 14 Fedora Update System 2009-05-02 06:41:26 UTC
libmemcached-0.28-2.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/libmemcached-0.28-2.fc10

Comment 15 Fedora Update System 2009-05-02 16:31:00 UTC
libmemcached-0.28-2.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-4126

Comment 16 Fedora Update System 2009-05-09 04:07:50 UTC
libmemcached-0.28-2.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-4453

Comment 17 Fedora Update System 2009-05-19 18:38:03 UTC
libmemcached-0.29-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/libmemcached-0.29-1.fc11

Comment 18 Fedora Update System 2009-05-19 18:42:02 UTC
libmemcached-0.29-1.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/libmemcached-0.29-1.fc10

Comment 19 Fedora Update System 2009-05-20 23:54:19 UTC
libmemcached-0.29-1.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-5236

Comment 20 Fedora Update System 2009-05-21 00:00:44 UTC
libmemcached-0.29-1.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-5268

Comment 21 Fedora Update System 2009-06-14 10:46:50 UTC
libmemcached-0.30-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/libmemcached-0.30-1.fc11

Comment 22 Fedora Update System 2009-06-14 10:48:05 UTC
libmemcached-0.30-1.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/libmemcached-0.30-1.fc10

Comment 23 Fedora Update System 2009-06-16 01:28:16 UTC
libmemcached-0.30-1.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-6021

Comment 24 Fedora Update System 2009-06-16 02:37:28 UTC
libmemcached-0.30-1.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmemcached'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-6437

Comment 25 Fedora Update System 2009-06-27 02:53:17 UTC
libmemcached-0.30-1.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2009-06-27 02:59:14 UTC
libmemcached-0.30-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 27 Remi Collet 2011-01-28 16:06:45 UTC
Will build version 0.31 to have EVR < RHEL-6

Package Change Request
======================
Package Name: libmemcached
New Branches: EL-5
Owners: remi
InitialCC:

Comment 28 Remi Collet 2011-01-28 16:07:36 UTC
Real branch name

Package Change Request
======================
Package Name: libmemcached
New Branches: el5
Owners: remi
InitialCC:

Comment 29 Jason Tibbitts 2011-01-29 00:32:22 UTC
Git done (by process-git-requests).


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